# mulesoft Omni Gateway - Full Documentation --- product: Omni Gateway version: 1.12 keywords: api gateway, flex gateway, gateway, policy --- # A2A Agent Card Policy > For the full documentation index, see: https://docs.mulesoft.com/llms.txt
Policy Name | A2A Agent Card |
Summary | Rewrites the Agent Card URL to match the public URL of the gateway |
Category | A2A |
First Flex Gateway version available | v1.9.3 |
Returned Status Codes |
| Element | Description |
|---|---|
Consumer URL | The consumer URL of the agent’s A2A service where JSON-RPC requests are sent. |
Card Path | The path where the agent presents the card. |
Policy Name | A2A Agent Card |
Summary | Rewrites the Agent Card URL to match the public URL of the gateway |
Category | A2A |
First Omni Gateway version available | v1.9.3 |
Release Notes | |
Returned Status Codes |
| Element | Description |
|---|---|
Consumer URL | The consumer URL of the agent’s A2A service where JSON-RPC requests are sent. |
Card Path | The path where the agent presents the card. |
Policy Name | A2A Agent Card |
Summary | Rewrites the Agent Card URL to match the public URL of the gateway |
Category | A2A |
First Flex Gateway version available | v1.9.3 |
Returned Status Codes |
| Element | Description |
|---|---|
Consumer URL | The consumer URL of the agent’s A2A service where JSON-RPC requests are sent. |
Card Path | The path where the agent presents the card. |
Policy Name | A2A Agent Card |
Summary | Rewrites the Agent Card URL to match the public URL of the gateway |
Category | A2A |
First Omni Gateway version available | v1.9.3 |
Release Notes | |
Returned Status Codes |
| Element | Description |
|---|---|
Consumer URL | The consumer URL of the agent’s A2A service where JSON-RPC requests are sent. |
Card Path | The path where the agent presents the card. |
Policy Name | A2A In-Task Authorization Code |
Summary | Ensures secondary credentials are present for in-task authentication using OAuth 2.0 Authorization Code flow |
Category | A2A |
First Flex Gateway version available | v1.11.4 |
Returned Status Codes | 200 (authentication challenge), 401 (authentication failure) |
| Element | Description | Required |
|---|---|---|
Secondary Auth Provider | Name of the OAuth 2.0 identity provider. For example: | Optional |
Authorization Endpoint | Authorization endpoint URL of the OAuth 2.0 service. For example: | Required |
Token Endpoint | Token endpoint of the OAuth 2.0 service. For example: | Required |
Scopes | Space or comma separated list of the OAuth 2.0 scopes required for in-task authentication. For example: | Required |
Redirect URI | OAuth 2.0 redirect URI that the client uses in the authorization flow. | Required |
Token Audience | OAuth 2.0 token audience. The intended recipient of the token. For example: | Optional |
Response Type | OAuth 2.0 response type. Typically | Optional |
Code Challenge Method | PKCE code challenge method. Typically | Optional |
Body Encoding | Encoding format for token request body. Typically | Optional |
Token Timeout | Timeout in seconds for token requests. | Optional |
Challenge Response Status Code | HTTP status code to return for | Optional |
Distributed | When enabled, the token cache is shared across Flex Gateway replicas. Enable this option when running more than one replica to avoid duplicate token requests or repeated auth challenges. | Optional |
Policy Name | A2A In-Task Authorization Code |
Summary | Ensures secondary credentials are present for in-task authentication using OAuth 2.0 Authorization Code flow |
Category | A2A |
First Omni Gateway version available | v1.11.4 |
Release Notes | |
Returned Status Codes | 200 (authentication challenge), 401 (authentication failure) |
| Element | Description | Required |
|---|---|---|
Secondary Auth Provider | Name of the OAuth 2.0 identity provider. For example: | Optional |
Authorization Endpoint | Authorization endpoint URL of the OAuth 2.0 service. For example: | Required |
Token Endpoint | Token endpoint of the OAuth 2.0 service. For example: | Required |
Scopes | Space or comma separated list of the OAuth 2.0 scopes required for in-task authentication. For example: | Required |
Redirect URI | OAuth 2.0 redirect URI that the client uses in the authorization flow. | Required |
Token Audience | OAuth 2.0 token audience. The intended recipient of the token. For example: | Optional |
Response Type | OAuth 2.0 response type. Typically | Optional |
Code Challenge Method | PKCE code challenge method. Typically | Optional |
Body Encoding | Encoding format for token request body. Typically | Optional |
Token Timeout | Timeout in seconds for token requests. | Optional |
Challenge Response Status Code | HTTP status code to return for | Optional |
Distributed | When enabled, the token cache is shared across Omni Gateway replicas. Enable this option when running more than one replica to avoid duplicate token requests or repeated auth challenges. | Optional |
Policy Name | A2A In-Task Authorization Code |
Summary | Ensures secondary credentials are present for in-task authentication using OAuth 2.0 Authorization Code flow |
Category | A2A |
First Omni Gateway version available | v1.11.4 |
Release Notes | |
Returned Status Codes | 200 (authentication challenge), 401 (authentication failure) |
| Element | Description | Required |
|---|---|---|
Secondary Auth Provider | Name of the OAuth 2.0 identity provider. For example: | Optional |
Authorization Endpoint | Authorization endpoint URL of the OAuth 2.0 service. For example: | Required |
Token Endpoint | Token endpoint of the OAuth 2.0 service. For example: | Required |
Scopes | Space or comma separated list of the OAuth 2.0 scopes required for in-task authentication. For example: | Required |
Redirect URI | OAuth 2.0 redirect URI that the client uses in the authorization flow. | Required |
Token Audience | OAuth 2.0 token audience. The intended recipient of the token. For example: | Optional |
Response Type | OAuth 2.0 response type. Typically | Optional |
Code Challenge Method | PKCE code challenge method. Typically | Optional |
Body Encoding | Encoding format for token request body. Typically | Optional |
Token Timeout | Timeout in seconds for token requests. | Optional |
Challenge Response Status Code | HTTP status code to return for | Optional |
Distributed | When enabled, the token cache is shared across Omni Gateway replicas. Enable this option when running more than one replica to avoid duplicate token requests or repeated auth challenges. | Optional |
Policy Name | A2A PII Detector Policy |
Summary | Detects personally identifiable information (PII) in requests sent to the agent |
Category | A2A |
First Flex Gateway version available | v1.9.3 |
Returned Status Codes |
| Element | Description |
|---|---|
Entities | Array that defines the types of PII to detect. You can select multiple PII types. Supported values are |
Action | Action to take when PII is detected. Supported values are |
| PII Type | Description |
|---|---|
Standard email addresses such as | |
US SSN | United States Social Security Numbers (SSNs) in the standard format: |
Credit Card | Credit card numbers in the form of four groups of four digits, separated by optional spaces or hyphens. Examples: |
Phone Number | United States phone numbers in various formats, with or without country code, parentheses, spaces, hyphens, or dots. Examples: |
Policy Name | A2A PII Detector Policy |
Summary | Detects personally identifiable information (PII) in A2A JSON-RPC traffic |
Category | A2A |
First Omni Gateway version available | v1.9.3 |
Release Notes | |
Returned Status Codes | HTTP 403 with JSON-RPC 2.0 error code |
| Element | Required | Description |
|---|---|---|
PII Types | Yes | Array of built-in PII types to detect. Supported values are Email, US SSN, Credit Card, and Phone Number. For more information, see PII Types. |
Custom PII Patterns | No | Array of custom regex patterns to detect additional sensitive values. Define a name and regex pattern for each array entry. For example, use |
Action | No | Action to take when PII is detected. Supported values are Reject, Log, and Log and mask. Default is Log. |
| PII Type | Description |
|---|---|
Standard email addresses such as | |
US SSN | United States Social Security Numbers (SSNs), including formats with various delimiters such as |
Credit Card | Credit card numbers for Visa, MasterCard, American Express, and Discover, with or without separators. Examples: |
Phone Number | Phone numbers in common domestic and international formats based on ITU E.164 country codes. Examples include US numbers like |
| Action | Request Body on Wire | Access Log |
|---|---|---|
Reject | Blocked (HTTP 403 error; raw values appear in error.data string) | No log emitted on reject |
Log and mask | Forwarded unchanged (raw PII flows upstream) | Masked |
Log | Forwarded unchanged (raw PII flows upstream) | Raw |
| Action | Response Body on Wire | Access Log |
|---|---|---|
Any (Reject, Log, Log and mask) | Pass-through (raw values flow to the client) | Raw |
Policy Name | A2A PII Detector Policy |
Summary | Detects personally identifiable information (PII) in requests sent to the agent |
Category | A2A |
First Flex Gateway version available | v1.9.3 |
Returned Status Codes |
| Element | Description |
|---|---|
Entities | Array that defines the types of PII to detect. You can select multiple PII types. Supported values are |
Action | Action to take when PII is detected. Supported values are |
| PII Type | Description |
|---|---|
Standard email addresses such as | |
US SSN | United States Social Security Numbers (SSNs) in the standard format: |
Credit Card | Credit card numbers in the form of four groups of four digits, separated by optional spaces or hyphens. Examples: |
Phone Number | United States phone numbers in various formats, with or without country code, parentheses, spaces, hyphens, or dots. Examples: |
Policy Name | A2A PII Detector Policy |
Summary | Detects personally identifiable information (PII) in A2A JSON-RPC traffic |
Category | A2A |
First Omni Gateway version available | v1.9.3 |
Release Notes | |
Returned Status Codes | HTTP 403 with JSON-RPC 2.0 error code |
| Element | Required | Description |
|---|---|---|
PII Types | Yes | Array of built-in PII types to detect. Supported values are Email, US SSN, Credit Card, and Phone Number. For more information, see PII Types. |
Custom PII Patterns | No | Array of custom regex patterns to detect additional sensitive values. Define a name and regex pattern for each array entry. For example, use |
Action | No | Action to take when PII is detected. Supported values are Reject, Log, and Log and mask. Default is Log. |
| PII Type | Description |
|---|---|
Standard email addresses such as | |
US SSN | United States Social Security Numbers (SSNs), including formats with various delimiters such as |
Credit Card | Credit card numbers for Visa, MasterCard, American Express, and Discover, with or without separators. Examples: |
Phone Number | Phone numbers in common domestic and international formats based on ITU E.164 country codes. Examples include US numbers like |
| Action | Request Body on Wire | Access Log |
|---|---|---|
Reject | Blocked (HTTP 403 error; raw values appear in error.data string) | No log emitted on reject |
Log and mask | Forwarded unchanged (raw PII flows upstream) | Masked |
Log | Forwarded unchanged (raw PII flows upstream) | Raw |
| Action | Response Body on Wire | Access Log |
|---|---|---|
Any (Reject, Log, Log and mask) | Pass-through (raw values flow to the client) | Raw |
Policy Name | A2A Prompt Decorator |
Summary | Decorates prompts with context information |
Category | A2A |
First Flex Gateway version available | v1.9.3 |
Returned Status Codes | No return codes exist for this policy. |
| Element | Description |
|---|---|
Text Decorators | List of text decorations you want to add to the prompts. |
Prompt Text | DataWeave Expression that generates the prompt text injected into the request. For example: |
Condition | DataWeave Expression that filters which prompts to decorate. For example: |
File Decorators | List of file decorations to add to the prompts. |
Condition | DataWeave Expression that filters which prompts to decorate. For example: |
File Name | DataWeave Expression with the File Name. For example: |
File Mime Type | DataWeave Expression with the Mime Type of the file to inject. For example: |
File Source | Select Base64 if the file Content is base64-encoded data, or Uri if the file Content is a URL to an external file. |
Content | DataWeave Expression containing either base64-encoded file content or a URL to download the content file. For example: #['https://domain/file-location'] or #['QmFzZTY0IGVuY29kZWQgZmlsZSBjb250ZW50']. |
Policy Name | A2A Prompt Decorator |
Summary | Decorates prompts with context information |
Category | A2A |
First Omni Gateway version available | v1.9.3 |
Release Notes | |
Returned Status Codes | No return codes exist for this policy. |
| Element | Description |
|---|---|
Text Decorators | List of text decorations you want to add to the prompts. |
Prompt Text | DataWeave Expression that generates the prompt text injected into the request. For example: |
Condition | DataWeave Expression that filters which prompts to decorate. For example: |
File Decorators | List of file decorations to add to the prompts. |
Condition | DataWeave Expression that filters which prompts to decorate. For example: |
File Name | DataWeave Expression with the File Name. For example: |
File Mime Type | DataWeave Expression with the Mime Type of the file to inject. For example: |
File Source | Select Base64 if the file Content is base64-encoded data, or Uri if the file Content is a URL to an external file. |
Content | DataWeave Expression containing either base64-encoded file content or a URL to download the content file. For example: #['https://domain/file-location'] or #['QmFzZTY0IGVuY29kZWQgZmlsZSBjb250ZW50']. |
Policy Name | A2A Prompt Decorator |
Summary | Decorates prompts with context information |
Category | A2A |
First Flex Gateway version available | v1.9.3 |
Returned Status Codes | No return codes exist for this policy. |
| Element | Description |
|---|---|
Text Decorators | List of text decorations you want to add to the prompts. |
Prompt Text | DataWeave Expression that generates the prompt text injected into the request. For example: |
Condition | DataWeave Expression that filters which prompts to decorate. For example: |
File Decorators | List of file decorations to add to the prompts. |
Condition | DataWeave Expression that filters which prompts to decorate. For example: |
File Name | DataWeave Expression with the File Name. For example: |
File Mime Type | DataWeave Expression with the Mime Type of the file to inject. For example: |
File Source | Select Base64 if the file Content is base64-encoded data, or Uri if the file Content is a URL to an external file. |
Content | DataWeave Expression containing either base64-encoded file content or a URL to download the content file. For example: #['https://domain/file-location'] or #['QmFzZTY0IGVuY29kZWQgZmlsZSBjb250ZW50']. |
Policy Name | A2A Prompt Decorator |
Summary | Decorates prompts with context information |
Category | A2A |
First Omni Gateway version available | v1.9.3 |
Release Notes | |
Returned Status Codes | No return codes exist for this policy. |
| Element | Description |
|---|---|
Text Decorators | List of text decorations you want to add to the prompts. |
Prompt Text | DataWeave Expression that generates the prompt text injected into the request. For example: |
Condition | DataWeave Expression that filters which prompts to decorate. For example: |
File Decorators | List of file decorations to add to the prompts. |
Condition | DataWeave Expression that filters which prompts to decorate. For example: |
File Name | DataWeave Expression with the File Name. For example: |
File Mime Type | DataWeave Expression with the Mime Type of the file to inject. For example: |
File Source | Select Base64 if the file Content is base64-encoded data, or Uri if the file Content is a URL to an external file. |
Content | DataWeave Expression containing either base64-encoded file content or a URL to download the content file. For example: #['https://domain/file-location'] or #['QmFzZTY0IGVuY29kZWQgZmlsZSBjb250ZW50']. |
Policy Name | A2A Quality Evaluation |
Summary | Evaluates A2A agent task responses with an LLM to score quality and completeness |
Category | A2A |
First Omni Gateway version available | v1.13.0 |
Release Notes | |
Returned Status Codes | No return codes exist for this policy. |
| Element | Description | Required | Default |
|---|---|---|---|
Quality LLM URL | OpenAI-compatible chat completions endpoint for quality evaluation. The policy POSTs request to For example: | Yes | None |
Quality LLM API Key | Bearer token for authenticating to the quality LLM endpoint. This value is encrypted at rest. | Yes | None |
Quality LLM Model | Model name to use for quality evaluation. The name must be a valid model name supported by the configured endpoint. For example: | No |
|
Request Timeout (ms) | Timeout in milliseconds for the quality LLM call. If the call exceeds this timeout, the verdict isn’t attached and the policy logs a warning. | No |
|
| Header | Description |
|---|---|
|
|
| Quality score: |
| Free-text explanation of the verdict provided by the quality LLM. |
| Tag | Values |
|---|---|
|
|
|
|
|
|
| One of 20 bounded log-scale labels representing the quality LLM call latency in milliseconds: |
| Only emitted when |
| Failure | Impact |
|---|---|
Quality LLM unreachable, non-200 response, or parse error | No quality verdict headers are attached. The metric is emitted with |
Verdict storage fails | The storage error is ignored. The policy may re-invoke the quality LLM on a subsequent |
Request body is not valid JSON-RPC | The request passes through unchanged. No quality evaluation is performed. |
Quality LLM call exceeds the configured timeout | Treated as a transport error. No quality verdict headers are attached. The metric is emitted with |
Policy Name | A2A Quality Evaluation |
Summary | Evaluates A2A agent task responses with an LLM to score quality and completeness |
Category | A2A |
First Omni Gateway version available | v1.13.0 |
Release Notes | |
Returned Status Codes | No return codes exist for this policy. |
| Element | Description | Required | Default |
|---|---|---|---|
Quality LLM URL | OpenAI-compatible chat completions endpoint for quality evaluation. The policy POSTs request to For example: | Yes | None |
Quality LLM API Key | Bearer token for authenticating to the quality LLM endpoint. This value is encrypted at rest. | Yes | None |
Quality LLM Model | Model name to use for quality evaluation. The name must be a valid model name supported by the configured endpoint. For example: | No |
|
Request Timeout (ms) | Timeout in milliseconds for the quality LLM call. If the call exceeds this timeout, the verdict isn’t attached and the policy logs a warning. | No |
|
| Header | Description |
|---|---|
|
|
| Quality score: |
| Free-text explanation of the verdict provided by the quality LLM. |
| Tag | Values |
|---|---|
|
|
|
|
|
|
| One of 20 bounded log-scale labels representing the quality LLM call latency in milliseconds: |
| Only emitted when |
| Failure | Impact |
|---|---|
Quality LLM unreachable, non-200 response, or parse error | No quality verdict headers are attached. The metric is emitted with |
Verdict storage fails | The storage error is ignored. The policy may re-invoke the quality LLM on a subsequent |
Request body is not valid JSON-RPC | The request passes through unchanged. No quality evaluation is performed. |
Quality LLM call exceeds the configured timeout | Treated as a transport error. No quality verdict headers are attached. The metric is emitted with |
Policy Name | A2A Schema Validation |
Summary | Validates Agent requests to ensure they conform to the A2A specification |
Category | A2A |
First Flex Gateway version available | v1.9.3 |
Returned Status Codes |
Policy Name | A2A Schema Validation |
Summary | Validates Agent requests to ensure they conform to the A2A specification |
Category | A2A |
First Omni Gateway version available | v1.9.3 |
Release Notes | |
Returned Status Codes |
Policy Name | A2A Schema Validation |
Summary | Validates Agent requests to ensure they conform to the A2A specification |
Category | A2A |
First Flex Gateway version available | v1.9.3 |
Returned Status Codes |
Policy Name | A2A Schema Validation |
Summary | Validates Agent requests to ensure they conform to the A2A specification |
Category | A2A |
First Omni Gateway version available | v1.9.3 |
Release Notes | |
Returned Status Codes |
Policy Name | A2A Token Based Rate Limit |
Summary | Rate limits agent usage of upstream resources |
Category | A2A |
First Flex Gateway version available | v1.11.0 |
Returned Status Codes | 429 - Too Many Requests: Token limit exceeded, requests are blocked until the current window finishes |
| Element | Required | Description |
|---|---|---|
Maximum Tokens | Yes | Maximum number of tokens allowed within the specified time period. Must be a positive integer of one or greater. |
Time Period (ms) | Yes | Time period in milliseconds for the rate limit window. Minimum time period is 1000 milliseconds. |
Key Selector | Yes | DataWeave expression that selects the key for rate limiting. This creates independent rate limit counters for each unique value resolved by the expression. For example:
|
Policy Name | A2A Token Based Rate Limit |
Summary | Rate limits agent usage of upstream resources |
Category | A2A |
First Omni Gateway version available | v1.11.0 |
Release Notes | |
Returned Status Codes | 429 - Too Many Requests: Token limit exceeded, requests are blocked until the current window finishes |
| Element | Required | Description |
|---|---|---|
Maximum Tokens | Yes | Maximum number of tokens allowed within the specified time period. Must be a positive integer of one or greater. |
Time Period (ms) | Yes | Time period in milliseconds for the rate limit window. Minimum time period is 1000 milliseconds. |
Key Selector | Yes | DataWeave expression that selects the key for rate limiting. This creates independent rate limit counters for each unique value resolved by the expression. For example:
|
Policy Name | A2A Token Based Rate Limit |
Summary | Rate limits agent usage of upstream resources |
Category | A2A |
First Omni Gateway version available | v1.11.0 |
Release Notes | |
Returned Status Codes | 429 - Too Many Requests: Token limit exceeded, requests are blocked until the current window finishes |
| Element | Required | Description |
|---|---|---|
Maximum Tokens | Yes | Maximum number of tokens allowed within the specified time period. Must be a positive integer of one or greater. |
Time Period (ms) | Yes | Time period in milliseconds for the rate limit window. Minimum time period is 1000 milliseconds. |
Key Selector | Yes | DataWeave expression that selects the key for rate limiting. This creates independent rate limit counters for each unique value resolved by the expression. For example:
|
Policy Name | A2A v1 Agent Card |
Summary | Rewrites interface URLs in the A2A v1.0 agent card to match the gateway’s public address |
Category | A2A |
First Omni Gateway version available | v1.13.0 |
Release Notes | |
Returned Status Codes | No return codes exist for this policy. |
| Parameter | Description | Required | Default Value | Example |
|---|---|---|---|---|
Consumer URL | The base gateway URL injected into the agent card’s When undefined, the gateway resolves its public consumer URL from the Anypoint platform. | No | Resolved from platform |
|
Agent Card Path | The suffix path where the well-known agent card is published. The match is case-insensitive and suffix-based, so the configured path resolves under any tenant prefix. Configure this when the gateway publishes the card under a custom sub-path. | No |
|
|
Interface Paths - JSON-RPC Path | Path appended to Consumer URL for interfaces with When undefined, the binding uses the bare Consumer URL. | No | (bare Consumer URL) |
|
Interface Paths - gRPC Path | Path appended to Consumer URL for interfaces with When undefined, the binding uses the bare Consumer URL. | No | (bare Consumer URL) |
|
Interface Paths - HTTP+JSON Path | Path appended to Consumer URL for interfaces with When undefined, the binding uses the bare Consumer URL. | No | (bare Consumer URL) |
|
Policy Name | A2A v1 Agent Card |
Summary | Rewrites interface URLs in the A2A v1.0 agent card to match the gateway’s public address |
Category | A2A |
First Omni Gateway version available | v1.13.0 |
Release Notes | |
Returned Status Codes | No return codes exist for this policy. |
| Parameter | Description | Required | Default Value | Example |
|---|---|---|---|---|
Consumer URL | The base gateway URL injected into the agent card’s When undefined, the gateway resolves its public consumer URL from the Anypoint platform. | No | Resolved from platform |
|
Agent Card Path | The suffix path where the well-known agent card is published. The match is case-insensitive and suffix-based, so the configured path resolves under any tenant prefix. Configure this when the gateway publishes the card under a custom sub-path. | No |
|
|
Interface Paths - JSON-RPC Path | Path appended to Consumer URL for interfaces with When undefined, the binding uses the bare Consumer URL. | No | (bare Consumer URL) |
|
Interface Paths - gRPC Path | Path appended to Consumer URL for interfaces with When undefined, the binding uses the bare Consumer URL. | No | (bare Consumer URL) |
|
Interface Paths - HTTP+JSON Path | Path appended to Consumer URL for interfaces with When undefined, the binding uses the bare Consumer URL. | No | (bare Consumer URL) |
|
Policy Name | A2A v1 Azure Content Guardrails Policy |
Summary | Evaluates A2A v1 agent messages against Azure AI Content Safety for harmful content, jailbreak attempts, hallucinations, and copyrighted material |
Category | A2A |
First Omni Gateway version available | v1.13.0 |
Release Notes | |
Returned Status Codes | 403 - Forbidden: Content violates Azure Content Safety policies |
503 - Service Unavailable: Azure API call failed (only when fail-open is disabled) |
| Element | Required | Description |
|---|---|---|
Azure Content Safety Endpoint | Yes | Azure Content Safety endpoint base URL configured as a Flex service, for example, |
Azure API Key | Yes | Azure Content Safety subscription key. The key is passed in the |
Moderate Request | No | When enabled, evaluates the user message against Azure Content Safety before forwarding to the upstream agent. Rejected messages never reach the agent. Default: |
Moderate Response | No | When enabled, evaluates the agent response against Azure Content Safety before returning to the client. Rejected responses return |
Moderate Streaming Response | No | When enabled, evaluates streaming responses by buffering frame bodies and scanning on configurable thresholds. When disabled, streaming responses pass through unchanged. Default: |
Default Severity Threshold | No | Severity threshold applied to all four harm categories (Hate, SelfHarm, Sexual, Violence). Content with severity at or above this value is rejected. Supported values are For details, see Severity Thresholds. |
| Element | Required | Description |
|---|---|---|
API Version | No | Azure Content Safety API version used for all endpoint calls. Default: To enable Groundedness Detection, override this to a supported preview version, for example, |
Enable Prompt Shield | No | When enabled, calls |
Hate Severity Threshold | No | Per-category override for the Hate harm category. Leave as |
SelfHarm Severity Threshold | No | Per-category override for the SelfHarm harm category. Leave as |
Sexual Severity Threshold | No | Per-category override for the Sexual harm category. Leave as |
Violence Severity Threshold | No | Per-category override for the Violence harm category. Leave as |
Blocklist Names | No | Names of Azure-managed blocklists (created in Azure Content Safety Studio) to evaluate against the input text. |
Enable Groundedness Detection | No | When enabled, calls |
Grounding Source Selector | No | DataWeave expression resolving the grounding source text from the canonical A2A request body. Required when Groundedness Detection is enabled. For example: |
Enable Protected Material Detection | No | When enabled, calls |
API Timeout (ms) | No | Per-request timeout for each Azure Content Safety API call in milliseconds. Must be between 1000 and 30000. Default: |
Fail Open | No | Determines behavior when the Azure API call fails or times out:
|
Streaming Min Buffer Chars | No | Minimum number of characters accumulated across consecutive SSE frame bodies before the policy calls Azure for moderation. Must be between 1 and 8192. Default: |
Max Payload Bytes | No | Maximum request-or-response body size (in bytes) that the policy will send to Azure. Must be between 1024 and 10000. Default: |
Sampling Rate Percent | No | Percentage of sessions to sample for moderation. |
Session Key Selector | No | DataWeave expression resolving the session identifier used by the sampler. Defaults to |
| Threshold Value | Content Blocked |
|---|---|
0 | Any flagged content (severity > 0) is blocked. This is the strictest setting. |
2 | Content with low, medium, or high severity is blocked. This is the recommended default. |
4 | Content with medium or high severity is blocked. This allows low-severity content. |
6 | Only high-severity content is blocked. This is the most permissive setting. |
| Header | Values | Description |
|---|---|---|
|
| Final moderation decision. |
|
| Which phase performed the moderation. Useful for understanding whether the request or response was blocked. |
|
| Why the content was rejected or skipped. Multiple reasons are comma-separated if the content violated multiple policies. |
Policy Name | A2A v1 Azure Content Guardrails Policy |
Summary | Evaluates A2A v1 agent messages against Azure AI Content Safety for harmful content, jailbreak attempts, hallucinations, and copyrighted material |
Category | A2A |
First Omni Gateway version available | v1.13.0 |
Release Notes | |
Returned Status Codes | 403 - Forbidden: Content violates Azure Content Safety policies |
503 - Service Unavailable: Azure API call failed (only when fail-open is disabled) |
| Element | Required | Description |
|---|---|---|
Azure Content Safety Endpoint | Yes | Azure Content Safety endpoint base URL configured as a Flex service, for example, |
Azure API Key | Yes | Azure Content Safety subscription key. The key is passed in the |
Moderate Request | No | When enabled, evaluates the user message against Azure Content Safety before forwarding to the upstream agent. Rejected messages never reach the agent. Default: |
Moderate Response | No | When enabled, evaluates the agent response against Azure Content Safety before returning to the client. Rejected responses return |
Moderate Streaming Response | No | When enabled, evaluates streaming responses by buffering frame bodies and scanning on configurable thresholds. When disabled, streaming responses pass through unchanged. Default: |
Default Severity Threshold | No | Severity threshold applied to all four harm categories (Hate, SelfHarm, Sexual, Violence). Content with severity at or above this value is rejected. Supported values are For details, see Severity Thresholds. |
| Element | Required | Description |
|---|---|---|
API Version | No | Azure Content Safety API version used for all endpoint calls. Default: To enable Groundedness Detection, override this to a supported preview version, for example, |
Enable Prompt Shield | No | When enabled, calls |
Hate Severity Threshold | No | Per-category override for the Hate harm category. Leave as |
SelfHarm Severity Threshold | No | Per-category override for the SelfHarm harm category. Leave as |
Sexual Severity Threshold | No | Per-category override for the Sexual harm category. Leave as |
Violence Severity Threshold | No | Per-category override for the Violence harm category. Leave as |
Blocklist Names | No | Names of Azure-managed blocklists (created in Azure Content Safety Studio) to evaluate against the input text. |
Enable Groundedness Detection | No | When enabled, calls |
Grounding Source Selector | No | DataWeave expression resolving the grounding source text from the canonical A2A request body. Required when Groundedness Detection is enabled. For example: |
Enable Protected Material Detection | No | When enabled, calls |
API Timeout (ms) | No | Per-request timeout for each Azure Content Safety API call in milliseconds. Must be between 1000 and 30000. Default: |
Fail Open | No | Determines behavior when the Azure API call fails or times out:
|
Streaming Min Buffer Chars | No | Minimum number of characters accumulated across consecutive SSE frame bodies before the policy calls Azure for moderation. Must be between 1 and 8192. Default: |
Max Payload Bytes | No | Maximum request-or-response body size (in bytes) that the policy will send to Azure. Must be between 1024 and 10000. Default: |
Sampling Rate Percent | No | Percentage of sessions to sample for moderation. |
Session Key Selector | No | DataWeave expression resolving the session identifier used by the sampler. Defaults to |
| Threshold Value | Content Blocked |
|---|---|
0 | Any flagged content (severity > 0) is blocked. This is the strictest setting. |
2 | Content with low, medium, or high severity is blocked. This is the recommended default. |
4 | Content with medium or high severity is blocked. This allows low-severity content. |
6 | Only high-severity content is blocked. This is the most permissive setting. |
| Header | Values | Description |
|---|---|---|
|
| Final moderation decision. |
|
| Which phase performed the moderation. Useful for understanding whether the request or response was blocked. |
|
| Why the content was rejected or skipped. Multiple reasons are comma-separated if the content violated multiple policies. |
Policy Name | A2A v1 Bedrock Guardrails Policy |
Summary | Evaluates A2A v1.0 agent requests and responses against Amazon Bedrock guardrails for content safety, PII detection, and contextual grounding |
Category | A2A |
First Omni Gateway version available | v1.13.0 |
Release Notes | |
Returned Status Codes | 403 - Forbidden: Content violates guardrail policies |
503 - Service Unavailable: Bedrock API call failed (only when fail-open is disabled) |
| Element | Required | Description |
|---|---|---|
Bedrock Runtime Endpoint | Yes | Amazon Bedrock Runtime endpoint URL. Accepts either:
When the full URL is provided, the policy derives the region, guardrail identifier, and guardrail version, unless if you explicitly configure those values. |
AWS Credentials | Yes | AWS credentials and region for signing requests to the Bedrock API. See AWS Credentials. |
Guardrail Identifier | Conditional | The unique ID of the Bedrock guardrail to apply (for example, Required unless provided in the Bedrock Runtime Endpoint URL. |
Guardrail Version | No | Version of the guardrail to apply.
Required unless provided in the Bedrock Runtime Endpoint URL. |
Moderate Request | No | When enabled (default: |
Moderate Response | No | When enabled (default: |
| Element | Required | Description |
|---|---|---|
Access Key ID | Yes | AWS access key ID, either:
|
Secret Access Key | Yes | AWS secret access key corresponding to the Access Key ID. |
Session Token | Conditional | Required when using temporary credentials (Access Key ID starting with |
Region | Conditional | AWS region of the Bedrock Runtime endpoint (for example, Set explicitly for custom domains or VPC endpoints. Optional when the region is provided in the Bedrock Runtime Endpoint host. |
| Element | Required | Description |
|---|---|---|
Grounding Source Selector | No | DataWeave expression that extracts the reference text for contextual grounding from the request body. Required only when the AWS guardrail has contextual grounding enabled. Must be configured together with Grounding Query Selector. Example for JSON-RPC: Example for HTTP+JSON: See Contextual Grounding for more information. |
Grounding Query Selector | No | DataWeave expression that extracts the user query for contextual grounding from the request body. Required only when the AWS guardrail has contextual grounding enabled. Must be configured together with Grounding Source Selector. Example for JSON-RPC: Example for HTTP+JSON: See Contextual Grounding for more information. |
Max Payload Bytes | No | Maximum request or response body size (in bytes) sent to Bedrock.
The |
Sampling Rate Percent | No | Percentage of sessions to sample for moderation (0-100).
Sampling is deterministic per session. The same session is always or never sampled. |
Session Key Selector | No | DataWeave expression that extracts the session identifier used for sampling. By default, the key selector resolves to A2A v1.0 Only used when Sampling Rate Percent is less than 100. |
API Timeout (ms) | No | Timeout in milliseconds for calls to the Bedrock
|
Fail Open | No | Determines behavior when the Bedrock API call fails or times out:
When enabled, failures are logged and the |
| Header | Values | Description |
|---|---|---|
|
| Final moderation decision. |
|
| Which phase performed the moderation. Useful for understanding whether the request or response was blocked. |
|
| Why the content was rejected or skipped. Multiple reasons are comma-separated if the content violated multiple policies. |
| Condition | Status Code | Description |
|---|---|---|
Content violates guardrail (request phase) | 403 Forbidden | Request blocked before reaching the agent. Response body contains A2A error envelope with reason details. |
Content violates guardrail (response phase) | 403 Forbidden | Response blocked and replaced with A2A error envelope. Original response is not returned. |
Bedrock API failure (fail-open disabled) | 503 Service Unavailable | Bedrock service error or timeout with fail-open disabled. Traffic is blocked. |
Bedrock API failure (fail-open enabled) | Varies | Traffic proceeds unmoderated. Observability headers indicate |
Payload exceeds size limit (fail-open disabled) | 403 Forbidden | Payload larger than |
Payload exceeds size limit (fail-open enabled) | Varies | Oversized payload passes through unmoderated. Observability headers indicate |
Sampled-out session | Varies | Session not selected for moderation. Traffic passes through with |
gRPC traffic | Varies | gRPC traffic passes through unmoderated with |
Policy Name | A2A v1 Bedrock Guardrails Policy |
Summary | Evaluates A2A v1.0 agent requests and responses against Amazon Bedrock guardrails for content safety, PII detection, and contextual grounding |
Category | A2A |
First Omni Gateway version available | v1.13.0 |
Release Notes | |
Returned Status Codes | 403 - Forbidden: Content violates guardrail policies |
503 - Service Unavailable: Bedrock API call failed (only when fail-open is disabled) |
| Element | Required | Description |
|---|---|---|
Bedrock Runtime Endpoint | Yes | Amazon Bedrock Runtime endpoint URL. Accepts either:
When the full URL is provided, the policy derives the region, guardrail identifier, and guardrail version, unless if you explicitly configure those values. |
AWS Credentials | Yes | AWS credentials and region for signing requests to the Bedrock API. See AWS Credentials. |
Guardrail Identifier | Conditional | The unique ID of the Bedrock guardrail to apply (for example, Required unless provided in the Bedrock Runtime Endpoint URL. |
Guardrail Version | No | Version of the guardrail to apply.
Required unless provided in the Bedrock Runtime Endpoint URL. |
Moderate Request | No | When enabled (default: |
Moderate Response | No | When enabled (default: |
| Element | Required | Description |
|---|---|---|
Access Key ID | Yes | AWS access key ID, either:
|
Secret Access Key | Yes | AWS secret access key corresponding to the Access Key ID. |
Session Token | Conditional | Required when using temporary credentials (Access Key ID starting with |
Region | Conditional | AWS region of the Bedrock Runtime endpoint (for example, Set explicitly for custom domains or VPC endpoints. Optional when the region is provided in the Bedrock Runtime Endpoint host. |
| Element | Required | Description |
|---|---|---|
Grounding Source Selector | No | DataWeave expression that extracts the reference text for contextual grounding from the request body. Required only when the AWS guardrail has contextual grounding enabled. Must be configured together with Grounding Query Selector. Example for JSON-RPC: Example for HTTP+JSON: See Contextual Grounding for more information. |
Grounding Query Selector | No | DataWeave expression that extracts the user query for contextual grounding from the request body. Required only when the AWS guardrail has contextual grounding enabled. Must be configured together with Grounding Source Selector. Example for JSON-RPC: Example for HTTP+JSON: See Contextual Grounding for more information. |
Max Payload Bytes | No | Maximum request or response body size (in bytes) sent to Bedrock.
The |
Sampling Rate Percent | No | Percentage of sessions to sample for moderation (0-100).
Sampling is deterministic per session. The same session is always or never sampled. |
Session Key Selector | No | DataWeave expression that extracts the session identifier used for sampling. By default, the key selector resolves to A2A v1.0 Only used when Sampling Rate Percent is less than 100. |
API Timeout (ms) | No | Timeout in milliseconds for calls to the Bedrock
|
Fail Open | No | Determines behavior when the Bedrock API call fails or times out:
When enabled, failures are logged and the |
| Header | Values | Description |
|---|---|---|
|
| Final moderation decision. |
|
| Which phase performed the moderation. Useful for understanding whether the request or response was blocked. |
|
| Why the content was rejected or skipped. Multiple reasons are comma-separated if the content violated multiple policies. |
| Condition | Status Code | Description |
|---|---|---|
Content violates guardrail (request phase) | 403 Forbidden | Request blocked before reaching the agent. Response body contains A2A error envelope with reason details. |
Content violates guardrail (response phase) | 403 Forbidden | Response blocked and replaced with A2A error envelope. Original response is not returned. |
Bedrock API failure (fail-open disabled) | 503 Service Unavailable | Bedrock service error or timeout with fail-open disabled. Traffic is blocked. |
Bedrock API failure (fail-open enabled) | Varies | Traffic proceeds unmoderated. Observability headers indicate |
Payload exceeds size limit (fail-open disabled) | 403 Forbidden | Payload larger than |
Payload exceeds size limit (fail-open enabled) | Varies | Oversized payload passes through unmoderated. Observability headers indicate |
Sampled-out session | Varies | Session not selected for moderation. Traffic passes through with |
gRPC traffic | Varies | gRPC traffic passes through unmoderated with |
Policy Name | A2A v1 PII Detector |
Summary | Detects personally identifiable information (PII) in A2A v1 requests |
Category | A2A |
First Omni Gateway version available | v1.13.0 |
Release Notes | A2A v1 Personally Identifiable Information (PII) Detector Policy |
Returned Status Codes | 403: Forbidden: PII detected and action is set to Reject |
| Element | Description | Required | Default |
|---|---|---|---|
PII Types | Array that defines the types of PII to detect. You can select multiple PII types. Supported values are | Yes | None |
Custom PII Patterns | Optional array of custom regex patterns for detecting additional PII types beyond the built-in ones. Each pattern requires a | No | Empty array |
Action | Action to take when PII is detected. Supported values are:
| No |
|
| PII Type | Description |
|---|---|
Standard email addresses such as | |
US SSN | United States Social Security Numbers (SSNs) in the standard format: |
Credit Card | Credit card numbers in the form of four groups of four digits, separated by optional spaces or hyphens. Examples: |
Phone Number | United States phone numbers in various formats, with or without country code, parentheses, spaces, hyphens, or dots. Examples: |
| Action | Request Body on Wire | Access Log |
|---|---|---|
Reject | Blocked (error response; raw PII values may appear in error message) | No log emitted on reject |
Log | Forwarded unchanged (raw PII flows upstream) | Raw |
Log and mask | Forwarded unchanged (raw PII flows upstream) | Masked |
Policy Name | A2A v1 PII Detector |
Summary | Detects personally identifiable information (PII) in A2A v1 requests |
Category | A2A |
First Omni Gateway version available | v1.13.0 |
Release Notes | A2A v1 Personally Identifiable Information (PII) Detector Policy |
Returned Status Codes | 403: Forbidden: PII detected and action is set to Reject |
| Element | Description | Required | Default |
|---|---|---|---|
PII Types | Array that defines the types of PII to detect. You can select multiple PII types. Supported values are | Yes | None |
Custom PII Patterns | Optional array of custom regex patterns for detecting additional PII types beyond the built-in ones. Each pattern requires a | No | Empty array |
Action | Action to take when PII is detected. Supported values are:
| No |
|
| PII Type | Description |
|---|---|
Standard email addresses such as | |
US SSN | United States Social Security Numbers (SSNs) in the standard format: |
Credit Card | Credit card numbers in the form of four groups of four digits, separated by optional spaces or hyphens. Examples: |
Phone Number | United States phone numbers in various formats, with or without country code, parentheses, spaces, hyphens, or dots. Examples: |
| Action | Request Body on Wire | Access Log |
|---|---|---|
Reject | Blocked (error response; raw PII values may appear in error message) | No log emitted on reject |
Log | Forwarded unchanged (raw PII flows upstream) | Raw |
Log and mask | Forwarded unchanged (raw PII flows upstream) | Masked |
Policy Name | A2A v1 Prompt Decorator |
Summary | Decorates A2A v1 prompts with additional context information |
Category | A2A |
First Omni Gateway version available | v1.13.0 |
Release Notes | |
Returned Status Codes | No return codes exist for this policy. |
| Element | Description | Required | Default |
|---|---|---|---|
Text Decorators | Array of text decorations to add to prompts. Each decorator can include a text expression and an optional condition. For more information, see Text Decorators. | No | Empty array |
File Decorators | Array of file-type decorations to add to prompts. Each decorator specifies file content (URL or base64), file type, and optional metadata like filename and MIME type. For more information, see File Decorators. | No | Empty array |
| Property | Description | Required | Default |
|---|---|---|---|
Prompt Text | DataWeave expression that generates the prompt text injected into the request. The result is added as a text part with media type The expression can access:
For example: | Yes | None |
Condition | Optional DataWeave expression that filters which prompts to decorate. If the expression evaluates to For example: | No | Always applied |
| Property | Description | Required | Default |
|---|---|---|---|
Content | DataWeave expression containing either a URL to an external file (when File Source is The expression can access Base64 content is validated against the pattern For example, URI: For example, Base64: | Yes | None |
File Source | Specifies whether the Content field contains a URL or base64-encoded data. Supported values:
| Yes |
|
File Name | Optional DataWeave expression that generates the filename for the injected file part. For example: | No | None |
File Mime Type | Optional DataWeave expression that generates the MIME type for the injected file part. If not specified, defaults to For example: | No |
|
Condition | Optional DataWeave expression that filters which prompts to decorate. If the expression evaluates to For example: | No | Always applied |
Policy Name | A2A v1 Prompt Decorator |
Summary | Decorates A2A v1 prompts with additional context information |
Category | A2A |
First Omni Gateway version available | v1.13.0 |
Release Notes | |
Returned Status Codes | No return codes exist for this policy. |
| Element | Description | Required | Default |
|---|---|---|---|
Text Decorators | Array of text decorations to add to prompts. Each decorator can include a text expression and an optional condition. For more information, see Text Decorators. | No | Empty array |
File Decorators | Array of file-type decorations to add to prompts. Each decorator specifies file content (URL or base64), file type, and optional metadata like filename and MIME type. For more information, see File Decorators. | No | Empty array |
| Property | Description | Required | Default |
|---|---|---|---|
Prompt Text | DataWeave expression that generates the prompt text injected into the request. The result is added as a text part with media type The expression can access:
For example: | Yes | None |
Condition | Optional DataWeave expression that filters which prompts to decorate. If the expression evaluates to For example: | No | Always applied |
| Property | Description | Required | Default |
|---|---|---|---|
Content | DataWeave expression containing either a URL to an external file (when File Source is The expression can access Base64 content is validated against the pattern For example, URI: For example, Base64: | Yes | None |
File Source | Specifies whether the Content field contains a URL or base64-encoded data. Supported values:
| Yes |
|
File Name | Optional DataWeave expression that generates the filename for the injected file part. For example: | No | None |
File Mime Type | Optional DataWeave expression that generates the MIME type for the injected file part. If not specified, defaults to For example: | No |
|
Condition | Optional DataWeave expression that filters which prompts to decorate. If the expression evaluates to For example: | No | Always applied |
Policy Name | A2A v1 Schema Validation |
Summary | Verifies that requests to the agent are compliant with the A2A v1.0 specification |
Category | A2A |
First Omni Gateway version available | v1.13.0 |
Release Notes | |
Returned Status Codes | 400 - Bad Request: Invalid request parameters or malformed JSON |
404 - Not Found: Unknown or invalid method name |
| Transport | Detection Criteria | Validation Behavior |
|---|---|---|
JSON-RPC |
| Validates PascalCase method names (A2A v1.0 §9.1) when tagged with |
HTTP+JSON | URL matches an A2A v1.0 HTTP+JSON route | Performs route lookup and validates the request body schema. |
gRPC |
| Decodes the protobuf payload against the A2A v1.0 gRPC service definition. |
Other traffic | Doesn’t match any A2A transport pattern | Passes through without validation. |
Policy Name | A2A v1 Schema Validation |
Summary | Verifies that requests to the agent are compliant with the A2A v1.0 specification |
Category | A2A |
First Omni Gateway version available | v1.13.0 |
Release Notes | |
Returned Status Codes | 400 - Bad Request: Invalid request parameters or malformed JSON |
404 - Not Found: Unknown or invalid method name |
| Transport | Detection Criteria | Validation Behavior |
|---|---|---|
JSON-RPC |
| Validates PascalCase method names (A2A v1.0 §9.1) when tagged with |
HTTP+JSON | URL matches an A2A v1.0 HTTP+JSON route | Performs route lookup and validates the request body schema. |
gRPC |
| Decodes the protobuf payload against the A2A v1.0 gRPC service definition. |
Other traffic | Doesn’t match any A2A transport pattern | Passes through without validation. |
Policy Name | A2A v1 to v0.3 Transcoder |
Summary | Transcodes protocol messages bidirectionally between A2A v1.0 JSON-RPC clients and A2A v0.3 backend servers |
Category | A2A |
First Omni Gateway version available | v1.13.0 |
Release Notes | |
Returned Status Codes | -32601 (UNSUPPORTED_METHOD_FOR_V03), -32003 (PUSH_NOTIFICATION_NOT_SUPPORTED) |
Policy Name | A2A v1 to v0.3 Transcoder |
Summary | Transcodes protocol messages bidirectionally between A2A v1.0 JSON-RPC clients and A2A v0.3 backend servers |
Category | A2A |
First Omni Gateway version available | v1.13.0 |
Release Notes | |
Returned Status Codes | -32601 (UNSUPPORTED_METHOD_FOR_V03), -32003 (PUSH_NOTIFICATION_NOT_SUPPORTED) |
Policy Name | A2A v1 Token Based Rate Limit |
Summary | Rate limits v1 A2A agent usage of upstream resources |
Category | A2A |
First Omni Gateway version available | v1.13.0 |
Release Notes | |
Returned Status Codes | 429 - Too Many Requests: Token limit exceeded, requests are blocked until the current window finishes |
| Element | Required | Description |
|---|---|---|
Maximum Tokens | Yes | Maximum number of tokens allowed per resolved key within the specified time period. Must be a positive integer of 1 or greater. |
Time Period (ms) | Yes | Time period in milliseconds for the rate limit sliding window. Minimum value is 1000 milliseconds (1 second). The limit refills once the window rolls. |
Key Selector | Yes | DataWeave expression that selects the key for rate limiting. This creates independent rate limit counters for each unique value resolved by the expression. The expression is evaluated once per request before A2A parsing. Common examples:
If the expression fails to resolve to a string, the policy returns HTTP 400 (Bad Request). |
| Part Type | Token Counting Behavior |
|---|---|
| Yes: The |
| Yes: The JSON-serialized |
| No: File URLs ( |
Policy Name | A2A v1 Token Based Rate Limit |
Summary | Rate limits v1 A2A agent usage of upstream resources |
Category | A2A |
First Omni Gateway version available | v1.13.0 |
Release Notes | |
Returned Status Codes | 429 - Too Many Requests: Token limit exceeded, requests are blocked until the current window finishes |
| Element | Required | Description |
|---|---|---|
Maximum Tokens | Yes | Maximum number of tokens allowed per resolved key within the specified time period. Must be a positive integer of 1 or greater. |
Time Period (ms) | Yes | Time period in milliseconds for the rate limit sliding window. Minimum value is 1000 milliseconds (1 second). The limit refills once the window rolls. |
Key Selector | Yes | DataWeave expression that selects the key for rate limiting. This creates independent rate limit counters for each unique value resolved by the expression. The expression is evaluated once per request before A2A parsing. Common examples:
If the expression fails to resolve to a string, the policy returns HTTP 400 (Bad Request). |
| Part Type | Token Counting Behavior |
|---|---|
| Yes: The |
| Yes: The JSON-serialized |
| No: File URLs ( |
Policy Name | Agent Connection Telemetry |
Summary | Tracks the number of requests made to agent or MCP server instances |
Category | A2A and MCP |
First Flex Gateway version available | 1.11.0 |
Returned Status Codes | No return codes exist for this policy. |
| Element | Description |
|---|---|
Source Agent ID | DataWeave expression to extract the source identification value from the request header. By default, the |
Policy Name | Agent Connection Telemetry |
Summary | Tracks the number of requests made to agent or MCP server instances |
Category | A2A and MCP |
First Omni Gateway version available | 1.11.0 |
Release Notes | |
Returned Status Codes | No return codes exist for this policy. |
| Element | Description |
|---|---|
Source Agent ID | DataWeave expression to extract the source identification value from the request header. By default, the |
Policy Name | Agent Connection Telemetry |
Summary | Tracks the number of requests made to agent or MCP server instances |
Category | A2A and MCP |
First Omni Gateway version available | 1.11.0 |
Release Notes | |
Returned Status Codes | No return codes exist for this policy. |
| Element | Description |
|---|---|
Source Agent ID | DataWeave expression to extract the source identification value from the request header. By default, the |
Policy Name | Amazon Bedrock Guardrails Policy |
Summary | Evaluates LLM prompts and responses against Amazon Bedrock guardrails for content safety, PII detection, and contextual grounding |
Category | LLM |
First Omni Gateway version available | v1.13.0 |
Release Notes | |
Returned Status Codes | 403 - Forbidden: Content violates guardrail policies |
503 - Service Unavailable: Bedrock API call failed (only when fail-open is disabled) |
| Element | Required | Description |
|---|---|---|
Bedrock Runtime Endpoint | Yes | Amazon Bedrock Runtime endpoint URL. Must match your AWS region, for example: |
AWS Credentials | Yes | AWS credentials and region used for signing requests to the Bedrock API. See AWS Credentials. |
Guardrail Identifier | Yes | The unique ID of the Bedrock guardrail to apply (for example, |
Guardrail Version | No | Version of the guardrail to apply.
|
Moderate Request | No | When enabled, evaluates the user prompt against the guardrail before forwarding to the upstream LLM. Rejected prompts never reach the LLM. |
Moderate Response | No | When enabled, evaluates the LLM response against the guardrail before returning to the client. Rejected responses return Note: Streaming responses ( |
| Element | Required | Description |
|---|---|---|
Access Key ID | Yes | AWS access key ID. Supports both:
|
Secret Access Key | Yes | AWS secret access key corresponding to the Access Key ID. |
Session Token | Conditional | Required when using temporary credentials (Access Key ID starting with |
Region | Yes | AWS region of the Bedrock Runtime endpoint (for example, |
| Element | Required | Description |
|---|---|---|
Grounding Source Selector | No | DataWeave expression that extracts the reference text for contextual grounding from the request body. Required only when contextual grounding is enabled on the AWS guardrail. Must be configured together with Grounding Query Selector. Example: See Contextual Grounding for more information. |
Grounding Query Selector | No | DataWeave expression that extracts the user query for contextual grounding from the request body. Required only when contextual grounding is enabled on the AWS guardrail. Must be configured together with Grounding Source Selector. Example: See Contextual Grounding for more information. |
API Timeout (ms) | No | Timeout in milliseconds for calls to the Bedrock
|
Fail Open | No | Determines behavior when the Bedrock API call fails or times out:
|
| Header | Values | Description |
|---|---|---|
|
| Final moderation decision. |
|
| Which phase performed the moderation. Useful for understanding whether the prompt or response was blocked. |
|
| Why the content was rejected. Multiple reasons are comma-separated if the content violated multiple policies. |
Policy Name | Amazon Bedrock Guardrails Policy |
Summary | Evaluates LLM prompts and responses against Amazon Bedrock guardrails for content safety, PII detection, and contextual grounding |
Category | LLM |
First Omni Gateway version available | v1.13.0 |
Release Notes | |
Returned Status Codes | 403 - Forbidden: Content violates guardrail policies |
503 - Service Unavailable: Bedrock API call failed (only when fail-open is disabled) |
| Element | Required | Description |
|---|---|---|
Bedrock Runtime Endpoint | Yes | Amazon Bedrock Runtime endpoint URL. Must match your AWS region, for example: |
AWS Credentials | Yes | AWS credentials and region used for signing requests to the Bedrock API. See AWS Credentials. |
Guardrail Identifier | Yes | The unique ID of the Bedrock guardrail to apply (for example, |
Guardrail Version | No | Version of the guardrail to apply.
|
Moderate Request | No | When enabled, evaluates the user prompt against the guardrail before forwarding to the upstream LLM. Rejected prompts never reach the LLM. |
Moderate Response | No | When enabled, evaluates the LLM response against the guardrail before returning to the client. Rejected responses return Note: Streaming responses ( |
| Element | Required | Description |
|---|---|---|
Access Key ID | Yes | AWS access key ID. Supports both:
|
Secret Access Key | Yes | AWS secret access key corresponding to the Access Key ID. |
Session Token | Conditional | Required when using temporary credentials (Access Key ID starting with |
Region | Yes | AWS region of the Bedrock Runtime endpoint (for example, |
| Element | Required | Description |
|---|---|---|
Grounding Source Selector | No | DataWeave expression that extracts the reference text for contextual grounding from the request body. Required only when contextual grounding is enabled on the AWS guardrail. Must be configured together with Grounding Query Selector. Example: See Contextual Grounding for more information. |
Grounding Query Selector | No | DataWeave expression that extracts the user query for contextual grounding from the request body. Required only when contextual grounding is enabled on the AWS guardrail. Must be configured together with Grounding Source Selector. Example: See Contextual Grounding for more information. |
API Timeout (ms) | No | Timeout in milliseconds for calls to the Bedrock
|
Fail Open | No | Determines behavior when the Bedrock API call fails or times out:
|
| Header | Values | Description |
|---|---|---|
|
| Final moderation decision. |
|
| Which phase performed the moderation. Useful for understanding whether the prompt or response was blocked. |
|
| Why the content was rejected. Multiple reasons are comma-separated if the content violated multiple policies. |
Policy Name | API Security-Identification Header |
Summary | Adds API instance identifiers as response headers for external security platform correlation |
Category | Security |
First Omni Gateway version available | v1.13.0 |
Release Notes | |
Returned Status Codes | No return codes exist for this policy. |
Policy Name | API Security-Identification Header |
Summary | Adds API instance identifiers as response headers for external security platform correlation |
Category | Security |
First Omni Gateway version available | v1.13.0 |
Release Notes | |
Returned Status Codes | No return codes exist for this policy. |
| Parameter | Description |
|---|---|
| Boolean that indicates whether the Horizontal Pod Autoscaler (HPA) is enabled. Defaults to |
| The minimum number of replicas that the HPA scaler is allowed to create. Defaults to |
| The maximum number of replicas that the HPA scaler is allowed to create. Defaults to |
| A resource metric that sets the average CPU usage percentage of all deployed Pods. Defaults to |
| A string representing the average memory usage percentage of all deployed Pods. Defaults to |
| A setting that supports the |
| Settings for autoscaling behavior when the HPA scaler increases (
|
| Parameter | Description |
|---|---|
| Boolean that indicates whether the Horizontal Pod Autoscaler (HPA) is enabled. Defaults to |
| The minimum number of replicas that the HPA scaler is allowed to create. Defaults to |
| The maximum number of replicas that the HPA scaler is allowed to create. Defaults to |
| A resource metric that sets the average CPU usage percentage of all deployed Pods. Defaults to |
| A string representing the average memory usage percentage of all deployed Pods. Defaults to |
| A setting that supports the |
| Settings for autoscaling behavior when the HPA scaler increases (
|