Skip to content

Update docs#11006

Open
NethmiRanasinghe wants to merge 2 commits intowso2:masterfrom
NethmiRanasinghe:master
Open

Update docs#11006
NethmiRanasinghe wants to merge 2 commits intowso2:masterfrom
NethmiRanasinghe:master

Conversation

@NethmiRanasinghe
Copy link
Contributor

@NethmiRanasinghe NethmiRanasinghe commented Mar 27, 2026

Purpose

Add doc updates for:

  • WSDL URL generation
  • AsyncAPI v3 support

Summary by CodeRabbit

Release Notes

  • Documentation

    • Updated streaming API documentation (SSE, WebSocket, WebSub) to reflect new operation-based messaging model with Receive/Send semantics
    • Added support and guidance for AsyncAPI v3.0 imports alongside existing v2.x compatibility
    • Enhanced SOAP client invocation with additional WSDL configuration methods
  • New Features

    • Added WSDL URL generation with configurable security for Developer Portal APIs
    • Updated production deployment guidelines with WSDL URL generation requirements

@coderabbitai
Copy link

coderabbitai bot commented Mar 27, 2026

Walkthrough

Documentation updates for streaming API creation workflows to support AsyncAPI v3.0.0 specifications and reflect UI terminology changes from Publish/Subscribe to Send/Receive operations. Includes a new AsyncAPI v3 example file, WSDL URL generation security configurations, and related tutorial updates.

Changes

Cohort / File(s) Summary
Streaming API Documentation
en/docs/api-design-manage/design/create-api/create-streaming-api/create-a-sse-streaming-api.md, create-a-websocket-streaming-api.md, create-a-websub-streaming-api.md, create-a-streaming-api-from-an-asyncapi-definition.md
Updated documentation to reflect new UI model using Receive/Send operations instead of Subscribe/Publish, restructured topic/operation configuration steps, added explicit AsyncAPI V3.0.0 generation notes, replaced screenshots to v3 versions, and added support for AsyncAPI v2.x and v3.0 import formats.
AsyncAPI v3 Example Asset
en/docs/assets/attachments/103332601/streetlights_v3-def.yml
New AsyncAPI v3.0 specification file defining Streetlights API with MQTT channels, parameterized operations (receive/send), security schemes (API key, OAuth2, OpenID Connect), message definitions with JSON schemas, and operation traits.
WSDL URL Generation Configuration
en/docs/install-and-setup/setup/deployment-best-practices/production-deployment-guidelines.md, security-guidelines-for-production-deployment.md
Added production deployment checklist row and security guideline for WSDL URL generation, requiring configuration of url_generation_secret in deployment.toml with at least 32 characters and cluster consistency guidance.
SOAP Client Documentation
en/docs/api-developer-portal/invoke-apis/invoke-apis-using-tools/invoke-an-api-using-a-soap-client.md
Expanded Step 8 to document two WSDL supply methods: direct URL entry or generated WSDL URL from Developer Portal (with 15-minute expiration for restricted visibility APIs).
Streaming API Tutorials
en/docs/tutorials/streaming-api/create-and-publish-websocket-api.md, create-and-publish-websub-api.md
Updated tutorial instructions to reflect Send/Receive operation model with explicit operation names, replaced references to topic imagery with v3 versions, and updated WebSub configuration screenshots.

Estimated code review effort

🎯 3 (Moderate) | ⏱️ ~20 minutes

Poem

🐰 From Subscribe to Receive, we hop with glee,
AsyncAPI v3 flows like clover through the trees,
New channels bloom with Send and Receive calls,
While WSDL secrets guard these API halls,
Documentation dances in the springtime breeze! 🌱

🚥 Pre-merge checks | ✅ 1 | ❌ 2

❌ Failed checks (1 warning, 1 inconclusive)

Check name Status Explanation Resolution
Description check ⚠️ Warning The description provides minimal information—only the purpose section with two bullet points—while missing most required template sections including Goals, Approach, Release notes, Documentation links, Training, Certification, and others. Expand the description to include Goals, Approach with relevant links/images, affected documentation links, Release note, and relevant sections from the template for a comprehensive pull request.
Title check ❓ Inconclusive The title 'Update docs' is vague and overly generic, providing no meaningful information about the specific changes made across multiple documentation files. Use a more descriptive title that summarizes the main changes, such as 'Add WSDL URL generation and AsyncAPI v3 documentation updates' or 'Update streaming API docs for AsyncAPI v3 and WSDL generation.'
✅ Passed checks (1 passed)
Check name Status Explanation
Docstring Coverage ✅ Passed No functions found in the changed files to evaluate docstring coverage. Skipping docstring coverage check.

✏️ Tip: You can configure your own custom pre-merge checks in the settings.

✨ Finishing Touches
🧪 Generate unit tests (beta)
  • Create PR with unit tests

Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share

Comment @coderabbitai help to get the list of available commands and usage tips.

Copy link

@coderabbitai coderabbitai bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Actionable comments posted: 4

🧹 Nitpick comments (1)
en/docs/install-and-setup/setup/deployment-best-practices/security-guidelines-for-production-deployment.md (1)

357-379: Sync url_generation_secret into the config catalog to avoid doc drift.

This section is solid, but the authoritative config reference should also document this new [apim.devportal] key; otherwise users may miss it when using en/docs/reference/config-catalog.md.

🤖 Prompt for AI Agents
Verify each finding against the current code and only fix it if needed.

In
`@en/docs/install-and-setup/setup/deployment-best-practices/security-guidelines-for-production-deployment.md`
around lines 357 - 379, Add the new config key to the authoritative config
catalog: document the [apim.devportal] section and the url_generation_secret key
in the config-catalog so it doesn't drift from the guide; include a short
description (secret used to sign/secure generated WSDL URLs), type (string),
recommended length/strength (>=32 chars), an example value placeholder, and a
note to store it in the secure vault (referencing the Encrypting Passwords
guidance) so readers of config-catalog will see the same setting described in
the Security Guidelines section.
🤖 Prompt for all review comments with AI agents
Verify each finding against the current code and only fix it if needed.

Inline comments:
In
`@en/docs/api-design-manage/design/create-api/create-streaming-api/create-a-streaming-api-from-an-asyncapi-definition.md`:
- Around line 74-80: Update the wording in the Topics step by replacing the
phrase "provided URL" with a source-agnostic term such as "provided AsyncAPI
definition" (or "provided definition") so the sentence no longer assumes upload
method; find the paragraph containing "topics have been created automatically
from the AsyncAPI definition specified in the provided URL" and change it to use
the new phrase so it matches both file upload and URL inputs.

In
`@en/docs/api-design-manage/design/create-api/create-streaming-api/create-a-websocket-streaming-api.md`:
- Line 180: The image filename in the Markdown uses a typo
("wesocket-streaming-api-v3-add-topic-url-mapping.png") which likely breaks the
screenshot link; update the src and href occurrences to the correct filename
"websocket-streaming-api-v3-add-topic-url-mapping.png" in the line containing
the <a
href="{{base_path}}/assets/img/design/create-api/streaming-api/wesocket-streaming-api-v3-add-topic-url-mapping.png">
and the <img
src="{{base_path}}/assets/img/design/create-api/streaming-api/wesocket-streaming-api-v3-add-topic-url-mapping.png">
references so both link and image point to the corrected file name.

In
`@en/docs/api-design-manage/design/create-api/create-streaming-api/create-a-websub-streaming-api.md`:
- Line 84: Fix the typo in the documented default operation name: change the
operation string from "receive__edfault" to "receive__default" in the sentence
that describes the default channel `_default` so it reads that the `_default`
channel has a default operation `receive__default`.

In
`@en/docs/api-developer-portal/invoke-apis/invoke-apis-using-tools/invoke-an-api-using-a-soap-client.md`:
- Around line 30-38: Update the wording in Step 8 to be clearer and match UI
terminology: change "Give your API's WSDL" to "Provide your API's WSDL", change
"in published state" to "published", change "will get expired" to "will expire",
and replace "restricted visibility" with the exact UI label "Restricted by
roles"; ensure the two bullets under Step 8 and any related sentences use these
revised phrases for consistency (locate the Step 8 block in the
invoke-an-api-using-a-soap-client.md content and update the sentence fragments
accordingly).

---

Nitpick comments:
In
`@en/docs/install-and-setup/setup/deployment-best-practices/security-guidelines-for-production-deployment.md`:
- Around line 357-379: Add the new config key to the authoritative config
catalog: document the [apim.devportal] section and the url_generation_secret key
in the config-catalog so it doesn't drift from the guide; include a short
description (secret used to sign/secure generated WSDL URLs), type (string),
recommended length/strength (>=32 chars), an example value placeholder, and a
note to store it in the secure vault (referencing the Encrypting Passwords
guidance) so readers of config-catalog will see the same setting described in
the Security Guidelines section.
🪄 Autofix (Beta)

Fix all unresolved CodeRabbit comments on this PR:

  • Push a commit to this branch (recommended)
  • Create a new PR with the fixes

ℹ️ Review info
⚙️ Run configuration

Configuration used: Organization UI

Review profile: CHILL

Plan: Pro

Run ID: b6241ad8-f75e-4c40-8453-727936212522

📥 Commits

Reviewing files that changed from the base of the PR and between 5daf1cc and 21dcb9f.

⛔ Files ignored due to path filters (34)
  • en/docs/assets/attachments/103332601/asyncv3-def-view.png is excluded by !**/*.png
  • en/docs/assets/attachments/103332601/asyncv3-file.png is excluded by !**/*.png
  • en/docs/assets/attachments/103332601/asyncv3-topics-page.png is excluded by !**/*.png
  • en/docs/assets/attachments/103332601/wsdl-url.png is excluded by !**/*.png
  • en/docs/assets/img/design/create-api/streaming-api/asyncv3-operations.png is excluded by !**/*.png
  • en/docs/assets/img/design/create-api/streaming-api/asyncv3-topics.png is excluded by !**/*.png
  • en/docs/assets/img/design/create-api/streaming-api/sse-api-v3-add-operation.png is excluded by !**/*.png
  • en/docs/assets/img/design/create-api/streaming-api/sse-api-v3-asyncapi.png is excluded by !**/*.png
  • en/docs/assets/img/design/create-api/streaming-api/sse-api-v3-create-new-topic.png is excluded by !**/*.png
  • en/docs/assets/img/design/create-api/streaming-api/sse-api-v3-delete-default-topic.png is excluded by !**/*.png
  • en/docs/assets/img/design/create-api/streaming-api/sse-api-v3-new-operation.png is excluded by !**/*.png
  • en/docs/assets/img/design/create-api/streaming-api/sse-api-v3-newly-added-topic.png is excluded by !**/*.png
  • en/docs/assets/img/design/create-api/streaming-api/sse-api-v3-operation.png is excluded by !**/*.png
  • en/docs/assets/img/design/create-api/streaming-api/sse-api-v3-topics.png is excluded by !**/*.png
  • en/docs/assets/img/design/create-api/streaming-api/websocket-streaming-api-v3-add-channel.png is excluded by !**/*.png
  • en/docs/assets/img/design/create-api/streaming-api/websocket-streaming-api-v3-add-operation.png is excluded by !**/*.png
  • en/docs/assets/img/design/create-api/streaming-api/websocket-streaming-api-v3-asyncapi.png is excluded by !**/*.png
  • en/docs/assets/img/design/create-api/streaming-api/websocket-streaming-api-v3-delete-topic-operation.png is excluded by !**/*.png
  • en/docs/assets/img/design/create-api/streaming-api/websocket-streaming-api-v3-new-channel.png is excluded by !**/*.png
  • en/docs/assets/img/design/create-api/streaming-api/websocket-streaming-api-v3-new-operation.png is excluded by !**/*.png
  • en/docs/assets/img/design/create-api/streaming-api/websocket-streaming-api-v3-operation.png is excluded by !**/*.png
  • en/docs/assets/img/design/create-api/streaming-api/websocket-streaming-api-v3-topics.png is excluded by !**/*.png
  • en/docs/assets/img/design/create-api/streaming-api/websub-api-v3-add-operation.png is excluded by !**/*.png
  • en/docs/assets/img/design/create-api/streaming-api/websub-api-v3-add-topic.png is excluded by !**/*.png
  • en/docs/assets/img/design/create-api/streaming-api/websub-api-v3-asyncapi.png is excluded by !**/*.png
  • en/docs/assets/img/design/create-api/streaming-api/websub-api-v3-delete-topic.png is excluded by !**/*.png
  • en/docs/assets/img/design/create-api/streaming-api/websub-api-v3-new-operation.png is excluded by !**/*.png
  • en/docs/assets/img/design/create-api/streaming-api/websub-api-v3-newly-added-topic.png is excluded by !**/*.png
  • en/docs/assets/img/design/create-api/streaming-api/websub-api-v3-operation.png is excluded by !**/*.png
  • en/docs/assets/img/design/create-api/streaming-api/websub-api-v3-topics.png is excluded by !**/*.png
  • en/docs/assets/img/design/create-api/streaming-api/wesocket-streaming-api-v3-add-topic-url-mapping.png is excluded by !**/*.png
  • en/docs/assets/img/tutorials/streaming-api/enable-secret-generation-v3.png is excluded by !**/*.png
  • en/docs/assets/img/tutorials/streaming-api/websocket-api-v3-add-topics.png is excluded by !**/*.png
  • en/docs/assets/img/tutorials/streaming-api/websocket-api-v3-topic-url-mapping.png is excluded by !**/*.png
📒 Files selected for processing (10)
  • en/docs/api-design-manage/design/create-api/create-streaming-api/create-a-sse-streaming-api.md
  • en/docs/api-design-manage/design/create-api/create-streaming-api/create-a-streaming-api-from-an-asyncapi-definition.md
  • en/docs/api-design-manage/design/create-api/create-streaming-api/create-a-websocket-streaming-api.md
  • en/docs/api-design-manage/design/create-api/create-streaming-api/create-a-websub-streaming-api.md
  • en/docs/api-developer-portal/invoke-apis/invoke-apis-using-tools/invoke-an-api-using-a-soap-client.md
  • en/docs/assets/attachments/103332601/streetlights_v3-def.yml
  • en/docs/install-and-setup/setup/deployment-best-practices/production-deployment-guidelines.md
  • en/docs/install-and-setup/setup/deployment-best-practices/security-guidelines-for-production-deployment.md
  • en/docs/tutorials/streaming-api/create-and-publish-websocket-api.md
  • en/docs/tutorials/streaming-api/create-and-publish-websub-api.md

Comment on lines +74 to +80
[![AsyncAPI topics]({{base_path}}/assets/img/design/create-api/streaming-api/asyncv3-topics.png)]({{base_path}}/assets/img/design/create-api/streaming-api/asyncv3-topics.png)

You will notice that the topics have been created automatically from the AsyncAPI definition specified in the provided URL.

[![AsyncAPI operations]({{base_path}}/assets/img/design/create-api/streaming-api/asyncv3-operations.png)]({{base_path}}/assets/img/design/create-api/streaming-api/asyncv3-operations.png)

Expand each topic to view the operations which are automatically created for each channel, as defined in the specification.
Copy link

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

⚠️ Potential issue | 🟡 Minor

Fix source wording mismatch in Topics step.

Line 76 still says topics are created from the “provided URL”, but this walkthrough now uses file upload (Lines 40-42). Please make the sentence source-agnostic (e.g., “provided AsyncAPI definition”).

✏️ Proposed text fix
-You will notice that the topics have been created automatically from the AsyncAPI definition specified in the provided URL.
+You will notice that the topics have been created automatically from the provided AsyncAPI definition.
🤖 Prompt for AI Agents
Verify each finding against the current code and only fix it if needed.

In
`@en/docs/api-design-manage/design/create-api/create-streaming-api/create-a-streaming-api-from-an-asyncapi-definition.md`
around lines 74 - 80, Update the wording in the Topics step by replacing the
phrase "provided URL" with a source-agnostic term such as "provided AsyncAPI
definition" (or "provided definition") so the sentence no longer assumes upload
method; find the paragraph containing "topics have been created automatically
from the AsyncAPI definition specified in the provided URL" and change it to use
the new phrase so it matches both file upload and URL inputs.

<tr><td>URL Mapping</td> <td><code>/notifications</code></td> </tr></table>

<a href="{{base_path}}/assets/img/design/create-api/streaming-api/wesocket-streaming-api-add-topic-url-mapping.png"><img src="{{base_path}}/assets/img/design/create-api/streaming-api/wesocket-streaming-api-add-topic-url-mapping.png" width="80%" alt="WebSocket API Topic URL Mapping"></a>
<a href="{{base_path}}/assets/img/design/create-api/streaming-api/wesocket-streaming-api-v3-add-topic-url-mapping.png"><img src="{{base_path}}/assets/img/design/create-api/streaming-api/wesocket-streaming-api-v3-add-topic-url-mapping.png" width="80%" alt="WebSocket API Topic URL Mapping"></a>
Copy link

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

⚠️ Potential issue | 🟡 Minor

Fix probable broken screenshot path.

Line 180 uses wesocket-streaming-api-v3-add-topic-url-mapping.png; websocket is misspelled, so this link is likely broken.

🖼️ Proposed path fix
-<a href="{{base_path}}/assets/img/design/create-api/streaming-api/wesocket-streaming-api-v3-add-topic-url-mapping.png"><img src="{{base_path}}/assets/img/design/create-api/streaming-api/wesocket-streaming-api-v3-add-topic-url-mapping.png" width="80%" alt="WebSocket API Topic URL Mapping"></a>
+<a href="{{base_path}}/assets/img/design/create-api/streaming-api/websocket-streaming-api-v3-add-topic-url-mapping.png"><img src="{{base_path}}/assets/img/design/create-api/streaming-api/websocket-streaming-api-v3-add-topic-url-mapping.png" width="80%" alt="WebSocket API Topic URL Mapping"></a>
📝 Committable suggestion

‼️ IMPORTANT
Carefully review the code before committing. Ensure that it accurately replaces the highlighted code, contains no missing lines, and has no issues with indentation. Thoroughly test & benchmark the code to ensure it meets the requirements.

Suggested change
<a href="{{base_path}}/assets/img/design/create-api/streaming-api/wesocket-streaming-api-v3-add-topic-url-mapping.png"><img src="{{base_path}}/assets/img/design/create-api/streaming-api/wesocket-streaming-api-v3-add-topic-url-mapping.png" width="80%" alt="WebSocket API Topic URL Mapping"></a>
<a href="{{base_path}}/assets/img/design/create-api/streaming-api/websocket-streaming-api-v3-add-topic-url-mapping.png"><img src="{{base_path}}/assets/img/design/create-api/streaming-api/websocket-streaming-api-v3-add-topic-url-mapping.png" width="80%" alt="WebSocket API Topic URL Mapping"></a>
🤖 Prompt for AI Agents
Verify each finding against the current code and only fix it if needed.

In
`@en/docs/api-design-manage/design/create-api/create-streaming-api/create-a-websocket-streaming-api.md`
at line 180, The image filename in the Markdown uses a typo
("wesocket-streaming-api-v3-add-topic-url-mapping.png") which likely breaks the
screenshot link; update the src and href occurrences to the correct filename
"websocket-streaming-api-v3-add-topic-url-mapping.png" in the line containing
the <a
href="{{base_path}}/assets/img/design/create-api/streaming-api/wesocket-streaming-api-v3-add-topic-url-mapping.png">
and the <img
src="{{base_path}}/assets/img/design/create-api/streaming-api/wesocket-streaming-api-v3-add-topic-url-mapping.png">
references so both link and image point to the corrected file name.

<a href="{{base_path}}/assets/img/design/create-api/streaming-api/websub-api-v3-topics.png"><img src="{{base_path}}/assets/img/design/create-api/streaming-api/websub-api-v3-topics.png" width="80%" alt="websub API Topics Page"></a>

<a href="{{base_path}}/assets/img/design/create-api/streaming-api/websub-delete-default-topic.png"><img src="{{base_path}}/assets/img/design/create-api/streaming-api/websub-delete-default-topic.png" width="80%" alt="WebSub API Delete Existing Topic"></a>
3. This default channel `_default` will have a default operation `receive__edfault`.
Copy link

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

⚠️ Potential issue | 🟡 Minor

Correct the default operation name typo.

Line 84 says receive__edfault; this appears to be a typo and should be receive__default.

✏️ Proposed text fix
-3. This default channel `_default` will have a default operation `receive__edfault`.
+3. This default channel `_default` will have a default operation `receive__default`.
📝 Committable suggestion

‼️ IMPORTANT
Carefully review the code before committing. Ensure that it accurately replaces the highlighted code, contains no missing lines, and has no issues with indentation. Thoroughly test & benchmark the code to ensure it meets the requirements.

Suggested change
3. This default channel `_default` will have a default operation `receive__edfault`.
3. This default channel `_default` will have a default operation `receive__default`.
🤖 Prompt for AI Agents
Verify each finding against the current code and only fix it if needed.

In
`@en/docs/api-design-manage/design/create-api/create-streaming-api/create-a-websub-streaming-api.md`
at line 84, Fix the typo in the documented default operation name: change the
operation string from "receive__edfault" to "receive__default" in the sentence
that describes the default channel `_default` so it reads that the `_default`
channel has a default operation `receive__default`.

Comment on lines +30 to +38
8. Give your API's WSDL and click **OK**. You have two ways to provide the WSDL;

1. Directly enter the WSDL URL which is <http://ws.cdyne.com/phoneverify/phoneverify.asmx?wsdl>

[![SOAP UI New Project Window]({{base_path}}/assets/attachments/103332601/soap-ui-project-wizard.png)]({{base_path}}/assets/attachments/103332601/soap-ui-project-wizard.png)

2. If your SOAP API is created from a single WSDL and in published state, you can go to the Developer Portal, navigate to your API, and copy the WSDL URL from the Overview page. Please note that this generated WSDL URL will get expired in 15 minutes if the API has restricted visibility.

[![SOAP API Overview]({{base_path}}/assets/attachments/103332601/wsdl-url.png)]({{base_path}}/assets/attachments/103332601/wsdl-url.png)
Copy link

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

⚠️ Potential issue | 🟡 Minor

Tighten Step 8 wording and align visibility term with UI labels.

Line 30 and Line 36 have phrasing issues (“Give your API's WSDL”, “in published state”, “will get expired”), and “restricted visibility” should match the UI label (“Restricted by roles”) to reduce ambiguity.

✍️ Proposed text update
-8.  Give your API's WSDL and click **OK**. You have two ways to provide the WSDL;
+8.  Provide your API's WSDL URL and click **OK**. You can provide the WSDL in two ways:

-    2. If your SOAP API is created from a single WSDL and in published state, you can go to the Developer Portal, navigate to your API, and copy the WSDL URL from the Overview page. Please note that this generated WSDL URL will get expired in 15 minutes if the API has restricted visibility.
+    2. If your SOAP API is created from a single WSDL and is in the Published state, you can copy the WSDL URL from the API **Overview** page in the Developer Portal. Note that this generated WSDL URL expires in 15 minutes when the API visibility is set to **Restricted by roles**.
📝 Committable suggestion

‼️ IMPORTANT
Carefully review the code before committing. Ensure that it accurately replaces the highlighted code, contains no missing lines, and has no issues with indentation. Thoroughly test & benchmark the code to ensure it meets the requirements.

Suggested change
8. Give your API's WSDL and click **OK**. You have two ways to provide the WSDL;
1. Directly enter the WSDL URL which is <http://ws.cdyne.com/phoneverify/phoneverify.asmx?wsdl>
[![SOAP UI New Project Window]({{base_path}}/assets/attachments/103332601/soap-ui-project-wizard.png)]({{base_path}}/assets/attachments/103332601/soap-ui-project-wizard.png)
2. If your SOAP API is created from a single WSDL and in published state, you can go to the Developer Portal, navigate to your API, and copy the WSDL URL from the Overview page. Please note that this generated WSDL URL will get expired in 15 minutes if the API has restricted visibility.
[![SOAP API Overview]({{base_path}}/assets/attachments/103332601/wsdl-url.png)]({{base_path}}/assets/attachments/103332601/wsdl-url.png)
8. Provide your API's WSDL URL and click **OK**. You can provide the WSDL in two ways:
1. Directly enter the WSDL URL which is <http://ws.cdyne.com/phoneverify/phoneverify.asmx?wsdl>
[![SOAP UI New Project Window]({{base_path}}/assets/attachments/103332601/soap-ui-project-wizard.png)]({{base_path}}/assets/attachments/103332601/soap-ui-project-wizard.png)
2. If your SOAP API is created from a single WSDL and is in the Published state, you can copy the WSDL URL from the API **Overview** page in the Developer Portal. Note that this generated WSDL URL expires in 15 minutes when the API visibility is set to **Restricted by roles**.
[![SOAP API Overview]({{base_path}}/assets/attachments/103332601/wsdl-url.png)]({{base_path}}/assets/attachments/103332601/wsdl-url.png)
🤖 Prompt for AI Agents
Verify each finding against the current code and only fix it if needed.

In
`@en/docs/api-developer-portal/invoke-apis/invoke-apis-using-tools/invoke-an-api-using-a-soap-client.md`
around lines 30 - 38, Update the wording in Step 8 to be clearer and match UI
terminology: change "Give your API's WSDL" to "Provide your API's WSDL", change
"in published state" to "published", change "will get expired" to "will expire",
and replace "restricted visibility" with the exact UI label "Restricted by
roles"; ensure the two bullets under Step 8 and any related sentences use these
revised phrases for consistency (locate the Step 8 block in the
invoke-an-api-using-a-soap-client.md content and update the sentence fragments
accordingly).

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant