Skip to content

Add docs for client-gw mtls support#123

Open
lasanthaS wants to merge 4 commits intowso2:mainfrom
lasanthaS:main
Open

Add docs for client-gw mtls support#123
lasanthaS wants to merge 4 commits intowso2:mainfrom
lasanthaS:main

Conversation

@lasanthaS
Copy link
Copy Markdown
Contributor

@lasanthaS lasanthaS commented Dec 19, 2025

Purpose

This pull request introduces documentation for configuring mutual TLS (mTLS) authentication between client applications and the API gateway in Bijira. The main changes add a new inbuilt mediation policy for mTLS, provide detailed setup instructions, and update the documentation navigation to include this new guide.

Security checks

Summary by CodeRabbit

  • Documentation

    • Added an MTLS Authenticator policy entry and a step‑by‑step mutual TLS guide for securing client–gateway communication.
    • Added Logs documentation: Overview, Runtime Logs, and Audit Logs, and updated site navigation to include the new mutual TLS guide and a Logs section under Monitor & Insights.
  • Chores

    • Removed the ignore rule for ZIP archive files.

@coderabbitai
Copy link
Copy Markdown

coderabbitai Bot commented Dec 19, 2025

Walkthrough

Adds mTLS documentation and a new MTLS Authenticator policy entry to the docs, updates site navigation to include the new page and log docs, and removes the *.zip ignore rule from .gitignore. No runtime code changes.

Changes

Cohort / File(s) Summary
mTLS Policy & Guide
en/docs/develop-api-proxy/policy/policies.md, en/docs/develop-api-proxy/policy/secure-client-gateway-communication-with-mtls.md
Inserted an MTLS Authenticator entry in the inbuilt mediation policies and added a comprehensive guide describing prerequisites, policy configuration, certificate generation, applying mTLS to an API proxy, invocation with client certs, failure behavior, deployment steps, and custom domain notes.
Logs documentation
en/docs/monitoring-and-insights/logs/overview.md, en/docs/monitoring-and-insights/logs/runtime-logs.md, en/docs/monitoring-and-insights/logs/audit-logs.md
Added new Logs section files: overview, runtime logs (fields, search, UI guidance), and audit logs (what's captured, access/roles, viewing steps, retention, role creation workflow).
Site navigation
en/mkdocs.yml
Added navigation entries: under Develop API Proxy → Policy link to the new mTLS doc; added a Logs group under Monitor and Insights with Overview, Runtime Logs, and Audit Logs.
Repository ignore rules
./.gitignore
Removed the *.zip pattern so ZIP files are no longer ignored.

Estimated code review effort

🎯 3 (Moderate) | ⏱️ ~20 minutes

Poem

🐇 I nibble through pages, soft and spry,
Certificates flutter as handshakes fly,
Two tiny paws in a mutual TLS meet,
Gateways bow low on the secure little street,
Hop—now our APIs hum safe and sweet.

🚥 Pre-merge checks | ✅ 2 | ❌ 1
❌ Failed checks (1 warning)
Check name Status Explanation Resolution
Description check ⚠️ Warning The description includes Purpose section with context, but lacks Goals, Approach, User stories, Release note, Documentation, Training, Certification, Marketing, and other template sections required by the repository template. Complete the pull request description by filling in all required sections from the template, particularly Goals, Approach, Release note, Documentation impact, and Security checks details.
✅ Passed checks (2 passed)
Check name Status Explanation
Title check ✅ Passed The title 'Add docs for client-gw mtls support' directly describes the main change: adding documentation for client-gateway mutual TLS support, which aligns with the changeset content.
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
  • Post copyable unit tests in a comment

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
Copy Markdown

@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: 8

🧹 Nitpick comments (3)
en/docs/develop-api-proxy/policy/secure-client-gateway-communication-with-mtls.md (3)

55-55: Use hyphenated form: "URL-encoded".

As per style guidelines, compound adjectives should be hyphenated. "URL encoded" should be "URL-encoded".

🔎 Proposed fix
-5. Paste the URL encoded certificate content you copied to the clipboard in the above section and save.
+5. Paste the URL-encoded certificate content you copied to the clipboard in the above section and save.

58-58: Improve phrasing for clarity.

The phrase "and add here" is awkward. Consider "and add it here" or "and provide it in this field".

🔎 Proposed fix
-    If you need to support multiple client certificates, you can use an intermediate CA certificate and add here. Once that is done, all certificates signed by the intermediate certificate will be allowed to access the resource.
+    If you need to support multiple client certificates, you can use an intermediate CA certificate and add it here. Once that is done, all certificates signed by the intermediate certificate will be allowed to access the resource.

79-79: Improve phrasing for error scenario.

The phrase "For a failed scenario" is awkward. Use "In a failed scenario" or "If the request fails".

🔎 Proposed fix
-For a failed scenario, you will get the following error.
+If the request fails, you will get the following error.
📜 Review details

Configuration used: Organization UI

Review profile: CHILL

Plan: Pro

📥 Commits

Reviewing files that changed from the base of the PR and between 1b0e3de and a725fd3.

⛔ Files ignored due to path filters (1)
  • en/docs/assets/img/develop-api-proxy/policy/mtls-auth-policy.png is excluded by !**/*.png
📒 Files selected for processing (3)
  • en/docs/develop-api-proxy/policy/policies.md (1 hunks)
  • en/docs/develop-api-proxy/policy/secure-client-gateway-communication-with-mtls.md (1 hunks)
  • en/mkdocs.yml (1 hunks)
🧰 Additional context used
🪛 LanguageTool
en/docs/develop-api-proxy/policy/secure-client-gateway-communication-with-mtls.md

[grammar] ~22-~22: Ensure spelling is correct
Context: ...hrough a mediation. Please download the mediation app from [link to the mediation app]. 2...

(QB_NEW_EN_ORTHOGRAPHY_ERROR_IDS_1)


[grammar] ~22-~22: Ensure spelling is correct
Context: ...oad the mediation app from [link to the mediation app]. 2. Open the Ballerina.toml file...

(QB_NEW_EN_ORTHOGRAPHY_ERROR_IDS_1)


[grammar] ~55-~55: Use a hyphen to join words.
Context: ...t "MTLS Authenticator". 5. Paste the URL encoded certificate content you copied t...

(QB_NEW_EN_HYPHEN)


[style] ~65-~65: Using many exclamation marks might seem excessive (in this case: 15 exclamation marks for a text that’s 3469 characters long)
Context: ... environment. ## Invoke the API Proxy !!! note If you haven’t removed OAuth2 ...

(EN_EXCESSIVE_EXCLAMATION)

🪛 markdownlint-cli2 (0.18.1)
en/docs/develop-api-proxy/policy/secure-client-gateway-communication-with-mtls.md

9-9: Spaces inside link text

(MD039, no-space-in-links)


93-93: Bare URL used

(MD034, no-bare-urls)

🔇 Additional comments (1)
en/mkdocs.yml (1)

141-141: LGTM!

The navigation entry is correctly formatted and properly placed under the Policy section.

Comment thread en/docs/develop-api-proxy/policy/policies.md Outdated
Comment thread en/docs/develop-api-proxy/policy/secure-client-gateway-communication-with-mtls.md Outdated
Comment thread en/docs/develop-api-proxy/policy/secure-client-gateway-communication-with-mtls.md Outdated
openssl req -x509 -newkey rsa:2048 -keyout mykey.pem -out mycert.pem -days 365 -nodes
```

1. Open the certificate via the preferred text editor and get the content in PEM format. Convert the content in to URL encoding and copy the content to the clipboard for future use.
Copy link
Copy Markdown

Choose a reason for hiding this comment

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

⚠️ Potential issue | 🟠 Major

Add instructions for URL encoding the certificate.

The documentation instructs users to "Convert the content in to URL encoding" but doesn't explain how to perform this conversion. This is a critical step that may not be obvious to all users.

🔎 Suggested addition

Consider adding specific instructions or a command example for URL encoding, such as:

1. Open the certificate via the preferred text editor and get the content in PEM format. URL-encode the content using one of the following methods:

**Using Python:**
```bash
python3 -c "import urllib.parse; print(urllib.parse.quote(open('mycert.pem').read()))"

Using online tools:
Visit a URL encoder tool and paste the certificate content to encode it.

Copy the encoded content to the clipboard for future use.


Also note: "in to" should be "into" (one word).
</details>

<details>
<summary>🤖 Prompt for AI Agents</summary>

In
en/docs/develop-api-proxy/policy/secure-client-gateway-communication-with-mtls.md
around line 43, the step telling users to "Convert the content in to URL
encoding" is vague and has a typo ("in to" → "into"); update the sentence to
"Convert the content into URL encoding" and add concrete examples showing how to
URL-encode a PEM file (e.g., a one-liner using Python's urllib.parse.quote and
mention alternative methods like OpenSSL piping or online URL-encoder tools),
then instruct the user to copy the encoded output to the clipboard for future
use.


</details>

<!-- fingerprinting:phantom:poseidon:puma -->

<!-- This is an auto-generated comment by CodeRabbit -->

Comment thread en/docs/develop-api-proxy/policy/secure-client-gateway-communication-with-mtls.md Outdated
Copy link
Copy Markdown

@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: 3

♻️ Duplicate comments (6)
en/docs/develop-api-proxy/policy/secure-client-gateway-communication-with-mtls.md (6)

3-5: Address persisting grammar and clarity issues.

These issues remain unresolved from the previous review:

  • Line 3: Missing comma after "WSO2 Bijira"
  • Line 5: "steps on configuring" should be "steps for configuring"
  • Line 5: Remove redundant phrase "to consume the API Proxy"
🔎 Proposed fixes
-Mutual TLS (mTLS) adds client-side certificate authentication to ensure only trusted clients can call an API. In WSO2 Bijira you enable mTLS at the API proxy level by configuring the MTLS Authenticator mediation policy to validate client certificates or an intermediate CA chain during the TLS handshake. 
+Mutual TLS (mTLS) adds client-side certificate authentication to ensure only trusted clients can call an API. In WSO2 Bijira, you enable mTLS at the API proxy level by configuring the MTLS Authenticator mediation policy to validate client certificates or an intermediate CA chain during the TLS handshake.

-This guide walks through the end-to-end steps on configuring mTLS for an API proxy to consume the API Proxy.
+This guide walks through the end-to-end steps for configuring mTLS for an API proxy.

9-9: Update Ballerina version and fix link formatting.

The documentation references an outdated Ballerina version (2201.5.5 from 2023). Update to Swan Lake Update 12 (2201.12.0) or later, which includes significant improvements. Additionally, remove the space inside the link text to fix the linting error (MD039).

🔎 Proposed fix
-1. Set up [ Ballerina 2201.5.5](https://ballerina.io/downloads/swan-lake-release-notes/swan-lake-2201.5.5).
+1. Set up [Ballerina 2201.12.0](https://ballerina.io/downloads/swan-lake-release-notes/swan-lake-2201.12.0).

23-23: Remove unnecessary preposition.

The phrase "to match with your current" should be "to match your current" for grammatical correctness.

🔎 Proposed fix
-2. Open the `Ballerina.toml` file in your preferred text editor and modify the `org` parameter to match with your current Bijira organization.
+2. Open the `Ballerina.toml` file in your preferred text editor and modify the `org` parameter to match your current Bijira organization.

43-43: Clarify URL encoding steps with concrete examples.

The current instruction is vague and contains a typo. Provide concrete methods for URL-encoding the certificate content.

🔎 Proposed fix
-1. Open the certificate via the preferred text editor and get the content in PEM format. Convert the content in to URL encoding and copy the content to the clipboard for future use.
+1. Open the certificate via the preferred text editor and get the content in PEM format. Convert the content into URL encoding using one of the following methods:
+
+   **Using Python:**
+   ```bash
+   python3 -c "import urllib.parse; print(urllib.parse.quote(open('mycert.pem').read()))"
+   ```
+
+   **Using an online URL encoder:**
+   Visit a URL encoder tool (e.g., https://www.urlencoder.org/) and paste your certificate content.
+
+   Copy the encoded output to the clipboard for future use.

48-48: Replace vague reference with a specific link.

The reference "Develop an API Proxy: Step 1" lacks a direct link and forces users to search for the correct documentation page. Provide a clickable link or explicit file path.

🔎 Proposed fix example
-2. In the Proxy Listing pane, click on the API proxy for which you want to enable MTLS. For instructions on how to create an API proxy component, see Develop an API Proxy: Step 1.
+2. In the Proxy Listing pane, click on the API proxy for which you want to enable MTLS. For instructions on how to create an API proxy component, see [Develop an API Proxy: Step 1](../../develop-api-proxy/develop-api-proxy.md).

(Update the link path to match the actual file location in your documentation structure.)


91-91: Correct the relative path to the custom domain documentation.

The relative path uses one too many directory traversals. Update from ../../../administer/... to ../../administer/....

🔎 Proposed fix
-To configure a custom domain for an API Proxy, follow the steps mentioned in [Configure a Custom Domain for Your Organization](../../../administer/settings/configure-a-custom-domain-for-your-organization/).
+To configure a custom domain for an API Proxy, follow the steps mentioned in [Configure a Custom Domain for Your Organization](../../administer/settings/configure-a-custom-domain-for-your-organization/).

Please verify that this corrected path resolves to the intended documentation file after the change.

📜 Review details

Configuration used: Organization UI

Review profile: CHILL

Plan: Pro

📥 Commits

Reviewing files that changed from the base of the PR and between a725fd3 and 7f9f204.

⛔ Files ignored due to path filters (1)
  • en/docs/assets/files/develop-api-proxy/policy/authenticator-mtls.zip is excluded by !**/*.zip
📒 Files selected for processing (2)
  • .gitignore
  • en/docs/develop-api-proxy/policy/secure-client-gateway-communication-with-mtls.md
💤 Files with no reviewable changes (1)
  • .gitignore
🧰 Additional context used
🪛 LanguageTool
en/docs/develop-api-proxy/policy/secure-client-gateway-communication-with-mtls.md

[grammar] ~55-~55: Use a hyphen to join words.
Context: ...t "MTLS Authenticator". 5. Paste the URL encoded certificate content you copied t...

(QB_NEW_EN_HYPHEN)


[style] ~65-~65: Using many exclamation marks might seem excessive (in this case: 15 exclamation marks for a text that’s 3516 characters long)
Context: ... environment. ## Invoke the API Proxy !!! note If you haven’t removed OAuth2 ...

(EN_EXCESSIVE_EXCLAMATION)

🪛 markdownlint-cli2 (0.18.1)
en/docs/develop-api-proxy/policy/secure-client-gateway-communication-with-mtls.md

9-9: Spaces inside link text

(MD039, no-space-in-links)


22-22: Link text should be descriptive

(MD059, descriptive-link-text)


93-93: Bare URL used

(MD034, no-bare-urls)

Comment thread en/docs/develop-api-proxy/policy/secure-client-gateway-communication-with-mtls.md Outdated
Comment thread en/docs/develop-api-proxy/policy/secure-client-gateway-communication-with-mtls.md Outdated
Comment thread en/docs/develop-api-proxy/policy/secure-client-gateway-communication-with-mtls.md Outdated
@lasanthaS lasanthaS force-pushed the main branch 2 times, most recently from 6c1ff5d to 2d5df30 Compare January 7, 2026 04:51
Copy link
Copy Markdown

@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

🤖 Fix all issues with AI agents
In
@en/docs/develop-api-proxy/policy/secure-client-gateway-communication-with-mtls.md:
- Line 42: Fix the typo in the sentence "Convert the content in to URL
encoding..." by changing "in to" to the single word "into" so it reads "Convert
the content into URL encoding and copy the content to the clipboard for future
use."; update the same sentence in
secure-client-gateway-communication-with-mtls.md where that exact phrase
appears.
- Line 42: The instruction "Convert the content in to URL encoding" in step 2 of
secure-client-gateway-communication-with-mtls.md is too vague; update step 2 to
include concrete, copy-pasteable examples for URL-encoding the PEM content
(e.g., a Python one-liner using urllib.parse.quote, an OpenSSL+tool pipeline
option if desired, and a recommendation for a trustworthy online URL-encoder) so
users unfamiliar with URL encoding have clear methods to follow; ensure the step
references the PEM file name (e.g., mycert.pem), shows the command examples
(Python and an online tool option), and instructs users to copy the encoded
output to the clipboard for future use.
- Line 23: Edit the sentence that reads "modify the `org` parameter to match
with your current Bijira organization" in the documentation and remove the
extraneous "with" so it reads "modify the `org` parameter to match your current
Bijira organization", keeping the references to `Ballerina.toml` and the `org`
parameter intact.
- Line 9: Update the markdown link text and URL to reference a current Swan Lake
release (e.g., change "[ Ballerina
2201.5.5](https://ballerina.io/downloads/swan-lake-release-notes/swan-lake-2201.5.5)"
to "[Ballerina
2201.12.0](https://ballerina.io/downloads/swan-lake-release-notes/swan-lake-2201.12.0)"
or a later release), and remove the extra space after the opening bracket so the
link text is "[Ballerina ...]" (no leading space) to fix the MD039 markdown
formatting issue.
📜 Review details

Configuration used: Organization UI

Review profile: CHILL

Plan: Pro

📥 Commits

Reviewing files that changed from the base of the PR and between 6c1ff5d and 2d5df30.

📒 Files selected for processing (2)
  • en/docs/develop-api-proxy/policy/policies.md
  • en/docs/develop-api-proxy/policy/secure-client-gateway-communication-with-mtls.md
🧰 Additional context used
🪛 LanguageTool
en/docs/develop-api-proxy/policy/secure-client-gateway-communication-with-mtls.md

[style] ~64-~64: Using many exclamation marks might seem excessive (in this case: 12 exclamation marks for a text that’s 3687 characters long)
Context: ... environment. ## Invoke the API Proxy !!! note If you haven’t removed OAuth2 ...

(EN_EXCESSIVE_EXCLAMATION)

🪛 markdownlint-cli2 (0.18.1)
en/docs/develop-api-proxy/policy/secure-client-gateway-communication-with-mtls.md

9-9: Spaces inside link text

(MD039, no-space-in-links)

🔇 Additional comments (2)
en/docs/develop-api-proxy/policy/policies.md (1)

30-30: LGTM!

The MTLS Authenticator policy description is clear, comprehensive, and properly links to the detailed configuration guide. Grammar is correct ("steps" plural), and the entry integrates well with the existing policy list.

en/docs/develop-api-proxy/policy/secure-client-gateway-communication-with-mtls.md (1)

90-90: Correct the relative path: remove one directory level.

The relative link has one too many ../ segments. Since the file is at en/docs/develop-api-proxy/policy/secure-client-gateway-communication-with-mtls.md, the path to en/administer/settings/configure-a-custom-domain-for-your-organization/ requires only two ../ (up to en/docs/ then out to en/), not three.

🔎 Proposed fix
-To configure a custom domain for an API Proxy, follow the steps mentioned in [Configure a Custom Domain for Your Organization](../../../administer/settings/configure-a-custom-domain-for-your-organization/).
+To configure a custom domain for an API Proxy, follow the steps mentioned in [Configure a Custom Domain for Your Organization](../../administer/settings/configure-a-custom-domain-for-your-organization/).

Likely an incorrect or invalid review comment.

Comment thread en/docs/develop-api-proxy/policy/secure-client-gateway-communication-with-mtls.md Outdated
Copy link
Copy Markdown

@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: 3

🤖 Fix all issues with AI agents
In
@en/docs/develop-api-proxy/policy/secure-client-gateway-communication-with-mtls.md:
- Line 90: The markdown link for "Configure a Custom Domain for Your
Organization" has an incorrect relative path with one extra parent directory
level; edit the link target in secure-client-gateway-communication-with-mtls.md
so the href uses two parent-directory segments instead of three (i.e., reduce
the leading ../ count by one) so the link resolves to the correct documentation
page.
- Line 42: Fix the typo by changing "in to" to "into" and expand the sentence
into a short, actionable step that shows concrete URL-encoding options: add a
recommended python3 one-liner that uses urllib.parse.quote to URL-encode the PEM
file, and an alternate suggestion to use a reputable online URL encoder tool;
then instruct the user to copy the encoded output to the clipboard for future
use.
- Line 9: The markdown link "[ Ballerina 2201.5.5](...)" is outdated and has an
extra space after the opening bracket; update the link text to the current
supported Ballerina version (replace "Ballerina 2201.5.5" with the project’s
current stable version) and remove the leading space so the link reads like
"[Ballerina <version>](https://ballerina.io/...)" with the version number
matching the URL.
📜 Review details

Configuration used: Organization UI

Review profile: CHILL

Plan: Pro

📥 Commits

Reviewing files that changed from the base of the PR and between 2d5df30 and 368c2d6.

📒 Files selected for processing (2)
  • en/docs/develop-api-proxy/policy/policies.md
  • en/docs/develop-api-proxy/policy/secure-client-gateway-communication-with-mtls.md
🚧 Files skipped from review as they are similar to previous changes (1)
  • en/docs/develop-api-proxy/policy/policies.md
🧰 Additional context used
🪛 LanguageTool
en/docs/develop-api-proxy/policy/secure-client-gateway-communication-with-mtls.md

[style] ~64-~64: Using many exclamation marks might seem excessive (in this case: 12 exclamation marks for a text that’s 3682 characters long)
Context: ... environment. ## Invoke the API Proxy !!! note If you haven’t removed OAuth2 ...

(EN_EXCESSIVE_EXCLAMATION)

🪛 markdownlint-cli2 (0.18.1)
en/docs/develop-api-proxy/policy/secure-client-gateway-communication-with-mtls.md

9-9: Spaces inside link text

(MD039, no-space-in-links)


## Prerequisites

1. Set up [ Ballerina 2201.5.5](https://ballerina.io/downloads/swan-lake-release-notes/swan-lake-2201.5.5).
Copy link
Copy Markdown

Choose a reason for hiding this comment

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

⚠️ Potential issue | 🔴 Critical

Update Ballerina version and fix link text formatting.

Line 9 still references Ballerina 2201.5.5 (released 2023), which is outdated. Additionally, there is a space after the opening bracket in the link text (MD039 violation).

🔎 Proposed fix
-1. Set up [ Ballerina 2201.5.5](https://ballerina.io/downloads/swan-lake-release-notes/swan-lake-2201.5.5).
+1. Set up [Ballerina 2201.12.0](https://ballerina.io/downloads/swan-lake-release-notes/swan-lake-2201.12.0).
📝 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
1. Set up [ Ballerina 2201.5.5](https://ballerina.io/downloads/swan-lake-release-notes/swan-lake-2201.5.5).
1. Set up [Ballerina 2201.12.0](https://ballerina.io/downloads/swan-lake-release-notes/swan-lake-2201.12.0).
🧰 Tools
🪛 markdownlint-cli2 (0.18.1)

9-9: Spaces inside link text

(MD039, no-space-in-links)

🤖 Prompt for AI Agents
In
@en/docs/develop-api-proxy/policy/secure-client-gateway-communication-with-mtls.md
at line 9, The markdown link "[ Ballerina 2201.5.5](...)" is outdated and has an
extra space after the opening bracket; update the link text to the current
supported Ballerina version (replace "Ballerina 2201.5.5" with the project’s
current stable version) and remove the leading space so the link reads like
"[Ballerina <version>](https://ballerina.io/...)" with the version number
matching the URL.

openssl req -x509 -newkey rsa:2048 -keyout mykey.pem -out mycert.pem -days 365 -nodes
```

2. Open the certificate via the preferred text editor and get the content in PEM format. Convert the content in to URL encoding and copy the content to the clipboard for future use.
Copy link
Copy Markdown

Choose a reason for hiding this comment

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

⚠️ Potential issue | 🟠 Major

Fix typo and add concrete URL encoding examples.

Line 42 contains a typo ("in to" should be "into") and lacks concrete instructions for URL encoding. Users unfamiliar with URL encoding will need specific methods.

🔎 Proposed fix
-2. Open the certificate via the preferred text editor and get the content in PEM format. Convert the content in to URL encoding and copy the content to the clipboard for future use.
+2. Open the certificate via your preferred text editor and get the content in PEM format. Convert the content into URL encoding using one of the following methods:
+
+   **Using Python:**
+   ```bash
+   python3 -c "import urllib.parse; print(urllib.parse.quote(open('mycert.pem').read()))"
+   ```
+
+   **Using an online tool:**
+   Visit a URL encoder tool and paste your certificate content to encode it.
+
+   Copy the encoded output to the clipboard for future use.
📝 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
2. Open the certificate via the preferred text editor and get the content in PEM format. Convert the content in to URL encoding and copy the content to the clipboard for future use.
2. Open the certificate via your preferred text editor and get the content in PEM format. Convert the content into URL encoding using one of the following methods:
**Using Python:**
🤖 Prompt for AI Agents
In
@en/docs/develop-api-proxy/policy/secure-client-gateway-communication-with-mtls.md
at line 42, Fix the typo by changing "in to" to "into" and expand the sentence
into a short, actionable step that shows concrete URL-encoding options: add a
recommended python3 one-liner that uses urllib.parse.quote to URL-encode the PEM
file, and an alternate suggestion to use a reputable online URL encoder tool;
then instruct the user to copy the encoded output to the clipboard for future
use.


## Configure a Custom Domain

To configure a custom domain for an API Proxy, follow the steps mentioned in [Configure a Custom Domain for Your Organization](../../../administer/settings/configure-a-custom-domain-for-your-organization/).
Copy link
Copy Markdown

Choose a reason for hiding this comment

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

⚠️ Potential issue | 🔴 Critical

Correct the relative path.

Line 90 uses one too many directory levels in the relative path. Change ../../../administer/ to ../../administer/ to resolve to the correct documentation page.

🔎 Proposed fix
-To configure a custom domain for an API Proxy, follow the steps mentioned in [Configure a Custom Domain for Your Organization](../../../administer/settings/configure-a-custom-domain-for-your-organization/).
+To configure a custom domain for an API Proxy, follow the steps mentioned in [Configure a Custom Domain for Your Organization](../../administer/settings/configure-a-custom-domain-for-your-organization/).
📝 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
To configure a custom domain for an API Proxy, follow the steps mentioned in [Configure a Custom Domain for Your Organization](../../../administer/settings/configure-a-custom-domain-for-your-organization/).
To configure a custom domain for an API Proxy, follow the steps mentioned in [Configure a Custom Domain for Your Organization](../../administer/settings/configure-a-custom-domain-for-your-organization/).
🤖 Prompt for AI Agents
In
@en/docs/develop-api-proxy/policy/secure-client-gateway-communication-with-mtls.md
at line 90, The markdown link for "Configure a Custom Domain for Your
Organization" has an incorrect relative path with one extra parent directory
level; edit the link target in secure-client-gateway-communication-with-mtls.md
so the href uses two parent-directory segments instead of three (i.e., reduce
the leading ../ count by one) so the link resolves to the correct documentation
page.

Copy link
Copy Markdown

@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: 2

🤖 Fix all issues with AI agents
In `@en/docs/monitoring-and-insights/logs/audit-logs.md`:
- Around line 68-70: The line "Select the group that you want to assign the role
to and click Edit button." is missing the article "the"; update that sentence in
the document (in the sequence under the Access Control / Groups steps) to read
"Select the group that you want to assign the role to and click the Edit
button." so the phrasing is grammatically correct and consistent with
surrounding steps.

In `@en/docs/monitoring-and-insights/logs/runtime-logs.md`:
- Line 63: Update the documentation line describing `CORS_RESPONSE` to use the
correct hyphenation: change "Cross Origin Resource Sharing" to "Cross-Origin
Resource Sharing" in the text that defines `CORS_RESPONSE` so the terminology
matches standard usage.

Comment on lines +68 to +70
1. On the **Access Control** tab, click **Groups**. This lists the groups of the organization with their respective details.
2. Select the group that you want to assign the role to and click Edit button.
3. Click the **Roles** tab, and then click **+ Add Roles** to add a new role to the group. Then add the role you created in [Step 1](#step-1-create-a-role-with-audit-log-access-permission) and click **Add**.
Copy link
Copy Markdown

Choose a reason for hiding this comment

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

⚠️ Potential issue | 🟡 Minor

Minor grammatical fix needed.

Missing article "the" before "Edit button".

📝 Suggested fix
-2. Select the group that you want to assign the role to and click Edit button.
+2. Select the group that you want to assign the role to and click the **Edit** button.
📝 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
1. On the **Access Control** tab, click **Groups**. This lists the groups of the organization with their respective details.
2. Select the group that you want to assign the role to and click Edit button.
3. Click the **Roles** tab, and then click **+ Add Roles** to add a new role to the group. Then add the role you created in [Step 1](#step-1-create-a-role-with-audit-log-access-permission) and click **Add**.
1. On the **Access Control** tab, click **Groups**. This lists the groups of the organization with their respective details.
2. Select the group that you want to assign the role to and click the **Edit** button.
3. Click the **Roles** tab, and then click **+ Add Roles** to add a new role to the group. Then add the role you created in [Step 1](`#step-1-create-a-role-with-audit-log-access-permission`) and click **Add**.
🤖 Prompt for AI Agents
In `@en/docs/monitoring-and-insights/logs/audit-logs.md` around lines 68 - 70, The
line "Select the group that you want to assign the role to and click Edit
button." is missing the article "the"; update that sentence in the document (in
the sequence under the Access Control / Groups steps) to read "Select the group
that you want to assign the role to and click the Edit button." so the phrasing
is grammatically correct and consistent with surrounding steps.

- `Duration`: The time taken for the gateway to serve the request.  
- `gatewayCode`: Indicates the state of the request from the gateway perspective. Possible values are as follows:
- `BACKEND_RESPONSE`: Indicates successful processing of the request by the gateway with a response to the client from the backend application.
- `CORS_RESPONSE`: Denotes a CORS (Cross Origin Resource Sharing) request.
Copy link
Copy Markdown

Choose a reason for hiding this comment

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

⚠️ Potential issue | 🟡 Minor

Minor: "Cross-Origin" should be hyphenated.

"Cross Origin Resource Sharing" should be hyphenated as "Cross-Origin Resource Sharing" per standard terminology.

📝 Suggested fix
-    - `CORS_RESPONSE`: Denotes a CORS (Cross Origin Resource Sharing) request.
+    - `CORS_RESPONSE`: Denotes a CORS (Cross-Origin Resource Sharing) request.
📝 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
- `CORS_RESPONSE`: Denotes a CORS (Cross Origin Resource Sharing) request.
- `CORS_RESPONSE`: Denotes a CORS (Cross-Origin Resource Sharing) request.
🧰 Tools
🪛 LanguageTool

[grammar] ~63-~63: Use a hyphen to join words.
Context: ...- CORS_RESPONSE: Denotes a CORS (Cross Origin Resource Sharing) request. - ...

(QB_NEW_EN_HYPHEN)

🤖 Prompt for AI Agents
In `@en/docs/monitoring-and-insights/logs/runtime-logs.md` at line 63, Update the
documentation line describing `CORS_RESPONSE` to use the correct hyphenation:
change "Cross Origin Resource Sharing" to "Cross-Origin Resource Sharing" in the
text that defines `CORS_RESPONSE` so the terminology matches standard usage.

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