Configuration reference

The agentgateway schema is available as a JSON schema. Review this page for more information about the schema and how to use it.

Config file validation

Many integrated development environments (IDEs) and editors support schema validation for your standalone agentgateway configuration file.

Default schema validation off main The examples throughout the docs use the following schema that redirects to the agentgateway config on main.

# yaml-language-server: $schema=https://agentgateway.dev/schema/config

Version-specific schema validation

Replace $VERSION in the following schema with the version of agentgateway that you are using, such as 1.0.0.

# yaml-language-server: $schema=https://raw.githubusercontent.com/agentgateway/agentgateway/refs/tags/$VERSION/schema/config.json

For example:

# yaml-language-server: $schema=https://raw.githubusercontent.com/agentgateway/agentgateway/refs/tags/v0.12.0/schema/config.json

Schema

The following table shows the complete agentgateway configuration file schema, with columns for the field and description.

FieldTypeDescription
configobject
config.enableIpv6boolean
config.dnsobjectDNS resolver settings.
config.dns.lookupFamilystringControls which IP address families the DNS resolver will query for
upstream connections.
Accepted values: All, Auto, V4Preferred, V4Only, V6Only.
Defaults to Auto (IPv4-only when enableIpv6 is false, both when true).
config.dns.edns0booleanWhether to enable EDNS0 (Extension Mechanisms for DNS) in the resolver.
When None, the system-provided resolver setting is preserved.
Can also be set via the DNS_EDNS0 environment variable.
config.localXdsPathstringLocal XDS path. If not specified, the current configuration file will be used.
config.caAddressstring
config.caAuthTokenstring
config.xdsAddressstring
config.xdsAuthTokenstring
config.namespacestring
config.gatewaystring
config.trustDomainstring
config.serviceAccountstring
config.clusterIdstring
config.networkstring
config.adminAddrstringAdmin UI address in the format “ip:port”
config.statsAddrstringStats/metrics server address in the format “ip:port”
config.readinessAddrstringReadiness probe server address in the format “ip:port”
config.sessionobjectConfiguration for stateful session management
config.session.keystringThe AES-256-GCM session protection key to be used for session tokens.
If not set, sessions will not be encrypted.
For example, generated via openssl rand -hex 32.
config.connectionTerminationDeadlinestring
config.connectionMinTerminationDeadlinestring
config.workerThreadsstring
config.tracingobject
config.tracing.otlpEndpointstring
config.tracing.headersobject
config.tracing.otlpProtocolstring
config.tracing.fieldsobject
config.tracing.fields.remove[]string
config.tracing.fields.addobject
config.tracing.randomSamplingstringExpression to determine the amount of random sampling.
Random sampling will initiate a new trace span if the incoming request does not have a trace already.
This should evaluate to either a float between 0.0-1.0 (0-100%) or true/false.
This defaults to ‘false’.
config.tracing.clientSamplingstringExpression to determine the amount of client sampling.
Client sampling determines whether to initiate a new trace span if the incoming request does have a trace already.
This should evaluate to either a float between 0.0-1.0 (0-100%) or true/false.
This defaults to ’true'.
config.tracing.pathstringOTLP path. Default is /v1/traces
config.loggingobject
config.logging.filterstring
config.logging.fieldsobject
config.logging.fields.remove[]string
config.logging.fields.addobject
config.logging.levelstring
config.logging.formatstring
config.metricsobject
config.metrics.remove[]string
config.metrics.fieldsobject
config.metrics.fields.addobject
config.backendobject
config.backend.keepalivesobject
config.backend.keepalives.enabledboolean
config.backend.keepalives.timestring
config.backend.keepalives.intervalstring
config.backend.keepalives.retriesinteger
config.backend.connectTimeoutstring
config.backend.poolIdleTimeoutstringThe maximum duration to keep an idle connection alive.
config.backend.poolMaxSizeintegerThe maximum number of connections allowed in the pool, per hostname. If set, this will limit
the total number of connections kept alive to any given host.
Note: excess connections will still be created, they will just not remain idle.
If unset, there is no limit
config.hboneobject
config.hbone.windowSizeinteger
config.hbone.connectionWindowSizeinteger
config.hbone.frameSizeinteger
config.hbone.poolMaxStreamsPerConninteger
config.hbone.poolUnusedReleaseTimeoutstring
binds[]object
binds[].portinteger
binds[].listeners[]object
binds[].listeners[].namestring
binds[].listeners[].namespacestring
binds[].listeners[].hostnamestringCan be a wildcard
binds[].listeners[].protocolstring
binds[].listeners[].tlsobject
binds[].listeners[].tls.certstring
binds[].listeners[].tls.keystring
binds[].listeners[].tls.rootstring
binds[].listeners[].tls.cipherSuites[]stringOptional cipher suite allowlist (order is preserved).
binds[].listeners[].tls.minTLSVersionstringMinimum supported TLS version (only TLS 1.2 and 1.3 are supported).
binds[].listeners[].tls.maxTLSVersionstringMaximum supported TLS version (only TLS 1.2 and 1.3 are supported).
binds[].listeners[].routes[]object
binds[].listeners[].routes[].namestring
binds[].listeners[].routes[].namespacestring
binds[].listeners[].routes[].ruleNamestring
binds[].listeners[].routes[].hostnames[]stringCan be a wildcard
binds[].listeners[].routes[].matches[]object
binds[].listeners[].routes[].matches[].headers[]object
binds[].listeners[].routes[].matches[].headers[].namestring
binds[].listeners[].routes[].matches[].headers[].valueobjectExactly one of exact or regex may be set.
binds[].listeners[].routes[].matches[].headers[].value.exactstring
binds[].listeners[].routes[].matches[].headers[].value.regexstring
binds[].listeners[].routes[].matches[].pathobjectExactly one of exact, pathPrefix, or regex may be set.
binds[].listeners[].routes[].matches[].path.exactstring
binds[].listeners[].routes[].matches[].path.pathPrefixstring
binds[].listeners[].routes[].matches[].path.regexstring
binds[].listeners[].routes[].matches[].methodstring
binds[].listeners[].routes[].matches[].query[]object
binds[].listeners[].routes[].matches[].query[].namestring
binds[].listeners[].routes[].matches[].query[].valueobjectExactly one of exact or regex may be set.
binds[].listeners[].routes[].matches[].query[].value.exactstring
binds[].listeners[].routes[].matches[].query[].value.regexstring
binds[].listeners[].routes[].policiesobject
binds[].listeners[].routes[].policies.requestHeaderModifierobjectHeaders to be modified in the request.
binds[].listeners[].routes[].policies.requestHeaderModifier.addobject
binds[].listeners[].routes[].policies.requestHeaderModifier.setobject
binds[].listeners[].routes[].policies.requestHeaderModifier.remove[]string
binds[].listeners[].routes[].policies.responseHeaderModifierobjectHeaders to be modified in the response.
binds[].listeners[].routes[].policies.responseHeaderModifier.addobject
binds[].listeners[].routes[].policies.responseHeaderModifier.setobject
binds[].listeners[].routes[].policies.responseHeaderModifier.remove[]string
binds[].listeners[].routes[].policies.requestRedirectobjectDirectly respond to the request with a redirect.
binds[].listeners[].routes[].policies.requestRedirect.schemestring
binds[].listeners[].routes[].policies.requestRedirect.authoritystring
binds[].listeners[].routes[].policies.requestRedirect.authority.fullstring
binds[].listeners[].routes[].policies.requestRedirect.authority.hoststring
binds[].listeners[].routes[].policies.requestRedirect.authority.portinteger
binds[].listeners[].routes[].policies.requestRedirect.pathobject
binds[].listeners[].routes[].policies.requestRedirect.path.fullstring
binds[].listeners[].routes[].policies.requestRedirect.path.prefixstring
binds[].listeners[].routes[].policies.requestRedirect.statusinteger
binds[].listeners[].routes[].policies.urlRewriteobjectModify the URL path or authority.
binds[].listeners[].routes[].policies.urlRewrite.authoritystring
binds[].listeners[].routes[].policies.urlRewrite.authority.fullstring
binds[].listeners[].routes[].policies.urlRewrite.authority.hoststring
binds[].listeners[].routes[].policies.urlRewrite.authority.portinteger
binds[].listeners[].routes[].policies.urlRewrite.pathobject
binds[].listeners[].routes[].policies.urlRewrite.path.fullstring
binds[].listeners[].routes[].policies.urlRewrite.path.prefixstring
binds[].listeners[].routes[].policies.requestMirrorobjectMirror incoming requests to another destination.
binds[].listeners[].routes[].policies.requestMirror.backendobjectExactly one of service, host, or backend may be set.
binds[].listeners[].routes[].policies.requestMirror.backend.serviceobject
binds[].listeners[].routes[].policies.requestMirror.backend.service.nameobject
binds[].listeners[].routes[].policies.requestMirror.backend.service.name.namespacestring
binds[].listeners[].routes[].policies.requestMirror.backend.service.name.hostnamestring
binds[].listeners[].routes[].policies.requestMirror.backend.service.portinteger
binds[].listeners[].routes[].policies.requestMirror.backend.hoststringHostname or IP address
binds[].listeners[].routes[].policies.requestMirror.backend.backendstringExplicit backend reference. Backend must be defined in the top level backends list
binds[].listeners[].routes[].policies.requestMirror.percentagenumber
binds[].listeners[].routes[].policies.directResponseobjectDirectly respond to the request with a static response.
binds[].listeners[].routes[].policies.directResponse.bodyarray
binds[].listeners[].routes[].policies.directResponse.statusinteger
binds[].listeners[].routes[].policies.corsobjectHandle CORS preflight requests and append configured CORS headers to applicable requests.
binds[].listeners[].routes[].policies.cors.allowCredentialsboolean
binds[].listeners[].routes[].policies.cors.allowHeaders[]string
binds[].listeners[].routes[].policies.cors.allowMethods[]string
binds[].listeners[].routes[].policies.cors.allowOrigins[]string
binds[].listeners[].routes[].policies.cors.exposeHeaders[]string
binds[].listeners[].routes[].policies.cors.maxAgestring
binds[].listeners[].routes[].policies.mcpAuthorizationobjectAuthorization policies for MCP access.
binds[].listeners[].routes[].policies.mcpAuthorization.rules[]string
binds[].listeners[].routes[].policies.authorizationobjectAuthorization policies for HTTP access.
binds[].listeners[].routes[].policies.authorization.rules[]string
binds[].listeners[].routes[].policies.mcpAuthenticationobjectAuthentication for MCP clients.
binds[].listeners[].routes[].policies.mcpAuthentication.issuerstring
binds[].listeners[].routes[].policies.mcpAuthentication.audiences[]string
binds[].listeners[].routes[].policies.mcpAuthentication.providerobject
binds[].listeners[].routes[].policies.mcpAuthentication.provider.auth0object
binds[].listeners[].routes[].policies.mcpAuthentication.provider.keycloakobject
binds[].listeners[].routes[].policies.mcpAuthentication.resourceMetadataobject
binds[].listeners[].routes[].policies.mcpAuthentication.jwksobject
binds[].listeners[].routes[].policies.mcpAuthentication.jwks.filestring
binds[].listeners[].routes[].policies.mcpAuthentication.jwks.urlstring
binds[].listeners[].routes[].policies.mcpAuthentication.modestring
binds[].listeners[].routes[].policies.mcpAuthentication.jwtValidationOptionsobjectJWT validation options controlling which claims must be present in a token.

The required_claims set specifies which RFC 7519 registered claims must
exist in the token payload before validation proceeds. Only the following
values are recognized: exp, nbf, aud, iss, sub. Other registered
claims such as iat and jti are not enforced by the underlying
jsonwebtoken library and will be silently ignored.

This only enforces presence. Standard claims like exp and nbf
have their values validated independently (e.g., expiry is always checked
when the exp claim is present, regardless of this setting).

Defaults to ["exp"].
binds[].listeners[].routes[].policies.mcpAuthentication.jwtValidationOptions.requiredClaims[]stringClaims that must be present in the token before validation.
Only “exp”, “nbf”, “aud”, “iss”, “sub” are enforced; others
(including “iat” and “jti”) are ignored.
Defaults to [“exp”]. Use an empty list to require no claims.
binds[].listeners[].routes[].policies.a2aobjectMark this traffic as A2A to enable A2A processing and telemetry.
binds[].listeners[].routes[].policies.aiobjectMark this as LLM traffic to enable LLM processing.
binds[].listeners[].routes[].policies.ai.promptGuardobject
binds[].listeners[].routes[].policies.ai.promptGuard.request[]object
binds[].listeners[].routes[].policies.ai.promptGuard.request[].regexobject
binds[].listeners[].routes[].policies.ai.promptGuard.request[].regex.actionstring
binds[].listeners[].routes[].policies.ai.promptGuard.request[].regex.rules[]object
binds[].listeners[].routes[].policies.ai.promptGuard.request[].regex.rules[].builtinstring
binds[].listeners[].routes[].policies.ai.promptGuard.request[].regex.rules[].patternstring
binds[].listeners[].routes[].policies.ai.promptGuard.request[].webhookobject
binds[].listeners[].routes[].policies.ai.promptGuard.request[].webhook.targetobjectExactly one of service, host, or backend may be set.
binds[].listeners[].routes[].policies.ai.promptGuard.request[].webhook.target.serviceobject
binds[].listeners[].routes[].policies.ai.promptGuard.request[].webhook.target.service.nameobject
binds[].listeners[].routes[].policies.ai.promptGuard.request[].webhook.target.service.name.namespacestring
binds[].listeners[].routes[].policies.ai.promptGuard.request[].webhook.target.service.name.hostnamestring
binds[].listeners[].routes[].policies.ai.promptGuard.request[].webhook.target.service.portinteger
binds[].listeners[].routes[].policies.ai.promptGuard.request[].webhook.target.hoststringHostname or IP address
binds[].listeners[].routes[].policies.ai.promptGuard.request[].webhook.target.backendstringExplicit backend reference. Backend must be defined in the top level backends list
binds[].listeners[].routes[].policies.ai.promptGuard.request[].webhook.forwardHeaderMatches[]object
binds[].listeners[].routes[].policies.ai.promptGuard.request[].webhook.forwardHeaderMatches[].namestring
binds[].listeners[].routes[].policies.ai.promptGuard.request[].webhook.forwardHeaderMatches[].valueobjectExactly one of exact or regex may be set.
binds[].listeners[].routes[].policies.ai.promptGuard.request[].webhook.forwardHeaderMatches[].value.exactstring
binds[].listeners[].routes[].policies.ai.promptGuard.request[].webhook.forwardHeaderMatches[].value.regexstring
binds[].listeners[].routes[].policies.ai.promptGuard.request[].openAIModerationobject
binds[].listeners[].routes[].policies.ai.promptGuard.request[].openAIModeration.modelstringModel to use. Defaults to omni-moderation-latest
binds[].listeners[].routes[].policies.ai.promptGuard.request[].openAIModeration.policiesobject
binds[].listeners[].routes[].policies.ai.promptGuard.request[].openAIModeration.policies.requestHeaderModifierobjectHeaders to be modified in the request.
binds[].listeners[].routes[].policies.ai.promptGuard.request[].openAIModeration.policies.requestHeaderModifier.addobject
binds[].listeners[].routes[].policies.ai.promptGuard.request[].openAIModeration.policies.requestHeaderModifier.setobject
binds[].listeners[].routes[].policies.ai.promptGuard.request[].openAIModeration.policies.requestHeaderModifier.remove[]string
binds[].listeners[].routes[].policies.ai.promptGuard.request[].openAIModeration.policies.responseHeaderModifierobjectHeaders to be modified in the response.
binds[].listeners[].routes[].policies.ai.promptGuard.request[].openAIModeration.policies.responseHeaderModifier.addobject
binds[].listeners[].routes[].policies.ai.promptGuard.request[].openAIModeration.policies.responseHeaderModifier.setobject
binds[].listeners[].routes[].policies.ai.promptGuard.request[].openAIModeration.policies.responseHeaderModifier.remove[]string
binds[].listeners[].routes[].policies.ai.promptGuard.request[].openAIModeration.policies.requestRedirectobjectDirectly respond to the request with a redirect.
binds[].listeners[].routes[].policies.ai.promptGuard.request[].openAIModeration.policies.requestRedirect.schemestring
binds[].listeners[].routes[].policies.ai.promptGuard.request[].openAIModeration.policies.requestRedirect.authoritystring
binds[].listeners[].routes[].policies.ai.promptGuard.request[].openAIModeration.policies.requestRedirect.authority.fullstring
binds[].listeners[].routes[].policies.ai.promptGuard.request[].openAIModeration.policies.requestRedirect.authority.hoststring
binds[].listeners[].routes[].policies.ai.promptGuard.request[].openAIModeration.policies.requestRedirect.authority.portinteger
binds[].listeners[].routes[].policies.ai.promptGuard.request[].openAIModeration.policies.requestRedirect.pathobject
binds[].listeners[].routes[].policies.ai.promptGuard.request[].openAIModeration.policies.requestRedirect.path.fullstring
binds[].listeners[].routes[].policies.ai.promptGuard.request[].openAIModeration.policies.requestRedirect.path.prefixstring
binds[].listeners[].routes[].policies.ai.promptGuard.request[].openAIModeration.policies.requestRedirect.statusinteger
binds[].listeners[].routes[].policies.ai.promptGuard.request[].openAIModeration.policies.transformationsobjectModify requests and responses sent to and from the backend.
binds[].listeners[].routes[].policies.ai.promptGuard.request[].openAIModeration.policies.transformations.requestobject
binds[].listeners[].routes[].policies.ai.promptGuard.request[].openAIModeration.policies.transformations.request.addobject
binds[].listeners[].routes[].policies.ai.promptGuard.request[].openAIModeration.policies.transformations.request.setobject
binds[].listeners[].routes[].policies.ai.promptGuard.request[].openAIModeration.policies.transformations.request.remove[]string
binds[].listeners[].routes[].policies.ai.promptGuard.request[].openAIModeration.policies.transformations.request.bodystring
binds[].listeners[].routes[].policies.ai.promptGuard.request[].openAIModeration.policies.transformations.request.metadataobject
binds[].listeners[].routes[].policies.ai.promptGuard.request[].openAIModeration.policies.transformations.responseobject
binds[].listeners[].routes[].policies.ai.promptGuard.request[].openAIModeration.policies.transformations.response.addobject
binds[].listeners[].routes[].policies.ai.promptGuard.request[].openAIModeration.policies.transformations.response.setobject
binds[].listeners[].routes[].policies.ai.promptGuard.request[].openAIModeration.policies.transformations.response.remove[]string
binds[].listeners[].routes[].policies.ai.promptGuard.request[].openAIModeration.policies.transformations.response.bodystring
binds[].listeners[].routes[].policies.ai.promptGuard.request[].openAIModeration.policies.transformations.response.metadataobject
binds[].listeners[].routes[].policies.ai.promptGuard.request[].openAIModeration.policies.backendTLSobjectSend TLS to the backend.
binds[].listeners[].routes[].policies.ai.promptGuard.request[].openAIModeration.policies.backendTLS.certstring
binds[].listeners[].routes[].policies.ai.promptGuard.request[].openAIModeration.policies.backendTLS.keystring
binds[].listeners[].routes[].policies.ai.promptGuard.request[].openAIModeration.policies.backendTLS.rootstring
binds[].listeners[].routes[].policies.ai.promptGuard.request[].openAIModeration.policies.backendTLS.hostnamestring
binds[].listeners[].routes[].policies.ai.promptGuard.request[].openAIModeration.policies.backendTLS.insecureboolean
binds[].listeners[].routes[].policies.ai.promptGuard.request[].openAIModeration.policies.backendTLS.insecureHostboolean
binds[].listeners[].routes[].policies.ai.promptGuard.request[].openAIModeration.policies.backendTLS.alpn[]string
binds[].listeners[].routes[].policies.ai.promptGuard.request[].openAIModeration.policies.backendTLS.subjectAltNames[]string
binds[].listeners[].routes[].policies.ai.promptGuard.request[].openAIModeration.policies.backendAuthobjectAuthenticate to the backend.
binds[].listeners[].routes[].policies.ai.promptGuard.request[].openAIModeration.policies.backendAuth.passthroughobject
binds[].listeners[].routes[].policies.ai.promptGuard.request[].openAIModeration.policies.backendAuth.keyobject
binds[].listeners[].routes[].policies.ai.promptGuard.request[].openAIModeration.policies.backendAuth.key.filestring
binds[].listeners[].routes[].policies.ai.promptGuard.request[].openAIModeration.policies.backendAuth.gcpobject
binds[].listeners[].routes[].policies.ai.promptGuard.request[].openAIModeration.policies.backendAuth.gcp.typestring
binds[].listeners[].routes[].policies.ai.promptGuard.request[].openAIModeration.policies.backendAuth.gcp.audiencestringAudience for the token. If not set, the destination host will be used.
binds[].listeners[].routes[].policies.ai.promptGuard.request[].openAIModeration.policies.backendAuth.gcp.typestring
binds[].listeners[].routes[].policies.ai.promptGuard.request[].openAIModeration.policies.backendAuth.awsobject
binds[].listeners[].routes[].policies.ai.promptGuard.request[].openAIModeration.policies.backendAuth.aws.accessKeyIdstring
binds[].listeners[].routes[].policies.ai.promptGuard.request[].openAIModeration.policies.backendAuth.aws.secretAccessKeystring
binds[].listeners[].routes[].policies.ai.promptGuard.request[].openAIModeration.policies.backendAuth.aws.regionstring
binds[].listeners[].routes[].policies.ai.promptGuard.request[].openAIModeration.policies.backendAuth.aws.sessionTokenstring
binds[].listeners[].routes[].policies.ai.promptGuard.request[].openAIModeration.policies.backendAuth.azureobjectExactly one of explicitConfig, developerImplicit, or implicit may be set.
binds[].listeners[].routes[].policies.ai.promptGuard.request[].openAIModeration.policies.backendAuth.azure.explicitConfigobjectExactly one of clientSecret, managedIdentity, or workloadIdentity may be set.
binds[].listeners[].routes[].policies.ai.promptGuard.request[].openAIModeration.policies.backendAuth.azure.explicitConfig.clientSecretobject
binds[].listeners[].routes[].policies.ai.promptGuard.request[].openAIModeration.policies.backendAuth.azure.explicitConfig.clientSecret.tenant_idstring
binds[].listeners[].routes[].policies.ai.promptGuard.request[].openAIModeration.policies.backendAuth.azure.explicitConfig.clientSecret.client_idstring
binds[].listeners[].routes[].policies.ai.promptGuard.request[].openAIModeration.policies.backendAuth.azure.explicitConfig.clientSecret.client_secretstring
binds[].listeners[].routes[].policies.ai.promptGuard.request[].openAIModeration.policies.backendAuth.azure.explicitConfig.managedIdentityobject
binds[].listeners[].routes[].policies.ai.promptGuard.request[].openAIModeration.policies.backendAuth.azure.explicitConfig.managedIdentity.userAssignedIdentityobject
binds[].listeners[].routes[].policies.ai.promptGuard.request[].openAIModeration.policies.backendAuth.azure.explicitConfig.managedIdentity.userAssignedIdentity.clientIdstring
binds[].listeners[].routes[].policies.ai.promptGuard.request[].openAIModeration.policies.backendAuth.azure.explicitConfig.managedIdentity.userAssignedIdentity.objectIdstring
binds[].listeners[].routes[].policies.ai.promptGuard.request[].openAIModeration.policies.backendAuth.azure.explicitConfig.managedIdentity.userAssignedIdentity.resourceIdstring
binds[].listeners[].routes[].policies.ai.promptGuard.request[].openAIModeration.policies.backendAuth.azure.explicitConfig.workloadIdentityobject
binds[].listeners[].routes[].policies.ai.promptGuard.request[].openAIModeration.policies.backendAuth.azure.developerImplicitobject
binds[].listeners[].routes[].policies.ai.promptGuard.request[].openAIModeration.policies.backendAuth.azure.implicitobject
binds[].listeners[].routes[].policies.ai.promptGuard.request[].openAIModeration.policies.httpobjectSpecify HTTP settings for the backend
binds[].listeners[].routes[].policies.ai.promptGuard.request[].openAIModeration.policies.http.versionstring
binds[].listeners[].routes[].policies.ai.promptGuard.request[].openAIModeration.policies.http.requestTimeoutstring
binds[].listeners[].routes[].policies.ai.promptGuard.request[].openAIModeration.policies.tcpobjectSpecify TCP settings for the backend
binds[].listeners[].routes[].policies.ai.promptGuard.request[].openAIModeration.policies.tcp.keepalivesobject
binds[].listeners[].routes[].policies.ai.promptGuard.request[].openAIModeration.policies.tcp.keepalives.enabledboolean
binds[].listeners[].routes[].policies.ai.promptGuard.request[].openAIModeration.policies.tcp.keepalives.timestring
binds[].listeners[].routes[].policies.ai.promptGuard.request[].openAIModeration.policies.tcp.keepalives.intervalstring
binds[].listeners[].routes[].policies.ai.promptGuard.request[].openAIModeration.policies.tcp.keepalives.retriesinteger
binds[].listeners[].routes[].policies.ai.promptGuard.request[].openAIModeration.policies.tcp.connectTimeoutobject
binds[].listeners[].routes[].policies.ai.promptGuard.request[].openAIModeration.policies.tcp.connectTimeout.secsinteger
binds[].listeners[].routes[].policies.ai.promptGuard.request[].openAIModeration.policies.tcp.connectTimeout.nanosinteger
binds[].listeners[].routes[].policies.ai.promptGuard.request[].openAIModeration.policies.healthobjectHealth policy for backend outlier detection; evicts on unhealthy responses based on CEL condition and configurable duration.
binds[].listeners[].routes[].policies.ai.promptGuard.request[].openAIModeration.policies.health.unhealthyExpressionstringCEL expression; true means unhealthy (evict). E.g. response.code >= 500.
When unset, any 5xx or connection failure is treated as unhealthy.
binds[].listeners[].routes[].policies.ai.promptGuard.request[].openAIModeration.policies.health.evictionobjectLocal/config eviction sub-policy with duration as string; mirrors Eviction.
binds[].listeners[].routes[].policies.ai.promptGuard.request[].openAIModeration.policies.health.eviction.durationstring
binds[].listeners[].routes[].policies.ai.promptGuard.request[].openAIModeration.policies.health.eviction.restoreHealthnumber
binds[].listeners[].routes[].policies.ai.promptGuard.request[].openAIModeration.policies.health.eviction.consecutiveFailuresinteger
binds[].listeners[].routes[].policies.ai.promptGuard.request[].openAIModeration.policies.health.eviction.healthThresholdnumber
binds[].listeners[].routes[].policies.ai.promptGuard.request[].openAIModeration.policies.backendTunnelobjectSpecify a tunnel to use when connecting to the backend
binds[].listeners[].routes[].policies.ai.promptGuard.request[].openAIModeration.policies.backendTunnel.proxyobjectReference to the proxy address
Exactly one of service, host, or backend may be set.
binds[].listeners[].routes[].policies.ai.promptGuard.request[].openAIModeration.policies.backendTunnel.proxy.serviceobject
binds[].listeners[].routes[].policies.ai.promptGuard.request[].openAIModeration.policies.backendTunnel.proxy.service.nameobject
binds[].listeners[].routes[].policies.ai.promptGuard.request[].openAIModeration.policies.backendTunnel.proxy.service.name.namespacestring
binds[].listeners[].routes[].policies.ai.promptGuard.request[].openAIModeration.policies.backendTunnel.proxy.service.name.hostnamestring
binds[].listeners[].routes[].policies.ai.promptGuard.request[].openAIModeration.policies.backendTunnel.proxy.service.portinteger
binds[].listeners[].routes[].policies.ai.promptGuard.request[].openAIModeration.policies.backendTunnel.proxy.hoststringHostname or IP address
binds[].listeners[].routes[].policies.ai.promptGuard.request[].openAIModeration.policies.backendTunnel.proxy.backendstringExplicit backend reference. Backend must be defined in the top level backends list
binds[].listeners[].routes[].policies.ai.promptGuard.request[].bedrockGuardrailsobjectConfiguration for AWS Bedrock Guardrails integration.
binds[].listeners[].routes[].policies.ai.promptGuard.request[].bedrockGuardrails.guardrailIdentifierstringThe unique identifier of the guardrail
binds[].listeners[].routes[].policies.ai.promptGuard.request[].bedrockGuardrails.guardrailVersionstringThe version of the guardrail
binds[].listeners[].routes[].policies.ai.promptGuard.request[].bedrockGuardrails.regionstringAWS region where the guardrail is deployed
binds[].listeners[].routes[].policies.ai.promptGuard.request[].bedrockGuardrails.policiesobjectBackend policies for AWS authentication (optional, defaults to implicit AWS auth)
binds[].listeners[].routes[].policies.ai.promptGuard.request[].bedrockGuardrails.policies.requestHeaderModifierobjectHeaders to be modified in the request.
binds[].listeners[].routes[].policies.ai.promptGuard.request[].bedrockGuardrails.policies.requestHeaderModifier.addobject
binds[].listeners[].routes[].policies.ai.promptGuard.request[].bedrockGuardrails.policies.requestHeaderModifier.setobject
binds[].listeners[].routes[].policies.ai.promptGuard.request[].bedrockGuardrails.policies.requestHeaderModifier.remove[]string
binds[].listeners[].routes[].policies.ai.promptGuard.request[].bedrockGuardrails.policies.responseHeaderModifierobjectHeaders to be modified in the response.
binds[].listeners[].routes[].policies.ai.promptGuard.request[].bedrockGuardrails.policies.responseHeaderModifier.addobject
binds[].listeners[].routes[].policies.ai.promptGuard.request[].bedrockGuardrails.policies.responseHeaderModifier.setobject
binds[].listeners[].routes[].policies.ai.promptGuard.request[].bedrockGuardrails.policies.responseHeaderModifier.remove[]string
binds[].listeners[].routes[].policies.ai.promptGuard.request[].bedrockGuardrails.policies.requestRedirectobjectDirectly respond to the request with a redirect.
binds[].listeners[].routes[].policies.ai.promptGuard.request[].bedrockGuardrails.policies.requestRedirect.schemestring
binds[].listeners[].routes[].policies.ai.promptGuard.request[].bedrockGuardrails.policies.requestRedirect.authoritystring
binds[].listeners[].routes[].policies.ai.promptGuard.request[].bedrockGuardrails.policies.requestRedirect.authority.fullstring
binds[].listeners[].routes[].policies.ai.promptGuard.request[].bedrockGuardrails.policies.requestRedirect.authority.hoststring
binds[].listeners[].routes[].policies.ai.promptGuard.request[].bedrockGuardrails.policies.requestRedirect.authority.portinteger
binds[].listeners[].routes[].policies.ai.promptGuard.request[].bedrockGuardrails.policies.requestRedirect.pathobject
binds[].listeners[].routes[].policies.ai.promptGuard.request[].bedrockGuardrails.policies.requestRedirect.path.fullstring
binds[].listeners[].routes[].policies.ai.promptGuard.request[].bedrockGuardrails.policies.requestRedirect.path.prefixstring
binds[].listeners[].routes[].policies.ai.promptGuard.request[].bedrockGuardrails.policies.requestRedirect.statusinteger
binds[].listeners[].routes[].policies.ai.promptGuard.request[].bedrockGuardrails.policies.transformationsobjectModify requests and responses sent to and from the backend.
binds[].listeners[].routes[].policies.ai.promptGuard.request[].bedrockGuardrails.policies.transformations.requestobject
binds[].listeners[].routes[].policies.ai.promptGuard.request[].bedrockGuardrails.policies.transformations.request.addobject
binds[].listeners[].routes[].policies.ai.promptGuard.request[].bedrockGuardrails.policies.transformations.request.setobject
binds[].listeners[].routes[].policies.ai.promptGuard.request[].bedrockGuardrails.policies.transformations.request.remove[]string
binds[].listeners[].routes[].policies.ai.promptGuard.request[].bedrockGuardrails.policies.transformations.request.bodystring
binds[].listeners[].routes[].policies.ai.promptGuard.request[].bedrockGuardrails.policies.transformations.request.metadataobject
binds[].listeners[].routes[].policies.ai.promptGuard.request[].bedrockGuardrails.policies.transformations.responseobject
binds[].listeners[].routes[].policies.ai.promptGuard.request[].bedrockGuardrails.policies.transformations.response.addobject
binds[].listeners[].routes[].policies.ai.promptGuard.request[].bedrockGuardrails.policies.transformations.response.setobject
binds[].listeners[].routes[].policies.ai.promptGuard.request[].bedrockGuardrails.policies.transformations.response.remove[]string
binds[].listeners[].routes[].policies.ai.promptGuard.request[].bedrockGuardrails.policies.transformations.response.bodystring
binds[].listeners[].routes[].policies.ai.promptGuard.request[].bedrockGuardrails.policies.transformations.response.metadataobject
binds[].listeners[].routes[].policies.ai.promptGuard.request[].bedrockGuardrails.policies.backendTLSobjectSend TLS to the backend.
binds[].listeners[].routes[].policies.ai.promptGuard.request[].bedrockGuardrails.policies.backendTLS.certstring
binds[].listeners[].routes[].policies.ai.promptGuard.request[].bedrockGuardrails.policies.backendTLS.keystring
binds[].listeners[].routes[].policies.ai.promptGuard.request[].bedrockGuardrails.policies.backendTLS.rootstring
binds[].listeners[].routes[].policies.ai.promptGuard.request[].bedrockGuardrails.policies.backendTLS.hostnamestring
binds[].listeners[].routes[].policies.ai.promptGuard.request[].bedrockGuardrails.policies.backendTLS.insecureboolean
binds[].listeners[].routes[].policies.ai.promptGuard.request[].bedrockGuardrails.policies.backendTLS.insecureHostboolean
binds[].listeners[].routes[].policies.ai.promptGuard.request[].bedrockGuardrails.policies.backendTLS.alpn[]string
binds[].listeners[].routes[].policies.ai.promptGuard.request[].bedrockGuardrails.policies.backendTLS.subjectAltNames[]string
binds[].listeners[].routes[].policies.ai.promptGuard.request[].bedrockGuardrails.policies.backendAuthobjectAuthenticate to the backend.
binds[].listeners[].routes[].policies.ai.promptGuard.request[].bedrockGuardrails.policies.backendAuth.passthroughobject
binds[].listeners[].routes[].policies.ai.promptGuard.request[].bedrockGuardrails.policies.backendAuth.keyobject
binds[].listeners[].routes[].policies.ai.promptGuard.request[].bedrockGuardrails.policies.backendAuth.key.filestring
binds[].listeners[].routes[].policies.ai.promptGuard.request[].bedrockGuardrails.policies.backendAuth.gcpobject
binds[].listeners[].routes[].policies.ai.promptGuard.request[].bedrockGuardrails.policies.backendAuth.gcp.typestring
binds[].listeners[].routes[].policies.ai.promptGuard.request[].bedrockGuardrails.policies.backendAuth.gcp.audiencestringAudience for the token. If not set, the destination host will be used.
binds[].listeners[].routes[].policies.ai.promptGuard.request[].bedrockGuardrails.policies.backendAuth.gcp.typestring
binds[].listeners[].routes[].policies.ai.promptGuard.request[].bedrockGuardrails.policies.backendAuth.awsobject
binds[].listeners[].routes[].policies.ai.promptGuard.request[].bedrockGuardrails.policies.backendAuth.aws.accessKeyIdstring
binds[].listeners[].routes[].policies.ai.promptGuard.request[].bedrockGuardrails.policies.backendAuth.aws.secretAccessKeystring
binds[].listeners[].routes[].policies.ai.promptGuard.request[].bedrockGuardrails.policies.backendAuth.aws.regionstring
binds[].listeners[].routes[].policies.ai.promptGuard.request[].bedrockGuardrails.policies.backendAuth.aws.sessionTokenstring
binds[].listeners[].routes[].policies.ai.promptGuard.request[].bedrockGuardrails.policies.backendAuth.azureobjectExactly one of explicitConfig, developerImplicit, or implicit may be set.
binds[].listeners[].routes[].policies.ai.promptGuard.request[].bedrockGuardrails.policies.backendAuth.azure.explicitConfigobjectExactly one of clientSecret, managedIdentity, or workloadIdentity may be set.
binds[].listeners[].routes[].policies.ai.promptGuard.request[].bedrockGuardrails.policies.backendAuth.azure.explicitConfig.clientSecretobject
binds[].listeners[].routes[].policies.ai.promptGuard.request[].bedrockGuardrails.policies.backendAuth.azure.explicitConfig.clientSecret.tenant_idstring
binds[].listeners[].routes[].policies.ai.promptGuard.request[].bedrockGuardrails.policies.backendAuth.azure.explicitConfig.clientSecret.client_idstring
binds[].listeners[].routes[].policies.ai.promptGuard.request[].bedrockGuardrails.policies.backendAuth.azure.explicitConfig.clientSecret.client_secretstring
binds[].listeners[].routes[].policies.ai.promptGuard.request[].bedrockGuardrails.policies.backendAuth.azure.explicitConfig.managedIdentityobject
binds[].listeners[].routes[].policies.ai.promptGuard.request[].bedrockGuardrails.policies.backendAuth.azure.explicitConfig.managedIdentity.userAssignedIdentityobject
binds[].listeners[].routes[].policies.ai.promptGuard.request[].bedrockGuardrails.policies.backendAuth.azure.explicitConfig.managedIdentity.userAssignedIdentity.clientIdstring
binds[].listeners[].routes[].policies.ai.promptGuard.request[].bedrockGuardrails.policies.backendAuth.azure.explicitConfig.managedIdentity.userAssignedIdentity.objectIdstring
binds[].listeners[].routes[].policies.ai.promptGuard.request[].bedrockGuardrails.policies.backendAuth.azure.explicitConfig.managedIdentity.userAssignedIdentity.resourceIdstring
binds[].listeners[].routes[].policies.ai.promptGuard.request[].bedrockGuardrails.policies.backendAuth.azure.explicitConfig.workloadIdentityobject
binds[].listeners[].routes[].policies.ai.promptGuard.request[].bedrockGuardrails.policies.backendAuth.azure.developerImplicitobject
binds[].listeners[].routes[].policies.ai.promptGuard.request[].bedrockGuardrails.policies.backendAuth.azure.implicitobject
binds[].listeners[].routes[].policies.ai.promptGuard.request[].bedrockGuardrails.policies.httpobjectSpecify HTTP settings for the backend
binds[].listeners[].routes[].policies.ai.promptGuard.request[].bedrockGuardrails.policies.http.versionstring
binds[].listeners[].routes[].policies.ai.promptGuard.request[].bedrockGuardrails.policies.http.requestTimeoutstring
binds[].listeners[].routes[].policies.ai.promptGuard.request[].bedrockGuardrails.policies.tcpobjectSpecify TCP settings for the backend
binds[].listeners[].routes[].policies.ai.promptGuard.request[].bedrockGuardrails.policies.tcp.keepalivesobject
binds[].listeners[].routes[].policies.ai.promptGuard.request[].bedrockGuardrails.policies.tcp.keepalives.enabledboolean
binds[].listeners[].routes[].policies.ai.promptGuard.request[].bedrockGuardrails.policies.tcp.keepalives.timestring
binds[].listeners[].routes[].policies.ai.promptGuard.request[].bedrockGuardrails.policies.tcp.keepalives.intervalstring
binds[].listeners[].routes[].policies.ai.promptGuard.request[].bedrockGuardrails.policies.tcp.keepalives.retriesinteger
binds[].listeners[].routes[].policies.ai.promptGuard.request[].bedrockGuardrails.policies.tcp.connectTimeoutobject
binds[].listeners[].routes[].policies.ai.promptGuard.request[].bedrockGuardrails.policies.tcp.connectTimeout.secsinteger
binds[].listeners[].routes[].policies.ai.promptGuard.request[].bedrockGuardrails.policies.tcp.connectTimeout.nanosinteger
binds[].listeners[].routes[].policies.ai.promptGuard.request[].bedrockGuardrails.policies.healthobjectHealth policy for backend outlier detection; evicts on unhealthy responses based on CEL condition and configurable duration.
binds[].listeners[].routes[].policies.ai.promptGuard.request[].bedrockGuardrails.policies.health.unhealthyExpressionstringCEL expression; true means unhealthy (evict). E.g. response.code >= 500.
When unset, any 5xx or connection failure is treated as unhealthy.
binds[].listeners[].routes[].policies.ai.promptGuard.request[].bedrockGuardrails.policies.health.evictionobjectLocal/config eviction sub-policy with duration as string; mirrors Eviction.
binds[].listeners[].routes[].policies.ai.promptGuard.request[].bedrockGuardrails.policies.health.eviction.durationstring
binds[].listeners[].routes[].policies.ai.promptGuard.request[].bedrockGuardrails.policies.health.eviction.restoreHealthnumber
binds[].listeners[].routes[].policies.ai.promptGuard.request[].bedrockGuardrails.policies.health.eviction.consecutiveFailuresinteger
binds[].listeners[].routes[].policies.ai.promptGuard.request[].bedrockGuardrails.policies.health.eviction.healthThresholdnumber
binds[].listeners[].routes[].policies.ai.promptGuard.request[].bedrockGuardrails.policies.backendTunnelobjectSpecify a tunnel to use when connecting to the backend
binds[].listeners[].routes[].policies.ai.promptGuard.request[].bedrockGuardrails.policies.backendTunnel.proxyobjectReference to the proxy address
Exactly one of service, host, or backend may be set.
binds[].listeners[].routes[].policies.ai.promptGuard.request[].bedrockGuardrails.policies.backendTunnel.proxy.serviceobject
binds[].listeners[].routes[].policies.ai.promptGuard.request[].bedrockGuardrails.policies.backendTunnel.proxy.service.nameobject
binds[].listeners[].routes[].policies.ai.promptGuard.request[].bedrockGuardrails.policies.backendTunnel.proxy.service.name.namespacestring
binds[].listeners[].routes[].policies.ai.promptGuard.request[].bedrockGuardrails.policies.backendTunnel.proxy.service.name.hostnamestring
binds[].listeners[].routes[].policies.ai.promptGuard.request[].bedrockGuardrails.policies.backendTunnel.proxy.service.portinteger
binds[].listeners[].routes[].policies.ai.promptGuard.request[].bedrockGuardrails.policies.backendTunnel.proxy.hoststringHostname or IP address
binds[].listeners[].routes[].policies.ai.promptGuard.request[].bedrockGuardrails.policies.backendTunnel.proxy.backendstringExplicit backend reference. Backend must be defined in the top level backends list
binds[].listeners[].routes[].policies.ai.promptGuard.request[].googleModelArmorobjectConfiguration for Google Cloud Model Armor integration.
binds[].listeners[].routes[].policies.ai.promptGuard.request[].googleModelArmor.templateIdstringThe template ID for the Model Armor configuration
binds[].listeners[].routes[].policies.ai.promptGuard.request[].googleModelArmor.projectIdstringThe GCP project ID
binds[].listeners[].routes[].policies.ai.promptGuard.request[].googleModelArmor.locationstringThe GCP region (default: us-central1)
binds[].listeners[].routes[].policies.ai.promptGuard.request[].googleModelArmor.policiesobjectBackend policies for GCP authentication (optional, defaults to implicit GCP auth)
binds[].listeners[].routes[].policies.ai.promptGuard.request[].googleModelArmor.policies.requestHeaderModifierobjectHeaders to be modified in the request.
binds[].listeners[].routes[].policies.ai.promptGuard.request[].googleModelArmor.policies.requestHeaderModifier.addobject
binds[].listeners[].routes[].policies.ai.promptGuard.request[].googleModelArmor.policies.requestHeaderModifier.setobject
binds[].listeners[].routes[].policies.ai.promptGuard.request[].googleModelArmor.policies.requestHeaderModifier.remove[]string
binds[].listeners[].routes[].policies.ai.promptGuard.request[].googleModelArmor.policies.responseHeaderModifierobjectHeaders to be modified in the response.
binds[].listeners[].routes[].policies.ai.promptGuard.request[].googleModelArmor.policies.responseHeaderModifier.addobject
binds[].listeners[].routes[].policies.ai.promptGuard.request[].googleModelArmor.policies.responseHeaderModifier.setobject
binds[].listeners[].routes[].policies.ai.promptGuard.request[].googleModelArmor.policies.responseHeaderModifier.remove[]string
binds[].listeners[].routes[].policies.ai.promptGuard.request[].googleModelArmor.policies.requestRedirectobjectDirectly respond to the request with a redirect.
binds[].listeners[].routes[].policies.ai.promptGuard.request[].googleModelArmor.policies.requestRedirect.schemestring
binds[].listeners[].routes[].policies.ai.promptGuard.request[].googleModelArmor.policies.requestRedirect.authoritystring
binds[].listeners[].routes[].policies.ai.promptGuard.request[].googleModelArmor.policies.requestRedirect.authority.fullstring
binds[].listeners[].routes[].policies.ai.promptGuard.request[].googleModelArmor.policies.requestRedirect.authority.hoststring
binds[].listeners[].routes[].policies.ai.promptGuard.request[].googleModelArmor.policies.requestRedirect.authority.portinteger
binds[].listeners[].routes[].policies.ai.promptGuard.request[].googleModelArmor.policies.requestRedirect.pathobject
binds[].listeners[].routes[].policies.ai.promptGuard.request[].googleModelArmor.policies.requestRedirect.path.fullstring
binds[].listeners[].routes[].policies.ai.promptGuard.request[].googleModelArmor.policies.requestRedirect.path.prefixstring
binds[].listeners[].routes[].policies.ai.promptGuard.request[].googleModelArmor.policies.requestRedirect.statusinteger
binds[].listeners[].routes[].policies.ai.promptGuard.request[].googleModelArmor.policies.transformationsobjectModify requests and responses sent to and from the backend.
binds[].listeners[].routes[].policies.ai.promptGuard.request[].googleModelArmor.policies.transformations.requestobject
binds[].listeners[].routes[].policies.ai.promptGuard.request[].googleModelArmor.policies.transformations.request.addobject
binds[].listeners[].routes[].policies.ai.promptGuard.request[].googleModelArmor.policies.transformations.request.setobject
binds[].listeners[].routes[].policies.ai.promptGuard.request[].googleModelArmor.policies.transformations.request.remove[]string
binds[].listeners[].routes[].policies.ai.promptGuard.request[].googleModelArmor.policies.transformations.request.bodystring
binds[].listeners[].routes[].policies.ai.promptGuard.request[].googleModelArmor.policies.transformations.request.metadataobject
binds[].listeners[].routes[].policies.ai.promptGuard.request[].googleModelArmor.policies.transformations.responseobject
binds[].listeners[].routes[].policies.ai.promptGuard.request[].googleModelArmor.policies.transformations.response.addobject
binds[].listeners[].routes[].policies.ai.promptGuard.request[].googleModelArmor.policies.transformations.response.setobject
binds[].listeners[].routes[].policies.ai.promptGuard.request[].googleModelArmor.policies.transformations.response.remove[]string
binds[].listeners[].routes[].policies.ai.promptGuard.request[].googleModelArmor.policies.transformations.response.bodystring
binds[].listeners[].routes[].policies.ai.promptGuard.request[].googleModelArmor.policies.transformations.response.metadataobject
binds[].listeners[].routes[].policies.ai.promptGuard.request[].googleModelArmor.policies.backendTLSobjectSend TLS to the backend.
binds[].listeners[].routes[].policies.ai.promptGuard.request[].googleModelArmor.policies.backendTLS.certstring
binds[].listeners[].routes[].policies.ai.promptGuard.request[].googleModelArmor.policies.backendTLS.keystring
binds[].listeners[].routes[].policies.ai.promptGuard.request[].googleModelArmor.policies.backendTLS.rootstring
binds[].listeners[].routes[].policies.ai.promptGuard.request[].googleModelArmor.policies.backendTLS.hostnamestring
binds[].listeners[].routes[].policies.ai.promptGuard.request[].googleModelArmor.policies.backendTLS.insecureboolean
binds[].listeners[].routes[].policies.ai.promptGuard.request[].googleModelArmor.policies.backendTLS.insecureHostboolean
binds[].listeners[].routes[].policies.ai.promptGuard.request[].googleModelArmor.policies.backendTLS.alpn[]string
binds[].listeners[].routes[].policies.ai.promptGuard.request[].googleModelArmor.policies.backendTLS.subjectAltNames[]string
binds[].listeners[].routes[].policies.ai.promptGuard.request[].googleModelArmor.policies.backendAuthobjectAuthenticate to the backend.
binds[].listeners[].routes[].policies.ai.promptGuard.request[].googleModelArmor.policies.backendAuth.passthroughobject
binds[].listeners[].routes[].policies.ai.promptGuard.request[].googleModelArmor.policies.backendAuth.keyobject
binds[].listeners[].routes[].policies.ai.promptGuard.request[].googleModelArmor.policies.backendAuth.key.filestring
binds[].listeners[].routes[].policies.ai.promptGuard.request[].googleModelArmor.policies.backendAuth.gcpobject
binds[].listeners[].routes[].policies.ai.promptGuard.request[].googleModelArmor.policies.backendAuth.gcp.typestring
binds[].listeners[].routes[].policies.ai.promptGuard.request[].googleModelArmor.policies.backendAuth.gcp.audiencestringAudience for the token. If not set, the destination host will be used.
binds[].listeners[].routes[].policies.ai.promptGuard.request[].googleModelArmor.policies.backendAuth.gcp.typestring
binds[].listeners[].routes[].policies.ai.promptGuard.request[].googleModelArmor.policies.backendAuth.awsobject
binds[].listeners[].routes[].policies.ai.promptGuard.request[].googleModelArmor.policies.backendAuth.aws.accessKeyIdstring
binds[].listeners[].routes[].policies.ai.promptGuard.request[].googleModelArmor.policies.backendAuth.aws.secretAccessKeystring
binds[].listeners[].routes[].policies.ai.promptGuard.request[].googleModelArmor.policies.backendAuth.aws.regionstring
binds[].listeners[].routes[].policies.ai.promptGuard.request[].googleModelArmor.policies.backendAuth.aws.sessionTokenstring
binds[].listeners[].routes[].policies.ai.promptGuard.request[].googleModelArmor.policies.backendAuth.azureobjectExactly one of explicitConfig, developerImplicit, or implicit may be set.
binds[].listeners[].routes[].policies.ai.promptGuard.request[].googleModelArmor.policies.backendAuth.azure.explicitConfigobjectExactly one of clientSecret, managedIdentity, or workloadIdentity may be set.
binds[].listeners[].routes[].policies.ai.promptGuard.request[].googleModelArmor.policies.backendAuth.azure.explicitConfig.clientSecretobject
binds[].listeners[].routes[].policies.ai.promptGuard.request[].googleModelArmor.policies.backendAuth.azure.explicitConfig.clientSecret.tenant_idstring
binds[].listeners[].routes[].policies.ai.promptGuard.request[].googleModelArmor.policies.backendAuth.azure.explicitConfig.clientSecret.client_idstring
binds[].listeners[].routes[].policies.ai.promptGuard.request[].googleModelArmor.policies.backendAuth.azure.explicitConfig.clientSecret.client_secretstring
binds[].listeners[].routes[].policies.ai.promptGuard.request[].googleModelArmor.policies.backendAuth.azure.explicitConfig.managedIdentityobject
binds[].listeners[].routes[].policies.ai.promptGuard.request[].googleModelArmor.policies.backendAuth.azure.explicitConfig.managedIdentity.userAssignedIdentityobject
binds[].listeners[].routes[].policies.ai.promptGuard.request[].googleModelArmor.policies.backendAuth.azure.explicitConfig.managedIdentity.userAssignedIdentity.clientIdstring
binds[].listeners[].routes[].policies.ai.promptGuard.request[].googleModelArmor.policies.backendAuth.azure.explicitConfig.managedIdentity.userAssignedIdentity.objectIdstring
binds[].listeners[].routes[].policies.ai.promptGuard.request[].googleModelArmor.policies.backendAuth.azure.explicitConfig.managedIdentity.userAssignedIdentity.resourceIdstring
binds[].listeners[].routes[].policies.ai.promptGuard.request[].googleModelArmor.policies.backendAuth.azure.explicitConfig.workloadIdentityobject
binds[].listeners[].routes[].policies.ai.promptGuard.request[].googleModelArmor.policies.backendAuth.azure.developerImplicitobject
binds[].listeners[].routes[].policies.ai.promptGuard.request[].googleModelArmor.policies.backendAuth.azure.implicitobject
binds[].listeners[].routes[].policies.ai.promptGuard.request[].googleModelArmor.policies.httpobjectSpecify HTTP settings for the backend
binds[].listeners[].routes[].policies.ai.promptGuard.request[].googleModelArmor.policies.http.versionstring
binds[].listeners[].routes[].policies.ai.promptGuard.request[].googleModelArmor.policies.http.requestTimeoutstring
binds[].listeners[].routes[].policies.ai.promptGuard.request[].googleModelArmor.policies.tcpobjectSpecify TCP settings for the backend
binds[].listeners[].routes[].policies.ai.promptGuard.request[].googleModelArmor.policies.tcp.keepalivesobject
binds[].listeners[].routes[].policies.ai.promptGuard.request[].googleModelArmor.policies.tcp.keepalives.enabledboolean
binds[].listeners[].routes[].policies.ai.promptGuard.request[].googleModelArmor.policies.tcp.keepalives.timestring
binds[].listeners[].routes[].policies.ai.promptGuard.request[].googleModelArmor.policies.tcp.keepalives.intervalstring
binds[].listeners[].routes[].policies.ai.promptGuard.request[].googleModelArmor.policies.tcp.keepalives.retriesinteger
binds[].listeners[].routes[].policies.ai.promptGuard.request[].googleModelArmor.policies.tcp.connectTimeoutobject
binds[].listeners[].routes[].policies.ai.promptGuard.request[].googleModelArmor.policies.tcp.connectTimeout.secsinteger
binds[].listeners[].routes[].policies.ai.promptGuard.request[].googleModelArmor.policies.tcp.connectTimeout.nanosinteger
binds[].listeners[].routes[].policies.ai.promptGuard.request[].googleModelArmor.policies.healthobjectHealth policy for backend outlier detection; evicts on unhealthy responses based on CEL condition and configurable duration.
binds[].listeners[].routes[].policies.ai.promptGuard.request[].googleModelArmor.policies.health.unhealthyExpressionstringCEL expression; true means unhealthy (evict). E.g. response.code >= 500.
When unset, any 5xx or connection failure is treated as unhealthy.
binds[].listeners[].routes[].policies.ai.promptGuard.request[].googleModelArmor.policies.health.evictionobjectLocal/config eviction sub-policy with duration as string; mirrors Eviction.
binds[].listeners[].routes[].policies.ai.promptGuard.request[].googleModelArmor.policies.health.eviction.durationstring
binds[].listeners[].routes[].policies.ai.promptGuard.request[].googleModelArmor.policies.health.eviction.restoreHealthnumber
binds[].listeners[].routes[].policies.ai.promptGuard.request[].googleModelArmor.policies.health.eviction.consecutiveFailuresinteger
binds[].listeners[].routes[].policies.ai.promptGuard.request[].googleModelArmor.policies.health.eviction.healthThresholdnumber
binds[].listeners[].routes[].policies.ai.promptGuard.request[].googleModelArmor.policies.backendTunnelobjectSpecify a tunnel to use when connecting to the backend
binds[].listeners[].routes[].policies.ai.promptGuard.request[].googleModelArmor.policies.backendTunnel.proxyobjectReference to the proxy address
Exactly one of service, host, or backend may be set.
binds[].listeners[].routes[].policies.ai.promptGuard.request[].googleModelArmor.policies.backendTunnel.proxy.serviceobject
binds[].listeners[].routes[].policies.ai.promptGuard.request[].googleModelArmor.policies.backendTunnel.proxy.service.nameobject
binds[].listeners[].routes[].policies.ai.promptGuard.request[].googleModelArmor.policies.backendTunnel.proxy.service.name.namespacestring
binds[].listeners[].routes[].policies.ai.promptGuard.request[].googleModelArmor.policies.backendTunnel.proxy.service.name.hostnamestring
binds[].listeners[].routes[].policies.ai.promptGuard.request[].googleModelArmor.policies.backendTunnel.proxy.service.portinteger
binds[].listeners[].routes[].policies.ai.promptGuard.request[].googleModelArmor.policies.backendTunnel.proxy.hoststringHostname or IP address
binds[].listeners[].routes[].policies.ai.promptGuard.request[].googleModelArmor.policies.backendTunnel.proxy.backendstringExplicit backend reference. Backend must be defined in the top level backends list
binds[].listeners[].routes[].policies.ai.promptGuard.request[].rejectionobject
binds[].listeners[].routes[].policies.ai.promptGuard.request[].rejection.bodyarray
binds[].listeners[].routes[].policies.ai.promptGuard.request[].rejection.statusinteger
binds[].listeners[].routes[].policies.ai.promptGuard.request[].rejection.headersobjectOptional headers to add, set, or remove from the rejection response
binds[].listeners[].routes[].policies.ai.promptGuard.request[].rejection.headers.addobject
binds[].listeners[].routes[].policies.ai.promptGuard.request[].rejection.headers.setobject
binds[].listeners[].routes[].policies.ai.promptGuard.request[].rejection.headers.remove[]string
binds[].listeners[].routes[].policies.ai.promptGuard.response[]object
binds[].listeners[].routes[].policies.ai.promptGuard.response[].regexobject
binds[].listeners[].routes[].policies.ai.promptGuard.response[].regex.actionstring
binds[].listeners[].routes[].policies.ai.promptGuard.response[].regex.rules[]object
binds[].listeners[].routes[].policies.ai.promptGuard.response[].regex.rules[].builtinstring
binds[].listeners[].routes[].policies.ai.promptGuard.response[].regex.rules[].patternstring
binds[].listeners[].routes[].policies.ai.promptGuard.response[].webhookobject
binds[].listeners[].routes[].policies.ai.promptGuard.response[].webhook.targetobjectExactly one of service, host, or backend may be set.
binds[].listeners[].routes[].policies.ai.promptGuard.response[].webhook.target.serviceobject
binds[].listeners[].routes[].policies.ai.promptGuard.response[].webhook.target.service.nameobject
binds[].listeners[].routes[].policies.ai.promptGuard.response[].webhook.target.service.name.namespacestring
binds[].listeners[].routes[].policies.ai.promptGuard.response[].webhook.target.service.name.hostnamestring
binds[].listeners[].routes[].policies.ai.promptGuard.response[].webhook.target.service.portinteger
binds[].listeners[].routes[].policies.ai.promptGuard.response[].webhook.target.hoststringHostname or IP address
binds[].listeners[].routes[].policies.ai.promptGuard.response[].webhook.target.backendstringExplicit backend reference. Backend must be defined in the top level backends list
binds[].listeners[].routes[].policies.ai.promptGuard.response[].webhook.forwardHeaderMatches[]object
binds[].listeners[].routes[].policies.ai.promptGuard.response[].webhook.forwardHeaderMatches[].namestring
binds[].listeners[].routes[].policies.ai.promptGuard.response[].webhook.forwardHeaderMatches[].valueobjectExactly one of exact or regex may be set.
binds[].listeners[].routes[].policies.ai.promptGuard.response[].webhook.forwardHeaderMatches[].value.exactstring
binds[].listeners[].routes[].policies.ai.promptGuard.response[].webhook.forwardHeaderMatches[].value.regexstring
binds[].listeners[].routes[].policies.ai.promptGuard.response[].bedrockGuardrailsobjectConfiguration for AWS Bedrock Guardrails integration.
binds[].listeners[].routes[].policies.ai.promptGuard.response[].bedrockGuardrails.guardrailIdentifierstringThe unique identifier of the guardrail
binds[].listeners[].routes[].policies.ai.promptGuard.response[].bedrockGuardrails.guardrailVersionstringThe version of the guardrail
binds[].listeners[].routes[].policies.ai.promptGuard.response[].bedrockGuardrails.regionstringAWS region where the guardrail is deployed
binds[].listeners[].routes[].policies.ai.promptGuard.response[].bedrockGuardrails.policiesobjectBackend policies for AWS authentication (optional, defaults to implicit AWS auth)
binds[].listeners[].routes[].policies.ai.promptGuard.response[].bedrockGuardrails.policies.requestHeaderModifierobjectHeaders to be modified in the request.
binds[].listeners[].routes[].policies.ai.promptGuard.response[].bedrockGuardrails.policies.requestHeaderModifier.addobject
binds[].listeners[].routes[].policies.ai.promptGuard.response[].bedrockGuardrails.policies.requestHeaderModifier.setobject
binds[].listeners[].routes[].policies.ai.promptGuard.response[].bedrockGuardrails.policies.requestHeaderModifier.remove[]string
binds[].listeners[].routes[].policies.ai.promptGuard.response[].bedrockGuardrails.policies.responseHeaderModifierobjectHeaders to be modified in the response.
binds[].listeners[].routes[].policies.ai.promptGuard.response[].bedrockGuardrails.policies.responseHeaderModifier.addobject
binds[].listeners[].routes[].policies.ai.promptGuard.response[].bedrockGuardrails.policies.responseHeaderModifier.setobject
binds[].listeners[].routes[].policies.ai.promptGuard.response[].bedrockGuardrails.policies.responseHeaderModifier.remove[]string
binds[].listeners[].routes[].policies.ai.promptGuard.response[].bedrockGuardrails.policies.requestRedirectobjectDirectly respond to the request with a redirect.
binds[].listeners[].routes[].policies.ai.promptGuard.response[].bedrockGuardrails.policies.requestRedirect.schemestring
binds[].listeners[].routes[].policies.ai.promptGuard.response[].bedrockGuardrails.policies.requestRedirect.authoritystring
binds[].listeners[].routes[].policies.ai.promptGuard.response[].bedrockGuardrails.policies.requestRedirect.authority.fullstring
binds[].listeners[].routes[].policies.ai.promptGuard.response[].bedrockGuardrails.policies.requestRedirect.authority.hoststring
binds[].listeners[].routes[].policies.ai.promptGuard.response[].bedrockGuardrails.policies.requestRedirect.authority.portinteger
binds[].listeners[].routes[].policies.ai.promptGuard.response[].bedrockGuardrails.policies.requestRedirect.pathobject
binds[].listeners[].routes[].policies.ai.promptGuard.response[].bedrockGuardrails.policies.requestRedirect.path.fullstring
binds[].listeners[].routes[].policies.ai.promptGuard.response[].bedrockGuardrails.policies.requestRedirect.path.prefixstring
binds[].listeners[].routes[].policies.ai.promptGuard.response[].bedrockGuardrails.policies.requestRedirect.statusinteger
binds[].listeners[].routes[].policies.ai.promptGuard.response[].bedrockGuardrails.policies.transformationsobjectModify requests and responses sent to and from the backend.
binds[].listeners[].routes[].policies.ai.promptGuard.response[].bedrockGuardrails.policies.transformations.requestobject
binds[].listeners[].routes[].policies.ai.promptGuard.response[].bedrockGuardrails.policies.transformations.request.addobject
binds[].listeners[].routes[].policies.ai.promptGuard.response[].bedrockGuardrails.policies.transformations.request.setobject
binds[].listeners[].routes[].policies.ai.promptGuard.response[].bedrockGuardrails.policies.transformations.request.remove[]string
binds[].listeners[].routes[].policies.ai.promptGuard.response[].bedrockGuardrails.policies.transformations.request.bodystring
binds[].listeners[].routes[].policies.ai.promptGuard.response[].bedrockGuardrails.policies.transformations.request.metadataobject
binds[].listeners[].routes[].policies.ai.promptGuard.response[].bedrockGuardrails.policies.transformations.responseobject
binds[].listeners[].routes[].policies.ai.promptGuard.response[].bedrockGuardrails.policies.transformations.response.addobject
binds[].listeners[].routes[].policies.ai.promptGuard.response[].bedrockGuardrails.policies.transformations.response.setobject
binds[].listeners[].routes[].policies.ai.promptGuard.response[].bedrockGuardrails.policies.transformations.response.remove[]string
binds[].listeners[].routes[].policies.ai.promptGuard.response[].bedrockGuardrails.policies.transformations.response.bodystring
binds[].listeners[].routes[].policies.ai.promptGuard.response[].bedrockGuardrails.policies.transformations.response.metadataobject
binds[].listeners[].routes[].policies.ai.promptGuard.response[].bedrockGuardrails.policies.backendTLSobjectSend TLS to the backend.
binds[].listeners[].routes[].policies.ai.promptGuard.response[].bedrockGuardrails.policies.backendTLS.certstring
binds[].listeners[].routes[].policies.ai.promptGuard.response[].bedrockGuardrails.policies.backendTLS.keystring
binds[].listeners[].routes[].policies.ai.promptGuard.response[].bedrockGuardrails.policies.backendTLS.rootstring
binds[].listeners[].routes[].policies.ai.promptGuard.response[].bedrockGuardrails.policies.backendTLS.hostnamestring
binds[].listeners[].routes[].policies.ai.promptGuard.response[].bedrockGuardrails.policies.backendTLS.insecureboolean
binds[].listeners[].routes[].policies.ai.promptGuard.response[].bedrockGuardrails.policies.backendTLS.insecureHostboolean
binds[].listeners[].routes[].policies.ai.promptGuard.response[].bedrockGuardrails.policies.backendTLS.alpn[]string
binds[].listeners[].routes[].policies.ai.promptGuard.response[].bedrockGuardrails.policies.backendTLS.subjectAltNames[]string
binds[].listeners[].routes[].policies.ai.promptGuard.response[].bedrockGuardrails.policies.backendAuthobjectAuthenticate to the backend.
binds[].listeners[].routes[].policies.ai.promptGuard.response[].bedrockGuardrails.policies.backendAuth.passthroughobject
binds[].listeners[].routes[].policies.ai.promptGuard.response[].bedrockGuardrails.policies.backendAuth.keyobject
binds[].listeners[].routes[].policies.ai.promptGuard.response[].bedrockGuardrails.policies.backendAuth.key.filestring
binds[].listeners[].routes[].policies.ai.promptGuard.response[].bedrockGuardrails.policies.backendAuth.gcpobject
binds[].listeners[].routes[].policies.ai.promptGuard.response[].bedrockGuardrails.policies.backendAuth.gcp.typestring
binds[].listeners[].routes[].policies.ai.promptGuard.response[].bedrockGuardrails.policies.backendAuth.gcp.audiencestringAudience for the token. If not set, the destination host will be used.
binds[].listeners[].routes[].policies.ai.promptGuard.response[].bedrockGuardrails.policies.backendAuth.gcp.typestring
binds[].listeners[].routes[].policies.ai.promptGuard.response[].bedrockGuardrails.policies.backendAuth.awsobject
binds[].listeners[].routes[].policies.ai.promptGuard.response[].bedrockGuardrails.policies.backendAuth.aws.accessKeyIdstring
binds[].listeners[].routes[].policies.ai.promptGuard.response[].bedrockGuardrails.policies.backendAuth.aws.secretAccessKeystring
binds[].listeners[].routes[].policies.ai.promptGuard.response[].bedrockGuardrails.policies.backendAuth.aws.regionstring
binds[].listeners[].routes[].policies.ai.promptGuard.response[].bedrockGuardrails.policies.backendAuth.aws.sessionTokenstring
binds[].listeners[].routes[].policies.ai.promptGuard.response[].bedrockGuardrails.policies.backendAuth.azureobjectExactly one of explicitConfig, developerImplicit, or implicit may be set.
binds[].listeners[].routes[].policies.ai.promptGuard.response[].bedrockGuardrails.policies.backendAuth.azure.explicitConfigobjectExactly one of clientSecret, managedIdentity, or workloadIdentity may be set.
binds[].listeners[].routes[].policies.ai.promptGuard.response[].bedrockGuardrails.policies.backendAuth.azure.explicitConfig.clientSecretobject
binds[].listeners[].routes[].policies.ai.promptGuard.response[].bedrockGuardrails.policies.backendAuth.azure.explicitConfig.clientSecret.tenant_idstring
binds[].listeners[].routes[].policies.ai.promptGuard.response[].bedrockGuardrails.policies.backendAuth.azure.explicitConfig.clientSecret.client_idstring
binds[].listeners[].routes[].policies.ai.promptGuard.response[].bedrockGuardrails.policies.backendAuth.azure.explicitConfig.clientSecret.client_secretstring
binds[].listeners[].routes[].policies.ai.promptGuard.response[].bedrockGuardrails.policies.backendAuth.azure.explicitConfig.managedIdentityobject
binds[].listeners[].routes[].policies.ai.promptGuard.response[].bedrockGuardrails.policies.backendAuth.azure.explicitConfig.managedIdentity.userAssignedIdentityobject
binds[].listeners[].routes[].policies.ai.promptGuard.response[].bedrockGuardrails.policies.backendAuth.azure.explicitConfig.managedIdentity.userAssignedIdentity.clientIdstring
binds[].listeners[].routes[].policies.ai.promptGuard.response[].bedrockGuardrails.policies.backendAuth.azure.explicitConfig.managedIdentity.userAssignedIdentity.objectIdstring
binds[].listeners[].routes[].policies.ai.promptGuard.response[].bedrockGuardrails.policies.backendAuth.azure.explicitConfig.managedIdentity.userAssignedIdentity.resourceIdstring
binds[].listeners[].routes[].policies.ai.promptGuard.response[].bedrockGuardrails.policies.backendAuth.azure.explicitConfig.workloadIdentityobject
binds[].listeners[].routes[].policies.ai.promptGuard.response[].bedrockGuardrails.policies.backendAuth.azure.developerImplicitobject
binds[].listeners[].routes[].policies.ai.promptGuard.response[].bedrockGuardrails.policies.backendAuth.azure.implicitobject
binds[].listeners[].routes[].policies.ai.promptGuard.response[].bedrockGuardrails.policies.httpobjectSpecify HTTP settings for the backend
binds[].listeners[].routes[].policies.ai.promptGuard.response[].bedrockGuardrails.policies.http.versionstring
binds[].listeners[].routes[].policies.ai.promptGuard.response[].bedrockGuardrails.policies.http.requestTimeoutstring
binds[].listeners[].routes[].policies.ai.promptGuard.response[].bedrockGuardrails.policies.tcpobjectSpecify TCP settings for the backend
binds[].listeners[].routes[].policies.ai.promptGuard.response[].bedrockGuardrails.policies.tcp.keepalivesobject
binds[].listeners[].routes[].policies.ai.promptGuard.response[].bedrockGuardrails.policies.tcp.keepalives.enabledboolean
binds[].listeners[].routes[].policies.ai.promptGuard.response[].bedrockGuardrails.policies.tcp.keepalives.timestring
binds[].listeners[].routes[].policies.ai.promptGuard.response[].bedrockGuardrails.policies.tcp.keepalives.intervalstring
binds[].listeners[].routes[].policies.ai.promptGuard.response[].bedrockGuardrails.policies.tcp.keepalives.retriesinteger
binds[].listeners[].routes[].policies.ai.promptGuard.response[].bedrockGuardrails.policies.tcp.connectTimeoutobject
binds[].listeners[].routes[].policies.ai.promptGuard.response[].bedrockGuardrails.policies.tcp.connectTimeout.secsinteger
binds[].listeners[].routes[].policies.ai.promptGuard.response[].bedrockGuardrails.policies.tcp.connectTimeout.nanosinteger
binds[].listeners[].routes[].policies.ai.promptGuard.response[].bedrockGuardrails.policies.healthobjectHealth policy for backend outlier detection; evicts on unhealthy responses based on CEL condition and configurable duration.
binds[].listeners[].routes[].policies.ai.promptGuard.response[].bedrockGuardrails.policies.health.unhealthyExpressionstringCEL expression; true means unhealthy (evict). E.g. response.code >= 500.
When unset, any 5xx or connection failure is treated as unhealthy.
binds[].listeners[].routes[].policies.ai.promptGuard.response[].bedrockGuardrails.policies.health.evictionobjectLocal/config eviction sub-policy with duration as string; mirrors Eviction.
binds[].listeners[].routes[].policies.ai.promptGuard.response[].bedrockGuardrails.policies.health.eviction.durationstring
binds[].listeners[].routes[].policies.ai.promptGuard.response[].bedrockGuardrails.policies.health.eviction.restoreHealthnumber
binds[].listeners[].routes[].policies.ai.promptGuard.response[].bedrockGuardrails.policies.health.eviction.consecutiveFailuresinteger
binds[].listeners[].routes[].policies.ai.promptGuard.response[].bedrockGuardrails.policies.health.eviction.healthThresholdnumber
binds[].listeners[].routes[].policies.ai.promptGuard.response[].bedrockGuardrails.policies.backendTunnelobjectSpecify a tunnel to use when connecting to the backend
binds[].listeners[].routes[].policies.ai.promptGuard.response[].bedrockGuardrails.policies.backendTunnel.proxyobjectReference to the proxy address
Exactly one of service, host, or backend may be set.
binds[].listeners[].routes[].policies.ai.promptGuard.response[].bedrockGuardrails.policies.backendTunnel.proxy.serviceobject
binds[].listeners[].routes[].policies.ai.promptGuard.response[].bedrockGuardrails.policies.backendTunnel.proxy.service.nameobject
binds[].listeners[].routes[].policies.ai.promptGuard.response[].bedrockGuardrails.policies.backendTunnel.proxy.service.name.namespacestring
binds[].listeners[].routes[].policies.ai.promptGuard.response[].bedrockGuardrails.policies.backendTunnel.proxy.service.name.hostnamestring
binds[].listeners[].routes[].policies.ai.promptGuard.response[].bedrockGuardrails.policies.backendTunnel.proxy.service.portinteger
binds[].listeners[].routes[].policies.ai.promptGuard.response[].bedrockGuardrails.policies.backendTunnel.proxy.hoststringHostname or IP address
binds[].listeners[].routes[].policies.ai.promptGuard.response[].bedrockGuardrails.policies.backendTunnel.proxy.backendstringExplicit backend reference. Backend must be defined in the top level backends list
binds[].listeners[].routes[].policies.ai.promptGuard.response[].googleModelArmorobjectConfiguration for Google Cloud Model Armor integration.
binds[].listeners[].routes[].policies.ai.promptGuard.response[].googleModelArmor.templateIdstringThe template ID for the Model Armor configuration
binds[].listeners[].routes[].policies.ai.promptGuard.response[].googleModelArmor.projectIdstringThe GCP project ID
binds[].listeners[].routes[].policies.ai.promptGuard.response[].googleModelArmor.locationstringThe GCP region (default: us-central1)
binds[].listeners[].routes[].policies.ai.promptGuard.response[].googleModelArmor.policiesobjectBackend policies for GCP authentication (optional, defaults to implicit GCP auth)
binds[].listeners[].routes[].policies.ai.promptGuard.response[].googleModelArmor.policies.requestHeaderModifierobjectHeaders to be modified in the request.
binds[].listeners[].routes[].policies.ai.promptGuard.response[].googleModelArmor.policies.requestHeaderModifier.addobject
binds[].listeners[].routes[].policies.ai.promptGuard.response[].googleModelArmor.policies.requestHeaderModifier.setobject
binds[].listeners[].routes[].policies.ai.promptGuard.response[].googleModelArmor.policies.requestHeaderModifier.remove[]string
binds[].listeners[].routes[].policies.ai.promptGuard.response[].googleModelArmor.policies.responseHeaderModifierobjectHeaders to be modified in the response.
binds[].listeners[].routes[].policies.ai.promptGuard.response[].googleModelArmor.policies.responseHeaderModifier.addobject
binds[].listeners[].routes[].policies.ai.promptGuard.response[].googleModelArmor.policies.responseHeaderModifier.setobject
binds[].listeners[].routes[].policies.ai.promptGuard.response[].googleModelArmor.policies.responseHeaderModifier.remove[]string
binds[].listeners[].routes[].policies.ai.promptGuard.response[].googleModelArmor.policies.requestRedirectobjectDirectly respond to the request with a redirect.
binds[].listeners[].routes[].policies.ai.promptGuard.response[].googleModelArmor.policies.requestRedirect.schemestring
binds[].listeners[].routes[].policies.ai.promptGuard.response[].googleModelArmor.policies.requestRedirect.authoritystring
binds[].listeners[].routes[].policies.ai.promptGuard.response[].googleModelArmor.policies.requestRedirect.authority.fullstring
binds[].listeners[].routes[].policies.ai.promptGuard.response[].googleModelArmor.policies.requestRedirect.authority.hoststring
binds[].listeners[].routes[].policies.ai.promptGuard.response[].googleModelArmor.policies.requestRedirect.authority.portinteger
binds[].listeners[].routes[].policies.ai.promptGuard.response[].googleModelArmor.policies.requestRedirect.pathobject
binds[].listeners[].routes[].policies.ai.promptGuard.response[].googleModelArmor.policies.requestRedirect.path.fullstring
binds[].listeners[].routes[].policies.ai.promptGuard.response[].googleModelArmor.policies.requestRedirect.path.prefixstring
binds[].listeners[].routes[].policies.ai.promptGuard.response[].googleModelArmor.policies.requestRedirect.statusinteger
binds[].listeners[].routes[].policies.ai.promptGuard.response[].googleModelArmor.policies.transformationsobjectModify requests and responses sent to and from the backend.
binds[].listeners[].routes[].policies.ai.promptGuard.response[].googleModelArmor.policies.transformations.requestobject
binds[].listeners[].routes[].policies.ai.promptGuard.response[].googleModelArmor.policies.transformations.request.addobject
binds[].listeners[].routes[].policies.ai.promptGuard.response[].googleModelArmor.policies.transformations.request.setobject
binds[].listeners[].routes[].policies.ai.promptGuard.response[].googleModelArmor.policies.transformations.request.remove[]string
binds[].listeners[].routes[].policies.ai.promptGuard.response[].googleModelArmor.policies.transformations.request.bodystring
binds[].listeners[].routes[].policies.ai.promptGuard.response[].googleModelArmor.policies.transformations.request.metadataobject
binds[].listeners[].routes[].policies.ai.promptGuard.response[].googleModelArmor.policies.transformations.responseobject
binds[].listeners[].routes[].policies.ai.promptGuard.response[].googleModelArmor.policies.transformations.response.addobject
binds[].listeners[].routes[].policies.ai.promptGuard.response[].googleModelArmor.policies.transformations.response.setobject
binds[].listeners[].routes[].policies.ai.promptGuard.response[].googleModelArmor.policies.transformations.response.remove[]string
binds[].listeners[].routes[].policies.ai.promptGuard.response[].googleModelArmor.policies.transformations.response.bodystring
binds[].listeners[].routes[].policies.ai.promptGuard.response[].googleModelArmor.policies.transformations.response.metadataobject
binds[].listeners[].routes[].policies.ai.promptGuard.response[].googleModelArmor.policies.backendTLSobjectSend TLS to the backend.
binds[].listeners[].routes[].policies.ai.promptGuard.response[].googleModelArmor.policies.backendTLS.certstring
binds[].listeners[].routes[].policies.ai.promptGuard.response[].googleModelArmor.policies.backendTLS.keystring
binds[].listeners[].routes[].policies.ai.promptGuard.response[].googleModelArmor.policies.backendTLS.rootstring
binds[].listeners[].routes[].policies.ai.promptGuard.response[].googleModelArmor.policies.backendTLS.hostnamestring
binds[].listeners[].routes[].policies.ai.promptGuard.response[].googleModelArmor.policies.backendTLS.insecureboolean
binds[].listeners[].routes[].policies.ai.promptGuard.response[].googleModelArmor.policies.backendTLS.insecureHostboolean
binds[].listeners[].routes[].policies.ai.promptGuard.response[].googleModelArmor.policies.backendTLS.alpn[]string
binds[].listeners[].routes[].policies.ai.promptGuard.response[].googleModelArmor.policies.backendTLS.subjectAltNames[]string
binds[].listeners[].routes[].policies.ai.promptGuard.response[].googleModelArmor.policies.backendAuthobjectAuthenticate to the backend.
binds[].listeners[].routes[].policies.ai.promptGuard.response[].googleModelArmor.policies.backendAuth.passthroughobject
binds[].listeners[].routes[].policies.ai.promptGuard.response[].googleModelArmor.policies.backendAuth.keyobject
binds[].listeners[].routes[].policies.ai.promptGuard.response[].googleModelArmor.policies.backendAuth.key.filestring
binds[].listeners[].routes[].policies.ai.promptGuard.response[].googleModelArmor.policies.backendAuth.gcpobject
binds[].listeners[].routes[].policies.ai.promptGuard.response[].googleModelArmor.policies.backendAuth.gcp.typestring
binds[].listeners[].routes[].policies.ai.promptGuard.response[].googleModelArmor.policies.backendAuth.gcp.audiencestringAudience for the token. If not set, the destination host will be used.
binds[].listeners[].routes[].policies.ai.promptGuard.response[].googleModelArmor.policies.backendAuth.gcp.typestring
binds[].listeners[].routes[].policies.ai.promptGuard.response[].googleModelArmor.policies.backendAuth.awsobject
binds[].listeners[].routes[].policies.ai.promptGuard.response[].googleModelArmor.policies.backendAuth.aws.accessKeyIdstring
binds[].listeners[].routes[].policies.ai.promptGuard.response[].googleModelArmor.policies.backendAuth.aws.secretAccessKeystring
binds[].listeners[].routes[].policies.ai.promptGuard.response[].googleModelArmor.policies.backendAuth.aws.regionstring
binds[].listeners[].routes[].policies.ai.promptGuard.response[].googleModelArmor.policies.backendAuth.aws.sessionTokenstring
binds[].listeners[].routes[].policies.ai.promptGuard.response[].googleModelArmor.policies.backendAuth.azureobjectExactly one of explicitConfig, developerImplicit, or implicit may be set.
binds[].listeners[].routes[].policies.ai.promptGuard.response[].googleModelArmor.policies.backendAuth.azure.explicitConfigobjectExactly one of clientSecret, managedIdentity, or workloadIdentity may be set.
binds[].listeners[].routes[].policies.ai.promptGuard.response[].googleModelArmor.policies.backendAuth.azure.explicitConfig.clientSecretobject
binds[].listeners[].routes[].policies.ai.promptGuard.response[].googleModelArmor.policies.backendAuth.azure.explicitConfig.clientSecret.tenant_idstring
binds[].listeners[].routes[].policies.ai.promptGuard.response[].googleModelArmor.policies.backendAuth.azure.explicitConfig.clientSecret.client_idstring
binds[].listeners[].routes[].policies.ai.promptGuard.response[].googleModelArmor.policies.backendAuth.azure.explicitConfig.clientSecret.client_secretstring
binds[].listeners[].routes[].policies.ai.promptGuard.response[].googleModelArmor.policies.backendAuth.azure.explicitConfig.managedIdentityobject
binds[].listeners[].routes[].policies.ai.promptGuard.response[].googleModelArmor.policies.backendAuth.azure.explicitConfig.managedIdentity.userAssignedIdentityobject
binds[].listeners[].routes[].policies.ai.promptGuard.response[].googleModelArmor.policies.backendAuth.azure.explicitConfig.managedIdentity.userAssignedIdentity.clientIdstring
binds[].listeners[].routes[].policies.ai.promptGuard.response[].googleModelArmor.policies.backendAuth.azure.explicitConfig.managedIdentity.userAssignedIdentity.objectIdstring
binds[].listeners[].routes[].policies.ai.promptGuard.response[].googleModelArmor.policies.backendAuth.azure.explicitConfig.managedIdentity.userAssignedIdentity.resourceIdstring
binds[].listeners[].routes[].policies.ai.promptGuard.response[].googleModelArmor.policies.backendAuth.azure.explicitConfig.workloadIdentityobject
binds[].listeners[].routes[].policies.ai.promptGuard.response[].googleModelArmor.policies.backendAuth.azure.developerImplicitobject
binds[].listeners[].routes[].policies.ai.promptGuard.response[].googleModelArmor.policies.backendAuth.azure.implicitobject
binds[].listeners[].routes[].policies.ai.promptGuard.response[].googleModelArmor.policies.httpobjectSpecify HTTP settings for the backend
binds[].listeners[].routes[].policies.ai.promptGuard.response[].googleModelArmor.policies.http.versionstring
binds[].listeners[].routes[].policies.ai.promptGuard.response[].googleModelArmor.policies.http.requestTimeoutstring
binds[].listeners[].routes[].policies.ai.promptGuard.response[].googleModelArmor.policies.tcpobjectSpecify TCP settings for the backend
binds[].listeners[].routes[].policies.ai.promptGuard.response[].googleModelArmor.policies.tcp.keepalivesobject
binds[].listeners[].routes[].policies.ai.promptGuard.response[].googleModelArmor.policies.tcp.keepalives.enabledboolean
binds[].listeners[].routes[].policies.ai.promptGuard.response[].googleModelArmor.policies.tcp.keepalives.timestring
binds[].listeners[].routes[].policies.ai.promptGuard.response[].googleModelArmor.policies.tcp.keepalives.intervalstring
binds[].listeners[].routes[].policies.ai.promptGuard.response[].googleModelArmor.policies.tcp.keepalives.retriesinteger
binds[].listeners[].routes[].policies.ai.promptGuard.response[].googleModelArmor.policies.tcp.connectTimeoutobject
binds[].listeners[].routes[].policies.ai.promptGuard.response[].googleModelArmor.policies.tcp.connectTimeout.secsinteger
binds[].listeners[].routes[].policies.ai.promptGuard.response[].googleModelArmor.policies.tcp.connectTimeout.nanosinteger
binds[].listeners[].routes[].policies.ai.promptGuard.response[].googleModelArmor.policies.healthobjectHealth policy for backend outlier detection; evicts on unhealthy responses based on CEL condition and configurable duration.
binds[].listeners[].routes[].policies.ai.promptGuard.response[].googleModelArmor.policies.health.unhealthyExpressionstringCEL expression; true means unhealthy (evict). E.g. response.code >= 500.
When unset, any 5xx or connection failure is treated as unhealthy.
binds[].listeners[].routes[].policies.ai.promptGuard.response[].googleModelArmor.policies.health.evictionobjectLocal/config eviction sub-policy with duration as string; mirrors Eviction.
binds[].listeners[].routes[].policies.ai.promptGuard.response[].googleModelArmor.policies.health.eviction.durationstring
binds[].listeners[].routes[].policies.ai.promptGuard.response[].googleModelArmor.policies.health.eviction.restoreHealthnumber
binds[].listeners[].routes[].policies.ai.promptGuard.response[].googleModelArmor.policies.health.eviction.consecutiveFailuresinteger
binds[].listeners[].routes[].policies.ai.promptGuard.response[].googleModelArmor.policies.health.eviction.healthThresholdnumber
binds[].listeners[].routes[].policies.ai.promptGuard.response[].googleModelArmor.policies.backendTunnelobjectSpecify a tunnel to use when connecting to the backend
binds[].listeners[].routes[].policies.ai.promptGuard.response[].googleModelArmor.policies.backendTunnel.proxyobjectReference to the proxy address
Exactly one of service, host, or backend may be set.
binds[].listeners[].routes[].policies.ai.promptGuard.response[].googleModelArmor.policies.backendTunnel.proxy.serviceobject
binds[].listeners[].routes[].policies.ai.promptGuard.response[].googleModelArmor.policies.backendTunnel.proxy.service.nameobject
binds[].listeners[].routes[].policies.ai.promptGuard.response[].googleModelArmor.policies.backendTunnel.proxy.service.name.namespacestring
binds[].listeners[].routes[].policies.ai.promptGuard.response[].googleModelArmor.policies.backendTunnel.proxy.service.name.hostnamestring
binds[].listeners[].routes[].policies.ai.promptGuard.response[].googleModelArmor.policies.backendTunnel.proxy.service.portinteger
binds[].listeners[].routes[].policies.ai.promptGuard.response[].googleModelArmor.policies.backendTunnel.proxy.hoststringHostname or IP address
binds[].listeners[].routes[].policies.ai.promptGuard.response[].googleModelArmor.policies.backendTunnel.proxy.backendstringExplicit backend reference. Backend must be defined in the top level backends list
binds[].listeners[].routes[].policies.ai.promptGuard.response[].rejectionobject
binds[].listeners[].routes[].policies.ai.promptGuard.response[].rejection.bodyarray
binds[].listeners[].routes[].policies.ai.promptGuard.response[].rejection.statusinteger
binds[].listeners[].routes[].policies.ai.promptGuard.response[].rejection.headersobjectOptional headers to add, set, or remove from the rejection response
binds[].listeners[].routes[].policies.ai.promptGuard.response[].rejection.headers.addobject
binds[].listeners[].routes[].policies.ai.promptGuard.response[].rejection.headers.setobject
binds[].listeners[].routes[].policies.ai.promptGuard.response[].rejection.headers.remove[]string
binds[].listeners[].routes[].policies.ai.defaultsobject
binds[].listeners[].routes[].policies.ai.overridesobject
binds[].listeners[].routes[].policies.ai.transformationsobject
binds[].listeners[].routes[].policies.ai.promptsobject
binds[].listeners[].routes[].policies.ai.prompts.append[]object
binds[].listeners[].routes[].policies.ai.prompts.append[].rolestring
binds[].listeners[].routes[].policies.ai.prompts.append[].contentstring
binds[].listeners[].routes[].policies.ai.prompts.prepend[]object
binds[].listeners[].routes[].policies.ai.prompts.prepend[].rolestring
binds[].listeners[].routes[].policies.ai.prompts.prepend[].contentstring
binds[].listeners[].routes[].policies.ai.modelAliasesobject
binds[].listeners[].routes[].policies.ai.promptCachingobject
binds[].listeners[].routes[].policies.ai.promptCaching.cacheSystemboolean
binds[].listeners[].routes[].policies.ai.promptCaching.cacheMessagesboolean
binds[].listeners[].routes[].policies.ai.promptCaching.cacheToolsboolean
binds[].listeners[].routes[].policies.ai.promptCaching.minTokensinteger
binds[].listeners[].routes[].policies.ai.routesobject
binds[].listeners[].routes[].policies.backendTLSobjectSend TLS to the backend.
binds[].listeners[].routes[].policies.backendTLS.certstring
binds[].listeners[].routes[].policies.backendTLS.keystring
binds[].listeners[].routes[].policies.backendTLS.rootstring
binds[].listeners[].routes[].policies.backendTLS.hostnamestring
binds[].listeners[].routes[].policies.backendTLS.insecureboolean
binds[].listeners[].routes[].policies.backendTLS.insecureHostboolean
binds[].listeners[].routes[].policies.backendTLS.alpn[]string
binds[].listeners[].routes[].policies.backendTLS.subjectAltNames[]string
binds[].listeners[].routes[].policies.backendTunnelobjectTunnel to the backend.
binds[].listeners[].routes[].policies.backendTunnel.proxyobjectReference to the proxy address
Exactly one of service, host, or backend may be set.
binds[].listeners[].routes[].policies.backendTunnel.proxy.serviceobject
binds[].listeners[].routes[].policies.backendTunnel.proxy.service.nameobject
binds[].listeners[].routes[].policies.backendTunnel.proxy.service.name.namespacestring
binds[].listeners[].routes[].policies.backendTunnel.proxy.service.name.hostnamestring
binds[].listeners[].routes[].policies.backendTunnel.proxy.service.portinteger
binds[].listeners[].routes[].policies.backendTunnel.proxy.hoststringHostname or IP address
binds[].listeners[].routes[].policies.backendTunnel.proxy.backendstringExplicit backend reference. Backend must be defined in the top level backends list
binds[].listeners[].routes[].policies.backendAuthobjectAuthenticate to the backend.
binds[].listeners[].routes[].policies.backendAuth.passthroughobject
binds[].listeners[].routes[].policies.backendAuth.keyobject
binds[].listeners[].routes[].policies.backendAuth.key.filestring
binds[].listeners[].routes[].policies.backendAuth.gcpobject
binds[].listeners[].routes[].policies.backendAuth.gcp.typestring
binds[].listeners[].routes[].policies.backendAuth.gcp.audiencestringAudience for the token. If not set, the destination host will be used.
binds[].listeners[].routes[].policies.backendAuth.gcp.typestring
binds[].listeners[].routes[].policies.backendAuth.awsobject
binds[].listeners[].routes[].policies.backendAuth.aws.accessKeyIdstring
binds[].listeners[].routes[].policies.backendAuth.aws.secretAccessKeystring
binds[].listeners[].routes[].policies.backendAuth.aws.regionstring
binds[].listeners[].routes[].policies.backendAuth.aws.sessionTokenstring
binds[].listeners[].routes[].policies.backendAuth.azureobjectExactly one of explicitConfig, developerImplicit, or implicit may be set.
binds[].listeners[].routes[].policies.backendAuth.azure.explicitConfigobjectExactly one of clientSecret, managedIdentity, or workloadIdentity may be set.
binds[].listeners[].routes[].policies.backendAuth.azure.explicitConfig.clientSecretobject
binds[].listeners[].routes[].policies.backendAuth.azure.explicitConfig.clientSecret.tenant_idstring
binds[].listeners[].routes[].policies.backendAuth.azure.explicitConfig.clientSecret.client_idstring
binds[].listeners[].routes[].policies.backendAuth.azure.explicitConfig.clientSecret.client_secretstring
binds[].listeners[].routes[].policies.backendAuth.azure.explicitConfig.managedIdentityobject
binds[].listeners[].routes[].policies.backendAuth.azure.explicitConfig.managedIdentity.userAssignedIdentityobject
binds[].listeners[].routes[].policies.backendAuth.azure.explicitConfig.managedIdentity.userAssignedIdentity.clientIdstring
binds[].listeners[].routes[].policies.backendAuth.azure.explicitConfig.managedIdentity.userAssignedIdentity.objectIdstring
binds[].listeners[].routes[].policies.backendAuth.azure.explicitConfig.managedIdentity.userAssignedIdentity.resourceIdstring
binds[].listeners[].routes[].policies.backendAuth.azure.explicitConfig.workloadIdentityobject
binds[].listeners[].routes[].policies.backendAuth.azure.developerImplicitobject
binds[].listeners[].routes[].policies.backendAuth.azure.implicitobject
binds[].listeners[].routes[].policies.localRateLimit[]objectRate limit incoming requests. State is kept local.
binds[].listeners[].routes[].policies.localRateLimit[].maxTokensinteger
binds[].listeners[].routes[].policies.localRateLimit[].tokensPerFillinteger
binds[].listeners[].routes[].policies.localRateLimit[].fillIntervalstring
binds[].listeners[].routes[].policies.localRateLimit[].typestring
binds[].listeners[].routes[].policies.remoteRateLimitobjectRate limit incoming requests. State is managed by a remote server.
binds[].listeners[].routes[].policies.remoteRateLimit.serviceobject
binds[].listeners[].routes[].policies.remoteRateLimit.service.nameobject
binds[].listeners[].routes[].policies.remoteRateLimit.service.name.namespacestring
binds[].listeners[].routes[].policies.remoteRateLimit.service.name.hostnamestring
binds[].listeners[].routes[].policies.remoteRateLimit.service.portinteger
binds[].listeners[].routes[].policies.remoteRateLimit.hoststringHostname or IP address
binds[].listeners[].routes[].policies.remoteRateLimit.backendstringExplicit backend reference. Backend must be defined in the top level backends list
binds[].listeners[].routes[].policies.remoteRateLimit.domainstring
binds[].listeners[].routes[].policies.remoteRateLimit.policiesobjectPolicies to connect to the backend
binds[].listeners[].routes[].policies.remoteRateLimit.policies.requestHeaderModifierobjectHeaders to be modified in the request.
binds[].listeners[].routes[].policies.remoteRateLimit.policies.requestHeaderModifier.addobject
binds[].listeners[].routes[].policies.remoteRateLimit.policies.requestHeaderModifier.setobject
binds[].listeners[].routes[].policies.remoteRateLimit.policies.requestHeaderModifier.remove[]string
binds[].listeners[].routes[].policies.remoteRateLimit.policies.responseHeaderModifierobjectHeaders to be modified in the response.
binds[].listeners[].routes[].policies.remoteRateLimit.policies.responseHeaderModifier.addobject
binds[].listeners[].routes[].policies.remoteRateLimit.policies.responseHeaderModifier.setobject
binds[].listeners[].routes[].policies.remoteRateLimit.policies.responseHeaderModifier.remove[]string
binds[].listeners[].routes[].policies.remoteRateLimit.policies.requestRedirectobjectDirectly respond to the request with a redirect.
binds[].listeners[].routes[].policies.remoteRateLimit.policies.requestRedirect.schemestring
binds[].listeners[].routes[].policies.remoteRateLimit.policies.requestRedirect.authoritystring
binds[].listeners[].routes[].policies.remoteRateLimit.policies.requestRedirect.authority.fullstring
binds[].listeners[].routes[].policies.remoteRateLimit.policies.requestRedirect.authority.hoststring
binds[].listeners[].routes[].policies.remoteRateLimit.policies.requestRedirect.authority.portinteger
binds[].listeners[].routes[].policies.remoteRateLimit.policies.requestRedirect.pathobject
binds[].listeners[].routes[].policies.remoteRateLimit.policies.requestRedirect.path.fullstring
binds[].listeners[].routes[].policies.remoteRateLimit.policies.requestRedirect.path.prefixstring
binds[].listeners[].routes[].policies.remoteRateLimit.policies.requestRedirect.statusinteger
binds[].listeners[].routes[].policies.remoteRateLimit.policies.transformationsobjectModify requests and responses sent to and from the backend.
binds[].listeners[].routes[].policies.remoteRateLimit.policies.transformations.requestobject
binds[].listeners[].routes[].policies.remoteRateLimit.policies.transformations.request.addobject
binds[].listeners[].routes[].policies.remoteRateLimit.policies.transformations.request.setobject
binds[].listeners[].routes[].policies.remoteRateLimit.policies.transformations.request.remove[]string
binds[].listeners[].routes[].policies.remoteRateLimit.policies.transformations.request.bodystring
binds[].listeners[].routes[].policies.remoteRateLimit.policies.transformations.request.metadataobject
binds[].listeners[].routes[].policies.remoteRateLimit.policies.transformations.responseobject
binds[].listeners[].routes[].policies.remoteRateLimit.policies.transformations.response.addobject
binds[].listeners[].routes[].policies.remoteRateLimit.policies.transformations.response.setobject
binds[].listeners[].routes[].policies.remoteRateLimit.policies.transformations.response.remove[]string
binds[].listeners[].routes[].policies.remoteRateLimit.policies.transformations.response.bodystring
binds[].listeners[].routes[].policies.remoteRateLimit.policies.transformations.response.metadataobject
binds[].listeners[].routes[].policies.remoteRateLimit.policies.backendTLSobjectSend TLS to the backend.
binds[].listeners[].routes[].policies.remoteRateLimit.policies.backendTLS.certstring
binds[].listeners[].routes[].policies.remoteRateLimit.policies.backendTLS.keystring
binds[].listeners[].routes[].policies.remoteRateLimit.policies.backendTLS.rootstring
binds[].listeners[].routes[].policies.remoteRateLimit.policies.backendTLS.hostnamestring
binds[].listeners[].routes[].policies.remoteRateLimit.policies.backendTLS.insecureboolean
binds[].listeners[].routes[].policies.remoteRateLimit.policies.backendTLS.insecureHostboolean
binds[].listeners[].routes[].policies.remoteRateLimit.policies.backendTLS.alpn[]string
binds[].listeners[].routes[].policies.remoteRateLimit.policies.backendTLS.subjectAltNames[]string
binds[].listeners[].routes[].policies.remoteRateLimit.policies.backendAuthobjectAuthenticate to the backend.
binds[].listeners[].routes[].policies.remoteRateLimit.policies.backendAuth.passthroughobject
binds[].listeners[].routes[].policies.remoteRateLimit.policies.backendAuth.keyobject
binds[].listeners[].routes[].policies.remoteRateLimit.policies.backendAuth.key.filestring
binds[].listeners[].routes[].policies.remoteRateLimit.policies.backendAuth.gcpobject
binds[].listeners[].routes[].policies.remoteRateLimit.policies.backendAuth.gcp.typestring
binds[].listeners[].routes[].policies.remoteRateLimit.policies.backendAuth.gcp.audiencestringAudience for the token. If not set, the destination host will be used.
binds[].listeners[].routes[].policies.remoteRateLimit.policies.backendAuth.gcp.typestring
binds[].listeners[].routes[].policies.remoteRateLimit.policies.backendAuth.awsobject
binds[].listeners[].routes[].policies.remoteRateLimit.policies.backendAuth.aws.accessKeyIdstring
binds[].listeners[].routes[].policies.remoteRateLimit.policies.backendAuth.aws.secretAccessKeystring
binds[].listeners[].routes[].policies.remoteRateLimit.policies.backendAuth.aws.regionstring
binds[].listeners[].routes[].policies.remoteRateLimit.policies.backendAuth.aws.sessionTokenstring
binds[].listeners[].routes[].policies.remoteRateLimit.policies.backendAuth.azureobjectExactly one of explicitConfig, developerImplicit, or implicit may be set.
binds[].listeners[].routes[].policies.remoteRateLimit.policies.backendAuth.azure.explicitConfigobjectExactly one of clientSecret, managedIdentity, or workloadIdentity may be set.
binds[].listeners[].routes[].policies.remoteRateLimit.policies.backendAuth.azure.explicitConfig.clientSecretobject
binds[].listeners[].routes[].policies.remoteRateLimit.policies.backendAuth.azure.explicitConfig.clientSecret.tenant_idstring
binds[].listeners[].routes[].policies.remoteRateLimit.policies.backendAuth.azure.explicitConfig.clientSecret.client_idstring
binds[].listeners[].routes[].policies.remoteRateLimit.policies.backendAuth.azure.explicitConfig.clientSecret.client_secretstring
binds[].listeners[].routes[].policies.remoteRateLimit.policies.backendAuth.azure.explicitConfig.managedIdentityobject
binds[].listeners[].routes[].policies.remoteRateLimit.policies.backendAuth.azure.explicitConfig.managedIdentity.userAssignedIdentityobject
binds[].listeners[].routes[].policies.remoteRateLimit.policies.backendAuth.azure.explicitConfig.managedIdentity.userAssignedIdentity.clientIdstring
binds[].listeners[].routes[].policies.remoteRateLimit.policies.backendAuth.azure.explicitConfig.managedIdentity.userAssignedIdentity.objectIdstring
binds[].listeners[].routes[].policies.remoteRateLimit.policies.backendAuth.azure.explicitConfig.managedIdentity.userAssignedIdentity.resourceIdstring
binds[].listeners[].routes[].policies.remoteRateLimit.policies.backendAuth.azure.explicitConfig.workloadIdentityobject
binds[].listeners[].routes[].policies.remoteRateLimit.policies.backendAuth.azure.developerImplicitobject
binds[].listeners[].routes[].policies.remoteRateLimit.policies.backendAuth.azure.implicitobject
binds[].listeners[].routes[].policies.remoteRateLimit.policies.httpobjectSpecify HTTP settings for the backend
binds[].listeners[].routes[].policies.remoteRateLimit.policies.http.versionstring
binds[].listeners[].routes[].policies.remoteRateLimit.policies.http.requestTimeoutstring
binds[].listeners[].routes[].policies.remoteRateLimit.policies.tcpobjectSpecify TCP settings for the backend
binds[].listeners[].routes[].policies.remoteRateLimit.policies.tcp.keepalivesobject
binds[].listeners[].routes[].policies.remoteRateLimit.policies.tcp.keepalives.enabledboolean
binds[].listeners[].routes[].policies.remoteRateLimit.policies.tcp.keepalives.timestring
binds[].listeners[].routes[].policies.remoteRateLimit.policies.tcp.keepalives.intervalstring
binds[].listeners[].routes[].policies.remoteRateLimit.policies.tcp.keepalives.retriesinteger
binds[].listeners[].routes[].policies.remoteRateLimit.policies.tcp.connectTimeoutobject
binds[].listeners[].routes[].policies.remoteRateLimit.policies.tcp.connectTimeout.secsinteger
binds[].listeners[].routes[].policies.remoteRateLimit.policies.tcp.connectTimeout.nanosinteger
binds[].listeners[].routes[].policies.remoteRateLimit.policies.healthobjectHealth policy for backend outlier detection; evicts on unhealthy responses based on CEL condition and configurable duration.
binds[].listeners[].routes[].policies.remoteRateLimit.policies.health.unhealthyExpressionstringCEL expression; true means unhealthy (evict). E.g. response.code >= 500.
When unset, any 5xx or connection failure is treated as unhealthy.
binds[].listeners[].routes[].policies.remoteRateLimit.policies.health.evictionobjectLocal/config eviction sub-policy with duration as string; mirrors Eviction.
binds[].listeners[].routes[].policies.remoteRateLimit.policies.health.eviction.durationstring
binds[].listeners[].routes[].policies.remoteRateLimit.policies.health.eviction.restoreHealthnumber
binds[].listeners[].routes[].policies.remoteRateLimit.policies.health.eviction.consecutiveFailuresinteger
binds[].listeners[].routes[].policies.remoteRateLimit.policies.health.eviction.healthThresholdnumber
binds[].listeners[].routes[].policies.remoteRateLimit.policies.backendTunnelobjectSpecify a tunnel to use when connecting to the backend
binds[].listeners[].routes[].policies.remoteRateLimit.policies.backendTunnel.proxyobjectReference to the proxy address
Exactly one of service, host, or backend may be set.
binds[].listeners[].routes[].policies.remoteRateLimit.policies.backendTunnel.proxy.serviceobject
binds[].listeners[].routes[].policies.remoteRateLimit.policies.backendTunnel.proxy.service.nameobject
binds[].listeners[].routes[].policies.remoteRateLimit.policies.backendTunnel.proxy.service.name.namespacestring
binds[].listeners[].routes[].policies.remoteRateLimit.policies.backendTunnel.proxy.service.name.hostnamestring
binds[].listeners[].routes[].policies.remoteRateLimit.policies.backendTunnel.proxy.service.portinteger
binds[].listeners[].routes[].policies.remoteRateLimit.policies.backendTunnel.proxy.hoststringHostname or IP address
binds[].listeners[].routes[].policies.remoteRateLimit.policies.backendTunnel.proxy.backendstringExplicit backend reference. Backend must be defined in the top level backends list
binds[].listeners[].routes[].policies.remoteRateLimit.descriptors[]object
binds[].listeners[].routes[].policies.remoteRateLimit.descriptors[].entries[]object
binds[].listeners[].routes[].policies.remoteRateLimit.descriptors[].entries[].keystring
binds[].listeners[].routes[].policies.remoteRateLimit.descriptors[].entries[].valuestring
binds[].listeners[].routes[].policies.remoteRateLimit.descriptors[].typestring
binds[].listeners[].routes[].policies.remoteRateLimit.failureModestringBehavior when the remote rate limit service is unavailable or returns an error.
Defaults to failClosed, denying requests with a 500 status on service failure.
binds[].listeners[].routes[].policies.jwtAuthobjectAuthenticate incoming JWT requests.
binds[].listeners[].routes[].policies.jwtAuth.modestring
binds[].listeners[].routes[].policies.jwtAuth.providers[]object
binds[].listeners[].routes[].policies.jwtAuth.providers[].issuerstring
binds[].listeners[].routes[].policies.jwtAuth.providers[].audiences[]string
binds[].listeners[].routes[].policies.jwtAuth.providers[].jwksobject
binds[].listeners[].routes[].policies.jwtAuth.providers[].jwks.filestring
binds[].listeners[].routes[].policies.jwtAuth.providers[].jwks.urlstring
binds[].listeners[].routes[].policies.jwtAuth.providers[].jwtValidationOptionsobjectJWT validation options controlling which claims must be present in a token.

The required_claims set specifies which RFC 7519 registered claims must
exist in the token payload before validation proceeds. Only the following
values are recognized: exp, nbf, aud, iss, sub. Other registered
claims such as iat and jti are not enforced by the underlying
jsonwebtoken library and will be silently ignored.

This only enforces presence. Standard claims like exp and nbf
have their values validated independently (e.g., expiry is always checked
when the exp claim is present, regardless of this setting).

Defaults to ["exp"].
binds[].listeners[].routes[].policies.jwtAuth.providers[].jwtValidationOptions.requiredClaims[]stringClaims that must be present in the token before validation.
Only “exp”, “nbf”, “aud”, “iss”, “sub” are enforced; others
(including “iat” and “jti”) are ignored.
Defaults to [“exp”]. Use an empty list to require no claims.
binds[].listeners[].routes[].policies.jwtAuth.modestring
binds[].listeners[].routes[].policies.jwtAuth.issuerstring
binds[].listeners[].routes[].policies.jwtAuth.audiences[]string
binds[].listeners[].routes[].policies.jwtAuth.jwksobject
binds[].listeners[].routes[].policies.jwtAuth.jwks.filestring
binds[].listeners[].routes[].policies.jwtAuth.jwks.urlstring
binds[].listeners[].routes[].policies.jwtAuth.jwtValidationOptionsobjectJWT validation options controlling which claims must be present in a token.

The required_claims set specifies which RFC 7519 registered claims must
exist in the token payload before validation proceeds. Only the following
values are recognized: exp, nbf, aud, iss, sub. Other registered
claims such as iat and jti are not enforced by the underlying
jsonwebtoken library and will be silently ignored.

This only enforces presence. Standard claims like exp and nbf
have their values validated independently (e.g., expiry is always checked
when the exp claim is present, regardless of this setting).

Defaults to ["exp"].
binds[].listeners[].routes[].policies.jwtAuth.jwtValidationOptions.requiredClaims[]stringClaims that must be present in the token before validation.
Only “exp”, “nbf”, “aud”, “iss”, “sub” are enforced; others
(including “iat” and “jti”) are ignored.
Defaults to [“exp”]. Use an empty list to require no claims.
binds[].listeners[].routes[].policies.basicAuthobjectAuthenticate incoming requests using Basic Authentication with htpasswd.
binds[].listeners[].routes[].policies.basicAuth.htpasswdobject.htpasswd file contents/reference
binds[].listeners[].routes[].policies.basicAuth.htpasswd.filestring
binds[].listeners[].routes[].policies.basicAuth.realmstringRealm name for the WWW-Authenticate header
binds[].listeners[].routes[].policies.basicAuth.modestringValidation mode for basic authentication
binds[].listeners[].routes[].policies.apiKeyobjectAuthenticate incoming requests using API Keys
binds[].listeners[].routes[].policies.apiKey.keys[]objectList of API keys
binds[].listeners[].routes[].policies.apiKey.keys[].keystring
binds[].listeners[].routes[].policies.apiKey.keys[].metadataany
binds[].listeners[].routes[].policies.apiKey.modestringValidation mode for API keys
binds[].listeners[].routes[].policies.extAuthzobjectAuthenticate incoming requests by calling an external authorization server.
binds[].listeners[].routes[].policies.extAuthz.serviceobject
binds[].listeners[].routes[].policies.extAuthz.service.nameobject
binds[].listeners[].routes[].policies.extAuthz.service.name.namespacestring
binds[].listeners[].routes[].policies.extAuthz.service.name.hostnamestring
binds[].listeners[].routes[].policies.extAuthz.service.portinteger
binds[].listeners[].routes[].policies.extAuthz.hoststringHostname or IP address
binds[].listeners[].routes[].policies.extAuthz.backendstringExplicit backend reference. Backend must be defined in the top level backends list
binds[].listeners[].routes[].policies.extAuthz.policiesobjectPolicies to connect to the backend
binds[].listeners[].routes[].policies.extAuthz.policies.requestHeaderModifierobjectHeaders to be modified in the request.
binds[].listeners[].routes[].policies.extAuthz.policies.requestHeaderModifier.addobject
binds[].listeners[].routes[].policies.extAuthz.policies.requestHeaderModifier.setobject
binds[].listeners[].routes[].policies.extAuthz.policies.requestHeaderModifier.remove[]string
binds[].listeners[].routes[].policies.extAuthz.policies.responseHeaderModifierobjectHeaders to be modified in the response.
binds[].listeners[].routes[].policies.extAuthz.policies.responseHeaderModifier.addobject
binds[].listeners[].routes[].policies.extAuthz.policies.responseHeaderModifier.setobject
binds[].listeners[].routes[].policies.extAuthz.policies.responseHeaderModifier.remove[]string
binds[].listeners[].routes[].policies.extAuthz.policies.requestRedirectobjectDirectly respond to the request with a redirect.
binds[].listeners[].routes[].policies.extAuthz.policies.requestRedirect.schemestring
binds[].listeners[].routes[].policies.extAuthz.policies.requestRedirect.authoritystring
binds[].listeners[].routes[].policies.extAuthz.policies.requestRedirect.authority.fullstring
binds[].listeners[].routes[].policies.extAuthz.policies.requestRedirect.authority.hoststring
binds[].listeners[].routes[].policies.extAuthz.policies.requestRedirect.authority.portinteger
binds[].listeners[].routes[].policies.extAuthz.policies.requestRedirect.pathobject
binds[].listeners[].routes[].policies.extAuthz.policies.requestRedirect.path.fullstring
binds[].listeners[].routes[].policies.extAuthz.policies.requestRedirect.path.prefixstring
binds[].listeners[].routes[].policies.extAuthz.policies.requestRedirect.statusinteger
binds[].listeners[].routes[].policies.extAuthz.policies.transformationsobjectModify requests and responses sent to and from the backend.
binds[].listeners[].routes[].policies.extAuthz.policies.transformations.requestobject
binds[].listeners[].routes[].policies.extAuthz.policies.transformations.request.addobject
binds[].listeners[].routes[].policies.extAuthz.policies.transformations.request.setobject
binds[].listeners[].routes[].policies.extAuthz.policies.transformations.request.remove[]string
binds[].listeners[].routes[].policies.extAuthz.policies.transformations.request.bodystring
binds[].listeners[].routes[].policies.extAuthz.policies.transformations.request.metadataobject
binds[].listeners[].routes[].policies.extAuthz.policies.transformations.responseobject
binds[].listeners[].routes[].policies.extAuthz.policies.transformations.response.addobject
binds[].listeners[].routes[].policies.extAuthz.policies.transformations.response.setobject
binds[].listeners[].routes[].policies.extAuthz.policies.transformations.response.remove[]string
binds[].listeners[].routes[].policies.extAuthz.policies.transformations.response.bodystring
binds[].listeners[].routes[].policies.extAuthz.policies.transformations.response.metadataobject
binds[].listeners[].routes[].policies.extAuthz.policies.backendTLSobjectSend TLS to the backend.
binds[].listeners[].routes[].policies.extAuthz.policies.backendTLS.certstring
binds[].listeners[].routes[].policies.extAuthz.policies.backendTLS.keystring
binds[].listeners[].routes[].policies.extAuthz.policies.backendTLS.rootstring
binds[].listeners[].routes[].policies.extAuthz.policies.backendTLS.hostnamestring
binds[].listeners[].routes[].policies.extAuthz.policies.backendTLS.insecureboolean
binds[].listeners[].routes[].policies.extAuthz.policies.backendTLS.insecureHostboolean
binds[].listeners[].routes[].policies.extAuthz.policies.backendTLS.alpn[]string
binds[].listeners[].routes[].policies.extAuthz.policies.backendTLS.subjectAltNames[]string
binds[].listeners[].routes[].policies.extAuthz.policies.backendAuthobjectAuthenticate to the backend.
binds[].listeners[].routes[].policies.extAuthz.policies.backendAuth.passthroughobject
binds[].listeners[].routes[].policies.extAuthz.policies.backendAuth.keyobject
binds[].listeners[].routes[].policies.extAuthz.policies.backendAuth.key.filestring
binds[].listeners[].routes[].policies.extAuthz.policies.backendAuth.gcpobject
binds[].listeners[].routes[].policies.extAuthz.policies.backendAuth.gcp.typestring
binds[].listeners[].routes[].policies.extAuthz.policies.backendAuth.gcp.audiencestringAudience for the token. If not set, the destination host will be used.
binds[].listeners[].routes[].policies.extAuthz.policies.backendAuth.gcp.typestring
binds[].listeners[].routes[].policies.extAuthz.policies.backendAuth.awsobject
binds[].listeners[].routes[].policies.extAuthz.policies.backendAuth.aws.accessKeyIdstring
binds[].listeners[].routes[].policies.extAuthz.policies.backendAuth.aws.secretAccessKeystring
binds[].listeners[].routes[].policies.extAuthz.policies.backendAuth.aws.regionstring
binds[].listeners[].routes[].policies.extAuthz.policies.backendAuth.aws.sessionTokenstring
binds[].listeners[].routes[].policies.extAuthz.policies.backendAuth.azureobjectExactly one of explicitConfig, developerImplicit, or implicit may be set.
binds[].listeners[].routes[].policies.extAuthz.policies.backendAuth.azure.explicitConfigobjectExactly one of clientSecret, managedIdentity, or workloadIdentity may be set.
binds[].listeners[].routes[].policies.extAuthz.policies.backendAuth.azure.explicitConfig.clientSecretobject
binds[].listeners[].routes[].policies.extAuthz.policies.backendAuth.azure.explicitConfig.clientSecret.tenant_idstring
binds[].listeners[].routes[].policies.extAuthz.policies.backendAuth.azure.explicitConfig.clientSecret.client_idstring
binds[].listeners[].routes[].policies.extAuthz.policies.backendAuth.azure.explicitConfig.clientSecret.client_secretstring
binds[].listeners[].routes[].policies.extAuthz.policies.backendAuth.azure.explicitConfig.managedIdentityobject
binds[].listeners[].routes[].policies.extAuthz.policies.backendAuth.azure.explicitConfig.managedIdentity.userAssignedIdentityobject
binds[].listeners[].routes[].policies.extAuthz.policies.backendAuth.azure.explicitConfig.managedIdentity.userAssignedIdentity.clientIdstring
binds[].listeners[].routes[].policies.extAuthz.policies.backendAuth.azure.explicitConfig.managedIdentity.userAssignedIdentity.objectIdstring
binds[].listeners[].routes[].policies.extAuthz.policies.backendAuth.azure.explicitConfig.managedIdentity.userAssignedIdentity.resourceIdstring
binds[].listeners[].routes[].policies.extAuthz.policies.backendAuth.azure.explicitConfig.workloadIdentityobject
binds[].listeners[].routes[].policies.extAuthz.policies.backendAuth.azure.developerImplicitobject
binds[].listeners[].routes[].policies.extAuthz.policies.backendAuth.azure.implicitobject
binds[].listeners[].routes[].policies.extAuthz.policies.httpobjectSpecify HTTP settings for the backend
binds[].listeners[].routes[].policies.extAuthz.policies.http.versionstring
binds[].listeners[].routes[].policies.extAuthz.policies.http.requestTimeoutstring
binds[].listeners[].routes[].policies.extAuthz.policies.tcpobjectSpecify TCP settings for the backend
binds[].listeners[].routes[].policies.extAuthz.policies.tcp.keepalivesobject
binds[].listeners[].routes[].policies.extAuthz.policies.tcp.keepalives.enabledboolean
binds[].listeners[].routes[].policies.extAuthz.policies.tcp.keepalives.timestring
binds[].listeners[].routes[].policies.extAuthz.policies.tcp.keepalives.intervalstring
binds[].listeners[].routes[].policies.extAuthz.policies.tcp.keepalives.retriesinteger
binds[].listeners[].routes[].policies.extAuthz.policies.tcp.connectTimeoutobject
binds[].listeners[].routes[].policies.extAuthz.policies.tcp.connectTimeout.secsinteger
binds[].listeners[].routes[].policies.extAuthz.policies.tcp.connectTimeout.nanosinteger
binds[].listeners[].routes[].policies.extAuthz.policies.healthobjectHealth policy for backend outlier detection; evicts on unhealthy responses based on CEL condition and configurable duration.
binds[].listeners[].routes[].policies.extAuthz.policies.health.unhealthyExpressionstringCEL expression; true means unhealthy (evict). E.g. response.code >= 500.
When unset, any 5xx or connection failure is treated as unhealthy.
binds[].listeners[].routes[].policies.extAuthz.policies.health.evictionobjectLocal/config eviction sub-policy with duration as string; mirrors Eviction.
binds[].listeners[].routes[].policies.extAuthz.policies.health.eviction.durationstring
binds[].listeners[].routes[].policies.extAuthz.policies.health.eviction.restoreHealthnumber
binds[].listeners[].routes[].policies.extAuthz.policies.health.eviction.consecutiveFailuresinteger
binds[].listeners[].routes[].policies.extAuthz.policies.health.eviction.healthThresholdnumber
binds[].listeners[].routes[].policies.extAuthz.policies.backendTunnelobjectSpecify a tunnel to use when connecting to the backend
binds[].listeners[].routes[].policies.extAuthz.policies.backendTunnel.proxyobjectReference to the proxy address
Exactly one of service, host, or backend may be set.
binds[].listeners[].routes[].policies.extAuthz.policies.backendTunnel.proxy.serviceobject
binds[].listeners[].routes[].policies.extAuthz.policies.backendTunnel.proxy.service.nameobject
binds[].listeners[].routes[].policies.extAuthz.policies.backendTunnel.proxy.service.name.namespacestring
binds[].listeners[].routes[].policies.extAuthz.policies.backendTunnel.proxy.service.name.hostnamestring
binds[].listeners[].routes[].policies.extAuthz.policies.backendTunnel.proxy.service.portinteger
binds[].listeners[].routes[].policies.extAuthz.policies.backendTunnel.proxy.hoststringHostname or IP address
binds[].listeners[].routes[].policies.extAuthz.policies.backendTunnel.proxy.backendstringExplicit backend reference. Backend must be defined in the top level backends list
binds[].listeners[].routes[].policies.extAuthz.protocolobjectThe ext_authz protocol to use. Unless you need to integrate with an HTTP-only server, gRPC is recommended.
Exactly one of grpc or http may be set.
binds[].listeners[].routes[].policies.extAuthz.protocol.grpcobject
binds[].listeners[].routes[].policies.extAuthz.protocol.grpc.contextobjectAdditional context to send to the authorization service.
This maps to the context_extensions field of the request, and only allows static values.
binds[].listeners[].routes[].policies.extAuthz.protocol.grpc.metadataobjectAdditional metadata to send to the authorization service.
This maps to the metadata_context.filter_metadata field of the request, and allows dynamic CEL expressions.
If unset, by default the envoy.filters.http.jwt_authn key is set if the JWT policy is used as well, for compatibility.
binds[].listeners[].routes[].policies.extAuthz.protocol.httpobject
binds[].listeners[].routes[].policies.extAuthz.protocol.http.pathstring
binds[].listeners[].routes[].policies.extAuthz.protocol.http.redirectstringWhen using the HTTP protocol, and the server returns unauthorized, redirect to the URL resolved by
the provided expression rather than directly returning the error.
binds[].listeners[].routes[].policies.extAuthz.protocol.http.includeResponseHeaders[]stringSpecific headers from the authorization response will be copied into the request to the backend.
binds[].listeners[].routes[].policies.extAuthz.protocol.http.addRequestHeadersobjectSpecific headers to add in the authorization request (empty = all headers), based on the expression
binds[].listeners[].routes[].policies.extAuthz.protocol.http.metadataobjectMetadata to include under the extauthz variable, based on the authorization response.
binds[].listeners[].routes[].policies.extAuthz.failureModestringBehavior when the authorization service is unavailable or returns an error
binds[].listeners[].routes[].policies.extAuthz.failureMode.denyWithStatusinteger
binds[].listeners[].routes[].policies.extAuthz.includeRequestHeaders[]stringSpecific headers to include in the authorization request.
If unset, the gRPC protocol sends all request headers. The HTTP protocol sends only ‘Authorization’.
binds[].listeners[].routes[].policies.extAuthz.includeRequestBodyobjectOptions for including the request body in the authorization request
binds[].listeners[].routes[].policies.extAuthz.includeRequestBody.maxRequestBytesintegerMaximum size of request body to buffer (default: 8192)
binds[].listeners[].routes[].policies.extAuthz.includeRequestBody.allowPartialMessagebooleanIf true, send partial body when max_request_bytes is reached
binds[].listeners[].routes[].policies.extAuthz.includeRequestBody.packAsBytesbooleanIf true, pack body as raw bytes in gRPC
binds[].listeners[].routes[].policies.extProcobjectExtend agentgateway with an external processor
binds[].listeners[].routes[].policies.extProc.serviceobject
binds[].listeners[].routes[].policies.extProc.service.nameobject
binds[].listeners[].routes[].policies.extProc.service.name.namespacestring
binds[].listeners[].routes[].policies.extProc.service.name.hostnamestring
binds[].listeners[].routes[].policies.extProc.service.portinteger
binds[].listeners[].routes[].policies.extProc.hoststringHostname or IP address
binds[].listeners[].routes[].policies.extProc.backendstringExplicit backend reference. Backend must be defined in the top level backends list
binds[].listeners[].routes[].policies.extProc.policiesobjectPolicies to connect to the backend
binds[].listeners[].routes[].policies.extProc.policies.requestHeaderModifierobjectHeaders to be modified in the request.
binds[].listeners[].routes[].policies.extProc.policies.requestHeaderModifier.addobject
binds[].listeners[].routes[].policies.extProc.policies.requestHeaderModifier.setobject
binds[].listeners[].routes[].policies.extProc.policies.requestHeaderModifier.remove[]string
binds[].listeners[].routes[].policies.extProc.policies.responseHeaderModifierobjectHeaders to be modified in the response.
binds[].listeners[].routes[].policies.extProc.policies.responseHeaderModifier.addobject
binds[].listeners[].routes[].policies.extProc.policies.responseHeaderModifier.setobject
binds[].listeners[].routes[].policies.extProc.policies.responseHeaderModifier.remove[]string
binds[].listeners[].routes[].policies.extProc.policies.requestRedirectobjectDirectly respond to the request with a redirect.
binds[].listeners[].routes[].policies.extProc.policies.requestRedirect.schemestring
binds[].listeners[].routes[].policies.extProc.policies.requestRedirect.authoritystring
binds[].listeners[].routes[].policies.extProc.policies.requestRedirect.authority.fullstring
binds[].listeners[].routes[].policies.extProc.policies.requestRedirect.authority.hoststring
binds[].listeners[].routes[].policies.extProc.policies.requestRedirect.authority.portinteger
binds[].listeners[].routes[].policies.extProc.policies.requestRedirect.pathobject
binds[].listeners[].routes[].policies.extProc.policies.requestRedirect.path.fullstring
binds[].listeners[].routes[].policies.extProc.policies.requestRedirect.path.prefixstring
binds[].listeners[].routes[].policies.extProc.policies.requestRedirect.statusinteger
binds[].listeners[].routes[].policies.extProc.policies.transformationsobjectModify requests and responses sent to and from the backend.
binds[].listeners[].routes[].policies.extProc.policies.transformations.requestobject
binds[].listeners[].routes[].policies.extProc.policies.transformations.request.addobject
binds[].listeners[].routes[].policies.extProc.policies.transformations.request.setobject
binds[].listeners[].routes[].policies.extProc.policies.transformations.request.remove[]string
binds[].listeners[].routes[].policies.extProc.policies.transformations.request.bodystring
binds[].listeners[].routes[].policies.extProc.policies.transformations.request.metadataobject
binds[].listeners[].routes[].policies.extProc.policies.transformations.responseobject
binds[].listeners[].routes[].policies.extProc.policies.transformations.response.addobject
binds[].listeners[].routes[].policies.extProc.policies.transformations.response.setobject
binds[].listeners[].routes[].policies.extProc.policies.transformations.response.remove[]string
binds[].listeners[].routes[].policies.extProc.policies.transformations.response.bodystring
binds[].listeners[].routes[].policies.extProc.policies.transformations.response.metadataobject
binds[].listeners[].routes[].policies.extProc.policies.backendTLSobjectSend TLS to the backend.
binds[].listeners[].routes[].policies.extProc.policies.backendTLS.certstring
binds[].listeners[].routes[].policies.extProc.policies.backendTLS.keystring
binds[].listeners[].routes[].policies.extProc.policies.backendTLS.rootstring
binds[].listeners[].routes[].policies.extProc.policies.backendTLS.hostnamestring
binds[].listeners[].routes[].policies.extProc.policies.backendTLS.insecureboolean
binds[].listeners[].routes[].policies.extProc.policies.backendTLS.insecureHostboolean
binds[].listeners[].routes[].policies.extProc.policies.backendTLS.alpn[]string
binds[].listeners[].routes[].policies.extProc.policies.backendTLS.subjectAltNames[]string
binds[].listeners[].routes[].policies.extProc.policies.backendAuthobjectAuthenticate to the backend.
binds[].listeners[].routes[].policies.extProc.policies.backendAuth.passthroughobject
binds[].listeners[].routes[].policies.extProc.policies.backendAuth.keyobject
binds[].listeners[].routes[].policies.extProc.policies.backendAuth.key.filestring
binds[].listeners[].routes[].policies.extProc.policies.backendAuth.gcpobject
binds[].listeners[].routes[].policies.extProc.policies.backendAuth.gcp.typestring
binds[].listeners[].routes[].policies.extProc.policies.backendAuth.gcp.audiencestringAudience for the token. If not set, the destination host will be used.
binds[].listeners[].routes[].policies.extProc.policies.backendAuth.gcp.typestring
binds[].listeners[].routes[].policies.extProc.policies.backendAuth.awsobject
binds[].listeners[].routes[].policies.extProc.policies.backendAuth.aws.accessKeyIdstring
binds[].listeners[].routes[].policies.extProc.policies.backendAuth.aws.secretAccessKeystring
binds[].listeners[].routes[].policies.extProc.policies.backendAuth.aws.regionstring
binds[].listeners[].routes[].policies.extProc.policies.backendAuth.aws.sessionTokenstring
binds[].listeners[].routes[].policies.extProc.policies.backendAuth.azureobjectExactly one of explicitConfig, developerImplicit, or implicit may be set.
binds[].listeners[].routes[].policies.extProc.policies.backendAuth.azure.explicitConfigobjectExactly one of clientSecret, managedIdentity, or workloadIdentity may be set.
binds[].listeners[].routes[].policies.extProc.policies.backendAuth.azure.explicitConfig.clientSecretobject
binds[].listeners[].routes[].policies.extProc.policies.backendAuth.azure.explicitConfig.clientSecret.tenant_idstring
binds[].listeners[].routes[].policies.extProc.policies.backendAuth.azure.explicitConfig.clientSecret.client_idstring
binds[].listeners[].routes[].policies.extProc.policies.backendAuth.azure.explicitConfig.clientSecret.client_secretstring
binds[].listeners[].routes[].policies.extProc.policies.backendAuth.azure.explicitConfig.managedIdentityobject
binds[].listeners[].routes[].policies.extProc.policies.backendAuth.azure.explicitConfig.managedIdentity.userAssignedIdentityobject
binds[].listeners[].routes[].policies.extProc.policies.backendAuth.azure.explicitConfig.managedIdentity.userAssignedIdentity.clientIdstring
binds[].listeners[].routes[].policies.extProc.policies.backendAuth.azure.explicitConfig.managedIdentity.userAssignedIdentity.objectIdstring
binds[].listeners[].routes[].policies.extProc.policies.backendAuth.azure.explicitConfig.managedIdentity.userAssignedIdentity.resourceIdstring
binds[].listeners[].routes[].policies.extProc.policies.backendAuth.azure.explicitConfig.workloadIdentityobject
binds[].listeners[].routes[].policies.extProc.policies.backendAuth.azure.developerImplicitobject
binds[].listeners[].routes[].policies.extProc.policies.backendAuth.azure.implicitobject
binds[].listeners[].routes[].policies.extProc.policies.httpobjectSpecify HTTP settings for the backend
binds[].listeners[].routes[].policies.extProc.policies.http.versionstring
binds[].listeners[].routes[].policies.extProc.policies.http.requestTimeoutstring
binds[].listeners[].routes[].policies.extProc.policies.tcpobjectSpecify TCP settings for the backend
binds[].listeners[].routes[].policies.extProc.policies.tcp.keepalivesobject
binds[].listeners[].routes[].policies.extProc.policies.tcp.keepalives.enabledboolean
binds[].listeners[].routes[].policies.extProc.policies.tcp.keepalives.timestring
binds[].listeners[].routes[].policies.extProc.policies.tcp.keepalives.intervalstring
binds[].listeners[].routes[].policies.extProc.policies.tcp.keepalives.retriesinteger
binds[].listeners[].routes[].policies.extProc.policies.tcp.connectTimeoutobject
binds[].listeners[].routes[].policies.extProc.policies.tcp.connectTimeout.secsinteger
binds[].listeners[].routes[].policies.extProc.policies.tcp.connectTimeout.nanosinteger
binds[].listeners[].routes[].policies.extProc.policies.healthobjectHealth policy for backend outlier detection; evicts on unhealthy responses based on CEL condition and configurable duration.
binds[].listeners[].routes[].policies.extProc.policies.health.unhealthyExpressionstringCEL expression; true means unhealthy (evict). E.g. response.code >= 500.
When unset, any 5xx or connection failure is treated as unhealthy.
binds[].listeners[].routes[].policies.extProc.policies.health.evictionobjectLocal/config eviction sub-policy with duration as string; mirrors Eviction.
binds[].listeners[].routes[].policies.extProc.policies.health.eviction.durationstring
binds[].listeners[].routes[].policies.extProc.policies.health.eviction.restoreHealthnumber
binds[].listeners[].routes[].policies.extProc.policies.health.eviction.consecutiveFailuresinteger
binds[].listeners[].routes[].policies.extProc.policies.health.eviction.healthThresholdnumber
binds[].listeners[].routes[].policies.extProc.policies.backendTunnelobjectSpecify a tunnel to use when connecting to the backend
binds[].listeners[].routes[].policies.extProc.policies.backendTunnel.proxyobjectReference to the proxy address
Exactly one of service, host, or backend may be set.
binds[].listeners[].routes[].policies.extProc.policies.backendTunnel.proxy.serviceobject
binds[].listeners[].routes[].policies.extProc.policies.backendTunnel.proxy.service.nameobject
binds[].listeners[].routes[].policies.extProc.policies.backendTunnel.proxy.service.name.namespacestring
binds[].listeners[].routes[].policies.extProc.policies.backendTunnel.proxy.service.name.hostnamestring
binds[].listeners[].routes[].policies.extProc.policies.backendTunnel.proxy.service.portinteger
binds[].listeners[].routes[].policies.extProc.policies.backendTunnel.proxy.hoststringHostname or IP address
binds[].listeners[].routes[].policies.extProc.policies.backendTunnel.proxy.backendstringExplicit backend reference. Backend must be defined in the top level backends list
binds[].listeners[].routes[].policies.extProc.failureModestringBehavior when the ext_proc service is unavailable or returns an error
binds[].listeners[].routes[].policies.extProc.metadataContextobjectAdditional metadata to send to the external processing service.
Maps to the metadata_context.filter_metadata field in ProcessingRequest, and allows dynamic CEL expressions.
binds[].listeners[].routes[].policies.extProc.requestAttributesobjectMaps to the request attributes field in ProcessingRequest, and allows dynamic CEL expressions.
binds[].listeners[].routes[].policies.extProc.responseAttributesobjectMaps to the response attributes field in ProcessingRequest, and allows dynamic CEL expressions.
binds[].listeners[].routes[].policies.transformationsobjectModify requests and responses
binds[].listeners[].routes[].policies.transformations.requestobject
binds[].listeners[].routes[].policies.transformations.request.addobject
binds[].listeners[].routes[].policies.transformations.request.setobject
binds[].listeners[].routes[].policies.transformations.request.remove[]string
binds[].listeners[].routes[].policies.transformations.request.bodystring
binds[].listeners[].routes[].policies.transformations.request.metadataobject
binds[].listeners[].routes[].policies.transformations.responseobject
binds[].listeners[].routes[].policies.transformations.response.addobject
binds[].listeners[].routes[].policies.transformations.response.setobject
binds[].listeners[].routes[].policies.transformations.response.remove[]string
binds[].listeners[].routes[].policies.transformations.response.bodystring
binds[].listeners[].routes[].policies.transformations.response.metadataobject
binds[].listeners[].routes[].policies.csrfobjectHandle CSRF protection by validating request origins against configured allowed origins.
binds[].listeners[].routes[].policies.csrf.additionalOrigins[]string
binds[].listeners[].routes[].policies.timeoutobjectTimeout requests that exceed the configured duration.
binds[].listeners[].routes[].policies.timeout.requestTimeoutstring
binds[].listeners[].routes[].policies.timeout.backendRequestTimeoutstring
binds[].listeners[].routes[].policies.retryobjectRetry matching requests.
binds[].listeners[].routes[].policies.retry.attemptsinteger
binds[].listeners[].routes[].policies.retry.backoffstring
binds[].listeners[].routes[].policies.retry.codes[]integer
binds[].listeners[].routes[].backends[]object
binds[].listeners[].routes[].backends[].serviceobject
binds[].listeners[].routes[].backends[].service.nameobject
binds[].listeners[].routes[].backends[].service.name.namespacestring
binds[].listeners[].routes[].backends[].service.name.hostnamestring
binds[].listeners[].routes[].backends[].service.portinteger
binds[].listeners[].routes[].backends[].backendstring
binds[].listeners[].routes[].backends[].hoststring
binds[].listeners[].routes[].backends[].dynamicobject
binds[].listeners[].routes[].backends[].mcpobject
binds[].listeners[].routes[].backends[].mcp.targets[]object
binds[].listeners[].routes[].backends[].mcp.targets[].sseobject
binds[].listeners[].routes[].backends[].mcp.targets[].sse.hoststring
binds[].listeners[].routes[].backends[].mcp.targets[].sse.portinteger
binds[].listeners[].routes[].backends[].mcp.targets[].sse.pathstring
binds[].listeners[].routes[].backends[].mcp.targets[].mcpobject
binds[].listeners[].routes[].backends[].mcp.targets[].mcp.hoststring
binds[].listeners[].routes[].backends[].mcp.targets[].mcp.portinteger
binds[].listeners[].routes[].backends[].mcp.targets[].mcp.pathstring
binds[].listeners[].routes[].backends[].mcp.targets[].stdioobject
binds[].listeners[].routes[].backends[].mcp.targets[].stdio.cmdstring
binds[].listeners[].routes[].backends[].mcp.targets[].stdio.args[]string
binds[].listeners[].routes[].backends[].mcp.targets[].stdio.envobject
binds[].listeners[].routes[].backends[].mcp.targets[].openapiobject
binds[].listeners[].routes[].backends[].mcp.targets[].openapi.hoststring
binds[].listeners[].routes[].backends[].mcp.targets[].openapi.portinteger
binds[].listeners[].routes[].backends[].mcp.targets[].openapi.pathstring
binds[].listeners[].routes[].backends[].mcp.targets[].openapi.schemaobject
binds[].listeners[].routes[].backends[].mcp.targets[].openapi.schema.filestring
binds[].listeners[].routes[].backends[].mcp.targets[].openapi.schema.urlstring
binds[].listeners[].routes[].backends[].mcp.targets[].namestring
binds[].listeners[].routes[].backends[].mcp.targets[].policiesobject
binds[].listeners[].routes[].backends[].mcp.targets[].policies.requestHeaderModifierobjectHeaders to be modified in the request.
binds[].listeners[].routes[].backends[].mcp.targets[].policies.requestHeaderModifier.addobject
binds[].listeners[].routes[].backends[].mcp.targets[].policies.requestHeaderModifier.setobject
binds[].listeners[].routes[].backends[].mcp.targets[].policies.requestHeaderModifier.remove[]string
binds[].listeners[].routes[].backends[].mcp.targets[].policies.responseHeaderModifierobjectHeaders to be modified in the response.
binds[].listeners[].routes[].backends[].mcp.targets[].policies.responseHeaderModifier.addobject
binds[].listeners[].routes[].backends[].mcp.targets[].policies.responseHeaderModifier.setobject
binds[].listeners[].routes[].backends[].mcp.targets[].policies.responseHeaderModifier.remove[]string
binds[].listeners[].routes[].backends[].mcp.targets[].policies.requestRedirectobjectDirectly respond to the request with a redirect.
binds[].listeners[].routes[].backends[].mcp.targets[].policies.requestRedirect.schemestring
binds[].listeners[].routes[].backends[].mcp.targets[].policies.requestRedirect.authoritystring
binds[].listeners[].routes[].backends[].mcp.targets[].policies.requestRedirect.authority.fullstring
binds[].listeners[].routes[].backends[].mcp.targets[].policies.requestRedirect.authority.hoststring
binds[].listeners[].routes[].backends[].mcp.targets[].policies.requestRedirect.authority.portinteger
binds[].listeners[].routes[].backends[].mcp.targets[].policies.requestRedirect.pathobject
binds[].listeners[].routes[].backends[].mcp.targets[].policies.requestRedirect.path.fullstring
binds[].listeners[].routes[].backends[].mcp.targets[].policies.requestRedirect.path.prefixstring
binds[].listeners[].routes[].backends[].mcp.targets[].policies.requestRedirect.statusinteger
binds[].listeners[].routes[].backends[].mcp.targets[].policies.transformationsobjectModify requests and responses sent to and from the backend.
binds[].listeners[].routes[].backends[].mcp.targets[].policies.transformations.requestobject
binds[].listeners[].routes[].backends[].mcp.targets[].policies.transformations.request.addobject
binds[].listeners[].routes[].backends[].mcp.targets[].policies.transformations.request.setobject
binds[].listeners[].routes[].backends[].mcp.targets[].policies.transformations.request.remove[]string
binds[].listeners[].routes[].backends[].mcp.targets[].policies.transformations.request.bodystring
binds[].listeners[].routes[].backends[].mcp.targets[].policies.transformations.request.metadataobject
binds[].listeners[].routes[].backends[].mcp.targets[].policies.transformations.responseobject
binds[].listeners[].routes[].backends[].mcp.targets[].policies.transformations.response.addobject
binds[].listeners[].routes[].backends[].mcp.targets[].policies.transformations.response.setobject
binds[].listeners[].routes[].backends[].mcp.targets[].policies.transformations.response.remove[]string
binds[].listeners[].routes[].backends[].mcp.targets[].policies.transformations.response.bodystring
binds[].listeners[].routes[].backends[].mcp.targets[].policies.transformations.response.metadataobject
binds[].listeners[].routes[].backends[].mcp.targets[].policies.backendTLSobjectSend TLS to the backend.
binds[].listeners[].routes[].backends[].mcp.targets[].policies.backendTLS.certstring
binds[].listeners[].routes[].backends[].mcp.targets[].policies.backendTLS.keystring
binds[].listeners[].routes[].backends[].mcp.targets[].policies.backendTLS.rootstring
binds[].listeners[].routes[].backends[].mcp.targets[].policies.backendTLS.hostnamestring
binds[].listeners[].routes[].backends[].mcp.targets[].policies.backendTLS.insecureboolean
binds[].listeners[].routes[].backends[].mcp.targets[].policies.backendTLS.insecureHostboolean
binds[].listeners[].routes[].backends[].mcp.targets[].policies.backendTLS.alpn[]string
binds[].listeners[].routes[].backends[].mcp.targets[].policies.backendTLS.subjectAltNames[]string
binds[].listeners[].routes[].backends[].mcp.targets[].policies.backendAuthobjectAuthenticate to the backend.
binds[].listeners[].routes[].backends[].mcp.targets[].policies.backendAuth.passthroughobject
binds[].listeners[].routes[].backends[].mcp.targets[].policies.backendAuth.keyobject
binds[].listeners[].routes[].backends[].mcp.targets[].policies.backendAuth.key.filestring
binds[].listeners[].routes[].backends[].mcp.targets[].policies.backendAuth.gcpobject
binds[].listeners[].routes[].backends[].mcp.targets[].policies.backendAuth.gcp.typestring
binds[].listeners[].routes[].backends[].mcp.targets[].policies.backendAuth.gcp.audiencestringAudience for the token. If not set, the destination host will be used.
binds[].listeners[].routes[].backends[].mcp.targets[].policies.backendAuth.gcp.typestring
binds[].listeners[].routes[].backends[].mcp.targets[].policies.backendAuth.awsobject
binds[].listeners[].routes[].backends[].mcp.targets[].policies.backendAuth.aws.accessKeyIdstring
binds[].listeners[].routes[].backends[].mcp.targets[].policies.backendAuth.aws.secretAccessKeystring
binds[].listeners[].routes[].backends[].mcp.targets[].policies.backendAuth.aws.regionstring
binds[].listeners[].routes[].backends[].mcp.targets[].policies.backendAuth.aws.sessionTokenstring
binds[].listeners[].routes[].backends[].mcp.targets[].policies.backendAuth.azureobjectExactly one of explicitConfig, developerImplicit, or implicit may be set.
binds[].listeners[].routes[].backends[].mcp.targets[].policies.backendAuth.azure.explicitConfigobjectExactly one of clientSecret, managedIdentity, or workloadIdentity may be set.
binds[].listeners[].routes[].backends[].mcp.targets[].policies.backendAuth.azure.explicitConfig.clientSecretobject
binds[].listeners[].routes[].backends[].mcp.targets[].policies.backendAuth.azure.explicitConfig.clientSecret.tenant_idstring
binds[].listeners[].routes[].backends[].mcp.targets[].policies.backendAuth.azure.explicitConfig.clientSecret.client_idstring
binds[].listeners[].routes[].backends[].mcp.targets[].policies.backendAuth.azure.explicitConfig.clientSecret.client_secretstring
binds[].listeners[].routes[].backends[].mcp.targets[].policies.backendAuth.azure.explicitConfig.managedIdentityobject
binds[].listeners[].routes[].backends[].mcp.targets[].policies.backendAuth.azure.explicitConfig.managedIdentity.userAssignedIdentityobject
binds[].listeners[].routes[].backends[].mcp.targets[].policies.backendAuth.azure.explicitConfig.managedIdentity.userAssignedIdentity.clientIdstring
binds[].listeners[].routes[].backends[].mcp.targets[].policies.backendAuth.azure.explicitConfig.managedIdentity.userAssignedIdentity.objectIdstring
binds[].listeners[].routes[].backends[].mcp.targets[].policies.backendAuth.azure.explicitConfig.managedIdentity.userAssignedIdentity.resourceIdstring
binds[].listeners[].routes[].backends[].mcp.targets[].policies.backendAuth.azure.explicitConfig.workloadIdentityobject
binds[].listeners[].routes[].backends[].mcp.targets[].policies.backendAuth.azure.developerImplicitobject
binds[].listeners[].routes[].backends[].mcp.targets[].policies.backendAuth.azure.implicitobject
binds[].listeners[].routes[].backends[].mcp.targets[].policies.httpobjectSpecify HTTP settings for the backend
binds[].listeners[].routes[].backends[].mcp.targets[].policies.http.versionstring
binds[].listeners[].routes[].backends[].mcp.targets[].policies.http.requestTimeoutstring
binds[].listeners[].routes[].backends[].mcp.targets[].policies.tcpobjectSpecify TCP settings for the backend
binds[].listeners[].routes[].backends[].mcp.targets[].policies.tcp.keepalivesobject
binds[].listeners[].routes[].backends[].mcp.targets[].policies.tcp.keepalives.enabledboolean
binds[].listeners[].routes[].backends[].mcp.targets[].policies.tcp.keepalives.timestring
binds[].listeners[].routes[].backends[].mcp.targets[].policies.tcp.keepalives.intervalstring
binds[].listeners[].routes[].backends[].mcp.targets[].policies.tcp.keepalives.retriesinteger
binds[].listeners[].routes[].backends[].mcp.targets[].policies.tcp.connectTimeoutobject
binds[].listeners[].routes[].backends[].mcp.targets[].policies.tcp.connectTimeout.secsinteger
binds[].listeners[].routes[].backends[].mcp.targets[].policies.tcp.connectTimeout.nanosinteger
binds[].listeners[].routes[].backends[].mcp.targets[].policies.healthobjectHealth policy for backend outlier detection; evicts on unhealthy responses based on CEL condition and configurable duration.
binds[].listeners[].routes[].backends[].mcp.targets[].policies.health.unhealthyExpressionstringCEL expression; true means unhealthy (evict). E.g. response.code >= 500.
When unset, any 5xx or connection failure is treated as unhealthy.
binds[].listeners[].routes[].backends[].mcp.targets[].policies.health.evictionobjectLocal/config eviction sub-policy with duration as string; mirrors Eviction.
binds[].listeners[].routes[].backends[].mcp.targets[].policies.health.eviction.durationstring
binds[].listeners[].routes[].backends[].mcp.targets[].policies.health.eviction.restoreHealthnumber
binds[].listeners[].routes[].backends[].mcp.targets[].policies.health.eviction.consecutiveFailuresinteger
binds[].listeners[].routes[].backends[].mcp.targets[].policies.health.eviction.healthThresholdnumber
binds[].listeners[].routes[].backends[].mcp.targets[].policies.backendTunnelobjectSpecify a tunnel to use when connecting to the backend
binds[].listeners[].routes[].backends[].mcp.targets[].policies.backendTunnel.proxyobjectReference to the proxy address
Exactly one of service, host, or backend may be set.
binds[].listeners[].routes[].backends[].mcp.targets[].policies.backendTunnel.proxy.serviceobject
binds[].listeners[].routes[].backends[].mcp.targets[].policies.backendTunnel.proxy.service.nameobject
binds[].listeners[].routes[].backends[].mcp.targets[].policies.backendTunnel.proxy.service.name.namespacestring
binds[].listeners[].routes[].backends[].mcp.targets[].policies.backendTunnel.proxy.service.name.hostnamestring
binds[].listeners[].routes[].backends[].mcp.targets[].policies.backendTunnel.proxy.service.portinteger
binds[].listeners[].routes[].backends[].mcp.targets[].policies.backendTunnel.proxy.hoststringHostname or IP address
binds[].listeners[].routes[].backends[].mcp.targets[].policies.backendTunnel.proxy.backendstringExplicit backend reference. Backend must be defined in the top level backends list
binds[].listeners[].routes[].backends[].mcp.targets[].policies.mcpAuthorizationobjectAuthorization policies for MCP access.
binds[].listeners[].routes[].backends[].mcp.targets[].policies.mcpAuthorization.rules[]string
binds[].listeners[].routes[].backends[].mcp.statefulModestring
binds[].listeners[].routes[].backends[].mcp.prefixModestring
binds[].listeners[].routes[].backends[].mcp.failureModestringBehavior when one or more MCP targets fail to initialize or fail during fanout.
Defaults to failClosed.
binds[].listeners[].routes[].backends[].aiobject
binds[].listeners[].routes[].backends[].ai.namestring
binds[].listeners[].routes[].backends[].ai.providerobjectExactly one of openAI, gemini, vertex, anthropic, bedrock, or azureOpenAI may be set.
binds[].listeners[].routes[].backends[].ai.provider.openAIobject
binds[].listeners[].routes[].backends[].ai.provider.openAI.modelstring
binds[].listeners[].routes[].backends[].ai.provider.geminiobject
binds[].listeners[].routes[].backends[].ai.provider.gemini.modelstring
binds[].listeners[].routes[].backends[].ai.provider.vertexobject
binds[].listeners[].routes[].backends[].ai.provider.vertex.modelstring
binds[].listeners[].routes[].backends[].ai.provider.vertex.regionstring
binds[].listeners[].routes[].backends[].ai.provider.vertex.projectIdstring
binds[].listeners[].routes[].backends[].ai.provider.anthropicobject
binds[].listeners[].routes[].backends[].ai.provider.anthropic.modelstring
binds[].listeners[].routes[].backends[].ai.provider.bedrockobject
binds[].listeners[].routes[].backends[].ai.provider.bedrock.modelstring
binds[].listeners[].routes[].backends[].ai.provider.bedrock.regionstring
binds[].listeners[].routes[].backends[].ai.provider.bedrock.guardrailIdentifierstring
binds[].listeners[].routes[].backends[].ai.provider.bedrock.guardrailVersionstring
binds[].listeners[].routes[].backends[].ai.provider.azureOpenAIobject
binds[].listeners[].routes[].backends[].ai.provider.azureOpenAI.modelstring
binds[].listeners[].routes[].backends[].ai.provider.azureOpenAI.hoststring
binds[].listeners[].routes[].backends[].ai.provider.azureOpenAI.apiVersionstring
binds[].listeners[].routes[].backends[].ai.hostOverridestring
binds[].listeners[].routes[].backends[].ai.pathOverridestring
binds[].listeners[].routes[].backends[].ai.tokenizebooleanWhether to tokenize on the request flow. This enables us to do more accurate rate limits,
since we know (part of) the cost of the request upfront.
This comes with the cost of an expensive operation.
binds[].listeners[].routes[].backends[].ai.policiesobject
binds[].listeners[].routes[].backends[].ai.policies.requestHeaderModifierobjectHeaders to be modified in the request.
binds[].listeners[].routes[].backends[].ai.policies.requestHeaderModifier.addobject
binds[].listeners[].routes[].backends[].ai.policies.requestHeaderModifier.setobject
binds[].listeners[].routes[].backends[].ai.policies.requestHeaderModifier.remove[]string
binds[].listeners[].routes[].backends[].ai.policies.responseHeaderModifierobjectHeaders to be modified in the response.
binds[].listeners[].routes[].backends[].ai.policies.responseHeaderModifier.addobject
binds[].listeners[].routes[].backends[].ai.policies.responseHeaderModifier.setobject
binds[].listeners[].routes[].backends[].ai.policies.responseHeaderModifier.remove[]string
binds[].listeners[].routes[].backends[].ai.policies.requestRedirectobjectDirectly respond to the request with a redirect.
binds[].listeners[].routes[].backends[].ai.policies.requestRedirect.schemestring
binds[].listeners[].routes[].backends[].ai.policies.requestRedirect.authoritystring
binds[].listeners[].routes[].backends[].ai.policies.requestRedirect.authority.fullstring
binds[].listeners[].routes[].backends[].ai.policies.requestRedirect.authority.hoststring
binds[].listeners[].routes[].backends[].ai.policies.requestRedirect.authority.portinteger
binds[].listeners[].routes[].backends[].ai.policies.requestRedirect.pathobject
binds[].listeners[].routes[].backends[].ai.policies.requestRedirect.path.fullstring
binds[].listeners[].routes[].backends[].ai.policies.requestRedirect.path.prefixstring
binds[].listeners[].routes[].backends[].ai.policies.requestRedirect.statusinteger
binds[].listeners[].routes[].backends[].ai.policies.transformationsobjectModify requests and responses sent to and from the backend.
binds[].listeners[].routes[].backends[].ai.policies.transformations.requestobject
binds[].listeners[].routes[].backends[].ai.policies.transformations.request.addobject
binds[].listeners[].routes[].backends[].ai.policies.transformations.request.setobject
binds[].listeners[].routes[].backends[].ai.policies.transformations.request.remove[]string
binds[].listeners[].routes[].backends[].ai.policies.transformations.request.bodystring
binds[].listeners[].routes[].backends[].ai.policies.transformations.request.metadataobject
binds[].listeners[].routes[].backends[].ai.policies.transformations.responseobject
binds[].listeners[].routes[].backends[].ai.policies.transformations.response.addobject
binds[].listeners[].routes[].backends[].ai.policies.transformations.response.setobject
binds[].listeners[].routes[].backends[].ai.policies.transformations.response.remove[]string
binds[].listeners[].routes[].backends[].ai.policies.transformations.response.bodystring
binds[].listeners[].routes[].backends[].ai.policies.transformations.response.metadataobject
binds[].listeners[].routes[].backends[].ai.policies.backendTLSobjectSend TLS to the backend.
binds[].listeners[].routes[].backends[].ai.policies.backendTLS.certstring
binds[].listeners[].routes[].backends[].ai.policies.backendTLS.keystring
binds[].listeners[].routes[].backends[].ai.policies.backendTLS.rootstring
binds[].listeners[].routes[].backends[].ai.policies.backendTLS.hostnamestring
binds[].listeners[].routes[].backends[].ai.policies.backendTLS.insecureboolean
binds[].listeners[].routes[].backends[].ai.policies.backendTLS.insecureHostboolean
binds[].listeners[].routes[].backends[].ai.policies.backendTLS.alpn[]string
binds[].listeners[].routes[].backends[].ai.policies.backendTLS.subjectAltNames[]string
binds[].listeners[].routes[].backends[].ai.policies.backendAuthobjectAuthenticate to the backend.
binds[].listeners[].routes[].backends[].ai.policies.backendAuth.passthroughobject
binds[].listeners[].routes[].backends[].ai.policies.backendAuth.keyobject
binds[].listeners[].routes[].backends[].ai.policies.backendAuth.key.filestring
binds[].listeners[].routes[].backends[].ai.policies.backendAuth.gcpobject
binds[].listeners[].routes[].backends[].ai.policies.backendAuth.gcp.typestring
binds[].listeners[].routes[].backends[].ai.policies.backendAuth.gcp.audiencestringAudience for the token. If not set, the destination host will be used.
binds[].listeners[].routes[].backends[].ai.policies.backendAuth.gcp.typestring
binds[].listeners[].routes[].backends[].ai.policies.backendAuth.awsobject
binds[].listeners[].routes[].backends[].ai.policies.backendAuth.aws.accessKeyIdstring
binds[].listeners[].routes[].backends[].ai.policies.backendAuth.aws.secretAccessKeystring
binds[].listeners[].routes[].backends[].ai.policies.backendAuth.aws.regionstring
binds[].listeners[].routes[].backends[].ai.policies.backendAuth.aws.sessionTokenstring
binds[].listeners[].routes[].backends[].ai.policies.backendAuth.azureobjectExactly one of explicitConfig, developerImplicit, or implicit may be set.
binds[].listeners[].routes[].backends[].ai.policies.backendAuth.azure.explicitConfigobjectExactly one of clientSecret, managedIdentity, or workloadIdentity may be set.
binds[].listeners[].routes[].backends[].ai.policies.backendAuth.azure.explicitConfig.clientSecretobject
binds[].listeners[].routes[].backends[].ai.policies.backendAuth.azure.explicitConfig.clientSecret.tenant_idstring
binds[].listeners[].routes[].backends[].ai.policies.backendAuth.azure.explicitConfig.clientSecret.client_idstring
binds[].listeners[].routes[].backends[].ai.policies.backendAuth.azure.explicitConfig.clientSecret.client_secretstring
binds[].listeners[].routes[].backends[].ai.policies.backendAuth.azure.explicitConfig.managedIdentityobject
binds[].listeners[].routes[].backends[].ai.policies.backendAuth.azure.explicitConfig.managedIdentity.userAssignedIdentityobject
binds[].listeners[].routes[].backends[].ai.policies.backendAuth.azure.explicitConfig.managedIdentity.userAssignedIdentity.clientIdstring
binds[].listeners[].routes[].backends[].ai.policies.backendAuth.azure.explicitConfig.managedIdentity.userAssignedIdentity.objectIdstring
binds[].listeners[].routes[].backends[].ai.policies.backendAuth.azure.explicitConfig.managedIdentity.userAssignedIdentity.resourceIdstring
binds[].listeners[].routes[].backends[].ai.policies.backendAuth.azure.explicitConfig.workloadIdentityobject
binds[].listeners[].routes[].backends[].ai.policies.backendAuth.azure.developerImplicitobject
binds[].listeners[].routes[].backends[].ai.policies.backendAuth.azure.implicitobject
binds[].listeners[].routes[].backends[].ai.policies.httpobjectSpecify HTTP settings for the backend
binds[].listeners[].routes[].backends[].ai.policies.http.versionstring
binds[].listeners[].routes[].backends[].ai.policies.http.requestTimeoutstring
binds[].listeners[].routes[].backends[].ai.policies.tcpobjectSpecify TCP settings for the backend
binds[].listeners[].routes[].backends[].ai.policies.tcp.keepalivesobject
binds[].listeners[].routes[].backends[].ai.policies.tcp.keepalives.enabledboolean
binds[].listeners[].routes[].backends[].ai.policies.tcp.keepalives.timestring
binds[].listeners[].routes[].backends[].ai.policies.tcp.keepalives.intervalstring
binds[].listeners[].routes[].backends[].ai.policies.tcp.keepalives.retriesinteger
binds[].listeners[].routes[].backends[].ai.policies.tcp.connectTimeoutobject
binds[].listeners[].routes[].backends[].ai.policies.tcp.connectTimeout.secsinteger
binds[].listeners[].routes[].backends[].ai.policies.tcp.connectTimeout.nanosinteger
binds[].listeners[].routes[].backends[].ai.policies.healthobjectHealth policy for backend outlier detection; evicts on unhealthy responses based on CEL condition and configurable duration.
binds[].listeners[].routes[].backends[].ai.policies.health.unhealthyExpressionstringCEL expression; true means unhealthy (evict). E.g. response.code >= 500.
When unset, any 5xx or connection failure is treated as unhealthy.
binds[].listeners[].routes[].backends[].ai.policies.health.evictionobjectLocal/config eviction sub-policy with duration as string; mirrors Eviction.
binds[].listeners[].routes[].backends[].ai.policies.health.eviction.durationstring
binds[].listeners[].routes[].backends[].ai.policies.health.eviction.restoreHealthnumber
binds[].listeners[].routes[].backends[].ai.policies.health.eviction.consecutiveFailuresinteger
binds[].listeners[].routes[].backends[].ai.policies.health.eviction.healthThresholdnumber
binds[].listeners[].routes[].backends[].ai.policies.backendTunnelobjectSpecify a tunnel to use when connecting to the backend
binds[].listeners[].routes[].backends[].ai.policies.backendTunnel.proxyobjectReference to the proxy address
Exactly one of service, host, or backend may be set.
binds[].listeners[].routes[].backends[].ai.policies.backendTunnel.proxy.serviceobject
binds[].listeners[].routes[].backends[].ai.policies.backendTunnel.proxy.service.nameobject
binds[].listeners[].routes[].backends[].ai.policies.backendTunnel.proxy.service.name.namespacestring
binds[].listeners[].routes[].backends[].ai.policies.backendTunnel.proxy.service.name.hostnamestring
binds[].listeners[].routes[].backends[].ai.policies.backendTunnel.proxy.service.portinteger
binds[].listeners[].routes[].backends[].ai.policies.backendTunnel.proxy.hoststringHostname or IP address
binds[].listeners[].routes[].backends[].ai.policies.backendTunnel.proxy.backendstringExplicit backend reference. Backend must be defined in the top level backends list
binds[].listeners[].routes[].backends[].ai.policies.mcpAuthorizationobjectAuthorization policies for MCP access.
binds[].listeners[].routes[].backends[].ai.policies.mcpAuthorization.rules[]string
binds[].listeners[].routes[].backends[].ai.policies.a2aobjectMark this traffic as A2A to enable A2A processing and telemetry.
binds[].listeners[].routes[].backends[].ai.policies.aiobjectMark this as LLM traffic to enable LLM processing.
binds[].listeners[].routes[].backends[].ai.policies.ai.promptGuardobject
binds[].listeners[].routes[].backends[].ai.policies.ai.promptGuard.request[]object
binds[].listeners[].routes[].backends[].ai.policies.ai.promptGuard.request[].regexobject
binds[].listeners[].routes[].backends[].ai.policies.ai.promptGuard.request[].regex.actionstring
binds[].listeners[].routes[].backends[].ai.policies.ai.promptGuard.request[].regex.rules[]object
binds[].listeners[].routes[].backends[].ai.policies.ai.promptGuard.request[].regex.rules[].builtinstring
binds[].listeners[].routes[].backends[].ai.policies.ai.promptGuard.request[].regex.rules[].patternstring
binds[].listeners[].routes[].backends[].ai.policies.ai.promptGuard.request[].webhookobject
binds[].listeners[].routes[].backends[].ai.policies.ai.promptGuard.request[].webhook.targetobjectExactly one of service, host, or backend may be set.
binds[].listeners[].routes[].backends[].ai.policies.ai.promptGuard.request[].webhook.target.serviceobject
binds[].listeners[].routes[].backends[].ai.policies.ai.promptGuard.request[].webhook.target.service.nameobject
binds[].listeners[].routes[].backends[].ai.policies.ai.promptGuard.request[].webhook.target.service.name.namespacestring
binds[].listeners[].routes[].backends[].ai.policies.ai.promptGuard.request[].webhook.target.service.name.hostnamestring
binds[].listeners[].routes[].backends[].ai.policies.ai.promptGuard.request[].webhook.target.service.portinteger
binds[].listeners[].routes[].backends[].ai.policies.ai.promptGuard.request[].webhook.target.hoststringHostname or IP address
binds[].listeners[].routes[].backends[].ai.policies.ai.promptGuard.request[].webhook.target.backendstringExplicit backend reference. Backend must be defined in the top level backends list
binds[].listeners[].routes[].backends[].ai.policies.ai.promptGuard.request[].webhook.forwardHeaderMatches[]object
binds[].listeners[].routes[].backends[].ai.policies.ai.promptGuard.request[].webhook.forwardHeaderMatches[].namestring
binds[].listeners[].routes[].backends[].ai.policies.ai.promptGuard.request[].webhook.forwardHeaderMatches[].valueobjectExactly one of exact or regex may be set.
binds[].listeners[].routes[].backends[].ai.policies.ai.promptGuard.request[].webhook.forwardHeaderMatches[].value.exactstring
binds[].listeners[].routes[].backends[].ai.policies.ai.promptGuard.request[].webhook.forwardHeaderMatches[].value.regexstring
binds[].listeners[].routes[].backends[].ai.policies.ai.promptGuard.request[].openAIModerationobject
binds[].listeners[].routes[].backends[].ai.policies.ai.promptGuard.request[].openAIModeration.modelstringModel to use. Defaults to omni-moderation-latest
binds[].listeners[].routes[].backends[].ai.policies.ai.promptGuard.request[].openAIModeration.policiesobject
binds[].listeners[].routes[].backends[].ai.policies.ai.promptGuard.request[].openAIModeration.policies.requestHeaderModifierobjectHeaders to be modified in the request.
binds[].listeners[].routes[].backends[].ai.policies.ai.promptGuard.request[].openAIModeration.policies.requestHeaderModifier.addobject
binds[].listeners[].routes[].backends[].ai.policies.ai.promptGuard.request[].openAIModeration.policies.requestHeaderModifier.setobject
binds[].listeners[].routes[].backends[].ai.policies.ai.promptGuard.request[].openAIModeration.policies.requestHeaderModifier.remove[]string
binds[].listeners[].routes[].backends[].ai.policies.ai.promptGuard.request[].openAIModeration.policies.responseHeaderModifierobjectHeaders to be modified in the response.
binds[].listeners[].routes[].backends[].ai.policies.ai.promptGuard.request[].openAIModeration.policies.responseHeaderModifier.addobject
binds[].listeners[].routes[].backends[].ai.policies.ai.promptGuard.request[].openAIModeration.policies.responseHeaderModifier.setobject
binds[].listeners[].routes[].backends[].ai.policies.ai.promptGuard.request[].openAIModeration.policies.responseHeaderModifier.remove[]string
binds[].listeners[].routes[].backends[].ai.policies.ai.promptGuard.request[].openAIModeration.policies.requestRedirectobjectDirectly respond to the request with a redirect.
binds[].listeners[].routes[].backends[].ai.policies.ai.promptGuard.request[].openAIModeration.policies.requestRedirect.schemestring
binds[].listeners[].routes[].backends[].ai.policies.ai.promptGuard.request[].openAIModeration.policies.requestRedirect.authoritystring
binds[].listeners[].routes[].backends[].ai.policies.ai.promptGuard.request[].openAIModeration.policies.requestRedirect.authority.fullstring
binds[].listeners[].routes[].backends[].ai.policies.ai.promptGuard.request[].openAIModeration.policies.requestRedirect.authority.hoststring
binds[].listeners[].routes[].backends[].ai.policies.ai.promptGuard.request[].openAIModeration.policies.requestRedirect.authority.portinteger
binds[].listeners[].routes[].backends[].ai.policies.ai.promptGuard.request[].openAIModeration.policies.requestRedirect.pathobject
binds[].listeners[].routes[].backends[].ai.policies.ai.promptGuard.request[].openAIModeration.policies.requestRedirect.path.fullstring
binds[].listeners[].routes[].backends[].ai.policies.ai.promptGuard.request[].openAIModeration.policies.requestRedirect.path.prefixstring
binds[].listeners[].routes[].backends[].ai.policies.ai.promptGuard.request[].openAIModeration.policies.requestRedirect.statusinteger
binds[].listeners[].routes[].backends[].ai.policies.ai.promptGuard.request[].openAIModeration.policies.transformationsobjectModify requests and responses sent to and from the backend.
binds[].listeners[].routes[].backends[].ai.policies.ai.promptGuard.request[].openAIModeration.policies.transformations.requestobject
binds[].listeners[].routes[].backends[].ai.policies.ai.promptGuard.request[].openAIModeration.policies.transformations.request.addobject
binds[].listeners[].routes[].backends[].ai.policies.ai.promptGuard.request[].openAIModeration.policies.transformations.request.setobject
binds[].listeners[].routes[].backends[].ai.policies.ai.promptGuard.request[].openAIModeration.policies.transformations.request.remove[]string
binds[].listeners[].routes[].backends[].ai.policies.ai.promptGuard.request[].openAIModeration.policies.transformations.request.bodystring
binds[].listeners[].routes[].backends[].ai.policies.ai.promptGuard.request[].openAIModeration.policies.transformations.request.metadataobject
binds[].listeners[].routes[].backends[].ai.policies.ai.promptGuard.request[].openAIModeration.policies.transformations.responseobject
binds[].listeners[].routes[].backends[].ai.policies.ai.promptGuard.request[].openAIModeration.policies.transformations.response.addobject
binds[].listeners[].routes[].backends[].ai.policies.ai.promptGuard.request[].openAIModeration.policies.transformations.response.setobject
binds[].listeners[].routes[].backends[].ai.policies.ai.promptGuard.request[].openAIModeration.policies.transformations.response.remove[]string
binds[].listeners[].routes[].backends[].ai.policies.ai.promptGuard.request[].openAIModeration.policies.transformations.response.bodystring
binds[].listeners[].routes[].backends[].ai.policies.ai.promptGuard.request[].openAIModeration.policies.transformations.response.metadataobject
binds[].listeners[].routes[].backends[].ai.policies.ai.promptGuard.request[].openAIModeration.policies.backendTLSobjectSend TLS to the backend.
binds[].listeners[].routes[].backends[].ai.policies.ai.promptGuard.request[].openAIModeration.policies.backendTLS.certstring
binds[].listeners[].routes[].backends[].ai.policies.ai.promptGuard.request[].openAIModeration.policies.backendTLS.keystring
binds[].listeners[].routes[].backends[].ai.policies.ai.promptGuard.request[].openAIModeration.policies.backendTLS.rootstring
binds[].listeners[].routes[].backends[].ai.policies.ai.promptGuard.request[].openAIModeration.policies.backendTLS.hostnamestring
binds[].listeners[].routes[].backends[].ai.policies.ai.promptGuard.request[].openAIModeration.policies.backendTLS.insecureboolean
binds[].listeners[].routes[].backends[].ai.policies.ai.promptGuard.request[].openAIModeration.policies.backendTLS.insecureHostboolean
binds[].listeners[].routes[].backends[].ai.policies.ai.promptGuard.request[].openAIModeration.policies.backendTLS.alpn[]string
binds[].listeners[].routes[].backends[].ai.policies.ai.promptGuard.request[].openAIModeration.policies.backendTLS.subjectAltNames[]string
binds[].listeners[].routes[].backends[].ai.policies.ai.promptGuard.request[].openAIModeration.policies.backendAuthobjectAuthenticate to the backend.
binds[].listeners[].routes[].backends[].ai.policies.ai.promptGuard.request[].openAIModeration.policies.backendAuth.passthroughobject
binds[].listeners[].routes[].backends[].ai.policies.ai.promptGuard.request[].openAIModeration.policies.backendAuth.keyobject
binds[].listeners[].routes[].backends[].ai.policies.ai.promptGuard.request[].openAIModeration.policies.backendAuth.key.filestring
binds[].listeners[].routes[].backends[].ai.policies.ai.promptGuard.request[].openAIModeration.policies.backendAuth.gcpobject
binds[].listeners[].routes[].backends[].ai.policies.ai.promptGuard.request[].openAIModeration.policies.backendAuth.gcp.typestring
binds[].listeners[].routes[].backends[].ai.policies.ai.promptGuard.request[].openAIModeration.policies.backendAuth.gcp.audiencestringAudience for the token. If not set, the destination host will be used.
binds[].listeners[].routes[].backends[].ai.policies.ai.promptGuard.request[].openAIModeration.policies.backendAuth.gcp.typestring
binds[].listeners[].routes[].backends[].ai.policies.ai.promptGuard.request[].openAIModeration.policies.backendAuth.awsobject
binds[].listeners[].routes[].backends[].ai.policies.ai.promptGuard.request[].openAIModeration.policies.backendAuth.aws.accessKeyIdstring
binds[].listeners[].routes[].backends[].ai.policies.ai.promptGuard.request[].openAIModeration.policies.backendAuth.aws.secretAccessKeystring
binds[].listeners[].routes[].backends[].ai.policies.ai.promptGuard.request[].openAIModeration.policies.backendAuth.aws.regionstring
binds[].listeners[].routes[].backends[].ai.policies.ai.promptGuard.request[].openAIModeration.policies.backendAuth.aws.sessionTokenstring
binds[].listeners[].routes[].backends[].ai.policies.ai.promptGuard.request[].openAIModeration.policies.backendAuth.azureobjectExactly one of explicitConfig, developerImplicit, or implicit may be set.
binds[].listeners[].routes[].backends[].ai.policies.ai.promptGuard.request[].openAIModeration.policies.backendAuth.azure.explicitConfigobjectExactly one of clientSecret, managedIdentity, or workloadIdentity may be set.
binds[].listeners[].routes[].backends[].ai.policies.ai.promptGuard.request[].openAIModeration.policies.backendAuth.azure.explicitConfig.clientSecretobject
binds[].listeners[].routes[].backends[].ai.policies.ai.promptGuard.request[].openAIModeration.policies.backendAuth.azure.explicitConfig.clientSecret.tenant_idstring
binds[].listeners[].routes[].backends[].ai.policies.ai.promptGuard.request[].openAIModeration.policies.backendAuth.azure.explicitConfig.clientSecret.client_idstring
binds[].listeners[].routes[].backends[].ai.policies.ai.promptGuard.request[].openAIModeration.policies.backendAuth.azure.explicitConfig.clientSecret.client_secretstring
binds[].listeners[].routes[].backends[].ai.policies.ai.promptGuard.request[].openAIModeration.policies.backendAuth.azure.explicitConfig.managedIdentityobject
binds[].listeners[].routes[].backends[].ai.policies.ai.promptGuard.request[].openAIModeration.policies.backendAuth.azure.explicitConfig.managedIdentity.userAssignedIdentityobject
binds[].listeners[].routes[].backends[].ai.policies.ai.promptGuard.request[].openAIModeration.policies.backendAuth.azure.explicitConfig.managedIdentity.userAssignedIdentity.clientIdstring
binds[].listeners[].routes[].backends[].ai.policies.ai.promptGuard.request[].openAIModeration.policies.backendAuth.azure.explicitConfig.managedIdentity.userAssignedIdentity.objectIdstring
binds[].listeners[].routes[].backends[].ai.policies.ai.promptGuard.request[].openAIModeration.policies.backendAuth.azure.explicitConfig.managedIdentity.userAssignedIdentity.resourceIdstring
binds[].listeners[].routes[].backends[].ai.policies.ai.promptGuard.request[].openAIModeration.policies.backendAuth.azure.explicitConfig.workloadIdentityobject
binds[].listeners[].routes[].backends[].ai.policies.ai.promptGuard.request[].openAIModeration.policies.backendAuth.azure.developerImplicitobject
binds[].listeners[].routes[].backends[].ai.policies.ai.promptGuard.request[].openAIModeration.policies.backendAuth.azure.implicitobject
binds[].listeners[].routes[].backends[].ai.policies.ai.promptGuard.request[].openAIModeration.policies.httpobjectSpecify HTTP settings for the backend
binds[].listeners[].routes[].backends[].ai.policies.ai.promptGuard.request[].openAIModeration.policies.http.versionstring
binds[].listeners[].routes[].backends[].ai.policies.ai.promptGuard.request[].openAIModeration.policies.http.requestTimeoutstring
binds[].listeners[].routes[].backends[].ai.policies.ai.promptGuard.request[].openAIModeration.policies.tcpobjectSpecify TCP settings for the backend
binds[].listeners[].routes[].backends[].ai.policies.ai.promptGuard.request[].openAIModeration.policies.tcp.keepalivesobject
binds[].listeners[].routes[].backends[].ai.policies.ai.promptGuard.request[].openAIModeration.policies.tcp.keepalives.enabledboolean
binds[].listeners[].routes[].backends[].ai.policies.ai.promptGuard.request[].openAIModeration.policies.tcp.keepalives.timestring
binds[].listeners[].routes[].backends[].ai.policies.ai.promptGuard.request[].openAIModeration.policies.tcp.keepalives.intervalstring
binds[].listeners[].routes[].backends[].ai.policies.ai.promptGuard.request[].openAIModeration.policies.tcp.keepalives.retriesinteger
binds[].listeners[].routes[].backends[].ai.policies.ai.promptGuard.request[].openAIModeration.policies.tcp.connectTimeoutobject
binds[].listeners[].routes[].backends[].ai.policies.ai.promptGuard.request[].openAIModeration.policies.tcp.connectTimeout.secsinteger
binds[].listeners[].routes[].backends[].ai.policies.ai.promptGuard.request[].openAIModeration.policies.tcp.connectTimeout.nanosinteger
binds[].listeners[].routes[].backends[].ai.policies.ai.promptGuard.request[].openAIModeration.policies.healthobjectHealth policy for backend outlier detection; evicts on unhealthy responses based on CEL condition and configurable duration.
binds[].listeners[].routes[].backends[].ai.policies.ai.promptGuard.request[].openAIModeration.policies.health.unhealthyExpressionstringCEL expression; true means unhealthy (evict). E.g. response.code >= 500.
When unset, any 5xx or connection failure is treated as unhealthy.
binds[].listeners[].routes[].backends[].ai.policies.ai.promptGuard.request[].openAIModeration.policies.health.evictionobjectLocal/config eviction sub-policy with duration as string; mirrors Eviction.
binds[].listeners[].routes[].backends[].ai.policies.ai.promptGuard.request[].openAIModeration.policies.health.eviction.durationstring
binds[].listeners[].routes[].backends[].ai.policies.ai.promptGuard.request[].openAIModeration.policies.health.eviction.restoreHealthnumber
binds[].listeners[].routes[].backends[].ai.policies.ai.promptGuard.request[].openAIModeration.policies.health.eviction.consecutiveFailuresinteger
binds[].listeners[].routes[].backends[].ai.policies.ai.promptGuard.request[].openAIModeration.policies.health.eviction.healthThresholdnumber
binds[].listeners[].routes[].backends[].ai.policies.ai.promptGuard.request[].openAIModeration.policies.backendTunnelobjectSpecify a tunnel to use when connecting to the backend
binds[].listeners[].routes[].backends[].ai.policies.ai.promptGuard.request[].openAIModeration.policies.backendTunnel.proxyobjectReference to the proxy address
Exactly one of service, host, or backend may be set.
binds[].listeners[].routes[].backends[].ai.policies.ai.promptGuard.request[].openAIModeration.policies.backendTunnel.proxy.serviceobject
binds[].listeners[].routes[].backends[].ai.policies.ai.promptGuard.request[].openAIModeration.policies.backendTunnel.proxy.service.nameobject
binds[].listeners[].routes[].backends[].ai.policies.ai.promptGuard.request[].openAIModeration.policies.backendTunnel.proxy.service.name.namespacestring
binds[].listeners[].routes[].backends[].ai.policies.ai.promptGuard.request[].openAIModeration.policies.backendTunnel.proxy.service.name.hostnamestring
binds[].listeners[].routes[].backends[].ai.policies.ai.promptGuard.request[].openAIModeration.policies.backendTunnel.proxy.service.portinteger
binds[].listeners[].routes[].backends[].ai.policies.ai.promptGuard.request[].openAIModeration.policies.backendTunnel.proxy.hoststringHostname or IP address
binds[].listeners[].routes[].backends[].ai.policies.ai.promptGuard.request[].openAIModeration.policies.backendTunnel.proxy.backendstringExplicit backend reference. Backend must be defined in the top level backends list
binds[].listeners[].routes[].backends[].ai.policies.ai.promptGuard.request[].bedrockGuardrailsobjectConfiguration for AWS Bedrock Guardrails integration.
binds[].listeners[].routes[].backends[].ai.policies.ai.promptGuard.request[].bedrockGuardrails.guardrailIdentifierstringThe unique identifier of the guardrail
binds[].listeners[].routes[].backends[].ai.policies.ai.promptGuard.request[].bedrockGuardrails.guardrailVersionstringThe version of the guardrail
binds[].listeners[].routes[].backends[].ai.policies.ai.promptGuard.request[].bedrockGuardrails.regionstringAWS region where the guardrail is deployed
binds[].listeners[].routes[].backends[].ai.policies.ai.promptGuard.request[].bedrockGuardrails.policiesobjectBackend policies for AWS authentication (optional, defaults to implicit AWS auth)
binds[].listeners[].routes[].backends[].ai.policies.ai.promptGuard.request[].bedrockGuardrails.policies.requestHeaderModifierobjectHeaders to be modified in the request.
binds[].listeners[].routes[].backends[].ai.policies.ai.promptGuard.request[].bedrockGuardrails.policies.requestHeaderModifier.addobject
binds[].listeners[].routes[].backends[].ai.policies.ai.promptGuard.request[].bedrockGuardrails.policies.requestHeaderModifier.setobject
binds[].listeners[].routes[].backends[].ai.policies.ai.promptGuard.request[].bedrockGuardrails.policies.requestHeaderModifier.remove[]string
binds[].listeners[].routes[].backends[].ai.policies.ai.promptGuard.request[].bedrockGuardrails.policies.responseHeaderModifierobjectHeaders to be modified in the response.
binds[].listeners[].routes[].backends[].ai.policies.ai.promptGuard.request[].bedrockGuardrails.policies.responseHeaderModifier.addobject
binds[].listeners[].routes[].backends[].ai.policies.ai.promptGuard.request[].bedrockGuardrails.policies.responseHeaderModifier.setobject
binds[].listeners[].routes[].backends[].ai.policies.ai.promptGuard.request[].bedrockGuardrails.policies.responseHeaderModifier.remove[]string
binds[].listeners[].routes[].backends[].ai.policies.ai.promptGuard.request[].bedrockGuardrails.policies.requestRedirectobjectDirectly respond to the request with a redirect.
binds[].listeners[].routes[].backends[].ai.policies.ai.promptGuard.request[].bedrockGuardrails.policies.requestRedirect.schemestring
binds[].listeners[].routes[].backends[].ai.policies.ai.promptGuard.request[].bedrockGuardrails.policies.requestRedirect.authoritystring
binds[].listeners[].routes[].backends[].ai.policies.ai.promptGuard.request[].bedrockGuardrails.policies.requestRedirect.authority.fullstring
binds[].listeners[].routes[].backends[].ai.policies.ai.promptGuard.request[].bedrockGuardrails.policies.requestRedirect.authority.hoststring
binds[].listeners[].routes[].backends[].ai.policies.ai.promptGuard.request[].bedrockGuardrails.policies.requestRedirect.authority.portinteger
binds[].listeners[].routes[].backends[].ai.policies.ai.promptGuard.request[].bedrockGuardrails.policies.requestRedirect.pathobject
binds[].listeners[].routes[].backends[].ai.policies.ai.promptGuard.request[].bedrockGuardrails.policies.requestRedirect.path.fullstring
binds[].listeners[].routes[].backends[].ai.policies.ai.promptGuard.request[].bedrockGuardrails.policies.requestRedirect.path.prefixstring
binds[].listeners[].routes[].backends[].ai.policies.ai.promptGuard.request[].bedrockGuardrails.policies.requestRedirect.statusinteger
binds[].listeners[].routes[].backends[].ai.policies.ai.promptGuard.request[].bedrockGuardrails.policies.transformationsobjectModify requests and responses sent to and from the backend.
binds[].listeners[].routes[].backends[].ai.policies.ai.promptGuard.request[].bedrockGuardrails.policies.transformations.requestobject
binds[].listeners[].routes[].backends[].ai.policies.ai.promptGuard.request[].bedrockGuardrails.policies.transformations.request.addobject
binds[].listeners[].routes[].backends[].ai.policies.ai.promptGuard.request[].bedrockGuardrails.policies.transformations.request.setobject
binds[].listeners[].routes[].backends[].ai.policies.ai.promptGuard.request[].bedrockGuardrails.policies.transformations.request.remove[]string
binds[].listeners[].routes[].backends[].ai.policies.ai.promptGuard.request[].bedrockGuardrails.policies.transformations.request.bodystring
binds[].listeners[].routes[].backends[].ai.policies.ai.promptGuard.request[].bedrockGuardrails.policies.transformations.request.metadataobject
binds[].listeners[].routes[].backends[].ai.policies.ai.promptGuard.request[].bedrockGuardrails.policies.transformations.responseobject
binds[].listeners[].routes[].backends[].ai.policies.ai.promptGuard.request[].bedrockGuardrails.policies.transformations.response.addobject
binds[].listeners[].routes[].backends[].ai.policies.ai.promptGuard.request[].bedrockGuardrails.policies.transformations.response.setobject
binds[].listeners[].routes[].backends[].ai.policies.ai.promptGuard.request[].bedrockGuardrails.policies.transformations.response.remove[]string
binds[].listeners[].routes[].backends[].ai.policies.ai.promptGuard.request[].bedrockGuardrails.policies.transformations.response.bodystring
binds[].listeners[].routes[].backends[].ai.policies.ai.promptGuard.request[].bedrockGuardrails.policies.transformations.response.metadataobject
binds[].listeners[].routes[].backends[].ai.policies.ai.promptGuard.request[].bedrockGuardrails.policies.backendTLSobjectSend TLS to the backend.
binds[].listeners[].routes[].backends[].ai.policies.ai.promptGuard.request[].bedrockGuardrails.policies.backendTLS.certstring
binds[].listeners[].routes[].backends[].ai.policies.ai.promptGuard.request[].bedrockGuardrails.policies.backendTLS.keystring
binds[].listeners[].routes[].backends[].ai.policies.ai.promptGuard.request[].bedrockGuardrails.policies.backendTLS.rootstring
binds[].listeners[].routes[].backends[].ai.policies.ai.promptGuard.request[].bedrockGuardrails.policies.backendTLS.hostnamestring
binds[].listeners[].routes[].backends[].ai.policies.ai.promptGuard.request[].bedrockGuardrails.policies.backendTLS.insecureboolean
binds[].listeners[].routes[].backends[].ai.policies.ai.promptGuard.request[].bedrockGuardrails.policies.backendTLS.insecureHostboolean
binds[].listeners[].routes[].backends[].ai.policies.ai.promptGuard.request[].bedrockGuardrails.policies.backendTLS.alpn[]string
binds[].listeners[].routes[].backends[].ai.policies.ai.promptGuard.request[].bedrockGuardrails.policies.backendTLS.subjectAltNames[]string
binds[].listeners[].routes[].backends[].ai.policies.ai.promptGuard.request[].bedrockGuardrails.policies.backendAuthobjectAuthenticate to the backend.
binds[].listeners[].routes[].backends[].ai.policies.ai.promptGuard.request[].bedrockGuardrails.policies.backendAuth.passthroughobject
binds[].listeners[].routes[].backends[].ai.policies.ai.promptGuard.request[].bedrockGuardrails.policies.backendAuth.keyobject
binds[].listeners[].routes[].backends[].ai.policies.ai.promptGuard.request[].bedrockGuardrails.policies.backendAuth.key.filestring
binds[].listeners[].routes[].backends[].ai.policies.ai.promptGuard.request[].bedrockGuardrails.policies.backendAuth.gcpobject
binds[].listeners[].routes[].backends[].ai.policies.ai.promptGuard.request[].bedrockGuardrails.policies.backendAuth.gcp.typestring
binds[].listeners[].routes[].backends[].ai.policies.ai.promptGuard.request[].bedrockGuardrails.policies.backendAuth.gcp.audiencestringAudience for the token. If not set, the destination host will be used.
binds[].listeners[].routes[].backends[].ai.policies.ai.promptGuard.request[].bedrockGuardrails.policies.backendAuth.gcp.typestring
binds[].listeners[].routes[].backends[].ai.policies.ai.promptGuard.request[].bedrockGuardrails.policies.backendAuth.awsobject
binds[].listeners[].routes[].backends[].ai.policies.ai.promptGuard.request[].bedrockGuardrails.policies.backendAuth.aws.accessKeyIdstring
binds[].listeners[].routes[].backends[].ai.policies.ai.promptGuard.request[].bedrockGuardrails.policies.backendAuth.aws.secretAccessKeystring
binds[].listeners[].routes[].backends[].ai.policies.ai.promptGuard.request[].bedrockGuardrails.policies.backendAuth.aws.regionstring
binds[].listeners[].routes[].backends[].ai.policies.ai.promptGuard.request[].bedrockGuardrails.policies.backendAuth.aws.sessionTokenstring
binds[].listeners[].routes[].backends[].ai.policies.ai.promptGuard.request[].bedrockGuardrails.policies.backendAuth.azureobjectExactly one of explicitConfig, developerImplicit, or implicit may be set.
binds[].listeners[].routes[].backends[].ai.policies.ai.promptGuard.request[].bedrockGuardrails.policies.backendAuth.azure.explicitConfigobjectExactly one of clientSecret, managedIdentity, or workloadIdentity may be set.
binds[].listeners[].routes[].backends[].ai.policies.ai.promptGuard.request[].bedrockGuardrails.policies.backendAuth.azure.explicitConfig.clientSecretobject
binds[].listeners[].routes[].backends[].ai.policies.ai.promptGuard.request[].bedrockGuardrails.policies.backendAuth.azure.explicitConfig.clientSecret.tenant_idstring
binds[].listeners[].routes[].backends[].ai.policies.ai.promptGuard.request[].bedrockGuardrails.policies.backendAuth.azure.explicitConfig.clientSecret.client_idstring
binds[].listeners[].routes[].backends[].ai.policies.ai.promptGuard.request[].bedrockGuardrails.policies.backendAuth.azure.explicitConfig.clientSecret.client_secretstring
binds[].listeners[].routes[].backends[].ai.policies.ai.promptGuard.request[].bedrockGuardrails.policies.backendAuth.azure.explicitConfig.managedIdentityobject
binds[].listeners[].routes[].backends[].ai.policies.ai.promptGuard.request[].bedrockGuardrails.policies.backendAuth.azure.explicitConfig.managedIdentity.userAssignedIdentityobject
binds[].listeners[].routes[].backends[].ai.policies.ai.promptGuard.request[].bedrockGuardrails.policies.backendAuth.azure.explicitConfig.managedIdentity.userAssignedIdentity.clientIdstring
binds[].listeners[].routes[].backends[].ai.policies.ai.promptGuard.request[].bedrockGuardrails.policies.backendAuth.azure.explicitConfig.managedIdentity.userAssignedIdentity.objectIdstring
binds[].listeners[].routes[].backends[].ai.policies.ai.promptGuard.request[].bedrockGuardrails.policies.backendAuth.azure.explicitConfig.managedIdentity.userAssignedIdentity.resourceIdstring
binds[].listeners[].routes[].backends[].ai.policies.ai.promptGuard.request[].bedrockGuardrails.policies.backendAuth.azure.explicitConfig.workloadIdentityobject
binds[].listeners[].routes[].backends[].ai.policies.ai.promptGuard.request[].bedrockGuardrails.policies.backendAuth.azure.developerImplicitobject
binds[].listeners[].routes[].backends[].ai.policies.ai.promptGuard.request[].bedrockGuardrails.policies.backendAuth.azure.implicitobject
binds[].listeners[].routes[].backends[].ai.policies.ai.promptGuard.request[].bedrockGuardrails.policies.httpobjectSpecify HTTP settings for the backend
binds[].listeners[].routes[].backends[].ai.policies.ai.promptGuard.request[].bedrockGuardrails.policies.http.versionstring
binds[].listeners[].routes[].backends[].ai.policies.ai.promptGuard.request[].bedrockGuardrails.policies.http.requestTimeoutstring
binds[].listeners[].routes[].backends[].ai.policies.ai.promptGuard.request[].bedrockGuardrails.policies.tcpobjectSpecify TCP settings for the backend
binds[].listeners[].routes[].backends[].ai.policies.ai.promptGuard.request[].bedrockGuardrails.policies.tcp.keepalivesobject
binds[].listeners[].routes[].backends[].ai.policies.ai.promptGuard.request[].bedrockGuardrails.policies.tcp.keepalives.enabledboolean
binds[].listeners[].routes[].backends[].ai.policies.ai.promptGuard.request[].bedrockGuardrails.policies.tcp.keepalives.timestring
binds[].listeners[].routes[].backends[].ai.policies.ai.promptGuard.request[].bedrockGuardrails.policies.tcp.keepalives.intervalstring
binds[].listeners[].routes[].backends[].ai.policies.ai.promptGuard.request[].bedrockGuardrails.policies.tcp.keepalives.retriesinteger
binds[].listeners[].routes[].backends[].ai.policies.ai.promptGuard.request[].bedrockGuardrails.policies.tcp.connectTimeoutobject
binds[].listeners[].routes[].backends[].ai.policies.ai.promptGuard.request[].bedrockGuardrails.policies.tcp.connectTimeout.secsinteger
binds[].listeners[].routes[].backends[].ai.policies.ai.promptGuard.request[].bedrockGuardrails.policies.tcp.connectTimeout.nanosinteger
binds[].listeners[].routes[].backends[].ai.policies.ai.promptGuard.request[].bedrockGuardrails.policies.healthobjectHealth policy for backend outlier detection; evicts on unhealthy responses based on CEL condition and configurable duration.
binds[].listeners[].routes[].backends[].ai.policies.ai.promptGuard.request[].bedrockGuardrails.policies.health.unhealthyExpressionstringCEL expression; true means unhealthy (evict). E.g. response.code >= 500.
When unset, any 5xx or connection failure is treated as unhealthy.
binds[].listeners[].routes[].backends[].ai.policies.ai.promptGuard.request[].bedrockGuardrails.policies.health.evictionobjectLocal/config eviction sub-policy with duration as string; mirrors Eviction.
binds[].listeners[].routes[].backends[].ai.policies.ai.promptGuard.request[].bedrockGuardrails.policies.health.eviction.durationstring
binds[].listeners[].routes[].backends[].ai.policies.ai.promptGuard.request[].bedrockGuardrails.policies.health.eviction.restoreHealthnumber
binds[].listeners[].routes[].backends[].ai.policies.ai.promptGuard.request[].bedrockGuardrails.policies.health.eviction.consecutiveFailuresinteger
binds[].listeners[].routes[].backends[].ai.policies.ai.promptGuard.request[].bedrockGuardrails.policies.health.eviction.healthThresholdnumber
binds[].listeners[].routes[].backends[].ai.policies.ai.promptGuard.request[].bedrockGuardrails.policies.backendTunnelobjectSpecify a tunnel to use when connecting to the backend
binds[].listeners[].routes[].backends[].ai.policies.ai.promptGuard.request[].bedrockGuardrails.policies.backendTunnel.proxyobjectReference to the proxy address
Exactly one of service, host, or backend may be set.
binds[].listeners[].routes[].backends[].ai.policies.ai.promptGuard.request[].bedrockGuardrails.policies.backendTunnel.proxy.serviceobject
binds[].listeners[].routes[].backends[].ai.policies.ai.promptGuard.request[].bedrockGuardrails.policies.backendTunnel.proxy.service.nameobject
binds[].listeners[].routes[].backends[].ai.policies.ai.promptGuard.request[].bedrockGuardrails.policies.backendTunnel.proxy.service.name.namespacestring
binds[].listeners[].routes[].backends[].ai.policies.ai.promptGuard.request[].bedrockGuardrails.policies.backendTunnel.proxy.service.name.hostnamestring
binds[].listeners[].routes[].backends[].ai.policies.ai.promptGuard.request[].bedrockGuardrails.policies.backendTunnel.proxy.service.portinteger
binds[].listeners[].routes[].backends[].ai.policies.ai.promptGuard.request[].bedrockGuardrails.policies.backendTunnel.proxy.hoststringHostname or IP address
binds[].listeners[].routes[].backends[].ai.policies.ai.promptGuard.request[].bedrockGuardrails.policies.backendTunnel.proxy.backendstringExplicit backend reference. Backend must be defined in the top level backends list
binds[].listeners[].routes[].backends[].ai.policies.ai.promptGuard.request[].googleModelArmorobjectConfiguration for Google Cloud Model Armor integration.
binds[].listeners[].routes[].backends[].ai.policies.ai.promptGuard.request[].googleModelArmor.templateIdstringThe template ID for the Model Armor configuration
binds[].listeners[].routes[].backends[].ai.policies.ai.promptGuard.request[].googleModelArmor.projectIdstringThe GCP project ID
binds[].listeners[].routes[].backends[].ai.policies.ai.promptGuard.request[].googleModelArmor.locationstringThe GCP region (default: us-central1)
binds[].listeners[].routes[].backends[].ai.policies.ai.promptGuard.request[].googleModelArmor.policiesobjectBackend policies for GCP authentication (optional, defaults to implicit GCP auth)
binds[].listeners[].routes[].backends[].ai.policies.ai.promptGuard.request[].googleModelArmor.policies.requestHeaderModifierobjectHeaders to be modified in the request.
binds[].listeners[].routes[].backends[].ai.policies.ai.promptGuard.request[].googleModelArmor.policies.requestHeaderModifier.addobject
binds[].listeners[].routes[].backends[].ai.policies.ai.promptGuard.request[].googleModelArmor.policies.requestHeaderModifier.setobject
binds[].listeners[].routes[].backends[].ai.policies.ai.promptGuard.request[].googleModelArmor.policies.requestHeaderModifier.remove[]string
binds[].listeners[].routes[].backends[].ai.policies.ai.promptGuard.request[].googleModelArmor.policies.responseHeaderModifierobjectHeaders to be modified in the response.
binds[].listeners[].routes[].backends[].ai.policies.ai.promptGuard.request[].googleModelArmor.policies.responseHeaderModifier.addobject
binds[].listeners[].routes[].backends[].ai.policies.ai.promptGuard.request[].googleModelArmor.policies.responseHeaderModifier.setobject
binds[].listeners[].routes[].backends[].ai.policies.ai.promptGuard.request[].googleModelArmor.policies.responseHeaderModifier.remove[]string
binds[].listeners[].routes[].backends[].ai.policies.ai.promptGuard.request[].googleModelArmor.policies.requestRedirectobjectDirectly respond to the request with a redirect.
binds[].listeners[].routes[].backends[].ai.policies.ai.promptGuard.request[].googleModelArmor.policies.requestRedirect.schemestring
binds[].listeners[].routes[].backends[].ai.policies.ai.promptGuard.request[].googleModelArmor.policies.requestRedirect.authoritystring
binds[].listeners[].routes[].backends[].ai.policies.ai.promptGuard.request[].googleModelArmor.policies.requestRedirect.authority.fullstring
binds[].listeners[].routes[].backends[].ai.policies.ai.promptGuard.request[].googleModelArmor.policies.requestRedirect.authority.hoststring
binds[].listeners[].routes[].backends[].ai.policies.ai.promptGuard.request[].googleModelArmor.policies.requestRedirect.authority.portinteger
binds[].listeners[].routes[].backends[].ai.policies.ai.promptGuard.request[].googleModelArmor.policies.requestRedirect.pathobject
binds[].listeners[].routes[].backends[].ai.policies.ai.promptGuard.request[].googleModelArmor.policies.requestRedirect.path.fullstring
binds[].listeners[].routes[].backends[].ai.policies.ai.promptGuard.request[].googleModelArmor.policies.requestRedirect.path.prefixstring
binds[].listeners[].routes[].backends[].ai.policies.ai.promptGuard.request[].googleModelArmor.policies.requestRedirect.statusinteger
binds[].listeners[].routes[].backends[].ai.policies.ai.promptGuard.request[].googleModelArmor.policies.transformationsobjectModify requests and responses sent to and from the backend.
binds[].listeners[].routes[].backends[].ai.policies.ai.promptGuard.request[].googleModelArmor.policies.transformations.requestobject
binds[].listeners[].routes[].backends[].ai.policies.ai.promptGuard.request[].googleModelArmor.policies.transformations.request.addobject
binds[].listeners[].routes[].backends[].ai.policies.ai.promptGuard.request[].googleModelArmor.policies.transformations.request.setobject
binds[].listeners[].routes[].backends[].ai.policies.ai.promptGuard.request[].googleModelArmor.policies.transformations.request.remove[]string
binds[].listeners[].routes[].backends[].ai.policies.ai.promptGuard.request[].googleModelArmor.policies.transformations.request.bodystring
binds[].listeners[].routes[].backends[].ai.policies.ai.promptGuard.request[].googleModelArmor.policies.transformations.request.metadataobject
binds[].listeners[].routes[].backends[].ai.policies.ai.promptGuard.request[].googleModelArmor.policies.transformations.responseobject
binds[].listeners[].routes[].backends[].ai.policies.ai.promptGuard.request[].googleModelArmor.policies.transformations.response.addobject
binds[].listeners[].routes[].backends[].ai.policies.ai.promptGuard.request[].googleModelArmor.policies.transformations.response.setobject
binds[].listeners[].routes[].backends[].ai.policies.ai.promptGuard.request[].googleModelArmor.policies.transformations.response.remove[]string
binds[].listeners[].routes[].backends[].ai.policies.ai.promptGuard.request[].googleModelArmor.policies.transformations.response.bodystring
binds[].listeners[].routes[].backends[].ai.policies.ai.promptGuard.request[].googleModelArmor.policies.transformations.response.metadataobject
binds[].listeners[].routes[].backends[].ai.policies.ai.promptGuard.request[].googleModelArmor.policies.backendTLSobjectSend TLS to the backend.
binds[].listeners[].routes[].backends[].ai.policies.ai.promptGuard.request[].googleModelArmor.policies.backendTLS.certstring
binds[].listeners[].routes[].backends[].ai.policies.ai.promptGuard.request[].googleModelArmor.policies.backendTLS.keystring
binds[].listeners[].routes[].backends[].ai.policies.ai.promptGuard.request[].googleModelArmor.policies.backendTLS.rootstring
binds[].listeners[].routes[].backends[].ai.policies.ai.promptGuard.request[].googleModelArmor.policies.backendTLS.hostnamestring
binds[].listeners[].routes[].backends[].ai.policies.ai.promptGuard.request[].googleModelArmor.policies.backendTLS.insecureboolean
binds[].listeners[].routes[].backends[].ai.policies.ai.promptGuard.request[].googleModelArmor.policies.backendTLS.insecureHostboolean
binds[].listeners[].routes[].backends[].ai.policies.ai.promptGuard.request[].googleModelArmor.policies.backendTLS.alpn[]string
binds[].listeners[].routes[].backends[].ai.policies.ai.promptGuard.request[].googleModelArmor.policies.backendTLS.subjectAltNames[]string
binds[].listeners[].routes[].backends[].ai.policies.ai.promptGuard.request[].googleModelArmor.policies.backendAuthobjectAuthenticate to the backend.
binds[].listeners[].routes[].backends[].ai.policies.ai.promptGuard.request[].googleModelArmor.policies.backendAuth.passthroughobject
binds[].listeners[].routes[].backends[].ai.policies.ai.promptGuard.request[].googleModelArmor.policies.backendAuth.keyobject
binds[].listeners[].routes[].backends[].ai.policies.ai.promptGuard.request[].googleModelArmor.policies.backendAuth.key.filestring
binds[].listeners[].routes[].backends[].ai.policies.ai.promptGuard.request[].googleModelArmor.policies.backendAuth.gcpobject
binds[].listeners[].routes[].backends[].ai.policies.ai.promptGuard.request[].googleModelArmor.policies.backendAuth.gcp.typestring
binds[].listeners[].routes[].backends[].ai.policies.ai.promptGuard.request[].googleModelArmor.policies.backendAuth.gcp.audiencestringAudience for the token. If not set, the destination host will be used.
binds[].listeners[].routes[].backends[].ai.policies.ai.promptGuard.request[].googleModelArmor.policies.backendAuth.gcp.typestring
binds[].listeners[].routes[].backends[].ai.policies.ai.promptGuard.request[].googleModelArmor.policies.backendAuth.awsobject
binds[].listeners[].routes[].backends[].ai.policies.ai.promptGuard.request[].googleModelArmor.policies.backendAuth.aws.accessKeyIdstring
binds[].listeners[].routes[].backends[].ai.policies.ai.promptGuard.request[].googleModelArmor.policies.backendAuth.aws.secretAccessKeystring
binds[].listeners[].routes[].backends[].ai.policies.ai.promptGuard.request[].googleModelArmor.policies.backendAuth.aws.regionstring
binds[].listeners[].routes[].backends[].ai.policies.ai.promptGuard.request[].googleModelArmor.policies.backendAuth.aws.sessionTokenstring
binds[].listeners[].routes[].backends[].ai.policies.ai.promptGuard.request[].googleModelArmor.policies.backendAuth.azureobjectExactly one of explicitConfig, developerImplicit, or implicit may be set.
binds[].listeners[].routes[].backends[].ai.policies.ai.promptGuard.request[].googleModelArmor.policies.backendAuth.azure.explicitConfigobjectExactly one of clientSecret, managedIdentity, or workloadIdentity may be set.
binds[].listeners[].routes[].backends[].ai.policies.ai.promptGuard.request[].googleModelArmor.policies.backendAuth.azure.explicitConfig.clientSecretobject
binds[].listeners[].routes[].backends[].ai.policies.ai.promptGuard.request[].googleModelArmor.policies.backendAuth.azure.explicitConfig.clientSecret.tenant_idstring
binds[].listeners[].routes[].backends[].ai.policies.ai.promptGuard.request[].googleModelArmor.policies.backendAuth.azure.explicitConfig.clientSecret.client_idstring
binds[].listeners[].routes[].backends[].ai.policies.ai.promptGuard.request[].googleModelArmor.policies.backendAuth.azure.explicitConfig.clientSecret.client_secretstring
binds[].listeners[].routes[].backends[].ai.policies.ai.promptGuard.request[].googleModelArmor.policies.backendAuth.azure.explicitConfig.managedIdentityobject
binds[].listeners[].routes[].backends[].ai.policies.ai.promptGuard.request[].googleModelArmor.policies.backendAuth.azure.explicitConfig.managedIdentity.userAssignedIdentityobject
binds[].listeners[].routes[].backends[].ai.policies.ai.promptGuard.request[].googleModelArmor.policies.backendAuth.azure.explicitConfig.managedIdentity.userAssignedIdentity.clientIdstring
binds[].listeners[].routes[].backends[].ai.policies.ai.promptGuard.request[].googleModelArmor.policies.backendAuth.azure.explicitConfig.managedIdentity.userAssignedIdentity.objectIdstring
binds[].listeners[].routes[].backends[].ai.policies.ai.promptGuard.request[].googleModelArmor.policies.backendAuth.azure.explicitConfig.managedIdentity.userAssignedIdentity.resourceIdstring
binds[].listeners[].routes[].backends[].ai.policies.ai.promptGuard.request[].googleModelArmor.policies.backendAuth.azure.explicitConfig.workloadIdentityobject
binds[].listeners[].routes[].backends[].ai.policies.ai.promptGuard.request[].googleModelArmor.policies.backendAuth.azure.developerImplicitobject
binds[].listeners[].routes[].backends[].ai.policies.ai.promptGuard.request[].googleModelArmor.policies.backendAuth.azure.implicitobject
binds[].listeners[].routes[].backends[].ai.policies.ai.promptGuard.request[].googleModelArmor.policies.httpobjectSpecify HTTP settings for the backend
binds[].listeners[].routes[].backends[].ai.policies.ai.promptGuard.request[].googleModelArmor.policies.http.versionstring
binds[].listeners[].routes[].backends[].ai.policies.ai.promptGuard.request[].googleModelArmor.policies.http.requestTimeoutstring
binds[].listeners[].routes[].backends[].ai.policies.ai.promptGuard.request[].googleModelArmor.policies.tcpobjectSpecify TCP settings for the backend
binds[].listeners[].routes[].backends[].ai.policies.ai.promptGuard.request[].googleModelArmor.policies.tcp.keepalivesobject
binds[].listeners[].routes[].backends[].ai.policies.ai.promptGuard.request[].googleModelArmor.policies.tcp.keepalives.enabledboolean
binds[].listeners[].routes[].backends[].ai.policies.ai.promptGuard.request[].googleModelArmor.policies.tcp.keepalives.timestring
binds[].listeners[].routes[].backends[].ai.policies.ai.promptGuard.request[].googleModelArmor.policies.tcp.keepalives.intervalstring
binds[].listeners[].routes[].backends[].ai.policies.ai.promptGuard.request[].googleModelArmor.policies.tcp.keepalives.retriesinteger
binds[].listeners[].routes[].backends[].ai.policies.ai.promptGuard.request[].googleModelArmor.policies.tcp.connectTimeoutobject
binds[].listeners[].routes[].backends[].ai.policies.ai.promptGuard.request[].googleModelArmor.policies.tcp.connectTimeout.secsinteger
binds[].listeners[].routes[].backends[].ai.policies.ai.promptGuard.request[].googleModelArmor.policies.tcp.connectTimeout.nanosinteger
binds[].listeners[].routes[].backends[].ai.policies.ai.promptGuard.request[].googleModelArmor.policies.healthobjectHealth policy for backend outlier detection; evicts on unhealthy responses based on CEL condition and configurable duration.
binds[].listeners[].routes[].backends[].ai.policies.ai.promptGuard.request[].googleModelArmor.policies.health.unhealthyExpressionstringCEL expression; true means unhealthy (evict). E.g. response.code >= 500.
When unset, any 5xx or connection failure is treated as unhealthy.
binds[].listeners[].routes[].backends[].ai.policies.ai.promptGuard.request[].googleModelArmor.policies.health.evictionobjectLocal/config eviction sub-policy with duration as string; mirrors Eviction.
binds[].listeners[].routes[].backends[].ai.policies.ai.promptGuard.request[].googleModelArmor.policies.health.eviction.durationstring
binds[].listeners[].routes[].backends[].ai.policies.ai.promptGuard.request[].googleModelArmor.policies.health.eviction.restoreHealthnumber
binds[].listeners[].routes[].backends[].ai.policies.ai.promptGuard.request[].googleModelArmor.policies.health.eviction.consecutiveFailuresinteger
binds[].listeners[].routes[].backends[].ai.policies.ai.promptGuard.request[].googleModelArmor.policies.health.eviction.healthThresholdnumber
binds[].listeners[].routes[].backends[].ai.policies.ai.promptGuard.request[].googleModelArmor.policies.backendTunnelobjectSpecify a tunnel to use when connecting to the backend
binds[].listeners[].routes[].backends[].ai.policies.ai.promptGuard.request[].googleModelArmor.policies.backendTunnel.proxyobjectReference to the proxy address
Exactly one of service, host, or backend may be set.
binds[].listeners[].routes[].backends[].ai.policies.ai.promptGuard.request[].googleModelArmor.policies.backendTunnel.proxy.serviceobject
binds[].listeners[].routes[].backends[].ai.policies.ai.promptGuard.request[].googleModelArmor.policies.backendTunnel.proxy.service.nameobject
binds[].listeners[].routes[].backends[].ai.policies.ai.promptGuard.request[].googleModelArmor.policies.backendTunnel.proxy.service.name.namespacestring
binds[].listeners[].routes[].backends[].ai.policies.ai.promptGuard.request[].googleModelArmor.policies.backendTunnel.proxy.service.name.hostnamestring
binds[].listeners[].routes[].backends[].ai.policies.ai.promptGuard.request[].googleModelArmor.policies.backendTunnel.proxy.service.portinteger
binds[].listeners[].routes[].backends[].ai.policies.ai.promptGuard.request[].googleModelArmor.policies.backendTunnel.proxy.hoststringHostname or IP address
binds[].listeners[].routes[].backends[].ai.policies.ai.promptGuard.request[].googleModelArmor.policies.backendTunnel.proxy.backendstringExplicit backend reference. Backend must be defined in the top level backends list
binds[].listeners[].routes[].backends[].ai.policies.ai.promptGuard.request[].rejectionobject
binds[].listeners[].routes[].backends[].ai.policies.ai.promptGuard.request[].rejection.bodyarray
binds[].listeners[].routes[].backends[].ai.policies.ai.promptGuard.request[].rejection.statusinteger
binds[].listeners[].routes[].backends[].ai.policies.ai.promptGuard.request[].rejection.headersobjectOptional headers to add, set, or remove from the rejection response
binds[].listeners[].routes[].backends[].ai.policies.ai.promptGuard.request[].rejection.headers.addobject
binds[].listeners[].routes[].backends[].ai.policies.ai.promptGuard.request[].rejection.headers.setobject
binds[].listeners[].routes[].backends[].ai.policies.ai.promptGuard.request[].rejection.headers.remove[]string
binds[].listeners[].routes[].backends[].ai.policies.ai.promptGuard.response[]object
binds[].listeners[].routes[].backends[].ai.policies.ai.promptGuard.response[].regexobject
binds[].listeners[].routes[].backends[].ai.policies.ai.promptGuard.response[].regex.actionstring
binds[].listeners[].routes[].backends[].ai.policies.ai.promptGuard.response[].regex.rules[]object
binds[].listeners[].routes[].backends[].ai.policies.ai.promptGuard.response[].regex.rules[].builtinstring
binds[].listeners[].routes[].backends[].ai.policies.ai.promptGuard.response[].regex.rules[].patternstring
binds[].listeners[].routes[].backends[].ai.policies.ai.promptGuard.response[].webhookobject
binds[].listeners[].routes[].backends[].ai.policies.ai.promptGuard.response[].webhook.targetobjectExactly one of service, host, or backend may be set.
binds[].listeners[].routes[].backends[].ai.policies.ai.promptGuard.response[].webhook.target.serviceobject
binds[].listeners[].routes[].backends[].ai.policies.ai.promptGuard.response[].webhook.target.service.nameobject
binds[].listeners[].routes[].backends[].ai.policies.ai.promptGuard.response[].webhook.target.service.name.namespacestring
binds[].listeners[].routes[].backends[].ai.policies.ai.promptGuard.response[].webhook.target.service.name.hostnamestring
binds[].listeners[].routes[].backends[].ai.policies.ai.promptGuard.response[].webhook.target.service.portinteger
binds[].listeners[].routes[].backends[].ai.policies.ai.promptGuard.response[].webhook.target.hoststringHostname or IP address
binds[].listeners[].routes[].backends[].ai.policies.ai.promptGuard.response[].webhook.target.backendstringExplicit backend reference. Backend must be defined in the top level backends list
binds[].listeners[].routes[].backends[].ai.policies.ai.promptGuard.response[].webhook.forwardHeaderMatches[]object
binds[].listeners[].routes[].backends[].ai.policies.ai.promptGuard.response[].webhook.forwardHeaderMatches[].namestring
binds[].listeners[].routes[].backends[].ai.policies.ai.promptGuard.response[].webhook.forwardHeaderMatches[].valueobjectExactly one of exact or regex may be set.
binds[].listeners[].routes[].backends[].ai.policies.ai.promptGuard.response[].webhook.forwardHeaderMatches[].value.exactstring
binds[].listeners[].routes[].backends[].ai.policies.ai.promptGuard.response[].webhook.forwardHeaderMatches[].value.regexstring
binds[].listeners[].routes[].backends[].ai.policies.ai.promptGuard.response[].bedrockGuardrailsobjectConfiguration for AWS Bedrock Guardrails integration.
binds[].listeners[].routes[].backends[].ai.policies.ai.promptGuard.response[].bedrockGuardrails.guardrailIdentifierstringThe unique identifier of the guardrail
binds[].listeners[].routes[].backends[].ai.policies.ai.promptGuard.response[].bedrockGuardrails.guardrailVersionstringThe version of the guardrail
binds[].listeners[].routes[].backends[].ai.policies.ai.promptGuard.response[].bedrockGuardrails.regionstringAWS region where the guardrail is deployed
binds[].listeners[].routes[].backends[].ai.policies.ai.promptGuard.response[].bedrockGuardrails.policiesobjectBackend policies for AWS authentication (optional, defaults to implicit AWS auth)
binds[].listeners[].routes[].backends[].ai.policies.ai.promptGuard.response[].bedrockGuardrails.policies.requestHeaderModifierobjectHeaders to be modified in the request.
binds[].listeners[].routes[].backends[].ai.policies.ai.promptGuard.response[].bedrockGuardrails.policies.requestHeaderModifier.addobject
binds[].listeners[].routes[].backends[].ai.policies.ai.promptGuard.response[].bedrockGuardrails.policies.requestHeaderModifier.setobject
binds[].listeners[].routes[].backends[].ai.policies.ai.promptGuard.response[].bedrockGuardrails.policies.requestHeaderModifier.remove[]string
binds[].listeners[].routes[].backends[].ai.policies.ai.promptGuard.response[].bedrockGuardrails.policies.responseHeaderModifierobjectHeaders to be modified in the response.
binds[].listeners[].routes[].backends[].ai.policies.ai.promptGuard.response[].bedrockGuardrails.policies.responseHeaderModifier.addobject
binds[].listeners[].routes[].backends[].ai.policies.ai.promptGuard.response[].bedrockGuardrails.policies.responseHeaderModifier.setobject
binds[].listeners[].routes[].backends[].ai.policies.ai.promptGuard.response[].bedrockGuardrails.policies.responseHeaderModifier.remove[]string
binds[].listeners[].routes[].backends[].ai.policies.ai.promptGuard.response[].bedrockGuardrails.policies.requestRedirectobjectDirectly respond to the request with a redirect.
binds[].listeners[].routes[].backends[].ai.policies.ai.promptGuard.response[].bedrockGuardrails.policies.requestRedirect.schemestring
binds[].listeners[].routes[].backends[].ai.policies.ai.promptGuard.response[].bedrockGuardrails.policies.requestRedirect.authoritystring
binds[].listeners[].routes[].backends[].ai.policies.ai.promptGuard.response[].bedrockGuardrails.policies.requestRedirect.authority.fullstring
binds[].listeners[].routes[].backends[].ai.policies.ai.promptGuard.response[].bedrockGuardrails.policies.requestRedirect.authority.hoststring
binds[].listeners[].routes[].backends[].ai.policies.ai.promptGuard.response[].bedrockGuardrails.policies.requestRedirect.authority.portinteger
binds[].listeners[].routes[].backends[].ai.policies.ai.promptGuard.response[].bedrockGuardrails.policies.requestRedirect.pathobject
binds[].listeners[].routes[].backends[].ai.policies.ai.promptGuard.response[].bedrockGuardrails.policies.requestRedirect.path.fullstring
binds[].listeners[].routes[].backends[].ai.policies.ai.promptGuard.response[].bedrockGuardrails.policies.requestRedirect.path.prefixstring
binds[].listeners[].routes[].backends[].ai.policies.ai.promptGuard.response[].bedrockGuardrails.policies.requestRedirect.statusinteger
binds[].listeners[].routes[].backends[].ai.policies.ai.promptGuard.response[].bedrockGuardrails.policies.transformationsobjectModify requests and responses sent to and from the backend.
binds[].listeners[].routes[].backends[].ai.policies.ai.promptGuard.response[].bedrockGuardrails.policies.transformations.requestobject
binds[].listeners[].routes[].backends[].ai.policies.ai.promptGuard.response[].bedrockGuardrails.policies.transformations.request.addobject
binds[].listeners[].routes[].backends[].ai.policies.ai.promptGuard.response[].bedrockGuardrails.policies.transformations.request.setobject
binds[].listeners[].routes[].backends[].ai.policies.ai.promptGuard.response[].bedrockGuardrails.policies.transformations.request.remove[]string
binds[].listeners[].routes[].backends[].ai.policies.ai.promptGuard.response[].bedrockGuardrails.policies.transformations.request.bodystring
binds[].listeners[].routes[].backends[].ai.policies.ai.promptGuard.response[].bedrockGuardrails.policies.transformations.request.metadataobject
binds[].listeners[].routes[].backends[].ai.policies.ai.promptGuard.response[].bedrockGuardrails.policies.transformations.responseobject
binds[].listeners[].routes[].backends[].ai.policies.ai.promptGuard.response[].bedrockGuardrails.policies.transformations.response.addobject
binds[].listeners[].routes[].backends[].ai.policies.ai.promptGuard.response[].bedrockGuardrails.policies.transformations.response.setobject
binds[].listeners[].routes[].backends[].ai.policies.ai.promptGuard.response[].bedrockGuardrails.policies.transformations.response.remove[]string
binds[].listeners[].routes[].backends[].ai.policies.ai.promptGuard.response[].bedrockGuardrails.policies.transformations.response.bodystring
binds[].listeners[].routes[].backends[].ai.policies.ai.promptGuard.response[].bedrockGuardrails.policies.transformations.response.metadataobject
binds[].listeners[].routes[].backends[].ai.policies.ai.promptGuard.response[].bedrockGuardrails.policies.backendTLSobjectSend TLS to the backend.
binds[].listeners[].routes[].backends[].ai.policies.ai.promptGuard.response[].bedrockGuardrails.policies.backendTLS.certstring
binds[].listeners[].routes[].backends[].ai.policies.ai.promptGuard.response[].bedrockGuardrails.policies.backendTLS.keystring
binds[].listeners[].routes[].backends[].ai.policies.ai.promptGuard.response[].bedrockGuardrails.policies.backendTLS.rootstring
binds[].listeners[].routes[].backends[].ai.policies.ai.promptGuard.response[].bedrockGuardrails.policies.backendTLS.hostnamestring
binds[].listeners[].routes[].backends[].ai.policies.ai.promptGuard.response[].bedrockGuardrails.policies.backendTLS.insecureboolean
binds[].listeners[].routes[].backends[].ai.policies.ai.promptGuard.response[].bedrockGuardrails.policies.backendTLS.insecureHostboolean
binds[].listeners[].routes[].backends[].ai.policies.ai.promptGuard.response[].bedrockGuardrails.policies.backendTLS.alpn[]string
binds[].listeners[].routes[].backends[].ai.policies.ai.promptGuard.response[].bedrockGuardrails.policies.backendTLS.subjectAltNames[]string
binds[].listeners[].routes[].backends[].ai.policies.ai.promptGuard.response[].bedrockGuardrails.policies.backendAuthobjectAuthenticate to the backend.
binds[].listeners[].routes[].backends[].ai.policies.ai.promptGuard.response[].bedrockGuardrails.policies.backendAuth.passthroughobject
binds[].listeners[].routes[].backends[].ai.policies.ai.promptGuard.response[].bedrockGuardrails.policies.backendAuth.keyobject
binds[].listeners[].routes[].backends[].ai.policies.ai.promptGuard.response[].bedrockGuardrails.policies.backendAuth.key.filestring
binds[].listeners[].routes[].backends[].ai.policies.ai.promptGuard.response[].bedrockGuardrails.policies.backendAuth.gcpobject
binds[].listeners[].routes[].backends[].ai.policies.ai.promptGuard.response[].bedrockGuardrails.policies.backendAuth.gcp.typestring
binds[].listeners[].routes[].backends[].ai.policies.ai.promptGuard.response[].bedrockGuardrails.policies.backendAuth.gcp.audiencestringAudience for the token. If not set, the destination host will be used.
binds[].listeners[].routes[].backends[].ai.policies.ai.promptGuard.response[].bedrockGuardrails.policies.backendAuth.gcp.typestring
binds[].listeners[].routes[].backends[].ai.policies.ai.promptGuard.response[].bedrockGuardrails.policies.backendAuth.awsobject
binds[].listeners[].routes[].backends[].ai.policies.ai.promptGuard.response[].bedrockGuardrails.policies.backendAuth.aws.accessKeyIdstring
binds[].listeners[].routes[].backends[].ai.policies.ai.promptGuard.response[].bedrockGuardrails.policies.backendAuth.aws.secretAccessKeystring
binds[].listeners[].routes[].backends[].ai.policies.ai.promptGuard.response[].bedrockGuardrails.policies.backendAuth.aws.regionstring
binds[].listeners[].routes[].backends[].ai.policies.ai.promptGuard.response[].bedrockGuardrails.policies.backendAuth.aws.sessionTokenstring
binds[].listeners[].routes[].backends[].ai.policies.ai.promptGuard.response[].bedrockGuardrails.policies.backendAuth.azureobjectExactly one of explicitConfig, developerImplicit, or implicit may be set.
binds[].listeners[].routes[].backends[].ai.policies.ai.promptGuard.response[].bedrockGuardrails.policies.backendAuth.azure.explicitConfigobjectExactly one of clientSecret, managedIdentity, or workloadIdentity may be set.
binds[].listeners[].routes[].backends[].ai.policies.ai.promptGuard.response[].bedrockGuardrails.policies.backendAuth.azure.explicitConfig.clientSecretobject
binds[].listeners[].routes[].backends[].ai.policies.ai.promptGuard.response[].bedrockGuardrails.policies.backendAuth.azure.explicitConfig.clientSecret.tenant_idstring
binds[].listeners[].routes[].backends[].ai.policies.ai.promptGuard.response[].bedrockGuardrails.policies.backendAuth.azure.explicitConfig.clientSecret.client_idstring
binds[].listeners[].routes[].backends[].ai.policies.ai.promptGuard.response[].bedrockGuardrails.policies.backendAuth.azure.explicitConfig.clientSecret.client_secretstring
binds[].listeners[].routes[].backends[].ai.policies.ai.promptGuard.response[].bedrockGuardrails.policies.backendAuth.azure.explicitConfig.managedIdentityobject
binds[].listeners[].routes[].backends[].ai.policies.ai.promptGuard.response[].bedrockGuardrails.policies.backendAuth.azure.explicitConfig.managedIdentity.userAssignedIdentityobject
binds[].listeners[].routes[].backends[].ai.policies.ai.promptGuard.response[].bedrockGuardrails.policies.backendAuth.azure.explicitConfig.managedIdentity.userAssignedIdentity.clientIdstring
binds[].listeners[].routes[].backends[].ai.policies.ai.promptGuard.response[].bedrockGuardrails.policies.backendAuth.azure.explicitConfig.managedIdentity.userAssignedIdentity.objectIdstring
binds[].listeners[].routes[].backends[].ai.policies.ai.promptGuard.response[].bedrockGuardrails.policies.backendAuth.azure.explicitConfig.managedIdentity.userAssignedIdentity.resourceIdstring
binds[].listeners[].routes[].backends[].ai.policies.ai.promptGuard.response[].bedrockGuardrails.policies.backendAuth.azure.explicitConfig.workloadIdentityobject
binds[].listeners[].routes[].backends[].ai.policies.ai.promptGuard.response[].bedrockGuardrails.policies.backendAuth.azure.developerImplicitobject
binds[].listeners[].routes[].backends[].ai.policies.ai.promptGuard.response[].bedrockGuardrails.policies.backendAuth.azure.implicitobject
binds[].listeners[].routes[].backends[].ai.policies.ai.promptGuard.response[].bedrockGuardrails.policies.httpobjectSpecify HTTP settings for the backend
binds[].listeners[].routes[].backends[].ai.policies.ai.promptGuard.response[].bedrockGuardrails.policies.http.versionstring
binds[].listeners[].routes[].backends[].ai.policies.ai.promptGuard.response[].bedrockGuardrails.policies.http.requestTimeoutstring
binds[].listeners[].routes[].backends[].ai.policies.ai.promptGuard.response[].bedrockGuardrails.policies.tcpobjectSpecify TCP settings for the backend
binds[].listeners[].routes[].backends[].ai.policies.ai.promptGuard.response[].bedrockGuardrails.policies.tcp.keepalivesobject
binds[].listeners[].routes[].backends[].ai.policies.ai.promptGuard.response[].bedrockGuardrails.policies.tcp.keepalives.enabledboolean
binds[].listeners[].routes[].backends[].ai.policies.ai.promptGuard.response[].bedrockGuardrails.policies.tcp.keepalives.timestring
binds[].listeners[].routes[].backends[].ai.policies.ai.promptGuard.response[].bedrockGuardrails.policies.tcp.keepalives.intervalstring
binds[].listeners[].routes[].backends[].ai.policies.ai.promptGuard.response[].bedrockGuardrails.policies.tcp.keepalives.retriesinteger
binds[].listeners[].routes[].backends[].ai.policies.ai.promptGuard.response[].bedrockGuardrails.policies.tcp.connectTimeoutobject
binds[].listeners[].routes[].backends[].ai.policies.ai.promptGuard.response[].bedrockGuardrails.policies.tcp.connectTimeout.secsinteger
binds[].listeners[].routes[].backends[].ai.policies.ai.promptGuard.response[].bedrockGuardrails.policies.tcp.connectTimeout.nanosinteger
binds[].listeners[].routes[].backends[].ai.policies.ai.promptGuard.response[].bedrockGuardrails.policies.healthobjectHealth policy for backend outlier detection; evicts on unhealthy responses based on CEL condition and configurable duration.
binds[].listeners[].routes[].backends[].ai.policies.ai.promptGuard.response[].bedrockGuardrails.policies.health.unhealthyExpressionstringCEL expression; true means unhealthy (evict). E.g. response.code >= 500.
When unset, any 5xx or connection failure is treated as unhealthy.
binds[].listeners[].routes[].backends[].ai.policies.ai.promptGuard.response[].bedrockGuardrails.policies.health.evictionobjectLocal/config eviction sub-policy with duration as string; mirrors Eviction.
binds[].listeners[].routes[].backends[].ai.policies.ai.promptGuard.response[].bedrockGuardrails.policies.health.eviction.durationstring
binds[].listeners[].routes[].backends[].ai.policies.ai.promptGuard.response[].bedrockGuardrails.policies.health.eviction.restoreHealthnumber
binds[].listeners[].routes[].backends[].ai.policies.ai.promptGuard.response[].bedrockGuardrails.policies.health.eviction.consecutiveFailuresinteger
binds[].listeners[].routes[].backends[].ai.policies.ai.promptGuard.response[].bedrockGuardrails.policies.health.eviction.healthThresholdnumber
binds[].listeners[].routes[].backends[].ai.policies.ai.promptGuard.response[].bedrockGuardrails.policies.backendTunnelobjectSpecify a tunnel to use when connecting to the backend
binds[].listeners[].routes[].backends[].ai.policies.ai.promptGuard.response[].bedrockGuardrails.policies.backendTunnel.proxyobjectReference to the proxy address
Exactly one of service, host, or backend may be set.
binds[].listeners[].routes[].backends[].ai.policies.ai.promptGuard.response[].bedrockGuardrails.policies.backendTunnel.proxy.serviceobject
binds[].listeners[].routes[].backends[].ai.policies.ai.promptGuard.response[].bedrockGuardrails.policies.backendTunnel.proxy.service.nameobject
binds[].listeners[].routes[].backends[].ai.policies.ai.promptGuard.response[].bedrockGuardrails.policies.backendTunnel.proxy.service.name.namespacestring
binds[].listeners[].routes[].backends[].ai.policies.ai.promptGuard.response[].bedrockGuardrails.policies.backendTunnel.proxy.service.name.hostnamestring
binds[].listeners[].routes[].backends[].ai.policies.ai.promptGuard.response[].bedrockGuardrails.policies.backendTunnel.proxy.service.portinteger
binds[].listeners[].routes[].backends[].ai.policies.ai.promptGuard.response[].bedrockGuardrails.policies.backendTunnel.proxy.hoststringHostname or IP address
binds[].listeners[].routes[].backends[].ai.policies.ai.promptGuard.response[].bedrockGuardrails.policies.backendTunnel.proxy.backendstringExplicit backend reference. Backend must be defined in the top level backends list
binds[].listeners[].routes[].backends[].ai.policies.ai.promptGuard.response[].googleModelArmorobjectConfiguration for Google Cloud Model Armor integration.
binds[].listeners[].routes[].backends[].ai.policies.ai.promptGuard.response[].googleModelArmor.templateIdstringThe template ID for the Model Armor configuration
binds[].listeners[].routes[].backends[].ai.policies.ai.promptGuard.response[].googleModelArmor.projectIdstringThe GCP project ID
binds[].listeners[].routes[].backends[].ai.policies.ai.promptGuard.response[].googleModelArmor.locationstringThe GCP region (default: us-central1)
binds[].listeners[].routes[].backends[].ai.policies.ai.promptGuard.response[].googleModelArmor.policiesobjectBackend policies for GCP authentication (optional, defaults to implicit GCP auth)
binds[].listeners[].routes[].backends[].ai.policies.ai.promptGuard.response[].googleModelArmor.policies.requestHeaderModifierobjectHeaders to be modified in the request.
binds[].listeners[].routes[].backends[].ai.policies.ai.promptGuard.response[].googleModelArmor.policies.requestHeaderModifier.addobject
binds[].listeners[].routes[].backends[].ai.policies.ai.promptGuard.response[].googleModelArmor.policies.requestHeaderModifier.setobject
binds[].listeners[].routes[].backends[].ai.policies.ai.promptGuard.response[].googleModelArmor.policies.requestHeaderModifier.remove[]string
binds[].listeners[].routes[].backends[].ai.policies.ai.promptGuard.response[].googleModelArmor.policies.responseHeaderModifierobjectHeaders to be modified in the response.
binds[].listeners[].routes[].backends[].ai.policies.ai.promptGuard.response[].googleModelArmor.policies.responseHeaderModifier.addobject
binds[].listeners[].routes[].backends[].ai.policies.ai.promptGuard.response[].googleModelArmor.policies.responseHeaderModifier.setobject
binds[].listeners[].routes[].backends[].ai.policies.ai.promptGuard.response[].googleModelArmor.policies.responseHeaderModifier.remove[]string
binds[].listeners[].routes[].backends[].ai.policies.ai.promptGuard.response[].googleModelArmor.policies.requestRedirectobjectDirectly respond to the request with a redirect.
binds[].listeners[].routes[].backends[].ai.policies.ai.promptGuard.response[].googleModelArmor.policies.requestRedirect.schemestring
binds[].listeners[].routes[].backends[].ai.policies.ai.promptGuard.response[].googleModelArmor.policies.requestRedirect.authoritystring
binds[].listeners[].routes[].backends[].ai.policies.ai.promptGuard.response[].googleModelArmor.policies.requestRedirect.authority.fullstring
binds[].listeners[].routes[].backends[].ai.policies.ai.promptGuard.response[].googleModelArmor.policies.requestRedirect.authority.hoststring
binds[].listeners[].routes[].backends[].ai.policies.ai.promptGuard.response[].googleModelArmor.policies.requestRedirect.authority.portinteger
binds[].listeners[].routes[].backends[].ai.policies.ai.promptGuard.response[].googleModelArmor.policies.requestRedirect.pathobject
binds[].listeners[].routes[].backends[].ai.policies.ai.promptGuard.response[].googleModelArmor.policies.requestRedirect.path.fullstring
binds[].listeners[].routes[].backends[].ai.policies.ai.promptGuard.response[].googleModelArmor.policies.requestRedirect.path.prefixstring
binds[].listeners[].routes[].backends[].ai.policies.ai.promptGuard.response[].googleModelArmor.policies.requestRedirect.statusinteger
binds[].listeners[].routes[].backends[].ai.policies.ai.promptGuard.response[].googleModelArmor.policies.transformationsobjectModify requests and responses sent to and from the backend.
binds[].listeners[].routes[].backends[].ai.policies.ai.promptGuard.response[].googleModelArmor.policies.transformations.requestobject
binds[].listeners[].routes[].backends[].ai.policies.ai.promptGuard.response[].googleModelArmor.policies.transformations.request.addobject
binds[].listeners[].routes[].backends[].ai.policies.ai.promptGuard.response[].googleModelArmor.policies.transformations.request.setobject
binds[].listeners[].routes[].backends[].ai.policies.ai.promptGuard.response[].googleModelArmor.policies.transformations.request.remove[]string
binds[].listeners[].routes[].backends[].ai.policies.ai.promptGuard.response[].googleModelArmor.policies.transformations.request.bodystring
binds[].listeners[].routes[].backends[].ai.policies.ai.promptGuard.response[].googleModelArmor.policies.transformations.request.metadataobject
binds[].listeners[].routes[].backends[].ai.policies.ai.promptGuard.response[].googleModelArmor.policies.transformations.responseobject
binds[].listeners[].routes[].backends[].ai.policies.ai.promptGuard.response[].googleModelArmor.policies.transformations.response.addobject
binds[].listeners[].routes[].backends[].ai.policies.ai.promptGuard.response[].googleModelArmor.policies.transformations.response.setobject
binds[].listeners[].routes[].backends[].ai.policies.ai.promptGuard.response[].googleModelArmor.policies.transformations.response.remove[]string
binds[].listeners[].routes[].backends[].ai.policies.ai.promptGuard.response[].googleModelArmor.policies.transformations.response.bodystring
binds[].listeners[].routes[].backends[].ai.policies.ai.promptGuard.response[].googleModelArmor.policies.transformations.response.metadataobject
binds[].listeners[].routes[].backends[].ai.policies.ai.promptGuard.response[].googleModelArmor.policies.backendTLSobjectSend TLS to the backend.
binds[].listeners[].routes[].backends[].ai.policies.ai.promptGuard.response[].googleModelArmor.policies.backendTLS.certstring
binds[].listeners[].routes[].backends[].ai.policies.ai.promptGuard.response[].googleModelArmor.policies.backendTLS.keystring
binds[].listeners[].routes[].backends[].ai.policies.ai.promptGuard.response[].googleModelArmor.policies.backendTLS.rootstring
binds[].listeners[].routes[].backends[].ai.policies.ai.promptGuard.response[].googleModelArmor.policies.backendTLS.hostnamestring
binds[].listeners[].routes[].backends[].ai.policies.ai.promptGuard.response[].googleModelArmor.policies.backendTLS.insecureboolean
binds[].listeners[].routes[].backends[].ai.policies.ai.promptGuard.response[].googleModelArmor.policies.backendTLS.insecureHostboolean
binds[].listeners[].routes[].backends[].ai.policies.ai.promptGuard.response[].googleModelArmor.policies.backendTLS.alpn[]string
binds[].listeners[].routes[].backends[].ai.policies.ai.promptGuard.response[].googleModelArmor.policies.backendTLS.subjectAltNames[]string
binds[].listeners[].routes[].backends[].ai.policies.ai.promptGuard.response[].googleModelArmor.policies.backendAuthobjectAuthenticate to the backend.
binds[].listeners[].routes[].backends[].ai.policies.ai.promptGuard.response[].googleModelArmor.policies.backendAuth.passthroughobject
binds[].listeners[].routes[].backends[].ai.policies.ai.promptGuard.response[].googleModelArmor.policies.backendAuth.keyobject
binds[].listeners[].routes[].backends[].ai.policies.ai.promptGuard.response[].googleModelArmor.policies.backendAuth.key.filestring
binds[].listeners[].routes[].backends[].ai.policies.ai.promptGuard.response[].googleModelArmor.policies.backendAuth.gcpobject
binds[].listeners[].routes[].backends[].ai.policies.ai.promptGuard.response[].googleModelArmor.policies.backendAuth.gcp.typestring
binds[].listeners[].routes[].backends[].ai.policies.ai.promptGuard.response[].googleModelArmor.policies.backendAuth.gcp.audiencestringAudience for the token. If not set, the destination host will be used.
binds[].listeners[].routes[].backends[].ai.policies.ai.promptGuard.response[].googleModelArmor.policies.backendAuth.gcp.typestring
binds[].listeners[].routes[].backends[].ai.policies.ai.promptGuard.response[].googleModelArmor.policies.backendAuth.awsobject
binds[].listeners[].routes[].backends[].ai.policies.ai.promptGuard.response[].googleModelArmor.policies.backendAuth.aws.accessKeyIdstring
binds[].listeners[].routes[].backends[].ai.policies.ai.promptGuard.response[].googleModelArmor.policies.backendAuth.aws.secretAccessKeystring
binds[].listeners[].routes[].backends[].ai.policies.ai.promptGuard.response[].googleModelArmor.policies.backendAuth.aws.regionstring
binds[].listeners[].routes[].backends[].ai.policies.ai.promptGuard.response[].googleModelArmor.policies.backendAuth.aws.sessionTokenstring
binds[].listeners[].routes[].backends[].ai.policies.ai.promptGuard.response[].googleModelArmor.policies.backendAuth.azureobjectExactly one of explicitConfig, developerImplicit, or implicit may be set.
binds[].listeners[].routes[].backends[].ai.policies.ai.promptGuard.response[].googleModelArmor.policies.backendAuth.azure.explicitConfigobjectExactly one of clientSecret, managedIdentity, or workloadIdentity may be set.
binds[].listeners[].routes[].backends[].ai.policies.ai.promptGuard.response[].googleModelArmor.policies.backendAuth.azure.explicitConfig.clientSecretobject
binds[].listeners[].routes[].backends[].ai.policies.ai.promptGuard.response[].googleModelArmor.policies.backendAuth.azure.explicitConfig.clientSecret.tenant_idstring
binds[].listeners[].routes[].backends[].ai.policies.ai.promptGuard.response[].googleModelArmor.policies.backendAuth.azure.explicitConfig.clientSecret.client_idstring
binds[].listeners[].routes[].backends[].ai.policies.ai.promptGuard.response[].googleModelArmor.policies.backendAuth.azure.explicitConfig.clientSecret.client_secretstring
binds[].listeners[].routes[].backends[].ai.policies.ai.promptGuard.response[].googleModelArmor.policies.backendAuth.azure.explicitConfig.managedIdentityobject
binds[].listeners[].routes[].backends[].ai.policies.ai.promptGuard.response[].googleModelArmor.policies.backendAuth.azure.explicitConfig.managedIdentity.userAssignedIdentityobject
binds[].listeners[].routes[].backends[].ai.policies.ai.promptGuard.response[].googleModelArmor.policies.backendAuth.azure.explicitConfig.managedIdentity.userAssignedIdentity.clientIdstring
binds[].listeners[].routes[].backends[].ai.policies.ai.promptGuard.response[].googleModelArmor.policies.backendAuth.azure.explicitConfig.managedIdentity.userAssignedIdentity.objectIdstring
binds[].listeners[].routes[].backends[].ai.policies.ai.promptGuard.response[].googleModelArmor.policies.backendAuth.azure.explicitConfig.managedIdentity.userAssignedIdentity.resourceIdstring
binds[].listeners[].routes[].backends[].ai.policies.ai.promptGuard.response[].googleModelArmor.policies.backendAuth.azure.explicitConfig.workloadIdentityobject
binds[].listeners[].routes[].backends[].ai.policies.ai.promptGuard.response[].googleModelArmor.policies.backendAuth.azure.developerImplicitobject
binds[].listeners[].routes[].backends[].ai.policies.ai.promptGuard.response[].googleModelArmor.policies.backendAuth.azure.implicitobject
binds[].listeners[].routes[].backends[].ai.policies.ai.promptGuard.response[].googleModelArmor.policies.httpobjectSpecify HTTP settings for the backend
binds[].listeners[].routes[].backends[].ai.policies.ai.promptGuard.response[].googleModelArmor.policies.http.versionstring
binds[].listeners[].routes[].backends[].ai.policies.ai.promptGuard.response[].googleModelArmor.policies.http.requestTimeoutstring
binds[].listeners[].routes[].backends[].ai.policies.ai.promptGuard.response[].googleModelArmor.policies.tcpobjectSpecify TCP settings for the backend
binds[].listeners[].routes[].backends[].ai.policies.ai.promptGuard.response[].googleModelArmor.policies.tcp.keepalivesobject
binds[].listeners[].routes[].backends[].ai.policies.ai.promptGuard.response[].googleModelArmor.policies.tcp.keepalives.enabledboolean
binds[].listeners[].routes[].backends[].ai.policies.ai.promptGuard.response[].googleModelArmor.policies.tcp.keepalives.timestring
binds[].listeners[].routes[].backends[].ai.policies.ai.promptGuard.response[].googleModelArmor.policies.tcp.keepalives.intervalstring
binds[].listeners[].routes[].backends[].ai.policies.ai.promptGuard.response[].googleModelArmor.policies.tcp.keepalives.retriesinteger
binds[].listeners[].routes[].backends[].ai.policies.ai.promptGuard.response[].googleModelArmor.policies.tcp.connectTimeoutobject
binds[].listeners[].routes[].backends[].ai.policies.ai.promptGuard.response[].googleModelArmor.policies.tcp.connectTimeout.secsinteger
binds[].listeners[].routes[].backends[].ai.policies.ai.promptGuard.response[].googleModelArmor.policies.tcp.connectTimeout.nanosinteger
binds[].listeners[].routes[].backends[].ai.policies.ai.promptGuard.response[].googleModelArmor.policies.healthobjectHealth policy for backend outlier detection; evicts on unhealthy responses based on CEL condition and configurable duration.
binds[].listeners[].routes[].backends[].ai.policies.ai.promptGuard.response[].googleModelArmor.policies.health.unhealthyExpressionstringCEL expression; true means unhealthy (evict). E.g. response.code >= 500.
When unset, any 5xx or connection failure is treated as unhealthy.
binds[].listeners[].routes[].backends[].ai.policies.ai.promptGuard.response[].googleModelArmor.policies.health.evictionobjectLocal/config eviction sub-policy with duration as string; mirrors Eviction.
binds[].listeners[].routes[].backends[].ai.policies.ai.promptGuard.response[].googleModelArmor.policies.health.eviction.durationstring
binds[].listeners[].routes[].backends[].ai.policies.ai.promptGuard.response[].googleModelArmor.policies.health.eviction.restoreHealthnumber
binds[].listeners[].routes[].backends[].ai.policies.ai.promptGuard.response[].googleModelArmor.policies.health.eviction.consecutiveFailuresinteger
binds[].listeners[].routes[].backends[].ai.policies.ai.promptGuard.response[].googleModelArmor.policies.health.eviction.healthThresholdnumber
binds[].listeners[].routes[].backends[].ai.policies.ai.promptGuard.response[].googleModelArmor.policies.backendTunnelobjectSpecify a tunnel to use when connecting to the backend
binds[].listeners[].routes[].backends[].ai.policies.ai.promptGuard.response[].googleModelArmor.policies.backendTunnel.proxyobjectReference to the proxy address
Exactly one of service, host, or backend may be set.
binds[].listeners[].routes[].backends[].ai.policies.ai.promptGuard.response[].googleModelArmor.policies.backendTunnel.proxy.serviceobject
binds[].listeners[].routes[].backends[].ai.policies.ai.promptGuard.response[].googleModelArmor.policies.backendTunnel.proxy.service.nameobject
binds[].listeners[].routes[].backends[].ai.policies.ai.promptGuard.response[].googleModelArmor.policies.backendTunnel.proxy.service.name.namespacestring
binds[].listeners[].routes[].backends[].ai.policies.ai.promptGuard.response[].googleModelArmor.policies.backendTunnel.proxy.service.name.hostnamestring
binds[].listeners[].routes[].backends[].ai.policies.ai.promptGuard.response[].googleModelArmor.policies.backendTunnel.proxy.service.portinteger
binds[].listeners[].routes[].backends[].ai.policies.ai.promptGuard.response[].googleModelArmor.policies.backendTunnel.proxy.hoststringHostname or IP address
binds[].listeners[].routes[].backends[].ai.policies.ai.promptGuard.response[].googleModelArmor.policies.backendTunnel.proxy.backendstringExplicit backend reference. Backend must be defined in the top level backends list
binds[].listeners[].routes[].backends[].ai.policies.ai.promptGuard.response[].rejectionobject
binds[].listeners[].routes[].backends[].ai.policies.ai.promptGuard.response[].rejection.bodyarray
binds[].listeners[].routes[].backends[].ai.policies.ai.promptGuard.response[].rejection.statusinteger
binds[].listeners[].routes[].backends[].ai.policies.ai.promptGuard.response[].rejection.headersobjectOptional headers to add, set, or remove from the rejection response
binds[].listeners[].routes[].backends[].ai.policies.ai.promptGuard.response[].rejection.headers.addobject
binds[].listeners[].routes[].backends[].ai.policies.ai.promptGuard.response[].rejection.headers.setobject
binds[].listeners[].routes[].backends[].ai.policies.ai.promptGuard.response[].rejection.headers.remove[]string
binds[].listeners[].routes[].backends[].ai.policies.ai.defaultsobject
binds[].listeners[].routes[].backends[].ai.policies.ai.overridesobject
binds[].listeners[].routes[].backends[].ai.policies.ai.transformationsobject
binds[].listeners[].routes[].backends[].ai.policies.ai.promptsobject
binds[].listeners[].routes[].backends[].ai.policies.ai.prompts.append[]object
binds[].listeners[].routes[].backends[].ai.policies.ai.prompts.append[].rolestring
binds[].listeners[].routes[].backends[].ai.policies.ai.prompts.append[].contentstring
binds[].listeners[].routes[].backends[].ai.policies.ai.prompts.prepend[]object
binds[].listeners[].routes[].backends[].ai.policies.ai.prompts.prepend[].rolestring
binds[].listeners[].routes[].backends[].ai.policies.ai.prompts.prepend[].contentstring
binds[].listeners[].routes[].backends[].ai.policies.ai.modelAliasesobject
binds[].listeners[].routes[].backends[].ai.policies.ai.promptCachingobject
binds[].listeners[].routes[].backends[].ai.policies.ai.promptCaching.cacheSystemboolean
binds[].listeners[].routes[].backends[].ai.policies.ai.promptCaching.cacheMessagesboolean
binds[].listeners[].routes[].backends[].ai.policies.ai.promptCaching.cacheToolsboolean
binds[].listeners[].routes[].backends[].ai.policies.ai.promptCaching.minTokensinteger
binds[].listeners[].routes[].backends[].ai.policies.ai.routesobject
binds[].listeners[].routes[].backends[].ai.groups[]object
binds[].listeners[].routes[].backends[].ai.groups[].providers[]object
binds[].listeners[].routes[].backends[].ai.groups[].providers[].namestring
binds[].listeners[].routes[].backends[].ai.groups[].providers[].providerobjectExactly one of openAI, gemini, vertex, anthropic, bedrock, or azureOpenAI may be set.
binds[].listeners[].routes[].backends[].ai.groups[].providers[].provider.openAIobject
binds[].listeners[].routes[].backends[].ai.groups[].providers[].provider.openAI.modelstring
binds[].listeners[].routes[].backends[].ai.groups[].providers[].provider.geminiobject
binds[].listeners[].routes[].backends[].ai.groups[].providers[].provider.gemini.modelstring
binds[].listeners[].routes[].backends[].ai.groups[].providers[].provider.vertexobject
binds[].listeners[].routes[].backends[].ai.groups[].providers[].provider.vertex.modelstring
binds[].listeners[].routes[].backends[].ai.groups[].providers[].provider.vertex.regionstring
binds[].listeners[].routes[].backends[].ai.groups[].providers[].provider.vertex.projectIdstring
binds[].listeners[].routes[].backends[].ai.groups[].providers[].provider.anthropicobject
binds[].listeners[].routes[].backends[].ai.groups[].providers[].provider.anthropic.modelstring
binds[].listeners[].routes[].backends[].ai.groups[].providers[].provider.bedrockobject
binds[].listeners[].routes[].backends[].ai.groups[].providers[].provider.bedrock.modelstring
binds[].listeners[].routes[].backends[].ai.groups[].providers[].provider.bedrock.regionstring
binds[].listeners[].routes[].backends[].ai.groups[].providers[].provider.bedrock.guardrailIdentifierstring
binds[].listeners[].routes[].backends[].ai.groups[].providers[].provider.bedrock.guardrailVersionstring
binds[].listeners[].routes[].backends[].ai.groups[].providers[].provider.azureOpenAIobject
binds[].listeners[].routes[].backends[].ai.groups[].providers[].provider.azureOpenAI.modelstring
binds[].listeners[].routes[].backends[].ai.groups[].providers[].provider.azureOpenAI.hoststring
binds[].listeners[].routes[].backends[].ai.groups[].providers[].provider.azureOpenAI.apiVersionstring
binds[].listeners[].routes[].backends[].ai.groups[].providers[].hostOverridestring
binds[].listeners[].routes[].backends[].ai.groups[].providers[].pathOverridestring
binds[].listeners[].routes[].backends[].ai.groups[].providers[].tokenizebooleanWhether to tokenize on the request flow. This enables us to do more accurate rate limits,
since we know (part of) the cost of the request upfront.
This comes with the cost of an expensive operation.
binds[].listeners[].routes[].backends[].ai.groups[].providers[].policiesobject
binds[].listeners[].routes[].backends[].ai.groups[].providers[].policies.requestHeaderModifierobjectHeaders to be modified in the request.
binds[].listeners[].routes[].backends[].ai.groups[].providers[].policies.requestHeaderModifier.addobject
binds[].listeners[].routes[].backends[].ai.groups[].providers[].policies.requestHeaderModifier.setobject
binds[].listeners[].routes[].backends[].ai.groups[].providers[].policies.requestHeaderModifier.remove[]string
binds[].listeners[].routes[].backends[].ai.groups[].providers[].policies.responseHeaderModifierobjectHeaders to be modified in the response.
binds[].listeners[].routes[].backends[].ai.groups[].providers[].policies.responseHeaderModifier.addobject
binds[].listeners[].routes[].backends[].ai.groups[].providers[].policies.responseHeaderModifier.setobject
binds[].listeners[].routes[].backends[].ai.groups[].providers[].policies.responseHeaderModifier.remove[]string
binds[].listeners[].routes[].backends[].ai.groups[].providers[].policies.requestRedirectobjectDirectly respond to the request with a redirect.
binds[].listeners[].routes[].backends[].ai.groups[].providers[].policies.requestRedirect.schemestring
binds[].listeners[].routes[].backends[].ai.groups[].providers[].policies.requestRedirect.authoritystring
binds[].listeners[].routes[].backends[].ai.groups[].providers[].policies.requestRedirect.authority.fullstring
binds[].listeners[].routes[].backends[].ai.groups[].providers[].policies.requestRedirect.authority.hoststring
binds[].listeners[].routes[].backends[].ai.groups[].providers[].policies.requestRedirect.authority.portinteger
binds[].listeners[].routes[].backends[].ai.groups[].providers[].policies.requestRedirect.pathobject
binds[].listeners[].routes[].backends[].ai.groups[].providers[].policies.requestRedirect.path.fullstring
binds[].listeners[].routes[].backends[].ai.groups[].providers[].policies.requestRedirect.path.prefixstring
binds[].listeners[].routes[].backends[].ai.groups[].providers[].policies.requestRedirect.statusinteger
binds[].listeners[].routes[].backends[].ai.groups[].providers[].policies.transformationsobjectModify requests and responses sent to and from the backend.
binds[].listeners[].routes[].backends[].ai.groups[].providers[].policies.transformations.requestobject
binds[].listeners[].routes[].backends[].ai.groups[].providers[].policies.transformations.request.addobject
binds[].listeners[].routes[].backends[].ai.groups[].providers[].policies.transformations.request.setobject
binds[].listeners[].routes[].backends[].ai.groups[].providers[].policies.transformations.request.remove[]string
binds[].listeners[].routes[].backends[].ai.groups[].providers[].policies.transformations.request.bodystring
binds[].listeners[].routes[].backends[].ai.groups[].providers[].policies.transformations.request.metadataobject
binds[].listeners[].routes[].backends[].ai.groups[].providers[].policies.transformations.responseobject
binds[].listeners[].routes[].backends[].ai.groups[].providers[].policies.transformations.response.addobject
binds[].listeners[].routes[].backends[].ai.groups[].providers[].policies.transformations.response.setobject
binds[].listeners[].routes[].backends[].ai.groups[].providers[].policies.transformations.response.remove[]string
binds[].listeners[].routes[].backends[].ai.groups[].providers[].policies.transformations.response.bodystring
binds[].listeners[].routes[].backends[].ai.groups[].providers[].policies.transformations.response.metadataobject
binds[].listeners[].routes[].backends[].ai.groups[].providers[].policies.backendTLSobjectSend TLS to the backend.
binds[].listeners[].routes[].backends[].ai.groups[].providers[].policies.backendTLS.certstring
binds[].listeners[].routes[].backends[].ai.groups[].providers[].policies.backendTLS.keystring
binds[].listeners[].routes[].backends[].ai.groups[].providers[].policies.backendTLS.rootstring
binds[].listeners[].routes[].backends[].ai.groups[].providers[].policies.backendTLS.hostnamestring
binds[].listeners[].routes[].backends[].ai.groups[].providers[].policies.backendTLS.insecureboolean
binds[].listeners[].routes[].backends[].ai.groups[].providers[].policies.backendTLS.insecureHostboolean
binds[].listeners[].routes[].backends[].ai.groups[].providers[].policies.backendTLS.alpn[]string
binds[].listeners[].routes[].backends[].ai.groups[].providers[].policies.backendTLS.subjectAltNames[]string
binds[].listeners[].routes[].backends[].ai.groups[].providers[].policies.backendAuthobjectAuthenticate to the backend.
binds[].listeners[].routes[].backends[].ai.groups[].providers[].policies.backendAuth.passthroughobject
binds[].listeners[].routes[].backends[].ai.groups[].providers[].policies.backendAuth.keyobject
binds[].listeners[].routes[].backends[].ai.groups[].providers[].policies.backendAuth.key.filestring
binds[].listeners[].routes[].backends[].ai.groups[].providers[].policies.backendAuth.gcpobject
binds[].listeners[].routes[].backends[].ai.groups[].providers[].policies.backendAuth.gcp.typestring
binds[].listeners[].routes[].backends[].ai.groups[].providers[].policies.backendAuth.gcp.audiencestringAudience for the token. If not set, the destination host will be used.
binds[].listeners[].routes[].backends[].ai.groups[].providers[].policies.backendAuth.gcp.typestring
binds[].listeners[].routes[].backends[].ai.groups[].providers[].policies.backendAuth.awsobject
binds[].listeners[].routes[].backends[].ai.groups[].providers[].policies.backendAuth.aws.accessKeyIdstring
binds[].listeners[].routes[].backends[].ai.groups[].providers[].policies.backendAuth.aws.secretAccessKeystring
binds[].listeners[].routes[].backends[].ai.groups[].providers[].policies.backendAuth.aws.regionstring
binds[].listeners[].routes[].backends[].ai.groups[].providers[].policies.backendAuth.aws.sessionTokenstring
binds[].listeners[].routes[].backends[].ai.groups[].providers[].policies.backendAuth.azureobjectExactly one of explicitConfig, developerImplicit, or implicit may be set.
binds[].listeners[].routes[].backends[].ai.groups[].providers[].policies.backendAuth.azure.explicitConfigobjectExactly one of clientSecret, managedIdentity, or workloadIdentity may be set.
binds[].listeners[].routes[].backends[].ai.groups[].providers[].policies.backendAuth.azure.explicitConfig.clientSecretobject
binds[].listeners[].routes[].backends[].ai.groups[].providers[].policies.backendAuth.azure.explicitConfig.clientSecret.tenant_idstring
binds[].listeners[].routes[].backends[].ai.groups[].providers[].policies.backendAuth.azure.explicitConfig.clientSecret.client_idstring
binds[].listeners[].routes[].backends[].ai.groups[].providers[].policies.backendAuth.azure.explicitConfig.clientSecret.client_secretstring
binds[].listeners[].routes[].backends[].ai.groups[].providers[].policies.backendAuth.azure.explicitConfig.managedIdentityobject
binds[].listeners[].routes[].backends[].ai.groups[].providers[].policies.backendAuth.azure.explicitConfig.managedIdentity.userAssignedIdentityobject
binds[].listeners[].routes[].backends[].ai.groups[].providers[].policies.backendAuth.azure.explicitConfig.managedIdentity.userAssignedIdentity.clientIdstring
binds[].listeners[].routes[].backends[].ai.groups[].providers[].policies.backendAuth.azure.explicitConfig.managedIdentity.userAssignedIdentity.objectIdstring
binds[].listeners[].routes[].backends[].ai.groups[].providers[].policies.backendAuth.azure.explicitConfig.managedIdentity.userAssignedIdentity.resourceIdstring
binds[].listeners[].routes[].backends[].ai.groups[].providers[].policies.backendAuth.azure.explicitConfig.workloadIdentityobject
binds[].listeners[].routes[].backends[].ai.groups[].providers[].policies.backendAuth.azure.developerImplicitobject
binds[].listeners[].routes[].backends[].ai.groups[].providers[].policies.backendAuth.azure.implicitobject
binds[].listeners[].routes[].backends[].ai.groups[].providers[].policies.httpobjectSpecify HTTP settings for the backend
binds[].listeners[].routes[].backends[].ai.groups[].providers[].policies.http.versionstring
binds[].listeners[].routes[].backends[].ai.groups[].providers[].policies.http.requestTimeoutstring
binds[].listeners[].routes[].backends[].ai.groups[].providers[].policies.tcpobjectSpecify TCP settings for the backend
binds[].listeners[].routes[].backends[].ai.groups[].providers[].policies.tcp.keepalivesobject
binds[].listeners[].routes[].backends[].ai.groups[].providers[].policies.tcp.keepalives.enabledboolean
binds[].listeners[].routes[].backends[].ai.groups[].providers[].policies.tcp.keepalives.timestring
binds[].listeners[].routes[].backends[].ai.groups[].providers[].policies.tcp.keepalives.intervalstring
binds[].listeners[].routes[].backends[].ai.groups[].providers[].policies.tcp.keepalives.retriesinteger
binds[].listeners[].routes[].backends[].ai.groups[].providers[].policies.tcp.connectTimeoutobject
binds[].listeners[].routes[].backends[].ai.groups[].providers[].policies.tcp.connectTimeout.secsinteger
binds[].listeners[].routes[].backends[].ai.groups[].providers[].policies.tcp.connectTimeout.nanosinteger
binds[].listeners[].routes[].backends[].ai.groups[].providers[].policies.healthobjectHealth policy for backend outlier detection; evicts on unhealthy responses based on CEL condition and configurable duration.
binds[].listeners[].routes[].backends[].ai.groups[].providers[].policies.health.unhealthyExpressionstringCEL expression; true means unhealthy (evict). E.g. response.code >= 500.
When unset, any 5xx or connection failure is treated as unhealthy.
binds[].listeners[].routes[].backends[].ai.groups[].providers[].policies.health.evictionobjectLocal/config eviction sub-policy with duration as string; mirrors Eviction.
binds[].listeners[].routes[].backends[].ai.groups[].providers[].policies.health.eviction.durationstring
binds[].listeners[].routes[].backends[].ai.groups[].providers[].policies.health.eviction.restoreHealthnumber
binds[].listeners[].routes[].backends[].ai.groups[].providers[].policies.health.eviction.consecutiveFailuresinteger
binds[].listeners[].routes[].backends[].ai.groups[].providers[].policies.health.eviction.healthThresholdnumber
binds[].listeners[].routes[].backends[].ai.groups[].providers[].policies.backendTunnelobjectSpecify a tunnel to use when connecting to the backend
binds[].listeners[].routes[].backends[].ai.groups[].providers[].policies.backendTunnel.proxyobjectReference to the proxy address
Exactly one of service, host, or backend may be set.
binds[].listeners[].routes[].backends[].ai.groups[].providers[].policies.backendTunnel.proxy.serviceobject
binds[].listeners[].routes[].backends[].ai.groups[].providers[].policies.backendTunnel.proxy.service.nameobject
binds[].listeners[].routes[].backends[].ai.groups[].providers[].policies.backendTunnel.proxy.service.name.namespacestring
binds[].listeners[].routes[].backends[].ai.groups[].providers[].policies.backendTunnel.proxy.service.name.hostnamestring
binds[].listeners[].routes[].backends[].ai.groups[].providers[].policies.backendTunnel.proxy.service.portinteger
binds[].listeners[].routes[].backends[].ai.groups[].providers[].policies.backendTunnel.proxy.hoststringHostname or IP address
binds[].listeners[].routes[].backends[].ai.groups[].providers[].policies.backendTunnel.proxy.backendstringExplicit backend reference. Backend must be defined in the top level backends list
binds[].listeners[].routes[].backends[].ai.groups[].providers[].policies.mcpAuthorizationobjectAuthorization policies for MCP access.
binds[].listeners[].routes[].backends[].ai.groups[].providers[].policies.mcpAuthorization.rules[]string
binds[].listeners[].routes[].backends[].ai.groups[].providers[].policies.a2aobjectMark this traffic as A2A to enable A2A processing and telemetry.
binds[].listeners[].routes[].backends[].ai.groups[].providers[].policies.aiobjectMark this as LLM traffic to enable LLM processing.
binds[].listeners[].routes[].backends[].ai.groups[].providers[].policies.ai.promptGuardobject
binds[].listeners[].routes[].backends[].ai.groups[].providers[].policies.ai.promptGuard.request[]object
binds[].listeners[].routes[].backends[].ai.groups[].providers[].policies.ai.promptGuard.request[].regexobject
binds[].listeners[].routes[].backends[].ai.groups[].providers[].policies.ai.promptGuard.request[].regex.actionstring
binds[].listeners[].routes[].backends[].ai.groups[].providers[].policies.ai.promptGuard.request[].regex.rules[]object
binds[].listeners[].routes[].backends[].ai.groups[].providers[].policies.ai.promptGuard.request[].regex.rules[].builtinstring
binds[].listeners[].routes[].backends[].ai.groups[].providers[].policies.ai.promptGuard.request[].regex.rules[].patternstring
binds[].listeners[].routes[].backends[].ai.groups[].providers[].policies.ai.promptGuard.request[].webhookobject
binds[].listeners[].routes[].backends[].ai.groups[].providers[].policies.ai.promptGuard.request[].webhook.targetobjectExactly one of service, host, or backend may be set.
binds[].listeners[].routes[].backends[].ai.groups[].providers[].policies.ai.promptGuard.request[].webhook.target.serviceobject
binds[].listeners[].routes[].backends[].ai.groups[].providers[].policies.ai.promptGuard.request[].webhook.target.service.nameobject
binds[].listeners[].routes[].backends[].ai.groups[].providers[].policies.ai.promptGuard.request[].webhook.target.service.name.namespacestring
binds[].listeners[].routes[].backends[].ai.groups[].providers[].policies.ai.promptGuard.request[].webhook.target.service.name.hostnamestring
binds[].listeners[].routes[].backends[].ai.groups[].providers[].policies.ai.promptGuard.request[].webhook.target.service.portinteger
binds[].listeners[].routes[].backends[].ai.groups[].providers[].policies.ai.promptGuard.request[].webhook.target.hoststringHostname or IP address
binds[].listeners[].routes[].backends[].ai.groups[].providers[].policies.ai.promptGuard.request[].webhook.target.backendstringExplicit backend reference. Backend must be defined in the top level backends list
binds[].listeners[].routes[].backends[].ai.groups[].providers[].policies.ai.promptGuard.request[].webhook.forwardHeaderMatches[]object
binds[].listeners[].routes[].backends[].ai.groups[].providers[].policies.ai.promptGuard.request[].webhook.forwardHeaderMatches[].namestring
binds[].listeners[].routes[].backends[].ai.groups[].providers[].policies.ai.promptGuard.request[].webhook.forwardHeaderMatches[].valueobjectExactly one of exact or regex may be set.
binds[].listeners[].routes[].backends[].ai.groups[].providers[].policies.ai.promptGuard.request[].webhook.forwardHeaderMatches[].value.exactstring
binds[].listeners[].routes[].backends[].ai.groups[].providers[].policies.ai.promptGuard.request[].webhook.forwardHeaderMatches[].value.regexstring
binds[].listeners[].routes[].backends[].ai.groups[].providers[].policies.ai.promptGuard.request[].openAIModerationobject
binds[].listeners[].routes[].backends[].ai.groups[].providers[].policies.ai.promptGuard.request[].openAIModeration.modelstringModel to use. Defaults to omni-moderation-latest
binds[].listeners[].routes[].backends[].ai.groups[].providers[].policies.ai.promptGuard.request[].openAIModeration.policiesobject
binds[].listeners[].routes[].backends[].ai.groups[].providers[].policies.ai.promptGuard.request[].openAIModeration.policies.requestHeaderModifierobjectHeaders to be modified in the request.
binds[].listeners[].routes[].backends[].ai.groups[].providers[].policies.ai.promptGuard.request[].openAIModeration.policies.requestHeaderModifier.addobject
binds[].listeners[].routes[].backends[].ai.groups[].providers[].policies.ai.promptGuard.request[].openAIModeration.policies.requestHeaderModifier.setobject
binds[].listeners[].routes[].backends[].ai.groups[].providers[].policies.ai.promptGuard.request[].openAIModeration.policies.requestHeaderModifier.remove[]string
binds[].listeners[].routes[].backends[].ai.groups[].providers[].policies.ai.promptGuard.request[].openAIModeration.policies.responseHeaderModifierobjectHeaders to be modified in the response.
binds[].listeners[].routes[].backends[].ai.groups[].providers[].policies.ai.promptGuard.request[].openAIModeration.policies.responseHeaderModifier.addobject
binds[].listeners[].routes[].backends[].ai.groups[].providers[].policies.ai.promptGuard.request[].openAIModeration.policies.responseHeaderModifier.setobject
binds[].listeners[].routes[].backends[].ai.groups[].providers[].policies.ai.promptGuard.request[].openAIModeration.policies.responseHeaderModifier.remove[]string
binds[].listeners[].routes[].backends[].ai.groups[].providers[].policies.ai.promptGuard.request[].openAIModeration.policies.requestRedirectobjectDirectly respond to the request with a redirect.
binds[].listeners[].routes[].backends[].ai.groups[].providers[].policies.ai.promptGuard.request[].openAIModeration.policies.requestRedirect.schemestring
binds[].listeners[].routes[].backends[].ai.groups[].providers[].policies.ai.promptGuard.request[].openAIModeration.policies.requestRedirect.authoritystring
binds[].listeners[].routes[].backends[].ai.groups[].providers[].policies.ai.promptGuard.request[].openAIModeration.policies.requestRedirect.authority.fullstring
binds[].listeners[].routes[].backends[].ai.groups[].providers[].policies.ai.promptGuard.request[].openAIModeration.policies.requestRedirect.authority.hoststring
binds[].listeners[].routes[].backends[].ai.groups[].providers[].policies.ai.promptGuard.request[].openAIModeration.policies.requestRedirect.authority.portinteger
binds[].listeners[].routes[].backends[].ai.groups[].providers[].policies.ai.promptGuard.request[].openAIModeration.policies.requestRedirect.pathobject
binds[].listeners[].routes[].backends[].ai.groups[].providers[].policies.ai.promptGuard.request[].openAIModeration.policies.requestRedirect.path.fullstring
binds[].listeners[].routes[].backends[].ai.groups[].providers[].policies.ai.promptGuard.request[].openAIModeration.policies.requestRedirect.path.prefixstring
binds[].listeners[].routes[].backends[].ai.groups[].providers[].policies.ai.promptGuard.request[].openAIModeration.policies.requestRedirect.statusinteger
binds[].listeners[].routes[].backends[].ai.groups[].providers[].policies.ai.promptGuard.request[].openAIModeration.policies.transformationsobjectModify requests and responses sent to and from the backend.
binds[].listeners[].routes[].backends[].ai.groups[].providers[].policies.ai.promptGuard.request[].openAIModeration.policies.transformations.requestobject
binds[].listeners[].routes[].backends[].ai.groups[].providers[].policies.ai.promptGuard.request[].openAIModeration.policies.transformations.request.addobject
binds[].listeners[].routes[].backends[].ai.groups[].providers[].policies.ai.promptGuard.request[].openAIModeration.policies.transformations.request.setobject
binds[].listeners[].routes[].backends[].ai.groups[].providers[].policies.ai.promptGuard.request[].openAIModeration.policies.transformations.request.remove[]string
binds[].listeners[].routes[].backends[].ai.groups[].providers[].policies.ai.promptGuard.request[].openAIModeration.policies.transformations.request.bodystring
binds[].listeners[].routes[].backends[].ai.groups[].providers[].policies.ai.promptGuard.request[].openAIModeration.policies.transformations.request.metadataobject
binds[].listeners[].routes[].backends[].ai.groups[].providers[].policies.ai.promptGuard.request[].openAIModeration.policies.transformations.responseobject
binds[].listeners[].routes[].backends[].ai.groups[].providers[].policies.ai.promptGuard.request[].openAIModeration.policies.transformations.response.addobject
binds[].listeners[].routes[].backends[].ai.groups[].providers[].policies.ai.promptGuard.request[].openAIModeration.policies.transformations.response.setobject
binds[].listeners[].routes[].backends[].ai.groups[].providers[].policies.ai.promptGuard.request[].openAIModeration.policies.transformations.response.remove[]string
binds[].listeners[].routes[].backends[].ai.groups[].providers[].policies.ai.promptGuard.request[].openAIModeration.policies.transformations.response.bodystring
binds[].listeners[].routes[].backends[].ai.groups[].providers[].policies.ai.promptGuard.request[].openAIModeration.policies.transformations.response.metadataobject
binds[].listeners[].routes[].backends[].ai.groups[].providers[].policies.ai.promptGuard.request[].openAIModeration.policies.backendTLSobjectSend TLS to the backend.
binds[].listeners[].routes[].backends[].ai.groups[].providers[].policies.ai.promptGuard.request[].openAIModeration.policies.backendTLS.certstring
binds[].listeners[].routes[].backends[].ai.groups[].providers[].policies.ai.promptGuard.request[].openAIModeration.policies.backendTLS.keystring
binds[].listeners[].routes[].backends[].ai.groups[].providers[].policies.ai.promptGuard.request[].openAIModeration.policies.backendTLS.rootstring
binds[].listeners[].routes[].backends[].ai.groups[].providers[].policies.ai.promptGuard.request[].openAIModeration.policies.backendTLS.hostnamestring
binds[].listeners[].routes[].backends[].ai.groups[].providers[].policies.ai.promptGuard.request[].openAIModeration.policies.backendTLS.insecureboolean
binds[].listeners[].routes[].backends[].ai.groups[].providers[].policies.ai.promptGuard.request[].openAIModeration.policies.backendTLS.insecureHostboolean
binds[].listeners[].routes[].backends[].ai.groups[].providers[].policies.ai.promptGuard.request[].openAIModeration.policies.backendTLS.alpn[]string
binds[].listeners[].routes[].backends[].ai.groups[].providers[].policies.ai.promptGuard.request[].openAIModeration.policies.backendTLS.subjectAltNames[]string
binds[].listeners[].routes[].backends[].ai.groups[].providers[].policies.ai.promptGuard.request[].openAIModeration.policies.backendAuthobjectAuthenticate to the backend.
binds[].listeners[].routes[].backends[].ai.groups[].providers[].policies.ai.promptGuard.request[].openAIModeration.policies.backendAuth.passthroughobject
binds[].listeners[].routes[].backends[].ai.groups[].providers[].policies.ai.promptGuard.request[].openAIModeration.policies.backendAuth.keyobject
binds[].listeners[].routes[].backends[].ai.groups[].providers[].policies.ai.promptGuard.request[].openAIModeration.policies.backendAuth.key.filestring
binds[].listeners[].routes[].backends[].ai.groups[].providers[].policies.ai.promptGuard.request[].openAIModeration.policies.backendAuth.gcpobject
binds[].listeners[].routes[].backends[].ai.groups[].providers[].policies.ai.promptGuard.request[].openAIModeration.policies.backendAuth.gcp.typestring
binds[].listeners[].routes[].backends[].ai.groups[].providers[].policies.ai.promptGuard.request[].openAIModeration.policies.backendAuth.gcp.audiencestringAudience for the token. If not set, the destination host will be used.
binds[].listeners[].routes[].backends[].ai.groups[].providers[].policies.ai.promptGuard.request[].openAIModeration.policies.backendAuth.gcp.typestring
binds[].listeners[].routes[].backends[].ai.groups[].providers[].policies.ai.promptGuard.request[].openAIModeration.policies.backendAuth.awsobject
binds[].listeners[].routes[].backends[].ai.groups[].providers[].policies.ai.promptGuard.request[].openAIModeration.policies.backendAuth.aws.accessKeyIdstring
binds[].listeners[].routes[].backends[].ai.groups[].providers[].policies.ai.promptGuard.request[].openAIModeration.policies.backendAuth.aws.secretAccessKeystring
binds[].listeners[].routes[].backends[].ai.groups[].providers[].policies.ai.promptGuard.request[].openAIModeration.policies.backendAuth.aws.regionstring
binds[].listeners[].routes[].backends[].ai.groups[].providers[].policies.ai.promptGuard.request[].openAIModeration.policies.backendAuth.aws.sessionTokenstring
binds[].listeners[].routes[].backends[].ai.groups[].providers[].policies.ai.promptGuard.request[].openAIModeration.policies.backendAuth.azureobjectExactly one of explicitConfig, developerImplicit, or implicit may be set.
binds[].listeners[].routes[].backends[].ai.groups[].providers[].policies.ai.promptGuard.request[].openAIModeration.policies.backendAuth.azure.explicitConfigobjectExactly one of clientSecret, managedIdentity, or workloadIdentity may be set.
binds[].listeners[].routes[].backends[].ai.groups[].providers[].policies.ai.promptGuard.request[].openAIModeration.policies.backendAuth.azure.explicitConfig.clientSecretobject
binds[].listeners[].routes[].backends[].ai.groups[].providers[].policies.ai.promptGuard.request[].openAIModeration.policies.backendAuth.azure.explicitConfig.clientSecret.tenant_idstring
binds[].listeners[].routes[].backends[].ai.groups[].providers[].policies.ai.promptGuard.request[].openAIModeration.policies.backendAuth.azure.explicitConfig.clientSecret.client_idstring
binds[].listeners[].routes[].backends[].ai.groups[].providers[].policies.ai.promptGuard.request[].openAIModeration.policies.backendAuth.azure.explicitConfig.clientSecret.client_secretstring
binds[].listeners[].routes[].backends[].ai.groups[].providers[].policies.ai.promptGuard.request[].openAIModeration.policies.backendAuth.azure.explicitConfig.managedIdentityobject
binds[].listeners[].routes[].backends[].ai.groups[].providers[].policies.ai.promptGuard.request[].openAIModeration.policies.backendAuth.azure.explicitConfig.managedIdentity.userAssignedIdentityobject
binds[].listeners[].routes[].backends[].ai.groups[].providers[].policies.ai.promptGuard.request[].openAIModeration.policies.backendAuth.azure.explicitConfig.managedIdentity.userAssignedIdentity.clientIdstring
binds[].listeners[].routes[].backends[].ai.groups[].providers[].policies.ai.promptGuard.request[].openAIModeration.policies.backendAuth.azure.explicitConfig.managedIdentity.userAssignedIdentity.objectIdstring
binds[].listeners[].routes[].backends[].ai.groups[].providers[].policies.ai.promptGuard.request[].openAIModeration.policies.backendAuth.azure.explicitConfig.managedIdentity.userAssignedIdentity.resourceIdstring
binds[].listeners[].routes[].backends[].ai.groups[].providers[].policies.ai.promptGuard.request[].openAIModeration.policies.backendAuth.azure.explicitConfig.workloadIdentityobject
binds[].listeners[].routes[].backends[].ai.groups[].providers[].policies.ai.promptGuard.request[].openAIModeration.policies.backendAuth.azure.developerImplicitobject
binds[].listeners[].routes[].backends[].ai.groups[].providers[].policies.ai.promptGuard.request[].openAIModeration.policies.backendAuth.azure.implicitobject
binds[].listeners[].routes[].backends[].ai.groups[].providers[].policies.ai.promptGuard.request[].openAIModeration.policies.httpobjectSpecify HTTP settings for the backend
binds[].listeners[].routes[].backends[].ai.groups[].providers[].policies.ai.promptGuard.request[].openAIModeration.policies.http.versionstring
binds[].listeners[].routes[].backends[].ai.groups[].providers[].policies.ai.promptGuard.request[].openAIModeration.policies.http.requestTimeoutstring
binds[].listeners[].routes[].backends[].ai.groups[].providers[].policies.ai.promptGuard.request[].openAIModeration.policies.tcpobjectSpecify TCP settings for the backend
binds[].listeners[].routes[].backends[].ai.groups[].providers[].policies.ai.promptGuard.request[].openAIModeration.policies.tcp.keepalivesobject
binds[].listeners[].routes[].backends[].ai.groups[].providers[].policies.ai.promptGuard.request[].openAIModeration.policies.tcp.keepalives.enabledboolean
binds[].listeners[].routes[].backends[].ai.groups[].providers[].policies.ai.promptGuard.request[].openAIModeration.policies.tcp.keepalives.timestring
binds[].listeners[].routes[].backends[].ai.groups[].providers[].policies.ai.promptGuard.request[].openAIModeration.policies.tcp.keepalives.intervalstring
binds[].listeners[].routes[].backends[].ai.groups[].providers[].policies.ai.promptGuard.request[].openAIModeration.policies.tcp.keepalives.retriesinteger
binds[].listeners[].routes[].backends[].ai.groups[].providers[].policies.ai.promptGuard.request[].openAIModeration.policies.tcp.connectTimeoutobject
binds[].listeners[].routes[].backends[].ai.groups[].providers[].policies.ai.promptGuard.request[].openAIModeration.policies.tcp.connectTimeout.secsinteger
binds[].listeners[].routes[].backends[].ai.groups[].providers[].policies.ai.promptGuard.request[].openAIModeration.policies.tcp.connectTimeout.nanosinteger
binds[].listeners[].routes[].backends[].ai.groups[].providers[].policies.ai.promptGuard.request[].openAIModeration.policies.healthobjectHealth policy for backend outlier detection; evicts on unhealthy responses based on CEL condition and configurable duration.
binds[].listeners[].routes[].backends[].ai.groups[].providers[].policies.ai.promptGuard.request[].openAIModeration.policies.health.unhealthyExpressionstringCEL expression; true means unhealthy (evict). E.g. response.code >= 500.
When unset, any 5xx or connection failure is treated as unhealthy.
binds[].listeners[].routes[].backends[].ai.groups[].providers[].policies.ai.promptGuard.request[].openAIModeration.policies.health.evictionobjectLocal/config eviction sub-policy with duration as string; mirrors Eviction.
binds[].listeners[].routes[].backends[].ai.groups[].providers[].policies.ai.promptGuard.request[].openAIModeration.policies.health.eviction.durationstring
binds[].listeners[].routes[].backends[].ai.groups[].providers[].policies.ai.promptGuard.request[].openAIModeration.policies.health.eviction.restoreHealthnumber
binds[].listeners[].routes[].backends[].ai.groups[].providers[].policies.ai.promptGuard.request[].openAIModeration.policies.health.eviction.consecutiveFailuresinteger
binds[].listeners[].routes[].backends[].ai.groups[].providers[].policies.ai.promptGuard.request[].openAIModeration.policies.health.eviction.healthThresholdnumber
binds[].listeners[].routes[].backends[].ai.groups[].providers[].policies.ai.promptGuard.request[].openAIModeration.policies.backendTunnelobjectSpecify a tunnel to use when connecting to the backend
binds[].listeners[].routes[].backends[].ai.groups[].providers[].policies.ai.promptGuard.request[].openAIModeration.policies.backendTunnel.proxyobjectReference to the proxy address
Exactly one of service, host, or backend may be set.
binds[].listeners[].routes[].backends[].ai.groups[].providers[].policies.ai.promptGuard.request[].openAIModeration.policies.backendTunnel.proxy.serviceobject
binds[].listeners[].routes[].backends[].ai.groups[].providers[].policies.ai.promptGuard.request[].openAIModeration.policies.backendTunnel.proxy.service.nameobject
binds[].listeners[].routes[].backends[].ai.groups[].providers[].policies.ai.promptGuard.request[].openAIModeration.policies.backendTunnel.proxy.service.name.namespacestring
binds[].listeners[].routes[].backends[].ai.groups[].providers[].policies.ai.promptGuard.request[].openAIModeration.policies.backendTunnel.proxy.service.name.hostnamestring
binds[].listeners[].routes[].backends[].ai.groups[].providers[].policies.ai.promptGuard.request[].openAIModeration.policies.backendTunnel.proxy.service.portinteger
binds[].listeners[].routes[].backends[].ai.groups[].providers[].policies.ai.promptGuard.request[].openAIModeration.policies.backendTunnel.proxy.hoststringHostname or IP address
binds[].listeners[].routes[].backends[].ai.groups[].providers[].policies.ai.promptGuard.request[].openAIModeration.policies.backendTunnel.proxy.backendstringExplicit backend reference. Backend must be defined in the top level backends list
binds[].listeners[].routes[].backends[].ai.groups[].providers[].policies.ai.promptGuard.request[].bedrockGuardrailsobjectConfiguration for AWS Bedrock Guardrails integration.
binds[].listeners[].routes[].backends[].ai.groups[].providers[].policies.ai.promptGuard.request[].bedrockGuardrails.guardrailIdentifierstringThe unique identifier of the guardrail
binds[].listeners[].routes[].backends[].ai.groups[].providers[].policies.ai.promptGuard.request[].bedrockGuardrails.guardrailVersionstringThe version of the guardrail
binds[].listeners[].routes[].backends[].ai.groups[].providers[].policies.ai.promptGuard.request[].bedrockGuardrails.regionstringAWS region where the guardrail is deployed
binds[].listeners[].routes[].backends[].ai.groups[].providers[].policies.ai.promptGuard.request[].bedrockGuardrails.policiesobjectBackend policies for AWS authentication (optional, defaults to implicit AWS auth)
binds[].listeners[].routes[].backends[].ai.groups[].providers[].policies.ai.promptGuard.request[].bedrockGuardrails.policies.requestHeaderModifierobjectHeaders to be modified in the request.
binds[].listeners[].routes[].backends[].ai.groups[].providers[].policies.ai.promptGuard.request[].bedrockGuardrails.policies.requestHeaderModifier.addobject
binds[].listeners[].routes[].backends[].ai.groups[].providers[].policies.ai.promptGuard.request[].bedrockGuardrails.policies.requestHeaderModifier.setobject
binds[].listeners[].routes[].backends[].ai.groups[].providers[].policies.ai.promptGuard.request[].bedrockGuardrails.policies.requestHeaderModifier.remove[]string
binds[].listeners[].routes[].backends[].ai.groups[].providers[].policies.ai.promptGuard.request[].bedrockGuardrails.policies.responseHeaderModifierobjectHeaders to be modified in the response.
binds[].listeners[].routes[].backends[].ai.groups[].providers[].policies.ai.promptGuard.request[].bedrockGuardrails.policies.responseHeaderModifier.addobject
binds[].listeners[].routes[].backends[].ai.groups[].providers[].policies.ai.promptGuard.request[].bedrockGuardrails.policies.responseHeaderModifier.setobject
binds[].listeners[].routes[].backends[].ai.groups[].providers[].policies.ai.promptGuard.request[].bedrockGuardrails.policies.responseHeaderModifier.remove[]string
binds[].listeners[].routes[].backends[].ai.groups[].providers[].policies.ai.promptGuard.request[].bedrockGuardrails.policies.requestRedirectobjectDirectly respond to the request with a redirect.
binds[].listeners[].routes[].backends[].ai.groups[].providers[].policies.ai.promptGuard.request[].bedrockGuardrails.policies.requestRedirect.schemestring
binds[].listeners[].routes[].backends[].ai.groups[].providers[].policies.ai.promptGuard.request[].bedrockGuardrails.policies.requestRedirect.authoritystring
binds[].listeners[].routes[].backends[].ai.groups[].providers[].policies.ai.promptGuard.request[].bedrockGuardrails.policies.requestRedirect.authority.fullstring
binds[].listeners[].routes[].backends[].ai.groups[].providers[].policies.ai.promptGuard.request[].bedrockGuardrails.policies.requestRedirect.authority.hoststring
binds[].listeners[].routes[].backends[].ai.groups[].providers[].policies.ai.promptGuard.request[].bedrockGuardrails.policies.requestRedirect.authority.portinteger
binds[].listeners[].routes[].backends[].ai.groups[].providers[].policies.ai.promptGuard.request[].bedrockGuardrails.policies.requestRedirect.pathobject
binds[].listeners[].routes[].backends[].ai.groups[].providers[].policies.ai.promptGuard.request[].bedrockGuardrails.policies.requestRedirect.path.fullstring
binds[].listeners[].routes[].backends[].ai.groups[].providers[].policies.ai.promptGuard.request[].bedrockGuardrails.policies.requestRedirect.path.prefixstring
binds[].listeners[].routes[].backends[].ai.groups[].providers[].policies.ai.promptGuard.request[].bedrockGuardrails.policies.requestRedirect.statusinteger
binds[].listeners[].routes[].backends[].ai.groups[].providers[].policies.ai.promptGuard.request[].bedrockGuardrails.policies.transformationsobjectModify requests and responses sent to and from the backend.
binds[].listeners[].routes[].backends[].ai.groups[].providers[].policies.ai.promptGuard.request[].bedrockGuardrails.policies.transformations.requestobject
binds[].listeners[].routes[].backends[].ai.groups[].providers[].policies.ai.promptGuard.request[].bedrockGuardrails.policies.transformations.request.addobject
binds[].listeners[].routes[].backends[].ai.groups[].providers[].policies.ai.promptGuard.request[].bedrockGuardrails.policies.transformations.request.setobject
binds[].listeners[].routes[].backends[].ai.groups[].providers[].policies.ai.promptGuard.request[].bedrockGuardrails.policies.transformations.request.remove[]string
binds[].listeners[].routes[].backends[].ai.groups[].providers[].policies.ai.promptGuard.request[].bedrockGuardrails.policies.transformations.request.bodystring
binds[].listeners[].routes[].backends[].ai.groups[].providers[].policies.ai.promptGuard.request[].bedrockGuardrails.policies.transformations.request.metadataobject
binds[].listeners[].routes[].backends[].ai.groups[].providers[].policies.ai.promptGuard.request[].bedrockGuardrails.policies.transformations.responseobject
binds[].listeners[].routes[].backends[].ai.groups[].providers[].policies.ai.promptGuard.request[].bedrockGuardrails.policies.transformations.response.addobject
binds[].listeners[].routes[].backends[].ai.groups[].providers[].policies.ai.promptGuard.request[].bedrockGuardrails.policies.transformations.response.setobject
binds[].listeners[].routes[].backends[].ai.groups[].providers[].policies.ai.promptGuard.request[].bedrockGuardrails.policies.transformations.response.remove[]string
binds[].listeners[].routes[].backends[].ai.groups[].providers[].policies.ai.promptGuard.request[].bedrockGuardrails.policies.transformations.response.bodystring
binds[].listeners[].routes[].backends[].ai.groups[].providers[].policies.ai.promptGuard.request[].bedrockGuardrails.policies.transformations.response.metadataobject
binds[].listeners[].routes[].backends[].ai.groups[].providers[].policies.ai.promptGuard.request[].bedrockGuardrails.policies.backendTLSobjectSend TLS to the backend.
binds[].listeners[].routes[].backends[].ai.groups[].providers[].policies.ai.promptGuard.request[].bedrockGuardrails.policies.backendTLS.certstring
binds[].listeners[].routes[].backends[].ai.groups[].providers[].policies.ai.promptGuard.request[].bedrockGuardrails.policies.backendTLS.keystring
binds[].listeners[].routes[].backends[].ai.groups[].providers[].policies.ai.promptGuard.request[].bedrockGuardrails.policies.backendTLS.rootstring
binds[].listeners[].routes[].backends[].ai.groups[].providers[].policies.ai.promptGuard.request[].bedrockGuardrails.policies.backendTLS.hostnamestring
binds[].listeners[].routes[].backends[].ai.groups[].providers[].policies.ai.promptGuard.request[].bedrockGuardrails.policies.backendTLS.insecureboolean
binds[].listeners[].routes[].backends[].ai.groups[].providers[].policies.ai.promptGuard.request[].bedrockGuardrails.policies.backendTLS.insecureHostboolean
binds[].listeners[].routes[].backends[].ai.groups[].providers[].policies.ai.promptGuard.request[].bedrockGuardrails.policies.backendTLS.alpn[]string
binds[].listeners[].routes[].backends[].ai.groups[].providers[].policies.ai.promptGuard.request[].bedrockGuardrails.policies.backendTLS.subjectAltNames[]string
binds[].listeners[].routes[].backends[].ai.groups[].providers[].policies.ai.promptGuard.request[].bedrockGuardrails.policies.backendAuthobjectAuthenticate to the backend.
binds[].listeners[].routes[].backends[].ai.groups[].providers[].policies.ai.promptGuard.request[].bedrockGuardrails.policies.backendAuth.passthroughobject
binds[].listeners[].routes[].backends[].ai.groups[].providers[].policies.ai.promptGuard.request[].bedrockGuardrails.policies.backendAuth.keyobject
binds[].listeners[].routes[].backends[].ai.groups[].providers[].policies.ai.promptGuard.request[].bedrockGuardrails.policies.backendAuth.key.filestring
binds[].listeners[].routes[].backends[].ai.groups[].providers[].policies.ai.promptGuard.request[].bedrockGuardrails.policies.backendAuth.gcpobject
binds[].listeners[].routes[].backends[].ai.groups[].providers[].policies.ai.promptGuard.request[].bedrockGuardrails.policies.backendAuth.gcp.typestring
binds[].listeners[].routes[].backends[].ai.groups[].providers[].policies.ai.promptGuard.request[].bedrockGuardrails.policies.backendAuth.gcp.audiencestringAudience for the token. If not set, the destination host will be used.
binds[].listeners[].routes[].backends[].ai.groups[].providers[].policies.ai.promptGuard.request[].bedrockGuardrails.policies.backendAuth.gcp.typestring
binds[].listeners[].routes[].backends[].ai.groups[].providers[].policies.ai.promptGuard.request[].bedrockGuardrails.policies.backendAuth.awsobject
binds[].listeners[].routes[].backends[].ai.groups[].providers[].policies.ai.promptGuard.request[].bedrockGuardrails.policies.backendAuth.aws.accessKeyIdstring
binds[].listeners[].routes[].backends[].ai.groups[].providers[].policies.ai.promptGuard.request[].bedrockGuardrails.policies.backendAuth.aws.secretAccessKeystring
binds[].listeners[].routes[].backends[].ai.groups[].providers[].policies.ai.promptGuard.request[].bedrockGuardrails.policies.backendAuth.aws.regionstring
binds[].listeners[].routes[].backends[].ai.groups[].providers[].policies.ai.promptGuard.request[].bedrockGuardrails.policies.backendAuth.aws.sessionTokenstring
binds[].listeners[].routes[].backends[].ai.groups[].providers[].policies.ai.promptGuard.request[].bedrockGuardrails.policies.backendAuth.azureobjectExactly one of explicitConfig, developerImplicit, or implicit may be set.
binds[].listeners[].routes[].backends[].ai.groups[].providers[].policies.ai.promptGuard.request[].bedrockGuardrails.policies.backendAuth.azure.explicitConfigobjectExactly one of clientSecret, managedIdentity, or workloadIdentity may be set.
binds[].listeners[].routes[].backends[].ai.groups[].providers[].policies.ai.promptGuard.request[].bedrockGuardrails.policies.backendAuth.azure.explicitConfig.clientSecretobject
binds[].listeners[].routes[].backends[].ai.groups[].providers[].policies.ai.promptGuard.request[].bedrockGuardrails.policies.backendAuth.azure.explicitConfig.clientSecret.tenant_idstring
binds[].listeners[].routes[].backends[].ai.groups[].providers[].policies.ai.promptGuard.request[].bedrockGuardrails.policies.backendAuth.azure.explicitConfig.clientSecret.client_idstring
binds[].listeners[].routes[].backends[].ai.groups[].providers[].policies.ai.promptGuard.request[].bedrockGuardrails.policies.backendAuth.azure.explicitConfig.clientSecret.client_secretstring
binds[].listeners[].routes[].backends[].ai.groups[].providers[].policies.ai.promptGuard.request[].bedrockGuardrails.policies.backendAuth.azure.explicitConfig.managedIdentityobject
binds[].listeners[].routes[].backends[].ai.groups[].providers[].policies.ai.promptGuard.request[].bedrockGuardrails.policies.backendAuth.azure.explicitConfig.managedIdentity.userAssignedIdentityobject
binds[].listeners[].routes[].backends[].ai.groups[].providers[].policies.ai.promptGuard.request[].bedrockGuardrails.policies.backendAuth.azure.explicitConfig.managedIdentity.userAssignedIdentity.clientIdstring
binds[].listeners[].routes[].backends[].ai.groups[].providers[].policies.ai.promptGuard.request[].bedrockGuardrails.policies.backendAuth.azure.explicitConfig.managedIdentity.userAssignedIdentity.objectIdstring
binds[].listeners[].routes[].backends[].ai.groups[].providers[].policies.ai.promptGuard.request[].bedrockGuardrails.policies.backendAuth.azure.explicitConfig.managedIdentity.userAssignedIdentity.resourceIdstring
binds[].listeners[].routes[].backends[].ai.groups[].providers[].policies.ai.promptGuard.request[].bedrockGuardrails.policies.backendAuth.azure.explicitConfig.workloadIdentityobject
binds[].listeners[].routes[].backends[].ai.groups[].providers[].policies.ai.promptGuard.request[].bedrockGuardrails.policies.backendAuth.azure.developerImplicitobject
binds[].listeners[].routes[].backends[].ai.groups[].providers[].policies.ai.promptGuard.request[].bedrockGuardrails.policies.backendAuth.azure.implicitobject
binds[].listeners[].routes[].backends[].ai.groups[].providers[].policies.ai.promptGuard.request[].bedrockGuardrails.policies.httpobjectSpecify HTTP settings for the backend
binds[].listeners[].routes[].backends[].ai.groups[].providers[].policies.ai.promptGuard.request[].bedrockGuardrails.policies.http.versionstring
binds[].listeners[].routes[].backends[].ai.groups[].providers[].policies.ai.promptGuard.request[].bedrockGuardrails.policies.http.requestTimeoutstring
binds[].listeners[].routes[].backends[].ai.groups[].providers[].policies.ai.promptGuard.request[].bedrockGuardrails.policies.tcpobjectSpecify TCP settings for the backend
binds[].listeners[].routes[].backends[].ai.groups[].providers[].policies.ai.promptGuard.request[].bedrockGuardrails.policies.tcp.keepalivesobject
binds[].listeners[].routes[].backends[].ai.groups[].providers[].policies.ai.promptGuard.request[].bedrockGuardrails.policies.tcp.keepalives.enabledboolean
binds[].listeners[].routes[].backends[].ai.groups[].providers[].policies.ai.promptGuard.request[].bedrockGuardrails.policies.tcp.keepalives.timestring
binds[].listeners[].routes[].backends[].ai.groups[].providers[].policies.ai.promptGuard.request[].bedrockGuardrails.policies.tcp.keepalives.intervalstring
binds[].listeners[].routes[].backends[].ai.groups[].providers[].policies.ai.promptGuard.request[].bedrockGuardrails.policies.tcp.keepalives.retriesinteger
binds[].listeners[].routes[].backends[].ai.groups[].providers[].policies.ai.promptGuard.request[].bedrockGuardrails.policies.tcp.connectTimeoutobject
binds[].listeners[].routes[].backends[].ai.groups[].providers[].policies.ai.promptGuard.request[].bedrockGuardrails.policies.tcp.connectTimeout.secsinteger
binds[].listeners[].routes[].backends[].ai.groups[].providers[].policies.ai.promptGuard.request[].bedrockGuardrails.policies.tcp.connectTimeout.nanosinteger
binds[].listeners[].routes[].backends[].ai.groups[].providers[].policies.ai.promptGuard.request[].bedrockGuardrails.policies.healthobjectHealth policy for backend outlier detection; evicts on unhealthy responses based on CEL condition and configurable duration.
binds[].listeners[].routes[].backends[].ai.groups[].providers[].policies.ai.promptGuard.request[].bedrockGuardrails.policies.health.unhealthyExpressionstringCEL expression; true means unhealthy (evict). E.g. response.code >= 500.
When unset, any 5xx or connection failure is treated as unhealthy.
binds[].listeners[].routes[].backends[].ai.groups[].providers[].policies.ai.promptGuard.request[].bedrockGuardrails.policies.health.evictionobjectLocal/config eviction sub-policy with duration as string; mirrors Eviction.
binds[].listeners[].routes[].backends[].ai.groups[].providers[].policies.ai.promptGuard.request[].bedrockGuardrails.policies.health.eviction.durationstring
binds[].listeners[].routes[].backends[].ai.groups[].providers[].policies.ai.promptGuard.request[].bedrockGuardrails.policies.health.eviction.restoreHealthnumber
binds[].listeners[].routes[].backends[].ai.groups[].providers[].policies.ai.promptGuard.request[].bedrockGuardrails.policies.health.eviction.consecutiveFailuresinteger
binds[].listeners[].routes[].backends[].ai.groups[].providers[].policies.ai.promptGuard.request[].bedrockGuardrails.policies.health.eviction.healthThresholdnumber
binds[].listeners[].routes[].backends[].ai.groups[].providers[].policies.ai.promptGuard.request[].bedrockGuardrails.policies.backendTunnelobjectSpecify a tunnel to use when connecting to the backend
binds[].listeners[].routes[].backends[].ai.groups[].providers[].policies.ai.promptGuard.request[].bedrockGuardrails.policies.backendTunnel.proxyobjectReference to the proxy address
Exactly one of service, host, or backend may be set.
binds[].listeners[].routes[].backends[].ai.groups[].providers[].policies.ai.promptGuard.request[].bedrockGuardrails.policies.backendTunnel.proxy.serviceobject
binds[].listeners[].routes[].backends[].ai.groups[].providers[].policies.ai.promptGuard.request[].bedrockGuardrails.policies.backendTunnel.proxy.service.nameobject
binds[].listeners[].routes[].backends[].ai.groups[].providers[].policies.ai.promptGuard.request[].bedrockGuardrails.policies.backendTunnel.proxy.service.name.namespacestring
binds[].listeners[].routes[].backends[].ai.groups[].providers[].policies.ai.promptGuard.request[].bedrockGuardrails.policies.backendTunnel.proxy.service.name.hostnamestring
binds[].listeners[].routes[].backends[].ai.groups[].providers[].policies.ai.promptGuard.request[].bedrockGuardrails.policies.backendTunnel.proxy.service.portinteger
binds[].listeners[].routes[].backends[].ai.groups[].providers[].policies.ai.promptGuard.request[].bedrockGuardrails.policies.backendTunnel.proxy.hoststringHostname or IP address
binds[].listeners[].routes[].backends[].ai.groups[].providers[].policies.ai.promptGuard.request[].bedrockGuardrails.policies.backendTunnel.proxy.backendstringExplicit backend reference. Backend must be defined in the top level backends list
binds[].listeners[].routes[].backends[].ai.groups[].providers[].policies.ai.promptGuard.request[].googleModelArmorobjectConfiguration for Google Cloud Model Armor integration.
binds[].listeners[].routes[].backends[].ai.groups[].providers[].policies.ai.promptGuard.request[].googleModelArmor.templateIdstringThe template ID for the Model Armor configuration
binds[].listeners[].routes[].backends[].ai.groups[].providers[].policies.ai.promptGuard.request[].googleModelArmor.projectIdstringThe GCP project ID
binds[].listeners[].routes[].backends[].ai.groups[].providers[].policies.ai.promptGuard.request[].googleModelArmor.locationstringThe GCP region (default: us-central1)
binds[].listeners[].routes[].backends[].ai.groups[].providers[].policies.ai.promptGuard.request[].googleModelArmor.policiesobjectBackend policies for GCP authentication (optional, defaults to implicit GCP auth)
binds[].listeners[].routes[].backends[].ai.groups[].providers[].policies.ai.promptGuard.request[].googleModelArmor.policies.requestHeaderModifierobjectHeaders to be modified in the request.
binds[].listeners[].routes[].backends[].ai.groups[].providers[].policies.ai.promptGuard.request[].googleModelArmor.policies.requestHeaderModifier.addobject
binds[].listeners[].routes[].backends[].ai.groups[].providers[].policies.ai.promptGuard.request[].googleModelArmor.policies.requestHeaderModifier.setobject
binds[].listeners[].routes[].backends[].ai.groups[].providers[].policies.ai.promptGuard.request[].googleModelArmor.policies.requestHeaderModifier.remove[]string
binds[].listeners[].routes[].backends[].ai.groups[].providers[].policies.ai.promptGuard.request[].googleModelArmor.policies.responseHeaderModifierobjectHeaders to be modified in the response.
binds[].listeners[].routes[].backends[].ai.groups[].providers[].policies.ai.promptGuard.request[].googleModelArmor.policies.responseHeaderModifier.addobject
binds[].listeners[].routes[].backends[].ai.groups[].providers[].policies.ai.promptGuard.request[].googleModelArmor.policies.responseHeaderModifier.setobject
binds[].listeners[].routes[].backends[].ai.groups[].providers[].policies.ai.promptGuard.request[].googleModelArmor.policies.responseHeaderModifier.remove[]string
binds[].listeners[].routes[].backends[].ai.groups[].providers[].policies.ai.promptGuard.request[].googleModelArmor.policies.requestRedirectobjectDirectly respond to the request with a redirect.
binds[].listeners[].routes[].backends[].ai.groups[].providers[].policies.ai.promptGuard.request[].googleModelArmor.policies.requestRedirect.schemestring
binds[].listeners[].routes[].backends[].ai.groups[].providers[].policies.ai.promptGuard.request[].googleModelArmor.policies.requestRedirect.authoritystring
binds[].listeners[].routes[].backends[].ai.groups[].providers[].policies.ai.promptGuard.request[].googleModelArmor.policies.requestRedirect.authority.fullstring
binds[].listeners[].routes[].backends[].ai.groups[].providers[].policies.ai.promptGuard.request[].googleModelArmor.policies.requestRedirect.authority.hoststring
binds[].listeners[].routes[].backends[].ai.groups[].providers[].policies.ai.promptGuard.request[].googleModelArmor.policies.requestRedirect.authority.portinteger
binds[].listeners[].routes[].backends[].ai.groups[].providers[].policies.ai.promptGuard.request[].googleModelArmor.policies.requestRedirect.pathobject
binds[].listeners[].routes[].backends[].ai.groups[].providers[].policies.ai.promptGuard.request[].googleModelArmor.policies.requestRedirect.path.fullstring
binds[].listeners[].routes[].backends[].ai.groups[].providers[].policies.ai.promptGuard.request[].googleModelArmor.policies.requestRedirect.path.prefixstring
binds[].listeners[].routes[].backends[].ai.groups[].providers[].policies.ai.promptGuard.request[].googleModelArmor.policies.requestRedirect.statusinteger
binds[].listeners[].routes[].backends[].ai.groups[].providers[].policies.ai.promptGuard.request[].googleModelArmor.policies.transformationsobjectModify requests and responses sent to and from the backend.
binds[].listeners[].routes[].backends[].ai.groups[].providers[].policies.ai.promptGuard.request[].googleModelArmor.policies.transformations.requestobject
binds[].listeners[].routes[].backends[].ai.groups[].providers[].policies.ai.promptGuard.request[].googleModelArmor.policies.transformations.request.addobject
binds[].listeners[].routes[].backends[].ai.groups[].providers[].policies.ai.promptGuard.request[].googleModelArmor.policies.transformations.request.setobject
binds[].listeners[].routes[].backends[].ai.groups[].providers[].policies.ai.promptGuard.request[].googleModelArmor.policies.transformations.request.remove[]string
binds[].listeners[].routes[].backends[].ai.groups[].providers[].policies.ai.promptGuard.request[].googleModelArmor.policies.transformations.request.bodystring
binds[].listeners[].routes[].backends[].ai.groups[].providers[].policies.ai.promptGuard.request[].googleModelArmor.policies.transformations.request.metadataobject
binds[].listeners[].routes[].backends[].ai.groups[].providers[].policies.ai.promptGuard.request[].googleModelArmor.policies.transformations.responseobject
binds[].listeners[].routes[].backends[].ai.groups[].providers[].policies.ai.promptGuard.request[].googleModelArmor.policies.transformations.response.addobject
binds[].listeners[].routes[].backends[].ai.groups[].providers[].policies.ai.promptGuard.request[].googleModelArmor.policies.transformations.response.setobject
binds[].listeners[].routes[].backends[].ai.groups[].providers[].policies.ai.promptGuard.request[].googleModelArmor.policies.transformations.response.remove[]string
binds[].listeners[].routes[].backends[].ai.groups[].providers[].policies.ai.promptGuard.request[].googleModelArmor.policies.transformations.response.bodystring
binds[].listeners[].routes[].backends[].ai.groups[].providers[].policies.ai.promptGuard.request[].googleModelArmor.policies.transformations.response.metadataobject
binds[].listeners[].routes[].backends[].ai.groups[].providers[].policies.ai.promptGuard.request[].googleModelArmor.policies.backendTLSobjectSend TLS to the backend.
binds[].listeners[].routes[].backends[].ai.groups[].providers[].policies.ai.promptGuard.request[].googleModelArmor.policies.backendTLS.certstring
binds[].listeners[].routes[].backends[].ai.groups[].providers[].policies.ai.promptGuard.request[].googleModelArmor.policies.backendTLS.keystring
binds[].listeners[].routes[].backends[].ai.groups[].providers[].policies.ai.promptGuard.request[].googleModelArmor.policies.backendTLS.rootstring
binds[].listeners[].routes[].backends[].ai.groups[].providers[].policies.ai.promptGuard.request[].googleModelArmor.policies.backendTLS.hostnamestring
binds[].listeners[].routes[].backends[].ai.groups[].providers[].policies.ai.promptGuard.request[].googleModelArmor.policies.backendTLS.insecureboolean
binds[].listeners[].routes[].backends[].ai.groups[].providers[].policies.ai.promptGuard.request[].googleModelArmor.policies.backendTLS.insecureHostboolean
binds[].listeners[].routes[].backends[].ai.groups[].providers[].policies.ai.promptGuard.request[].googleModelArmor.policies.backendTLS.alpn[]string
binds[].listeners[].routes[].backends[].ai.groups[].providers[].policies.ai.promptGuard.request[].googleModelArmor.policies.backendTLS.subjectAltNames[]string
binds[].listeners[].routes[].backends[].ai.groups[].providers[].policies.ai.promptGuard.request[].googleModelArmor.policies.backendAuthobjectAuthenticate to the backend.
binds[].listeners[].routes[].backends[].ai.groups[].providers[].policies.ai.promptGuard.request[].googleModelArmor.policies.backendAuth.passthroughobject
binds[].listeners[].routes[].backends[].ai.groups[].providers[].policies.ai.promptGuard.request[].googleModelArmor.policies.backendAuth.keyobject
binds[].listeners[].routes[].backends[].ai.groups[].providers[].policies.ai.promptGuard.request[].googleModelArmor.policies.backendAuth.key.filestring
binds[].listeners[].routes[].backends[].ai.groups[].providers[].policies.ai.promptGuard.request[].googleModelArmor.policies.backendAuth.gcpobject
binds[].listeners[].routes[].backends[].ai.groups[].providers[].policies.ai.promptGuard.request[].googleModelArmor.policies.backendAuth.gcp.typestring
binds[].listeners[].routes[].backends[].ai.groups[].providers[].policies.ai.promptGuard.request[].googleModelArmor.policies.backendAuth.gcp.audiencestringAudience for the token. If not set, the destination host will be used.
binds[].listeners[].routes[].backends[].ai.groups[].providers[].policies.ai.promptGuard.request[].googleModelArmor.policies.backendAuth.gcp.typestring
binds[].listeners[].routes[].backends[].ai.groups[].providers[].policies.ai.promptGuard.request[].googleModelArmor.policies.backendAuth.awsobject
binds[].listeners[].routes[].backends[].ai.groups[].providers[].policies.ai.promptGuard.request[].googleModelArmor.policies.backendAuth.aws.accessKeyIdstring
binds[].listeners[].routes[].backends[].ai.groups[].providers[].policies.ai.promptGuard.request[].googleModelArmor.policies.backendAuth.aws.secretAccessKeystring
binds[].listeners[].routes[].backends[].ai.groups[].providers[].policies.ai.promptGuard.request[].googleModelArmor.policies.backendAuth.aws.regionstring
binds[].listeners[].routes[].backends[].ai.groups[].providers[].policies.ai.promptGuard.request[].googleModelArmor.policies.backendAuth.aws.sessionTokenstring
binds[].listeners[].routes[].backends[].ai.groups[].providers[].policies.ai.promptGuard.request[].googleModelArmor.policies.backendAuth.azureobjectExactly one of explicitConfig, developerImplicit, or implicit may be set.
binds[].listeners[].routes[].backends[].ai.groups[].providers[].policies.ai.promptGuard.request[].googleModelArmor.policies.backendAuth.azure.explicitConfigobjectExactly one of clientSecret, managedIdentity, or workloadIdentity may be set.
binds[].listeners[].routes[].backends[].ai.groups[].providers[].policies.ai.promptGuard.request[].googleModelArmor.policies.backendAuth.azure.explicitConfig.clientSecretobject
binds[].listeners[].routes[].backends[].ai.groups[].providers[].policies.ai.promptGuard.request[].googleModelArmor.policies.backendAuth.azure.explicitConfig.clientSecret.tenant_idstring
binds[].listeners[].routes[].backends[].ai.groups[].providers[].policies.ai.promptGuard.request[].googleModelArmor.policies.backendAuth.azure.explicitConfig.clientSecret.client_idstring
binds[].listeners[].routes[].backends[].ai.groups[].providers[].policies.ai.promptGuard.request[].googleModelArmor.policies.backendAuth.azure.explicitConfig.clientSecret.client_secretstring
binds[].listeners[].routes[].backends[].ai.groups[].providers[].policies.ai.promptGuard.request[].googleModelArmor.policies.backendAuth.azure.explicitConfig.managedIdentityobject
binds[].listeners[].routes[].backends[].ai.groups[].providers[].policies.ai.promptGuard.request[].googleModelArmor.policies.backendAuth.azure.explicitConfig.managedIdentity.userAssignedIdentityobject
binds[].listeners[].routes[].backends[].ai.groups[].providers[].policies.ai.promptGuard.request[].googleModelArmor.policies.backendAuth.azure.explicitConfig.managedIdentity.userAssignedIdentity.clientIdstring
binds[].listeners[].routes[].backends[].ai.groups[].providers[].policies.ai.promptGuard.request[].googleModelArmor.policies.backendAuth.azure.explicitConfig.managedIdentity.userAssignedIdentity.objectIdstring
binds[].listeners[].routes[].backends[].ai.groups[].providers[].policies.ai.promptGuard.request[].googleModelArmor.policies.backendAuth.azure.explicitConfig.managedIdentity.userAssignedIdentity.resourceIdstring
binds[].listeners[].routes[].backends[].ai.groups[].providers[].policies.ai.promptGuard.request[].googleModelArmor.policies.backendAuth.azure.explicitConfig.workloadIdentityobject
binds[].listeners[].routes[].backends[].ai.groups[].providers[].policies.ai.promptGuard.request[].googleModelArmor.policies.backendAuth.azure.developerImplicitobject
binds[].listeners[].routes[].backends[].ai.groups[].providers[].policies.ai.promptGuard.request[].googleModelArmor.policies.backendAuth.azure.implicitobject
binds[].listeners[].routes[].backends[].ai.groups[].providers[].policies.ai.promptGuard.request[].googleModelArmor.policies.httpobjectSpecify HTTP settings for the backend
binds[].listeners[].routes[].backends[].ai.groups[].providers[].policies.ai.promptGuard.request[].googleModelArmor.policies.http.versionstring
binds[].listeners[].routes[].backends[].ai.groups[].providers[].policies.ai.promptGuard.request[].googleModelArmor.policies.http.requestTimeoutstring
binds[].listeners[].routes[].backends[].ai.groups[].providers[].policies.ai.promptGuard.request[].googleModelArmor.policies.tcpobjectSpecify TCP settings for the backend
binds[].listeners[].routes[].backends[].ai.groups[].providers[].policies.ai.promptGuard.request[].googleModelArmor.policies.tcp.keepalivesobject
binds[].listeners[].routes[].backends[].ai.groups[].providers[].policies.ai.promptGuard.request[].googleModelArmor.policies.tcp.keepalives.enabledboolean
binds[].listeners[].routes[].backends[].ai.groups[].providers[].policies.ai.promptGuard.request[].googleModelArmor.policies.tcp.keepalives.timestring
binds[].listeners[].routes[].backends[].ai.groups[].providers[].policies.ai.promptGuard.request[].googleModelArmor.policies.tcp.keepalives.intervalstring
binds[].listeners[].routes[].backends[].ai.groups[].providers[].policies.ai.promptGuard.request[].googleModelArmor.policies.tcp.keepalives.retriesinteger
binds[].listeners[].routes[].backends[].ai.groups[].providers[].policies.ai.promptGuard.request[].googleModelArmor.policies.tcp.connectTimeoutobject
binds[].listeners[].routes[].backends[].ai.groups[].providers[].policies.ai.promptGuard.request[].googleModelArmor.policies.tcp.connectTimeout.secsinteger
binds[].listeners[].routes[].backends[].ai.groups[].providers[].policies.ai.promptGuard.request[].googleModelArmor.policies.tcp.connectTimeout.nanosinteger
binds[].listeners[].routes[].backends[].ai.groups[].providers[].policies.ai.promptGuard.request[].googleModelArmor.policies.healthobjectHealth policy for backend outlier detection; evicts on unhealthy responses based on CEL condition and configurable duration.
binds[].listeners[].routes[].backends[].ai.groups[].providers[].policies.ai.promptGuard.request[].googleModelArmor.policies.health.unhealthyExpressionstringCEL expression; true means unhealthy (evict). E.g. response.code >= 500.
When unset, any 5xx or connection failure is treated as unhealthy.
binds[].listeners[].routes[].backends[].ai.groups[].providers[].policies.ai.promptGuard.request[].googleModelArmor.policies.health.evictionobjectLocal/config eviction sub-policy with duration as string; mirrors Eviction.
binds[].listeners[].routes[].backends[].ai.groups[].providers[].policies.ai.promptGuard.request[].googleModelArmor.policies.health.eviction.durationstring
binds[].listeners[].routes[].backends[].ai.groups[].providers[].policies.ai.promptGuard.request[].googleModelArmor.policies.health.eviction.restoreHealthnumber
binds[].listeners[].routes[].backends[].ai.groups[].providers[].policies.ai.promptGuard.request[].googleModelArmor.policies.health.eviction.consecutiveFailuresinteger
binds[].listeners[].routes[].backends[].ai.groups[].providers[].policies.ai.promptGuard.request[].googleModelArmor.policies.health.eviction.healthThresholdnumber
binds[].listeners[].routes[].backends[].ai.groups[].providers[].policies.ai.promptGuard.request[].googleModelArmor.policies.backendTunnelobjectSpecify a tunnel to use when connecting to the backend
binds[].listeners[].routes[].backends[].ai.groups[].providers[].policies.ai.promptGuard.request[].googleModelArmor.policies.backendTunnel.proxyobjectReference to the proxy address
Exactly one of service, host, or backend may be set.
binds[].listeners[].routes[].backends[].ai.groups[].providers[].policies.ai.promptGuard.request[].googleModelArmor.policies.backendTunnel.proxy.serviceobject
binds[].listeners[].routes[].backends[].ai.groups[].providers[].policies.ai.promptGuard.request[].googleModelArmor.policies.backendTunnel.proxy.service.nameobject
binds[].listeners[].routes[].backends[].ai.groups[].providers[].policies.ai.promptGuard.request[].googleModelArmor.policies.backendTunnel.proxy.service.name.namespacestring
binds[].listeners[].routes[].backends[].ai.groups[].providers[].policies.ai.promptGuard.request[].googleModelArmor.policies.backendTunnel.proxy.service.name.hostnamestring
binds[].listeners[].routes[].backends[].ai.groups[].providers[].policies.ai.promptGuard.request[].googleModelArmor.policies.backendTunnel.proxy.service.portinteger
binds[].listeners[].routes[].backends[].ai.groups[].providers[].policies.ai.promptGuard.request[].googleModelArmor.policies.backendTunnel.proxy.hoststringHostname or IP address
binds[].listeners[].routes[].backends[].ai.groups[].providers[].policies.ai.promptGuard.request[].googleModelArmor.policies.backendTunnel.proxy.backendstringExplicit backend reference. Backend must be defined in the top level backends list
binds[].listeners[].routes[].backends[].ai.groups[].providers[].policies.ai.promptGuard.request[].rejectionobject
binds[].listeners[].routes[].backends[].ai.groups[].providers[].policies.ai.promptGuard.request[].rejection.bodyarray
binds[].listeners[].routes[].backends[].ai.groups[].providers[].policies.ai.promptGuard.request[].rejection.statusinteger
binds[].listeners[].routes[].backends[].ai.groups[].providers[].policies.ai.promptGuard.request[].rejection.headersobjectOptional headers to add, set, or remove from the rejection response
binds[].listeners[].routes[].backends[].ai.groups[].providers[].policies.ai.promptGuard.request[].rejection.headers.addobject
binds[].listeners[].routes[].backends[].ai.groups[].providers[].policies.ai.promptGuard.request[].rejection.headers.setobject
binds[].listeners[].routes[].backends[].ai.groups[].providers[].policies.ai.promptGuard.request[].rejection.headers.remove[]string
binds[].listeners[].routes[].backends[].ai.groups[].providers[].policies.ai.promptGuard.response[]object
binds[].listeners[].routes[].backends[].ai.groups[].providers[].policies.ai.promptGuard.response[].regexobject
binds[].listeners[].routes[].backends[].ai.groups[].providers[].policies.ai.promptGuard.response[].regex.actionstring
binds[].listeners[].routes[].backends[].ai.groups[].providers[].policies.ai.promptGuard.response[].regex.rules[]object
binds[].listeners[].routes[].backends[].ai.groups[].providers[].policies.ai.promptGuard.response[].regex.rules[].builtinstring
binds[].listeners[].routes[].backends[].ai.groups[].providers[].policies.ai.promptGuard.response[].regex.rules[].patternstring
binds[].listeners[].routes[].backends[].ai.groups[].providers[].policies.ai.promptGuard.response[].webhookobject
binds[].listeners[].routes[].backends[].ai.groups[].providers[].policies.ai.promptGuard.response[].webhook.targetobjectExactly one of service, host, or backend may be set.
binds[].listeners[].routes[].backends[].ai.groups[].providers[].policies.ai.promptGuard.response[].webhook.target.serviceobject
binds[].listeners[].routes[].backends[].ai.groups[].providers[].policies.ai.promptGuard.response[].webhook.target.service.nameobject
binds[].listeners[].routes[].backends[].ai.groups[].providers[].policies.ai.promptGuard.response[].webhook.target.service.name.namespacestring
binds[].listeners[].routes[].backends[].ai.groups[].providers[].policies.ai.promptGuard.response[].webhook.target.service.name.hostnamestring
binds[].listeners[].routes[].backends[].ai.groups[].providers[].policies.ai.promptGuard.response[].webhook.target.service.portinteger
binds[].listeners[].routes[].backends[].ai.groups[].providers[].policies.ai.promptGuard.response[].webhook.target.hoststringHostname or IP address
binds[].listeners[].routes[].backends[].ai.groups[].providers[].policies.ai.promptGuard.response[].webhook.target.backendstringExplicit backend reference. Backend must be defined in the top level backends list
binds[].listeners[].routes[].backends[].ai.groups[].providers[].policies.ai.promptGuard.response[].webhook.forwardHeaderMatches[]object
binds[].listeners[].routes[].backends[].ai.groups[].providers[].policies.ai.promptGuard.response[].webhook.forwardHeaderMatches[].namestring
binds[].listeners[].routes[].backends[].ai.groups[].providers[].policies.ai.promptGuard.response[].webhook.forwardHeaderMatches[].valueobjectExactly one of exact or regex may be set.
binds[].listeners[].routes[].backends[].ai.groups[].providers[].policies.ai.promptGuard.response[].webhook.forwardHeaderMatches[].value.exactstring
binds[].listeners[].routes[].backends[].ai.groups[].providers[].policies.ai.promptGuard.response[].webhook.forwardHeaderMatches[].value.regexstring
binds[].listeners[].routes[].backends[].ai.groups[].providers[].policies.ai.promptGuard.response[].bedrockGuardrailsobjectConfiguration for AWS Bedrock Guardrails integration.
binds[].listeners[].routes[].backends[].ai.groups[].providers[].policies.ai.promptGuard.response[].bedrockGuardrails.guardrailIdentifierstringThe unique identifier of the guardrail
binds[].listeners[].routes[].backends[].ai.groups[].providers[].policies.ai.promptGuard.response[].bedrockGuardrails.guardrailVersionstringThe version of the guardrail
binds[].listeners[].routes[].backends[].ai.groups[].providers[].policies.ai.promptGuard.response[].bedrockGuardrails.regionstringAWS region where the guardrail is deployed
binds[].listeners[].routes[].backends[].ai.groups[].providers[].policies.ai.promptGuard.response[].bedrockGuardrails.policiesobjectBackend policies for AWS authentication (optional, defaults to implicit AWS auth)
binds[].listeners[].routes[].backends[].ai.groups[].providers[].policies.ai.promptGuard.response[].bedrockGuardrails.policies.requestHeaderModifierobjectHeaders to be modified in the request.
binds[].listeners[].routes[].backends[].ai.groups[].providers[].policies.ai.promptGuard.response[].bedrockGuardrails.policies.requestHeaderModifier.addobject
binds[].listeners[].routes[].backends[].ai.groups[].providers[].policies.ai.promptGuard.response[].bedrockGuardrails.policies.requestHeaderModifier.setobject
binds[].listeners[].routes[].backends[].ai.groups[].providers[].policies.ai.promptGuard.response[].bedrockGuardrails.policies.requestHeaderModifier.remove[]string
binds[].listeners[].routes[].backends[].ai.groups[].providers[].policies.ai.promptGuard.response[].bedrockGuardrails.policies.responseHeaderModifierobjectHeaders to be modified in the response.
binds[].listeners[].routes[].backends[].ai.groups[].providers[].policies.ai.promptGuard.response[].bedrockGuardrails.policies.responseHeaderModifier.addobject
binds[].listeners[].routes[].backends[].ai.groups[].providers[].policies.ai.promptGuard.response[].bedrockGuardrails.policies.responseHeaderModifier.setobject
binds[].listeners[].routes[].backends[].ai.groups[].providers[].policies.ai.promptGuard.response[].bedrockGuardrails.policies.responseHeaderModifier.remove[]string
binds[].listeners[].routes[].backends[].ai.groups[].providers[].policies.ai.promptGuard.response[].bedrockGuardrails.policies.requestRedirectobjectDirectly respond to the request with a redirect.
binds[].listeners[].routes[].backends[].ai.groups[].providers[].policies.ai.promptGuard.response[].bedrockGuardrails.policies.requestRedirect.schemestring
binds[].listeners[].routes[].backends[].ai.groups[].providers[].policies.ai.promptGuard.response[].bedrockGuardrails.policies.requestRedirect.authoritystring
binds[].listeners[].routes[].backends[].ai.groups[].providers[].policies.ai.promptGuard.response[].bedrockGuardrails.policies.requestRedirect.authority.fullstring
binds[].listeners[].routes[].backends[].ai.groups[].providers[].policies.ai.promptGuard.response[].bedrockGuardrails.policies.requestRedirect.authority.hoststring
binds[].listeners[].routes[].backends[].ai.groups[].providers[].policies.ai.promptGuard.response[].bedrockGuardrails.policies.requestRedirect.authority.portinteger
binds[].listeners[].routes[].backends[].ai.groups[].providers[].policies.ai.promptGuard.response[].bedrockGuardrails.policies.requestRedirect.pathobject
binds[].listeners[].routes[].backends[].ai.groups[].providers[].policies.ai.promptGuard.response[].bedrockGuardrails.policies.requestRedirect.path.fullstring
binds[].listeners[].routes[].backends[].ai.groups[].providers[].policies.ai.promptGuard.response[].bedrockGuardrails.policies.requestRedirect.path.prefixstring
binds[].listeners[].routes[].backends[].ai.groups[].providers[].policies.ai.promptGuard.response[].bedrockGuardrails.policies.requestRedirect.statusinteger
binds[].listeners[].routes[].backends[].ai.groups[].providers[].policies.ai.promptGuard.response[].bedrockGuardrails.policies.transformationsobjectModify requests and responses sent to and from the backend.
binds[].listeners[].routes[].backends[].ai.groups[].providers[].policies.ai.promptGuard.response[].bedrockGuardrails.policies.transformations.requestobject
binds[].listeners[].routes[].backends[].ai.groups[].providers[].policies.ai.promptGuard.response[].bedrockGuardrails.policies.transformations.request.addobject
binds[].listeners[].routes[].backends[].ai.groups[].providers[].policies.ai.promptGuard.response[].bedrockGuardrails.policies.transformations.request.setobject
binds[].listeners[].routes[].backends[].ai.groups[].providers[].policies.ai.promptGuard.response[].bedrockGuardrails.policies.transformations.request.remove[]string
binds[].listeners[].routes[].backends[].ai.groups[].providers[].policies.ai.promptGuard.response[].bedrockGuardrails.policies.transformations.request.bodystring
binds[].listeners[].routes[].backends[].ai.groups[].providers[].policies.ai.promptGuard.response[].bedrockGuardrails.policies.transformations.request.metadataobject
binds[].listeners[].routes[].backends[].ai.groups[].providers[].policies.ai.promptGuard.response[].bedrockGuardrails.policies.transformations.responseobject
binds[].listeners[].routes[].backends[].ai.groups[].providers[].policies.ai.promptGuard.response[].bedrockGuardrails.policies.transformations.response.addobject
binds[].listeners[].routes[].backends[].ai.groups[].providers[].policies.ai.promptGuard.response[].bedrockGuardrails.policies.transformations.response.setobject
binds[].listeners[].routes[].backends[].ai.groups[].providers[].policies.ai.promptGuard.response[].bedrockGuardrails.policies.transformations.response.remove[]string
binds[].listeners[].routes[].backends[].ai.groups[].providers[].policies.ai.promptGuard.response[].bedrockGuardrails.policies.transformations.response.bodystring
binds[].listeners[].routes[].backends[].ai.groups[].providers[].policies.ai.promptGuard.response[].bedrockGuardrails.policies.transformations.response.metadataobject
binds[].listeners[].routes[].backends[].ai.groups[].providers[].policies.ai.promptGuard.response[].bedrockGuardrails.policies.backendTLSobjectSend TLS to the backend.
binds[].listeners[].routes[].backends[].ai.groups[].providers[].policies.ai.promptGuard.response[].bedrockGuardrails.policies.backendTLS.certstring
binds[].listeners[].routes[].backends[].ai.groups[].providers[].policies.ai.promptGuard.response[].bedrockGuardrails.policies.backendTLS.keystring
binds[].listeners[].routes[].backends[].ai.groups[].providers[].policies.ai.promptGuard.response[].bedrockGuardrails.policies.backendTLS.rootstring
binds[].listeners[].routes[].backends[].ai.groups[].providers[].policies.ai.promptGuard.response[].bedrockGuardrails.policies.backendTLS.hostnamestring
binds[].listeners[].routes[].backends[].ai.groups[].providers[].policies.ai.promptGuard.response[].bedrockGuardrails.policies.backendTLS.insecureboolean
binds[].listeners[].routes[].backends[].ai.groups[].providers[].policies.ai.promptGuard.response[].bedrockGuardrails.policies.backendTLS.insecureHostboolean
binds[].listeners[].routes[].backends[].ai.groups[].providers[].policies.ai.promptGuard.response[].bedrockGuardrails.policies.backendTLS.alpn[]string
binds[].listeners[].routes[].backends[].ai.groups[].providers[].policies.ai.promptGuard.response[].bedrockGuardrails.policies.backendTLS.subjectAltNames[]string
binds[].listeners[].routes[].backends[].ai.groups[].providers[].policies.ai.promptGuard.response[].bedrockGuardrails.policies.backendAuthobjectAuthenticate to the backend.
binds[].listeners[].routes[].backends[].ai.groups[].providers[].policies.ai.promptGuard.response[].bedrockGuardrails.policies.backendAuth.passthroughobject
binds[].listeners[].routes[].backends[].ai.groups[].providers[].policies.ai.promptGuard.response[].bedrockGuardrails.policies.backendAuth.keyobject
binds[].listeners[].routes[].backends[].ai.groups[].providers[].policies.ai.promptGuard.response[].bedrockGuardrails.policies.backendAuth.key.filestring
binds[].listeners[].routes[].backends[].ai.groups[].providers[].policies.ai.promptGuard.response[].bedrockGuardrails.policies.backendAuth.gcpobject
binds[].listeners[].routes[].backends[].ai.groups[].providers[].policies.ai.promptGuard.response[].bedrockGuardrails.policies.backendAuth.gcp.typestring
binds[].listeners[].routes[].backends[].ai.groups[].providers[].policies.ai.promptGuard.response[].bedrockGuardrails.policies.backendAuth.gcp.audiencestringAudience for the token. If not set, the destination host will be used.
binds[].listeners[].routes[].backends[].ai.groups[].providers[].policies.ai.promptGuard.response[].bedrockGuardrails.policies.backendAuth.gcp.typestring
binds[].listeners[].routes[].backends[].ai.groups[].providers[].policies.ai.promptGuard.response[].bedrockGuardrails.policies.backendAuth.awsobject
binds[].listeners[].routes[].backends[].ai.groups[].providers[].policies.ai.promptGuard.response[].bedrockGuardrails.policies.backendAuth.aws.accessKeyIdstring
binds[].listeners[].routes[].backends[].ai.groups[].providers[].policies.ai.promptGuard.response[].bedrockGuardrails.policies.backendAuth.aws.secretAccessKeystring
binds[].listeners[].routes[].backends[].ai.groups[].providers[].policies.ai.promptGuard.response[].bedrockGuardrails.policies.backendAuth.aws.regionstring
binds[].listeners[].routes[].backends[].ai.groups[].providers[].policies.ai.promptGuard.response[].bedrockGuardrails.policies.backendAuth.aws.sessionTokenstring
binds[].listeners[].routes[].backends[].ai.groups[].providers[].policies.ai.promptGuard.response[].bedrockGuardrails.policies.backendAuth.azureobjectExactly one of explicitConfig, developerImplicit, or implicit may be set.
binds[].listeners[].routes[].backends[].ai.groups[].providers[].policies.ai.promptGuard.response[].bedrockGuardrails.policies.backendAuth.azure.explicitConfigobjectExactly one of clientSecret, managedIdentity, or workloadIdentity may be set.
binds[].listeners[].routes[].backends[].ai.groups[].providers[].policies.ai.promptGuard.response[].bedrockGuardrails.policies.backendAuth.azure.explicitConfig.clientSecretobject
binds[].listeners[].routes[].backends[].ai.groups[].providers[].policies.ai.promptGuard.response[].bedrockGuardrails.policies.backendAuth.azure.explicitConfig.clientSecret.tenant_idstring
binds[].listeners[].routes[].backends[].ai.groups[].providers[].policies.ai.promptGuard.response[].bedrockGuardrails.policies.backendAuth.azure.explicitConfig.clientSecret.client_idstring
binds[].listeners[].routes[].backends[].ai.groups[].providers[].policies.ai.promptGuard.response[].bedrockGuardrails.policies.backendAuth.azure.explicitConfig.clientSecret.client_secretstring
binds[].listeners[].routes[].backends[].ai.groups[].providers[].policies.ai.promptGuard.response[].bedrockGuardrails.policies.backendAuth.azure.explicitConfig.managedIdentityobject
binds[].listeners[].routes[].backends[].ai.groups[].providers[].policies.ai.promptGuard.response[].bedrockGuardrails.policies.backendAuth.azure.explicitConfig.managedIdentity.userAssignedIdentityobject
binds[].listeners[].routes[].backends[].ai.groups[].providers[].policies.ai.promptGuard.response[].bedrockGuardrails.policies.backendAuth.azure.explicitConfig.managedIdentity.userAssignedIdentity.clientIdstring
binds[].listeners[].routes[].backends[].ai.groups[].providers[].policies.ai.promptGuard.response[].bedrockGuardrails.policies.backendAuth.azure.explicitConfig.managedIdentity.userAssignedIdentity.objectIdstring
binds[].listeners[].routes[].backends[].ai.groups[].providers[].policies.ai.promptGuard.response[].bedrockGuardrails.policies.backendAuth.azure.explicitConfig.managedIdentity.userAssignedIdentity.resourceIdstring
binds[].listeners[].routes[].backends[].ai.groups[].providers[].policies.ai.promptGuard.response[].bedrockGuardrails.policies.backendAuth.azure.explicitConfig.workloadIdentityobject
binds[].listeners[].routes[].backends[].ai.groups[].providers[].policies.ai.promptGuard.response[].bedrockGuardrails.policies.backendAuth.azure.developerImplicitobject
binds[].listeners[].routes[].backends[].ai.groups[].providers[].policies.ai.promptGuard.response[].bedrockGuardrails.policies.backendAuth.azure.implicitobject
binds[].listeners[].routes[].backends[].ai.groups[].providers[].policies.ai.promptGuard.response[].bedrockGuardrails.policies.httpobjectSpecify HTTP settings for the backend
binds[].listeners[].routes[].backends[].ai.groups[].providers[].policies.ai.promptGuard.response[].bedrockGuardrails.policies.http.versionstring
binds[].listeners[].routes[].backends[].ai.groups[].providers[].policies.ai.promptGuard.response[].bedrockGuardrails.policies.http.requestTimeoutstring
binds[].listeners[].routes[].backends[].ai.groups[].providers[].policies.ai.promptGuard.response[].bedrockGuardrails.policies.tcpobjectSpecify TCP settings for the backend
binds[].listeners[].routes[].backends[].ai.groups[].providers[].policies.ai.promptGuard.response[].bedrockGuardrails.policies.tcp.keepalivesobject
binds[].listeners[].routes[].backends[].ai.groups[].providers[].policies.ai.promptGuard.response[].bedrockGuardrails.policies.tcp.keepalives.enabledboolean
binds[].listeners[].routes[].backends[].ai.groups[].providers[].policies.ai.promptGuard.response[].bedrockGuardrails.policies.tcp.keepalives.timestring
binds[].listeners[].routes[].backends[].ai.groups[].providers[].policies.ai.promptGuard.response[].bedrockGuardrails.policies.tcp.keepalives.intervalstring
binds[].listeners[].routes[].backends[].ai.groups[].providers[].policies.ai.promptGuard.response[].bedrockGuardrails.policies.tcp.keepalives.retriesinteger
binds[].listeners[].routes[].backends[].ai.groups[].providers[].policies.ai.promptGuard.response[].bedrockGuardrails.policies.tcp.connectTimeoutobject
binds[].listeners[].routes[].backends[].ai.groups[].providers[].policies.ai.promptGuard.response[].bedrockGuardrails.policies.tcp.connectTimeout.secsinteger
binds[].listeners[].routes[].backends[].ai.groups[].providers[].policies.ai.promptGuard.response[].bedrockGuardrails.policies.tcp.connectTimeout.nanosinteger
binds[].listeners[].routes[].backends[].ai.groups[].providers[].policies.ai.promptGuard.response[].bedrockGuardrails.policies.healthobjectHealth policy for backend outlier detection; evicts on unhealthy responses based on CEL condition and configurable duration.
binds[].listeners[].routes[].backends[].ai.groups[].providers[].policies.ai.promptGuard.response[].bedrockGuardrails.policies.health.unhealthyExpressionstringCEL expression; true means unhealthy (evict). E.g. response.code >= 500.
When unset, any 5xx or connection failure is treated as unhealthy.
binds[].listeners[].routes[].backends[].ai.groups[].providers[].policies.ai.promptGuard.response[].bedrockGuardrails.policies.health.evictionobjectLocal/config eviction sub-policy with duration as string; mirrors Eviction.
binds[].listeners[].routes[].backends[].ai.groups[].providers[].policies.ai.promptGuard.response[].bedrockGuardrails.policies.health.eviction.durationstring
binds[].listeners[].routes[].backends[].ai.groups[].providers[].policies.ai.promptGuard.response[].bedrockGuardrails.policies.health.eviction.restoreHealthnumber
binds[].listeners[].routes[].backends[].ai.groups[].providers[].policies.ai.promptGuard.response[].bedrockGuardrails.policies.health.eviction.consecutiveFailuresinteger
binds[].listeners[].routes[].backends[].ai.groups[].providers[].policies.ai.promptGuard.response[].bedrockGuardrails.policies.health.eviction.healthThresholdnumber
binds[].listeners[].routes[].backends[].ai.groups[].providers[].policies.ai.promptGuard.response[].bedrockGuardrails.policies.backendTunnelobjectSpecify a tunnel to use when connecting to the backend
binds[].listeners[].routes[].backends[].ai.groups[].providers[].policies.ai.promptGuard.response[].bedrockGuardrails.policies.backendTunnel.proxyobjectReference to the proxy address
Exactly one of service, host, or backend may be set.
binds[].listeners[].routes[].backends[].ai.groups[].providers[].policies.ai.promptGuard.response[].bedrockGuardrails.policies.backendTunnel.proxy.serviceobject
binds[].listeners[].routes[].backends[].ai.groups[].providers[].policies.ai.promptGuard.response[].bedrockGuardrails.policies.backendTunnel.proxy.service.nameobject
binds[].listeners[].routes[].backends[].ai.groups[].providers[].policies.ai.promptGuard.response[].bedrockGuardrails.policies.backendTunnel.proxy.service.name.namespacestring
binds[].listeners[].routes[].backends[].ai.groups[].providers[].policies.ai.promptGuard.response[].bedrockGuardrails.policies.backendTunnel.proxy.service.name.hostnamestring
binds[].listeners[].routes[].backends[].ai.groups[].providers[].policies.ai.promptGuard.response[].bedrockGuardrails.policies.backendTunnel.proxy.service.portinteger
binds[].listeners[].routes[].backends[].ai.groups[].providers[].policies.ai.promptGuard.response[].bedrockGuardrails.policies.backendTunnel.proxy.hoststringHostname or IP address
binds[].listeners[].routes[].backends[].ai.groups[].providers[].policies.ai.promptGuard.response[].bedrockGuardrails.policies.backendTunnel.proxy.backendstringExplicit backend reference. Backend must be defined in the top level backends list
binds[].listeners[].routes[].backends[].ai.groups[].providers[].policies.ai.promptGuard.response[].googleModelArmorobjectConfiguration for Google Cloud Model Armor integration.
binds[].listeners[].routes[].backends[].ai.groups[].providers[].policies.ai.promptGuard.response[].googleModelArmor.templateIdstringThe template ID for the Model Armor configuration
binds[].listeners[].routes[].backends[].ai.groups[].providers[].policies.ai.promptGuard.response[].googleModelArmor.projectIdstringThe GCP project ID
binds[].listeners[].routes[].backends[].ai.groups[].providers[].policies.ai.promptGuard.response[].googleModelArmor.locationstringThe GCP region (default: us-central1)
binds[].listeners[].routes[].backends[].ai.groups[].providers[].policies.ai.promptGuard.response[].googleModelArmor.policiesobjectBackend policies for GCP authentication (optional, defaults to implicit GCP auth)
binds[].listeners[].routes[].backends[].ai.groups[].providers[].policies.ai.promptGuard.response[].googleModelArmor.policies.requestHeaderModifierobjectHeaders to be modified in the request.
binds[].listeners[].routes[].backends[].ai.groups[].providers[].policies.ai.promptGuard.response[].googleModelArmor.policies.requestHeaderModifier.addobject
binds[].listeners[].routes[].backends[].ai.groups[].providers[].policies.ai.promptGuard.response[].googleModelArmor.policies.requestHeaderModifier.setobject
binds[].listeners[].routes[].backends[].ai.groups[].providers[].policies.ai.promptGuard.response[].googleModelArmor.policies.requestHeaderModifier.remove[]string
binds[].listeners[].routes[].backends[].ai.groups[].providers[].policies.ai.promptGuard.response[].googleModelArmor.policies.responseHeaderModifierobjectHeaders to be modified in the response.
binds[].listeners[].routes[].backends[].ai.groups[].providers[].policies.ai.promptGuard.response[].googleModelArmor.policies.responseHeaderModifier.addobject
binds[].listeners[].routes[].backends[].ai.groups[].providers[].policies.ai.promptGuard.response[].googleModelArmor.policies.responseHeaderModifier.setobject
binds[].listeners[].routes[].backends[].ai.groups[].providers[].policies.ai.promptGuard.response[].googleModelArmor.policies.responseHeaderModifier.remove[]string
binds[].listeners[].routes[].backends[].ai.groups[].providers[].policies.ai.promptGuard.response[].googleModelArmor.policies.requestRedirectobjectDirectly respond to the request with a redirect.
binds[].listeners[].routes[].backends[].ai.groups[].providers[].policies.ai.promptGuard.response[].googleModelArmor.policies.requestRedirect.schemestring
binds[].listeners[].routes[].backends[].ai.groups[].providers[].policies.ai.promptGuard.response[].googleModelArmor.policies.requestRedirect.authoritystring
binds[].listeners[].routes[].backends[].ai.groups[].providers[].policies.ai.promptGuard.response[].googleModelArmor.policies.requestRedirect.authority.fullstring
binds[].listeners[].routes[].backends[].ai.groups[].providers[].policies.ai.promptGuard.response[].googleModelArmor.policies.requestRedirect.authority.hoststring
binds[].listeners[].routes[].backends[].ai.groups[].providers[].policies.ai.promptGuard.response[].googleModelArmor.policies.requestRedirect.authority.portinteger
binds[].listeners[].routes[].backends[].ai.groups[].providers[].policies.ai.promptGuard.response[].googleModelArmor.policies.requestRedirect.pathobject
binds[].listeners[].routes[].backends[].ai.groups[].providers[].policies.ai.promptGuard.response[].googleModelArmor.policies.requestRedirect.path.fullstring
binds[].listeners[].routes[].backends[].ai.groups[].providers[].policies.ai.promptGuard.response[].googleModelArmor.policies.requestRedirect.path.prefixstring
binds[].listeners[].routes[].backends[].ai.groups[].providers[].policies.ai.promptGuard.response[].googleModelArmor.policies.requestRedirect.statusinteger
binds[].listeners[].routes[].backends[].ai.groups[].providers[].policies.ai.promptGuard.response[].googleModelArmor.policies.transformationsobjectModify requests and responses sent to and from the backend.
binds[].listeners[].routes[].backends[].ai.groups[].providers[].policies.ai.promptGuard.response[].googleModelArmor.policies.transformations.requestobject
binds[].listeners[].routes[].backends[].ai.groups[].providers[].policies.ai.promptGuard.response[].googleModelArmor.policies.transformations.request.addobject
binds[].listeners[].routes[].backends[].ai.groups[].providers[].policies.ai.promptGuard.response[].googleModelArmor.policies.transformations.request.setobject
binds[].listeners[].routes[].backends[].ai.groups[].providers[].policies.ai.promptGuard.response[].googleModelArmor.policies.transformations.request.remove[]string
binds[].listeners[].routes[].backends[].ai.groups[].providers[].policies.ai.promptGuard.response[].googleModelArmor.policies.transformations.request.bodystring
binds[].listeners[].routes[].backends[].ai.groups[].providers[].policies.ai.promptGuard.response[].googleModelArmor.policies.transformations.request.metadataobject
binds[].listeners[].routes[].backends[].ai.groups[].providers[].policies.ai.promptGuard.response[].googleModelArmor.policies.transformations.responseobject
binds[].listeners[].routes[].backends[].ai.groups[].providers[].policies.ai.promptGuard.response[].googleModelArmor.policies.transformations.response.addobject
binds[].listeners[].routes[].backends[].ai.groups[].providers[].policies.ai.promptGuard.response[].googleModelArmor.policies.transformations.response.setobject
binds[].listeners[].routes[].backends[].ai.groups[].providers[].policies.ai.promptGuard.response[].googleModelArmor.policies.transformations.response.remove[]string
binds[].listeners[].routes[].backends[].ai.groups[].providers[].policies.ai.promptGuard.response[].googleModelArmor.policies.transformations.response.bodystring
binds[].listeners[].routes[].backends[].ai.groups[].providers[].policies.ai.promptGuard.response[].googleModelArmor.policies.transformations.response.metadataobject
binds[].listeners[].routes[].backends[].ai.groups[].providers[].policies.ai.promptGuard.response[].googleModelArmor.policies.backendTLSobjectSend TLS to the backend.
binds[].listeners[].routes[].backends[].ai.groups[].providers[].policies.ai.promptGuard.response[].googleModelArmor.policies.backendTLS.certstring
binds[].listeners[].routes[].backends[].ai.groups[].providers[].policies.ai.promptGuard.response[].googleModelArmor.policies.backendTLS.keystring
binds[].listeners[].routes[].backends[].ai.groups[].providers[].policies.ai.promptGuard.response[].googleModelArmor.policies.backendTLS.rootstring
binds[].listeners[].routes[].backends[].ai.groups[].providers[].policies.ai.promptGuard.response[].googleModelArmor.policies.backendTLS.hostnamestring
binds[].listeners[].routes[].backends[].ai.groups[].providers[].policies.ai.promptGuard.response[].googleModelArmor.policies.backendTLS.insecureboolean
binds[].listeners[].routes[].backends[].ai.groups[].providers[].policies.ai.promptGuard.response[].googleModelArmor.policies.backendTLS.insecureHostboolean
binds[].listeners[].routes[].backends[].ai.groups[].providers[].policies.ai.promptGuard.response[].googleModelArmor.policies.backendTLS.alpn[]string
binds[].listeners[].routes[].backends[].ai.groups[].providers[].policies.ai.promptGuard.response[].googleModelArmor.policies.backendTLS.subjectAltNames[]string
binds[].listeners[].routes[].backends[].ai.groups[].providers[].policies.ai.promptGuard.response[].googleModelArmor.policies.backendAuthobjectAuthenticate to the backend.
binds[].listeners[].routes[].backends[].ai.groups[].providers[].policies.ai.promptGuard.response[].googleModelArmor.policies.backendAuth.passthroughobject
binds[].listeners[].routes[].backends[].ai.groups[].providers[].policies.ai.promptGuard.response[].googleModelArmor.policies.backendAuth.keyobject
binds[].listeners[].routes[].backends[].ai.groups[].providers[].policies.ai.promptGuard.response[].googleModelArmor.policies.backendAuth.key.filestring
binds[].listeners[].routes[].backends[].ai.groups[].providers[].policies.ai.promptGuard.response[].googleModelArmor.policies.backendAuth.gcpobject
binds[].listeners[].routes[].backends[].ai.groups[].providers[].policies.ai.promptGuard.response[].googleModelArmor.policies.backendAuth.gcp.typestring
binds[].listeners[].routes[].backends[].ai.groups[].providers[].policies.ai.promptGuard.response[].googleModelArmor.policies.backendAuth.gcp.audiencestringAudience for the token. If not set, the destination host will be used.
binds[].listeners[].routes[].backends[].ai.groups[].providers[].policies.ai.promptGuard.response[].googleModelArmor.policies.backendAuth.gcp.typestring
binds[].listeners[].routes[].backends[].ai.groups[].providers[].policies.ai.promptGuard.response[].googleModelArmor.policies.backendAuth.awsobject
binds[].listeners[].routes[].backends[].ai.groups[].providers[].policies.ai.promptGuard.response[].googleModelArmor.policies.backendAuth.aws.accessKeyIdstring
binds[].listeners[].routes[].backends[].ai.groups[].providers[].policies.ai.promptGuard.response[].googleModelArmor.policies.backendAuth.aws.secretAccessKeystring
binds[].listeners[].routes[].backends[].ai.groups[].providers[].policies.ai.promptGuard.response[].googleModelArmor.policies.backendAuth.aws.regionstring
binds[].listeners[].routes[].backends[].ai.groups[].providers[].policies.ai.promptGuard.response[].googleModelArmor.policies.backendAuth.aws.sessionTokenstring
binds[].listeners[].routes[].backends[].ai.groups[].providers[].policies.ai.promptGuard.response[].googleModelArmor.policies.backendAuth.azureobjectExactly one of explicitConfig, developerImplicit, or implicit may be set.
binds[].listeners[].routes[].backends[].ai.groups[].providers[].policies.ai.promptGuard.response[].googleModelArmor.policies.backendAuth.azure.explicitConfigobjectExactly one of clientSecret, managedIdentity, or workloadIdentity may be set.
binds[].listeners[].routes[].backends[].ai.groups[].providers[].policies.ai.promptGuard.response[].googleModelArmor.policies.backendAuth.azure.explicitConfig.clientSecretobject
binds[].listeners[].routes[].backends[].ai.groups[].providers[].policies.ai.promptGuard.response[].googleModelArmor.policies.backendAuth.azure.explicitConfig.clientSecret.tenant_idstring
binds[].listeners[].routes[].backends[].ai.groups[].providers[].policies.ai.promptGuard.response[].googleModelArmor.policies.backendAuth.azure.explicitConfig.clientSecret.client_idstring
binds[].listeners[].routes[].backends[].ai.groups[].providers[].policies.ai.promptGuard.response[].googleModelArmor.policies.backendAuth.azure.explicitConfig.clientSecret.client_secretstring
binds[].listeners[].routes[].backends[].ai.groups[].providers[].policies.ai.promptGuard.response[].googleModelArmor.policies.backendAuth.azure.explicitConfig.managedIdentityobject
binds[].listeners[].routes[].backends[].ai.groups[].providers[].policies.ai.promptGuard.response[].googleModelArmor.policies.backendAuth.azure.explicitConfig.managedIdentity.userAssignedIdentityobject
binds[].listeners[].routes[].backends[].ai.groups[].providers[].policies.ai.promptGuard.response[].googleModelArmor.policies.backendAuth.azure.explicitConfig.managedIdentity.userAssignedIdentity.clientIdstring
binds[].listeners[].routes[].backends[].ai.groups[].providers[].policies.ai.promptGuard.response[].googleModelArmor.policies.backendAuth.azure.explicitConfig.managedIdentity.userAssignedIdentity.objectIdstring
binds[].listeners[].routes[].backends[].ai.groups[].providers[].policies.ai.promptGuard.response[].googleModelArmor.policies.backendAuth.azure.explicitConfig.managedIdentity.userAssignedIdentity.resourceIdstring
binds[].listeners[].routes[].backends[].ai.groups[].providers[].policies.ai.promptGuard.response[].googleModelArmor.policies.backendAuth.azure.explicitConfig.workloadIdentityobject
binds[].listeners[].routes[].backends[].ai.groups[].providers[].policies.ai.promptGuard.response[].googleModelArmor.policies.backendAuth.azure.developerImplicitobject
binds[].listeners[].routes[].backends[].ai.groups[].providers[].policies.ai.promptGuard.response[].googleModelArmor.policies.backendAuth.azure.implicitobject
binds[].listeners[].routes[].backends[].ai.groups[].providers[].policies.ai.promptGuard.response[].googleModelArmor.policies.httpobjectSpecify HTTP settings for the backend
binds[].listeners[].routes[].backends[].ai.groups[].providers[].policies.ai.promptGuard.response[].googleModelArmor.policies.http.versionstring
binds[].listeners[].routes[].backends[].ai.groups[].providers[].policies.ai.promptGuard.response[].googleModelArmor.policies.http.requestTimeoutstring
binds[].listeners[].routes[].backends[].ai.groups[].providers[].policies.ai.promptGuard.response[].googleModelArmor.policies.tcpobjectSpecify TCP settings for the backend
binds[].listeners[].routes[].backends[].ai.groups[].providers[].policies.ai.promptGuard.response[].googleModelArmor.policies.tcp.keepalivesobject
binds[].listeners[].routes[].backends[].ai.groups[].providers[].policies.ai.promptGuard.response[].googleModelArmor.policies.tcp.keepalives.enabledboolean
binds[].listeners[].routes[].backends[].ai.groups[].providers[].policies.ai.promptGuard.response[].googleModelArmor.policies.tcp.keepalives.timestring
binds[].listeners[].routes[].backends[].ai.groups[].providers[].policies.ai.promptGuard.response[].googleModelArmor.policies.tcp.keepalives.intervalstring
binds[].listeners[].routes[].backends[].ai.groups[].providers[].policies.ai.promptGuard.response[].googleModelArmor.policies.tcp.keepalives.retriesinteger
binds[].listeners[].routes[].backends[].ai.groups[].providers[].policies.ai.promptGuard.response[].googleModelArmor.policies.tcp.connectTimeoutobject
binds[].listeners[].routes[].backends[].ai.groups[].providers[].policies.ai.promptGuard.response[].googleModelArmor.policies.tcp.connectTimeout.secsinteger
binds[].listeners[].routes[].backends[].ai.groups[].providers[].policies.ai.promptGuard.response[].googleModelArmor.policies.tcp.connectTimeout.nanosinteger
binds[].listeners[].routes[].backends[].ai.groups[].providers[].policies.ai.promptGuard.response[].googleModelArmor.policies.healthobjectHealth policy for backend outlier detection; evicts on unhealthy responses based on CEL condition and configurable duration.
binds[].listeners[].routes[].backends[].ai.groups[].providers[].policies.ai.promptGuard.response[].googleModelArmor.policies.health.unhealthyExpressionstringCEL expression; true means unhealthy (evict). E.g. response.code >= 500.
When unset, any 5xx or connection failure is treated as unhealthy.
binds[].listeners[].routes[].backends[].ai.groups[].providers[].policies.ai.promptGuard.response[].googleModelArmor.policies.health.evictionobjectLocal/config eviction sub-policy with duration as string; mirrors Eviction.
binds[].listeners[].routes[].backends[].ai.groups[].providers[].policies.ai.promptGuard.response[].googleModelArmor.policies.health.eviction.durationstring
binds[].listeners[].routes[].backends[].ai.groups[].providers[].policies.ai.promptGuard.response[].googleModelArmor.policies.health.eviction.restoreHealthnumber
binds[].listeners[].routes[].backends[].ai.groups[].providers[].policies.ai.promptGuard.response[].googleModelArmor.policies.health.eviction.consecutiveFailuresinteger
binds[].listeners[].routes[].backends[].ai.groups[].providers[].policies.ai.promptGuard.response[].googleModelArmor.policies.health.eviction.healthThresholdnumber
binds[].listeners[].routes[].backends[].ai.groups[].providers[].policies.ai.promptGuard.response[].googleModelArmor.policies.backendTunnelobjectSpecify a tunnel to use when connecting to the backend
binds[].listeners[].routes[].backends[].ai.groups[].providers[].policies.ai.promptGuard.response[].googleModelArmor.policies.backendTunnel.proxyobjectReference to the proxy address
Exactly one of service, host, or backend may be set.
binds[].listeners[].routes[].backends[].ai.groups[].providers[].policies.ai.promptGuard.response[].googleModelArmor.policies.backendTunnel.proxy.serviceobject
binds[].listeners[].routes[].backends[].ai.groups[].providers[].policies.ai.promptGuard.response[].googleModelArmor.policies.backendTunnel.proxy.service.nameobject
binds[].listeners[].routes[].backends[].ai.groups[].providers[].policies.ai.promptGuard.response[].googleModelArmor.policies.backendTunnel.proxy.service.name.namespacestring
binds[].listeners[].routes[].backends[].ai.groups[].providers[].policies.ai.promptGuard.response[].googleModelArmor.policies.backendTunnel.proxy.service.name.hostnamestring
binds[].listeners[].routes[].backends[].ai.groups[].providers[].policies.ai.promptGuard.response[].googleModelArmor.policies.backendTunnel.proxy.service.portinteger
binds[].listeners[].routes[].backends[].ai.groups[].providers[].policies.ai.promptGuard.response[].googleModelArmor.policies.backendTunnel.proxy.hoststringHostname or IP address
binds[].listeners[].routes[].backends[].ai.groups[].providers[].policies.ai.promptGuard.response[].googleModelArmor.policies.backendTunnel.proxy.backendstringExplicit backend reference. Backend must be defined in the top level backends list
binds[].listeners[].routes[].backends[].ai.groups[].providers[].policies.ai.promptGuard.response[].rejectionobject
binds[].listeners[].routes[].backends[].ai.groups[].providers[].policies.ai.promptGuard.response[].rejection.bodyarray
binds[].listeners[].routes[].backends[].ai.groups[].providers[].policies.ai.promptGuard.response[].rejection.statusinteger
binds[].listeners[].routes[].backends[].ai.groups[].providers[].policies.ai.promptGuard.response[].rejection.headersobjectOptional headers to add, set, or remove from the rejection response
binds[].listeners[].routes[].backends[].ai.groups[].providers[].policies.ai.promptGuard.response[].rejection.headers.addobject
binds[].listeners[].routes[].backends[].ai.groups[].providers[].policies.ai.promptGuard.response[].rejection.headers.setobject
binds[].listeners[].routes[].backends[].ai.groups[].providers[].policies.ai.promptGuard.response[].rejection.headers.remove[]string
binds[].listeners[].routes[].backends[].ai.groups[].providers[].policies.ai.defaultsobject
binds[].listeners[].routes[].backends[].ai.groups[].providers[].policies.ai.overridesobject
binds[].listeners[].routes[].backends[].ai.groups[].providers[].policies.ai.transformationsobject
binds[].listeners[].routes[].backends[].ai.groups[].providers[].policies.ai.promptsobject
binds[].listeners[].routes[].backends[].ai.groups[].providers[].policies.ai.prompts.append[]object
binds[].listeners[].routes[].backends[].ai.groups[].providers[].policies.ai.prompts.append[].rolestring
binds[].listeners[].routes[].backends[].ai.groups[].providers[].policies.ai.prompts.append[].contentstring
binds[].listeners[].routes[].backends[].ai.groups[].providers[].policies.ai.prompts.prepend[]object
binds[].listeners[].routes[].backends[].ai.groups[].providers[].policies.ai.prompts.prepend[].rolestring
binds[].listeners[].routes[].backends[].ai.groups[].providers[].policies.ai.prompts.prepend[].contentstring
binds[].listeners[].routes[].backends[].ai.groups[].providers[].policies.ai.modelAliasesobject
binds[].listeners[].routes[].backends[].ai.groups[].providers[].policies.ai.promptCachingobject
binds[].listeners[].routes[].backends[].ai.groups[].providers[].policies.ai.promptCaching.cacheSystemboolean
binds[].listeners[].routes[].backends[].ai.groups[].providers[].policies.ai.promptCaching.cacheMessagesboolean
binds[].listeners[].routes[].backends[].ai.groups[].providers[].policies.ai.promptCaching.cacheToolsboolean
binds[].listeners[].routes[].backends[].ai.groups[].providers[].policies.ai.promptCaching.minTokensinteger
binds[].listeners[].routes[].backends[].ai.groups[].providers[].policies.ai.routesobject
binds[].listeners[].routes[].backends[].awsobject
binds[].listeners[].routes[].backends[].aws.agentCoreobject
binds[].listeners[].routes[].backends[].aws.agentCore.agentRuntimeArnstring
binds[].listeners[].routes[].backends[].aws.agentCore.qualifierstring
binds[].listeners[].routes[].backends[].weightinteger
binds[].listeners[].routes[].backends[].policiesobject
binds[].listeners[].routes[].backends[].policies.requestHeaderModifierobjectHeaders to be modified in the request.
binds[].listeners[].routes[].backends[].policies.requestHeaderModifier.addobject
binds[].listeners[].routes[].backends[].policies.requestHeaderModifier.setobject
binds[].listeners[].routes[].backends[].policies.requestHeaderModifier.remove[]string
binds[].listeners[].routes[].backends[].policies.responseHeaderModifierobjectHeaders to be modified in the response.
binds[].listeners[].routes[].backends[].policies.responseHeaderModifier.addobject
binds[].listeners[].routes[].backends[].policies.responseHeaderModifier.setobject
binds[].listeners[].routes[].backends[].policies.responseHeaderModifier.remove[]string
binds[].listeners[].routes[].backends[].policies.requestRedirectobjectDirectly respond to the request with a redirect.
binds[].listeners[].routes[].backends[].policies.requestRedirect.schemestring
binds[].listeners[].routes[].backends[].policies.requestRedirect.authoritystring
binds[].listeners[].routes[].backends[].policies.requestRedirect.authority.fullstring
binds[].listeners[].routes[].backends[].policies.requestRedirect.authority.hoststring
binds[].listeners[].routes[].backends[].policies.requestRedirect.authority.portinteger
binds[].listeners[].routes[].backends[].policies.requestRedirect.pathobject
binds[].listeners[].routes[].backends[].policies.requestRedirect.path.fullstring
binds[].listeners[].routes[].backends[].policies.requestRedirect.path.prefixstring
binds[].listeners[].routes[].backends[].policies.requestRedirect.statusinteger
binds[].listeners[].routes[].backends[].policies.transformationsobjectModify requests and responses sent to and from the backend.
binds[].listeners[].routes[].backends[].policies.transformations.requestobject
binds[].listeners[].routes[].backends[].policies.transformations.request.addobject
binds[].listeners[].routes[].backends[].policies.transformations.request.setobject
binds[].listeners[].routes[].backends[].policies.transformations.request.remove[]string
binds[].listeners[].routes[].backends[].policies.transformations.request.bodystring
binds[].listeners[].routes[].backends[].policies.transformations.request.metadataobject
binds[].listeners[].routes[].backends[].policies.transformations.responseobject
binds[].listeners[].routes[].backends[].policies.transformations.response.addobject
binds[].listeners[].routes[].backends[].policies.transformations.response.setobject
binds[].listeners[].routes[].backends[].policies.transformations.response.remove[]string
binds[].listeners[].routes[].backends[].policies.transformations.response.bodystring
binds[].listeners[].routes[].backends[].policies.transformations.response.metadataobject
binds[].listeners[].routes[].backends[].policies.backendTLSobjectSend TLS to the backend.
binds[].listeners[].routes[].backends[].policies.backendTLS.certstring
binds[].listeners[].routes[].backends[].policies.backendTLS.keystring
binds[].listeners[].routes[].backends[].policies.backendTLS.rootstring
binds[].listeners[].routes[].backends[].policies.backendTLS.hostnamestring
binds[].listeners[].routes[].backends[].policies.backendTLS.insecureboolean
binds[].listeners[].routes[].backends[].policies.backendTLS.insecureHostboolean
binds[].listeners[].routes[].backends[].policies.backendTLS.alpn[]string
binds[].listeners[].routes[].backends[].policies.backendTLS.subjectAltNames[]string
binds[].listeners[].routes[].backends[].policies.backendAuthobjectAuthenticate to the backend.
binds[].listeners[].routes[].backends[].policies.backendAuth.passthroughobject
binds[].listeners[].routes[].backends[].policies.backendAuth.keyobject
binds[].listeners[].routes[].backends[].policies.backendAuth.key.filestring
binds[].listeners[].routes[].backends[].policies.backendAuth.gcpobject
binds[].listeners[].routes[].backends[].policies.backendAuth.gcp.typestring
binds[].listeners[].routes[].backends[].policies.backendAuth.gcp.audiencestringAudience for the token. If not set, the destination host will be used.
binds[].listeners[].routes[].backends[].policies.backendAuth.gcp.typestring
binds[].listeners[].routes[].backends[].policies.backendAuth.awsobject
binds[].listeners[].routes[].backends[].policies.backendAuth.aws.accessKeyIdstring
binds[].listeners[].routes[].backends[].policies.backendAuth.aws.secretAccessKeystring
binds[].listeners[].routes[].backends[].policies.backendAuth.aws.regionstring
binds[].listeners[].routes[].backends[].policies.backendAuth.aws.sessionTokenstring
binds[].listeners[].routes[].backends[].policies.backendAuth.azureobjectExactly one of explicitConfig, developerImplicit, or implicit may be set.
binds[].listeners[].routes[].backends[].policies.backendAuth.azure.explicitConfigobjectExactly one of clientSecret, managedIdentity, or workloadIdentity may be set.
binds[].listeners[].routes[].backends[].policies.backendAuth.azure.explicitConfig.clientSecretobject
binds[].listeners[].routes[].backends[].policies.backendAuth.azure.explicitConfig.clientSecret.tenant_idstring
binds[].listeners[].routes[].backends[].policies.backendAuth.azure.explicitConfig.clientSecret.client_idstring
binds[].listeners[].routes[].backends[].policies.backendAuth.azure.explicitConfig.clientSecret.client_secretstring
binds[].listeners[].routes[].backends[].policies.backendAuth.azure.explicitConfig.managedIdentityobject
binds[].listeners[].routes[].backends[].policies.backendAuth.azure.explicitConfig.managedIdentity.userAssignedIdentityobject
binds[].listeners[].routes[].backends[].policies.backendAuth.azure.explicitConfig.managedIdentity.userAssignedIdentity.clientIdstring
binds[].listeners[].routes[].backends[].policies.backendAuth.azure.explicitConfig.managedIdentity.userAssignedIdentity.objectIdstring
binds[].listeners[].routes[].backends[].policies.backendAuth.azure.explicitConfig.managedIdentity.userAssignedIdentity.resourceIdstring
binds[].listeners[].routes[].backends[].policies.backendAuth.azure.explicitConfig.workloadIdentityobject
binds[].listeners[].routes[].backends[].policies.backendAuth.azure.developerImplicitobject
binds[].listeners[].routes[].backends[].policies.backendAuth.azure.implicitobject
binds[].listeners[].routes[].backends[].policies.httpobjectSpecify HTTP settings for the backend
binds[].listeners[].routes[].backends[].policies.http.versionstring
binds[].listeners[].routes[].backends[].policies.http.requestTimeoutstring
binds[].listeners[].routes[].backends[].policies.tcpobjectSpecify TCP settings for the backend
binds[].listeners[].routes[].backends[].policies.tcp.keepalivesobject
binds[].listeners[].routes[].backends[].policies.tcp.keepalives.enabledboolean
binds[].listeners[].routes[].backends[].policies.tcp.keepalives.timestring
binds[].listeners[].routes[].backends[].policies.tcp.keepalives.intervalstring
binds[].listeners[].routes[].backends[].policies.tcp.keepalives.retriesinteger
binds[].listeners[].routes[].backends[].policies.tcp.connectTimeoutobject
binds[].listeners[].routes[].backends[].policies.tcp.connectTimeout.secsinteger
binds[].listeners[].routes[].backends[].policies.tcp.connectTimeout.nanosinteger
binds[].listeners[].routes[].backends[].policies.healthobjectHealth policy for backend outlier detection; evicts on unhealthy responses based on CEL condition and configurable duration.
binds[].listeners[].routes[].backends[].policies.health.unhealthyExpressionstringCEL expression; true means unhealthy (evict). E.g. response.code >= 500.
When unset, any 5xx or connection failure is treated as unhealthy.
binds[].listeners[].routes[].backends[].policies.health.evictionobjectLocal/config eviction sub-policy with duration as string; mirrors Eviction.
binds[].listeners[].routes[].backends[].policies.health.eviction.durationstring
binds[].listeners[].routes[].backends[].policies.health.eviction.restoreHealthnumber
binds[].listeners[].routes[].backends[].policies.health.eviction.consecutiveFailuresinteger
binds[].listeners[].routes[].backends[].policies.health.eviction.healthThresholdnumber
binds[].listeners[].routes[].backends[].policies.backendTunnelobjectSpecify a tunnel to use when connecting to the backend
binds[].listeners[].routes[].backends[].policies.backendTunnel.proxyobjectReference to the proxy address
Exactly one of service, host, or backend may be set.
binds[].listeners[].routes[].backends[].policies.backendTunnel.proxy.serviceobject
binds[].listeners[].routes[].backends[].policies.backendTunnel.proxy.service.nameobject
binds[].listeners[].routes[].backends[].policies.backendTunnel.proxy.service.name.namespacestring
binds[].listeners[].routes[].backends[].policies.backendTunnel.proxy.service.name.hostnamestring
binds[].listeners[].routes[].backends[].policies.backendTunnel.proxy.service.portinteger
binds[].listeners[].routes[].backends[].policies.backendTunnel.proxy.hoststringHostname or IP address
binds[].listeners[].routes[].backends[].policies.backendTunnel.proxy.backendstringExplicit backend reference. Backend must be defined in the top level backends list
binds[].listeners[].routes[].backends[].policies.mcpAuthorizationobjectAuthorization policies for MCP access.
binds[].listeners[].routes[].backends[].policies.mcpAuthorization.rules[]string
binds[].listeners[].routes[].backends[].policies.a2aobjectMark this traffic as A2A to enable A2A processing and telemetry.
binds[].listeners[].routes[].backends[].policies.aiobjectMark this as LLM traffic to enable LLM processing.
binds[].listeners[].routes[].backends[].policies.ai.promptGuardobject
binds[].listeners[].routes[].backends[].policies.ai.promptGuard.request[]object
binds[].listeners[].routes[].backends[].policies.ai.promptGuard.request[].regexobject
binds[].listeners[].routes[].backends[].policies.ai.promptGuard.request[].regex.actionstring
binds[].listeners[].routes[].backends[].policies.ai.promptGuard.request[].regex.rules[]object
binds[].listeners[].routes[].backends[].policies.ai.promptGuard.request[].regex.rules[].builtinstring
binds[].listeners[].routes[].backends[].policies.ai.promptGuard.request[].regex.rules[].patternstring
binds[].listeners[].routes[].backends[].policies.ai.promptGuard.request[].webhookobject
binds[].listeners[].routes[].backends[].policies.ai.promptGuard.request[].webhook.targetobjectExactly one of service, host, or backend may be set.
binds[].listeners[].routes[].backends[].policies.ai.promptGuard.request[].webhook.target.serviceobject
binds[].listeners[].routes[].backends[].policies.ai.promptGuard.request[].webhook.target.service.nameobject
binds[].listeners[].routes[].backends[].policies.ai.promptGuard.request[].webhook.target.service.name.namespacestring
binds[].listeners[].routes[].backends[].policies.ai.promptGuard.request[].webhook.target.service.name.hostnamestring
binds[].listeners[].routes[].backends[].policies.ai.promptGuard.request[].webhook.target.service.portinteger
binds[].listeners[].routes[].backends[].policies.ai.promptGuard.request[].webhook.target.hoststringHostname or IP address
binds[].listeners[].routes[].backends[].policies.ai.promptGuard.request[].webhook.target.backendstringExplicit backend reference. Backend must be defined in the top level backends list
binds[].listeners[].routes[].backends[].policies.ai.promptGuard.request[].webhook.forwardHeaderMatches[]object
binds[].listeners[].routes[].backends[].policies.ai.promptGuard.request[].webhook.forwardHeaderMatches[].namestring
binds[].listeners[].routes[].backends[].policies.ai.promptGuard.request[].webhook.forwardHeaderMatches[].valueobjectExactly one of exact or regex may be set.
binds[].listeners[].routes[].backends[].policies.ai.promptGuard.request[].webhook.forwardHeaderMatches[].value.exactstring
binds[].listeners[].routes[].backends[].policies.ai.promptGuard.request[].webhook.forwardHeaderMatches[].value.regexstring
binds[].listeners[].routes[].backends[].policies.ai.promptGuard.request[].openAIModerationobject
binds[].listeners[].routes[].backends[].policies.ai.promptGuard.request[].openAIModeration.modelstringModel to use. Defaults to omni-moderation-latest
binds[].listeners[].routes[].backends[].policies.ai.promptGuard.request[].openAIModeration.policiesobject
binds[].listeners[].routes[].backends[].policies.ai.promptGuard.request[].openAIModeration.policies.requestHeaderModifierobjectHeaders to be modified in the request.
binds[].listeners[].routes[].backends[].policies.ai.promptGuard.request[].openAIModeration.policies.requestHeaderModifier.addobject
binds[].listeners[].routes[].backends[].policies.ai.promptGuard.request[].openAIModeration.policies.requestHeaderModifier.setobject
binds[].listeners[].routes[].backends[].policies.ai.promptGuard.request[].openAIModeration.policies.requestHeaderModifier.remove[]string
binds[].listeners[].routes[].backends[].policies.ai.promptGuard.request[].openAIModeration.policies.responseHeaderModifierobjectHeaders to be modified in the response.
binds[].listeners[].routes[].backends[].policies.ai.promptGuard.request[].openAIModeration.policies.responseHeaderModifier.addobject
binds[].listeners[].routes[].backends[].policies.ai.promptGuard.request[].openAIModeration.policies.responseHeaderModifier.setobject
binds[].listeners[].routes[].backends[].policies.ai.promptGuard.request[].openAIModeration.policies.responseHeaderModifier.remove[]string
binds[].listeners[].routes[].backends[].policies.ai.promptGuard.request[].openAIModeration.policies.requestRedirectobjectDirectly respond to the request with a redirect.
binds[].listeners[].routes[].backends[].policies.ai.promptGuard.request[].openAIModeration.policies.requestRedirect.schemestring
binds[].listeners[].routes[].backends[].policies.ai.promptGuard.request[].openAIModeration.policies.requestRedirect.authoritystring
binds[].listeners[].routes[].backends[].policies.ai.promptGuard.request[].openAIModeration.policies.requestRedirect.authority.fullstring
binds[].listeners[].routes[].backends[].policies.ai.promptGuard.request[].openAIModeration.policies.requestRedirect.authority.hoststring
binds[].listeners[].routes[].backends[].policies.ai.promptGuard.request[].openAIModeration.policies.requestRedirect.authority.portinteger
binds[].listeners[].routes[].backends[].policies.ai.promptGuard.request[].openAIModeration.policies.requestRedirect.pathobject
binds[].listeners[].routes[].backends[].policies.ai.promptGuard.request[].openAIModeration.policies.requestRedirect.path.fullstring
binds[].listeners[].routes[].backends[].policies.ai.promptGuard.request[].openAIModeration.policies.requestRedirect.path.prefixstring
binds[].listeners[].routes[].backends[].policies.ai.promptGuard.request[].openAIModeration.policies.requestRedirect.statusinteger
binds[].listeners[].routes[].backends[].policies.ai.promptGuard.request[].openAIModeration.policies.transformationsobjectModify requests and responses sent to and from the backend.
binds[].listeners[].routes[].backends[].policies.ai.promptGuard.request[].openAIModeration.policies.transformations.requestobject
binds[].listeners[].routes[].backends[].policies.ai.promptGuard.request[].openAIModeration.policies.transformations.request.addobject
binds[].listeners[].routes[].backends[].policies.ai.promptGuard.request[].openAIModeration.policies.transformations.request.setobject
binds[].listeners[].routes[].backends[].policies.ai.promptGuard.request[].openAIModeration.policies.transformations.request.remove[]string
binds[].listeners[].routes[].backends[].policies.ai.promptGuard.request[].openAIModeration.policies.transformations.request.bodystring
binds[].listeners[].routes[].backends[].policies.ai.promptGuard.request[].openAIModeration.policies.transformations.request.metadataobject
binds[].listeners[].routes[].backends[].policies.ai.promptGuard.request[].openAIModeration.policies.transformations.responseobject
binds[].listeners[].routes[].backends[].policies.ai.promptGuard.request[].openAIModeration.policies.transformations.response.addobject
binds[].listeners[].routes[].backends[].policies.ai.promptGuard.request[].openAIModeration.policies.transformations.response.setobject
binds[].listeners[].routes[].backends[].policies.ai.promptGuard.request[].openAIModeration.policies.transformations.response.remove[]string
binds[].listeners[].routes[].backends[].policies.ai.promptGuard.request[].openAIModeration.policies.transformations.response.bodystring
binds[].listeners[].routes[].backends[].policies.ai.promptGuard.request[].openAIModeration.policies.transformations.response.metadataobject
binds[].listeners[].routes[].backends[].policies.ai.promptGuard.request[].openAIModeration.policies.backendTLSobjectSend TLS to the backend.
binds[].listeners[].routes[].backends[].policies.ai.promptGuard.request[].openAIModeration.policies.backendTLS.certstring
binds[].listeners[].routes[].backends[].policies.ai.promptGuard.request[].openAIModeration.policies.backendTLS.keystring
binds[].listeners[].routes[].backends[].policies.ai.promptGuard.request[].openAIModeration.policies.backendTLS.rootstring
binds[].listeners[].routes[].backends[].policies.ai.promptGuard.request[].openAIModeration.policies.backendTLS.hostnamestring
binds[].listeners[].routes[].backends[].policies.ai.promptGuard.request[].openAIModeration.policies.backendTLS.insecureboolean
binds[].listeners[].routes[].backends[].policies.ai.promptGuard.request[].openAIModeration.policies.backendTLS.insecureHostboolean
binds[].listeners[].routes[].backends[].policies.ai.promptGuard.request[].openAIModeration.policies.backendTLS.alpn[]string
binds[].listeners[].routes[].backends[].policies.ai.promptGuard.request[].openAIModeration.policies.backendTLS.subjectAltNames[]string
binds[].listeners[].routes[].backends[].policies.ai.promptGuard.request[].openAIModeration.policies.backendAuthobjectAuthenticate to the backend.
binds[].listeners[].routes[].backends[].policies.ai.promptGuard.request[].openAIModeration.policies.backendAuth.passthroughobject
binds[].listeners[].routes[].backends[].policies.ai.promptGuard.request[].openAIModeration.policies.backendAuth.keyobject
binds[].listeners[].routes[].backends[].policies.ai.promptGuard.request[].openAIModeration.policies.backendAuth.key.filestring
binds[].listeners[].routes[].backends[].policies.ai.promptGuard.request[].openAIModeration.policies.backendAuth.gcpobject
binds[].listeners[].routes[].backends[].policies.ai.promptGuard.request[].openAIModeration.policies.backendAuth.gcp.typestring
binds[].listeners[].routes[].backends[].policies.ai.promptGuard.request[].openAIModeration.policies.backendAuth.gcp.audiencestringAudience for the token. If not set, the destination host will be used.
binds[].listeners[].routes[].backends[].policies.ai.promptGuard.request[].openAIModeration.policies.backendAuth.gcp.typestring
binds[].listeners[].routes[].backends[].policies.ai.promptGuard.request[].openAIModeration.policies.backendAuth.awsobject
binds[].listeners[].routes[].backends[].policies.ai.promptGuard.request[].openAIModeration.policies.backendAuth.aws.accessKeyIdstring
binds[].listeners[].routes[].backends[].policies.ai.promptGuard.request[].openAIModeration.policies.backendAuth.aws.secretAccessKeystring
binds[].listeners[].routes[].backends[].policies.ai.promptGuard.request[].openAIModeration.policies.backendAuth.aws.regionstring
binds[].listeners[].routes[].backends[].policies.ai.promptGuard.request[].openAIModeration.policies.backendAuth.aws.sessionTokenstring
binds[].listeners[].routes[].backends[].policies.ai.promptGuard.request[].openAIModeration.policies.backendAuth.azureobjectExactly one of explicitConfig, developerImplicit, or implicit may be set.
binds[].listeners[].routes[].backends[].policies.ai.promptGuard.request[].openAIModeration.policies.backendAuth.azure.explicitConfigobjectExactly one of clientSecret, managedIdentity, or workloadIdentity may be set.
binds[].listeners[].routes[].backends[].policies.ai.promptGuard.request[].openAIModeration.policies.backendAuth.azure.explicitConfig.clientSecretobject
binds[].listeners[].routes[].backends[].policies.ai.promptGuard.request[].openAIModeration.policies.backendAuth.azure.explicitConfig.clientSecret.tenant_idstring
binds[].listeners[].routes[].backends[].policies.ai.promptGuard.request[].openAIModeration.policies.backendAuth.azure.explicitConfig.clientSecret.client_idstring
binds[].listeners[].routes[].backends[].policies.ai.promptGuard.request[].openAIModeration.policies.backendAuth.azure.explicitConfig.clientSecret.client_secretstring
binds[].listeners[].routes[].backends[].policies.ai.promptGuard.request[].openAIModeration.policies.backendAuth.azure.explicitConfig.managedIdentityobject
binds[].listeners[].routes[].backends[].policies.ai.promptGuard.request[].openAIModeration.policies.backendAuth.azure.explicitConfig.managedIdentity.userAssignedIdentityobject
binds[].listeners[].routes[].backends[].policies.ai.promptGuard.request[].openAIModeration.policies.backendAuth.azure.explicitConfig.managedIdentity.userAssignedIdentity.clientIdstring
binds[].listeners[].routes[].backends[].policies.ai.promptGuard.request[].openAIModeration.policies.backendAuth.azure.explicitConfig.managedIdentity.userAssignedIdentity.objectIdstring
binds[].listeners[].routes[].backends[].policies.ai.promptGuard.request[].openAIModeration.policies.backendAuth.azure.explicitConfig.managedIdentity.userAssignedIdentity.resourceIdstring
binds[].listeners[].routes[].backends[].policies.ai.promptGuard.request[].openAIModeration.policies.backendAuth.azure.explicitConfig.workloadIdentityobject
binds[].listeners[].routes[].backends[].policies.ai.promptGuard.request[].openAIModeration.policies.backendAuth.azure.developerImplicitobject
binds[].listeners[].routes[].backends[].policies.ai.promptGuard.request[].openAIModeration.policies.backendAuth.azure.implicitobject
binds[].listeners[].routes[].backends[].policies.ai.promptGuard.request[].openAIModeration.policies.httpobjectSpecify HTTP settings for the backend
binds[].listeners[].routes[].backends[].policies.ai.promptGuard.request[].openAIModeration.policies.http.versionstring
binds[].listeners[].routes[].backends[].policies.ai.promptGuard.request[].openAIModeration.policies.http.requestTimeoutstring
binds[].listeners[].routes[].backends[].policies.ai.promptGuard.request[].openAIModeration.policies.tcpobjectSpecify TCP settings for the backend
binds[].listeners[].routes[].backends[].policies.ai.promptGuard.request[].openAIModeration.policies.tcp.keepalivesobject
binds[].listeners[].routes[].backends[].policies.ai.promptGuard.request[].openAIModeration.policies.tcp.keepalives.enabledboolean
binds[].listeners[].routes[].backends[].policies.ai.promptGuard.request[].openAIModeration.policies.tcp.keepalives.timestring
binds[].listeners[].routes[].backends[].policies.ai.promptGuard.request[].openAIModeration.policies.tcp.keepalives.intervalstring
binds[].listeners[].routes[].backends[].policies.ai.promptGuard.request[].openAIModeration.policies.tcp.keepalives.retriesinteger
binds[].listeners[].routes[].backends[].policies.ai.promptGuard.request[].openAIModeration.policies.tcp.connectTimeoutobject
binds[].listeners[].routes[].backends[].policies.ai.promptGuard.request[].openAIModeration.policies.tcp.connectTimeout.secsinteger
binds[].listeners[].routes[].backends[].policies.ai.promptGuard.request[].openAIModeration.policies.tcp.connectTimeout.nanosinteger
binds[].listeners[].routes[].backends[].policies.ai.promptGuard.request[].openAIModeration.policies.healthobjectHealth policy for backend outlier detection; evicts on unhealthy responses based on CEL condition and configurable duration.
binds[].listeners[].routes[].backends[].policies.ai.promptGuard.request[].openAIModeration.policies.health.unhealthyExpressionstringCEL expression; true means unhealthy (evict). E.g. response.code >= 500.
When unset, any 5xx or connection failure is treated as unhealthy.
binds[].listeners[].routes[].backends[].policies.ai.promptGuard.request[].openAIModeration.policies.health.evictionobjectLocal/config eviction sub-policy with duration as string; mirrors Eviction.
binds[].listeners[].routes[].backends[].policies.ai.promptGuard.request[].openAIModeration.policies.health.eviction.durationstring
binds[].listeners[].routes[].backends[].policies.ai.promptGuard.request[].openAIModeration.policies.health.eviction.restoreHealthnumber
binds[].listeners[].routes[].backends[].policies.ai.promptGuard.request[].openAIModeration.policies.health.eviction.consecutiveFailuresinteger
binds[].listeners[].routes[].backends[].policies.ai.promptGuard.request[].openAIModeration.policies.health.eviction.healthThresholdnumber
binds[].listeners[].routes[].backends[].policies.ai.promptGuard.request[].openAIModeration.policies.backendTunnelobjectSpecify a tunnel to use when connecting to the backend
binds[].listeners[].routes[].backends[].policies.ai.promptGuard.request[].openAIModeration.policies.backendTunnel.proxyobjectReference to the proxy address
Exactly one of service, host, or backend may be set.
binds[].listeners[].routes[].backends[].policies.ai.promptGuard.request[].openAIModeration.policies.backendTunnel.proxy.serviceobject
binds[].listeners[].routes[].backends[].policies.ai.promptGuard.request[].openAIModeration.policies.backendTunnel.proxy.service.nameobject
binds[].listeners[].routes[].backends[].policies.ai.promptGuard.request[].openAIModeration.policies.backendTunnel.proxy.service.name.namespacestring
binds[].listeners[].routes[].backends[].policies.ai.promptGuard.request[].openAIModeration.policies.backendTunnel.proxy.service.name.hostnamestring
binds[].listeners[].routes[].backends[].policies.ai.promptGuard.request[].openAIModeration.policies.backendTunnel.proxy.service.portinteger
binds[].listeners[].routes[].backends[].policies.ai.promptGuard.request[].openAIModeration.policies.backendTunnel.proxy.hoststringHostname or IP address
binds[].listeners[].routes[].backends[].policies.ai.promptGuard.request[].openAIModeration.policies.backendTunnel.proxy.backendstringExplicit backend reference. Backend must be defined in the top level backends list
binds[].listeners[].routes[].backends[].policies.ai.promptGuard.request[].bedrockGuardrailsobjectConfiguration for AWS Bedrock Guardrails integration.
binds[].listeners[].routes[].backends[].policies.ai.promptGuard.request[].bedrockGuardrails.guardrailIdentifierstringThe unique identifier of the guardrail
binds[].listeners[].routes[].backends[].policies.ai.promptGuard.request[].bedrockGuardrails.guardrailVersionstringThe version of the guardrail
binds[].listeners[].routes[].backends[].policies.ai.promptGuard.request[].bedrockGuardrails.regionstringAWS region where the guardrail is deployed
binds[].listeners[].routes[].backends[].policies.ai.promptGuard.request[].bedrockGuardrails.policiesobjectBackend policies for AWS authentication (optional, defaults to implicit AWS auth)
binds[].listeners[].routes[].backends[].policies.ai.promptGuard.request[].bedrockGuardrails.policies.requestHeaderModifierobjectHeaders to be modified in the request.
binds[].listeners[].routes[].backends[].policies.ai.promptGuard.request[].bedrockGuardrails.policies.requestHeaderModifier.addobject
binds[].listeners[].routes[].backends[].policies.ai.promptGuard.request[].bedrockGuardrails.policies.requestHeaderModifier.setobject
binds[].listeners[].routes[].backends[].policies.ai.promptGuard.request[].bedrockGuardrails.policies.requestHeaderModifier.remove[]string
binds[].listeners[].routes[].backends[].policies.ai.promptGuard.request[].bedrockGuardrails.policies.responseHeaderModifierobjectHeaders to be modified in the response.
binds[].listeners[].routes[].backends[].policies.ai.promptGuard.request[].bedrockGuardrails.policies.responseHeaderModifier.addobject
binds[].listeners[].routes[].backends[].policies.ai.promptGuard.request[].bedrockGuardrails.policies.responseHeaderModifier.setobject
binds[].listeners[].routes[].backends[].policies.ai.promptGuard.request[].bedrockGuardrails.policies.responseHeaderModifier.remove[]string
binds[].listeners[].routes[].backends[].policies.ai.promptGuard.request[].bedrockGuardrails.policies.requestRedirectobjectDirectly respond to the request with a redirect.
binds[].listeners[].routes[].backends[].policies.ai.promptGuard.request[].bedrockGuardrails.policies.requestRedirect.schemestring
binds[].listeners[].routes[].backends[].policies.ai.promptGuard.request[].bedrockGuardrails.policies.requestRedirect.authoritystring
binds[].listeners[].routes[].backends[].policies.ai.promptGuard.request[].bedrockGuardrails.policies.requestRedirect.authority.fullstring
binds[].listeners[].routes[].backends[].policies.ai.promptGuard.request[].bedrockGuardrails.policies.requestRedirect.authority.hoststring
binds[].listeners[].routes[].backends[].policies.ai.promptGuard.request[].bedrockGuardrails.policies.requestRedirect.authority.portinteger
binds[].listeners[].routes[].backends[].policies.ai.promptGuard.request[].bedrockGuardrails.policies.requestRedirect.pathobject
binds[].listeners[].routes[].backends[].policies.ai.promptGuard.request[].bedrockGuardrails.policies.requestRedirect.path.fullstring
binds[].listeners[].routes[].backends[].policies.ai.promptGuard.request[].bedrockGuardrails.policies.requestRedirect.path.prefixstring
binds[].listeners[].routes[].backends[].policies.ai.promptGuard.request[].bedrockGuardrails.policies.requestRedirect.statusinteger
binds[].listeners[].routes[].backends[].policies.ai.promptGuard.request[].bedrockGuardrails.policies.transformationsobjectModify requests and responses sent to and from the backend.
binds[].listeners[].routes[].backends[].policies.ai.promptGuard.request[].bedrockGuardrails.policies.transformations.requestobject
binds[].listeners[].routes[].backends[].policies.ai.promptGuard.request[].bedrockGuardrails.policies.transformations.request.addobject
binds[].listeners[].routes[].backends[].policies.ai.promptGuard.request[].bedrockGuardrails.policies.transformations.request.setobject
binds[].listeners[].routes[].backends[].policies.ai.promptGuard.request[].bedrockGuardrails.policies.transformations.request.remove[]string
binds[].listeners[].routes[].backends[].policies.ai.promptGuard.request[].bedrockGuardrails.policies.transformations.request.bodystring
binds[].listeners[].routes[].backends[].policies.ai.promptGuard.request[].bedrockGuardrails.policies.transformations.request.metadataobject
binds[].listeners[].routes[].backends[].policies.ai.promptGuard.request[].bedrockGuardrails.policies.transformations.responseobject
binds[].listeners[].routes[].backends[].policies.ai.promptGuard.request[].bedrockGuardrails.policies.transformations.response.addobject
binds[].listeners[].routes[].backends[].policies.ai.promptGuard.request[].bedrockGuardrails.policies.transformations.response.setobject
binds[].listeners[].routes[].backends[].policies.ai.promptGuard.request[].bedrockGuardrails.policies.transformations.response.remove[]string
binds[].listeners[].routes[].backends[].policies.ai.promptGuard.request[].bedrockGuardrails.policies.transformations.response.bodystring
binds[].listeners[].routes[].backends[].policies.ai.promptGuard.request[].bedrockGuardrails.policies.transformations.response.metadataobject
binds[].listeners[].routes[].backends[].policies.ai.promptGuard.request[].bedrockGuardrails.policies.backendTLSobjectSend TLS to the backend.
binds[].listeners[].routes[].backends[].policies.ai.promptGuard.request[].bedrockGuardrails.policies.backendTLS.certstring
binds[].listeners[].routes[].backends[].policies.ai.promptGuard.request[].bedrockGuardrails.policies.backendTLS.keystring
binds[].listeners[].routes[].backends[].policies.ai.promptGuard.request[].bedrockGuardrails.policies.backendTLS.rootstring
binds[].listeners[].routes[].backends[].policies.ai.promptGuard.request[].bedrockGuardrails.policies.backendTLS.hostnamestring
binds[].listeners[].routes[].backends[].policies.ai.promptGuard.request[].bedrockGuardrails.policies.backendTLS.insecureboolean
binds[].listeners[].routes[].backends[].policies.ai.promptGuard.request[].bedrockGuardrails.policies.backendTLS.insecureHostboolean
binds[].listeners[].routes[].backends[].policies.ai.promptGuard.request[].bedrockGuardrails.policies.backendTLS.alpn[]string
binds[].listeners[].routes[].backends[].policies.ai.promptGuard.request[].bedrockGuardrails.policies.backendTLS.subjectAltNames[]string
binds[].listeners[].routes[].backends[].policies.ai.promptGuard.request[].bedrockGuardrails.policies.backendAuthobjectAuthenticate to the backend.
binds[].listeners[].routes[].backends[].policies.ai.promptGuard.request[].bedrockGuardrails.policies.backendAuth.passthroughobject
binds[].listeners[].routes[].backends[].policies.ai.promptGuard.request[].bedrockGuardrails.policies.backendAuth.keyobject
binds[].listeners[].routes[].backends[].policies.ai.promptGuard.request[].bedrockGuardrails.policies.backendAuth.key.filestring
binds[].listeners[].routes[].backends[].policies.ai.promptGuard.request[].bedrockGuardrails.policies.backendAuth.gcpobject
binds[].listeners[].routes[].backends[].policies.ai.promptGuard.request[].bedrockGuardrails.policies.backendAuth.gcp.typestring
binds[].listeners[].routes[].backends[].policies.ai.promptGuard.request[].bedrockGuardrails.policies.backendAuth.gcp.audiencestringAudience for the token. If not set, the destination host will be used.
binds[].listeners[].routes[].backends[].policies.ai.promptGuard.request[].bedrockGuardrails.policies.backendAuth.gcp.typestring
binds[].listeners[].routes[].backends[].policies.ai.promptGuard.request[].bedrockGuardrails.policies.backendAuth.awsobject
binds[].listeners[].routes[].backends[].policies.ai.promptGuard.request[].bedrockGuardrails.policies.backendAuth.aws.accessKeyIdstring
binds[].listeners[].routes[].backends[].policies.ai.promptGuard.request[].bedrockGuardrails.policies.backendAuth.aws.secretAccessKeystring
binds[].listeners[].routes[].backends[].policies.ai.promptGuard.request[].bedrockGuardrails.policies.backendAuth.aws.regionstring
binds[].listeners[].routes[].backends[].policies.ai.promptGuard.request[].bedrockGuardrails.policies.backendAuth.aws.sessionTokenstring
binds[].listeners[].routes[].backends[].policies.ai.promptGuard.request[].bedrockGuardrails.policies.backendAuth.azureobjectExactly one of explicitConfig, developerImplicit, or implicit may be set.
binds[].listeners[].routes[].backends[].policies.ai.promptGuard.request[].bedrockGuardrails.policies.backendAuth.azure.explicitConfigobjectExactly one of clientSecret, managedIdentity, or workloadIdentity may be set.
binds[].listeners[].routes[].backends[].policies.ai.promptGuard.request[].bedrockGuardrails.policies.backendAuth.azure.explicitConfig.clientSecretobject
binds[].listeners[].routes[].backends[].policies.ai.promptGuard.request[].bedrockGuardrails.policies.backendAuth.azure.explicitConfig.clientSecret.tenant_idstring
binds[].listeners[].routes[].backends[].policies.ai.promptGuard.request[].bedrockGuardrails.policies.backendAuth.azure.explicitConfig.clientSecret.client_idstring
binds[].listeners[].routes[].backends[].policies.ai.promptGuard.request[].bedrockGuardrails.policies.backendAuth.azure.explicitConfig.clientSecret.client_secretstring
binds[].listeners[].routes[].backends[].policies.ai.promptGuard.request[].bedrockGuardrails.policies.backendAuth.azure.explicitConfig.managedIdentityobject
binds[].listeners[].routes[].backends[].policies.ai.promptGuard.request[].bedrockGuardrails.policies.backendAuth.azure.explicitConfig.managedIdentity.userAssignedIdentityobject
binds[].listeners[].routes[].backends[].policies.ai.promptGuard.request[].bedrockGuardrails.policies.backendAuth.azure.explicitConfig.managedIdentity.userAssignedIdentity.clientIdstring
binds[].listeners[].routes[].backends[].policies.ai.promptGuard.request[].bedrockGuardrails.policies.backendAuth.azure.explicitConfig.managedIdentity.userAssignedIdentity.objectIdstring
binds[].listeners[].routes[].backends[].policies.ai.promptGuard.request[].bedrockGuardrails.policies.backendAuth.azure.explicitConfig.managedIdentity.userAssignedIdentity.resourceIdstring
binds[].listeners[].routes[].backends[].policies.ai.promptGuard.request[].bedrockGuardrails.policies.backendAuth.azure.explicitConfig.workloadIdentityobject
binds[].listeners[].routes[].backends[].policies.ai.promptGuard.request[].bedrockGuardrails.policies.backendAuth.azure.developerImplicitobject
binds[].listeners[].routes[].backends[].policies.ai.promptGuard.request[].bedrockGuardrails.policies.backendAuth.azure.implicitobject
binds[].listeners[].routes[].backends[].policies.ai.promptGuard.request[].bedrockGuardrails.policies.httpobjectSpecify HTTP settings for the backend
binds[].listeners[].routes[].backends[].policies.ai.promptGuard.request[].bedrockGuardrails.policies.http.versionstring
binds[].listeners[].routes[].backends[].policies.ai.promptGuard.request[].bedrockGuardrails.policies.http.requestTimeoutstring
binds[].listeners[].routes[].backends[].policies.ai.promptGuard.request[].bedrockGuardrails.policies.tcpobjectSpecify TCP settings for the backend
binds[].listeners[].routes[].backends[].policies.ai.promptGuard.request[].bedrockGuardrails.policies.tcp.keepalivesobject
binds[].listeners[].routes[].backends[].policies.ai.promptGuard.request[].bedrockGuardrails.policies.tcp.keepalives.enabledboolean
binds[].listeners[].routes[].backends[].policies.ai.promptGuard.request[].bedrockGuardrails.policies.tcp.keepalives.timestring
binds[].listeners[].routes[].backends[].policies.ai.promptGuard.request[].bedrockGuardrails.policies.tcp.keepalives.intervalstring
binds[].listeners[].routes[].backends[].policies.ai.promptGuard.request[].bedrockGuardrails.policies.tcp.keepalives.retriesinteger
binds[].listeners[].routes[].backends[].policies.ai.promptGuard.request[].bedrockGuardrails.policies.tcp.connectTimeoutobject
binds[].listeners[].routes[].backends[].policies.ai.promptGuard.request[].bedrockGuardrails.policies.tcp.connectTimeout.secsinteger
binds[].listeners[].routes[].backends[].policies.ai.promptGuard.request[].bedrockGuardrails.policies.tcp.connectTimeout.nanosinteger
binds[].listeners[].routes[].backends[].policies.ai.promptGuard.request[].bedrockGuardrails.policies.healthobjectHealth policy for backend outlier detection; evicts on unhealthy responses based on CEL condition and configurable duration.
binds[].listeners[].routes[].backends[].policies.ai.promptGuard.request[].bedrockGuardrails.policies.health.unhealthyExpressionstringCEL expression; true means unhealthy (evict). E.g. response.code >= 500.
When unset, any 5xx or connection failure is treated as unhealthy.
binds[].listeners[].routes[].backends[].policies.ai.promptGuard.request[].bedrockGuardrails.policies.health.evictionobjectLocal/config eviction sub-policy with duration as string; mirrors Eviction.
binds[].listeners[].routes[].backends[].policies.ai.promptGuard.request[].bedrockGuardrails.policies.health.eviction.durationstring
binds[].listeners[].routes[].backends[].policies.ai.promptGuard.request[].bedrockGuardrails.policies.health.eviction.restoreHealthnumber
binds[].listeners[].routes[].backends[].policies.ai.promptGuard.request[].bedrockGuardrails.policies.health.eviction.consecutiveFailuresinteger
binds[].listeners[].routes[].backends[].policies.ai.promptGuard.request[].bedrockGuardrails.policies.health.eviction.healthThresholdnumber
binds[].listeners[].routes[].backends[].policies.ai.promptGuard.request[].bedrockGuardrails.policies.backendTunnelobjectSpecify a tunnel to use when connecting to the backend
binds[].listeners[].routes[].backends[].policies.ai.promptGuard.request[].bedrockGuardrails.policies.backendTunnel.proxyobjectReference to the proxy address
Exactly one of service, host, or backend may be set.
binds[].listeners[].routes[].backends[].policies.ai.promptGuard.request[].bedrockGuardrails.policies.backendTunnel.proxy.serviceobject
binds[].listeners[].routes[].backends[].policies.ai.promptGuard.request[].bedrockGuardrails.policies.backendTunnel.proxy.service.nameobject
binds[].listeners[].routes[].backends[].policies.ai.promptGuard.request[].bedrockGuardrails.policies.backendTunnel.proxy.service.name.namespacestring
binds[].listeners[].routes[].backends[].policies.ai.promptGuard.request[].bedrockGuardrails.policies.backendTunnel.proxy.service.name.hostnamestring
binds[].listeners[].routes[].backends[].policies.ai.promptGuard.request[].bedrockGuardrails.policies.backendTunnel.proxy.service.portinteger
binds[].listeners[].routes[].backends[].policies.ai.promptGuard.request[].bedrockGuardrails.policies.backendTunnel.proxy.hoststringHostname or IP address
binds[].listeners[].routes[].backends[].policies.ai.promptGuard.request[].bedrockGuardrails.policies.backendTunnel.proxy.backendstringExplicit backend reference. Backend must be defined in the top level backends list
binds[].listeners[].routes[].backends[].policies.ai.promptGuard.request[].googleModelArmorobjectConfiguration for Google Cloud Model Armor integration.
binds[].listeners[].routes[].backends[].policies.ai.promptGuard.request[].googleModelArmor.templateIdstringThe template ID for the Model Armor configuration
binds[].listeners[].routes[].backends[].policies.ai.promptGuard.request[].googleModelArmor.projectIdstringThe GCP project ID
binds[].listeners[].routes[].backends[].policies.ai.promptGuard.request[].googleModelArmor.locationstringThe GCP region (default: us-central1)
binds[].listeners[].routes[].backends[].policies.ai.promptGuard.request[].googleModelArmor.policiesobjectBackend policies for GCP authentication (optional, defaults to implicit GCP auth)
binds[].listeners[].routes[].backends[].policies.ai.promptGuard.request[].googleModelArmor.policies.requestHeaderModifierobjectHeaders to be modified in the request.
binds[].listeners[].routes[].backends[].policies.ai.promptGuard.request[].googleModelArmor.policies.requestHeaderModifier.addobject
binds[].listeners[].routes[].backends[].policies.ai.promptGuard.request[].googleModelArmor.policies.requestHeaderModifier.setobject
binds[].listeners[].routes[].backends[].policies.ai.promptGuard.request[].googleModelArmor.policies.requestHeaderModifier.remove[]string
binds[].listeners[].routes[].backends[].policies.ai.promptGuard.request[].googleModelArmor.policies.responseHeaderModifierobjectHeaders to be modified in the response.
binds[].listeners[].routes[].backends[].policies.ai.promptGuard.request[].googleModelArmor.policies.responseHeaderModifier.addobject
binds[].listeners[].routes[].backends[].policies.ai.promptGuard.request[].googleModelArmor.policies.responseHeaderModifier.setobject
binds[].listeners[].routes[].backends[].policies.ai.promptGuard.request[].googleModelArmor.policies.responseHeaderModifier.remove[]string
binds[].listeners[].routes[].backends[].policies.ai.promptGuard.request[].googleModelArmor.policies.requestRedirectobjectDirectly respond to the request with a redirect.
binds[].listeners[].routes[].backends[].policies.ai.promptGuard.request[].googleModelArmor.policies.requestRedirect.schemestring
binds[].listeners[].routes[].backends[].policies.ai.promptGuard.request[].googleModelArmor.policies.requestRedirect.authoritystring
binds[].listeners[].routes[].backends[].policies.ai.promptGuard.request[].googleModelArmor.policies.requestRedirect.authority.fullstring
binds[].listeners[].routes[].backends[].policies.ai.promptGuard.request[].googleModelArmor.policies.requestRedirect.authority.hoststring
binds[].listeners[].routes[].backends[].policies.ai.promptGuard.request[].googleModelArmor.policies.requestRedirect.authority.portinteger
binds[].listeners[].routes[].backends[].policies.ai.promptGuard.request[].googleModelArmor.policies.requestRedirect.pathobject
binds[].listeners[].routes[].backends[].policies.ai.promptGuard.request[].googleModelArmor.policies.requestRedirect.path.fullstring
binds[].listeners[].routes[].backends[].policies.ai.promptGuard.request[].googleModelArmor.policies.requestRedirect.path.prefixstring
binds[].listeners[].routes[].backends[].policies.ai.promptGuard.request[].googleModelArmor.policies.requestRedirect.statusinteger
binds[].listeners[].routes[].backends[].policies.ai.promptGuard.request[].googleModelArmor.policies.transformationsobjectModify requests and responses sent to and from the backend.
binds[].listeners[].routes[].backends[].policies.ai.promptGuard.request[].googleModelArmor.policies.transformations.requestobject
binds[].listeners[].routes[].backends[].policies.ai.promptGuard.request[].googleModelArmor.policies.transformations.request.addobject
binds[].listeners[].routes[].backends[].policies.ai.promptGuard.request[].googleModelArmor.policies.transformations.request.setobject
binds[].listeners[].routes[].backends[].policies.ai.promptGuard.request[].googleModelArmor.policies.transformations.request.remove[]string
binds[].listeners[].routes[].backends[].policies.ai.promptGuard.request[].googleModelArmor.policies.transformations.request.bodystring
binds[].listeners[].routes[].backends[].policies.ai.promptGuard.request[].googleModelArmor.policies.transformations.request.metadataobject
binds[].listeners[].routes[].backends[].policies.ai.promptGuard.request[].googleModelArmor.policies.transformations.responseobject
binds[].listeners[].routes[].backends[].policies.ai.promptGuard.request[].googleModelArmor.policies.transformations.response.addobject
binds[].listeners[].routes[].backends[].policies.ai.promptGuard.request[].googleModelArmor.policies.transformations.response.setobject
binds[].listeners[].routes[].backends[].policies.ai.promptGuard.request[].googleModelArmor.policies.transformations.response.remove[]string
binds[].listeners[].routes[].backends[].policies.ai.promptGuard.request[].googleModelArmor.policies.transformations.response.bodystring
binds[].listeners[].routes[].backends[].policies.ai.promptGuard.request[].googleModelArmor.policies.transformations.response.metadataobject
binds[].listeners[].routes[].backends[].policies.ai.promptGuard.request[].googleModelArmor.policies.backendTLSobjectSend TLS to the backend.
binds[].listeners[].routes[].backends[].policies.ai.promptGuard.request[].googleModelArmor.policies.backendTLS.certstring
binds[].listeners[].routes[].backends[].policies.ai.promptGuard.request[].googleModelArmor.policies.backendTLS.keystring
binds[].listeners[].routes[].backends[].policies.ai.promptGuard.request[].googleModelArmor.policies.backendTLS.rootstring
binds[].listeners[].routes[].backends[].policies.ai.promptGuard.request[].googleModelArmor.policies.backendTLS.hostnamestring
binds[].listeners[].routes[].backends[].policies.ai.promptGuard.request[].googleModelArmor.policies.backendTLS.insecureboolean
binds[].listeners[].routes[].backends[].policies.ai.promptGuard.request[].googleModelArmor.policies.backendTLS.insecureHostboolean
binds[].listeners[].routes[].backends[].policies.ai.promptGuard.request[].googleModelArmor.policies.backendTLS.alpn[]string
binds[].listeners[].routes[].backends[].policies.ai.promptGuard.request[].googleModelArmor.policies.backendTLS.subjectAltNames[]string
binds[].listeners[].routes[].backends[].policies.ai.promptGuard.request[].googleModelArmor.policies.backendAuthobjectAuthenticate to the backend.
binds[].listeners[].routes[].backends[].policies.ai.promptGuard.request[].googleModelArmor.policies.backendAuth.passthroughobject
binds[].listeners[].routes[].backends[].policies.ai.promptGuard.request[].googleModelArmor.policies.backendAuth.keyobject
binds[].listeners[].routes[].backends[].policies.ai.promptGuard.request[].googleModelArmor.policies.backendAuth.key.filestring
binds[].listeners[].routes[].backends[].policies.ai.promptGuard.request[].googleModelArmor.policies.backendAuth.gcpobject
binds[].listeners[].routes[].backends[].policies.ai.promptGuard.request[].googleModelArmor.policies.backendAuth.gcp.typestring
binds[].listeners[].routes[].backends[].policies.ai.promptGuard.request[].googleModelArmor.policies.backendAuth.gcp.audiencestringAudience for the token. If not set, the destination host will be used.
binds[].listeners[].routes[].backends[].policies.ai.promptGuard.request[].googleModelArmor.policies.backendAuth.gcp.typestring
binds[].listeners[].routes[].backends[].policies.ai.promptGuard.request[].googleModelArmor.policies.backendAuth.awsobject
binds[].listeners[].routes[].backends[].policies.ai.promptGuard.request[].googleModelArmor.policies.backendAuth.aws.accessKeyIdstring
binds[].listeners[].routes[].backends[].policies.ai.promptGuard.request[].googleModelArmor.policies.backendAuth.aws.secretAccessKeystring
binds[].listeners[].routes[].backends[].policies.ai.promptGuard.request[].googleModelArmor.policies.backendAuth.aws.regionstring
binds[].listeners[].routes[].backends[].policies.ai.promptGuard.request[].googleModelArmor.policies.backendAuth.aws.sessionTokenstring
binds[].listeners[].routes[].backends[].policies.ai.promptGuard.request[].googleModelArmor.policies.backendAuth.azureobjectExactly one of explicitConfig, developerImplicit, or implicit may be set.
binds[].listeners[].routes[].backends[].policies.ai.promptGuard.request[].googleModelArmor.policies.backendAuth.azure.explicitConfigobjectExactly one of clientSecret, managedIdentity, or workloadIdentity may be set.
binds[].listeners[].routes[].backends[].policies.ai.promptGuard.request[].googleModelArmor.policies.backendAuth.azure.explicitConfig.clientSecretobject
binds[].listeners[].routes[].backends[].policies.ai.promptGuard.request[].googleModelArmor.policies.backendAuth.azure.explicitConfig.clientSecret.tenant_idstring
binds[].listeners[].routes[].backends[].policies.ai.promptGuard.request[].googleModelArmor.policies.backendAuth.azure.explicitConfig.clientSecret.client_idstring
binds[].listeners[].routes[].backends[].policies.ai.promptGuard.request[].googleModelArmor.policies.backendAuth.azure.explicitConfig.clientSecret.client_secretstring
binds[].listeners[].routes[].backends[].policies.ai.promptGuard.request[].googleModelArmor.policies.backendAuth.azure.explicitConfig.managedIdentityobject
binds[].listeners[].routes[].backends[].policies.ai.promptGuard.request[].googleModelArmor.policies.backendAuth.azure.explicitConfig.managedIdentity.userAssignedIdentityobject
binds[].listeners[].routes[].backends[].policies.ai.promptGuard.request[].googleModelArmor.policies.backendAuth.azure.explicitConfig.managedIdentity.userAssignedIdentity.clientIdstring
binds[].listeners[].routes[].backends[].policies.ai.promptGuard.request[].googleModelArmor.policies.backendAuth.azure.explicitConfig.managedIdentity.userAssignedIdentity.objectIdstring
binds[].listeners[].routes[].backends[].policies.ai.promptGuard.request[].googleModelArmor.policies.backendAuth.azure.explicitConfig.managedIdentity.userAssignedIdentity.resourceIdstring
binds[].listeners[].routes[].backends[].policies.ai.promptGuard.request[].googleModelArmor.policies.backendAuth.azure.explicitConfig.workloadIdentityobject
binds[].listeners[].routes[].backends[].policies.ai.promptGuard.request[].googleModelArmor.policies.backendAuth.azure.developerImplicitobject
binds[].listeners[].routes[].backends[].policies.ai.promptGuard.request[].googleModelArmor.policies.backendAuth.azure.implicitobject
binds[].listeners[].routes[].backends[].policies.ai.promptGuard.request[].googleModelArmor.policies.httpobjectSpecify HTTP settings for the backend
binds[].listeners[].routes[].backends[].policies.ai.promptGuard.request[].googleModelArmor.policies.http.versionstring
binds[].listeners[].routes[].backends[].policies.ai.promptGuard.request[].googleModelArmor.policies.http.requestTimeoutstring
binds[].listeners[].routes[].backends[].policies.ai.promptGuard.request[].googleModelArmor.policies.tcpobjectSpecify TCP settings for the backend
binds[].listeners[].routes[].backends[].policies.ai.promptGuard.request[].googleModelArmor.policies.tcp.keepalivesobject
binds[].listeners[].routes[].backends[].policies.ai.promptGuard.request[].googleModelArmor.policies.tcp.keepalives.enabledboolean
binds[].listeners[].routes[].backends[].policies.ai.promptGuard.request[].googleModelArmor.policies.tcp.keepalives.timestring
binds[].listeners[].routes[].backends[].policies.ai.promptGuard.request[].googleModelArmor.policies.tcp.keepalives.intervalstring
binds[].listeners[].routes[].backends[].policies.ai.promptGuard.request[].googleModelArmor.policies.tcp.keepalives.retriesinteger
binds[].listeners[].routes[].backends[].policies.ai.promptGuard.request[].googleModelArmor.policies.tcp.connectTimeoutobject
binds[].listeners[].routes[].backends[].policies.ai.promptGuard.request[].googleModelArmor.policies.tcp.connectTimeout.secsinteger
binds[].listeners[].routes[].backends[].policies.ai.promptGuard.request[].googleModelArmor.policies.tcp.connectTimeout.nanosinteger
binds[].listeners[].routes[].backends[].policies.ai.promptGuard.request[].googleModelArmor.policies.healthobjectHealth policy for backend outlier detection; evicts on unhealthy responses based on CEL condition and configurable duration.
binds[].listeners[].routes[].backends[].policies.ai.promptGuard.request[].googleModelArmor.policies.health.unhealthyExpressionstringCEL expression; true means unhealthy (evict). E.g. response.code >= 500.
When unset, any 5xx or connection failure is treated as unhealthy.
binds[].listeners[].routes[].backends[].policies.ai.promptGuard.request[].googleModelArmor.policies.health.evictionobjectLocal/config eviction sub-policy with duration as string; mirrors Eviction.
binds[].listeners[].routes[].backends[].policies.ai.promptGuard.request[].googleModelArmor.policies.health.eviction.durationstring
binds[].listeners[].routes[].backends[].policies.ai.promptGuard.request[].googleModelArmor.policies.health.eviction.restoreHealthnumber
binds[].listeners[].routes[].backends[].policies.ai.promptGuard.request[].googleModelArmor.policies.health.eviction.consecutiveFailuresinteger
binds[].listeners[].routes[].backends[].policies.ai.promptGuard.request[].googleModelArmor.policies.health.eviction.healthThresholdnumber
binds[].listeners[].routes[].backends[].policies.ai.promptGuard.request[].googleModelArmor.policies.backendTunnelobjectSpecify a tunnel to use when connecting to the backend
binds[].listeners[].routes[].backends[].policies.ai.promptGuard.request[].googleModelArmor.policies.backendTunnel.proxyobjectReference to the proxy address
Exactly one of service, host, or backend may be set.
binds[].listeners[].routes[].backends[].policies.ai.promptGuard.request[].googleModelArmor.policies.backendTunnel.proxy.serviceobject
binds[].listeners[].routes[].backends[].policies.ai.promptGuard.request[].googleModelArmor.policies.backendTunnel.proxy.service.nameobject
binds[].listeners[].routes[].backends[].policies.ai.promptGuard.request[].googleModelArmor.policies.backendTunnel.proxy.service.name.namespacestring
binds[].listeners[].routes[].backends[].policies.ai.promptGuard.request[].googleModelArmor.policies.backendTunnel.proxy.service.name.hostnamestring
binds[].listeners[].routes[].backends[].policies.ai.promptGuard.request[].googleModelArmor.policies.backendTunnel.proxy.service.portinteger
binds[].listeners[].routes[].backends[].policies.ai.promptGuard.request[].googleModelArmor.policies.backendTunnel.proxy.hoststringHostname or IP address
binds[].listeners[].routes[].backends[].policies.ai.promptGuard.request[].googleModelArmor.policies.backendTunnel.proxy.backendstringExplicit backend reference. Backend must be defined in the top level backends list
binds[].listeners[].routes[].backends[].policies.ai.promptGuard.request[].rejectionobject
binds[].listeners[].routes[].backends[].policies.ai.promptGuard.request[].rejection.bodyarray
binds[].listeners[].routes[].backends[].policies.ai.promptGuard.request[].rejection.statusinteger
binds[].listeners[].routes[].backends[].policies.ai.promptGuard.request[].rejection.headersobjectOptional headers to add, set, or remove from the rejection response
binds[].listeners[].routes[].backends[].policies.ai.promptGuard.request[].rejection.headers.addobject
binds[].listeners[].routes[].backends[].policies.ai.promptGuard.request[].rejection.headers.setobject
binds[].listeners[].routes[].backends[].policies.ai.promptGuard.request[].rejection.headers.remove[]string
binds[].listeners[].routes[].backends[].policies.ai.promptGuard.response[]object
binds[].listeners[].routes[].backends[].policies.ai.promptGuard.response[].regexobject
binds[].listeners[].routes[].backends[].policies.ai.promptGuard.response[].regex.actionstring
binds[].listeners[].routes[].backends[].policies.ai.promptGuard.response[].regex.rules[]object
binds[].listeners[].routes[].backends[].policies.ai.promptGuard.response[].regex.rules[].builtinstring
binds[].listeners[].routes[].backends[].policies.ai.promptGuard.response[].regex.rules[].patternstring
binds[].listeners[].routes[].backends[].policies.ai.promptGuard.response[].webhookobject
binds[].listeners[].routes[].backends[].policies.ai.promptGuard.response[].webhook.targetobjectExactly one of service, host, or backend may be set.
binds[].listeners[].routes[].backends[].policies.ai.promptGuard.response[].webhook.target.serviceobject
binds[].listeners[].routes[].backends[].policies.ai.promptGuard.response[].webhook.target.service.nameobject
binds[].listeners[].routes[].backends[].policies.ai.promptGuard.response[].webhook.target.service.name.namespacestring
binds[].listeners[].routes[].backends[].policies.ai.promptGuard.response[].webhook.target.service.name.hostnamestring
binds[].listeners[].routes[].backends[].policies.ai.promptGuard.response[].webhook.target.service.portinteger
binds[].listeners[].routes[].backends[].policies.ai.promptGuard.response[].webhook.target.hoststringHostname or IP address
binds[].listeners[].routes[].backends[].policies.ai.promptGuard.response[].webhook.target.backendstringExplicit backend reference. Backend must be defined in the top level backends list
binds[].listeners[].routes[].backends[].policies.ai.promptGuard.response[].webhook.forwardHeaderMatches[]object
binds[].listeners[].routes[].backends[].policies.ai.promptGuard.response[].webhook.forwardHeaderMatches[].namestring
binds[].listeners[].routes[].backends[].policies.ai.promptGuard.response[].webhook.forwardHeaderMatches[].valueobjectExactly one of exact or regex may be set.
binds[].listeners[].routes[].backends[].policies.ai.promptGuard.response[].webhook.forwardHeaderMatches[].value.exactstring
binds[].listeners[].routes[].backends[].policies.ai.promptGuard.response[].webhook.forwardHeaderMatches[].value.regexstring
binds[].listeners[].routes[].backends[].policies.ai.promptGuard.response[].bedrockGuardrailsobjectConfiguration for AWS Bedrock Guardrails integration.
binds[].listeners[].routes[].backends[].policies.ai.promptGuard.response[].bedrockGuardrails.guardrailIdentifierstringThe unique identifier of the guardrail
binds[].listeners[].routes[].backends[].policies.ai.promptGuard.response[].bedrockGuardrails.guardrailVersionstringThe version of the guardrail
binds[].listeners[].routes[].backends[].policies.ai.promptGuard.response[].bedrockGuardrails.regionstringAWS region where the guardrail is deployed
binds[].listeners[].routes[].backends[].policies.ai.promptGuard.response[].bedrockGuardrails.policiesobjectBackend policies for AWS authentication (optional, defaults to implicit AWS auth)
binds[].listeners[].routes[].backends[].policies.ai.promptGuard.response[].bedrockGuardrails.policies.requestHeaderModifierobjectHeaders to be modified in the request.
binds[].listeners[].routes[].backends[].policies.ai.promptGuard.response[].bedrockGuardrails.policies.requestHeaderModifier.addobject
binds[].listeners[].routes[].backends[].policies.ai.promptGuard.response[].bedrockGuardrails.policies.requestHeaderModifier.setobject
binds[].listeners[].routes[].backends[].policies.ai.promptGuard.response[].bedrockGuardrails.policies.requestHeaderModifier.remove[]string
binds[].listeners[].routes[].backends[].policies.ai.promptGuard.response[].bedrockGuardrails.policies.responseHeaderModifierobjectHeaders to be modified in the response.
binds[].listeners[].routes[].backends[].policies.ai.promptGuard.response[].bedrockGuardrails.policies.responseHeaderModifier.addobject
binds[].listeners[].routes[].backends[].policies.ai.promptGuard.response[].bedrockGuardrails.policies.responseHeaderModifier.setobject
binds[].listeners[].routes[].backends[].policies.ai.promptGuard.response[].bedrockGuardrails.policies.responseHeaderModifier.remove[]string
binds[].listeners[].routes[].backends[].policies.ai.promptGuard.response[].bedrockGuardrails.policies.requestRedirectobjectDirectly respond to the request with a redirect.
binds[].listeners[].routes[].backends[].policies.ai.promptGuard.response[].bedrockGuardrails.policies.requestRedirect.schemestring
binds[].listeners[].routes[].backends[].policies.ai.promptGuard.response[].bedrockGuardrails.policies.requestRedirect.authoritystring
binds[].listeners[].routes[].backends[].policies.ai.promptGuard.response[].bedrockGuardrails.policies.requestRedirect.authority.fullstring
binds[].listeners[].routes[].backends[].policies.ai.promptGuard.response[].bedrockGuardrails.policies.requestRedirect.authority.hoststring
binds[].listeners[].routes[].backends[].policies.ai.promptGuard.response[].bedrockGuardrails.policies.requestRedirect.authority.portinteger
binds[].listeners[].routes[].backends[].policies.ai.promptGuard.response[].bedrockGuardrails.policies.requestRedirect.pathobject
binds[].listeners[].routes[].backends[].policies.ai.promptGuard.response[].bedrockGuardrails.policies.requestRedirect.path.fullstring
binds[].listeners[].routes[].backends[].policies.ai.promptGuard.response[].bedrockGuardrails.policies.requestRedirect.path.prefixstring
binds[].listeners[].routes[].backends[].policies.ai.promptGuard.response[].bedrockGuardrails.policies.requestRedirect.statusinteger
binds[].listeners[].routes[].backends[].policies.ai.promptGuard.response[].bedrockGuardrails.policies.transformationsobjectModify requests and responses sent to and from the backend.
binds[].listeners[].routes[].backends[].policies.ai.promptGuard.response[].bedrockGuardrails.policies.transformations.requestobject
binds[].listeners[].routes[].backends[].policies.ai.promptGuard.response[].bedrockGuardrails.policies.transformations.request.addobject
binds[].listeners[].routes[].backends[].policies.ai.promptGuard.response[].bedrockGuardrails.policies.transformations.request.setobject
binds[].listeners[].routes[].backends[].policies.ai.promptGuard.response[].bedrockGuardrails.policies.transformations.request.remove[]string
binds[].listeners[].routes[].backends[].policies.ai.promptGuard.response[].bedrockGuardrails.policies.transformations.request.bodystring
binds[].listeners[].routes[].backends[].policies.ai.promptGuard.response[].bedrockGuardrails.policies.transformations.request.metadataobject
binds[].listeners[].routes[].backends[].policies.ai.promptGuard.response[].bedrockGuardrails.policies.transformations.responseobject
binds[].listeners[].routes[].backends[].policies.ai.promptGuard.response[].bedrockGuardrails.policies.transformations.response.addobject
binds[].listeners[].routes[].backends[].policies.ai.promptGuard.response[].bedrockGuardrails.policies.transformations.response.setobject
binds[].listeners[].routes[].backends[].policies.ai.promptGuard.response[].bedrockGuardrails.policies.transformations.response.remove[]string
binds[].listeners[].routes[].backends[].policies.ai.promptGuard.response[].bedrockGuardrails.policies.transformations.response.bodystring
binds[].listeners[].routes[].backends[].policies.ai.promptGuard.response[].bedrockGuardrails.policies.transformations.response.metadataobject
binds[].listeners[].routes[].backends[].policies.ai.promptGuard.response[].bedrockGuardrails.policies.backendTLSobjectSend TLS to the backend.
binds[].listeners[].routes[].backends[].policies.ai.promptGuard.response[].bedrockGuardrails.policies.backendTLS.certstring
binds[].listeners[].routes[].backends[].policies.ai.promptGuard.response[].bedrockGuardrails.policies.backendTLS.keystring
binds[].listeners[].routes[].backends[].policies.ai.promptGuard.response[].bedrockGuardrails.policies.backendTLS.rootstring
binds[].listeners[].routes[].backends[].policies.ai.promptGuard.response[].bedrockGuardrails.policies.backendTLS.hostnamestring
binds[].listeners[].routes[].backends[].policies.ai.promptGuard.response[].bedrockGuardrails.policies.backendTLS.insecureboolean
binds[].listeners[].routes[].backends[].policies.ai.promptGuard.response[].bedrockGuardrails.policies.backendTLS.insecureHostboolean
binds[].listeners[].routes[].backends[].policies.ai.promptGuard.response[].bedrockGuardrails.policies.backendTLS.alpn[]string
binds[].listeners[].routes[].backends[].policies.ai.promptGuard.response[].bedrockGuardrails.policies.backendTLS.subjectAltNames[]string
binds[].listeners[].routes[].backends[].policies.ai.promptGuard.response[].bedrockGuardrails.policies.backendAuthobjectAuthenticate to the backend.
binds[].listeners[].routes[].backends[].policies.ai.promptGuard.response[].bedrockGuardrails.policies.backendAuth.passthroughobject
binds[].listeners[].routes[].backends[].policies.ai.promptGuard.response[].bedrockGuardrails.policies.backendAuth.keyobject
binds[].listeners[].routes[].backends[].policies.ai.promptGuard.response[].bedrockGuardrails.policies.backendAuth.key.filestring
binds[].listeners[].routes[].backends[].policies.ai.promptGuard.response[].bedrockGuardrails.policies.backendAuth.gcpobject
binds[].listeners[].routes[].backends[].policies.ai.promptGuard.response[].bedrockGuardrails.policies.backendAuth.gcp.typestring
binds[].listeners[].routes[].backends[].policies.ai.promptGuard.response[].bedrockGuardrails.policies.backendAuth.gcp.audiencestringAudience for the token. If not set, the destination host will be used.
binds[].listeners[].routes[].backends[].policies.ai.promptGuard.response[].bedrockGuardrails.policies.backendAuth.gcp.typestring
binds[].listeners[].routes[].backends[].policies.ai.promptGuard.response[].bedrockGuardrails.policies.backendAuth.awsobject
binds[].listeners[].routes[].backends[].policies.ai.promptGuard.response[].bedrockGuardrails.policies.backendAuth.aws.accessKeyIdstring
binds[].listeners[].routes[].backends[].policies.ai.promptGuard.response[].bedrockGuardrails.policies.backendAuth.aws.secretAccessKeystring
binds[].listeners[].routes[].backends[].policies.ai.promptGuard.response[].bedrockGuardrails.policies.backendAuth.aws.regionstring
binds[].listeners[].routes[].backends[].policies.ai.promptGuard.response[].bedrockGuardrails.policies.backendAuth.aws.sessionTokenstring
binds[].listeners[].routes[].backends[].policies.ai.promptGuard.response[].bedrockGuardrails.policies.backendAuth.azureobjectExactly one of explicitConfig, developerImplicit, or implicit may be set.
binds[].listeners[].routes[].backends[].policies.ai.promptGuard.response[].bedrockGuardrails.policies.backendAuth.azure.explicitConfigobjectExactly one of clientSecret, managedIdentity, or workloadIdentity may be set.
binds[].listeners[].routes[].backends[].policies.ai.promptGuard.response[].bedrockGuardrails.policies.backendAuth.azure.explicitConfig.clientSecretobject
binds[].listeners[].routes[].backends[].policies.ai.promptGuard.response[].bedrockGuardrails.policies.backendAuth.azure.explicitConfig.clientSecret.tenant_idstring
binds[].listeners[].routes[].backends[].policies.ai.promptGuard.response[].bedrockGuardrails.policies.backendAuth.azure.explicitConfig.clientSecret.client_idstring
binds[].listeners[].routes[].backends[].policies.ai.promptGuard.response[].bedrockGuardrails.policies.backendAuth.azure.explicitConfig.clientSecret.client_secretstring
binds[].listeners[].routes[].backends[].policies.ai.promptGuard.response[].bedrockGuardrails.policies.backendAuth.azure.explicitConfig.managedIdentityobject
binds[].listeners[].routes[].backends[].policies.ai.promptGuard.response[].bedrockGuardrails.policies.backendAuth.azure.explicitConfig.managedIdentity.userAssignedIdentityobject
binds[].listeners[].routes[].backends[].policies.ai.promptGuard.response[].bedrockGuardrails.policies.backendAuth.azure.explicitConfig.managedIdentity.userAssignedIdentity.clientIdstring
binds[].listeners[].routes[].backends[].policies.ai.promptGuard.response[].bedrockGuardrails.policies.backendAuth.azure.explicitConfig.managedIdentity.userAssignedIdentity.objectIdstring
binds[].listeners[].routes[].backends[].policies.ai.promptGuard.response[].bedrockGuardrails.policies.backendAuth.azure.explicitConfig.managedIdentity.userAssignedIdentity.resourceIdstring
binds[].listeners[].routes[].backends[].policies.ai.promptGuard.response[].bedrockGuardrails.policies.backendAuth.azure.explicitConfig.workloadIdentityobject
binds[].listeners[].routes[].backends[].policies.ai.promptGuard.response[].bedrockGuardrails.policies.backendAuth.azure.developerImplicitobject
binds[].listeners[].routes[].backends[].policies.ai.promptGuard.response[].bedrockGuardrails.policies.backendAuth.azure.implicitobject
binds[].listeners[].routes[].backends[].policies.ai.promptGuard.response[].bedrockGuardrails.policies.httpobjectSpecify HTTP settings for the backend
binds[].listeners[].routes[].backends[].policies.ai.promptGuard.response[].bedrockGuardrails.policies.http.versionstring
binds[].listeners[].routes[].backends[].policies.ai.promptGuard.response[].bedrockGuardrails.policies.http.requestTimeoutstring
binds[].listeners[].routes[].backends[].policies.ai.promptGuard.response[].bedrockGuardrails.policies.tcpobjectSpecify TCP settings for the backend
binds[].listeners[].routes[].backends[].policies.ai.promptGuard.response[].bedrockGuardrails.policies.tcp.keepalivesobject
binds[].listeners[].routes[].backends[].policies.ai.promptGuard.response[].bedrockGuardrails.policies.tcp.keepalives.enabledboolean
binds[].listeners[].routes[].backends[].policies.ai.promptGuard.response[].bedrockGuardrails.policies.tcp.keepalives.timestring
binds[].listeners[].routes[].backends[].policies.ai.promptGuard.response[].bedrockGuardrails.policies.tcp.keepalives.intervalstring
binds[].listeners[].routes[].backends[].policies.ai.promptGuard.response[].bedrockGuardrails.policies.tcp.keepalives.retriesinteger
binds[].listeners[].routes[].backends[].policies.ai.promptGuard.response[].bedrockGuardrails.policies.tcp.connectTimeoutobject
binds[].listeners[].routes[].backends[].policies.ai.promptGuard.response[].bedrockGuardrails.policies.tcp.connectTimeout.secsinteger
binds[].listeners[].routes[].backends[].policies.ai.promptGuard.response[].bedrockGuardrails.policies.tcp.connectTimeout.nanosinteger
binds[].listeners[].routes[].backends[].policies.ai.promptGuard.response[].bedrockGuardrails.policies.healthobjectHealth policy for backend outlier detection; evicts on unhealthy responses based on CEL condition and configurable duration.
binds[].listeners[].routes[].backends[].policies.ai.promptGuard.response[].bedrockGuardrails.policies.health.unhealthyExpressionstringCEL expression; true means unhealthy (evict). E.g. response.code >= 500.
When unset, any 5xx or connection failure is treated as unhealthy.
binds[].listeners[].routes[].backends[].policies.ai.promptGuard.response[].bedrockGuardrails.policies.health.evictionobjectLocal/config eviction sub-policy with duration as string; mirrors Eviction.
binds[].listeners[].routes[].backends[].policies.ai.promptGuard.response[].bedrockGuardrails.policies.health.eviction.durationstring
binds[].listeners[].routes[].backends[].policies.ai.promptGuard.response[].bedrockGuardrails.policies.health.eviction.restoreHealthnumber
binds[].listeners[].routes[].backends[].policies.ai.promptGuard.response[].bedrockGuardrails.policies.health.eviction.consecutiveFailuresinteger
binds[].listeners[].routes[].backends[].policies.ai.promptGuard.response[].bedrockGuardrails.policies.health.eviction.healthThresholdnumber
binds[].listeners[].routes[].backends[].policies.ai.promptGuard.response[].bedrockGuardrails.policies.backendTunnelobjectSpecify a tunnel to use when connecting to the backend
binds[].listeners[].routes[].backends[].policies.ai.promptGuard.response[].bedrockGuardrails.policies.backendTunnel.proxyobjectReference to the proxy address
Exactly one of service, host, or backend may be set.
binds[].listeners[].routes[].backends[].policies.ai.promptGuard.response[].bedrockGuardrails.policies.backendTunnel.proxy.serviceobject
binds[].listeners[].routes[].backends[].policies.ai.promptGuard.response[].bedrockGuardrails.policies.backendTunnel.proxy.service.nameobject
binds[].listeners[].routes[].backends[].policies.ai.promptGuard.response[].bedrockGuardrails.policies.backendTunnel.proxy.service.name.namespacestring
binds[].listeners[].routes[].backends[].policies.ai.promptGuard.response[].bedrockGuardrails.policies.backendTunnel.proxy.service.name.hostnamestring
binds[].listeners[].routes[].backends[].policies.ai.promptGuard.response[].bedrockGuardrails.policies.backendTunnel.proxy.service.portinteger
binds[].listeners[].routes[].backends[].policies.ai.promptGuard.response[].bedrockGuardrails.policies.backendTunnel.proxy.hoststringHostname or IP address
binds[].listeners[].routes[].backends[].policies.ai.promptGuard.response[].bedrockGuardrails.policies.backendTunnel.proxy.backendstringExplicit backend reference. Backend must be defined in the top level backends list
binds[].listeners[].routes[].backends[].policies.ai.promptGuard.response[].googleModelArmorobjectConfiguration for Google Cloud Model Armor integration.
binds[].listeners[].routes[].backends[].policies.ai.promptGuard.response[].googleModelArmor.templateIdstringThe template ID for the Model Armor configuration
binds[].listeners[].routes[].backends[].policies.ai.promptGuard.response[].googleModelArmor.projectIdstringThe GCP project ID
binds[].listeners[].routes[].backends[].policies.ai.promptGuard.response[].googleModelArmor.locationstringThe GCP region (default: us-central1)
binds[].listeners[].routes[].backends[].policies.ai.promptGuard.response[].googleModelArmor.policiesobjectBackend policies for GCP authentication (optional, defaults to implicit GCP auth)
binds[].listeners[].routes[].backends[].policies.ai.promptGuard.response[].googleModelArmor.policies.requestHeaderModifierobjectHeaders to be modified in the request.
binds[].listeners[].routes[].backends[].policies.ai.promptGuard.response[].googleModelArmor.policies.requestHeaderModifier.addobject
binds[].listeners[].routes[].backends[].policies.ai.promptGuard.response[].googleModelArmor.policies.requestHeaderModifier.setobject
binds[].listeners[].routes[].backends[].policies.ai.promptGuard.response[].googleModelArmor.policies.requestHeaderModifier.remove[]string
binds[].listeners[].routes[].backends[].policies.ai.promptGuard.response[].googleModelArmor.policies.responseHeaderModifierobjectHeaders to be modified in the response.
binds[].listeners[].routes[].backends[].policies.ai.promptGuard.response[].googleModelArmor.policies.responseHeaderModifier.addobject
binds[].listeners[].routes[].backends[].policies.ai.promptGuard.response[].googleModelArmor.policies.responseHeaderModifier.setobject
binds[].listeners[].routes[].backends[].policies.ai.promptGuard.response[].googleModelArmor.policies.responseHeaderModifier.remove[]string
binds[].listeners[].routes[].backends[].policies.ai.promptGuard.response[].googleModelArmor.policies.requestRedirectobjectDirectly respond to the request with a redirect.
binds[].listeners[].routes[].backends[].policies.ai.promptGuard.response[].googleModelArmor.policies.requestRedirect.schemestring
binds[].listeners[].routes[].backends[].policies.ai.promptGuard.response[].googleModelArmor.policies.requestRedirect.authoritystring
binds[].listeners[].routes[].backends[].policies.ai.promptGuard.response[].googleModelArmor.policies.requestRedirect.authority.fullstring
binds[].listeners[].routes[].backends[].policies.ai.promptGuard.response[].googleModelArmor.policies.requestRedirect.authority.hoststring
binds[].listeners[].routes[].backends[].policies.ai.promptGuard.response[].googleModelArmor.policies.requestRedirect.authority.portinteger
binds[].listeners[].routes[].backends[].policies.ai.promptGuard.response[].googleModelArmor.policies.requestRedirect.pathobject
binds[].listeners[].routes[].backends[].policies.ai.promptGuard.response[].googleModelArmor.policies.requestRedirect.path.fullstring
binds[].listeners[].routes[].backends[].policies.ai.promptGuard.response[].googleModelArmor.policies.requestRedirect.path.prefixstring
binds[].listeners[].routes[].backends[].policies.ai.promptGuard.response[].googleModelArmor.policies.requestRedirect.statusinteger
binds[].listeners[].routes[].backends[].policies.ai.promptGuard.response[].googleModelArmor.policies.transformationsobjectModify requests and responses sent to and from the backend.
binds[].listeners[].routes[].backends[].policies.ai.promptGuard.response[].googleModelArmor.policies.transformations.requestobject
binds[].listeners[].routes[].backends[].policies.ai.promptGuard.response[].googleModelArmor.policies.transformations.request.addobject
binds[].listeners[].routes[].backends[].policies.ai.promptGuard.response[].googleModelArmor.policies.transformations.request.setobject
binds[].listeners[].routes[].backends[].policies.ai.promptGuard.response[].googleModelArmor.policies.transformations.request.remove[]string
binds[].listeners[].routes[].backends[].policies.ai.promptGuard.response[].googleModelArmor.policies.transformations.request.bodystring
binds[].listeners[].routes[].backends[].policies.ai.promptGuard.response[].googleModelArmor.policies.transformations.request.metadataobject
binds[].listeners[].routes[].backends[].policies.ai.promptGuard.response[].googleModelArmor.policies.transformations.responseobject
binds[].listeners[].routes[].backends[].policies.ai.promptGuard.response[].googleModelArmor.policies.transformations.response.addobject
binds[].listeners[].routes[].backends[].policies.ai.promptGuard.response[].googleModelArmor.policies.transformations.response.setobject
binds[].listeners[].routes[].backends[].policies.ai.promptGuard.response[].googleModelArmor.policies.transformations.response.remove[]string
binds[].listeners[].routes[].backends[].policies.ai.promptGuard.response[].googleModelArmor.policies.transformations.response.bodystring
binds[].listeners[].routes[].backends[].policies.ai.promptGuard.response[].googleModelArmor.policies.transformations.response.metadataobject
binds[].listeners[].routes[].backends[].policies.ai.promptGuard.response[].googleModelArmor.policies.backendTLSobjectSend TLS to the backend.
binds[].listeners[].routes[].backends[].policies.ai.promptGuard.response[].googleModelArmor.policies.backendTLS.certstring
binds[].listeners[].routes[].backends[].policies.ai.promptGuard.response[].googleModelArmor.policies.backendTLS.keystring
binds[].listeners[].routes[].backends[].policies.ai.promptGuard.response[].googleModelArmor.policies.backendTLS.rootstring
binds[].listeners[].routes[].backends[].policies.ai.promptGuard.response[].googleModelArmor.policies.backendTLS.hostnamestring
binds[].listeners[].routes[].backends[].policies.ai.promptGuard.response[].googleModelArmor.policies.backendTLS.insecureboolean
binds[].listeners[].routes[].backends[].policies.ai.promptGuard.response[].googleModelArmor.policies.backendTLS.insecureHostboolean
binds[].listeners[].routes[].backends[].policies.ai.promptGuard.response[].googleModelArmor.policies.backendTLS.alpn[]string
binds[].listeners[].routes[].backends[].policies.ai.promptGuard.response[].googleModelArmor.policies.backendTLS.subjectAltNames[]string
binds[].listeners[].routes[].backends[].policies.ai.promptGuard.response[].googleModelArmor.policies.backendAuthobjectAuthenticate to the backend.
binds[].listeners[].routes[].backends[].policies.ai.promptGuard.response[].googleModelArmor.policies.backendAuth.passthroughobject
binds[].listeners[].routes[].backends[].policies.ai.promptGuard.response[].googleModelArmor.policies.backendAuth.keyobject
binds[].listeners[].routes[].backends[].policies.ai.promptGuard.response[].googleModelArmor.policies.backendAuth.key.filestring
binds[].listeners[].routes[].backends[].policies.ai.promptGuard.response[].googleModelArmor.policies.backendAuth.gcpobject
binds[].listeners[].routes[].backends[].policies.ai.promptGuard.response[].googleModelArmor.policies.backendAuth.gcp.typestring
binds[].listeners[].routes[].backends[].policies.ai.promptGuard.response[].googleModelArmor.policies.backendAuth.gcp.audiencestringAudience for the token. If not set, the destination host will be used.
binds[].listeners[].routes[].backends[].policies.ai.promptGuard.response[].googleModelArmor.policies.backendAuth.gcp.typestring
binds[].listeners[].routes[].backends[].policies.ai.promptGuard.response[].googleModelArmor.policies.backendAuth.awsobject
binds[].listeners[].routes[].backends[].policies.ai.promptGuard.response[].googleModelArmor.policies.backendAuth.aws.accessKeyIdstring
binds[].listeners[].routes[].backends[].policies.ai.promptGuard.response[].googleModelArmor.policies.backendAuth.aws.secretAccessKeystring
binds[].listeners[].routes[].backends[].policies.ai.promptGuard.response[].googleModelArmor.policies.backendAuth.aws.regionstring
binds[].listeners[].routes[].backends[].policies.ai.promptGuard.response[].googleModelArmor.policies.backendAuth.aws.sessionTokenstring
binds[].listeners[].routes[].backends[].policies.ai.promptGuard.response[].googleModelArmor.policies.backendAuth.azureobjectExactly one of explicitConfig, developerImplicit, or implicit may be set.
binds[].listeners[].routes[].backends[].policies.ai.promptGuard.response[].googleModelArmor.policies.backendAuth.azure.explicitConfigobjectExactly one of clientSecret, managedIdentity, or workloadIdentity may be set.
binds[].listeners[].routes[].backends[].policies.ai.promptGuard.response[].googleModelArmor.policies.backendAuth.azure.explicitConfig.clientSecretobject
binds[].listeners[].routes[].backends[].policies.ai.promptGuard.response[].googleModelArmor.policies.backendAuth.azure.explicitConfig.clientSecret.tenant_idstring
binds[].listeners[].routes[].backends[].policies.ai.promptGuard.response[].googleModelArmor.policies.backendAuth.azure.explicitConfig.clientSecret.client_idstring
binds[].listeners[].routes[].backends[].policies.ai.promptGuard.response[].googleModelArmor.policies.backendAuth.azure.explicitConfig.clientSecret.client_secretstring
binds[].listeners[].routes[].backends[].policies.ai.promptGuard.response[].googleModelArmor.policies.backendAuth.azure.explicitConfig.managedIdentityobject
binds[].listeners[].routes[].backends[].policies.ai.promptGuard.response[].googleModelArmor.policies.backendAuth.azure.explicitConfig.managedIdentity.userAssignedIdentityobject
binds[].listeners[].routes[].backends[].policies.ai.promptGuard.response[].googleModelArmor.policies.backendAuth.azure.explicitConfig.managedIdentity.userAssignedIdentity.clientIdstring
binds[].listeners[].routes[].backends[].policies.ai.promptGuard.response[].googleModelArmor.policies.backendAuth.azure.explicitConfig.managedIdentity.userAssignedIdentity.objectIdstring
binds[].listeners[].routes[].backends[].policies.ai.promptGuard.response[].googleModelArmor.policies.backendAuth.azure.explicitConfig.managedIdentity.userAssignedIdentity.resourceIdstring
binds[].listeners[].routes[].backends[].policies.ai.promptGuard.response[].googleModelArmor.policies.backendAuth.azure.explicitConfig.workloadIdentityobject
binds[].listeners[].routes[].backends[].policies.ai.promptGuard.response[].googleModelArmor.policies.backendAuth.azure.developerImplicitobject
binds[].listeners[].routes[].backends[].policies.ai.promptGuard.response[].googleModelArmor.policies.backendAuth.azure.implicitobject
binds[].listeners[].routes[].backends[].policies.ai.promptGuard.response[].googleModelArmor.policies.httpobjectSpecify HTTP settings for the backend
binds[].listeners[].routes[].backends[].policies.ai.promptGuard.response[].googleModelArmor.policies.http.versionstring
binds[].listeners[].routes[].backends[].policies.ai.promptGuard.response[].googleModelArmor.policies.http.requestTimeoutstring
binds[].listeners[].routes[].backends[].policies.ai.promptGuard.response[].googleModelArmor.policies.tcpobjectSpecify TCP settings for the backend
binds[].listeners[].routes[].backends[].policies.ai.promptGuard.response[].googleModelArmor.policies.tcp.keepalivesobject
binds[].listeners[].routes[].backends[].policies.ai.promptGuard.response[].googleModelArmor.policies.tcp.keepalives.enabledboolean
binds[].listeners[].routes[].backends[].policies.ai.promptGuard.response[].googleModelArmor.policies.tcp.keepalives.timestring
binds[].listeners[].routes[].backends[].policies.ai.promptGuard.response[].googleModelArmor.policies.tcp.keepalives.intervalstring
binds[].listeners[].routes[].backends[].policies.ai.promptGuard.response[].googleModelArmor.policies.tcp.keepalives.retriesinteger
binds[].listeners[].routes[].backends[].policies.ai.promptGuard.response[].googleModelArmor.policies.tcp.connectTimeoutobject
binds[].listeners[].routes[].backends[].policies.ai.promptGuard.response[].googleModelArmor.policies.tcp.connectTimeout.secsinteger
binds[].listeners[].routes[].backends[].policies.ai.promptGuard.response[].googleModelArmor.policies.tcp.connectTimeout.nanosinteger
binds[].listeners[].routes[].backends[].policies.ai.promptGuard.response[].googleModelArmor.policies.healthobjectHealth policy for backend outlier detection; evicts on unhealthy responses based on CEL condition and configurable duration.
binds[].listeners[].routes[].backends[].policies.ai.promptGuard.response[].googleModelArmor.policies.health.unhealthyExpressionstringCEL expression; true means unhealthy (evict). E.g. response.code >= 500.
When unset, any 5xx or connection failure is treated as unhealthy.
binds[].listeners[].routes[].backends[].policies.ai.promptGuard.response[].googleModelArmor.policies.health.evictionobjectLocal/config eviction sub-policy with duration as string; mirrors Eviction.
binds[].listeners[].routes[].backends[].policies.ai.promptGuard.response[].googleModelArmor.policies.health.eviction.durationstring
binds[].listeners[].routes[].backends[].policies.ai.promptGuard.response[].googleModelArmor.policies.health.eviction.restoreHealthnumber
binds[].listeners[].routes[].backends[].policies.ai.promptGuard.response[].googleModelArmor.policies.health.eviction.consecutiveFailuresinteger
binds[].listeners[].routes[].backends[].policies.ai.promptGuard.response[].googleModelArmor.policies.health.eviction.healthThresholdnumber
binds[].listeners[].routes[].backends[].policies.ai.promptGuard.response[].googleModelArmor.policies.backendTunnelobjectSpecify a tunnel to use when connecting to the backend
binds[].listeners[].routes[].backends[].policies.ai.promptGuard.response[].googleModelArmor.policies.backendTunnel.proxyobjectReference to the proxy address
Exactly one of service, host, or backend may be set.
binds[].listeners[].routes[].backends[].policies.ai.promptGuard.response[].googleModelArmor.policies.backendTunnel.proxy.serviceobject
binds[].listeners[].routes[].backends[].policies.ai.promptGuard.response[].googleModelArmor.policies.backendTunnel.proxy.service.nameobject
binds[].listeners[].routes[].backends[].policies.ai.promptGuard.response[].googleModelArmor.policies.backendTunnel.proxy.service.name.namespacestring
binds[].listeners[].routes[].backends[].policies.ai.promptGuard.response[].googleModelArmor.policies.backendTunnel.proxy.service.name.hostnamestring
binds[].listeners[].routes[].backends[].policies.ai.promptGuard.response[].googleModelArmor.policies.backendTunnel.proxy.service.portinteger
binds[].listeners[].routes[].backends[].policies.ai.promptGuard.response[].googleModelArmor.policies.backendTunnel.proxy.hoststringHostname or IP address
binds[].listeners[].routes[].backends[].policies.ai.promptGuard.response[].googleModelArmor.policies.backendTunnel.proxy.backendstringExplicit backend reference. Backend must be defined in the top level backends list
binds[].listeners[].routes[].backends[].policies.ai.promptGuard.response[].rejectionobject
binds[].listeners[].routes[].backends[].policies.ai.promptGuard.response[].rejection.bodyarray
binds[].listeners[].routes[].backends[].policies.ai.promptGuard.response[].rejection.statusinteger
binds[].listeners[].routes[].backends[].policies.ai.promptGuard.response[].rejection.headersobjectOptional headers to add, set, or remove from the rejection response
binds[].listeners[].routes[].backends[].policies.ai.promptGuard.response[].rejection.headers.addobject
binds[].listeners[].routes[].backends[].policies.ai.promptGuard.response[].rejection.headers.setobject
binds[].listeners[].routes[].backends[].policies.ai.promptGuard.response[].rejection.headers.remove[]string
binds[].listeners[].routes[].backends[].policies.ai.defaultsobject
binds[].listeners[].routes[].backends[].policies.ai.overridesobject
binds[].listeners[].routes[].backends[].policies.ai.transformationsobject
binds[].listeners[].routes[].backends[].policies.ai.promptsobject
binds[].listeners[].routes[].backends[].policies.ai.prompts.append[]object
binds[].listeners[].routes[].backends[].policies.ai.prompts.append[].rolestring
binds[].listeners[].routes[].backends[].policies.ai.prompts.append[].contentstring
binds[].listeners[].routes[].backends[].policies.ai.prompts.prepend[]object
binds[].listeners[].routes[].backends[].policies.ai.prompts.prepend[].rolestring
binds[].listeners[].routes[].backends[].policies.ai.prompts.prepend[].contentstring
binds[].listeners[].routes[].backends[].policies.ai.modelAliasesobject
binds[].listeners[].routes[].backends[].policies.ai.promptCachingobject
binds[].listeners[].routes[].backends[].policies.ai.promptCaching.cacheSystemboolean
binds[].listeners[].routes[].backends[].policies.ai.promptCaching.cacheMessagesboolean
binds[].listeners[].routes[].backends[].policies.ai.promptCaching.cacheToolsboolean
binds[].listeners[].routes[].backends[].policies.ai.promptCaching.minTokensinteger
binds[].listeners[].routes[].backends[].policies.ai.routesobject
binds[].listeners[].tcpRoutes[]object
binds[].listeners[].tcpRoutes[].namestring
binds[].listeners[].tcpRoutes[].namespacestring
binds[].listeners[].tcpRoutes[].ruleNamestring
binds[].listeners[].tcpRoutes[].hostnames[]stringCan be a wildcard
binds[].listeners[].tcpRoutes[].policiesobject
binds[].listeners[].tcpRoutes[].policies.backendTLSobject
binds[].listeners[].tcpRoutes[].policies.backendTLS.certstring
binds[].listeners[].tcpRoutes[].policies.backendTLS.keystring
binds[].listeners[].tcpRoutes[].policies.backendTLS.rootstring
binds[].listeners[].tcpRoutes[].policies.backendTLS.hostnamestring
binds[].listeners[].tcpRoutes[].policies.backendTLS.insecureboolean
binds[].listeners[].tcpRoutes[].policies.backendTLS.insecureHostboolean
binds[].listeners[].tcpRoutes[].policies.backendTLS.alpn[]string
binds[].listeners[].tcpRoutes[].policies.backendTLS.subjectAltNames[]string
binds[].listeners[].tcpRoutes[].backends[]object
binds[].listeners[].tcpRoutes[].backends[].serviceobject
binds[].listeners[].tcpRoutes[].backends[].service.nameobject
binds[].listeners[].tcpRoutes[].backends[].service.name.namespacestring
binds[].listeners[].tcpRoutes[].backends[].service.name.hostnamestring
binds[].listeners[].tcpRoutes[].backends[].service.portinteger
binds[].listeners[].tcpRoutes[].backends[].hoststringHostname or IP address
binds[].listeners[].tcpRoutes[].backends[].backendstringExplicit backend reference. Backend must be defined in the top level backends list
binds[].listeners[].tcpRoutes[].backends[].weightinteger
binds[].listeners[].tcpRoutes[].backends[].policiesobject
binds[].listeners[].tcpRoutes[].backends[].policies.backendTLSobjectSend TLS to the backend.
binds[].listeners[].tcpRoutes[].backends[].policies.backendTLS.certstring
binds[].listeners[].tcpRoutes[].backends[].policies.backendTLS.keystring
binds[].listeners[].tcpRoutes[].backends[].policies.backendTLS.rootstring
binds[].listeners[].tcpRoutes[].backends[].policies.backendTLS.hostnamestring
binds[].listeners[].tcpRoutes[].backends[].policies.backendTLS.insecureboolean
binds[].listeners[].tcpRoutes[].backends[].policies.backendTLS.insecureHostboolean
binds[].listeners[].tcpRoutes[].backends[].policies.backendTLS.alpn[]string
binds[].listeners[].tcpRoutes[].backends[].policies.backendTLS.subjectAltNames[]string
binds[].listeners[].tcpRoutes[].backends[].policies.backendTunnelobjectTunnel to the backend.
binds[].listeners[].tcpRoutes[].backends[].policies.backendTunnel.proxyobjectReference to the proxy address
Exactly one of service, host, or backend may be set.
binds[].listeners[].tcpRoutes[].backends[].policies.backendTunnel.proxy.serviceobject
binds[].listeners[].tcpRoutes[].backends[].policies.backendTunnel.proxy.service.nameobject
binds[].listeners[].tcpRoutes[].backends[].policies.backendTunnel.proxy.service.name.namespacestring
binds[].listeners[].tcpRoutes[].backends[].policies.backendTunnel.proxy.service.name.hostnamestring
binds[].listeners[].tcpRoutes[].backends[].policies.backendTunnel.proxy.service.portinteger
binds[].listeners[].tcpRoutes[].backends[].policies.backendTunnel.proxy.hoststringHostname or IP address
binds[].listeners[].tcpRoutes[].backends[].policies.backendTunnel.proxy.backendstringExplicit backend reference. Backend must be defined in the top level backends list
binds[].listeners[].policiesobject
binds[].listeners[].policies.jwtAuthobjectAuthenticate incoming JWT requests.
binds[].listeners[].policies.jwtAuth.modestring
binds[].listeners[].policies.jwtAuth.providers[]object
binds[].listeners[].policies.jwtAuth.providers[].issuerstring
binds[].listeners[].policies.jwtAuth.providers[].audiences[]string
binds[].listeners[].policies.jwtAuth.providers[].jwksobject
binds[].listeners[].policies.jwtAuth.providers[].jwks.filestring
binds[].listeners[].policies.jwtAuth.providers[].jwks.urlstring
binds[].listeners[].policies.jwtAuth.providers[].jwtValidationOptionsobjectJWT validation options controlling which claims must be present in a token.

The required_claims set specifies which RFC 7519 registered claims must
exist in the token payload before validation proceeds. Only the following
values are recognized: exp, nbf, aud, iss, sub. Other registered
claims such as iat and jti are not enforced by the underlying
jsonwebtoken library and will be silently ignored.

This only enforces presence. Standard claims like exp and nbf
have their values validated independently (e.g., expiry is always checked
when the exp claim is present, regardless of this setting).

Defaults to ["exp"].
binds[].listeners[].policies.jwtAuth.providers[].jwtValidationOptions.requiredClaims[]stringClaims that must be present in the token before validation.
Only “exp”, “nbf”, “aud”, “iss”, “sub” are enforced; others
(including “iat” and “jti”) are ignored.
Defaults to [“exp”]. Use an empty list to require no claims.
binds[].listeners[].policies.jwtAuth.modestring
binds[].listeners[].policies.jwtAuth.issuerstring
binds[].listeners[].policies.jwtAuth.audiences[]string
binds[].listeners[].policies.jwtAuth.jwksobject
binds[].listeners[].policies.jwtAuth.jwks.filestring
binds[].listeners[].policies.jwtAuth.jwks.urlstring
binds[].listeners[].policies.jwtAuth.jwtValidationOptionsobjectJWT validation options controlling which claims must be present in a token.

The required_claims set specifies which RFC 7519 registered claims must
exist in the token payload before validation proceeds. Only the following
values are recognized: exp, nbf, aud, iss, sub. Other registered
claims such as iat and jti are not enforced by the underlying
jsonwebtoken library and will be silently ignored.

This only enforces presence. Standard claims like exp and nbf
have their values validated independently (e.g., expiry is always checked
when the exp claim is present, regardless of this setting).

Defaults to ["exp"].
binds[].listeners[].policies.jwtAuth.jwtValidationOptions.requiredClaims[]stringClaims that must be present in the token before validation.
Only “exp”, “nbf”, “aud”, “iss”, “sub” are enforced; others
(including “iat” and “jti”) are ignored.
Defaults to [“exp”]. Use an empty list to require no claims.
binds[].listeners[].policies.extAuthzobjectAuthenticate incoming requests by calling an external authorization server.
binds[].listeners[].policies.extAuthz.serviceobject
binds[].listeners[].policies.extAuthz.service.nameobject
binds[].listeners[].policies.extAuthz.service.name.namespacestring
binds[].listeners[].policies.extAuthz.service.name.hostnamestring
binds[].listeners[].policies.extAuthz.service.portinteger
binds[].listeners[].policies.extAuthz.hoststringHostname or IP address
binds[].listeners[].policies.extAuthz.backendstringExplicit backend reference. Backend must be defined in the top level backends list
binds[].listeners[].policies.extAuthz.policiesobjectPolicies to connect to the backend
binds[].listeners[].policies.extAuthz.policies.requestHeaderModifierobjectHeaders to be modified in the request.
binds[].listeners[].policies.extAuthz.policies.requestHeaderModifier.addobject
binds[].listeners[].policies.extAuthz.policies.requestHeaderModifier.setobject
binds[].listeners[].policies.extAuthz.policies.requestHeaderModifier.remove[]string
binds[].listeners[].policies.extAuthz.policies.responseHeaderModifierobjectHeaders to be modified in the response.
binds[].listeners[].policies.extAuthz.policies.responseHeaderModifier.addobject
binds[].listeners[].policies.extAuthz.policies.responseHeaderModifier.setobject
binds[].listeners[].policies.extAuthz.policies.responseHeaderModifier.remove[]string
binds[].listeners[].policies.extAuthz.policies.requestRedirectobjectDirectly respond to the request with a redirect.
binds[].listeners[].policies.extAuthz.policies.requestRedirect.schemestring
binds[].listeners[].policies.extAuthz.policies.requestRedirect.authoritystring
binds[].listeners[].policies.extAuthz.policies.requestRedirect.authority.fullstring
binds[].listeners[].policies.extAuthz.policies.requestRedirect.authority.hoststring
binds[].listeners[].policies.extAuthz.policies.requestRedirect.authority.portinteger
binds[].listeners[].policies.extAuthz.policies.requestRedirect.pathobject
binds[].listeners[].policies.extAuthz.policies.requestRedirect.path.fullstring
binds[].listeners[].policies.extAuthz.policies.requestRedirect.path.prefixstring
binds[].listeners[].policies.extAuthz.policies.requestRedirect.statusinteger
binds[].listeners[].policies.extAuthz.policies.transformationsobjectModify requests and responses sent to and from the backend.
binds[].listeners[].policies.extAuthz.policies.transformations.requestobject
binds[].listeners[].policies.extAuthz.policies.transformations.request.addobject
binds[].listeners[].policies.extAuthz.policies.transformations.request.setobject
binds[].listeners[].policies.extAuthz.policies.transformations.request.remove[]string
binds[].listeners[].policies.extAuthz.policies.transformations.request.bodystring
binds[].listeners[].policies.extAuthz.policies.transformations.request.metadataobject
binds[].listeners[].policies.extAuthz.policies.transformations.responseobject
binds[].listeners[].policies.extAuthz.policies.transformations.response.addobject
binds[].listeners[].policies.extAuthz.policies.transformations.response.setobject
binds[].listeners[].policies.extAuthz.policies.transformations.response.remove[]string
binds[].listeners[].policies.extAuthz.policies.transformations.response.bodystring
binds[].listeners[].policies.extAuthz.policies.transformations.response.metadataobject
binds[].listeners[].policies.extAuthz.policies.backendTLSobjectSend TLS to the backend.
binds[].listeners[].policies.extAuthz.policies.backendTLS.certstring
binds[].listeners[].policies.extAuthz.policies.backendTLS.keystring
binds[].listeners[].policies.extAuthz.policies.backendTLS.rootstring
binds[].listeners[].policies.extAuthz.policies.backendTLS.hostnamestring
binds[].listeners[].policies.extAuthz.policies.backendTLS.insecureboolean
binds[].listeners[].policies.extAuthz.policies.backendTLS.insecureHostboolean
binds[].listeners[].policies.extAuthz.policies.backendTLS.alpn[]string
binds[].listeners[].policies.extAuthz.policies.backendTLS.subjectAltNames[]string
binds[].listeners[].policies.extAuthz.policies.backendAuthobjectAuthenticate to the backend.
binds[].listeners[].policies.extAuthz.policies.backendAuth.passthroughobject
binds[].listeners[].policies.extAuthz.policies.backendAuth.keyobject
binds[].listeners[].policies.extAuthz.policies.backendAuth.key.filestring
binds[].listeners[].policies.extAuthz.policies.backendAuth.gcpobject
binds[].listeners[].policies.extAuthz.policies.backendAuth.gcp.typestring
binds[].listeners[].policies.extAuthz.policies.backendAuth.gcp.audiencestringAudience for the token. If not set, the destination host will be used.
binds[].listeners[].policies.extAuthz.policies.backendAuth.gcp.typestring
binds[].listeners[].policies.extAuthz.policies.backendAuth.awsobject
binds[].listeners[].policies.extAuthz.policies.backendAuth.aws.accessKeyIdstring
binds[].listeners[].policies.extAuthz.policies.backendAuth.aws.secretAccessKeystring
binds[].listeners[].policies.extAuthz.policies.backendAuth.aws.regionstring
binds[].listeners[].policies.extAuthz.policies.backendAuth.aws.sessionTokenstring
binds[].listeners[].policies.extAuthz.policies.backendAuth.azureobjectExactly one of explicitConfig, developerImplicit, or implicit may be set.
binds[].listeners[].policies.extAuthz.policies.backendAuth.azure.explicitConfigobjectExactly one of clientSecret, managedIdentity, or workloadIdentity may be set.
binds[].listeners[].policies.extAuthz.policies.backendAuth.azure.explicitConfig.clientSecretobject
binds[].listeners[].policies.extAuthz.policies.backendAuth.azure.explicitConfig.clientSecret.tenant_idstring
binds[].listeners[].policies.extAuthz.policies.backendAuth.azure.explicitConfig.clientSecret.client_idstring
binds[].listeners[].policies.extAuthz.policies.backendAuth.azure.explicitConfig.clientSecret.client_secretstring
binds[].listeners[].policies.extAuthz.policies.backendAuth.azure.explicitConfig.managedIdentityobject
binds[].listeners[].policies.extAuthz.policies.backendAuth.azure.explicitConfig.managedIdentity.userAssignedIdentityobject
binds[].listeners[].policies.extAuthz.policies.backendAuth.azure.explicitConfig.managedIdentity.userAssignedIdentity.clientIdstring
binds[].listeners[].policies.extAuthz.policies.backendAuth.azure.explicitConfig.managedIdentity.userAssignedIdentity.objectIdstring
binds[].listeners[].policies.extAuthz.policies.backendAuth.azure.explicitConfig.managedIdentity.userAssignedIdentity.resourceIdstring
binds[].listeners[].policies.extAuthz.policies.backendAuth.azure.explicitConfig.workloadIdentityobject
binds[].listeners[].policies.extAuthz.policies.backendAuth.azure.developerImplicitobject
binds[].listeners[].policies.extAuthz.policies.backendAuth.azure.implicitobject
binds[].listeners[].policies.extAuthz.policies.httpobjectSpecify HTTP settings for the backend
binds[].listeners[].policies.extAuthz.policies.http.versionstring
binds[].listeners[].policies.extAuthz.policies.http.requestTimeoutstring
binds[].listeners[].policies.extAuthz.policies.tcpobjectSpecify TCP settings for the backend
binds[].listeners[].policies.extAuthz.policies.tcp.keepalivesobject
binds[].listeners[].policies.extAuthz.policies.tcp.keepalives.enabledboolean
binds[].listeners[].policies.extAuthz.policies.tcp.keepalives.timestring
binds[].listeners[].policies.extAuthz.policies.tcp.keepalives.intervalstring
binds[].listeners[].policies.extAuthz.policies.tcp.keepalives.retriesinteger
binds[].listeners[].policies.extAuthz.policies.tcp.connectTimeoutobject
binds[].listeners[].policies.extAuthz.policies.tcp.connectTimeout.secsinteger
binds[].listeners[].policies.extAuthz.policies.tcp.connectTimeout.nanosinteger
binds[].listeners[].policies.extAuthz.policies.healthobjectHealth policy for backend outlier detection; evicts on unhealthy responses based on CEL condition and configurable duration.
binds[].listeners[].policies.extAuthz.policies.health.unhealthyExpressionstringCEL expression; true means unhealthy (evict). E.g. response.code >= 500.
When unset, any 5xx or connection failure is treated as unhealthy.
binds[].listeners[].policies.extAuthz.policies.health.evictionobjectLocal/config eviction sub-policy with duration as string; mirrors Eviction.
binds[].listeners[].policies.extAuthz.policies.health.eviction.durationstring
binds[].listeners[].policies.extAuthz.policies.health.eviction.restoreHealthnumber
binds[].listeners[].policies.extAuthz.policies.health.eviction.consecutiveFailuresinteger
binds[].listeners[].policies.extAuthz.policies.health.eviction.healthThresholdnumber
binds[].listeners[].policies.extAuthz.policies.backendTunnelobjectSpecify a tunnel to use when connecting to the backend
binds[].listeners[].policies.extAuthz.policies.backendTunnel.proxyobjectReference to the proxy address
Exactly one of service, host, or backend may be set.
binds[].listeners[].policies.extAuthz.policies.backendTunnel.proxy.serviceobject
binds[].listeners[].policies.extAuthz.policies.backendTunnel.proxy.service.nameobject
binds[].listeners[].policies.extAuthz.policies.backendTunnel.proxy.service.name.namespacestring
binds[].listeners[].policies.extAuthz.policies.backendTunnel.proxy.service.name.hostnamestring
binds[].listeners[].policies.extAuthz.policies.backendTunnel.proxy.service.portinteger
binds[].listeners[].policies.extAuthz.policies.backendTunnel.proxy.hoststringHostname or IP address
binds[].listeners[].policies.extAuthz.policies.backendTunnel.proxy.backendstringExplicit backend reference. Backend must be defined in the top level backends list
binds[].listeners[].policies.extAuthz.protocolobjectThe ext_authz protocol to use. Unless you need to integrate with an HTTP-only server, gRPC is recommended.
Exactly one of grpc or http may be set.
binds[].listeners[].policies.extAuthz.protocol.grpcobject
binds[].listeners[].policies.extAuthz.protocol.grpc.contextobjectAdditional context to send to the authorization service.
This maps to the context_extensions field of the request, and only allows static values.
binds[].listeners[].policies.extAuthz.protocol.grpc.metadataobjectAdditional metadata to send to the authorization service.
This maps to the metadata_context.filter_metadata field of the request, and allows dynamic CEL expressions.
If unset, by default the envoy.filters.http.jwt_authn key is set if the JWT policy is used as well, for compatibility.
binds[].listeners[].policies.extAuthz.protocol.httpobject
binds[].listeners[].policies.extAuthz.protocol.http.pathstring
binds[].listeners[].policies.extAuthz.protocol.http.redirectstringWhen using the HTTP protocol, and the server returns unauthorized, redirect to the URL resolved by
the provided expression rather than directly returning the error.
binds[].listeners[].policies.extAuthz.protocol.http.includeResponseHeaders[]stringSpecific headers from the authorization response will be copied into the request to the backend.
binds[].listeners[].policies.extAuthz.protocol.http.addRequestHeadersobjectSpecific headers to add in the authorization request (empty = all headers), based on the expression
binds[].listeners[].policies.extAuthz.protocol.http.metadataobjectMetadata to include under the extauthz variable, based on the authorization response.
binds[].listeners[].policies.extAuthz.failureModestringBehavior when the authorization service is unavailable or returns an error
binds[].listeners[].policies.extAuthz.failureMode.denyWithStatusinteger
binds[].listeners[].policies.extAuthz.includeRequestHeaders[]stringSpecific headers to include in the authorization request.
If unset, the gRPC protocol sends all request headers. The HTTP protocol sends only ‘Authorization’.
binds[].listeners[].policies.extAuthz.includeRequestBodyobjectOptions for including the request body in the authorization request
binds[].listeners[].policies.extAuthz.includeRequestBody.maxRequestBytesintegerMaximum size of request body to buffer (default: 8192)
binds[].listeners[].policies.extAuthz.includeRequestBody.allowPartialMessagebooleanIf true, send partial body when max_request_bytes is reached
binds[].listeners[].policies.extAuthz.includeRequestBody.packAsBytesbooleanIf true, pack body as raw bytes in gRPC
binds[].listeners[].policies.extProcobjectExtend agentgateway with an external processor
binds[].listeners[].policies.extProc.serviceobject
binds[].listeners[].policies.extProc.service.nameobject
binds[].listeners[].policies.extProc.service.name.namespacestring
binds[].listeners[].policies.extProc.service.name.hostnamestring
binds[].listeners[].policies.extProc.service.portinteger
binds[].listeners[].policies.extProc.hoststringHostname or IP address
binds[].listeners[].policies.extProc.backendstringExplicit backend reference. Backend must be defined in the top level backends list
binds[].listeners[].policies.extProc.policiesobjectPolicies to connect to the backend
binds[].listeners[].policies.extProc.policies.requestHeaderModifierobjectHeaders to be modified in the request.
binds[].listeners[].policies.extProc.policies.requestHeaderModifier.addobject
binds[].listeners[].policies.extProc.policies.requestHeaderModifier.setobject
binds[].listeners[].policies.extProc.policies.requestHeaderModifier.remove[]string
binds[].listeners[].policies.extProc.policies.responseHeaderModifierobjectHeaders to be modified in the response.
binds[].listeners[].policies.extProc.policies.responseHeaderModifier.addobject
binds[].listeners[].policies.extProc.policies.responseHeaderModifier.setobject
binds[].listeners[].policies.extProc.policies.responseHeaderModifier.remove[]string
binds[].listeners[].policies.extProc.policies.requestRedirectobjectDirectly respond to the request with a redirect.
binds[].listeners[].policies.extProc.policies.requestRedirect.schemestring
binds[].listeners[].policies.extProc.policies.requestRedirect.authoritystring
binds[].listeners[].policies.extProc.policies.requestRedirect.authority.fullstring
binds[].listeners[].policies.extProc.policies.requestRedirect.authority.hoststring
binds[].listeners[].policies.extProc.policies.requestRedirect.authority.portinteger
binds[].listeners[].policies.extProc.policies.requestRedirect.pathobject
binds[].listeners[].policies.extProc.policies.requestRedirect.path.fullstring
binds[].listeners[].policies.extProc.policies.requestRedirect.path.prefixstring
binds[].listeners[].policies.extProc.policies.requestRedirect.statusinteger
binds[].listeners[].policies.extProc.policies.transformationsobjectModify requests and responses sent to and from the backend.
binds[].listeners[].policies.extProc.policies.transformations.requestobject
binds[].listeners[].policies.extProc.policies.transformations.request.addobject
binds[].listeners[].policies.extProc.policies.transformations.request.setobject
binds[].listeners[].policies.extProc.policies.transformations.request.remove[]string
binds[].listeners[].policies.extProc.policies.transformations.request.bodystring
binds[].listeners[].policies.extProc.policies.transformations.request.metadataobject
binds[].listeners[].policies.extProc.policies.transformations.responseobject
binds[].listeners[].policies.extProc.policies.transformations.response.addobject
binds[].listeners[].policies.extProc.policies.transformations.response.setobject
binds[].listeners[].policies.extProc.policies.transformations.response.remove[]string
binds[].listeners[].policies.extProc.policies.transformations.response.bodystring
binds[].listeners[].policies.extProc.policies.transformations.response.metadataobject
binds[].listeners[].policies.extProc.policies.backendTLSobjectSend TLS to the backend.
binds[].listeners[].policies.extProc.policies.backendTLS.certstring
binds[].listeners[].policies.extProc.policies.backendTLS.keystring
binds[].listeners[].policies.extProc.policies.backendTLS.rootstring
binds[].listeners[].policies.extProc.policies.backendTLS.hostnamestring
binds[].listeners[].policies.extProc.policies.backendTLS.insecureboolean
binds[].listeners[].policies.extProc.policies.backendTLS.insecureHostboolean
binds[].listeners[].policies.extProc.policies.backendTLS.alpn[]string
binds[].listeners[].policies.extProc.policies.backendTLS.subjectAltNames[]string
binds[].listeners[].policies.extProc.policies.backendAuthobjectAuthenticate to the backend.
binds[].listeners[].policies.extProc.policies.backendAuth.passthroughobject
binds[].listeners[].policies.extProc.policies.backendAuth.keyobject
binds[].listeners[].policies.extProc.policies.backendAuth.key.filestring
binds[].listeners[].policies.extProc.policies.backendAuth.gcpobject
binds[].listeners[].policies.extProc.policies.backendAuth.gcp.typestring
binds[].listeners[].policies.extProc.policies.backendAuth.gcp.audiencestringAudience for the token. If not set, the destination host will be used.
binds[].listeners[].policies.extProc.policies.backendAuth.gcp.typestring
binds[].listeners[].policies.extProc.policies.backendAuth.awsobject
binds[].listeners[].policies.extProc.policies.backendAuth.aws.accessKeyIdstring
binds[].listeners[].policies.extProc.policies.backendAuth.aws.secretAccessKeystring
binds[].listeners[].policies.extProc.policies.backendAuth.aws.regionstring
binds[].listeners[].policies.extProc.policies.backendAuth.aws.sessionTokenstring
binds[].listeners[].policies.extProc.policies.backendAuth.azureobjectExactly one of explicitConfig, developerImplicit, or implicit may be set.
binds[].listeners[].policies.extProc.policies.backendAuth.azure.explicitConfigobjectExactly one of clientSecret, managedIdentity, or workloadIdentity may be set.
binds[].listeners[].policies.extProc.policies.backendAuth.azure.explicitConfig.clientSecretobject
binds[].listeners[].policies.extProc.policies.backendAuth.azure.explicitConfig.clientSecret.tenant_idstring
binds[].listeners[].policies.extProc.policies.backendAuth.azure.explicitConfig.clientSecret.client_idstring
binds[].listeners[].policies.extProc.policies.backendAuth.azure.explicitConfig.clientSecret.client_secretstring
binds[].listeners[].policies.extProc.policies.backendAuth.azure.explicitConfig.managedIdentityobject
binds[].listeners[].policies.extProc.policies.backendAuth.azure.explicitConfig.managedIdentity.userAssignedIdentityobject
binds[].listeners[].policies.extProc.policies.backendAuth.azure.explicitConfig.managedIdentity.userAssignedIdentity.clientIdstring
binds[].listeners[].policies.extProc.policies.backendAuth.azure.explicitConfig.managedIdentity.userAssignedIdentity.objectIdstring
binds[].listeners[].policies.extProc.policies.backendAuth.azure.explicitConfig.managedIdentity.userAssignedIdentity.resourceIdstring
binds[].listeners[].policies.extProc.policies.backendAuth.azure.explicitConfig.workloadIdentityobject
binds[].listeners[].policies.extProc.policies.backendAuth.azure.developerImplicitobject
binds[].listeners[].policies.extProc.policies.backendAuth.azure.implicitobject
binds[].listeners[].policies.extProc.policies.httpobjectSpecify HTTP settings for the backend
binds[].listeners[].policies.extProc.policies.http.versionstring
binds[].listeners[].policies.extProc.policies.http.requestTimeoutstring
binds[].listeners[].policies.extProc.policies.tcpobjectSpecify TCP settings for the backend
binds[].listeners[].policies.extProc.policies.tcp.keepalivesobject
binds[].listeners[].policies.extProc.policies.tcp.keepalives.enabledboolean
binds[].listeners[].policies.extProc.policies.tcp.keepalives.timestring
binds[].listeners[].policies.extProc.policies.tcp.keepalives.intervalstring
binds[].listeners[].policies.extProc.policies.tcp.keepalives.retriesinteger
binds[].listeners[].policies.extProc.policies.tcp.connectTimeoutobject
binds[].listeners[].policies.extProc.policies.tcp.connectTimeout.secsinteger
binds[].listeners[].policies.extProc.policies.tcp.connectTimeout.nanosinteger
binds[].listeners[].policies.extProc.policies.healthobjectHealth policy for backend outlier detection; evicts on unhealthy responses based on CEL condition and configurable duration.
binds[].listeners[].policies.extProc.policies.health.unhealthyExpressionstringCEL expression; true means unhealthy (evict). E.g. response.code >= 500.
When unset, any 5xx or connection failure is treated as unhealthy.
binds[].listeners[].policies.extProc.policies.health.evictionobjectLocal/config eviction sub-policy with duration as string; mirrors Eviction.
binds[].listeners[].policies.extProc.policies.health.eviction.durationstring
binds[].listeners[].policies.extProc.policies.health.eviction.restoreHealthnumber
binds[].listeners[].policies.extProc.policies.health.eviction.consecutiveFailuresinteger
binds[].listeners[].policies.extProc.policies.health.eviction.healthThresholdnumber
binds[].listeners[].policies.extProc.policies.backendTunnelobjectSpecify a tunnel to use when connecting to the backend
binds[].listeners[].policies.extProc.policies.backendTunnel.proxyobjectReference to the proxy address
Exactly one of service, host, or backend may be set.
binds[].listeners[].policies.extProc.policies.backendTunnel.proxy.serviceobject
binds[].listeners[].policies.extProc.policies.backendTunnel.proxy.service.nameobject
binds[].listeners[].policies.extProc.policies.backendTunnel.proxy.service.name.namespacestring
binds[].listeners[].policies.extProc.policies.backendTunnel.proxy.service.name.hostnamestring
binds[].listeners[].policies.extProc.policies.backendTunnel.proxy.service.portinteger
binds[].listeners[].policies.extProc.policies.backendTunnel.proxy.hoststringHostname or IP address
binds[].listeners[].policies.extProc.policies.backendTunnel.proxy.backendstringExplicit backend reference. Backend must be defined in the top level backends list
binds[].listeners[].policies.extProc.failureModestringBehavior when the ext_proc service is unavailable or returns an error
binds[].listeners[].policies.extProc.metadataContextobjectAdditional metadata to send to the external processing service.
Maps to the metadata_context.filter_metadata field in ProcessingRequest, and allows dynamic CEL expressions.
binds[].listeners[].policies.extProc.requestAttributesobjectMaps to the request attributes field in ProcessingRequest, and allows dynamic CEL expressions.
binds[].listeners[].policies.extProc.responseAttributesobjectMaps to the response attributes field in ProcessingRequest, and allows dynamic CEL expressions.
binds[].listeners[].policies.transformationsobjectModify requests and responses
binds[].listeners[].policies.transformations.requestobject
binds[].listeners[].policies.transformations.request.addobject
binds[].listeners[].policies.transformations.request.setobject
binds[].listeners[].policies.transformations.request.remove[]string
binds[].listeners[].policies.transformations.request.bodystring
binds[].listeners[].policies.transformations.request.metadataobject
binds[].listeners[].policies.transformations.responseobject
binds[].listeners[].policies.transformations.response.addobject
binds[].listeners[].policies.transformations.response.setobject
binds[].listeners[].policies.transformations.response.remove[]string
binds[].listeners[].policies.transformations.response.bodystring
binds[].listeners[].policies.transformations.response.metadataobject
binds[].listeners[].policies.basicAuthobjectAuthenticate incoming requests using Basic Authentication with htpasswd.
binds[].listeners[].policies.basicAuth.htpasswdobject.htpasswd file contents/reference
binds[].listeners[].policies.basicAuth.htpasswd.filestring
binds[].listeners[].policies.basicAuth.realmstringRealm name for the WWW-Authenticate header
binds[].listeners[].policies.basicAuth.modestringValidation mode for basic authentication
binds[].listeners[].policies.apiKeyobjectAuthenticate incoming requests using API Keys
binds[].listeners[].policies.apiKey.keys[]objectList of API keys
binds[].listeners[].policies.apiKey.keys[].keystring
binds[].listeners[].policies.apiKey.keys[].metadataany
binds[].listeners[].policies.apiKey.modestringValidation mode for API keys
binds[].tunnelProtocolstring
frontendPoliciesobject
frontendPolicies.httpobjectSettings for handling incoming HTTP requests.
frontendPolicies.http.maxBufferSizeinteger
frontendPolicies.http.http1MaxHeadersintegerThe maximum number of headers allowed in a request. Changing this value results in a performance
degradation, even if set to a lower value than the default (100)
frontendPolicies.http.http1IdleTimeoutstring
frontendPolicies.http.http2WindowSizeinteger
frontendPolicies.http.http2ConnectionWindowSizeinteger
frontendPolicies.http.http2FrameSizeinteger
frontendPolicies.http.http2KeepaliveIntervalstring
frontendPolicies.http.http2KeepaliveTimeoutstring
frontendPolicies.tlsobjectSettings for handling incoming TLS connections.
frontendPolicies.tls.handshakeTimeoutstring
frontendPolicies.tls.alpnarray
frontendPolicies.tls.minVersionstring
frontendPolicies.tls.maxVersionstring
frontendPolicies.tls.cipherSuites[]string
frontendPolicies.tcpobjectSettings for handling incoming TCP connections.
frontendPolicies.tcp.keepalivesobject
frontendPolicies.tcp.keepalives.enabledboolean
frontendPolicies.tcp.keepalives.timestring
frontendPolicies.tcp.keepalives.intervalstring
frontendPolicies.tcp.keepalives.retriesinteger
frontendPolicies.accessLogobjectSettings for request access logs.
frontendPolicies.accessLog.filterstring
frontendPolicies.accessLog.addobject
frontendPolicies.accessLog.remove[]string
frontendPolicies.accessLog.otlpobject
frontendPolicies.accessLog.otlp.serviceobject
frontendPolicies.accessLog.otlp.service.nameobject
frontendPolicies.accessLog.otlp.service.name.namespacestring
frontendPolicies.accessLog.otlp.service.name.hostnamestring
frontendPolicies.accessLog.otlp.service.portinteger
frontendPolicies.accessLog.otlp.hoststringHostname or IP address
frontendPolicies.accessLog.otlp.backendstringExplicit backend reference. Backend must be defined in the top level backends list
frontendPolicies.accessLog.otlp.policiesobject
frontendPolicies.accessLog.otlp.policies.requestHeaderModifierobjectHeaders to be modified in the request.
frontendPolicies.accessLog.otlp.policies.requestHeaderModifier.addobject
frontendPolicies.accessLog.otlp.policies.requestHeaderModifier.setobject
frontendPolicies.accessLog.otlp.policies.requestHeaderModifier.remove[]string
frontendPolicies.accessLog.otlp.policies.responseHeaderModifierobjectHeaders to be modified in the response.
frontendPolicies.accessLog.otlp.policies.responseHeaderModifier.addobject
frontendPolicies.accessLog.otlp.policies.responseHeaderModifier.setobject
frontendPolicies.accessLog.otlp.policies.responseHeaderModifier.remove[]string
frontendPolicies.accessLog.otlp.policies.requestRedirectobjectDirectly respond to the request with a redirect.
frontendPolicies.accessLog.otlp.policies.requestRedirect.schemestring
frontendPolicies.accessLog.otlp.policies.requestRedirect.authoritystring
frontendPolicies.accessLog.otlp.policies.requestRedirect.authority.fullstring
frontendPolicies.accessLog.otlp.policies.requestRedirect.authority.hoststring
frontendPolicies.accessLog.otlp.policies.requestRedirect.authority.portinteger
frontendPolicies.accessLog.otlp.policies.requestRedirect.pathobject
frontendPolicies.accessLog.otlp.policies.requestRedirect.path.fullstring
frontendPolicies.accessLog.otlp.policies.requestRedirect.path.prefixstring
frontendPolicies.accessLog.otlp.policies.requestRedirect.statusinteger
frontendPolicies.accessLog.otlp.policies.transformationsobjectModify requests and responses sent to and from the backend.
frontendPolicies.accessLog.otlp.policies.transformations.requestobject
frontendPolicies.accessLog.otlp.policies.transformations.request.addobject
frontendPolicies.accessLog.otlp.policies.transformations.request.setobject
frontendPolicies.accessLog.otlp.policies.transformations.request.remove[]string
frontendPolicies.accessLog.otlp.policies.transformations.request.bodystring
frontendPolicies.accessLog.otlp.policies.transformations.request.metadataobject
frontendPolicies.accessLog.otlp.policies.transformations.responseobject
frontendPolicies.accessLog.otlp.policies.transformations.response.addobject
frontendPolicies.accessLog.otlp.policies.transformations.response.setobject
frontendPolicies.accessLog.otlp.policies.transformations.response.remove[]string
frontendPolicies.accessLog.otlp.policies.transformations.response.bodystring
frontendPolicies.accessLog.otlp.policies.transformations.response.metadataobject
frontendPolicies.accessLog.otlp.policies.backendTLSobjectSend TLS to the backend.
frontendPolicies.accessLog.otlp.policies.backendTLS.certstring
frontendPolicies.accessLog.otlp.policies.backendTLS.keystring
frontendPolicies.accessLog.otlp.policies.backendTLS.rootstring
frontendPolicies.accessLog.otlp.policies.backendTLS.hostnamestring
frontendPolicies.accessLog.otlp.policies.backendTLS.insecureboolean
frontendPolicies.accessLog.otlp.policies.backendTLS.insecureHostboolean
frontendPolicies.accessLog.otlp.policies.backendTLS.alpn[]string
frontendPolicies.accessLog.otlp.policies.backendTLS.subjectAltNames[]string
frontendPolicies.accessLog.otlp.policies.backendAuthobjectAuthenticate to the backend.
frontendPolicies.accessLog.otlp.policies.backendAuth.passthroughobject
frontendPolicies.accessLog.otlp.policies.backendAuth.keyobject
frontendPolicies.accessLog.otlp.policies.backendAuth.key.filestring
frontendPolicies.accessLog.otlp.policies.backendAuth.gcpobject
frontendPolicies.accessLog.otlp.policies.backendAuth.gcp.typestring
frontendPolicies.accessLog.otlp.policies.backendAuth.gcp.audiencestringAudience for the token. If not set, the destination host will be used.
frontendPolicies.accessLog.otlp.policies.backendAuth.gcp.typestring
frontendPolicies.accessLog.otlp.policies.backendAuth.awsobject
frontendPolicies.accessLog.otlp.policies.backendAuth.aws.accessKeyIdstring
frontendPolicies.accessLog.otlp.policies.backendAuth.aws.secretAccessKeystring
frontendPolicies.accessLog.otlp.policies.backendAuth.aws.regionstring
frontendPolicies.accessLog.otlp.policies.backendAuth.aws.sessionTokenstring
frontendPolicies.accessLog.otlp.policies.backendAuth.azureobjectExactly one of explicitConfig, developerImplicit, or implicit may be set.
frontendPolicies.accessLog.otlp.policies.backendAuth.azure.explicitConfigobjectExactly one of clientSecret, managedIdentity, or workloadIdentity may be set.
frontendPolicies.accessLog.otlp.policies.backendAuth.azure.explicitConfig.clientSecretobject
frontendPolicies.accessLog.otlp.policies.backendAuth.azure.explicitConfig.clientSecret.tenant_idstring
frontendPolicies.accessLog.otlp.policies.backendAuth.azure.explicitConfig.clientSecret.client_idstring
frontendPolicies.accessLog.otlp.policies.backendAuth.azure.explicitConfig.clientSecret.client_secretstring
frontendPolicies.accessLog.otlp.policies.backendAuth.azure.explicitConfig.managedIdentityobject
frontendPolicies.accessLog.otlp.policies.backendAuth.azure.explicitConfig.managedIdentity.userAssignedIdentityobject
frontendPolicies.accessLog.otlp.policies.backendAuth.azure.explicitConfig.managedIdentity.userAssignedIdentity.clientIdstring
frontendPolicies.accessLog.otlp.policies.backendAuth.azure.explicitConfig.managedIdentity.userAssignedIdentity.objectIdstring
frontendPolicies.accessLog.otlp.policies.backendAuth.azure.explicitConfig.managedIdentity.userAssignedIdentity.resourceIdstring
frontendPolicies.accessLog.otlp.policies.backendAuth.azure.explicitConfig.workloadIdentityobject
frontendPolicies.accessLog.otlp.policies.backendAuth.azure.developerImplicitobject
frontendPolicies.accessLog.otlp.policies.backendAuth.azure.implicitobject
frontendPolicies.accessLog.otlp.policies.httpobjectSpecify HTTP settings for the backend
frontendPolicies.accessLog.otlp.policies.http.versionstring
frontendPolicies.accessLog.otlp.policies.http.requestTimeoutstring
frontendPolicies.accessLog.otlp.policies.tcpobjectSpecify TCP settings for the backend
frontendPolicies.accessLog.otlp.policies.tcp.keepalivesobject
frontendPolicies.accessLog.otlp.policies.tcp.keepalives.enabledboolean
frontendPolicies.accessLog.otlp.policies.tcp.keepalives.timestring
frontendPolicies.accessLog.otlp.policies.tcp.keepalives.intervalstring
frontendPolicies.accessLog.otlp.policies.tcp.keepalives.retriesinteger
frontendPolicies.accessLog.otlp.policies.tcp.connectTimeoutobject
frontendPolicies.accessLog.otlp.policies.tcp.connectTimeout.secsinteger
frontendPolicies.accessLog.otlp.policies.tcp.connectTimeout.nanosinteger
frontendPolicies.accessLog.otlp.policies.healthobjectHealth policy for backend outlier detection; evicts on unhealthy responses based on CEL condition and configurable duration.
frontendPolicies.accessLog.otlp.policies.health.unhealthyExpressionstringCEL expression; true means unhealthy (evict). E.g. response.code >= 500.
When unset, any 5xx or connection failure is treated as unhealthy.
frontendPolicies.accessLog.otlp.policies.health.evictionobjectLocal/config eviction sub-policy with duration as string; mirrors Eviction.
frontendPolicies.accessLog.otlp.policies.health.eviction.durationstring
frontendPolicies.accessLog.otlp.policies.health.eviction.restoreHealthnumber
frontendPolicies.accessLog.otlp.policies.health.eviction.consecutiveFailuresinteger
frontendPolicies.accessLog.otlp.policies.health.eviction.healthThresholdnumber
frontendPolicies.accessLog.otlp.policies.backendTunnelobjectSpecify a tunnel to use when connecting to the backend
frontendPolicies.accessLog.otlp.policies.backendTunnel.proxyobjectReference to the proxy address
Exactly one of service, host, or backend may be set.
frontendPolicies.accessLog.otlp.policies.backendTunnel.proxy.serviceobject
frontendPolicies.accessLog.otlp.policies.backendTunnel.proxy.service.nameobject
frontendPolicies.accessLog.otlp.policies.backendTunnel.proxy.service.name.namespacestring
frontendPolicies.accessLog.otlp.policies.backendTunnel.proxy.service.name.hostnamestring
frontendPolicies.accessLog.otlp.policies.backendTunnel.proxy.service.portinteger
frontendPolicies.accessLog.otlp.policies.backendTunnel.proxy.hoststringHostname or IP address
frontendPolicies.accessLog.otlp.policies.backendTunnel.proxy.backendstringExplicit backend reference. Backend must be defined in the top level backends list
frontendPolicies.accessLog.otlp.protocolstring
frontendPolicies.accessLog.otlp.pathstring
frontendPolicies.tracingobject
frontendPolicies.tracing.serviceobject
frontendPolicies.tracing.service.nameobject
frontendPolicies.tracing.service.name.namespacestring
frontendPolicies.tracing.service.name.hostnamestring
frontendPolicies.tracing.service.portinteger
frontendPolicies.tracing.hoststringHostname or IP address
frontendPolicies.tracing.backendstringExplicit backend reference. Backend must be defined in the top level backends list
frontendPolicies.tracing.policiesobjectPolicies to connect to the backend
frontendPolicies.tracing.policies.requestHeaderModifierobjectHeaders to be modified in the request.
frontendPolicies.tracing.policies.requestHeaderModifier.addobject
frontendPolicies.tracing.policies.requestHeaderModifier.setobject
frontendPolicies.tracing.policies.requestHeaderModifier.remove[]string
frontendPolicies.tracing.policies.responseHeaderModifierobjectHeaders to be modified in the response.
frontendPolicies.tracing.policies.responseHeaderModifier.addobject
frontendPolicies.tracing.policies.responseHeaderModifier.setobject
frontendPolicies.tracing.policies.responseHeaderModifier.remove[]string
frontendPolicies.tracing.policies.requestRedirectobjectDirectly respond to the request with a redirect.
frontendPolicies.tracing.policies.requestRedirect.schemestring
frontendPolicies.tracing.policies.requestRedirect.authoritystring
frontendPolicies.tracing.policies.requestRedirect.authority.fullstring
frontendPolicies.tracing.policies.requestRedirect.authority.hoststring
frontendPolicies.tracing.policies.requestRedirect.authority.portinteger
frontendPolicies.tracing.policies.requestRedirect.pathobject
frontendPolicies.tracing.policies.requestRedirect.path.fullstring
frontendPolicies.tracing.policies.requestRedirect.path.prefixstring
frontendPolicies.tracing.policies.requestRedirect.statusinteger
frontendPolicies.tracing.policies.transformationsobjectModify requests and responses sent to and from the backend.
frontendPolicies.tracing.policies.transformations.requestobject
frontendPolicies.tracing.policies.transformations.request.addobject
frontendPolicies.tracing.policies.transformations.request.setobject
frontendPolicies.tracing.policies.transformations.request.remove[]string
frontendPolicies.tracing.policies.transformations.request.bodystring
frontendPolicies.tracing.policies.transformations.request.metadataobject
frontendPolicies.tracing.policies.transformations.responseobject
frontendPolicies.tracing.policies.transformations.response.addobject
frontendPolicies.tracing.policies.transformations.response.setobject
frontendPolicies.tracing.policies.transformations.response.remove[]string
frontendPolicies.tracing.policies.transformations.response.bodystring
frontendPolicies.tracing.policies.transformations.response.metadataobject
frontendPolicies.tracing.policies.backendTLSobjectSend TLS to the backend.
frontendPolicies.tracing.policies.backendTLS.certstring
frontendPolicies.tracing.policies.backendTLS.keystring
frontendPolicies.tracing.policies.backendTLS.rootstring
frontendPolicies.tracing.policies.backendTLS.hostnamestring
frontendPolicies.tracing.policies.backendTLS.insecureboolean
frontendPolicies.tracing.policies.backendTLS.insecureHostboolean
frontendPolicies.tracing.policies.backendTLS.alpn[]string
frontendPolicies.tracing.policies.backendTLS.subjectAltNames[]string
frontendPolicies.tracing.policies.backendAuthobjectAuthenticate to the backend.
frontendPolicies.tracing.policies.backendAuth.passthroughobject
frontendPolicies.tracing.policies.backendAuth.keyobject
frontendPolicies.tracing.policies.backendAuth.key.filestring
frontendPolicies.tracing.policies.backendAuth.gcpobject
frontendPolicies.tracing.policies.backendAuth.gcp.typestring
frontendPolicies.tracing.policies.backendAuth.gcp.audiencestringAudience for the token. If not set, the destination host will be used.
frontendPolicies.tracing.policies.backendAuth.gcp.typestring
frontendPolicies.tracing.policies.backendAuth.awsobject
frontendPolicies.tracing.policies.backendAuth.aws.accessKeyIdstring
frontendPolicies.tracing.policies.backendAuth.aws.secretAccessKeystring
frontendPolicies.tracing.policies.backendAuth.aws.regionstring
frontendPolicies.tracing.policies.backendAuth.aws.sessionTokenstring
frontendPolicies.tracing.policies.backendAuth.azureobjectExactly one of explicitConfig, developerImplicit, or implicit may be set.
frontendPolicies.tracing.policies.backendAuth.azure.explicitConfigobjectExactly one of clientSecret, managedIdentity, or workloadIdentity may be set.
frontendPolicies.tracing.policies.backendAuth.azure.explicitConfig.clientSecretobject
frontendPolicies.tracing.policies.backendAuth.azure.explicitConfig.clientSecret.tenant_idstring
frontendPolicies.tracing.policies.backendAuth.azure.explicitConfig.clientSecret.client_idstring
frontendPolicies.tracing.policies.backendAuth.azure.explicitConfig.clientSecret.client_secretstring
frontendPolicies.tracing.policies.backendAuth.azure.explicitConfig.managedIdentityobject
frontendPolicies.tracing.policies.backendAuth.azure.explicitConfig.managedIdentity.userAssignedIdentityobject
frontendPolicies.tracing.policies.backendAuth.azure.explicitConfig.managedIdentity.userAssignedIdentity.clientIdstring
frontendPolicies.tracing.policies.backendAuth.azure.explicitConfig.managedIdentity.userAssignedIdentity.objectIdstring
frontendPolicies.tracing.policies.backendAuth.azure.explicitConfig.managedIdentity.userAssignedIdentity.resourceIdstring
frontendPolicies.tracing.policies.backendAuth.azure.explicitConfig.workloadIdentityobject
frontendPolicies.tracing.policies.backendAuth.azure.developerImplicitobject
frontendPolicies.tracing.policies.backendAuth.azure.implicitobject
frontendPolicies.tracing.policies.httpobjectSpecify HTTP settings for the backend
frontendPolicies.tracing.policies.http.versionstring
frontendPolicies.tracing.policies.http.requestTimeoutstring
frontendPolicies.tracing.policies.tcpobjectSpecify TCP settings for the backend
frontendPolicies.tracing.policies.tcp.keepalivesobject
frontendPolicies.tracing.policies.tcp.keepalives.enabledboolean
frontendPolicies.tracing.policies.tcp.keepalives.timestring
frontendPolicies.tracing.policies.tcp.keepalives.intervalstring
frontendPolicies.tracing.policies.tcp.keepalives.retriesinteger
frontendPolicies.tracing.policies.tcp.connectTimeoutobject
frontendPolicies.tracing.policies.tcp.connectTimeout.secsinteger
frontendPolicies.tracing.policies.tcp.connectTimeout.nanosinteger
frontendPolicies.tracing.policies.healthobjectHealth policy for backend outlier detection; evicts on unhealthy responses based on CEL condition and configurable duration.
frontendPolicies.tracing.policies.health.unhealthyExpressionstringCEL expression; true means unhealthy (evict). E.g. response.code >= 500.
When unset, any 5xx or connection failure is treated as unhealthy.
frontendPolicies.tracing.policies.health.evictionobjectLocal/config eviction sub-policy with duration as string; mirrors Eviction.
frontendPolicies.tracing.policies.health.eviction.durationstring
frontendPolicies.tracing.policies.health.eviction.restoreHealthnumber
frontendPolicies.tracing.policies.health.eviction.consecutiveFailuresinteger
frontendPolicies.tracing.policies.health.eviction.healthThresholdnumber
frontendPolicies.tracing.policies.backendTunnelobjectSpecify a tunnel to use when connecting to the backend
frontendPolicies.tracing.policies.backendTunnel.proxyobjectReference to the proxy address
Exactly one of service, host, or backend may be set.
frontendPolicies.tracing.policies.backendTunnel.proxy.serviceobject
frontendPolicies.tracing.policies.backendTunnel.proxy.service.nameobject
frontendPolicies.tracing.policies.backendTunnel.proxy.service.name.namespacestring
frontendPolicies.tracing.policies.backendTunnel.proxy.service.name.hostnamestring
frontendPolicies.tracing.policies.backendTunnel.proxy.service.portinteger
frontendPolicies.tracing.policies.backendTunnel.proxy.hoststringHostname or IP address
frontendPolicies.tracing.policies.backendTunnel.proxy.backendstringExplicit backend reference. Backend must be defined in the top level backends list
frontendPolicies.tracing.attributesobjectSpan attributes to add, keyed by attribute name.
frontendPolicies.tracing.resourcesobjectResource attributes to add to the tracer provider (OTel Resource).
This can be used to set things like service.name dynamically.
frontendPolicies.tracing.remove[]stringAttribute keys to remove from the emitted span attributes.

This is applied before attributes are evaluated/added, so it can be used to drop
default attributes or avoid duplication.
frontendPolicies.tracing.randomSamplingstringOptional per-policy override for random sampling. If set, overrides global config for
requests that use this frontend policy.
frontendPolicies.tracing.clientSamplingstringOptional per-policy override for client sampling. If set, overrides global config for
requests that use this frontend policy.
frontendPolicies.tracing.pathstring
frontendPolicies.tracing.protocolstring
policies[]objectpolicies defines additional policies that can be attached to various other configurations.
This is an advanced feature; users should typically use the inline policies field under route/gateway.
policies[].nameobject
policies[].name.namestring
policies[].name.namespacestring
policies[].targetobjectExactly one of gateway, route, or backend may be set.
policies[].target.gatewayobject
policies[].target.gateway.gatewayNamestring
policies[].target.gateway.gatewayNamespacestring
policies[].target.gateway.listenerNamestring
policies[].target.routeobject
policies[].target.route.namestring
policies[].target.route.namespacestring
policies[].target.route.ruleNamestring
policies[].target.route.kindstring
policies[].target.backendobjectExactly one of backend or service may be set.
policies[].target.backend.backendobject
policies[].target.backend.backend.namestring
policies[].target.backend.backend.namespacestring
policies[].target.backend.backend.sectionstring
policies[].target.backend.serviceobject
policies[].target.backend.service.hostnamestring
policies[].target.backend.service.namespacestring
policies[].target.backend.service.portinteger
policies[].phasestringphase defines at what level the policy runs at. Gateway policies run pre-routing, while
Route policies apply post-routing.
Only a subset of policies are eligible as Gateway policies.
In general, normal (route level) policies should be used, except you need the policy to influence
routing.
policies[].policyobject
policies[].policy.requestHeaderModifierobjectHeaders to be modified in the request.
policies[].policy.requestHeaderModifier.addobject
policies[].policy.requestHeaderModifier.setobject
policies[].policy.requestHeaderModifier.remove[]string
policies[].policy.responseHeaderModifierobjectHeaders to be modified in the response.
policies[].policy.responseHeaderModifier.addobject
policies[].policy.responseHeaderModifier.setobject
policies[].policy.responseHeaderModifier.remove[]string
policies[].policy.requestRedirectobjectDirectly respond to the request with a redirect.
policies[].policy.requestRedirect.schemestring
policies[].policy.requestRedirect.authoritystring
policies[].policy.requestRedirect.authority.fullstring
policies[].policy.requestRedirect.authority.hoststring
policies[].policy.requestRedirect.authority.portinteger
policies[].policy.requestRedirect.pathobject
policies[].policy.requestRedirect.path.fullstring
policies[].policy.requestRedirect.path.prefixstring
policies[].policy.requestRedirect.statusinteger
policies[].policy.urlRewriteobjectModify the URL path or authority.
policies[].policy.urlRewrite.authoritystring
policies[].policy.urlRewrite.authority.fullstring
policies[].policy.urlRewrite.authority.hoststring
policies[].policy.urlRewrite.authority.portinteger
policies[].policy.urlRewrite.pathobject
policies[].policy.urlRewrite.path.fullstring
policies[].policy.urlRewrite.path.prefixstring
policies[].policy.requestMirrorobjectMirror incoming requests to another destination.
policies[].policy.requestMirror.backendobjectExactly one of service, host, or backend may be set.
policies[].policy.requestMirror.backend.serviceobject
policies[].policy.requestMirror.backend.service.nameobject
policies[].policy.requestMirror.backend.service.name.namespacestring
policies[].policy.requestMirror.backend.service.name.hostnamestring
policies[].policy.requestMirror.backend.service.portinteger
policies[].policy.requestMirror.backend.hoststringHostname or IP address
policies[].policy.requestMirror.backend.backendstringExplicit backend reference. Backend must be defined in the top level backends list
policies[].policy.requestMirror.percentagenumber
policies[].policy.directResponseobjectDirectly respond to the request with a static response.
policies[].policy.directResponse.bodyarray
policies[].policy.directResponse.statusinteger
policies[].policy.corsobjectHandle CORS preflight requests and append configured CORS headers to applicable requests.
policies[].policy.cors.allowCredentialsboolean
policies[].policy.cors.allowHeaders[]string
policies[].policy.cors.allowMethods[]string
policies[].policy.cors.allowOrigins[]string
policies[].policy.cors.exposeHeaders[]string
policies[].policy.cors.maxAgestring
policies[].policy.mcpAuthorizationobjectAuthorization policies for MCP access.
policies[].policy.mcpAuthorization.rules[]string
policies[].policy.authorizationobjectAuthorization policies for HTTP access.
policies[].policy.authorization.rules[]string
policies[].policy.mcpAuthenticationobjectAuthentication for MCP clients.
policies[].policy.mcpAuthentication.issuerstring
policies[].policy.mcpAuthentication.audiences[]string
policies[].policy.mcpAuthentication.providerobject
policies[].policy.mcpAuthentication.provider.auth0object
policies[].policy.mcpAuthentication.provider.keycloakobject
policies[].policy.mcpAuthentication.resourceMetadataobject
policies[].policy.mcpAuthentication.jwksobject
policies[].policy.mcpAuthentication.jwks.filestring
policies[].policy.mcpAuthentication.jwks.urlstring
policies[].policy.mcpAuthentication.modestring
policies[].policy.mcpAuthentication.jwtValidationOptionsobjectJWT validation options controlling which claims must be present in a token.

The required_claims set specifies which RFC 7519 registered claims must
exist in the token payload before validation proceeds. Only the following
values are recognized: exp, nbf, aud, iss, sub. Other registered
claims such as iat and jti are not enforced by the underlying
jsonwebtoken library and will be silently ignored.

This only enforces presence. Standard claims like exp and nbf
have their values validated independently (e.g., expiry is always checked
when the exp claim is present, regardless of this setting).

Defaults to ["exp"].
policies[].policy.mcpAuthentication.jwtValidationOptions.requiredClaims[]stringClaims that must be present in the token before validation.
Only “exp”, “nbf”, “aud”, “iss”, “sub” are enforced; others
(including “iat” and “jti”) are ignored.
Defaults to [“exp”]. Use an empty list to require no claims.
policies[].policy.a2aobjectMark this traffic as A2A to enable A2A processing and telemetry.
policies[].policy.aiobjectMark this as LLM traffic to enable LLM processing.
policies[].policy.ai.promptGuardobject
policies[].policy.ai.promptGuard.request[]object
policies[].policy.ai.promptGuard.request[].regexobject
policies[].policy.ai.promptGuard.request[].regex.actionstring
policies[].policy.ai.promptGuard.request[].regex.rules[]object
policies[].policy.ai.promptGuard.request[].regex.rules[].builtinstring
policies[].policy.ai.promptGuard.request[].regex.rules[].patternstring
policies[].policy.ai.promptGuard.request[].webhookobject
policies[].policy.ai.promptGuard.request[].webhook.targetobjectExactly one of service, host, or backend may be set.
policies[].policy.ai.promptGuard.request[].webhook.target.serviceobject
policies[].policy.ai.promptGuard.request[].webhook.target.service.nameobject
policies[].policy.ai.promptGuard.request[].webhook.target.service.name.namespacestring
policies[].policy.ai.promptGuard.request[].webhook.target.service.name.hostnamestring
policies[].policy.ai.promptGuard.request[].webhook.target.service.portinteger
policies[].policy.ai.promptGuard.request[].webhook.target.hoststringHostname or IP address
policies[].policy.ai.promptGuard.request[].webhook.target.backendstringExplicit backend reference. Backend must be defined in the top level backends list
policies[].policy.ai.promptGuard.request[].webhook.forwardHeaderMatches[]object
policies[].policy.ai.promptGuard.request[].webhook.forwardHeaderMatches[].namestring
policies[].policy.ai.promptGuard.request[].webhook.forwardHeaderMatches[].valueobjectExactly one of exact or regex may be set.
policies[].policy.ai.promptGuard.request[].webhook.forwardHeaderMatches[].value.exactstring
policies[].policy.ai.promptGuard.request[].webhook.forwardHeaderMatches[].value.regexstring
policies[].policy.ai.promptGuard.request[].openAIModerationobject
policies[].policy.ai.promptGuard.request[].openAIModeration.modelstringModel to use. Defaults to omni-moderation-latest
policies[].policy.ai.promptGuard.request[].openAIModeration.policiesobject
policies[].policy.ai.promptGuard.request[].openAIModeration.policies.requestHeaderModifierobjectHeaders to be modified in the request.
policies[].policy.ai.promptGuard.request[].openAIModeration.policies.requestHeaderModifier.addobject
policies[].policy.ai.promptGuard.request[].openAIModeration.policies.requestHeaderModifier.setobject
policies[].policy.ai.promptGuard.request[].openAIModeration.policies.requestHeaderModifier.remove[]string
policies[].policy.ai.promptGuard.request[].openAIModeration.policies.responseHeaderModifierobjectHeaders to be modified in the response.
policies[].policy.ai.promptGuard.request[].openAIModeration.policies.responseHeaderModifier.addobject
policies[].policy.ai.promptGuard.request[].openAIModeration.policies.responseHeaderModifier.setobject
policies[].policy.ai.promptGuard.request[].openAIModeration.policies.responseHeaderModifier.remove[]string
policies[].policy.ai.promptGuard.request[].openAIModeration.policies.requestRedirectobjectDirectly respond to the request with a redirect.
policies[].policy.ai.promptGuard.request[].openAIModeration.policies.requestRedirect.schemestring
policies[].policy.ai.promptGuard.request[].openAIModeration.policies.requestRedirect.authoritystring
policies[].policy.ai.promptGuard.request[].openAIModeration.policies.requestRedirect.authority.fullstring
policies[].policy.ai.promptGuard.request[].openAIModeration.policies.requestRedirect.authority.hoststring
policies[].policy.ai.promptGuard.request[].openAIModeration.policies.requestRedirect.authority.portinteger
policies[].policy.ai.promptGuard.request[].openAIModeration.policies.requestRedirect.pathobject
policies[].policy.ai.promptGuard.request[].openAIModeration.policies.requestRedirect.path.fullstring
policies[].policy.ai.promptGuard.request[].openAIModeration.policies.requestRedirect.path.prefixstring
policies[].policy.ai.promptGuard.request[].openAIModeration.policies.requestRedirect.statusinteger
policies[].policy.ai.promptGuard.request[].openAIModeration.policies.transformationsobjectModify requests and responses sent to and from the backend.
policies[].policy.ai.promptGuard.request[].openAIModeration.policies.transformations.requestobject
policies[].policy.ai.promptGuard.request[].openAIModeration.policies.transformations.request.addobject
policies[].policy.ai.promptGuard.request[].openAIModeration.policies.transformations.request.setobject
policies[].policy.ai.promptGuard.request[].openAIModeration.policies.transformations.request.remove[]string
policies[].policy.ai.promptGuard.request[].openAIModeration.policies.transformations.request.bodystring
policies[].policy.ai.promptGuard.request[].openAIModeration.policies.transformations.request.metadataobject
policies[].policy.ai.promptGuard.request[].openAIModeration.policies.transformations.responseobject
policies[].policy.ai.promptGuard.request[].openAIModeration.policies.transformations.response.addobject
policies[].policy.ai.promptGuard.request[].openAIModeration.policies.transformations.response.setobject
policies[].policy.ai.promptGuard.request[].openAIModeration.policies.transformations.response.remove[]string
policies[].policy.ai.promptGuard.request[].openAIModeration.policies.transformations.response.bodystring
policies[].policy.ai.promptGuard.request[].openAIModeration.policies.transformations.response.metadataobject
policies[].policy.ai.promptGuard.request[].openAIModeration.policies.backendTLSobjectSend TLS to the backend.
policies[].policy.ai.promptGuard.request[].openAIModeration.policies.backendTLS.certstring
policies[].policy.ai.promptGuard.request[].openAIModeration.policies.backendTLS.keystring
policies[].policy.ai.promptGuard.request[].openAIModeration.policies.backendTLS.rootstring
policies[].policy.ai.promptGuard.request[].openAIModeration.policies.backendTLS.hostnamestring
policies[].policy.ai.promptGuard.request[].openAIModeration.policies.backendTLS.insecureboolean
policies[].policy.ai.promptGuard.request[].openAIModeration.policies.backendTLS.insecureHostboolean
policies[].policy.ai.promptGuard.request[].openAIModeration.policies.backendTLS.alpn[]string
policies[].policy.ai.promptGuard.request[].openAIModeration.policies.backendTLS.subjectAltNames[]string
policies[].policy.ai.promptGuard.request[].openAIModeration.policies.backendAuthobjectAuthenticate to the backend.
policies[].policy.ai.promptGuard.request[].openAIModeration.policies.backendAuth.passthroughobject
policies[].policy.ai.promptGuard.request[].openAIModeration.policies.backendAuth.keyobject
policies[].policy.ai.promptGuard.request[].openAIModeration.policies.backendAuth.key.filestring
policies[].policy.ai.promptGuard.request[].openAIModeration.policies.backendAuth.gcpobject
policies[].policy.ai.promptGuard.request[].openAIModeration.policies.backendAuth.gcp.typestring
policies[].policy.ai.promptGuard.request[].openAIModeration.policies.backendAuth.gcp.audiencestringAudience for the token. If not set, the destination host will be used.
policies[].policy.ai.promptGuard.request[].openAIModeration.policies.backendAuth.gcp.typestring
policies[].policy.ai.promptGuard.request[].openAIModeration.policies.backendAuth.awsobject
policies[].policy.ai.promptGuard.request[].openAIModeration.policies.backendAuth.aws.accessKeyIdstring
policies[].policy.ai.promptGuard.request[].openAIModeration.policies.backendAuth.aws.secretAccessKeystring
policies[].policy.ai.promptGuard.request[].openAIModeration.policies.backendAuth.aws.regionstring
policies[].policy.ai.promptGuard.request[].openAIModeration.policies.backendAuth.aws.sessionTokenstring
policies[].policy.ai.promptGuard.request[].openAIModeration.policies.backendAuth.azureobjectExactly one of explicitConfig, developerImplicit, or implicit may be set.
policies[].policy.ai.promptGuard.request[].openAIModeration.policies.backendAuth.azure.explicitConfigobjectExactly one of clientSecret, managedIdentity, or workloadIdentity may be set.
policies[].policy.ai.promptGuard.request[].openAIModeration.policies.backendAuth.azure.explicitConfig.clientSecretobject
policies[].policy.ai.promptGuard.request[].openAIModeration.policies.backendAuth.azure.explicitConfig.clientSecret.tenant_idstring
policies[].policy.ai.promptGuard.request[].openAIModeration.policies.backendAuth.azure.explicitConfig.clientSecret.client_idstring
policies[].policy.ai.promptGuard.request[].openAIModeration.policies.backendAuth.azure.explicitConfig.clientSecret.client_secretstring
policies[].policy.ai.promptGuard.request[].openAIModeration.policies.backendAuth.azure.explicitConfig.managedIdentityobject
policies[].policy.ai.promptGuard.request[].openAIModeration.policies.backendAuth.azure.explicitConfig.managedIdentity.userAssignedIdentityobject
policies[].policy.ai.promptGuard.request[].openAIModeration.policies.backendAuth.azure.explicitConfig.managedIdentity.userAssignedIdentity.clientIdstring
policies[].policy.ai.promptGuard.request[].openAIModeration.policies.backendAuth.azure.explicitConfig.managedIdentity.userAssignedIdentity.objectIdstring
policies[].policy.ai.promptGuard.request[].openAIModeration.policies.backendAuth.azure.explicitConfig.managedIdentity.userAssignedIdentity.resourceIdstring
policies[].policy.ai.promptGuard.request[].openAIModeration.policies.backendAuth.azure.explicitConfig.workloadIdentityobject
policies[].policy.ai.promptGuard.request[].openAIModeration.policies.backendAuth.azure.developerImplicitobject
policies[].policy.ai.promptGuard.request[].openAIModeration.policies.backendAuth.azure.implicitobject
policies[].policy.ai.promptGuard.request[].openAIModeration.policies.httpobjectSpecify HTTP settings for the backend
policies[].policy.ai.promptGuard.request[].openAIModeration.policies.http.versionstring
policies[].policy.ai.promptGuard.request[].openAIModeration.policies.http.requestTimeoutstring
policies[].policy.ai.promptGuard.request[].openAIModeration.policies.tcpobjectSpecify TCP settings for the backend
policies[].policy.ai.promptGuard.request[].openAIModeration.policies.tcp.keepalivesobject
policies[].policy.ai.promptGuard.request[].openAIModeration.policies.tcp.keepalives.enabledboolean
policies[].policy.ai.promptGuard.request[].openAIModeration.policies.tcp.keepalives.timestring
policies[].policy.ai.promptGuard.request[].openAIModeration.policies.tcp.keepalives.intervalstring
policies[].policy.ai.promptGuard.request[].openAIModeration.policies.tcp.keepalives.retriesinteger
policies[].policy.ai.promptGuard.request[].openAIModeration.policies.tcp.connectTimeoutobject
policies[].policy.ai.promptGuard.request[].openAIModeration.policies.tcp.connectTimeout.secsinteger
policies[].policy.ai.promptGuard.request[].openAIModeration.policies.tcp.connectTimeout.nanosinteger
policies[].policy.ai.promptGuard.request[].openAIModeration.policies.healthobjectHealth policy for backend outlier detection; evicts on unhealthy responses based on CEL condition and configurable duration.
policies[].policy.ai.promptGuard.request[].openAIModeration.policies.health.unhealthyExpressionstringCEL expression; true means unhealthy (evict). E.g. response.code >= 500.
When unset, any 5xx or connection failure is treated as unhealthy.
policies[].policy.ai.promptGuard.request[].openAIModeration.policies.health.evictionobjectLocal/config eviction sub-policy with duration as string; mirrors Eviction.
policies[].policy.ai.promptGuard.request[].openAIModeration.policies.health.eviction.durationstring
policies[].policy.ai.promptGuard.request[].openAIModeration.policies.health.eviction.restoreHealthnumber
policies[].policy.ai.promptGuard.request[].openAIModeration.policies.health.eviction.consecutiveFailuresinteger
policies[].policy.ai.promptGuard.request[].openAIModeration.policies.health.eviction.healthThresholdnumber
policies[].policy.ai.promptGuard.request[].openAIModeration.policies.backendTunnelobjectSpecify a tunnel to use when connecting to the backend
policies[].policy.ai.promptGuard.request[].openAIModeration.policies.backendTunnel.proxyobjectReference to the proxy address
Exactly one of service, host, or backend may be set.
policies[].policy.ai.promptGuard.request[].openAIModeration.policies.backendTunnel.proxy.serviceobject
policies[].policy.ai.promptGuard.request[].openAIModeration.policies.backendTunnel.proxy.service.nameobject
policies[].policy.ai.promptGuard.request[].openAIModeration.policies.backendTunnel.proxy.service.name.namespacestring
policies[].policy.ai.promptGuard.request[].openAIModeration.policies.backendTunnel.proxy.service.name.hostnamestring
policies[].policy.ai.promptGuard.request[].openAIModeration.policies.backendTunnel.proxy.service.portinteger
policies[].policy.ai.promptGuard.request[].openAIModeration.policies.backendTunnel.proxy.hoststringHostname or IP address
policies[].policy.ai.promptGuard.request[].openAIModeration.policies.backendTunnel.proxy.backendstringExplicit backend reference. Backend must be defined in the top level backends list
policies[].policy.ai.promptGuard.request[].bedrockGuardrailsobjectConfiguration for AWS Bedrock Guardrails integration.
policies[].policy.ai.promptGuard.request[].bedrockGuardrails.guardrailIdentifierstringThe unique identifier of the guardrail
policies[].policy.ai.promptGuard.request[].bedrockGuardrails.guardrailVersionstringThe version of the guardrail
policies[].policy.ai.promptGuard.request[].bedrockGuardrails.regionstringAWS region where the guardrail is deployed
policies[].policy.ai.promptGuard.request[].bedrockGuardrails.policiesobjectBackend policies for AWS authentication (optional, defaults to implicit AWS auth)
policies[].policy.ai.promptGuard.request[].bedrockGuardrails.policies.requestHeaderModifierobjectHeaders to be modified in the request.
policies[].policy.ai.promptGuard.request[].bedrockGuardrails.policies.requestHeaderModifier.addobject
policies[].policy.ai.promptGuard.request[].bedrockGuardrails.policies.requestHeaderModifier.setobject
policies[].policy.ai.promptGuard.request[].bedrockGuardrails.policies.requestHeaderModifier.remove[]string
policies[].policy.ai.promptGuard.request[].bedrockGuardrails.policies.responseHeaderModifierobjectHeaders to be modified in the response.
policies[].policy.ai.promptGuard.request[].bedrockGuardrails.policies.responseHeaderModifier.addobject
policies[].policy.ai.promptGuard.request[].bedrockGuardrails.policies.responseHeaderModifier.setobject
policies[].policy.ai.promptGuard.request[].bedrockGuardrails.policies.responseHeaderModifier.remove[]string
policies[].policy.ai.promptGuard.request[].bedrockGuardrails.policies.requestRedirectobjectDirectly respond to the request with a redirect.
policies[].policy.ai.promptGuard.request[].bedrockGuardrails.policies.requestRedirect.schemestring
policies[].policy.ai.promptGuard.request[].bedrockGuardrails.policies.requestRedirect.authoritystring
policies[].policy.ai.promptGuard.request[].bedrockGuardrails.policies.requestRedirect.authority.fullstring
policies[].policy.ai.promptGuard.request[].bedrockGuardrails.policies.requestRedirect.authority.hoststring
policies[].policy.ai.promptGuard.request[].bedrockGuardrails.policies.requestRedirect.authority.portinteger
policies[].policy.ai.promptGuard.request[].bedrockGuardrails.policies.requestRedirect.pathobject
policies[].policy.ai.promptGuard.request[].bedrockGuardrails.policies.requestRedirect.path.fullstring
policies[].policy.ai.promptGuard.request[].bedrockGuardrails.policies.requestRedirect.path.prefixstring
policies[].policy.ai.promptGuard.request[].bedrockGuardrails.policies.requestRedirect.statusinteger
policies[].policy.ai.promptGuard.request[].bedrockGuardrails.policies.transformationsobjectModify requests and responses sent to and from the backend.
policies[].policy.ai.promptGuard.request[].bedrockGuardrails.policies.transformations.requestobject
policies[].policy.ai.promptGuard.request[].bedrockGuardrails.policies.transformations.request.addobject
policies[].policy.ai.promptGuard.request[].bedrockGuardrails.policies.transformations.request.setobject
policies[].policy.ai.promptGuard.request[].bedrockGuardrails.policies.transformations.request.remove[]string
policies[].policy.ai.promptGuard.request[].bedrockGuardrails.policies.transformations.request.bodystring
policies[].policy.ai.promptGuard.request[].bedrockGuardrails.policies.transformations.request.metadataobject
policies[].policy.ai.promptGuard.request[].bedrockGuardrails.policies.transformations.responseobject
policies[].policy.ai.promptGuard.request[].bedrockGuardrails.policies.transformations.response.addobject
policies[].policy.ai.promptGuard.request[].bedrockGuardrails.policies.transformations.response.setobject
policies[].policy.ai.promptGuard.request[].bedrockGuardrails.policies.transformations.response.remove[]string
policies[].policy.ai.promptGuard.request[].bedrockGuardrails.policies.transformations.response.bodystring
policies[].policy.ai.promptGuard.request[].bedrockGuardrails.policies.transformations.response.metadataobject
policies[].policy.ai.promptGuard.request[].bedrockGuardrails.policies.backendTLSobjectSend TLS to the backend.
policies[].policy.ai.promptGuard.request[].bedrockGuardrails.policies.backendTLS.certstring
policies[].policy.ai.promptGuard.request[].bedrockGuardrails.policies.backendTLS.keystring
policies[].policy.ai.promptGuard.request[].bedrockGuardrails.policies.backendTLS.rootstring
policies[].policy.ai.promptGuard.request[].bedrockGuardrails.policies.backendTLS.hostnamestring
policies[].policy.ai.promptGuard.request[].bedrockGuardrails.policies.backendTLS.insecureboolean
policies[].policy.ai.promptGuard.request[].bedrockGuardrails.policies.backendTLS.insecureHostboolean
policies[].policy.ai.promptGuard.request[].bedrockGuardrails.policies.backendTLS.alpn[]string
policies[].policy.ai.promptGuard.request[].bedrockGuardrails.policies.backendTLS.subjectAltNames[]string
policies[].policy.ai.promptGuard.request[].bedrockGuardrails.policies.backendAuthobjectAuthenticate to the backend.
policies[].policy.ai.promptGuard.request[].bedrockGuardrails.policies.backendAuth.passthroughobject
policies[].policy.ai.promptGuard.request[].bedrockGuardrails.policies.backendAuth.keyobject
policies[].policy.ai.promptGuard.request[].bedrockGuardrails.policies.backendAuth.key.filestring
policies[].policy.ai.promptGuard.request[].bedrockGuardrails.policies.backendAuth.gcpobject
policies[].policy.ai.promptGuard.request[].bedrockGuardrails.policies.backendAuth.gcp.typestring
policies[].policy.ai.promptGuard.request[].bedrockGuardrails.policies.backendAuth.gcp.audiencestringAudience for the token. If not set, the destination host will be used.
policies[].policy.ai.promptGuard.request[].bedrockGuardrails.policies.backendAuth.gcp.typestring
policies[].policy.ai.promptGuard.request[].bedrockGuardrails.policies.backendAuth.awsobject
policies[].policy.ai.promptGuard.request[].bedrockGuardrails.policies.backendAuth.aws.accessKeyIdstring
policies[].policy.ai.promptGuard.request[].bedrockGuardrails.policies.backendAuth.aws.secretAccessKeystring
policies[].policy.ai.promptGuard.request[].bedrockGuardrails.policies.backendAuth.aws.regionstring
policies[].policy.ai.promptGuard.request[].bedrockGuardrails.policies.backendAuth.aws.sessionTokenstring
policies[].policy.ai.promptGuard.request[].bedrockGuardrails.policies.backendAuth.azureobjectExactly one of explicitConfig, developerImplicit, or implicit may be set.
policies[].policy.ai.promptGuard.request[].bedrockGuardrails.policies.backendAuth.azure.explicitConfigobjectExactly one of clientSecret, managedIdentity, or workloadIdentity may be set.
policies[].policy.ai.promptGuard.request[].bedrockGuardrails.policies.backendAuth.azure.explicitConfig.clientSecretobject
policies[].policy.ai.promptGuard.request[].bedrockGuardrails.policies.backendAuth.azure.explicitConfig.clientSecret.tenant_idstring
policies[].policy.ai.promptGuard.request[].bedrockGuardrails.policies.backendAuth.azure.explicitConfig.clientSecret.client_idstring
policies[].policy.ai.promptGuard.request[].bedrockGuardrails.policies.backendAuth.azure.explicitConfig.clientSecret.client_secretstring
policies[].policy.ai.promptGuard.request[].bedrockGuardrails.policies.backendAuth.azure.explicitConfig.managedIdentityobject
policies[].policy.ai.promptGuard.request[].bedrockGuardrails.policies.backendAuth.azure.explicitConfig.managedIdentity.userAssignedIdentityobject
policies[].policy.ai.promptGuard.request[].bedrockGuardrails.policies.backendAuth.azure.explicitConfig.managedIdentity.userAssignedIdentity.clientIdstring
policies[].policy.ai.promptGuard.request[].bedrockGuardrails.policies.backendAuth.azure.explicitConfig.managedIdentity.userAssignedIdentity.objectIdstring
policies[].policy.ai.promptGuard.request[].bedrockGuardrails.policies.backendAuth.azure.explicitConfig.managedIdentity.userAssignedIdentity.resourceIdstring
policies[].policy.ai.promptGuard.request[].bedrockGuardrails.policies.backendAuth.azure.explicitConfig.workloadIdentityobject
policies[].policy.ai.promptGuard.request[].bedrockGuardrails.policies.backendAuth.azure.developerImplicitobject
policies[].policy.ai.promptGuard.request[].bedrockGuardrails.policies.backendAuth.azure.implicitobject
policies[].policy.ai.promptGuard.request[].bedrockGuardrails.policies.httpobjectSpecify HTTP settings for the backend
policies[].policy.ai.promptGuard.request[].bedrockGuardrails.policies.http.versionstring
policies[].policy.ai.promptGuard.request[].bedrockGuardrails.policies.http.requestTimeoutstring
policies[].policy.ai.promptGuard.request[].bedrockGuardrails.policies.tcpobjectSpecify TCP settings for the backend
policies[].policy.ai.promptGuard.request[].bedrockGuardrails.policies.tcp.keepalivesobject
policies[].policy.ai.promptGuard.request[].bedrockGuardrails.policies.tcp.keepalives.enabledboolean
policies[].policy.ai.promptGuard.request[].bedrockGuardrails.policies.tcp.keepalives.timestring
policies[].policy.ai.promptGuard.request[].bedrockGuardrails.policies.tcp.keepalives.intervalstring
policies[].policy.ai.promptGuard.request[].bedrockGuardrails.policies.tcp.keepalives.retriesinteger
policies[].policy.ai.promptGuard.request[].bedrockGuardrails.policies.tcp.connectTimeoutobject
policies[].policy.ai.promptGuard.request[].bedrockGuardrails.policies.tcp.connectTimeout.secsinteger
policies[].policy.ai.promptGuard.request[].bedrockGuardrails.policies.tcp.connectTimeout.nanosinteger
policies[].policy.ai.promptGuard.request[].bedrockGuardrails.policies.healthobjectHealth policy for backend outlier detection; evicts on unhealthy responses based on CEL condition and configurable duration.
policies[].policy.ai.promptGuard.request[].bedrockGuardrails.policies.health.unhealthyExpressionstringCEL expression; true means unhealthy (evict). E.g. response.code >= 500.
When unset, any 5xx or connection failure is treated as unhealthy.
policies[].policy.ai.promptGuard.request[].bedrockGuardrails.policies.health.evictionobjectLocal/config eviction sub-policy with duration as string; mirrors Eviction.
policies[].policy.ai.promptGuard.request[].bedrockGuardrails.policies.health.eviction.durationstring
policies[].policy.ai.promptGuard.request[].bedrockGuardrails.policies.health.eviction.restoreHealthnumber
policies[].policy.ai.promptGuard.request[].bedrockGuardrails.policies.health.eviction.consecutiveFailuresinteger
policies[].policy.ai.promptGuard.request[].bedrockGuardrails.policies.health.eviction.healthThresholdnumber
policies[].policy.ai.promptGuard.request[].bedrockGuardrails.policies.backendTunnelobjectSpecify a tunnel to use when connecting to the backend
policies[].policy.ai.promptGuard.request[].bedrockGuardrails.policies.backendTunnel.proxyobjectReference to the proxy address
Exactly one of service, host, or backend may be set.
policies[].policy.ai.promptGuard.request[].bedrockGuardrails.policies.backendTunnel.proxy.serviceobject
policies[].policy.ai.promptGuard.request[].bedrockGuardrails.policies.backendTunnel.proxy.service.nameobject
policies[].policy.ai.promptGuard.request[].bedrockGuardrails.policies.backendTunnel.proxy.service.name.namespacestring
policies[].policy.ai.promptGuard.request[].bedrockGuardrails.policies.backendTunnel.proxy.service.name.hostnamestring
policies[].policy.ai.promptGuard.request[].bedrockGuardrails.policies.backendTunnel.proxy.service.portinteger
policies[].policy.ai.promptGuard.request[].bedrockGuardrails.policies.backendTunnel.proxy.hoststringHostname or IP address
policies[].policy.ai.promptGuard.request[].bedrockGuardrails.policies.backendTunnel.proxy.backendstringExplicit backend reference. Backend must be defined in the top level backends list
policies[].policy.ai.promptGuard.request[].googleModelArmorobjectConfiguration for Google Cloud Model Armor integration.
policies[].policy.ai.promptGuard.request[].googleModelArmor.templateIdstringThe template ID for the Model Armor configuration
policies[].policy.ai.promptGuard.request[].googleModelArmor.projectIdstringThe GCP project ID
policies[].policy.ai.promptGuard.request[].googleModelArmor.locationstringThe GCP region (default: us-central1)
policies[].policy.ai.promptGuard.request[].googleModelArmor.policiesobjectBackend policies for GCP authentication (optional, defaults to implicit GCP auth)
policies[].policy.ai.promptGuard.request[].googleModelArmor.policies.requestHeaderModifierobjectHeaders to be modified in the request.
policies[].policy.ai.promptGuard.request[].googleModelArmor.policies.requestHeaderModifier.addobject
policies[].policy.ai.promptGuard.request[].googleModelArmor.policies.requestHeaderModifier.setobject
policies[].policy.ai.promptGuard.request[].googleModelArmor.policies.requestHeaderModifier.remove[]string
policies[].policy.ai.promptGuard.request[].googleModelArmor.policies.responseHeaderModifierobjectHeaders to be modified in the response.
policies[].policy.ai.promptGuard.request[].googleModelArmor.policies.responseHeaderModifier.addobject
policies[].policy.ai.promptGuard.request[].googleModelArmor.policies.responseHeaderModifier.setobject
policies[].policy.ai.promptGuard.request[].googleModelArmor.policies.responseHeaderModifier.remove[]string
policies[].policy.ai.promptGuard.request[].googleModelArmor.policies.requestRedirectobjectDirectly respond to the request with a redirect.
policies[].policy.ai.promptGuard.request[].googleModelArmor.policies.requestRedirect.schemestring
policies[].policy.ai.promptGuard.request[].googleModelArmor.policies.requestRedirect.authoritystring
policies[].policy.ai.promptGuard.request[].googleModelArmor.policies.requestRedirect.authority.fullstring
policies[].policy.ai.promptGuard.request[].googleModelArmor.policies.requestRedirect.authority.hoststring
policies[].policy.ai.promptGuard.request[].googleModelArmor.policies.requestRedirect.authority.portinteger
policies[].policy.ai.promptGuard.request[].googleModelArmor.policies.requestRedirect.pathobject
policies[].policy.ai.promptGuard.request[].googleModelArmor.policies.requestRedirect.path.fullstring
policies[].policy.ai.promptGuard.request[].googleModelArmor.policies.requestRedirect.path.prefixstring
policies[].policy.ai.promptGuard.request[].googleModelArmor.policies.requestRedirect.statusinteger
policies[].policy.ai.promptGuard.request[].googleModelArmor.policies.transformationsobjectModify requests and responses sent to and from the backend.
policies[].policy.ai.promptGuard.request[].googleModelArmor.policies.transformations.requestobject
policies[].policy.ai.promptGuard.request[].googleModelArmor.policies.transformations.request.addobject
policies[].policy.ai.promptGuard.request[].googleModelArmor.policies.transformations.request.setobject
policies[].policy.ai.promptGuard.request[].googleModelArmor.policies.transformations.request.remove[]string
policies[].policy.ai.promptGuard.request[].googleModelArmor.policies.transformations.request.bodystring
policies[].policy.ai.promptGuard.request[].googleModelArmor.policies.transformations.request.metadataobject
policies[].policy.ai.promptGuard.request[].googleModelArmor.policies.transformations.responseobject
policies[].policy.ai.promptGuard.request[].googleModelArmor.policies.transformations.response.addobject
policies[].policy.ai.promptGuard.request[].googleModelArmor.policies.transformations.response.setobject
policies[].policy.ai.promptGuard.request[].googleModelArmor.policies.transformations.response.remove[]string
policies[].policy.ai.promptGuard.request[].googleModelArmor.policies.transformations.response.bodystring
policies[].policy.ai.promptGuard.request[].googleModelArmor.policies.transformations.response.metadataobject
policies[].policy.ai.promptGuard.request[].googleModelArmor.policies.backendTLSobjectSend TLS to the backend.
policies[].policy.ai.promptGuard.request[].googleModelArmor.policies.backendTLS.certstring
policies[].policy.ai.promptGuard.request[].googleModelArmor.policies.backendTLS.keystring
policies[].policy.ai.promptGuard.request[].googleModelArmor.policies.backendTLS.rootstring
policies[].policy.ai.promptGuard.request[].googleModelArmor.policies.backendTLS.hostnamestring
policies[].policy.ai.promptGuard.request[].googleModelArmor.policies.backendTLS.insecureboolean
policies[].policy.ai.promptGuard.request[].googleModelArmor.policies.backendTLS.insecureHostboolean
policies[].policy.ai.promptGuard.request[].googleModelArmor.policies.backendTLS.alpn[]string
policies[].policy.ai.promptGuard.request[].googleModelArmor.policies.backendTLS.subjectAltNames[]string
policies[].policy.ai.promptGuard.request[].googleModelArmor.policies.backendAuthobjectAuthenticate to the backend.
policies[].policy.ai.promptGuard.request[].googleModelArmor.policies.backendAuth.passthroughobject
policies[].policy.ai.promptGuard.request[].googleModelArmor.policies.backendAuth.keyobject
policies[].policy.ai.promptGuard.request[].googleModelArmor.policies.backendAuth.key.filestring
policies[].policy.ai.promptGuard.request[].googleModelArmor.policies.backendAuth.gcpobject
policies[].policy.ai.promptGuard.request[].googleModelArmor.policies.backendAuth.gcp.typestring
policies[].policy.ai.promptGuard.request[].googleModelArmor.policies.backendAuth.gcp.audiencestringAudience for the token. If not set, the destination host will be used.
policies[].policy.ai.promptGuard.request[].googleModelArmor.policies.backendAuth.gcp.typestring
policies[].policy.ai.promptGuard.request[].googleModelArmor.policies.backendAuth.awsobject
policies[].policy.ai.promptGuard.request[].googleModelArmor.policies.backendAuth.aws.accessKeyIdstring
policies[].policy.ai.promptGuard.request[].googleModelArmor.policies.backendAuth.aws.secretAccessKeystring
policies[].policy.ai.promptGuard.request[].googleModelArmor.policies.backendAuth.aws.regionstring
policies[].policy.ai.promptGuard.request[].googleModelArmor.policies.backendAuth.aws.sessionTokenstring
policies[].policy.ai.promptGuard.request[].googleModelArmor.policies.backendAuth.azureobjectExactly one of explicitConfig, developerImplicit, or implicit may be set.
policies[].policy.ai.promptGuard.request[].googleModelArmor.policies.backendAuth.azure.explicitConfigobjectExactly one of clientSecret, managedIdentity, or workloadIdentity may be set.
policies[].policy.ai.promptGuard.request[].googleModelArmor.policies.backendAuth.azure.explicitConfig.clientSecretobject
policies[].policy.ai.promptGuard.request[].googleModelArmor.policies.backendAuth.azure.explicitConfig.clientSecret.tenant_idstring
policies[].policy.ai.promptGuard.request[].googleModelArmor.policies.backendAuth.azure.explicitConfig.clientSecret.client_idstring
policies[].policy.ai.promptGuard.request[].googleModelArmor.policies.backendAuth.azure.explicitConfig.clientSecret.client_secretstring
policies[].policy.ai.promptGuard.request[].googleModelArmor.policies.backendAuth.azure.explicitConfig.managedIdentityobject
policies[].policy.ai.promptGuard.request[].googleModelArmor.policies.backendAuth.azure.explicitConfig.managedIdentity.userAssignedIdentityobject
policies[].policy.ai.promptGuard.request[].googleModelArmor.policies.backendAuth.azure.explicitConfig.managedIdentity.userAssignedIdentity.clientIdstring
policies[].policy.ai.promptGuard.request[].googleModelArmor.policies.backendAuth.azure.explicitConfig.managedIdentity.userAssignedIdentity.objectIdstring
policies[].policy.ai.promptGuard.request[].googleModelArmor.policies.backendAuth.azure.explicitConfig.managedIdentity.userAssignedIdentity.resourceIdstring
policies[].policy.ai.promptGuard.request[].googleModelArmor.policies.backendAuth.azure.explicitConfig.workloadIdentityobject
policies[].policy.ai.promptGuard.request[].googleModelArmor.policies.backendAuth.azure.developerImplicitobject
policies[].policy.ai.promptGuard.request[].googleModelArmor.policies.backendAuth.azure.implicitobject
policies[].policy.ai.promptGuard.request[].googleModelArmor.policies.httpobjectSpecify HTTP settings for the backend
policies[].policy.ai.promptGuard.request[].googleModelArmor.policies.http.versionstring
policies[].policy.ai.promptGuard.request[].googleModelArmor.policies.http.requestTimeoutstring
policies[].policy.ai.promptGuard.request[].googleModelArmor.policies.tcpobjectSpecify TCP settings for the backend
policies[].policy.ai.promptGuard.request[].googleModelArmor.policies.tcp.keepalivesobject
policies[].policy.ai.promptGuard.request[].googleModelArmor.policies.tcp.keepalives.enabledboolean
policies[].policy.ai.promptGuard.request[].googleModelArmor.policies.tcp.keepalives.timestring
policies[].policy.ai.promptGuard.request[].googleModelArmor.policies.tcp.keepalives.intervalstring
policies[].policy.ai.promptGuard.request[].googleModelArmor.policies.tcp.keepalives.retriesinteger
policies[].policy.ai.promptGuard.request[].googleModelArmor.policies.tcp.connectTimeoutobject
policies[].policy.ai.promptGuard.request[].googleModelArmor.policies.tcp.connectTimeout.secsinteger
policies[].policy.ai.promptGuard.request[].googleModelArmor.policies.tcp.connectTimeout.nanosinteger
policies[].policy.ai.promptGuard.request[].googleModelArmor.policies.healthobjectHealth policy for backend outlier detection; evicts on unhealthy responses based on CEL condition and configurable duration.
policies[].policy.ai.promptGuard.request[].googleModelArmor.policies.health.unhealthyExpressionstringCEL expression; true means unhealthy (evict). E.g. response.code >= 500.
When unset, any 5xx or connection failure is treated as unhealthy.
policies[].policy.ai.promptGuard.request[].googleModelArmor.policies.health.evictionobjectLocal/config eviction sub-policy with duration as string; mirrors Eviction.
policies[].policy.ai.promptGuard.request[].googleModelArmor.policies.health.eviction.durationstring
policies[].policy.ai.promptGuard.request[].googleModelArmor.policies.health.eviction.restoreHealthnumber
policies[].policy.ai.promptGuard.request[].googleModelArmor.policies.health.eviction.consecutiveFailuresinteger
policies[].policy.ai.promptGuard.request[].googleModelArmor.policies.health.eviction.healthThresholdnumber
policies[].policy.ai.promptGuard.request[].googleModelArmor.policies.backendTunnelobjectSpecify a tunnel to use when connecting to the backend
policies[].policy.ai.promptGuard.request[].googleModelArmor.policies.backendTunnel.proxyobjectReference to the proxy address
Exactly one of service, host, or backend may be set.
policies[].policy.ai.promptGuard.request[].googleModelArmor.policies.backendTunnel.proxy.serviceobject
policies[].policy.ai.promptGuard.request[].googleModelArmor.policies.backendTunnel.proxy.service.nameobject
policies[].policy.ai.promptGuard.request[].googleModelArmor.policies.backendTunnel.proxy.service.name.namespacestring
policies[].policy.ai.promptGuard.request[].googleModelArmor.policies.backendTunnel.proxy.service.name.hostnamestring
policies[].policy.ai.promptGuard.request[].googleModelArmor.policies.backendTunnel.proxy.service.portinteger
policies[].policy.ai.promptGuard.request[].googleModelArmor.policies.backendTunnel.proxy.hoststringHostname or IP address
policies[].policy.ai.promptGuard.request[].googleModelArmor.policies.backendTunnel.proxy.backendstringExplicit backend reference. Backend must be defined in the top level backends list
policies[].policy.ai.promptGuard.request[].rejectionobject
policies[].policy.ai.promptGuard.request[].rejection.bodyarray
policies[].policy.ai.promptGuard.request[].rejection.statusinteger
policies[].policy.ai.promptGuard.request[].rejection.headersobjectOptional headers to add, set, or remove from the rejection response
policies[].policy.ai.promptGuard.request[].rejection.headers.addobject
policies[].policy.ai.promptGuard.request[].rejection.headers.setobject
policies[].policy.ai.promptGuard.request[].rejection.headers.remove[]string
policies[].policy.ai.promptGuard.response[]object
policies[].policy.ai.promptGuard.response[].regexobject
policies[].policy.ai.promptGuard.response[].regex.actionstring
policies[].policy.ai.promptGuard.response[].regex.rules[]object
policies[].policy.ai.promptGuard.response[].regex.rules[].builtinstring
policies[].policy.ai.promptGuard.response[].regex.rules[].patternstring
policies[].policy.ai.promptGuard.response[].webhookobject
policies[].policy.ai.promptGuard.response[].webhook.targetobjectExactly one of service, host, or backend may be set.
policies[].policy.ai.promptGuard.response[].webhook.target.serviceobject
policies[].policy.ai.promptGuard.response[].webhook.target.service.nameobject
policies[].policy.ai.promptGuard.response[].webhook.target.service.name.namespacestring
policies[].policy.ai.promptGuard.response[].webhook.target.service.name.hostnamestring
policies[].policy.ai.promptGuard.response[].webhook.target.service.portinteger
policies[].policy.ai.promptGuard.response[].webhook.target.hoststringHostname or IP address
policies[].policy.ai.promptGuard.response[].webhook.target.backendstringExplicit backend reference. Backend must be defined in the top level backends list
policies[].policy.ai.promptGuard.response[].webhook.forwardHeaderMatches[]object
policies[].policy.ai.promptGuard.response[].webhook.forwardHeaderMatches[].namestring
policies[].policy.ai.promptGuard.response[].webhook.forwardHeaderMatches[].valueobjectExactly one of exact or regex may be set.
policies[].policy.ai.promptGuard.response[].webhook.forwardHeaderMatches[].value.exactstring
policies[].policy.ai.promptGuard.response[].webhook.forwardHeaderMatches[].value.regexstring
policies[].policy.ai.promptGuard.response[].bedrockGuardrailsobjectConfiguration for AWS Bedrock Guardrails integration.
policies[].policy.ai.promptGuard.response[].bedrockGuardrails.guardrailIdentifierstringThe unique identifier of the guardrail
policies[].policy.ai.promptGuard.response[].bedrockGuardrails.guardrailVersionstringThe version of the guardrail
policies[].policy.ai.promptGuard.response[].bedrockGuardrails.regionstringAWS region where the guardrail is deployed
policies[].policy.ai.promptGuard.response[].bedrockGuardrails.policiesobjectBackend policies for AWS authentication (optional, defaults to implicit AWS auth)
policies[].policy.ai.promptGuard.response[].bedrockGuardrails.policies.requestHeaderModifierobjectHeaders to be modified in the request.
policies[].policy.ai.promptGuard.response[].bedrockGuardrails.policies.requestHeaderModifier.addobject
policies[].policy.ai.promptGuard.response[].bedrockGuardrails.policies.requestHeaderModifier.setobject
policies[].policy.ai.promptGuard.response[].bedrockGuardrails.policies.requestHeaderModifier.remove[]string
policies[].policy.ai.promptGuard.response[].bedrockGuardrails.policies.responseHeaderModifierobjectHeaders to be modified in the response.
policies[].policy.ai.promptGuard.response[].bedrockGuardrails.policies.responseHeaderModifier.addobject
policies[].policy.ai.promptGuard.response[].bedrockGuardrails.policies.responseHeaderModifier.setobject
policies[].policy.ai.promptGuard.response[].bedrockGuardrails.policies.responseHeaderModifier.remove[]string
policies[].policy.ai.promptGuard.response[].bedrockGuardrails.policies.requestRedirectobjectDirectly respond to the request with a redirect.
policies[].policy.ai.promptGuard.response[].bedrockGuardrails.policies.requestRedirect.schemestring
policies[].policy.ai.promptGuard.response[].bedrockGuardrails.policies.requestRedirect.authoritystring
policies[].policy.ai.promptGuard.response[].bedrockGuardrails.policies.requestRedirect.authority.fullstring
policies[].policy.ai.promptGuard.response[].bedrockGuardrails.policies.requestRedirect.authority.hoststring
policies[].policy.ai.promptGuard.response[].bedrockGuardrails.policies.requestRedirect.authority.portinteger
policies[].policy.ai.promptGuard.response[].bedrockGuardrails.policies.requestRedirect.pathobject
policies[].policy.ai.promptGuard.response[].bedrockGuardrails.policies.requestRedirect.path.fullstring
policies[].policy.ai.promptGuard.response[].bedrockGuardrails.policies.requestRedirect.path.prefixstring
policies[].policy.ai.promptGuard.response[].bedrockGuardrails.policies.requestRedirect.statusinteger
policies[].policy.ai.promptGuard.response[].bedrockGuardrails.policies.transformationsobjectModify requests and responses sent to and from the backend.
policies[].policy.ai.promptGuard.response[].bedrockGuardrails.policies.transformations.requestobject
policies[].policy.ai.promptGuard.response[].bedrockGuardrails.policies.transformations.request.addobject
policies[].policy.ai.promptGuard.response[].bedrockGuardrails.policies.transformations.request.setobject
policies[].policy.ai.promptGuard.response[].bedrockGuardrails.policies.transformations.request.remove[]string
policies[].policy.ai.promptGuard.response[].bedrockGuardrails.policies.transformations.request.bodystring
policies[].policy.ai.promptGuard.response[].bedrockGuardrails.policies.transformations.request.metadataobject
policies[].policy.ai.promptGuard.response[].bedrockGuardrails.policies.transformations.responseobject
policies[].policy.ai.promptGuard.response[].bedrockGuardrails.policies.transformations.response.addobject
policies[].policy.ai.promptGuard.response[].bedrockGuardrails.policies.transformations.response.setobject
policies[].policy.ai.promptGuard.response[].bedrockGuardrails.policies.transformations.response.remove[]string
policies[].policy.ai.promptGuard.response[].bedrockGuardrails.policies.transformations.response.bodystring
policies[].policy.ai.promptGuard.response[].bedrockGuardrails.policies.transformations.response.metadataobject
policies[].policy.ai.promptGuard.response[].bedrockGuardrails.policies.backendTLSobjectSend TLS to the backend.
policies[].policy.ai.promptGuard.response[].bedrockGuardrails.policies.backendTLS.certstring
policies[].policy.ai.promptGuard.response[].bedrockGuardrails.policies.backendTLS.keystring
policies[].policy.ai.promptGuard.response[].bedrockGuardrails.policies.backendTLS.rootstring
policies[].policy.ai.promptGuard.response[].bedrockGuardrails.policies.backendTLS.hostnamestring
policies[].policy.ai.promptGuard.response[].bedrockGuardrails.policies.backendTLS.insecureboolean
policies[].policy.ai.promptGuard.response[].bedrockGuardrails.policies.backendTLS.insecureHostboolean
policies[].policy.ai.promptGuard.response[].bedrockGuardrails.policies.backendTLS.alpn[]string
policies[].policy.ai.promptGuard.response[].bedrockGuardrails.policies.backendTLS.subjectAltNames[]string
policies[].policy.ai.promptGuard.response[].bedrockGuardrails.policies.backendAuthobjectAuthenticate to the backend.
policies[].policy.ai.promptGuard.response[].bedrockGuardrails.policies.backendAuth.passthroughobject
policies[].policy.ai.promptGuard.response[].bedrockGuardrails.policies.backendAuth.keyobject
policies[].policy.ai.promptGuard.response[].bedrockGuardrails.policies.backendAuth.key.filestring
policies[].policy.ai.promptGuard.response[].bedrockGuardrails.policies.backendAuth.gcpobject
policies[].policy.ai.promptGuard.response[].bedrockGuardrails.policies.backendAuth.gcp.typestring
policies[].policy.ai.promptGuard.response[].bedrockGuardrails.policies.backendAuth.gcp.audiencestringAudience for the token. If not set, the destination host will be used.
policies[].policy.ai.promptGuard.response[].bedrockGuardrails.policies.backendAuth.gcp.typestring
policies[].policy.ai.promptGuard.response[].bedrockGuardrails.policies.backendAuth.awsobject
policies[].policy.ai.promptGuard.response[].bedrockGuardrails.policies.backendAuth.aws.accessKeyIdstring
policies[].policy.ai.promptGuard.response[].bedrockGuardrails.policies.backendAuth.aws.secretAccessKeystring
policies[].policy.ai.promptGuard.response[].bedrockGuardrails.policies.backendAuth.aws.regionstring
policies[].policy.ai.promptGuard.response[].bedrockGuardrails.policies.backendAuth.aws.sessionTokenstring
policies[].policy.ai.promptGuard.response[].bedrockGuardrails.policies.backendAuth.azureobjectExactly one of explicitConfig, developerImplicit, or implicit may be set.
policies[].policy.ai.promptGuard.response[].bedrockGuardrails.policies.backendAuth.azure.explicitConfigobjectExactly one of clientSecret, managedIdentity, or workloadIdentity may be set.
policies[].policy.ai.promptGuard.response[].bedrockGuardrails.policies.backendAuth.azure.explicitConfig.clientSecretobject
policies[].policy.ai.promptGuard.response[].bedrockGuardrails.policies.backendAuth.azure.explicitConfig.clientSecret.tenant_idstring
policies[].policy.ai.promptGuard.response[].bedrockGuardrails.policies.backendAuth.azure.explicitConfig.clientSecret.client_idstring
policies[].policy.ai.promptGuard.response[].bedrockGuardrails.policies.backendAuth.azure.explicitConfig.clientSecret.client_secretstring
policies[].policy.ai.promptGuard.response[].bedrockGuardrails.policies.backendAuth.azure.explicitConfig.managedIdentityobject
policies[].policy.ai.promptGuard.response[].bedrockGuardrails.policies.backendAuth.azure.explicitConfig.managedIdentity.userAssignedIdentityobject
policies[].policy.ai.promptGuard.response[].bedrockGuardrails.policies.backendAuth.azure.explicitConfig.managedIdentity.userAssignedIdentity.clientIdstring
policies[].policy.ai.promptGuard.response[].bedrockGuardrails.policies.backendAuth.azure.explicitConfig.managedIdentity.userAssignedIdentity.objectIdstring
policies[].policy.ai.promptGuard.response[].bedrockGuardrails.policies.backendAuth.azure.explicitConfig.managedIdentity.userAssignedIdentity.resourceIdstring
policies[].policy.ai.promptGuard.response[].bedrockGuardrails.policies.backendAuth.azure.explicitConfig.workloadIdentityobject
policies[].policy.ai.promptGuard.response[].bedrockGuardrails.policies.backendAuth.azure.developerImplicitobject
policies[].policy.ai.promptGuard.response[].bedrockGuardrails.policies.backendAuth.azure.implicitobject
policies[].policy.ai.promptGuard.response[].bedrockGuardrails.policies.httpobjectSpecify HTTP settings for the backend
policies[].policy.ai.promptGuard.response[].bedrockGuardrails.policies.http.versionstring
policies[].policy.ai.promptGuard.response[].bedrockGuardrails.policies.http.requestTimeoutstring
policies[].policy.ai.promptGuard.response[].bedrockGuardrails.policies.tcpobjectSpecify TCP settings for the backend
policies[].policy.ai.promptGuard.response[].bedrockGuardrails.policies.tcp.keepalivesobject
policies[].policy.ai.promptGuard.response[].bedrockGuardrails.policies.tcp.keepalives.enabledboolean
policies[].policy.ai.promptGuard.response[].bedrockGuardrails.policies.tcp.keepalives.timestring
policies[].policy.ai.promptGuard.response[].bedrockGuardrails.policies.tcp.keepalives.intervalstring
policies[].policy.ai.promptGuard.response[].bedrockGuardrails.policies.tcp.keepalives.retriesinteger
policies[].policy.ai.promptGuard.response[].bedrockGuardrails.policies.tcp.connectTimeoutobject
policies[].policy.ai.promptGuard.response[].bedrockGuardrails.policies.tcp.connectTimeout.secsinteger
policies[].policy.ai.promptGuard.response[].bedrockGuardrails.policies.tcp.connectTimeout.nanosinteger
policies[].policy.ai.promptGuard.response[].bedrockGuardrails.policies.healthobjectHealth policy for backend outlier detection; evicts on unhealthy responses based on CEL condition and configurable duration.
policies[].policy.ai.promptGuard.response[].bedrockGuardrails.policies.health.unhealthyExpressionstringCEL expression; true means unhealthy (evict). E.g. response.code >= 500.
When unset, any 5xx or connection failure is treated as unhealthy.
policies[].policy.ai.promptGuard.response[].bedrockGuardrails.policies.health.evictionobjectLocal/config eviction sub-policy with duration as string; mirrors Eviction.
policies[].policy.ai.promptGuard.response[].bedrockGuardrails.policies.health.eviction.durationstring
policies[].policy.ai.promptGuard.response[].bedrockGuardrails.policies.health.eviction.restoreHealthnumber
policies[].policy.ai.promptGuard.response[].bedrockGuardrails.policies.health.eviction.consecutiveFailuresinteger
policies[].policy.ai.promptGuard.response[].bedrockGuardrails.policies.health.eviction.healthThresholdnumber
policies[].policy.ai.promptGuard.response[].bedrockGuardrails.policies.backendTunnelobjectSpecify a tunnel to use when connecting to the backend
policies[].policy.ai.promptGuard.response[].bedrockGuardrails.policies.backendTunnel.proxyobjectReference to the proxy address
Exactly one of service, host, or backend may be set.
policies[].policy.ai.promptGuard.response[].bedrockGuardrails.policies.backendTunnel.proxy.serviceobject
policies[].policy.ai.promptGuard.response[].bedrockGuardrails.policies.backendTunnel.proxy.service.nameobject
policies[].policy.ai.promptGuard.response[].bedrockGuardrails.policies.backendTunnel.proxy.service.name.namespacestring
policies[].policy.ai.promptGuard.response[].bedrockGuardrails.policies.backendTunnel.proxy.service.name.hostnamestring
policies[].policy.ai.promptGuard.response[].bedrockGuardrails.policies.backendTunnel.proxy.service.portinteger
policies[].policy.ai.promptGuard.response[].bedrockGuardrails.policies.backendTunnel.proxy.hoststringHostname or IP address
policies[].policy.ai.promptGuard.response[].bedrockGuardrails.policies.backendTunnel.proxy.backendstringExplicit backend reference. Backend must be defined in the top level backends list
policies[].policy.ai.promptGuard.response[].googleModelArmorobjectConfiguration for Google Cloud Model Armor integration.
policies[].policy.ai.promptGuard.response[].googleModelArmor.templateIdstringThe template ID for the Model Armor configuration
policies[].policy.ai.promptGuard.response[].googleModelArmor.projectIdstringThe GCP project ID
policies[].policy.ai.promptGuard.response[].googleModelArmor.locationstringThe GCP region (default: us-central1)
policies[].policy.ai.promptGuard.response[].googleModelArmor.policiesobjectBackend policies for GCP authentication (optional, defaults to implicit GCP auth)
policies[].policy.ai.promptGuard.response[].googleModelArmor.policies.requestHeaderModifierobjectHeaders to be modified in the request.
policies[].policy.ai.promptGuard.response[].googleModelArmor.policies.requestHeaderModifier.addobject
policies[].policy.ai.promptGuard.response[].googleModelArmor.policies.requestHeaderModifier.setobject
policies[].policy.ai.promptGuard.response[].googleModelArmor.policies.requestHeaderModifier.remove[]string
policies[].policy.ai.promptGuard.response[].googleModelArmor.policies.responseHeaderModifierobjectHeaders to be modified in the response.
policies[].policy.ai.promptGuard.response[].googleModelArmor.policies.responseHeaderModifier.addobject
policies[].policy.ai.promptGuard.response[].googleModelArmor.policies.responseHeaderModifier.setobject
policies[].policy.ai.promptGuard.response[].googleModelArmor.policies.responseHeaderModifier.remove[]string
policies[].policy.ai.promptGuard.response[].googleModelArmor.policies.requestRedirectobjectDirectly respond to the request with a redirect.
policies[].policy.ai.promptGuard.response[].googleModelArmor.policies.requestRedirect.schemestring
policies[].policy.ai.promptGuard.response[].googleModelArmor.policies.requestRedirect.authoritystring
policies[].policy.ai.promptGuard.response[].googleModelArmor.policies.requestRedirect.authority.fullstring
policies[].policy.ai.promptGuard.response[].googleModelArmor.policies.requestRedirect.authority.hoststring
policies[].policy.ai.promptGuard.response[].googleModelArmor.policies.requestRedirect.authority.portinteger
policies[].policy.ai.promptGuard.response[].googleModelArmor.policies.requestRedirect.pathobject
policies[].policy.ai.promptGuard.response[].googleModelArmor.policies.requestRedirect.path.fullstring
policies[].policy.ai.promptGuard.response[].googleModelArmor.policies.requestRedirect.path.prefixstring
policies[].policy.ai.promptGuard.response[].googleModelArmor.policies.requestRedirect.statusinteger
policies[].policy.ai.promptGuard.response[].googleModelArmor.policies.transformationsobjectModify requests and responses sent to and from the backend.
policies[].policy.ai.promptGuard.response[].googleModelArmor.policies.transformations.requestobject
policies[].policy.ai.promptGuard.response[].googleModelArmor.policies.transformations.request.addobject
policies[].policy.ai.promptGuard.response[].googleModelArmor.policies.transformations.request.setobject
policies[].policy.ai.promptGuard.response[].googleModelArmor.policies.transformations.request.remove[]string
policies[].policy.ai.promptGuard.response[].googleModelArmor.policies.transformations.request.bodystring
policies[].policy.ai.promptGuard.response[].googleModelArmor.policies.transformations.request.metadataobject
policies[].policy.ai.promptGuard.response[].googleModelArmor.policies.transformations.responseobject
policies[].policy.ai.promptGuard.response[].googleModelArmor.policies.transformations.response.addobject
policies[].policy.ai.promptGuard.response[].googleModelArmor.policies.transformations.response.setobject
policies[].policy.ai.promptGuard.response[].googleModelArmor.policies.transformations.response.remove[]string
policies[].policy.ai.promptGuard.response[].googleModelArmor.policies.transformations.response.bodystring
policies[].policy.ai.promptGuard.response[].googleModelArmor.policies.transformations.response.metadataobject
policies[].policy.ai.promptGuard.response[].googleModelArmor.policies.backendTLSobjectSend TLS to the backend.
policies[].policy.ai.promptGuard.response[].googleModelArmor.policies.backendTLS.certstring
policies[].policy.ai.promptGuard.response[].googleModelArmor.policies.backendTLS.keystring
policies[].policy.ai.promptGuard.response[].googleModelArmor.policies.backendTLS.rootstring
policies[].policy.ai.promptGuard.response[].googleModelArmor.policies.backendTLS.hostnamestring
policies[].policy.ai.promptGuard.response[].googleModelArmor.policies.backendTLS.insecureboolean
policies[].policy.ai.promptGuard.response[].googleModelArmor.policies.backendTLS.insecureHostboolean
policies[].policy.ai.promptGuard.response[].googleModelArmor.policies.backendTLS.alpn[]string
policies[].policy.ai.promptGuard.response[].googleModelArmor.policies.backendTLS.subjectAltNames[]string
policies[].policy.ai.promptGuard.response[].googleModelArmor.policies.backendAuthobjectAuthenticate to the backend.
policies[].policy.ai.promptGuard.response[].googleModelArmor.policies.backendAuth.passthroughobject
policies[].policy.ai.promptGuard.response[].googleModelArmor.policies.backendAuth.keyobject
policies[].policy.ai.promptGuard.response[].googleModelArmor.policies.backendAuth.key.filestring
policies[].policy.ai.promptGuard.response[].googleModelArmor.policies.backendAuth.gcpobject
policies[].policy.ai.promptGuard.response[].googleModelArmor.policies.backendAuth.gcp.typestring
policies[].policy.ai.promptGuard.response[].googleModelArmor.policies.backendAuth.gcp.audiencestringAudience for the token. If not set, the destination host will be used.
policies[].policy.ai.promptGuard.response[].googleModelArmor.policies.backendAuth.gcp.typestring
policies[].policy.ai.promptGuard.response[].googleModelArmor.policies.backendAuth.awsobject
policies[].policy.ai.promptGuard.response[].googleModelArmor.policies.backendAuth.aws.accessKeyIdstring
policies[].policy.ai.promptGuard.response[].googleModelArmor.policies.backendAuth.aws.secretAccessKeystring
policies[].policy.ai.promptGuard.response[].googleModelArmor.policies.backendAuth.aws.regionstring
policies[].policy.ai.promptGuard.response[].googleModelArmor.policies.backendAuth.aws.sessionTokenstring
policies[].policy.ai.promptGuard.response[].googleModelArmor.policies.backendAuth.azureobjectExactly one of explicitConfig, developerImplicit, or implicit may be set.
policies[].policy.ai.promptGuard.response[].googleModelArmor.policies.backendAuth.azure.explicitConfigobjectExactly one of clientSecret, managedIdentity, or workloadIdentity may be set.
policies[].policy.ai.promptGuard.response[].googleModelArmor.policies.backendAuth.azure.explicitConfig.clientSecretobject
policies[].policy.ai.promptGuard.response[].googleModelArmor.policies.backendAuth.azure.explicitConfig.clientSecret.tenant_idstring
policies[].policy.ai.promptGuard.response[].googleModelArmor.policies.backendAuth.azure.explicitConfig.clientSecret.client_idstring
policies[].policy.ai.promptGuard.response[].googleModelArmor.policies.backendAuth.azure.explicitConfig.clientSecret.client_secretstring
policies[].policy.ai.promptGuard.response[].googleModelArmor.policies.backendAuth.azure.explicitConfig.managedIdentityobject
policies[].policy.ai.promptGuard.response[].googleModelArmor.policies.backendAuth.azure.explicitConfig.managedIdentity.userAssignedIdentityobject
policies[].policy.ai.promptGuard.response[].googleModelArmor.policies.backendAuth.azure.explicitConfig.managedIdentity.userAssignedIdentity.clientIdstring
policies[].policy.ai.promptGuard.response[].googleModelArmor.policies.backendAuth.azure.explicitConfig.managedIdentity.userAssignedIdentity.objectIdstring
policies[].policy.ai.promptGuard.response[].googleModelArmor.policies.backendAuth.azure.explicitConfig.managedIdentity.userAssignedIdentity.resourceIdstring
policies[].policy.ai.promptGuard.response[].googleModelArmor.policies.backendAuth.azure.explicitConfig.workloadIdentityobject
policies[].policy.ai.promptGuard.response[].googleModelArmor.policies.backendAuth.azure.developerImplicitobject
policies[].policy.ai.promptGuard.response[].googleModelArmor.policies.backendAuth.azure.implicitobject
policies[].policy.ai.promptGuard.response[].googleModelArmor.policies.httpobjectSpecify HTTP settings for the backend
policies[].policy.ai.promptGuard.response[].googleModelArmor.policies.http.versionstring
policies[].policy.ai.promptGuard.response[].googleModelArmor.policies.http.requestTimeoutstring
policies[].policy.ai.promptGuard.response[].googleModelArmor.policies.tcpobjectSpecify TCP settings for the backend
policies[].policy.ai.promptGuard.response[].googleModelArmor.policies.tcp.keepalivesobject
policies[].policy.ai.promptGuard.response[].googleModelArmor.policies.tcp.keepalives.enabledboolean
policies[].policy.ai.promptGuard.response[].googleModelArmor.policies.tcp.keepalives.timestring
policies[].policy.ai.promptGuard.response[].googleModelArmor.policies.tcp.keepalives.intervalstring
policies[].policy.ai.promptGuard.response[].googleModelArmor.policies.tcp.keepalives.retriesinteger
policies[].policy.ai.promptGuard.response[].googleModelArmor.policies.tcp.connectTimeoutobject
policies[].policy.ai.promptGuard.response[].googleModelArmor.policies.tcp.connectTimeout.secsinteger
policies[].policy.ai.promptGuard.response[].googleModelArmor.policies.tcp.connectTimeout.nanosinteger
policies[].policy.ai.promptGuard.response[].googleModelArmor.policies.healthobjectHealth policy for backend outlier detection; evicts on unhealthy responses based on CEL condition and configurable duration.
policies[].policy.ai.promptGuard.response[].googleModelArmor.policies.health.unhealthyExpressionstringCEL expression; true means unhealthy (evict). E.g. response.code >= 500.
When unset, any 5xx or connection failure is treated as unhealthy.
policies[].policy.ai.promptGuard.response[].googleModelArmor.policies.health.evictionobjectLocal/config eviction sub-policy with duration as string; mirrors Eviction.
policies[].policy.ai.promptGuard.response[].googleModelArmor.policies.health.eviction.durationstring
policies[].policy.ai.promptGuard.response[].googleModelArmor.policies.health.eviction.restoreHealthnumber
policies[].policy.ai.promptGuard.response[].googleModelArmor.policies.health.eviction.consecutiveFailuresinteger
policies[].policy.ai.promptGuard.response[].googleModelArmor.policies.health.eviction.healthThresholdnumber
policies[].policy.ai.promptGuard.response[].googleModelArmor.policies.backendTunnelobjectSpecify a tunnel to use when connecting to the backend
policies[].policy.ai.promptGuard.response[].googleModelArmor.policies.backendTunnel.proxyobjectReference to the proxy address
Exactly one of service, host, or backend may be set.
policies[].policy.ai.promptGuard.response[].googleModelArmor.policies.backendTunnel.proxy.serviceobject
policies[].policy.ai.promptGuard.response[].googleModelArmor.policies.backendTunnel.proxy.service.nameobject
policies[].policy.ai.promptGuard.response[].googleModelArmor.policies.backendTunnel.proxy.service.name.namespacestring
policies[].policy.ai.promptGuard.response[].googleModelArmor.policies.backendTunnel.proxy.service.name.hostnamestring
policies[].policy.ai.promptGuard.response[].googleModelArmor.policies.backendTunnel.proxy.service.portinteger
policies[].policy.ai.promptGuard.response[].googleModelArmor.policies.backendTunnel.proxy.hoststringHostname or IP address
policies[].policy.ai.promptGuard.response[].googleModelArmor.policies.backendTunnel.proxy.backendstringExplicit backend reference. Backend must be defined in the top level backends list
policies[].policy.ai.promptGuard.response[].rejectionobject
policies[].policy.ai.promptGuard.response[].rejection.bodyarray
policies[].policy.ai.promptGuard.response[].rejection.statusinteger
policies[].policy.ai.promptGuard.response[].rejection.headersobjectOptional headers to add, set, or remove from the rejection response
policies[].policy.ai.promptGuard.response[].rejection.headers.addobject
policies[].policy.ai.promptGuard.response[].rejection.headers.setobject
policies[].policy.ai.promptGuard.response[].rejection.headers.remove[]string
policies[].policy.ai.defaultsobject
policies[].policy.ai.overridesobject
policies[].policy.ai.transformationsobject
policies[].policy.ai.promptsobject
policies[].policy.ai.prompts.append[]object
policies[].policy.ai.prompts.append[].rolestring
policies[].policy.ai.prompts.append[].contentstring
policies[].policy.ai.prompts.prepend[]object
policies[].policy.ai.prompts.prepend[].rolestring
policies[].policy.ai.prompts.prepend[].contentstring
policies[].policy.ai.modelAliasesobject
policies[].policy.ai.promptCachingobject
policies[].policy.ai.promptCaching.cacheSystemboolean
policies[].policy.ai.promptCaching.cacheMessagesboolean
policies[].policy.ai.promptCaching.cacheToolsboolean
policies[].policy.ai.promptCaching.minTokensinteger
policies[].policy.ai.routesobject
policies[].policy.backendTLSobjectSend TLS to the backend.
policies[].policy.backendTLS.certstring
policies[].policy.backendTLS.keystring
policies[].policy.backendTLS.rootstring
policies[].policy.backendTLS.hostnamestring
policies[].policy.backendTLS.insecureboolean
policies[].policy.backendTLS.insecureHostboolean
policies[].policy.backendTLS.alpn[]string
policies[].policy.backendTLS.subjectAltNames[]string
policies[].policy.backendTunnelobjectTunnel to the backend.
policies[].policy.backendTunnel.proxyobjectReference to the proxy address
Exactly one of service, host, or backend may be set.
policies[].policy.backendTunnel.proxy.serviceobject
policies[].policy.backendTunnel.proxy.service.nameobject
policies[].policy.backendTunnel.proxy.service.name.namespacestring
policies[].policy.backendTunnel.proxy.service.name.hostnamestring
policies[].policy.backendTunnel.proxy.service.portinteger
policies[].policy.backendTunnel.proxy.hoststringHostname or IP address
policies[].policy.backendTunnel.proxy.backendstringExplicit backend reference. Backend must be defined in the top level backends list
policies[].policy.backendAuthobjectAuthenticate to the backend.
policies[].policy.backendAuth.passthroughobject
policies[].policy.backendAuth.keyobject
policies[].policy.backendAuth.key.filestring
policies[].policy.backendAuth.gcpobject
policies[].policy.backendAuth.gcp.typestring
policies[].policy.backendAuth.gcp.audiencestringAudience for the token. If not set, the destination host will be used.
policies[].policy.backendAuth.gcp.typestring
policies[].policy.backendAuth.awsobject
policies[].policy.backendAuth.aws.accessKeyIdstring
policies[].policy.backendAuth.aws.secretAccessKeystring
policies[].policy.backendAuth.aws.regionstring
policies[].policy.backendAuth.aws.sessionTokenstring
policies[].policy.backendAuth.azureobjectExactly one of explicitConfig, developerImplicit, or implicit may be set.
policies[].policy.backendAuth.azure.explicitConfigobjectExactly one of clientSecret, managedIdentity, or workloadIdentity may be set.
policies[].policy.backendAuth.azure.explicitConfig.clientSecretobject
policies[].policy.backendAuth.azure.explicitConfig.clientSecret.tenant_idstring
policies[].policy.backendAuth.azure.explicitConfig.clientSecret.client_idstring
policies[].policy.backendAuth.azure.explicitConfig.clientSecret.client_secretstring
policies[].policy.backendAuth.azure.explicitConfig.managedIdentityobject
policies[].policy.backendAuth.azure.explicitConfig.managedIdentity.userAssignedIdentityobject
policies[].policy.backendAuth.azure.explicitConfig.managedIdentity.userAssignedIdentity.clientIdstring
policies[].policy.backendAuth.azure.explicitConfig.managedIdentity.userAssignedIdentity.objectIdstring
policies[].policy.backendAuth.azure.explicitConfig.managedIdentity.userAssignedIdentity.resourceIdstring
policies[].policy.backendAuth.azure.explicitConfig.workloadIdentityobject
policies[].policy.backendAuth.azure.developerImplicitobject
policies[].policy.backendAuth.azure.implicitobject
policies[].policy.localRateLimit[]objectRate limit incoming requests. State is kept local.
policies[].policy.localRateLimit[].maxTokensinteger
policies[].policy.localRateLimit[].tokensPerFillinteger
policies[].policy.localRateLimit[].fillIntervalstring
policies[].policy.localRateLimit[].typestring
policies[].policy.remoteRateLimitobjectRate limit incoming requests. State is managed by a remote server.
policies[].policy.remoteRateLimit.serviceobject
policies[].policy.remoteRateLimit.service.nameobject
policies[].policy.remoteRateLimit.service.name.namespacestring
policies[].policy.remoteRateLimit.service.name.hostnamestring
policies[].policy.remoteRateLimit.service.portinteger
policies[].policy.remoteRateLimit.hoststringHostname or IP address
policies[].policy.remoteRateLimit.backendstringExplicit backend reference. Backend must be defined in the top level backends list
policies[].policy.remoteRateLimit.domainstring
policies[].policy.remoteRateLimit.policiesobjectPolicies to connect to the backend
policies[].policy.remoteRateLimit.policies.requestHeaderModifierobjectHeaders to be modified in the request.
policies[].policy.remoteRateLimit.policies.requestHeaderModifier.addobject
policies[].policy.remoteRateLimit.policies.requestHeaderModifier.setobject
policies[].policy.remoteRateLimit.policies.requestHeaderModifier.remove[]string
policies[].policy.remoteRateLimit.policies.responseHeaderModifierobjectHeaders to be modified in the response.
policies[].policy.remoteRateLimit.policies.responseHeaderModifier.addobject
policies[].policy.remoteRateLimit.policies.responseHeaderModifier.setobject
policies[].policy.remoteRateLimit.policies.responseHeaderModifier.remove[]string
policies[].policy.remoteRateLimit.policies.requestRedirectobjectDirectly respond to the request with a redirect.
policies[].policy.remoteRateLimit.policies.requestRedirect.schemestring
policies[].policy.remoteRateLimit.policies.requestRedirect.authoritystring
policies[].policy.remoteRateLimit.policies.requestRedirect.authority.fullstring
policies[].policy.remoteRateLimit.policies.requestRedirect.authority.hoststring
policies[].policy.remoteRateLimit.policies.requestRedirect.authority.portinteger
policies[].policy.remoteRateLimit.policies.requestRedirect.pathobject
policies[].policy.remoteRateLimit.policies.requestRedirect.path.fullstring
policies[].policy.remoteRateLimit.policies.requestRedirect.path.prefixstring
policies[].policy.remoteRateLimit.policies.requestRedirect.statusinteger
policies[].policy.remoteRateLimit.policies.transformationsobjectModify requests and responses sent to and from the backend.
policies[].policy.remoteRateLimit.policies.transformations.requestobject
policies[].policy.remoteRateLimit.policies.transformations.request.addobject
policies[].policy.remoteRateLimit.policies.transformations.request.setobject
policies[].policy.remoteRateLimit.policies.transformations.request.remove[]string
policies[].policy.remoteRateLimit.policies.transformations.request.bodystring
policies[].policy.remoteRateLimit.policies.transformations.request.metadataobject
policies[].policy.remoteRateLimit.policies.transformations.responseobject
policies[].policy.remoteRateLimit.policies.transformations.response.addobject
policies[].policy.remoteRateLimit.policies.transformations.response.setobject
policies[].policy.remoteRateLimit.policies.transformations.response.remove[]string
policies[].policy.remoteRateLimit.policies.transformations.response.bodystring
policies[].policy.remoteRateLimit.policies.transformations.response.metadataobject
policies[].policy.remoteRateLimit.policies.backendTLSobjectSend TLS to the backend.
policies[].policy.remoteRateLimit.policies.backendTLS.certstring
policies[].policy.remoteRateLimit.policies.backendTLS.keystring
policies[].policy.remoteRateLimit.policies.backendTLS.rootstring
policies[].policy.remoteRateLimit.policies.backendTLS.hostnamestring
policies[].policy.remoteRateLimit.policies.backendTLS.insecureboolean
policies[].policy.remoteRateLimit.policies.backendTLS.insecureHostboolean
policies[].policy.remoteRateLimit.policies.backendTLS.alpn[]string
policies[].policy.remoteRateLimit.policies.backendTLS.subjectAltNames[]string
policies[].policy.remoteRateLimit.policies.backendAuthobjectAuthenticate to the backend.
policies[].policy.remoteRateLimit.policies.backendAuth.passthroughobject
policies[].policy.remoteRateLimit.policies.backendAuth.keyobject
policies[].policy.remoteRateLimit.policies.backendAuth.key.filestring
policies[].policy.remoteRateLimit.policies.backendAuth.gcpobject
policies[].policy.remoteRateLimit.policies.backendAuth.gcp.typestring
policies[].policy.remoteRateLimit.policies.backendAuth.gcp.audiencestringAudience for the token. If not set, the destination host will be used.
policies[].policy.remoteRateLimit.policies.backendAuth.gcp.typestring
policies[].policy.remoteRateLimit.policies.backendAuth.awsobject
policies[].policy.remoteRateLimit.policies.backendAuth.aws.accessKeyIdstring
policies[].policy.remoteRateLimit.policies.backendAuth.aws.secretAccessKeystring
policies[].policy.remoteRateLimit.policies.backendAuth.aws.regionstring
policies[].policy.remoteRateLimit.policies.backendAuth.aws.sessionTokenstring
policies[].policy.remoteRateLimit.policies.backendAuth.azureobjectExactly one of explicitConfig, developerImplicit, or implicit may be set.
policies[].policy.remoteRateLimit.policies.backendAuth.azure.explicitConfigobjectExactly one of clientSecret, managedIdentity, or workloadIdentity may be set.
policies[].policy.remoteRateLimit.policies.backendAuth.azure.explicitConfig.clientSecretobject
policies[].policy.remoteRateLimit.policies.backendAuth.azure.explicitConfig.clientSecret.tenant_idstring
policies[].policy.remoteRateLimit.policies.backendAuth.azure.explicitConfig.clientSecret.client_idstring
policies[].policy.remoteRateLimit.policies.backendAuth.azure.explicitConfig.clientSecret.client_secretstring
policies[].policy.remoteRateLimit.policies.backendAuth.azure.explicitConfig.managedIdentityobject
policies[].policy.remoteRateLimit.policies.backendAuth.azure.explicitConfig.managedIdentity.userAssignedIdentityobject
policies[].policy.remoteRateLimit.policies.backendAuth.azure.explicitConfig.managedIdentity.userAssignedIdentity.clientIdstring
policies[].policy.remoteRateLimit.policies.backendAuth.azure.explicitConfig.managedIdentity.userAssignedIdentity.objectIdstring
policies[].policy.remoteRateLimit.policies.backendAuth.azure.explicitConfig.managedIdentity.userAssignedIdentity.resourceIdstring
policies[].policy.remoteRateLimit.policies.backendAuth.azure.explicitConfig.workloadIdentityobject
policies[].policy.remoteRateLimit.policies.backendAuth.azure.developerImplicitobject
policies[].policy.remoteRateLimit.policies.backendAuth.azure.implicitobject
policies[].policy.remoteRateLimit.policies.httpobjectSpecify HTTP settings for the backend
policies[].policy.remoteRateLimit.policies.http.versionstring
policies[].policy.remoteRateLimit.policies.http.requestTimeoutstring
policies[].policy.remoteRateLimit.policies.tcpobjectSpecify TCP settings for the backend
policies[].policy.remoteRateLimit.policies.tcp.keepalivesobject
policies[].policy.remoteRateLimit.policies.tcp.keepalives.enabledboolean
policies[].policy.remoteRateLimit.policies.tcp.keepalives.timestring
policies[].policy.remoteRateLimit.policies.tcp.keepalives.intervalstring
policies[].policy.remoteRateLimit.policies.tcp.keepalives.retriesinteger
policies[].policy.remoteRateLimit.policies.tcp.connectTimeoutobject
policies[].policy.remoteRateLimit.policies.tcp.connectTimeout.secsinteger
policies[].policy.remoteRateLimit.policies.tcp.connectTimeout.nanosinteger
policies[].policy.remoteRateLimit.policies.healthobjectHealth policy for backend outlier detection; evicts on unhealthy responses based on CEL condition and configurable duration.
policies[].policy.remoteRateLimit.policies.health.unhealthyExpressionstringCEL expression; true means unhealthy (evict). E.g. response.code >= 500.
When unset, any 5xx or connection failure is treated as unhealthy.
policies[].policy.remoteRateLimit.policies.health.evictionobjectLocal/config eviction sub-policy with duration as string; mirrors Eviction.
policies[].policy.remoteRateLimit.policies.health.eviction.durationstring
policies[].policy.remoteRateLimit.policies.health.eviction.restoreHealthnumber
policies[].policy.remoteRateLimit.policies.health.eviction.consecutiveFailuresinteger
policies[].policy.remoteRateLimit.policies.health.eviction.healthThresholdnumber
policies[].policy.remoteRateLimit.policies.backendTunnelobjectSpecify a tunnel to use when connecting to the backend
policies[].policy.remoteRateLimit.policies.backendTunnel.proxyobjectReference to the proxy address
Exactly one of service, host, or backend may be set.
policies[].policy.remoteRateLimit.policies.backendTunnel.proxy.serviceobject
policies[].policy.remoteRateLimit.policies.backendTunnel.proxy.service.nameobject
policies[].policy.remoteRateLimit.policies.backendTunnel.proxy.service.name.namespacestring
policies[].policy.remoteRateLimit.policies.backendTunnel.proxy.service.name.hostnamestring
policies[].policy.remoteRateLimit.policies.backendTunnel.proxy.service.portinteger
policies[].policy.remoteRateLimit.policies.backendTunnel.proxy.hoststringHostname or IP address
policies[].policy.remoteRateLimit.policies.backendTunnel.proxy.backendstringExplicit backend reference. Backend must be defined in the top level backends list
policies[].policy.remoteRateLimit.descriptors[]object
policies[].policy.remoteRateLimit.descriptors[].entries[]object
policies[].policy.remoteRateLimit.descriptors[].entries[].keystring
policies[].policy.remoteRateLimit.descriptors[].entries[].valuestring
policies[].policy.remoteRateLimit.descriptors[].typestring
policies[].policy.remoteRateLimit.failureModestringBehavior when the remote rate limit service is unavailable or returns an error.
Defaults to failClosed, denying requests with a 500 status on service failure.
policies[].policy.jwtAuthobjectAuthenticate incoming JWT requests.
policies[].policy.jwtAuth.modestring
policies[].policy.jwtAuth.providers[]object
policies[].policy.jwtAuth.providers[].issuerstring
policies[].policy.jwtAuth.providers[].audiences[]string
policies[].policy.jwtAuth.providers[].jwksobject
policies[].policy.jwtAuth.providers[].jwks.filestring
policies[].policy.jwtAuth.providers[].jwks.urlstring
policies[].policy.jwtAuth.providers[].jwtValidationOptionsobjectJWT validation options controlling which claims must be present in a token.

The required_claims set specifies which RFC 7519 registered claims must
exist in the token payload before validation proceeds. Only the following
values are recognized: exp, nbf, aud, iss, sub. Other registered
claims such as iat and jti are not enforced by the underlying
jsonwebtoken library and will be silently ignored.

This only enforces presence. Standard claims like exp and nbf
have their values validated independently (e.g., expiry is always checked
when the exp claim is present, regardless of this setting).

Defaults to ["exp"].
policies[].policy.jwtAuth.providers[].jwtValidationOptions.requiredClaims[]stringClaims that must be present in the token before validation.
Only “exp”, “nbf”, “aud”, “iss”, “sub” are enforced; others
(including “iat” and “jti”) are ignored.
Defaults to [“exp”]. Use an empty list to require no claims.
policies[].policy.jwtAuth.modestring
policies[].policy.jwtAuth.issuerstring
policies[].policy.jwtAuth.audiences[]string
policies[].policy.jwtAuth.jwksobject
policies[].policy.jwtAuth.jwks.filestring
policies[].policy.jwtAuth.jwks.urlstring
policies[].policy.jwtAuth.jwtValidationOptionsobjectJWT validation options controlling which claims must be present in a token.

The required_claims set specifies which RFC 7519 registered claims must
exist in the token payload before validation proceeds. Only the following
values are recognized: exp, nbf, aud, iss, sub. Other registered
claims such as iat and jti are not enforced by the underlying
jsonwebtoken library and will be silently ignored.

This only enforces presence. Standard claims like exp and nbf
have their values validated independently (e.g., expiry is always checked
when the exp claim is present, regardless of this setting).

Defaults to ["exp"].
policies[].policy.jwtAuth.jwtValidationOptions.requiredClaims[]stringClaims that must be present in the token before validation.
Only “exp”, “nbf”, “aud”, “iss”, “sub” are enforced; others
(including “iat” and “jti”) are ignored.
Defaults to [“exp”]. Use an empty list to require no claims.
policies[].policy.basicAuthobjectAuthenticate incoming requests using Basic Authentication with htpasswd.
policies[].policy.basicAuth.htpasswdobject.htpasswd file contents/reference
policies[].policy.basicAuth.htpasswd.filestring
policies[].policy.basicAuth.realmstringRealm name for the WWW-Authenticate header
policies[].policy.basicAuth.modestringValidation mode for basic authentication
policies[].policy.apiKeyobjectAuthenticate incoming requests using API Keys
policies[].policy.apiKey.keys[]objectList of API keys
policies[].policy.apiKey.keys[].keystring
policies[].policy.apiKey.keys[].metadataany
policies[].policy.apiKey.modestringValidation mode for API keys
policies[].policy.extAuthzobjectAuthenticate incoming requests by calling an external authorization server.
policies[].policy.extAuthz.serviceobject
policies[].policy.extAuthz.service.nameobject
policies[].policy.extAuthz.service.name.namespacestring
policies[].policy.extAuthz.service.name.hostnamestring
policies[].policy.extAuthz.service.portinteger
policies[].policy.extAuthz.hoststringHostname or IP address
policies[].policy.extAuthz.backendstringExplicit backend reference. Backend must be defined in the top level backends list
policies[].policy.extAuthz.policiesobjectPolicies to connect to the backend
policies[].policy.extAuthz.policies.requestHeaderModifierobjectHeaders to be modified in the request.
policies[].policy.extAuthz.policies.requestHeaderModifier.addobject
policies[].policy.extAuthz.policies.requestHeaderModifier.setobject
policies[].policy.extAuthz.policies.requestHeaderModifier.remove[]string
policies[].policy.extAuthz.policies.responseHeaderModifierobjectHeaders to be modified in the response.
policies[].policy.extAuthz.policies.responseHeaderModifier.addobject
policies[].policy.extAuthz.policies.responseHeaderModifier.setobject
policies[].policy.extAuthz.policies.responseHeaderModifier.remove[]string
policies[].policy.extAuthz.policies.requestRedirectobjectDirectly respond to the request with a redirect.
policies[].policy.extAuthz.policies.requestRedirect.schemestring
policies[].policy.extAuthz.policies.requestRedirect.authoritystring
policies[].policy.extAuthz.policies.requestRedirect.authority.fullstring
policies[].policy.extAuthz.policies.requestRedirect.authority.hoststring
policies[].policy.extAuthz.policies.requestRedirect.authority.portinteger
policies[].policy.extAuthz.policies.requestRedirect.pathobject
policies[].policy.extAuthz.policies.requestRedirect.path.fullstring
policies[].policy.extAuthz.policies.requestRedirect.path.prefixstring
policies[].policy.extAuthz.policies.requestRedirect.statusinteger
policies[].policy.extAuthz.policies.transformationsobjectModify requests and responses sent to and from the backend.
policies[].policy.extAuthz.policies.transformations.requestobject
policies[].policy.extAuthz.policies.transformations.request.addobject
policies[].policy.extAuthz.policies.transformations.request.setobject
policies[].policy.extAuthz.policies.transformations.request.remove[]string
policies[].policy.extAuthz.policies.transformations.request.bodystring
policies[].policy.extAuthz.policies.transformations.request.metadataobject
policies[].policy.extAuthz.policies.transformations.responseobject
policies[].policy.extAuthz.policies.transformations.response.addobject
policies[].policy.extAuthz.policies.transformations.response.setobject
policies[].policy.extAuthz.policies.transformations.response.remove[]string
policies[].policy.extAuthz.policies.transformations.response.bodystring
policies[].policy.extAuthz.policies.transformations.response.metadataobject
policies[].policy.extAuthz.policies.backendTLSobjectSend TLS to the backend.
policies[].policy.extAuthz.policies.backendTLS.certstring
policies[].policy.extAuthz.policies.backendTLS.keystring
policies[].policy.extAuthz.policies.backendTLS.rootstring
policies[].policy.extAuthz.policies.backendTLS.hostnamestring
policies[].policy.extAuthz.policies.backendTLS.insecureboolean
policies[].policy.extAuthz.policies.backendTLS.insecureHostboolean
policies[].policy.extAuthz.policies.backendTLS.alpn[]string
policies[].policy.extAuthz.policies.backendTLS.subjectAltNames[]string
policies[].policy.extAuthz.policies.backendAuthobjectAuthenticate to the backend.
policies[].policy.extAuthz.policies.backendAuth.passthroughobject
policies[].policy.extAuthz.policies.backendAuth.keyobject
policies[].policy.extAuthz.policies.backendAuth.key.filestring
policies[].policy.extAuthz.policies.backendAuth.gcpobject
policies[].policy.extAuthz.policies.backendAuth.gcp.typestring
policies[].policy.extAuthz.policies.backendAuth.gcp.audiencestringAudience for the token. If not set, the destination host will be used.
policies[].policy.extAuthz.policies.backendAuth.gcp.typestring
policies[].policy.extAuthz.policies.backendAuth.awsobject
policies[].policy.extAuthz.policies.backendAuth.aws.accessKeyIdstring
policies[].policy.extAuthz.policies.backendAuth.aws.secretAccessKeystring
policies[].policy.extAuthz.policies.backendAuth.aws.regionstring
policies[].policy.extAuthz.policies.backendAuth.aws.sessionTokenstring
policies[].policy.extAuthz.policies.backendAuth.azureobjectExactly one of explicitConfig, developerImplicit, or implicit may be set.
policies[].policy.extAuthz.policies.backendAuth.azure.explicitConfigobjectExactly one of clientSecret, managedIdentity, or workloadIdentity may be set.
policies[].policy.extAuthz.policies.backendAuth.azure.explicitConfig.clientSecretobject
policies[].policy.extAuthz.policies.backendAuth.azure.explicitConfig.clientSecret.tenant_idstring
policies[].policy.extAuthz.policies.backendAuth.azure.explicitConfig.clientSecret.client_idstring
policies[].policy.extAuthz.policies.backendAuth.azure.explicitConfig.clientSecret.client_secretstring
policies[].policy.extAuthz.policies.backendAuth.azure.explicitConfig.managedIdentityobject
policies[].policy.extAuthz.policies.backendAuth.azure.explicitConfig.managedIdentity.userAssignedIdentityobject
policies[].policy.extAuthz.policies.backendAuth.azure.explicitConfig.managedIdentity.userAssignedIdentity.clientIdstring
policies[].policy.extAuthz.policies.backendAuth.azure.explicitConfig.managedIdentity.userAssignedIdentity.objectIdstring
policies[].policy.extAuthz.policies.backendAuth.azure.explicitConfig.managedIdentity.userAssignedIdentity.resourceIdstring
policies[].policy.extAuthz.policies.backendAuth.azure.explicitConfig.workloadIdentityobject
policies[].policy.extAuthz.policies.backendAuth.azure.developerImplicitobject
policies[].policy.extAuthz.policies.backendAuth.azure.implicitobject
policies[].policy.extAuthz.policies.httpobjectSpecify HTTP settings for the backend
policies[].policy.extAuthz.policies.http.versionstring
policies[].policy.extAuthz.policies.http.requestTimeoutstring
policies[].policy.extAuthz.policies.tcpobjectSpecify TCP settings for the backend
policies[].policy.extAuthz.policies.tcp.keepalivesobject
policies[].policy.extAuthz.policies.tcp.keepalives.enabledboolean
policies[].policy.extAuthz.policies.tcp.keepalives.timestring
policies[].policy.extAuthz.policies.tcp.keepalives.intervalstring
policies[].policy.extAuthz.policies.tcp.keepalives.retriesinteger
policies[].policy.extAuthz.policies.tcp.connectTimeoutobject
policies[].policy.extAuthz.policies.tcp.connectTimeout.secsinteger
policies[].policy.extAuthz.policies.tcp.connectTimeout.nanosinteger
policies[].policy.extAuthz.policies.healthobjectHealth policy for backend outlier detection; evicts on unhealthy responses based on CEL condition and configurable duration.
policies[].policy.extAuthz.policies.health.unhealthyExpressionstringCEL expression; true means unhealthy (evict). E.g. response.code >= 500.
When unset, any 5xx or connection failure is treated as unhealthy.
policies[].policy.extAuthz.policies.health.evictionobjectLocal/config eviction sub-policy with duration as string; mirrors Eviction.
policies[].policy.extAuthz.policies.health.eviction.durationstring
policies[].policy.extAuthz.policies.health.eviction.restoreHealthnumber
policies[].policy.extAuthz.policies.health.eviction.consecutiveFailuresinteger
policies[].policy.extAuthz.policies.health.eviction.healthThresholdnumber
policies[].policy.extAuthz.policies.backendTunnelobjectSpecify a tunnel to use when connecting to the backend
policies[].policy.extAuthz.policies.backendTunnel.proxyobjectReference to the proxy address
Exactly one of service, host, or backend may be set.
policies[].policy.extAuthz.policies.backendTunnel.proxy.serviceobject
policies[].policy.extAuthz.policies.backendTunnel.proxy.service.nameobject
policies[].policy.extAuthz.policies.backendTunnel.proxy.service.name.namespacestring
policies[].policy.extAuthz.policies.backendTunnel.proxy.service.name.hostnamestring
policies[].policy.extAuthz.policies.backendTunnel.proxy.service.portinteger
policies[].policy.extAuthz.policies.backendTunnel.proxy.hoststringHostname or IP address
policies[].policy.extAuthz.policies.backendTunnel.proxy.backendstringExplicit backend reference. Backend must be defined in the top level backends list
policies[].policy.extAuthz.protocolobjectThe ext_authz protocol to use. Unless you need to integrate with an HTTP-only server, gRPC is recommended.
Exactly one of grpc or http may be set.
policies[].policy.extAuthz.protocol.grpcobject
policies[].policy.extAuthz.protocol.grpc.contextobjectAdditional context to send to the authorization service.
This maps to the context_extensions field of the request, and only allows static values.
policies[].policy.extAuthz.protocol.grpc.metadataobjectAdditional metadata to send to the authorization service.
This maps to the metadata_context.filter_metadata field of the request, and allows dynamic CEL expressions.
If unset, by default the envoy.filters.http.jwt_authn key is set if the JWT policy is used as well, for compatibility.
policies[].policy.extAuthz.protocol.httpobject
policies[].policy.extAuthz.protocol.http.pathstring
policies[].policy.extAuthz.protocol.http.redirectstringWhen using the HTTP protocol, and the server returns unauthorized, redirect to the URL resolved by
the provided expression rather than directly returning the error.
policies[].policy.extAuthz.protocol.http.includeResponseHeaders[]stringSpecific headers from the authorization response will be copied into the request to the backend.
policies[].policy.extAuthz.protocol.http.addRequestHeadersobjectSpecific headers to add in the authorization request (empty = all headers), based on the expression
policies[].policy.extAuthz.protocol.http.metadataobjectMetadata to include under the extauthz variable, based on the authorization response.
policies[].policy.extAuthz.failureModestringBehavior when the authorization service is unavailable or returns an error
policies[].policy.extAuthz.failureMode.denyWithStatusinteger
policies[].policy.extAuthz.includeRequestHeaders[]stringSpecific headers to include in the authorization request.
If unset, the gRPC protocol sends all request headers. The HTTP protocol sends only ‘Authorization’.
policies[].policy.extAuthz.includeRequestBodyobjectOptions for including the request body in the authorization request
policies[].policy.extAuthz.includeRequestBody.maxRequestBytesintegerMaximum size of request body to buffer (default: 8192)
policies[].policy.extAuthz.includeRequestBody.allowPartialMessagebooleanIf true, send partial body when max_request_bytes is reached
policies[].policy.extAuthz.includeRequestBody.packAsBytesbooleanIf true, pack body as raw bytes in gRPC
policies[].policy.extProcobjectExtend agentgateway with an external processor
policies[].policy.extProc.serviceobject
policies[].policy.extProc.service.nameobject
policies[].policy.extProc.service.name.namespacestring
policies[].policy.extProc.service.name.hostnamestring
policies[].policy.extProc.service.portinteger
policies[].policy.extProc.hoststringHostname or IP address
policies[].policy.extProc.backendstringExplicit backend reference. Backend must be defined in the top level backends list
policies[].policy.extProc.policiesobjectPolicies to connect to the backend
policies[].policy.extProc.policies.requestHeaderModifierobjectHeaders to be modified in the request.
policies[].policy.extProc.policies.requestHeaderModifier.addobject
policies[].policy.extProc.policies.requestHeaderModifier.setobject
policies[].policy.extProc.policies.requestHeaderModifier.remove[]string
policies[].policy.extProc.policies.responseHeaderModifierobjectHeaders to be modified in the response.
policies[].policy.extProc.policies.responseHeaderModifier.addobject
policies[].policy.extProc.policies.responseHeaderModifier.setobject
policies[].policy.extProc.policies.responseHeaderModifier.remove[]string
policies[].policy.extProc.policies.requestRedirectobjectDirectly respond to the request with a redirect.
policies[].policy.extProc.policies.requestRedirect.schemestring
policies[].policy.extProc.policies.requestRedirect.authoritystring
policies[].policy.extProc.policies.requestRedirect.authority.fullstring
policies[].policy.extProc.policies.requestRedirect.authority.hoststring
policies[].policy.extProc.policies.requestRedirect.authority.portinteger
policies[].policy.extProc.policies.requestRedirect.pathobject
policies[].policy.extProc.policies.requestRedirect.path.fullstring
policies[].policy.extProc.policies.requestRedirect.path.prefixstring
policies[].policy.extProc.policies.requestRedirect.statusinteger
policies[].policy.extProc.policies.transformationsobjectModify requests and responses sent to and from the backend.
policies[].policy.extProc.policies.transformations.requestobject
policies[].policy.extProc.policies.transformations.request.addobject
policies[].policy.extProc.policies.transformations.request.setobject
policies[].policy.extProc.policies.transformations.request.remove[]string
policies[].policy.extProc.policies.transformations.request.bodystring
policies[].policy.extProc.policies.transformations.request.metadataobject
policies[].policy.extProc.policies.transformations.responseobject
policies[].policy.extProc.policies.transformations.response.addobject
policies[].policy.extProc.policies.transformations.response.setobject
policies[].policy.extProc.policies.transformations.response.remove[]string
policies[].policy.extProc.policies.transformations.response.bodystring
policies[].policy.extProc.policies.transformations.response.metadataobject
policies[].policy.extProc.policies.backendTLSobjectSend TLS to the backend.
policies[].policy.extProc.policies.backendTLS.certstring
policies[].policy.extProc.policies.backendTLS.keystring
policies[].policy.extProc.policies.backendTLS.rootstring
policies[].policy.extProc.policies.backendTLS.hostnamestring
policies[].policy.extProc.policies.backendTLS.insecureboolean
policies[].policy.extProc.policies.backendTLS.insecureHostboolean
policies[].policy.extProc.policies.backendTLS.alpn[]string
policies[].policy.extProc.policies.backendTLS.subjectAltNames[]string
policies[].policy.extProc.policies.backendAuthobjectAuthenticate to the backend.
policies[].policy.extProc.policies.backendAuth.passthroughobject
policies[].policy.extProc.policies.backendAuth.keyobject
policies[].policy.extProc.policies.backendAuth.key.filestring
policies[].policy.extProc.policies.backendAuth.gcpobject
policies[].policy.extProc.policies.backendAuth.gcp.typestring
policies[].policy.extProc.policies.backendAuth.gcp.audiencestringAudience for the token. If not set, the destination host will be used.
policies[].policy.extProc.policies.backendAuth.gcp.typestring
policies[].policy.extProc.policies.backendAuth.awsobject
policies[].policy.extProc.policies.backendAuth.aws.accessKeyIdstring
policies[].policy.extProc.policies.backendAuth.aws.secretAccessKeystring
policies[].policy.extProc.policies.backendAuth.aws.regionstring
policies[].policy.extProc.policies.backendAuth.aws.sessionTokenstring
policies[].policy.extProc.policies.backendAuth.azureobjectExactly one of explicitConfig, developerImplicit, or implicit may be set.
policies[].policy.extProc.policies.backendAuth.azure.explicitConfigobjectExactly one of clientSecret, managedIdentity, or workloadIdentity may be set.
policies[].policy.extProc.policies.backendAuth.azure.explicitConfig.clientSecretobject
policies[].policy.extProc.policies.backendAuth.azure.explicitConfig.clientSecret.tenant_idstring
policies[].policy.extProc.policies.backendAuth.azure.explicitConfig.clientSecret.client_idstring
policies[].policy.extProc.policies.backendAuth.azure.explicitConfig.clientSecret.client_secretstring
policies[].policy.extProc.policies.backendAuth.azure.explicitConfig.managedIdentityobject
policies[].policy.extProc.policies.backendAuth.azure.explicitConfig.managedIdentity.userAssignedIdentityobject
policies[].policy.extProc.policies.backendAuth.azure.explicitConfig.managedIdentity.userAssignedIdentity.clientIdstring
policies[].policy.extProc.policies.backendAuth.azure.explicitConfig.managedIdentity.userAssignedIdentity.objectIdstring
policies[].policy.extProc.policies.backendAuth.azure.explicitConfig.managedIdentity.userAssignedIdentity.resourceIdstring
policies[].policy.extProc.policies.backendAuth.azure.explicitConfig.workloadIdentityobject
policies[].policy.extProc.policies.backendAuth.azure.developerImplicitobject
policies[].policy.extProc.policies.backendAuth.azure.implicitobject
policies[].policy.extProc.policies.httpobjectSpecify HTTP settings for the backend
policies[].policy.extProc.policies.http.versionstring
policies[].policy.extProc.policies.http.requestTimeoutstring
policies[].policy.extProc.policies.tcpobjectSpecify TCP settings for the backend
policies[].policy.extProc.policies.tcp.keepalivesobject
policies[].policy.extProc.policies.tcp.keepalives.enabledboolean
policies[].policy.extProc.policies.tcp.keepalives.timestring
policies[].policy.extProc.policies.tcp.keepalives.intervalstring
policies[].policy.extProc.policies.tcp.keepalives.retriesinteger
policies[].policy.extProc.policies.tcp.connectTimeoutobject
policies[].policy.extProc.policies.tcp.connectTimeout.secsinteger
policies[].policy.extProc.policies.tcp.connectTimeout.nanosinteger
policies[].policy.extProc.policies.healthobjectHealth policy for backend outlier detection; evicts on unhealthy responses based on CEL condition and configurable duration.
policies[].policy.extProc.policies.health.unhealthyExpressionstringCEL expression; true means unhealthy (evict). E.g. response.code >= 500.
When unset, any 5xx or connection failure is treated as unhealthy.
policies[].policy.extProc.policies.health.evictionobjectLocal/config eviction sub-policy with duration as string; mirrors Eviction.
policies[].policy.extProc.policies.health.eviction.durationstring
policies[].policy.extProc.policies.health.eviction.restoreHealthnumber
policies[].policy.extProc.policies.health.eviction.consecutiveFailuresinteger
policies[].policy.extProc.policies.health.eviction.healthThresholdnumber
policies[].policy.extProc.policies.backendTunnelobjectSpecify a tunnel to use when connecting to the backend
policies[].policy.extProc.policies.backendTunnel.proxyobjectReference to the proxy address
Exactly one of service, host, or backend may be set.
policies[].policy.extProc.policies.backendTunnel.proxy.serviceobject
policies[].policy.extProc.policies.backendTunnel.proxy.service.nameobject
policies[].policy.extProc.policies.backendTunnel.proxy.service.name.namespacestring
policies[].policy.extProc.policies.backendTunnel.proxy.service.name.hostnamestring
policies[].policy.extProc.policies.backendTunnel.proxy.service.portinteger
policies[].policy.extProc.policies.backendTunnel.proxy.hoststringHostname or IP address
policies[].policy.extProc.policies.backendTunnel.proxy.backendstringExplicit backend reference. Backend must be defined in the top level backends list
policies[].policy.extProc.failureModestringBehavior when the ext_proc service is unavailable or returns an error
policies[].policy.extProc.metadataContextobjectAdditional metadata to send to the external processing service.
Maps to the metadata_context.filter_metadata field in ProcessingRequest, and allows dynamic CEL expressions.
policies[].policy.extProc.requestAttributesobjectMaps to the request attributes field in ProcessingRequest, and allows dynamic CEL expressions.
policies[].policy.extProc.responseAttributesobjectMaps to the response attributes field in ProcessingRequest, and allows dynamic CEL expressions.
policies[].policy.transformationsobjectModify requests and responses
policies[].policy.transformations.requestobject
policies[].policy.transformations.request.addobject
policies[].policy.transformations.request.setobject
policies[].policy.transformations.request.remove[]string
policies[].policy.transformations.request.bodystring
policies[].policy.transformations.request.metadataobject
policies[].policy.transformations.responseobject
policies[].policy.transformations.response.addobject
policies[].policy.transformations.response.setobject
policies[].policy.transformations.response.remove[]string
policies[].policy.transformations.response.bodystring
policies[].policy.transformations.response.metadataobject
policies[].policy.csrfobjectHandle CSRF protection by validating request origins against configured allowed origins.
policies[].policy.csrf.additionalOrigins[]string
policies[].policy.timeoutobjectTimeout requests that exceed the configured duration.
policies[].policy.timeout.requestTimeoutstring
policies[].policy.timeout.backendRequestTimeoutstring
policies[].policy.retryobjectRetry matching requests.
policies[].policy.retry.attemptsinteger
policies[].policy.retry.backoffstring
policies[].policy.retry.codes[]integer
workloadsany
servicesany
backends[]object
backends[].namestring
backends[].hoststring
backends[].policiesobject
backends[].policies.requestHeaderModifierobjectHeaders to be modified in the request.
backends[].policies.requestHeaderModifier.addobject
backends[].policies.requestHeaderModifier.setobject
backends[].policies.requestHeaderModifier.remove[]string
backends[].policies.responseHeaderModifierobjectHeaders to be modified in the response.
backends[].policies.responseHeaderModifier.addobject
backends[].policies.responseHeaderModifier.setobject
backends[].policies.responseHeaderModifier.remove[]string
backends[].policies.requestRedirectobjectDirectly respond to the request with a redirect.
backends[].policies.requestRedirect.schemestring
backends[].policies.requestRedirect.authoritystring
backends[].policies.requestRedirect.authority.fullstring
backends[].policies.requestRedirect.authority.hoststring
backends[].policies.requestRedirect.authority.portinteger
backends[].policies.requestRedirect.pathobject
backends[].policies.requestRedirect.path.fullstring
backends[].policies.requestRedirect.path.prefixstring
backends[].policies.requestRedirect.statusinteger
backends[].policies.transformationsobjectModify requests and responses sent to and from the backend.
backends[].policies.transformations.requestobject
backends[].policies.transformations.request.addobject
backends[].policies.transformations.request.setobject
backends[].policies.transformations.request.remove[]string
backends[].policies.transformations.request.bodystring
backends[].policies.transformations.request.metadataobject
backends[].policies.transformations.responseobject
backends[].policies.transformations.response.addobject
backends[].policies.transformations.response.setobject
backends[].policies.transformations.response.remove[]string
backends[].policies.transformations.response.bodystring
backends[].policies.transformations.response.metadataobject
backends[].policies.backendTLSobjectSend TLS to the backend.
backends[].policies.backendTLS.certstring
backends[].policies.backendTLS.keystring
backends[].policies.backendTLS.rootstring
backends[].policies.backendTLS.hostnamestring
backends[].policies.backendTLS.insecureboolean
backends[].policies.backendTLS.insecureHostboolean
backends[].policies.backendTLS.alpn[]string
backends[].policies.backendTLS.subjectAltNames[]string
backends[].policies.backendAuthobjectAuthenticate to the backend.
backends[].policies.backendAuth.passthroughobject
backends[].policies.backendAuth.keyobject
backends[].policies.backendAuth.key.filestring
backends[].policies.backendAuth.gcpobject
backends[].policies.backendAuth.gcp.typestring
backends[].policies.backendAuth.gcp.audiencestringAudience for the token. If not set, the destination host will be used.
backends[].policies.backendAuth.gcp.typestring
backends[].policies.backendAuth.awsobject
backends[].policies.backendAuth.aws.accessKeyIdstring
backends[].policies.backendAuth.aws.secretAccessKeystring
backends[].policies.backendAuth.aws.regionstring
backends[].policies.backendAuth.aws.sessionTokenstring
backends[].policies.backendAuth.azureobjectExactly one of explicitConfig, developerImplicit, or implicit may be set.
backends[].policies.backendAuth.azure.explicitConfigobjectExactly one of clientSecret, managedIdentity, or workloadIdentity may be set.
backends[].policies.backendAuth.azure.explicitConfig.clientSecretobject
backends[].policies.backendAuth.azure.explicitConfig.clientSecret.tenant_idstring
backends[].policies.backendAuth.azure.explicitConfig.clientSecret.client_idstring
backends[].policies.backendAuth.azure.explicitConfig.clientSecret.client_secretstring
backends[].policies.backendAuth.azure.explicitConfig.managedIdentityobject
backends[].policies.backendAuth.azure.explicitConfig.managedIdentity.userAssignedIdentityobject
backends[].policies.backendAuth.azure.explicitConfig.managedIdentity.userAssignedIdentity.clientIdstring
backends[].policies.backendAuth.azure.explicitConfig.managedIdentity.userAssignedIdentity.objectIdstring
backends[].policies.backendAuth.azure.explicitConfig.managedIdentity.userAssignedIdentity.resourceIdstring
backends[].policies.backendAuth.azure.explicitConfig.workloadIdentityobject
backends[].policies.backendAuth.azure.developerImplicitobject
backends[].policies.backendAuth.azure.implicitobject
backends[].policies.httpobjectSpecify HTTP settings for the backend
backends[].policies.http.versionstring
backends[].policies.http.requestTimeoutstring
backends[].policies.tcpobjectSpecify TCP settings for the backend
backends[].policies.tcp.keepalivesobject
backends[].policies.tcp.keepalives.enabledboolean
backends[].policies.tcp.keepalives.timestring
backends[].policies.tcp.keepalives.intervalstring
backends[].policies.tcp.keepalives.retriesinteger
backends[].policies.tcp.connectTimeoutobject
backends[].policies.tcp.connectTimeout.secsinteger
backends[].policies.tcp.connectTimeout.nanosinteger
backends[].policies.healthobjectHealth policy for backend outlier detection; evicts on unhealthy responses based on CEL condition and configurable duration.
backends[].policies.health.unhealthyExpressionstringCEL expression; true means unhealthy (evict). E.g. response.code >= 500.
When unset, any 5xx or connection failure is treated as unhealthy.
backends[].policies.health.evictionobjectLocal/config eviction sub-policy with duration as string; mirrors Eviction.
backends[].policies.health.eviction.durationstring
backends[].policies.health.eviction.restoreHealthnumber
backends[].policies.health.eviction.consecutiveFailuresinteger
backends[].policies.health.eviction.healthThresholdnumber
backends[].policies.backendTunnelobjectSpecify a tunnel to use when connecting to the backend
backends[].policies.backendTunnel.proxyobjectReference to the proxy address
Exactly one of service, host, or backend may be set.
backends[].policies.backendTunnel.proxy.serviceobject
backends[].policies.backendTunnel.proxy.service.nameobject
backends[].policies.backendTunnel.proxy.service.name.namespacestring
backends[].policies.backendTunnel.proxy.service.name.hostnamestring
backends[].policies.backendTunnel.proxy.service.portinteger
backends[].policies.backendTunnel.proxy.hoststringHostname or IP address
backends[].policies.backendTunnel.proxy.backendstringExplicit backend reference. Backend must be defined in the top level backends list
backends[].policies.mcpAuthorizationobjectAuthorization policies for MCP access.
backends[].policies.mcpAuthorization.rules[]string
backends[].policies.a2aobjectMark this traffic as A2A to enable A2A processing and telemetry.
backends[].policies.aiobjectMark this as LLM traffic to enable LLM processing.
backends[].policies.ai.promptGuardobject
backends[].policies.ai.promptGuard.request[]object
backends[].policies.ai.promptGuard.request[].regexobject
backends[].policies.ai.promptGuard.request[].regex.actionstring
backends[].policies.ai.promptGuard.request[].regex.rules[]object
backends[].policies.ai.promptGuard.request[].regex.rules[].builtinstring
backends[].policies.ai.promptGuard.request[].regex.rules[].patternstring
backends[].policies.ai.promptGuard.request[].webhookobject
backends[].policies.ai.promptGuard.request[].webhook.targetobjectExactly one of service, host, or backend may be set.
backends[].policies.ai.promptGuard.request[].webhook.target.serviceobject
backends[].policies.ai.promptGuard.request[].webhook.target.service.nameobject
backends[].policies.ai.promptGuard.request[].webhook.target.service.name.namespacestring
backends[].policies.ai.promptGuard.request[].webhook.target.service.name.hostnamestring
backends[].policies.ai.promptGuard.request[].webhook.target.service.portinteger
backends[].policies.ai.promptGuard.request[].webhook.target.hoststringHostname or IP address
backends[].policies.ai.promptGuard.request[].webhook.target.backendstringExplicit backend reference. Backend must be defined in the top level backends list
backends[].policies.ai.promptGuard.request[].webhook.forwardHeaderMatches[]object
backends[].policies.ai.promptGuard.request[].webhook.forwardHeaderMatches[].namestring
backends[].policies.ai.promptGuard.request[].webhook.forwardHeaderMatches[].valueobjectExactly one of exact or regex may be set.
backends[].policies.ai.promptGuard.request[].webhook.forwardHeaderMatches[].value.exactstring
backends[].policies.ai.promptGuard.request[].webhook.forwardHeaderMatches[].value.regexstring
backends[].policies.ai.promptGuard.request[].openAIModerationobject
backends[].policies.ai.promptGuard.request[].openAIModeration.modelstringModel to use. Defaults to omni-moderation-latest
backends[].policies.ai.promptGuard.request[].openAIModeration.policiesobject
backends[].policies.ai.promptGuard.request[].openAIModeration.policies.requestHeaderModifierobjectHeaders to be modified in the request.
backends[].policies.ai.promptGuard.request[].openAIModeration.policies.requestHeaderModifier.addobject
backends[].policies.ai.promptGuard.request[].openAIModeration.policies.requestHeaderModifier.setobject
backends[].policies.ai.promptGuard.request[].openAIModeration.policies.requestHeaderModifier.remove[]string
backends[].policies.ai.promptGuard.request[].openAIModeration.policies.responseHeaderModifierobjectHeaders to be modified in the response.
backends[].policies.ai.promptGuard.request[].openAIModeration.policies.responseHeaderModifier.addobject
backends[].policies.ai.promptGuard.request[].openAIModeration.policies.responseHeaderModifier.setobject
backends[].policies.ai.promptGuard.request[].openAIModeration.policies.responseHeaderModifier.remove[]string
backends[].policies.ai.promptGuard.request[].openAIModeration.policies.requestRedirectobjectDirectly respond to the request with a redirect.
backends[].policies.ai.promptGuard.request[].openAIModeration.policies.requestRedirect.schemestring
backends[].policies.ai.promptGuard.request[].openAIModeration.policies.requestRedirect.authoritystring
backends[].policies.ai.promptGuard.request[].openAIModeration.policies.requestRedirect.authority.fullstring
backends[].policies.ai.promptGuard.request[].openAIModeration.policies.requestRedirect.authority.hoststring
backends[].policies.ai.promptGuard.request[].openAIModeration.policies.requestRedirect.authority.portinteger
backends[].policies.ai.promptGuard.request[].openAIModeration.policies.requestRedirect.pathobject
backends[].policies.ai.promptGuard.request[].openAIModeration.policies.requestRedirect.path.fullstring
backends[].policies.ai.promptGuard.request[].openAIModeration.policies.requestRedirect.path.prefixstring
backends[].policies.ai.promptGuard.request[].openAIModeration.policies.requestRedirect.statusinteger
backends[].policies.ai.promptGuard.request[].openAIModeration.policies.transformationsobjectModify requests and responses sent to and from the backend.
backends[].policies.ai.promptGuard.request[].openAIModeration.policies.transformations.requestobject
backends[].policies.ai.promptGuard.request[].openAIModeration.policies.transformations.request.addobject
backends[].policies.ai.promptGuard.request[].openAIModeration.policies.transformations.request.setobject
backends[].policies.ai.promptGuard.request[].openAIModeration.policies.transformations.request.remove[]string
backends[].policies.ai.promptGuard.request[].openAIModeration.policies.transformations.request.bodystring
backends[].policies.ai.promptGuard.request[].openAIModeration.policies.transformations.request.metadataobject
backends[].policies.ai.promptGuard.request[].openAIModeration.policies.transformations.responseobject
backends[].policies.ai.promptGuard.request[].openAIModeration.policies.transformations.response.addobject
backends[].policies.ai.promptGuard.request[].openAIModeration.policies.transformations.response.setobject
backends[].policies.ai.promptGuard.request[].openAIModeration.policies.transformations.response.remove[]string
backends[].policies.ai.promptGuard.request[].openAIModeration.policies.transformations.response.bodystring
backends[].policies.ai.promptGuard.request[].openAIModeration.policies.transformations.response.metadataobject
backends[].policies.ai.promptGuard.request[].openAIModeration.policies.backendTLSobjectSend TLS to the backend.
backends[].policies.ai.promptGuard.request[].openAIModeration.policies.backendTLS.certstring
backends[].policies.ai.promptGuard.request[].openAIModeration.policies.backendTLS.keystring
backends[].policies.ai.promptGuard.request[].openAIModeration.policies.backendTLS.rootstring
backends[].policies.ai.promptGuard.request[].openAIModeration.policies.backendTLS.hostnamestring
backends[].policies.ai.promptGuard.request[].openAIModeration.policies.backendTLS.insecureboolean
backends[].policies.ai.promptGuard.request[].openAIModeration.policies.backendTLS.insecureHostboolean
backends[].policies.ai.promptGuard.request[].openAIModeration.policies.backendTLS.alpn[]string
backends[].policies.ai.promptGuard.request[].openAIModeration.policies.backendTLS.subjectAltNames[]string
backends[].policies.ai.promptGuard.request[].openAIModeration.policies.backendAuthobjectAuthenticate to the backend.
backends[].policies.ai.promptGuard.request[].openAIModeration.policies.backendAuth.passthroughobject
backends[].policies.ai.promptGuard.request[].openAIModeration.policies.backendAuth.keyobject
backends[].policies.ai.promptGuard.request[].openAIModeration.policies.backendAuth.key.filestring
backends[].policies.ai.promptGuard.request[].openAIModeration.policies.backendAuth.gcpobject
backends[].policies.ai.promptGuard.request[].openAIModeration.policies.backendAuth.gcp.typestring
backends[].policies.ai.promptGuard.request[].openAIModeration.policies.backendAuth.gcp.audiencestringAudience for the token. If not set, the destination host will be used.
backends[].policies.ai.promptGuard.request[].openAIModeration.policies.backendAuth.gcp.typestring
backends[].policies.ai.promptGuard.request[].openAIModeration.policies.backendAuth.awsobject
backends[].policies.ai.promptGuard.request[].openAIModeration.policies.backendAuth.aws.accessKeyIdstring
backends[].policies.ai.promptGuard.request[].openAIModeration.policies.backendAuth.aws.secretAccessKeystring
backends[].policies.ai.promptGuard.request[].openAIModeration.policies.backendAuth.aws.regionstring
backends[].policies.ai.promptGuard.request[].openAIModeration.policies.backendAuth.aws.sessionTokenstring
backends[].policies.ai.promptGuard.request[].openAIModeration.policies.backendAuth.azureobjectExactly one of explicitConfig, developerImplicit, or implicit may be set.
backends[].policies.ai.promptGuard.request[].openAIModeration.policies.backendAuth.azure.explicitConfigobjectExactly one of clientSecret, managedIdentity, or workloadIdentity may be set.
backends[].policies.ai.promptGuard.request[].openAIModeration.policies.backendAuth.azure.explicitConfig.clientSecretobject
backends[].policies.ai.promptGuard.request[].openAIModeration.policies.backendAuth.azure.explicitConfig.clientSecret.tenant_idstring
backends[].policies.ai.promptGuard.request[].openAIModeration.policies.backendAuth.azure.explicitConfig.clientSecret.client_idstring
backends[].policies.ai.promptGuard.request[].openAIModeration.policies.backendAuth.azure.explicitConfig.clientSecret.client_secretstring
backends[].policies.ai.promptGuard.request[].openAIModeration.policies.backendAuth.azure.explicitConfig.managedIdentityobject
backends[].policies.ai.promptGuard.request[].openAIModeration.policies.backendAuth.azure.explicitConfig.managedIdentity.userAssignedIdentityobject
backends[].policies.ai.promptGuard.request[].openAIModeration.policies.backendAuth.azure.explicitConfig.managedIdentity.userAssignedIdentity.clientIdstring
backends[].policies.ai.promptGuard.request[].openAIModeration.policies.backendAuth.azure.explicitConfig.managedIdentity.userAssignedIdentity.objectIdstring
backends[].policies.ai.promptGuard.request[].openAIModeration.policies.backendAuth.azure.explicitConfig.managedIdentity.userAssignedIdentity.resourceIdstring
backends[].policies.ai.promptGuard.request[].openAIModeration.policies.backendAuth.azure.explicitConfig.workloadIdentityobject
backends[].policies.ai.promptGuard.request[].openAIModeration.policies.backendAuth.azure.developerImplicitobject
backends[].policies.ai.promptGuard.request[].openAIModeration.policies.backendAuth.azure.implicitobject
backends[].policies.ai.promptGuard.request[].openAIModeration.policies.httpobjectSpecify HTTP settings for the backend
backends[].policies.ai.promptGuard.request[].openAIModeration.policies.http.versionstring
backends[].policies.ai.promptGuard.request[].openAIModeration.policies.http.requestTimeoutstring
backends[].policies.ai.promptGuard.request[].openAIModeration.policies.tcpobjectSpecify TCP settings for the backend
backends[].policies.ai.promptGuard.request[].openAIModeration.policies.tcp.keepalivesobject
backends[].policies.ai.promptGuard.request[].openAIModeration.policies.tcp.keepalives.enabledboolean
backends[].policies.ai.promptGuard.request[].openAIModeration.policies.tcp.keepalives.timestring
backends[].policies.ai.promptGuard.request[].openAIModeration.policies.tcp.keepalives.intervalstring
backends[].policies.ai.promptGuard.request[].openAIModeration.policies.tcp.keepalives.retriesinteger
backends[].policies.ai.promptGuard.request[].openAIModeration.policies.tcp.connectTimeoutobject
backends[].policies.ai.promptGuard.request[].openAIModeration.policies.tcp.connectTimeout.secsinteger
backends[].policies.ai.promptGuard.request[].openAIModeration.policies.tcp.connectTimeout.nanosinteger
backends[].policies.ai.promptGuard.request[].openAIModeration.policies.healthobjectHealth policy for backend outlier detection; evicts on unhealthy responses based on CEL condition and configurable duration.
backends[].policies.ai.promptGuard.request[].openAIModeration.policies.health.unhealthyExpressionstringCEL expression; true means unhealthy (evict). E.g. response.code >= 500.
When unset, any 5xx or connection failure is treated as unhealthy.
backends[].policies.ai.promptGuard.request[].openAIModeration.policies.health.evictionobjectLocal/config eviction sub-policy with duration as string; mirrors Eviction.
backends[].policies.ai.promptGuard.request[].openAIModeration.policies.health.eviction.durationstring
backends[].policies.ai.promptGuard.request[].openAIModeration.policies.health.eviction.restoreHealthnumber
backends[].policies.ai.promptGuard.request[].openAIModeration.policies.health.eviction.consecutiveFailuresinteger
backends[].policies.ai.promptGuard.request[].openAIModeration.policies.health.eviction.healthThresholdnumber
backends[].policies.ai.promptGuard.request[].openAIModeration.policies.backendTunnelobjectSpecify a tunnel to use when connecting to the backend
backends[].policies.ai.promptGuard.request[].openAIModeration.policies.backendTunnel.proxyobjectReference to the proxy address
Exactly one of service, host, or backend may be set.
backends[].policies.ai.promptGuard.request[].openAIModeration.policies.backendTunnel.proxy.serviceobject
backends[].policies.ai.promptGuard.request[].openAIModeration.policies.backendTunnel.proxy.service.nameobject
backends[].policies.ai.promptGuard.request[].openAIModeration.policies.backendTunnel.proxy.service.name.namespacestring
backends[].policies.ai.promptGuard.request[].openAIModeration.policies.backendTunnel.proxy.service.name.hostnamestring
backends[].policies.ai.promptGuard.request[].openAIModeration.policies.backendTunnel.proxy.service.portinteger
backends[].policies.ai.promptGuard.request[].openAIModeration.policies.backendTunnel.proxy.hoststringHostname or IP address
backends[].policies.ai.promptGuard.request[].openAIModeration.policies.backendTunnel.proxy.backendstringExplicit backend reference. Backend must be defined in the top level backends list
backends[].policies.ai.promptGuard.request[].bedrockGuardrailsobjectConfiguration for AWS Bedrock Guardrails integration.
backends[].policies.ai.promptGuard.request[].bedrockGuardrails.guardrailIdentifierstringThe unique identifier of the guardrail
backends[].policies.ai.promptGuard.request[].bedrockGuardrails.guardrailVersionstringThe version of the guardrail
backends[].policies.ai.promptGuard.request[].bedrockGuardrails.regionstringAWS region where the guardrail is deployed
backends[].policies.ai.promptGuard.request[].bedrockGuardrails.policiesobjectBackend policies for AWS authentication (optional, defaults to implicit AWS auth)
backends[].policies.ai.promptGuard.request[].bedrockGuardrails.policies.requestHeaderModifierobjectHeaders to be modified in the request.
backends[].policies.ai.promptGuard.request[].bedrockGuardrails.policies.requestHeaderModifier.addobject
backends[].policies.ai.promptGuard.request[].bedrockGuardrails.policies.requestHeaderModifier.setobject
backends[].policies.ai.promptGuard.request[].bedrockGuardrails.policies.requestHeaderModifier.remove[]string
backends[].policies.ai.promptGuard.request[].bedrockGuardrails.policies.responseHeaderModifierobjectHeaders to be modified in the response.
backends[].policies.ai.promptGuard.request[].bedrockGuardrails.policies.responseHeaderModifier.addobject
backends[].policies.ai.promptGuard.request[].bedrockGuardrails.policies.responseHeaderModifier.setobject
backends[].policies.ai.promptGuard.request[].bedrockGuardrails.policies.responseHeaderModifier.remove[]string
backends[].policies.ai.promptGuard.request[].bedrockGuardrails.policies.requestRedirectobjectDirectly respond to the request with a redirect.
backends[].policies.ai.promptGuard.request[].bedrockGuardrails.policies.requestRedirect.schemestring
backends[].policies.ai.promptGuard.request[].bedrockGuardrails.policies.requestRedirect.authoritystring
backends[].policies.ai.promptGuard.request[].bedrockGuardrails.policies.requestRedirect.authority.fullstring
backends[].policies.ai.promptGuard.request[].bedrockGuardrails.policies.requestRedirect.authority.hoststring
backends[].policies.ai.promptGuard.request[].bedrockGuardrails.policies.requestRedirect.authority.portinteger
backends[].policies.ai.promptGuard.request[].bedrockGuardrails.policies.requestRedirect.pathobject
backends[].policies.ai.promptGuard.request[].bedrockGuardrails.policies.requestRedirect.path.fullstring
backends[].policies.ai.promptGuard.request[].bedrockGuardrails.policies.requestRedirect.path.prefixstring
backends[].policies.ai.promptGuard.request[].bedrockGuardrails.policies.requestRedirect.statusinteger
backends[].policies.ai.promptGuard.request[].bedrockGuardrails.policies.transformationsobjectModify requests and responses sent to and from the backend.
backends[].policies.ai.promptGuard.request[].bedrockGuardrails.policies.transformations.requestobject
backends[].policies.ai.promptGuard.request[].bedrockGuardrails.policies.transformations.request.addobject
backends[].policies.ai.promptGuard.request[].bedrockGuardrails.policies.transformations.request.setobject
backends[].policies.ai.promptGuard.request[].bedrockGuardrails.policies.transformations.request.remove[]string
backends[].policies.ai.promptGuard.request[].bedrockGuardrails.policies.transformations.request.bodystring
backends[].policies.ai.promptGuard.request[].bedrockGuardrails.policies.transformations.request.metadataobject
backends[].policies.ai.promptGuard.request[].bedrockGuardrails.policies.transformations.responseobject
backends[].policies.ai.promptGuard.request[].bedrockGuardrails.policies.transformations.response.addobject
backends[].policies.ai.promptGuard.request[].bedrockGuardrails.policies.transformations.response.setobject
backends[].policies.ai.promptGuard.request[].bedrockGuardrails.policies.transformations.response.remove[]string
backends[].policies.ai.promptGuard.request[].bedrockGuardrails.policies.transformations.response.bodystring
backends[].policies.ai.promptGuard.request[].bedrockGuardrails.policies.transformations.response.metadataobject
backends[].policies.ai.promptGuard.request[].bedrockGuardrails.policies.backendTLSobjectSend TLS to the backend.
backends[].policies.ai.promptGuard.request[].bedrockGuardrails.policies.backendTLS.certstring
backends[].policies.ai.promptGuard.request[].bedrockGuardrails.policies.backendTLS.keystring
backends[].policies.ai.promptGuard.request[].bedrockGuardrails.policies.backendTLS.rootstring
backends[].policies.ai.promptGuard.request[].bedrockGuardrails.policies.backendTLS.hostnamestring
backends[].policies.ai.promptGuard.request[].bedrockGuardrails.policies.backendTLS.insecureboolean
backends[].policies.ai.promptGuard.request[].bedrockGuardrails.policies.backendTLS.insecureHostboolean
backends[].policies.ai.promptGuard.request[].bedrockGuardrails.policies.backendTLS.alpn[]string
backends[].policies.ai.promptGuard.request[].bedrockGuardrails.policies.backendTLS.subjectAltNames[]string
backends[].policies.ai.promptGuard.request[].bedrockGuardrails.policies.backendAuthobjectAuthenticate to the backend.
backends[].policies.ai.promptGuard.request[].bedrockGuardrails.policies.backendAuth.passthroughobject
backends[].policies.ai.promptGuard.request[].bedrockGuardrails.policies.backendAuth.keyobject
backends[].policies.ai.promptGuard.request[].bedrockGuardrails.policies.backendAuth.key.filestring
backends[].policies.ai.promptGuard.request[].bedrockGuardrails.policies.backendAuth.gcpobject
backends[].policies.ai.promptGuard.request[].bedrockGuardrails.policies.backendAuth.gcp.typestring
backends[].policies.ai.promptGuard.request[].bedrockGuardrails.policies.backendAuth.gcp.audiencestringAudience for the token. If not set, the destination host will be used.
backends[].policies.ai.promptGuard.request[].bedrockGuardrails.policies.backendAuth.gcp.typestring
backends[].policies.ai.promptGuard.request[].bedrockGuardrails.policies.backendAuth.awsobject
backends[].policies.ai.promptGuard.request[].bedrockGuardrails.policies.backendAuth.aws.accessKeyIdstring
backends[].policies.ai.promptGuard.request[].bedrockGuardrails.policies.backendAuth.aws.secretAccessKeystring
backends[].policies.ai.promptGuard.request[].bedrockGuardrails.policies.backendAuth.aws.regionstring
backends[].policies.ai.promptGuard.request[].bedrockGuardrails.policies.backendAuth.aws.sessionTokenstring
backends[].policies.ai.promptGuard.request[].bedrockGuardrails.policies.backendAuth.azureobjectExactly one of explicitConfig, developerImplicit, or implicit may be set.
backends[].policies.ai.promptGuard.request[].bedrockGuardrails.policies.backendAuth.azure.explicitConfigobjectExactly one of clientSecret, managedIdentity, or workloadIdentity may be set.
backends[].policies.ai.promptGuard.request[].bedrockGuardrails.policies.backendAuth.azure.explicitConfig.clientSecretobject
backends[].policies.ai.promptGuard.request[].bedrockGuardrails.policies.backendAuth.azure.explicitConfig.clientSecret.tenant_idstring
backends[].policies.ai.promptGuard.request[].bedrockGuardrails.policies.backendAuth.azure.explicitConfig.clientSecret.client_idstring
backends[].policies.ai.promptGuard.request[].bedrockGuardrails.policies.backendAuth.azure.explicitConfig.clientSecret.client_secretstring
backends[].policies.ai.promptGuard.request[].bedrockGuardrails.policies.backendAuth.azure.explicitConfig.managedIdentityobject
backends[].policies.ai.promptGuard.request[].bedrockGuardrails.policies.backendAuth.azure.explicitConfig.managedIdentity.userAssignedIdentityobject
backends[].policies.ai.promptGuard.request[].bedrockGuardrails.policies.backendAuth.azure.explicitConfig.managedIdentity.userAssignedIdentity.clientIdstring
backends[].policies.ai.promptGuard.request[].bedrockGuardrails.policies.backendAuth.azure.explicitConfig.managedIdentity.userAssignedIdentity.objectIdstring
backends[].policies.ai.promptGuard.request[].bedrockGuardrails.policies.backendAuth.azure.explicitConfig.managedIdentity.userAssignedIdentity.resourceIdstring
backends[].policies.ai.promptGuard.request[].bedrockGuardrails.policies.backendAuth.azure.explicitConfig.workloadIdentityobject
backends[].policies.ai.promptGuard.request[].bedrockGuardrails.policies.backendAuth.azure.developerImplicitobject
backends[].policies.ai.promptGuard.request[].bedrockGuardrails.policies.backendAuth.azure.implicitobject
backends[].policies.ai.promptGuard.request[].bedrockGuardrails.policies.httpobjectSpecify HTTP settings for the backend
backends[].policies.ai.promptGuard.request[].bedrockGuardrails.policies.http.versionstring
backends[].policies.ai.promptGuard.request[].bedrockGuardrails.policies.http.requestTimeoutstring
backends[].policies.ai.promptGuard.request[].bedrockGuardrails.policies.tcpobjectSpecify TCP settings for the backend
backends[].policies.ai.promptGuard.request[].bedrockGuardrails.policies.tcp.keepalivesobject
backends[].policies.ai.promptGuard.request[].bedrockGuardrails.policies.tcp.keepalives.enabledboolean
backends[].policies.ai.promptGuard.request[].bedrockGuardrails.policies.tcp.keepalives.timestring
backends[].policies.ai.promptGuard.request[].bedrockGuardrails.policies.tcp.keepalives.intervalstring
backends[].policies.ai.promptGuard.request[].bedrockGuardrails.policies.tcp.keepalives.retriesinteger
backends[].policies.ai.promptGuard.request[].bedrockGuardrails.policies.tcp.connectTimeoutobject
backends[].policies.ai.promptGuard.request[].bedrockGuardrails.policies.tcp.connectTimeout.secsinteger
backends[].policies.ai.promptGuard.request[].bedrockGuardrails.policies.tcp.connectTimeout.nanosinteger
backends[].policies.ai.promptGuard.request[].bedrockGuardrails.policies.healthobjectHealth policy for backend outlier detection; evicts on unhealthy responses based on CEL condition and configurable duration.
backends[].policies.ai.promptGuard.request[].bedrockGuardrails.policies.health.unhealthyExpressionstringCEL expression; true means unhealthy (evict). E.g. response.code >= 500.
When unset, any 5xx or connection failure is treated as unhealthy.
backends[].policies.ai.promptGuard.request[].bedrockGuardrails.policies.health.evictionobjectLocal/config eviction sub-policy with duration as string; mirrors Eviction.
backends[].policies.ai.promptGuard.request[].bedrockGuardrails.policies.health.eviction.durationstring
backends[].policies.ai.promptGuard.request[].bedrockGuardrails.policies.health.eviction.restoreHealthnumber
backends[].policies.ai.promptGuard.request[].bedrockGuardrails.policies.health.eviction.consecutiveFailuresinteger
backends[].policies.ai.promptGuard.request[].bedrockGuardrails.policies.health.eviction.healthThresholdnumber
backends[].policies.ai.promptGuard.request[].bedrockGuardrails.policies.backendTunnelobjectSpecify a tunnel to use when connecting to the backend
backends[].policies.ai.promptGuard.request[].bedrockGuardrails.policies.backendTunnel.proxyobjectReference to the proxy address
Exactly one of service, host, or backend may be set.
backends[].policies.ai.promptGuard.request[].bedrockGuardrails.policies.backendTunnel.proxy.serviceobject
backends[].policies.ai.promptGuard.request[].bedrockGuardrails.policies.backendTunnel.proxy.service.nameobject
backends[].policies.ai.promptGuard.request[].bedrockGuardrails.policies.backendTunnel.proxy.service.name.namespacestring
backends[].policies.ai.promptGuard.request[].bedrockGuardrails.policies.backendTunnel.proxy.service.name.hostnamestring
backends[].policies.ai.promptGuard.request[].bedrockGuardrails.policies.backendTunnel.proxy.service.portinteger
backends[].policies.ai.promptGuard.request[].bedrockGuardrails.policies.backendTunnel.proxy.hoststringHostname or IP address
backends[].policies.ai.promptGuard.request[].bedrockGuardrails.policies.backendTunnel.proxy.backendstringExplicit backend reference. Backend must be defined in the top level backends list
backends[].policies.ai.promptGuard.request[].googleModelArmorobjectConfiguration for Google Cloud Model Armor integration.
backends[].policies.ai.promptGuard.request[].googleModelArmor.templateIdstringThe template ID for the Model Armor configuration
backends[].policies.ai.promptGuard.request[].googleModelArmor.projectIdstringThe GCP project ID
backends[].policies.ai.promptGuard.request[].googleModelArmor.locationstringThe GCP region (default: us-central1)
backends[].policies.ai.promptGuard.request[].googleModelArmor.policiesobjectBackend policies for GCP authentication (optional, defaults to implicit GCP auth)
backends[].policies.ai.promptGuard.request[].googleModelArmor.policies.requestHeaderModifierobjectHeaders to be modified in the request.
backends[].policies.ai.promptGuard.request[].googleModelArmor.policies.requestHeaderModifier.addobject
backends[].policies.ai.promptGuard.request[].googleModelArmor.policies.requestHeaderModifier.setobject
backends[].policies.ai.promptGuard.request[].googleModelArmor.policies.requestHeaderModifier.remove[]string
backends[].policies.ai.promptGuard.request[].googleModelArmor.policies.responseHeaderModifierobjectHeaders to be modified in the response.
backends[].policies.ai.promptGuard.request[].googleModelArmor.policies.responseHeaderModifier.addobject
backends[].policies.ai.promptGuard.request[].googleModelArmor.policies.responseHeaderModifier.setobject
backends[].policies.ai.promptGuard.request[].googleModelArmor.policies.responseHeaderModifier.remove[]string
backends[].policies.ai.promptGuard.request[].googleModelArmor.policies.requestRedirectobjectDirectly respond to the request with a redirect.
backends[].policies.ai.promptGuard.request[].googleModelArmor.policies.requestRedirect.schemestring
backends[].policies.ai.promptGuard.request[].googleModelArmor.policies.requestRedirect.authoritystring
backends[].policies.ai.promptGuard.request[].googleModelArmor.policies.requestRedirect.authority.fullstring
backends[].policies.ai.promptGuard.request[].googleModelArmor.policies.requestRedirect.authority.hoststring
backends[].policies.ai.promptGuard.request[].googleModelArmor.policies.requestRedirect.authority.portinteger
backends[].policies.ai.promptGuard.request[].googleModelArmor.policies.requestRedirect.pathobject
backends[].policies.ai.promptGuard.request[].googleModelArmor.policies.requestRedirect.path.fullstring
backends[].policies.ai.promptGuard.request[].googleModelArmor.policies.requestRedirect.path.prefixstring
backends[].policies.ai.promptGuard.request[].googleModelArmor.policies.requestRedirect.statusinteger
backends[].policies.ai.promptGuard.request[].googleModelArmor.policies.transformationsobjectModify requests and responses sent to and from the backend.
backends[].policies.ai.promptGuard.request[].googleModelArmor.policies.transformations.requestobject
backends[].policies.ai.promptGuard.request[].googleModelArmor.policies.transformations.request.addobject
backends[].policies.ai.promptGuard.request[].googleModelArmor.policies.transformations.request.setobject
backends[].policies.ai.promptGuard.request[].googleModelArmor.policies.transformations.request.remove[]string
backends[].policies.ai.promptGuard.request[].googleModelArmor.policies.transformations.request.bodystring
backends[].policies.ai.promptGuard.request[].googleModelArmor.policies.transformations.request.metadataobject
backends[].policies.ai.promptGuard.request[].googleModelArmor.policies.transformations.responseobject
backends[].policies.ai.promptGuard.request[].googleModelArmor.policies.transformations.response.addobject
backends[].policies.ai.promptGuard.request[].googleModelArmor.policies.transformations.response.setobject
backends[].policies.ai.promptGuard.request[].googleModelArmor.policies.transformations.response.remove[]string
backends[].policies.ai.promptGuard.request[].googleModelArmor.policies.transformations.response.bodystring
backends[].policies.ai.promptGuard.request[].googleModelArmor.policies.transformations.response.metadataobject
backends[].policies.ai.promptGuard.request[].googleModelArmor.policies.backendTLSobjectSend TLS to the backend.
backends[].policies.ai.promptGuard.request[].googleModelArmor.policies.backendTLS.certstring
backends[].policies.ai.promptGuard.request[].googleModelArmor.policies.backendTLS.keystring
backends[].policies.ai.promptGuard.request[].googleModelArmor.policies.backendTLS.rootstring
backends[].policies.ai.promptGuard.request[].googleModelArmor.policies.backendTLS.hostnamestring
backends[].policies.ai.promptGuard.request[].googleModelArmor.policies.backendTLS.insecureboolean
backends[].policies.ai.promptGuard.request[].googleModelArmor.policies.backendTLS.insecureHostboolean
backends[].policies.ai.promptGuard.request[].googleModelArmor.policies.backendTLS.alpn[]string
backends[].policies.ai.promptGuard.request[].googleModelArmor.policies.backendTLS.subjectAltNames[]string
backends[].policies.ai.promptGuard.request[].googleModelArmor.policies.backendAuthobjectAuthenticate to the backend.
backends[].policies.ai.promptGuard.request[].googleModelArmor.policies.backendAuth.passthroughobject
backends[].policies.ai.promptGuard.request[].googleModelArmor.policies.backendAuth.keyobject
backends[].policies.ai.promptGuard.request[].googleModelArmor.policies.backendAuth.key.filestring
backends[].policies.ai.promptGuard.request[].googleModelArmor.policies.backendAuth.gcpobject
backends[].policies.ai.promptGuard.request[].googleModelArmor.policies.backendAuth.gcp.typestring
backends[].policies.ai.promptGuard.request[].googleModelArmor.policies.backendAuth.gcp.audiencestringAudience for the token. If not set, the destination host will be used.
backends[].policies.ai.promptGuard.request[].googleModelArmor.policies.backendAuth.gcp.typestring
backends[].policies.ai.promptGuard.request[].googleModelArmor.policies.backendAuth.awsobject
backends[].policies.ai.promptGuard.request[].googleModelArmor.policies.backendAuth.aws.accessKeyIdstring
backends[].policies.ai.promptGuard.request[].googleModelArmor.policies.backendAuth.aws.secretAccessKeystring
backends[].policies.ai.promptGuard.request[].googleModelArmor.policies.backendAuth.aws.regionstring
backends[].policies.ai.promptGuard.request[].googleModelArmor.policies.backendAuth.aws.sessionTokenstring
backends[].policies.ai.promptGuard.request[].googleModelArmor.policies.backendAuth.azureobjectExactly one of explicitConfig, developerImplicit, or implicit may be set.
backends[].policies.ai.promptGuard.request[].googleModelArmor.policies.backendAuth.azure.explicitConfigobjectExactly one of clientSecret, managedIdentity, or workloadIdentity may be set.
backends[].policies.ai.promptGuard.request[].googleModelArmor.policies.backendAuth.azure.explicitConfig.clientSecretobject
backends[].policies.ai.promptGuard.request[].googleModelArmor.policies.backendAuth.azure.explicitConfig.clientSecret.tenant_idstring
backends[].policies.ai.promptGuard.request[].googleModelArmor.policies.backendAuth.azure.explicitConfig.clientSecret.client_idstring
backends[].policies.ai.promptGuard.request[].googleModelArmor.policies.backendAuth.azure.explicitConfig.clientSecret.client_secretstring
backends[].policies.ai.promptGuard.request[].googleModelArmor.policies.backendAuth.azure.explicitConfig.managedIdentityobject
backends[].policies.ai.promptGuard.request[].googleModelArmor.policies.backendAuth.azure.explicitConfig.managedIdentity.userAssignedIdentityobject
backends[].policies.ai.promptGuard.request[].googleModelArmor.policies.backendAuth.azure.explicitConfig.managedIdentity.userAssignedIdentity.clientIdstring
backends[].policies.ai.promptGuard.request[].googleModelArmor.policies.backendAuth.azure.explicitConfig.managedIdentity.userAssignedIdentity.objectIdstring
backends[].policies.ai.promptGuard.request[].googleModelArmor.policies.backendAuth.azure.explicitConfig.managedIdentity.userAssignedIdentity.resourceIdstring
backends[].policies.ai.promptGuard.request[].googleModelArmor.policies.backendAuth.azure.explicitConfig.workloadIdentityobject
backends[].policies.ai.promptGuard.request[].googleModelArmor.policies.backendAuth.azure.developerImplicitobject
backends[].policies.ai.promptGuard.request[].googleModelArmor.policies.backendAuth.azure.implicitobject
backends[].policies.ai.promptGuard.request[].googleModelArmor.policies.httpobjectSpecify HTTP settings for the backend
backends[].policies.ai.promptGuard.request[].googleModelArmor.policies.http.versionstring
backends[].policies.ai.promptGuard.request[].googleModelArmor.policies.http.requestTimeoutstring
backends[].policies.ai.promptGuard.request[].googleModelArmor.policies.tcpobjectSpecify TCP settings for the backend
backends[].policies.ai.promptGuard.request[].googleModelArmor.policies.tcp.keepalivesobject
backends[].policies.ai.promptGuard.request[].googleModelArmor.policies.tcp.keepalives.enabledboolean
backends[].policies.ai.promptGuard.request[].googleModelArmor.policies.tcp.keepalives.timestring
backends[].policies.ai.promptGuard.request[].googleModelArmor.policies.tcp.keepalives.intervalstring
backends[].policies.ai.promptGuard.request[].googleModelArmor.policies.tcp.keepalives.retriesinteger
backends[].policies.ai.promptGuard.request[].googleModelArmor.policies.tcp.connectTimeoutobject
backends[].policies.ai.promptGuard.request[].googleModelArmor.policies.tcp.connectTimeout.secsinteger
backends[].policies.ai.promptGuard.request[].googleModelArmor.policies.tcp.connectTimeout.nanosinteger
backends[].policies.ai.promptGuard.request[].googleModelArmor.policies.healthobjectHealth policy for backend outlier detection; evicts on unhealthy responses based on CEL condition and configurable duration.
backends[].policies.ai.promptGuard.request[].googleModelArmor.policies.health.unhealthyExpressionstringCEL expression; true means unhealthy (evict). E.g. response.code >= 500.
When unset, any 5xx or connection failure is treated as unhealthy.
backends[].policies.ai.promptGuard.request[].googleModelArmor.policies.health.evictionobjectLocal/config eviction sub-policy with duration as string; mirrors Eviction.
backends[].policies.ai.promptGuard.request[].googleModelArmor.policies.health.eviction.durationstring
backends[].policies.ai.promptGuard.request[].googleModelArmor.policies.health.eviction.restoreHealthnumber
backends[].policies.ai.promptGuard.request[].googleModelArmor.policies.health.eviction.consecutiveFailuresinteger
backends[].policies.ai.promptGuard.request[].googleModelArmor.policies.health.eviction.healthThresholdnumber
backends[].policies.ai.promptGuard.request[].googleModelArmor.policies.backendTunnelobjectSpecify a tunnel to use when connecting to the backend
backends[].policies.ai.promptGuard.request[].googleModelArmor.policies.backendTunnel.proxyobjectReference to the proxy address
Exactly one of service, host, or backend may be set.
backends[].policies.ai.promptGuard.request[].googleModelArmor.policies.backendTunnel.proxy.serviceobject
backends[].policies.ai.promptGuard.request[].googleModelArmor.policies.backendTunnel.proxy.service.nameobject
backends[].policies.ai.promptGuard.request[].googleModelArmor.policies.backendTunnel.proxy.service.name.namespacestring
backends[].policies.ai.promptGuard.request[].googleModelArmor.policies.backendTunnel.proxy.service.name.hostnamestring
backends[].policies.ai.promptGuard.request[].googleModelArmor.policies.backendTunnel.proxy.service.portinteger
backends[].policies.ai.promptGuard.request[].googleModelArmor.policies.backendTunnel.proxy.hoststringHostname or IP address
backends[].policies.ai.promptGuard.request[].googleModelArmor.policies.backendTunnel.proxy.backendstringExplicit backend reference. Backend must be defined in the top level backends list
backends[].policies.ai.promptGuard.request[].rejectionobject
backends[].policies.ai.promptGuard.request[].rejection.bodyarray
backends[].policies.ai.promptGuard.request[].rejection.statusinteger
backends[].policies.ai.promptGuard.request[].rejection.headersobjectOptional headers to add, set, or remove from the rejection response
backends[].policies.ai.promptGuard.request[].rejection.headers.addobject
backends[].policies.ai.promptGuard.request[].rejection.headers.setobject
backends[].policies.ai.promptGuard.request[].rejection.headers.remove[]string
backends[].policies.ai.promptGuard.response[]object
backends[].policies.ai.promptGuard.response[].regexobject
backends[].policies.ai.promptGuard.response[].regex.actionstring
backends[].policies.ai.promptGuard.response[].regex.rules[]object
backends[].policies.ai.promptGuard.response[].regex.rules[].builtinstring
backends[].policies.ai.promptGuard.response[].regex.rules[].patternstring
backends[].policies.ai.promptGuard.response[].webhookobject
backends[].policies.ai.promptGuard.response[].webhook.targetobjectExactly one of service, host, or backend may be set.
backends[].policies.ai.promptGuard.response[].webhook.target.serviceobject
backends[].policies.ai.promptGuard.response[].webhook.target.service.nameobject
backends[].policies.ai.promptGuard.response[].webhook.target.service.name.namespacestring
backends[].policies.ai.promptGuard.response[].webhook.target.service.name.hostnamestring
backends[].policies.ai.promptGuard.response[].webhook.target.service.portinteger
backends[].policies.ai.promptGuard.response[].webhook.target.hoststringHostname or IP address
backends[].policies.ai.promptGuard.response[].webhook.target.backendstringExplicit backend reference. Backend must be defined in the top level backends list
backends[].policies.ai.promptGuard.response[].webhook.forwardHeaderMatches[]object
backends[].policies.ai.promptGuard.response[].webhook.forwardHeaderMatches[].namestring
backends[].policies.ai.promptGuard.response[].webhook.forwardHeaderMatches[].valueobjectExactly one of exact or regex may be set.
backends[].policies.ai.promptGuard.response[].webhook.forwardHeaderMatches[].value.exactstring
backends[].policies.ai.promptGuard.response[].webhook.forwardHeaderMatches[].value.regexstring
backends[].policies.ai.promptGuard.response[].bedrockGuardrailsobjectConfiguration for AWS Bedrock Guardrails integration.
backends[].policies.ai.promptGuard.response[].bedrockGuardrails.guardrailIdentifierstringThe unique identifier of the guardrail
backends[].policies.ai.promptGuard.response[].bedrockGuardrails.guardrailVersionstringThe version of the guardrail
backends[].policies.ai.promptGuard.response[].bedrockGuardrails.regionstringAWS region where the guardrail is deployed
backends[].policies.ai.promptGuard.response[].bedrockGuardrails.policiesobjectBackend policies for AWS authentication (optional, defaults to implicit AWS auth)
backends[].policies.ai.promptGuard.response[].bedrockGuardrails.policies.requestHeaderModifierobjectHeaders to be modified in the request.
backends[].policies.ai.promptGuard.response[].bedrockGuardrails.policies.requestHeaderModifier.addobject
backends[].policies.ai.promptGuard.response[].bedrockGuardrails.policies.requestHeaderModifier.setobject
backends[].policies.ai.promptGuard.response[].bedrockGuardrails.policies.requestHeaderModifier.remove[]string
backends[].policies.ai.promptGuard.response[].bedrockGuardrails.policies.responseHeaderModifierobjectHeaders to be modified in the response.
backends[].policies.ai.promptGuard.response[].bedrockGuardrails.policies.responseHeaderModifier.addobject
backends[].policies.ai.promptGuard.response[].bedrockGuardrails.policies.responseHeaderModifier.setobject
backends[].policies.ai.promptGuard.response[].bedrockGuardrails.policies.responseHeaderModifier.remove[]string
backends[].policies.ai.promptGuard.response[].bedrockGuardrails.policies.requestRedirectobjectDirectly respond to the request with a redirect.
backends[].policies.ai.promptGuard.response[].bedrockGuardrails.policies.requestRedirect.schemestring
backends[].policies.ai.promptGuard.response[].bedrockGuardrails.policies.requestRedirect.authoritystring
backends[].policies.ai.promptGuard.response[].bedrockGuardrails.policies.requestRedirect.authority.fullstring
backends[].policies.ai.promptGuard.response[].bedrockGuardrails.policies.requestRedirect.authority.hoststring
backends[].policies.ai.promptGuard.response[].bedrockGuardrails.policies.requestRedirect.authority.portinteger
backends[].policies.ai.promptGuard.response[].bedrockGuardrails.policies.requestRedirect.pathobject
backends[].policies.ai.promptGuard.response[].bedrockGuardrails.policies.requestRedirect.path.fullstring
backends[].policies.ai.promptGuard.response[].bedrockGuardrails.policies.requestRedirect.path.prefixstring
backends[].policies.ai.promptGuard.response[].bedrockGuardrails.policies.requestRedirect.statusinteger
backends[].policies.ai.promptGuard.response[].bedrockGuardrails.policies.transformationsobjectModify requests and responses sent to and from the backend.
backends[].policies.ai.promptGuard.response[].bedrockGuardrails.policies.transformations.requestobject
backends[].policies.ai.promptGuard.response[].bedrockGuardrails.policies.transformations.request.addobject
backends[].policies.ai.promptGuard.response[].bedrockGuardrails.policies.transformations.request.setobject
backends[].policies.ai.promptGuard.response[].bedrockGuardrails.policies.transformations.request.remove[]string
backends[].policies.ai.promptGuard.response[].bedrockGuardrails.policies.transformations.request.bodystring
backends[].policies.ai.promptGuard.response[].bedrockGuardrails.policies.transformations.request.metadataobject
backends[].policies.ai.promptGuard.response[].bedrockGuardrails.policies.transformations.responseobject
backends[].policies.ai.promptGuard.response[].bedrockGuardrails.policies.transformations.response.addobject
backends[].policies.ai.promptGuard.response[].bedrockGuardrails.policies.transformations.response.setobject
backends[].policies.ai.promptGuard.response[].bedrockGuardrails.policies.transformations.response.remove[]string
backends[].policies.ai.promptGuard.response[].bedrockGuardrails.policies.transformations.response.bodystring
backends[].policies.ai.promptGuard.response[].bedrockGuardrails.policies.transformations.response.metadataobject
backends[].policies.ai.promptGuard.response[].bedrockGuardrails.policies.backendTLSobjectSend TLS to the backend.
backends[].policies.ai.promptGuard.response[].bedrockGuardrails.policies.backendTLS.certstring
backends[].policies.ai.promptGuard.response[].bedrockGuardrails.policies.backendTLS.keystring
backends[].policies.ai.promptGuard.response[].bedrockGuardrails.policies.backendTLS.rootstring
backends[].policies.ai.promptGuard.response[].bedrockGuardrails.policies.backendTLS.hostnamestring
backends[].policies.ai.promptGuard.response[].bedrockGuardrails.policies.backendTLS.insecureboolean
backends[].policies.ai.promptGuard.response[].bedrockGuardrails.policies.backendTLS.insecureHostboolean
backends[].policies.ai.promptGuard.response[].bedrockGuardrails.policies.backendTLS.alpn[]string
backends[].policies.ai.promptGuard.response[].bedrockGuardrails.policies.backendTLS.subjectAltNames[]string
backends[].policies.ai.promptGuard.response[].bedrockGuardrails.policies.backendAuthobjectAuthenticate to the backend.
backends[].policies.ai.promptGuard.response[].bedrockGuardrails.policies.backendAuth.passthroughobject
backends[].policies.ai.promptGuard.response[].bedrockGuardrails.policies.backendAuth.keyobject
backends[].policies.ai.promptGuard.response[].bedrockGuardrails.policies.backendAuth.key.filestring
backends[].policies.ai.promptGuard.response[].bedrockGuardrails.policies.backendAuth.gcpobject
backends[].policies.ai.promptGuard.response[].bedrockGuardrails.policies.backendAuth.gcp.typestring
backends[].policies.ai.promptGuard.response[].bedrockGuardrails.policies.backendAuth.gcp.audiencestringAudience for the token. If not set, the destination host will be used.
backends[].policies.ai.promptGuard.response[].bedrockGuardrails.policies.backendAuth.gcp.typestring
backends[].policies.ai.promptGuard.response[].bedrockGuardrails.policies.backendAuth.awsobject
backends[].policies.ai.promptGuard.response[].bedrockGuardrails.policies.backendAuth.aws.accessKeyIdstring
backends[].policies.ai.promptGuard.response[].bedrockGuardrails.policies.backendAuth.aws.secretAccessKeystring
backends[].policies.ai.promptGuard.response[].bedrockGuardrails.policies.backendAuth.aws.regionstring
backends[].policies.ai.promptGuard.response[].bedrockGuardrails.policies.backendAuth.aws.sessionTokenstring
backends[].policies.ai.promptGuard.response[].bedrockGuardrails.policies.backendAuth.azureobjectExactly one of explicitConfig, developerImplicit, or implicit may be set.
backends[].policies.ai.promptGuard.response[].bedrockGuardrails.policies.backendAuth.azure.explicitConfigobjectExactly one of clientSecret, managedIdentity, or workloadIdentity may be set.
backends[].policies.ai.promptGuard.response[].bedrockGuardrails.policies.backendAuth.azure.explicitConfig.clientSecretobject
backends[].policies.ai.promptGuard.response[].bedrockGuardrails.policies.backendAuth.azure.explicitConfig.clientSecret.tenant_idstring
backends[].policies.ai.promptGuard.response[].bedrockGuardrails.policies.backendAuth.azure.explicitConfig.clientSecret.client_idstring
backends[].policies.ai.promptGuard.response[].bedrockGuardrails.policies.backendAuth.azure.explicitConfig.clientSecret.client_secretstring
backends[].policies.ai.promptGuard.response[].bedrockGuardrails.policies.backendAuth.azure.explicitConfig.managedIdentityobject
backends[].policies.ai.promptGuard.response[].bedrockGuardrails.policies.backendAuth.azure.explicitConfig.managedIdentity.userAssignedIdentityobject
backends[].policies.ai.promptGuard.response[].bedrockGuardrails.policies.backendAuth.azure.explicitConfig.managedIdentity.userAssignedIdentity.clientIdstring
backends[].policies.ai.promptGuard.response[].bedrockGuardrails.policies.backendAuth.azure.explicitConfig.managedIdentity.userAssignedIdentity.objectIdstring
backends[].policies.ai.promptGuard.response[].bedrockGuardrails.policies.backendAuth.azure.explicitConfig.managedIdentity.userAssignedIdentity.resourceIdstring
backends[].policies.ai.promptGuard.response[].bedrockGuardrails.policies.backendAuth.azure.explicitConfig.workloadIdentityobject
backends[].policies.ai.promptGuard.response[].bedrockGuardrails.policies.backendAuth.azure.developerImplicitobject
backends[].policies.ai.promptGuard.response[].bedrockGuardrails.policies.backendAuth.azure.implicitobject
backends[].policies.ai.promptGuard.response[].bedrockGuardrails.policies.httpobjectSpecify HTTP settings for the backend
backends[].policies.ai.promptGuard.response[].bedrockGuardrails.policies.http.versionstring
backends[].policies.ai.promptGuard.response[].bedrockGuardrails.policies.http.requestTimeoutstring
backends[].policies.ai.promptGuard.response[].bedrockGuardrails.policies.tcpobjectSpecify TCP settings for the backend
backends[].policies.ai.promptGuard.response[].bedrockGuardrails.policies.tcp.keepalivesobject
backends[].policies.ai.promptGuard.response[].bedrockGuardrails.policies.tcp.keepalives.enabledboolean
backends[].policies.ai.promptGuard.response[].bedrockGuardrails.policies.tcp.keepalives.timestring
backends[].policies.ai.promptGuard.response[].bedrockGuardrails.policies.tcp.keepalives.intervalstring
backends[].policies.ai.promptGuard.response[].bedrockGuardrails.policies.tcp.keepalives.retriesinteger
backends[].policies.ai.promptGuard.response[].bedrockGuardrails.policies.tcp.connectTimeoutobject
backends[].policies.ai.promptGuard.response[].bedrockGuardrails.policies.tcp.connectTimeout.secsinteger
backends[].policies.ai.promptGuard.response[].bedrockGuardrails.policies.tcp.connectTimeout.nanosinteger
backends[].policies.ai.promptGuard.response[].bedrockGuardrails.policies.healthobjectHealth policy for backend outlier detection; evicts on unhealthy responses based on CEL condition and configurable duration.
backends[].policies.ai.promptGuard.response[].bedrockGuardrails.policies.health.unhealthyExpressionstringCEL expression; true means unhealthy (evict). E.g. response.code >= 500.
When unset, any 5xx or connection failure is treated as unhealthy.
backends[].policies.ai.promptGuard.response[].bedrockGuardrails.policies.health.evictionobjectLocal/config eviction sub-policy with duration as string; mirrors Eviction.
backends[].policies.ai.promptGuard.response[].bedrockGuardrails.policies.health.eviction.durationstring
backends[].policies.ai.promptGuard.response[].bedrockGuardrails.policies.health.eviction.restoreHealthnumber
backends[].policies.ai.promptGuard.response[].bedrockGuardrails.policies.health.eviction.consecutiveFailuresinteger
backends[].policies.ai.promptGuard.response[].bedrockGuardrails.policies.health.eviction.healthThresholdnumber
backends[].policies.ai.promptGuard.response[].bedrockGuardrails.policies.backendTunnelobjectSpecify a tunnel to use when connecting to the backend
backends[].policies.ai.promptGuard.response[].bedrockGuardrails.policies.backendTunnel.proxyobjectReference to the proxy address
Exactly one of service, host, or backend may be set.
backends[].policies.ai.promptGuard.response[].bedrockGuardrails.policies.backendTunnel.proxy.serviceobject
backends[].policies.ai.promptGuard.response[].bedrockGuardrails.policies.backendTunnel.proxy.service.nameobject
backends[].policies.ai.promptGuard.response[].bedrockGuardrails.policies.backendTunnel.proxy.service.name.namespacestring
backends[].policies.ai.promptGuard.response[].bedrockGuardrails.policies.backendTunnel.proxy.service.name.hostnamestring
backends[].policies.ai.promptGuard.response[].bedrockGuardrails.policies.backendTunnel.proxy.service.portinteger
backends[].policies.ai.promptGuard.response[].bedrockGuardrails.policies.backendTunnel.proxy.hoststringHostname or IP address
backends[].policies.ai.promptGuard.response[].bedrockGuardrails.policies.backendTunnel.proxy.backendstringExplicit backend reference. Backend must be defined in the top level backends list
backends[].policies.ai.promptGuard.response[].googleModelArmorobjectConfiguration for Google Cloud Model Armor integration.
backends[].policies.ai.promptGuard.response[].googleModelArmor.templateIdstringThe template ID for the Model Armor configuration
backends[].policies.ai.promptGuard.response[].googleModelArmor.projectIdstringThe GCP project ID
backends[].policies.ai.promptGuard.response[].googleModelArmor.locationstringThe GCP region (default: us-central1)
backends[].policies.ai.promptGuard.response[].googleModelArmor.policiesobjectBackend policies for GCP authentication (optional, defaults to implicit GCP auth)
backends[].policies.ai.promptGuard.response[].googleModelArmor.policies.requestHeaderModifierobjectHeaders to be modified in the request.
backends[].policies.ai.promptGuard.response[].googleModelArmor.policies.requestHeaderModifier.addobject
backends[].policies.ai.promptGuard.response[].googleModelArmor.policies.requestHeaderModifier.setobject
backends[].policies.ai.promptGuard.response[].googleModelArmor.policies.requestHeaderModifier.remove[]string
backends[].policies.ai.promptGuard.response[].googleModelArmor.policies.responseHeaderModifierobjectHeaders to be modified in the response.
backends[].policies.ai.promptGuard.response[].googleModelArmor.policies.responseHeaderModifier.addobject
backends[].policies.ai.promptGuard.response[].googleModelArmor.policies.responseHeaderModifier.setobject
backends[].policies.ai.promptGuard.response[].googleModelArmor.policies.responseHeaderModifier.remove[]string
backends[].policies.ai.promptGuard.response[].googleModelArmor.policies.requestRedirectobjectDirectly respond to the request with a redirect.
backends[].policies.ai.promptGuard.response[].googleModelArmor.policies.requestRedirect.schemestring
backends[].policies.ai.promptGuard.response[].googleModelArmor.policies.requestRedirect.authoritystring
backends[].policies.ai.promptGuard.response[].googleModelArmor.policies.requestRedirect.authority.fullstring
backends[].policies.ai.promptGuard.response[].googleModelArmor.policies.requestRedirect.authority.hoststring
backends[].policies.ai.promptGuard.response[].googleModelArmor.policies.requestRedirect.authority.portinteger
backends[].policies.ai.promptGuard.response[].googleModelArmor.policies.requestRedirect.pathobject
backends[].policies.ai.promptGuard.response[].googleModelArmor.policies.requestRedirect.path.fullstring
backends[].policies.ai.promptGuard.response[].googleModelArmor.policies.requestRedirect.path.prefixstring
backends[].policies.ai.promptGuard.response[].googleModelArmor.policies.requestRedirect.statusinteger
backends[].policies.ai.promptGuard.response[].googleModelArmor.policies.transformationsobjectModify requests and responses sent to and from the backend.
backends[].policies.ai.promptGuard.response[].googleModelArmor.policies.transformations.requestobject
backends[].policies.ai.promptGuard.response[].googleModelArmor.policies.transformations.request.addobject
backends[].policies.ai.promptGuard.response[].googleModelArmor.policies.transformations.request.setobject
backends[].policies.ai.promptGuard.response[].googleModelArmor.policies.transformations.request.remove[]string
backends[].policies.ai.promptGuard.response[].googleModelArmor.policies.transformations.request.bodystring
backends[].policies.ai.promptGuard.response[].googleModelArmor.policies.transformations.request.metadataobject
backends[].policies.ai.promptGuard.response[].googleModelArmor.policies.transformations.responseobject
backends[].policies.ai.promptGuard.response[].googleModelArmor.policies.transformations.response.addobject
backends[].policies.ai.promptGuard.response[].googleModelArmor.policies.transformations.response.setobject
backends[].policies.ai.promptGuard.response[].googleModelArmor.policies.transformations.response.remove[]string
backends[].policies.ai.promptGuard.response[].googleModelArmor.policies.transformations.response.bodystring
backends[].policies.ai.promptGuard.response[].googleModelArmor.policies.transformations.response.metadataobject
backends[].policies.ai.promptGuard.response[].googleModelArmor.policies.backendTLSobjectSend TLS to the backend.
backends[].policies.ai.promptGuard.response[].googleModelArmor.policies.backendTLS.certstring
backends[].policies.ai.promptGuard.response[].googleModelArmor.policies.backendTLS.keystring
backends[].policies.ai.promptGuard.response[].googleModelArmor.policies.backendTLS.rootstring
backends[].policies.ai.promptGuard.response[].googleModelArmor.policies.backendTLS.hostnamestring
backends[].policies.ai.promptGuard.response[].googleModelArmor.policies.backendTLS.insecureboolean
backends[].policies.ai.promptGuard.response[].googleModelArmor.policies.backendTLS.insecureHostboolean
backends[].policies.ai.promptGuard.response[].googleModelArmor.policies.backendTLS.alpn[]string
backends[].policies.ai.promptGuard.response[].googleModelArmor.policies.backendTLS.subjectAltNames[]string
backends[].policies.ai.promptGuard.response[].googleModelArmor.policies.backendAuthobjectAuthenticate to the backend.
backends[].policies.ai.promptGuard.response[].googleModelArmor.policies.backendAuth.passthroughobject
backends[].policies.ai.promptGuard.response[].googleModelArmor.policies.backendAuth.keyobject
backends[].policies.ai.promptGuard.response[].googleModelArmor.policies.backendAuth.key.filestring
backends[].policies.ai.promptGuard.response[].googleModelArmor.policies.backendAuth.gcpobject
backends[].policies.ai.promptGuard.response[].googleModelArmor.policies.backendAuth.gcp.typestring
backends[].policies.ai.promptGuard.response[].googleModelArmor.policies.backendAuth.gcp.audiencestringAudience for the token. If not set, the destination host will be used.
backends[].policies.ai.promptGuard.response[].googleModelArmor.policies.backendAuth.gcp.typestring
backends[].policies.ai.promptGuard.response[].googleModelArmor.policies.backendAuth.awsobject
backends[].policies.ai.promptGuard.response[].googleModelArmor.policies.backendAuth.aws.accessKeyIdstring
backends[].policies.ai.promptGuard.response[].googleModelArmor.policies.backendAuth.aws.secretAccessKeystring
backends[].policies.ai.promptGuard.response[].googleModelArmor.policies.backendAuth.aws.regionstring
backends[].policies.ai.promptGuard.response[].googleModelArmor.policies.backendAuth.aws.sessionTokenstring
backends[].policies.ai.promptGuard.response[].googleModelArmor.policies.backendAuth.azureobjectExactly one of explicitConfig, developerImplicit, or implicit may be set.
backends[].policies.ai.promptGuard.response[].googleModelArmor.policies.backendAuth.azure.explicitConfigobjectExactly one of clientSecret, managedIdentity, or workloadIdentity may be set.
backends[].policies.ai.promptGuard.response[].googleModelArmor.policies.backendAuth.azure.explicitConfig.clientSecretobject
backends[].policies.ai.promptGuard.response[].googleModelArmor.policies.backendAuth.azure.explicitConfig.clientSecret.tenant_idstring
backends[].policies.ai.promptGuard.response[].googleModelArmor.policies.backendAuth.azure.explicitConfig.clientSecret.client_idstring
backends[].policies.ai.promptGuard.response[].googleModelArmor.policies.backendAuth.azure.explicitConfig.clientSecret.client_secretstring
backends[].policies.ai.promptGuard.response[].googleModelArmor.policies.backendAuth.azure.explicitConfig.managedIdentityobject
backends[].policies.ai.promptGuard.response[].googleModelArmor.policies.backendAuth.azure.explicitConfig.managedIdentity.userAssignedIdentityobject
backends[].policies.ai.promptGuard.response[].googleModelArmor.policies.backendAuth.azure.explicitConfig.managedIdentity.userAssignedIdentity.clientIdstring
backends[].policies.ai.promptGuard.response[].googleModelArmor.policies.backendAuth.azure.explicitConfig.managedIdentity.userAssignedIdentity.objectIdstring
backends[].policies.ai.promptGuard.response[].googleModelArmor.policies.backendAuth.azure.explicitConfig.managedIdentity.userAssignedIdentity.resourceIdstring
backends[].policies.ai.promptGuard.response[].googleModelArmor.policies.backendAuth.azure.explicitConfig.workloadIdentityobject
backends[].policies.ai.promptGuard.response[].googleModelArmor.policies.backendAuth.azure.developerImplicitobject
backends[].policies.ai.promptGuard.response[].googleModelArmor.policies.backendAuth.azure.implicitobject
backends[].policies.ai.promptGuard.response[].googleModelArmor.policies.httpobjectSpecify HTTP settings for the backend
backends[].policies.ai.promptGuard.response[].googleModelArmor.policies.http.versionstring
backends[].policies.ai.promptGuard.response[].googleModelArmor.policies.http.requestTimeoutstring
backends[].policies.ai.promptGuard.response[].googleModelArmor.policies.tcpobjectSpecify TCP settings for the backend
backends[].policies.ai.promptGuard.response[].googleModelArmor.policies.tcp.keepalivesobject
backends[].policies.ai.promptGuard.response[].googleModelArmor.policies.tcp.keepalives.enabledboolean
backends[].policies.ai.promptGuard.response[].googleModelArmor.policies.tcp.keepalives.timestring
backends[].policies.ai.promptGuard.response[].googleModelArmor.policies.tcp.keepalives.intervalstring
backends[].policies.ai.promptGuard.response[].googleModelArmor.policies.tcp.keepalives.retriesinteger
backends[].policies.ai.promptGuard.response[].googleModelArmor.policies.tcp.connectTimeoutobject
backends[].policies.ai.promptGuard.response[].googleModelArmor.policies.tcp.connectTimeout.secsinteger
backends[].policies.ai.promptGuard.response[].googleModelArmor.policies.tcp.connectTimeout.nanosinteger
backends[].policies.ai.promptGuard.response[].googleModelArmor.policies.healthobjectHealth policy for backend outlier detection; evicts on unhealthy responses based on CEL condition and configurable duration.
backends[].policies.ai.promptGuard.response[].googleModelArmor.policies.health.unhealthyExpressionstringCEL expression; true means unhealthy (evict). E.g. response.code >= 500.
When unset, any 5xx or connection failure is treated as unhealthy.
backends[].policies.ai.promptGuard.response[].googleModelArmor.policies.health.evictionobjectLocal/config eviction sub-policy with duration as string; mirrors Eviction.
backends[].policies.ai.promptGuard.response[].googleModelArmor.policies.health.eviction.durationstring
backends[].policies.ai.promptGuard.response[].googleModelArmor.policies.health.eviction.restoreHealthnumber
backends[].policies.ai.promptGuard.response[].googleModelArmor.policies.health.eviction.consecutiveFailuresinteger
backends[].policies.ai.promptGuard.response[].googleModelArmor.policies.health.eviction.healthThresholdnumber
backends[].policies.ai.promptGuard.response[].googleModelArmor.policies.backendTunnelobjectSpecify a tunnel to use when connecting to the backend
backends[].policies.ai.promptGuard.response[].googleModelArmor.policies.backendTunnel.proxyobjectReference to the proxy address
Exactly one of service, host, or backend may be set.
backends[].policies.ai.promptGuard.response[].googleModelArmor.policies.backendTunnel.proxy.serviceobject
backends[].policies.ai.promptGuard.response[].googleModelArmor.policies.backendTunnel.proxy.service.nameobject
backends[].policies.ai.promptGuard.response[].googleModelArmor.policies.backendTunnel.proxy.service.name.namespacestring
backends[].policies.ai.promptGuard.response[].googleModelArmor.policies.backendTunnel.proxy.service.name.hostnamestring
backends[].policies.ai.promptGuard.response[].googleModelArmor.policies.backendTunnel.proxy.service.portinteger
backends[].policies.ai.promptGuard.response[].googleModelArmor.policies.backendTunnel.proxy.hoststringHostname or IP address
backends[].policies.ai.promptGuard.response[].googleModelArmor.policies.backendTunnel.proxy.backendstringExplicit backend reference. Backend must be defined in the top level backends list
backends[].policies.ai.promptGuard.response[].rejectionobject
backends[].policies.ai.promptGuard.response[].rejection.bodyarray
backends[].policies.ai.promptGuard.response[].rejection.statusinteger
backends[].policies.ai.promptGuard.response[].rejection.headersobjectOptional headers to add, set, or remove from the rejection response
backends[].policies.ai.promptGuard.response[].rejection.headers.addobject
backends[].policies.ai.promptGuard.response[].rejection.headers.setobject
backends[].policies.ai.promptGuard.response[].rejection.headers.remove[]string
backends[].policies.ai.defaultsobject
backends[].policies.ai.overridesobject
backends[].policies.ai.transformationsobject
backends[].policies.ai.promptsobject
backends[].policies.ai.prompts.append[]object
backends[].policies.ai.prompts.append[].rolestring
backends[].policies.ai.prompts.append[].contentstring
backends[].policies.ai.prompts.prepend[]object
backends[].policies.ai.prompts.prepend[].rolestring
backends[].policies.ai.prompts.prepend[].contentstring
backends[].policies.ai.modelAliasesobject
backends[].policies.ai.promptCachingobject
backends[].policies.ai.promptCaching.cacheSystemboolean
backends[].policies.ai.promptCaching.cacheMessagesboolean
backends[].policies.ai.promptCaching.cacheToolsboolean
backends[].policies.ai.promptCaching.minTokensinteger
backends[].policies.ai.routesobject
llmobject
llm.portinteger
llm.models[]objectmodels defines the set of models that can be served by this gateway. The model name refers to the
model in the users request that is matched; the model sent to the actual LLM can be overridden
on a per-model basis.
llm.models[].namestringname is the name of the model we are matching from a users request. If params.model is set, that
will be used in the request to the LLM provider. If not, the incoming model is used.
llm.models[].paramsobjectparams customizes parameters for the outgoing request
llm.models[].params.modelstringThe model to send to the provider.
If unset, the same model will be used from the request.
llm.models[].params.apiKeyobjectAn API key to attach to the request.
If unset this will be automatically detected from the environment.
llm.models[].params.apiKey.filestring
llm.models[].params.awsRegionstring
llm.models[].params.vertexRegionstring
llm.models[].params.vertexProjectstring
llm.models[].params.azureHoststringFor Azure: the host of the deployment
llm.models[].params.azureApiVersionstringFor Azure: the API version to use
llm.models[].params.hostOverridestringOverride the upstream host for this provider.
llm.models[].params.pathOverridestringOverride the upstream path for this provider.
llm.models[].params.tokenizebooleanWhether to tokenize the request before forwarding it upstream.
llm.models[].providerstringprovider of the LLM we are connecting too
llm.models[].defaultsobjectdefaults allows setting default values for the request. If these are not present in the request body, they will be set.
To override even when set, use overrides.
llm.models[].overridesobjectoverrides allows setting values for the request, overriding any existing values
llm.models[].transformationobjecttransformation allows setting values from CEL expressions for the request, overriding any existing values.
llm.models[].requestHeadersobjectrequestHeaders modifies headers in requests to the LLM provider.
llm.models[].requestHeaders.addobject
llm.models[].requestHeaders.setobject
llm.models[].requestHeaders.remove[]string
llm.models[].responseHeadersobjectresponseHeaders modifies headers in responses from the LLM provider.
llm.models[].responseHeaders.addobject
llm.models[].responseHeaders.setobject
llm.models[].responseHeaders.remove[]string
llm.models[].backendTLSobjectbackendTLS configures TLS when connecting to the LLM provider.
llm.models[].backendTLS.certstring
llm.models[].backendTLS.keystring
llm.models[].backendTLS.rootstring
llm.models[].backendTLS.hostnamestring
llm.models[].backendTLS.insecureboolean
llm.models[].backendTLS.insecureHostboolean
llm.models[].backendTLS.alpn[]string
llm.models[].backendTLS.subjectAltNames[]string
llm.models[].healthobjecthealth configures outlier detection for this model backend.
llm.models[].health.unhealthyExpressionstringCEL expression; true means unhealthy (evict). E.g. response.code >= 500.
When unset, any 5xx or connection failure is treated as unhealthy.
llm.models[].health.evictionobjectLocal/config eviction sub-policy with duration as string; mirrors Eviction.
llm.models[].health.eviction.durationstring
llm.models[].health.eviction.restoreHealthnumber
llm.models[].health.eviction.consecutiveFailuresinteger
llm.models[].health.eviction.healthThresholdnumber
llm.models[].backendTunnelobjectbackendTunnel configures tunneling when connecting to the LLM provider.
llm.models[].backendTunnel.proxyobjectReference to the proxy address
Exactly one of service, host, or backend may be set.
llm.models[].backendTunnel.proxy.serviceobject
llm.models[].backendTunnel.proxy.service.nameobject
llm.models[].backendTunnel.proxy.service.name.namespacestring
llm.models[].backendTunnel.proxy.service.name.hostnamestring
llm.models[].backendTunnel.proxy.service.portinteger
llm.models[].backendTunnel.proxy.hoststringHostname or IP address
llm.models[].backendTunnel.proxy.backendstringExplicit backend reference. Backend must be defined in the top level backends list
llm.models[].guardrailsobjectguardrails to apply to the request or response
llm.models[].guardrails.request[]object
llm.models[].guardrails.request[].regexobject
llm.models[].guardrails.request[].regex.actionstring
llm.models[].guardrails.request[].regex.rules[]object
llm.models[].guardrails.request[].regex.rules[].builtinstring
llm.models[].guardrails.request[].regex.rules[].patternstring
llm.models[].guardrails.request[].webhookobject
llm.models[].guardrails.request[].webhook.targetobjectExactly one of service, host, or backend may be set.
llm.models[].guardrails.request[].webhook.target.serviceobject
llm.models[].guardrails.request[].webhook.target.service.nameobject
llm.models[].guardrails.request[].webhook.target.service.name.namespacestring
llm.models[].guardrails.request[].webhook.target.service.name.hostnamestring
llm.models[].guardrails.request[].webhook.target.service.portinteger
llm.models[].guardrails.request[].webhook.target.hoststringHostname or IP address
llm.models[].guardrails.request[].webhook.target.backendstringExplicit backend reference. Backend must be defined in the top level backends list
llm.models[].guardrails.request[].webhook.forwardHeaderMatches[]object
llm.models[].guardrails.request[].webhook.forwardHeaderMatches[].namestring
llm.models[].guardrails.request[].webhook.forwardHeaderMatches[].valueobjectExactly one of exact or regex may be set.
llm.models[].guardrails.request[].webhook.forwardHeaderMatches[].value.exactstring
llm.models[].guardrails.request[].webhook.forwardHeaderMatches[].value.regexstring
llm.models[].guardrails.request[].openAIModerationobject
llm.models[].guardrails.request[].openAIModeration.modelstringModel to use. Defaults to omni-moderation-latest
llm.models[].guardrails.request[].openAIModeration.policiesobject
llm.models[].guardrails.request[].openAIModeration.policies.requestHeaderModifierobjectHeaders to be modified in the request.
llm.models[].guardrails.request[].openAIModeration.policies.requestHeaderModifier.addobject
llm.models[].guardrails.request[].openAIModeration.policies.requestHeaderModifier.setobject
llm.models[].guardrails.request[].openAIModeration.policies.requestHeaderModifier.remove[]string
llm.models[].guardrails.request[].openAIModeration.policies.responseHeaderModifierobjectHeaders to be modified in the response.
llm.models[].guardrails.request[].openAIModeration.policies.responseHeaderModifier.addobject
llm.models[].guardrails.request[].openAIModeration.policies.responseHeaderModifier.setobject
llm.models[].guardrails.request[].openAIModeration.policies.responseHeaderModifier.remove[]string
llm.models[].guardrails.request[].openAIModeration.policies.requestRedirectobjectDirectly respond to the request with a redirect.
llm.models[].guardrails.request[].openAIModeration.policies.requestRedirect.schemestring
llm.models[].guardrails.request[].openAIModeration.policies.requestRedirect.authoritystring
llm.models[].guardrails.request[].openAIModeration.policies.requestRedirect.authority.fullstring
llm.models[].guardrails.request[].openAIModeration.policies.requestRedirect.authority.hoststring
llm.models[].guardrails.request[].openAIModeration.policies.requestRedirect.authority.portinteger
llm.models[].guardrails.request[].openAIModeration.policies.requestRedirect.pathobject
llm.models[].guardrails.request[].openAIModeration.policies.requestRedirect.path.fullstring
llm.models[].guardrails.request[].openAIModeration.policies.requestRedirect.path.prefixstring
llm.models[].guardrails.request[].openAIModeration.policies.requestRedirect.statusinteger
llm.models[].guardrails.request[].openAIModeration.policies.transformationsobjectModify requests and responses sent to and from the backend.
llm.models[].guardrails.request[].openAIModeration.policies.transformations.requestobject
llm.models[].guardrails.request[].openAIModeration.policies.transformations.request.addobject
llm.models[].guardrails.request[].openAIModeration.policies.transformations.request.setobject
llm.models[].guardrails.request[].openAIModeration.policies.transformations.request.remove[]string
llm.models[].guardrails.request[].openAIModeration.policies.transformations.request.bodystring
llm.models[].guardrails.request[].openAIModeration.policies.transformations.request.metadataobject
llm.models[].guardrails.request[].openAIModeration.policies.transformations.responseobject
llm.models[].guardrails.request[].openAIModeration.policies.transformations.response.addobject
llm.models[].guardrails.request[].openAIModeration.policies.transformations.response.setobject
llm.models[].guardrails.request[].openAIModeration.policies.transformations.response.remove[]string
llm.models[].guardrails.request[].openAIModeration.policies.transformations.response.bodystring
llm.models[].guardrails.request[].openAIModeration.policies.transformations.response.metadataobject
llm.models[].guardrails.request[].openAIModeration.policies.backendTLSobjectSend TLS to the backend.
llm.models[].guardrails.request[].openAIModeration.policies.backendTLS.certstring
llm.models[].guardrails.request[].openAIModeration.policies.backendTLS.keystring
llm.models[].guardrails.request[].openAIModeration.policies.backendTLS.rootstring
llm.models[].guardrails.request[].openAIModeration.policies.backendTLS.hostnamestring
llm.models[].guardrails.request[].openAIModeration.policies.backendTLS.insecureboolean
llm.models[].guardrails.request[].openAIModeration.policies.backendTLS.insecureHostboolean
llm.models[].guardrails.request[].openAIModeration.policies.backendTLS.alpn[]string
llm.models[].guardrails.request[].openAIModeration.policies.backendTLS.subjectAltNames[]string
llm.models[].guardrails.request[].openAIModeration.policies.backendAuthobjectAuthenticate to the backend.
llm.models[].guardrails.request[].openAIModeration.policies.backendAuth.passthroughobject
llm.models[].guardrails.request[].openAIModeration.policies.backendAuth.keyobject
llm.models[].guardrails.request[].openAIModeration.policies.backendAuth.key.filestring
llm.models[].guardrails.request[].openAIModeration.policies.backendAuth.gcpobject
llm.models[].guardrails.request[].openAIModeration.policies.backendAuth.gcp.typestring
llm.models[].guardrails.request[].openAIModeration.policies.backendAuth.gcp.audiencestringAudience for the token. If not set, the destination host will be used.
llm.models[].guardrails.request[].openAIModeration.policies.backendAuth.gcp.typestring
llm.models[].guardrails.request[].openAIModeration.policies.backendAuth.awsobject
llm.models[].guardrails.request[].openAIModeration.policies.backendAuth.aws.accessKeyIdstring
llm.models[].guardrails.request[].openAIModeration.policies.backendAuth.aws.secretAccessKeystring
llm.models[].guardrails.request[].openAIModeration.policies.backendAuth.aws.regionstring
llm.models[].guardrails.request[].openAIModeration.policies.backendAuth.aws.sessionTokenstring
llm.models[].guardrails.request[].openAIModeration.policies.backendAuth.azureobjectExactly one of explicitConfig, developerImplicit, or implicit may be set.
llm.models[].guardrails.request[].openAIModeration.policies.backendAuth.azure.explicitConfigobjectExactly one of clientSecret, managedIdentity, or workloadIdentity may be set.
llm.models[].guardrails.request[].openAIModeration.policies.backendAuth.azure.explicitConfig.clientSecretobject
llm.models[].guardrails.request[].openAIModeration.policies.backendAuth.azure.explicitConfig.clientSecret.tenant_idstring
llm.models[].guardrails.request[].openAIModeration.policies.backendAuth.azure.explicitConfig.clientSecret.client_idstring
llm.models[].guardrails.request[].openAIModeration.policies.backendAuth.azure.explicitConfig.clientSecret.client_secretstring
llm.models[].guardrails.request[].openAIModeration.policies.backendAuth.azure.explicitConfig.managedIdentityobject
llm.models[].guardrails.request[].openAIModeration.policies.backendAuth.azure.explicitConfig.managedIdentity.userAssignedIdentityobject
llm.models[].guardrails.request[].openAIModeration.policies.backendAuth.azure.explicitConfig.managedIdentity.userAssignedIdentity.clientIdstring
llm.models[].guardrails.request[].openAIModeration.policies.backendAuth.azure.explicitConfig.managedIdentity.userAssignedIdentity.objectIdstring
llm.models[].guardrails.request[].openAIModeration.policies.backendAuth.azure.explicitConfig.managedIdentity.userAssignedIdentity.resourceIdstring
llm.models[].guardrails.request[].openAIModeration.policies.backendAuth.azure.explicitConfig.workloadIdentityobject
llm.models[].guardrails.request[].openAIModeration.policies.backendAuth.azure.developerImplicitobject
llm.models[].guardrails.request[].openAIModeration.policies.backendAuth.azure.implicitobject
llm.models[].guardrails.request[].openAIModeration.policies.httpobjectSpecify HTTP settings for the backend
llm.models[].guardrails.request[].openAIModeration.policies.http.versionstring
llm.models[].guardrails.request[].openAIModeration.policies.http.requestTimeoutstring
llm.models[].guardrails.request[].openAIModeration.policies.tcpobjectSpecify TCP settings for the backend
llm.models[].guardrails.request[].openAIModeration.policies.tcp.keepalivesobject
llm.models[].guardrails.request[].openAIModeration.policies.tcp.keepalives.enabledboolean
llm.models[].guardrails.request[].openAIModeration.policies.tcp.keepalives.timestring
llm.models[].guardrails.request[].openAIModeration.policies.tcp.keepalives.intervalstring
llm.models[].guardrails.request[].openAIModeration.policies.tcp.keepalives.retriesinteger
llm.models[].guardrails.request[].openAIModeration.policies.tcp.connectTimeoutobject
llm.models[].guardrails.request[].openAIModeration.policies.tcp.connectTimeout.secsinteger
llm.models[].guardrails.request[].openAIModeration.policies.tcp.connectTimeout.nanosinteger
llm.models[].guardrails.request[].openAIModeration.policies.healthobjectHealth policy for backend outlier detection; evicts on unhealthy responses based on CEL condition and configurable duration.
llm.models[].guardrails.request[].openAIModeration.policies.health.unhealthyExpressionstringCEL expression; true means unhealthy (evict). E.g. response.code >= 500.
When unset, any 5xx or connection failure is treated as unhealthy.
llm.models[].guardrails.request[].openAIModeration.policies.health.evictionobjectLocal/config eviction sub-policy with duration as string; mirrors Eviction.
llm.models[].guardrails.request[].openAIModeration.policies.health.eviction.durationstring
llm.models[].guardrails.request[].openAIModeration.policies.health.eviction.restoreHealthnumber
llm.models[].guardrails.request[].openAIModeration.policies.health.eviction.consecutiveFailuresinteger
llm.models[].guardrails.request[].openAIModeration.policies.health.eviction.healthThresholdnumber
llm.models[].guardrails.request[].openAIModeration.policies.backendTunnelobjectSpecify a tunnel to use when connecting to the backend
llm.models[].guardrails.request[].openAIModeration.policies.backendTunnel.proxyobjectReference to the proxy address
Exactly one of service, host, or backend may be set.
llm.models[].guardrails.request[].openAIModeration.policies.backendTunnel.proxy.serviceobject
llm.models[].guardrails.request[].openAIModeration.policies.backendTunnel.proxy.service.nameobject
llm.models[].guardrails.request[].openAIModeration.policies.backendTunnel.proxy.service.name.namespacestring
llm.models[].guardrails.request[].openAIModeration.policies.backendTunnel.proxy.service.name.hostnamestring
llm.models[].guardrails.request[].openAIModeration.policies.backendTunnel.proxy.service.portinteger
llm.models[].guardrails.request[].openAIModeration.policies.backendTunnel.proxy.hoststringHostname or IP address
llm.models[].guardrails.request[].openAIModeration.policies.backendTunnel.proxy.backendstringExplicit backend reference. Backend must be defined in the top level backends list
llm.models[].guardrails.request[].bedrockGuardrailsobjectConfiguration for AWS Bedrock Guardrails integration.
llm.models[].guardrails.request[].bedrockGuardrails.guardrailIdentifierstringThe unique identifier of the guardrail
llm.models[].guardrails.request[].bedrockGuardrails.guardrailVersionstringThe version of the guardrail
llm.models[].guardrails.request[].bedrockGuardrails.regionstringAWS region where the guardrail is deployed
llm.models[].guardrails.request[].bedrockGuardrails.policiesobjectBackend policies for AWS authentication (optional, defaults to implicit AWS auth)
llm.models[].guardrails.request[].bedrockGuardrails.policies.requestHeaderModifierobjectHeaders to be modified in the request.
llm.models[].guardrails.request[].bedrockGuardrails.policies.requestHeaderModifier.addobject
llm.models[].guardrails.request[].bedrockGuardrails.policies.requestHeaderModifier.setobject
llm.models[].guardrails.request[].bedrockGuardrails.policies.requestHeaderModifier.remove[]string
llm.models[].guardrails.request[].bedrockGuardrails.policies.responseHeaderModifierobjectHeaders to be modified in the response.
llm.models[].guardrails.request[].bedrockGuardrails.policies.responseHeaderModifier.addobject
llm.models[].guardrails.request[].bedrockGuardrails.policies.responseHeaderModifier.setobject
llm.models[].guardrails.request[].bedrockGuardrails.policies.responseHeaderModifier.remove[]string
llm.models[].guardrails.request[].bedrockGuardrails.policies.requestRedirectobjectDirectly respond to the request with a redirect.
llm.models[].guardrails.request[].bedrockGuardrails.policies.requestRedirect.schemestring
llm.models[].guardrails.request[].bedrockGuardrails.policies.requestRedirect.authoritystring
llm.models[].guardrails.request[].bedrockGuardrails.policies.requestRedirect.authority.fullstring
llm.models[].guardrails.request[].bedrockGuardrails.policies.requestRedirect.authority.hoststring
llm.models[].guardrails.request[].bedrockGuardrails.policies.requestRedirect.authority.portinteger
llm.models[].guardrails.request[].bedrockGuardrails.policies.requestRedirect.pathobject
llm.models[].guardrails.request[].bedrockGuardrails.policies.requestRedirect.path.fullstring
llm.models[].guardrails.request[].bedrockGuardrails.policies.requestRedirect.path.prefixstring
llm.models[].guardrails.request[].bedrockGuardrails.policies.requestRedirect.statusinteger
llm.models[].guardrails.request[].bedrockGuardrails.policies.transformationsobjectModify requests and responses sent to and from the backend.
llm.models[].guardrails.request[].bedrockGuardrails.policies.transformations.requestobject
llm.models[].guardrails.request[].bedrockGuardrails.policies.transformations.request.addobject
llm.models[].guardrails.request[].bedrockGuardrails.policies.transformations.request.setobject
llm.models[].guardrails.request[].bedrockGuardrails.policies.transformations.request.remove[]string
llm.models[].guardrails.request[].bedrockGuardrails.policies.transformations.request.bodystring
llm.models[].guardrails.request[].bedrockGuardrails.policies.transformations.request.metadataobject
llm.models[].guardrails.request[].bedrockGuardrails.policies.transformations.responseobject
llm.models[].guardrails.request[].bedrockGuardrails.policies.transformations.response.addobject
llm.models[].guardrails.request[].bedrockGuardrails.policies.transformations.response.setobject
llm.models[].guardrails.request[].bedrockGuardrails.policies.transformations.response.remove[]string
llm.models[].guardrails.request[].bedrockGuardrails.policies.transformations.response.bodystring
llm.models[].guardrails.request[].bedrockGuardrails.policies.transformations.response.metadataobject
llm.models[].guardrails.request[].bedrockGuardrails.policies.backendTLSobjectSend TLS to the backend.
llm.models[].guardrails.request[].bedrockGuardrails.policies.backendTLS.certstring
llm.models[].guardrails.request[].bedrockGuardrails.policies.backendTLS.keystring
llm.models[].guardrails.request[].bedrockGuardrails.policies.backendTLS.rootstring
llm.models[].guardrails.request[].bedrockGuardrails.policies.backendTLS.hostnamestring
llm.models[].guardrails.request[].bedrockGuardrails.policies.backendTLS.insecureboolean
llm.models[].guardrails.request[].bedrockGuardrails.policies.backendTLS.insecureHostboolean
llm.models[].guardrails.request[].bedrockGuardrails.policies.backendTLS.alpn[]string
llm.models[].guardrails.request[].bedrockGuardrails.policies.backendTLS.subjectAltNames[]string
llm.models[].guardrails.request[].bedrockGuardrails.policies.backendAuthobjectAuthenticate to the backend.
llm.models[].guardrails.request[].bedrockGuardrails.policies.backendAuth.passthroughobject
llm.models[].guardrails.request[].bedrockGuardrails.policies.backendAuth.keyobject
llm.models[].guardrails.request[].bedrockGuardrails.policies.backendAuth.key.filestring
llm.models[].guardrails.request[].bedrockGuardrails.policies.backendAuth.gcpobject
llm.models[].guardrails.request[].bedrockGuardrails.policies.backendAuth.gcp.typestring
llm.models[].guardrails.request[].bedrockGuardrails.policies.backendAuth.gcp.audiencestringAudience for the token. If not set, the destination host will be used.
llm.models[].guardrails.request[].bedrockGuardrails.policies.backendAuth.gcp.typestring
llm.models[].guardrails.request[].bedrockGuardrails.policies.backendAuth.awsobject
llm.models[].guardrails.request[].bedrockGuardrails.policies.backendAuth.aws.accessKeyIdstring
llm.models[].guardrails.request[].bedrockGuardrails.policies.backendAuth.aws.secretAccessKeystring
llm.models[].guardrails.request[].bedrockGuardrails.policies.backendAuth.aws.regionstring
llm.models[].guardrails.request[].bedrockGuardrails.policies.backendAuth.aws.sessionTokenstring
llm.models[].guardrails.request[].bedrockGuardrails.policies.backendAuth.azureobjectExactly one of explicitConfig, developerImplicit, or implicit may be set.
llm.models[].guardrails.request[].bedrockGuardrails.policies.backendAuth.azure.explicitConfigobjectExactly one of clientSecret, managedIdentity, or workloadIdentity may be set.
llm.models[].guardrails.request[].bedrockGuardrails.policies.backendAuth.azure.explicitConfig.clientSecretobject
llm.models[].guardrails.request[].bedrockGuardrails.policies.backendAuth.azure.explicitConfig.clientSecret.tenant_idstring
llm.models[].guardrails.request[].bedrockGuardrails.policies.backendAuth.azure.explicitConfig.clientSecret.client_idstring
llm.models[].guardrails.request[].bedrockGuardrails.policies.backendAuth.azure.explicitConfig.clientSecret.client_secretstring
llm.models[].guardrails.request[].bedrockGuardrails.policies.backendAuth.azure.explicitConfig.managedIdentityobject
llm.models[].guardrails.request[].bedrockGuardrails.policies.backendAuth.azure.explicitConfig.managedIdentity.userAssignedIdentityobject
llm.models[].guardrails.request[].bedrockGuardrails.policies.backendAuth.azure.explicitConfig.managedIdentity.userAssignedIdentity.clientIdstring
llm.models[].guardrails.request[].bedrockGuardrails.policies.backendAuth.azure.explicitConfig.managedIdentity.userAssignedIdentity.objectIdstring
llm.models[].guardrails.request[].bedrockGuardrails.policies.backendAuth.azure.explicitConfig.managedIdentity.userAssignedIdentity.resourceIdstring
llm.models[].guardrails.request[].bedrockGuardrails.policies.backendAuth.azure.explicitConfig.workloadIdentityobject
llm.models[].guardrails.request[].bedrockGuardrails.policies.backendAuth.azure.developerImplicitobject
llm.models[].guardrails.request[].bedrockGuardrails.policies.backendAuth.azure.implicitobject
llm.models[].guardrails.request[].bedrockGuardrails.policies.httpobjectSpecify HTTP settings for the backend
llm.models[].guardrails.request[].bedrockGuardrails.policies.http.versionstring
llm.models[].guardrails.request[].bedrockGuardrails.policies.http.requestTimeoutstring
llm.models[].guardrails.request[].bedrockGuardrails.policies.tcpobjectSpecify TCP settings for the backend
llm.models[].guardrails.request[].bedrockGuardrails.policies.tcp.keepalivesobject
llm.models[].guardrails.request[].bedrockGuardrails.policies.tcp.keepalives.enabledboolean
llm.models[].guardrails.request[].bedrockGuardrails.policies.tcp.keepalives.timestring
llm.models[].guardrails.request[].bedrockGuardrails.policies.tcp.keepalives.intervalstring
llm.models[].guardrails.request[].bedrockGuardrails.policies.tcp.keepalives.retriesinteger
llm.models[].guardrails.request[].bedrockGuardrails.policies.tcp.connectTimeoutobject
llm.models[].guardrails.request[].bedrockGuardrails.policies.tcp.connectTimeout.secsinteger
llm.models[].guardrails.request[].bedrockGuardrails.policies.tcp.connectTimeout.nanosinteger
llm.models[].guardrails.request[].bedrockGuardrails.policies.healthobjectHealth policy for backend outlier detection; evicts on unhealthy responses based on CEL condition and configurable duration.
llm.models[].guardrails.request[].bedrockGuardrails.policies.health.unhealthyExpressionstringCEL expression; true means unhealthy (evict). E.g. response.code >= 500.
When unset, any 5xx or connection failure is treated as unhealthy.
llm.models[].guardrails.request[].bedrockGuardrails.policies.health.evictionobjectLocal/config eviction sub-policy with duration as string; mirrors Eviction.
llm.models[].guardrails.request[].bedrockGuardrails.policies.health.eviction.durationstring
llm.models[].guardrails.request[].bedrockGuardrails.policies.health.eviction.restoreHealthnumber
llm.models[].guardrails.request[].bedrockGuardrails.policies.health.eviction.consecutiveFailuresinteger
llm.models[].guardrails.request[].bedrockGuardrails.policies.health.eviction.healthThresholdnumber
llm.models[].guardrails.request[].bedrockGuardrails.policies.backendTunnelobjectSpecify a tunnel to use when connecting to the backend
llm.models[].guardrails.request[].bedrockGuardrails.policies.backendTunnel.proxyobjectReference to the proxy address
Exactly one of service, host, or backend may be set.
llm.models[].guardrails.request[].bedrockGuardrails.policies.backendTunnel.proxy.serviceobject
llm.models[].guardrails.request[].bedrockGuardrails.policies.backendTunnel.proxy.service.nameobject
llm.models[].guardrails.request[].bedrockGuardrails.policies.backendTunnel.proxy.service.name.namespacestring
llm.models[].guardrails.request[].bedrockGuardrails.policies.backendTunnel.proxy.service.name.hostnamestring
llm.models[].guardrails.request[].bedrockGuardrails.policies.backendTunnel.proxy.service.portinteger
llm.models[].guardrails.request[].bedrockGuardrails.policies.backendTunnel.proxy.hoststringHostname or IP address
llm.models[].guardrails.request[].bedrockGuardrails.policies.backendTunnel.proxy.backendstringExplicit backend reference. Backend must be defined in the top level backends list
llm.models[].guardrails.request[].googleModelArmorobjectConfiguration for Google Cloud Model Armor integration.
llm.models[].guardrails.request[].googleModelArmor.templateIdstringThe template ID for the Model Armor configuration
llm.models[].guardrails.request[].googleModelArmor.projectIdstringThe GCP project ID
llm.models[].guardrails.request[].googleModelArmor.locationstringThe GCP region (default: us-central1)
llm.models[].guardrails.request[].googleModelArmor.policiesobjectBackend policies for GCP authentication (optional, defaults to implicit GCP auth)
llm.models[].guardrails.request[].googleModelArmor.policies.requestHeaderModifierobjectHeaders to be modified in the request.
llm.models[].guardrails.request[].googleModelArmor.policies.requestHeaderModifier.addobject
llm.models[].guardrails.request[].googleModelArmor.policies.requestHeaderModifier.setobject
llm.models[].guardrails.request[].googleModelArmor.policies.requestHeaderModifier.remove[]string
llm.models[].guardrails.request[].googleModelArmor.policies.responseHeaderModifierobjectHeaders to be modified in the response.
llm.models[].guardrails.request[].googleModelArmor.policies.responseHeaderModifier.addobject
llm.models[].guardrails.request[].googleModelArmor.policies.responseHeaderModifier.setobject
llm.models[].guardrails.request[].googleModelArmor.policies.responseHeaderModifier.remove[]string
llm.models[].guardrails.request[].googleModelArmor.policies.requestRedirectobjectDirectly respond to the request with a redirect.
llm.models[].guardrails.request[].googleModelArmor.policies.requestRedirect.schemestring
llm.models[].guardrails.request[].googleModelArmor.policies.requestRedirect.authoritystring
llm.models[].guardrails.request[].googleModelArmor.policies.requestRedirect.authority.fullstring
llm.models[].guardrails.request[].googleModelArmor.policies.requestRedirect.authority.hoststring
llm.models[].guardrails.request[].googleModelArmor.policies.requestRedirect.authority.portinteger
llm.models[].guardrails.request[].googleModelArmor.policies.requestRedirect.pathobject
llm.models[].guardrails.request[].googleModelArmor.policies.requestRedirect.path.fullstring
llm.models[].guardrails.request[].googleModelArmor.policies.requestRedirect.path.prefixstring
llm.models[].guardrails.request[].googleModelArmor.policies.requestRedirect.statusinteger
llm.models[].guardrails.request[].googleModelArmor.policies.transformationsobjectModify requests and responses sent to and from the backend.
llm.models[].guardrails.request[].googleModelArmor.policies.transformations.requestobject
llm.models[].guardrails.request[].googleModelArmor.policies.transformations.request.addobject
llm.models[].guardrails.request[].googleModelArmor.policies.transformations.request.setobject
llm.models[].guardrails.request[].googleModelArmor.policies.transformations.request.remove[]string
llm.models[].guardrails.request[].googleModelArmor.policies.transformations.request.bodystring
llm.models[].guardrails.request[].googleModelArmor.policies.transformations.request.metadataobject
llm.models[].guardrails.request[].googleModelArmor.policies.transformations.responseobject
llm.models[].guardrails.request[].googleModelArmor.policies.transformations.response.addobject
llm.models[].guardrails.request[].googleModelArmor.policies.transformations.response.setobject
llm.models[].guardrails.request[].googleModelArmor.policies.transformations.response.remove[]string
llm.models[].guardrails.request[].googleModelArmor.policies.transformations.response.bodystring
llm.models[].guardrails.request[].googleModelArmor.policies.transformations.response.metadataobject
llm.models[].guardrails.request[].googleModelArmor.policies.backendTLSobjectSend TLS to the backend.
llm.models[].guardrails.request[].googleModelArmor.policies.backendTLS.certstring
llm.models[].guardrails.request[].googleModelArmor.policies.backendTLS.keystring
llm.models[].guardrails.request[].googleModelArmor.policies.backendTLS.rootstring
llm.models[].guardrails.request[].googleModelArmor.policies.backendTLS.hostnamestring
llm.models[].guardrails.request[].googleModelArmor.policies.backendTLS.insecureboolean
llm.models[].guardrails.request[].googleModelArmor.policies.backendTLS.insecureHostboolean
llm.models[].guardrails.request[].googleModelArmor.policies.backendTLS.alpn[]string
llm.models[].guardrails.request[].googleModelArmor.policies.backendTLS.subjectAltNames[]string
llm.models[].guardrails.request[].googleModelArmor.policies.backendAuthobjectAuthenticate to the backend.
llm.models[].guardrails.request[].googleModelArmor.policies.backendAuth.passthroughobject
llm.models[].guardrails.request[].googleModelArmor.policies.backendAuth.keyobject
llm.models[].guardrails.request[].googleModelArmor.policies.backendAuth.key.filestring
llm.models[].guardrails.request[].googleModelArmor.policies.backendAuth.gcpobject
llm.models[].guardrails.request[].googleModelArmor.policies.backendAuth.gcp.typestring
llm.models[].guardrails.request[].googleModelArmor.policies.backendAuth.gcp.audiencestringAudience for the token. If not set, the destination host will be used.
llm.models[].guardrails.request[].googleModelArmor.policies.backendAuth.gcp.typestring
llm.models[].guardrails.request[].googleModelArmor.policies.backendAuth.awsobject
llm.models[].guardrails.request[].googleModelArmor.policies.backendAuth.aws.accessKeyIdstring
llm.models[].guardrails.request[].googleModelArmor.policies.backendAuth.aws.secretAccessKeystring
llm.models[].guardrails.request[].googleModelArmor.policies.backendAuth.aws.regionstring
llm.models[].guardrails.request[].googleModelArmor.policies.backendAuth.aws.sessionTokenstring
llm.models[].guardrails.request[].googleModelArmor.policies.backendAuth.azureobjectExactly one of explicitConfig, developerImplicit, or implicit may be set.
llm.models[].guardrails.request[].googleModelArmor.policies.backendAuth.azure.explicitConfigobjectExactly one of clientSecret, managedIdentity, or workloadIdentity may be set.
llm.models[].guardrails.request[].googleModelArmor.policies.backendAuth.azure.explicitConfig.clientSecretobject
llm.models[].guardrails.request[].googleModelArmor.policies.backendAuth.azure.explicitConfig.clientSecret.tenant_idstring
llm.models[].guardrails.request[].googleModelArmor.policies.backendAuth.azure.explicitConfig.clientSecret.client_idstring
llm.models[].guardrails.request[].googleModelArmor.policies.backendAuth.azure.explicitConfig.clientSecret.client_secretstring
llm.models[].guardrails.request[].googleModelArmor.policies.backendAuth.azure.explicitConfig.managedIdentityobject
llm.models[].guardrails.request[].googleModelArmor.policies.backendAuth.azure.explicitConfig.managedIdentity.userAssignedIdentityobject
llm.models[].guardrails.request[].googleModelArmor.policies.backendAuth.azure.explicitConfig.managedIdentity.userAssignedIdentity.clientIdstring
llm.models[].guardrails.request[].googleModelArmor.policies.backendAuth.azure.explicitConfig.managedIdentity.userAssignedIdentity.objectIdstring
llm.models[].guardrails.request[].googleModelArmor.policies.backendAuth.azure.explicitConfig.managedIdentity.userAssignedIdentity.resourceIdstring
llm.models[].guardrails.request[].googleModelArmor.policies.backendAuth.azure.explicitConfig.workloadIdentityobject
llm.models[].guardrails.request[].googleModelArmor.policies.backendAuth.azure.developerImplicitobject
llm.models[].guardrails.request[].googleModelArmor.policies.backendAuth.azure.implicitobject
llm.models[].guardrails.request[].googleModelArmor.policies.httpobjectSpecify HTTP settings for the backend
llm.models[].guardrails.request[].googleModelArmor.policies.http.versionstring
llm.models[].guardrails.request[].googleModelArmor.policies.http.requestTimeoutstring
llm.models[].guardrails.request[].googleModelArmor.policies.tcpobjectSpecify TCP settings for the backend
llm.models[].guardrails.request[].googleModelArmor.policies.tcp.keepalivesobject
llm.models[].guardrails.request[].googleModelArmor.policies.tcp.keepalives.enabledboolean
llm.models[].guardrails.request[].googleModelArmor.policies.tcp.keepalives.timestring
llm.models[].guardrails.request[].googleModelArmor.policies.tcp.keepalives.intervalstring
llm.models[].guardrails.request[].googleModelArmor.policies.tcp.keepalives.retriesinteger
llm.models[].guardrails.request[].googleModelArmor.policies.tcp.connectTimeoutobject
llm.models[].guardrails.request[].googleModelArmor.policies.tcp.connectTimeout.secsinteger
llm.models[].guardrails.request[].googleModelArmor.policies.tcp.connectTimeout.nanosinteger
llm.models[].guardrails.request[].googleModelArmor.policies.healthobjectHealth policy for backend outlier detection; evicts on unhealthy responses based on CEL condition and configurable duration.
llm.models[].guardrails.request[].googleModelArmor.policies.health.unhealthyExpressionstringCEL expression; true means unhealthy (evict). E.g. response.code >= 500.
When unset, any 5xx or connection failure is treated as unhealthy.
llm.models[].guardrails.request[].googleModelArmor.policies.health.evictionobjectLocal/config eviction sub-policy with duration as string; mirrors Eviction.
llm.models[].guardrails.request[].googleModelArmor.policies.health.eviction.durationstring
llm.models[].guardrails.request[].googleModelArmor.policies.health.eviction.restoreHealthnumber
llm.models[].guardrails.request[].googleModelArmor.policies.health.eviction.consecutiveFailuresinteger
llm.models[].guardrails.request[].googleModelArmor.policies.health.eviction.healthThresholdnumber
llm.models[].guardrails.request[].googleModelArmor.policies.backendTunnelobjectSpecify a tunnel to use when connecting to the backend
llm.models[].guardrails.request[].googleModelArmor.policies.backendTunnel.proxyobjectReference to the proxy address
Exactly one of service, host, or backend may be set.
llm.models[].guardrails.request[].googleModelArmor.policies.backendTunnel.proxy.serviceobject
llm.models[].guardrails.request[].googleModelArmor.policies.backendTunnel.proxy.service.nameobject
llm.models[].guardrails.request[].googleModelArmor.policies.backendTunnel.proxy.service.name.namespacestring
llm.models[].guardrails.request[].googleModelArmor.policies.backendTunnel.proxy.service.name.hostnamestring
llm.models[].guardrails.request[].googleModelArmor.policies.backendTunnel.proxy.service.portinteger
llm.models[].guardrails.request[].googleModelArmor.policies.backendTunnel.proxy.hoststringHostname or IP address
llm.models[].guardrails.request[].googleModelArmor.policies.backendTunnel.proxy.backendstringExplicit backend reference. Backend must be defined in the top level backends list
llm.models[].guardrails.request[].rejectionobject
llm.models[].guardrails.request[].rejection.bodyarray
llm.models[].guardrails.request[].rejection.statusinteger
llm.models[].guardrails.request[].rejection.headersobjectOptional headers to add, set, or remove from the rejection response
llm.models[].guardrails.request[].rejection.headers.addobject
llm.models[].guardrails.request[].rejection.headers.setobject
llm.models[].guardrails.request[].rejection.headers.remove[]string
llm.models[].guardrails.response[]object
llm.models[].guardrails.response[].regexobject
llm.models[].guardrails.response[].regex.actionstring
llm.models[].guardrails.response[].regex.rules[]object
llm.models[].guardrails.response[].regex.rules[].builtinstring
llm.models[].guardrails.response[].regex.rules[].patternstring
llm.models[].guardrails.response[].webhookobject
llm.models[].guardrails.response[].webhook.targetobjectExactly one of service, host, or backend may be set.
llm.models[].guardrails.response[].webhook.target.serviceobject
llm.models[].guardrails.response[].webhook.target.service.nameobject
llm.models[].guardrails.response[].webhook.target.service.name.namespacestring
llm.models[].guardrails.response[].webhook.target.service.name.hostnamestring
llm.models[].guardrails.response[].webhook.target.service.portinteger
llm.models[].guardrails.response[].webhook.target.hoststringHostname or IP address
llm.models[].guardrails.response[].webhook.target.backendstringExplicit backend reference. Backend must be defined in the top level backends list
llm.models[].guardrails.response[].webhook.forwardHeaderMatches[]object
llm.models[].guardrails.response[].webhook.forwardHeaderMatches[].namestring
llm.models[].guardrails.response[].webhook.forwardHeaderMatches[].valueobjectExactly one of exact or regex may be set.
llm.models[].guardrails.response[].webhook.forwardHeaderMatches[].value.exactstring
llm.models[].guardrails.response[].webhook.forwardHeaderMatches[].value.regexstring
llm.models[].guardrails.response[].bedrockGuardrailsobjectConfiguration for AWS Bedrock Guardrails integration.
llm.models[].guardrails.response[].bedrockGuardrails.guardrailIdentifierstringThe unique identifier of the guardrail
llm.models[].guardrails.response[].bedrockGuardrails.guardrailVersionstringThe version of the guardrail
llm.models[].guardrails.response[].bedrockGuardrails.regionstringAWS region where the guardrail is deployed
llm.models[].guardrails.response[].bedrockGuardrails.policiesobjectBackend policies for AWS authentication (optional, defaults to implicit AWS auth)
llm.models[].guardrails.response[].bedrockGuardrails.policies.requestHeaderModifierobjectHeaders to be modified in the request.
llm.models[].guardrails.response[].bedrockGuardrails.policies.requestHeaderModifier.addobject
llm.models[].guardrails.response[].bedrockGuardrails.policies.requestHeaderModifier.setobject
llm.models[].guardrails.response[].bedrockGuardrails.policies.requestHeaderModifier.remove[]string
llm.models[].guardrails.response[].bedrockGuardrails.policies.responseHeaderModifierobjectHeaders to be modified in the response.
llm.models[].guardrails.response[].bedrockGuardrails.policies.responseHeaderModifier.addobject
llm.models[].guardrails.response[].bedrockGuardrails.policies.responseHeaderModifier.setobject
llm.models[].guardrails.response[].bedrockGuardrails.policies.responseHeaderModifier.remove[]string
llm.models[].guardrails.response[].bedrockGuardrails.policies.requestRedirectobjectDirectly respond to the request with a redirect.
llm.models[].guardrails.response[].bedrockGuardrails.policies.requestRedirect.schemestring
llm.models[].guardrails.response[].bedrockGuardrails.policies.requestRedirect.authoritystring
llm.models[].guardrails.response[].bedrockGuardrails.policies.requestRedirect.authority.fullstring
llm.models[].guardrails.response[].bedrockGuardrails.policies.requestRedirect.authority.hoststring
llm.models[].guardrails.response[].bedrockGuardrails.policies.requestRedirect.authority.portinteger
llm.models[].guardrails.response[].bedrockGuardrails.policies.requestRedirect.pathobject
llm.models[].guardrails.response[].bedrockGuardrails.policies.requestRedirect.path.fullstring
llm.models[].guardrails.response[].bedrockGuardrails.policies.requestRedirect.path.prefixstring
llm.models[].guardrails.response[].bedrockGuardrails.policies.requestRedirect.statusinteger
llm.models[].guardrails.response[].bedrockGuardrails.policies.transformationsobjectModify requests and responses sent to and from the backend.
llm.models[].guardrails.response[].bedrockGuardrails.policies.transformations.requestobject
llm.models[].guardrails.response[].bedrockGuardrails.policies.transformations.request.addobject
llm.models[].guardrails.response[].bedrockGuardrails.policies.transformations.request.setobject
llm.models[].guardrails.response[].bedrockGuardrails.policies.transformations.request.remove[]string
llm.models[].guardrails.response[].bedrockGuardrails.policies.transformations.request.bodystring
llm.models[].guardrails.response[].bedrockGuardrails.policies.transformations.request.metadataobject
llm.models[].guardrails.response[].bedrockGuardrails.policies.transformations.responseobject
llm.models[].guardrails.response[].bedrockGuardrails.policies.transformations.response.addobject
llm.models[].guardrails.response[].bedrockGuardrails.policies.transformations.response.setobject
llm.models[].guardrails.response[].bedrockGuardrails.policies.transformations.response.remove[]string
llm.models[].guardrails.response[].bedrockGuardrails.policies.transformations.response.bodystring
llm.models[].guardrails.response[].bedrockGuardrails.policies.transformations.response.metadataobject
llm.models[].guardrails.response[].bedrockGuardrails.policies.backendTLSobjectSend TLS to the backend.
llm.models[].guardrails.response[].bedrockGuardrails.policies.backendTLS.certstring
llm.models[].guardrails.response[].bedrockGuardrails.policies.backendTLS.keystring
llm.models[].guardrails.response[].bedrockGuardrails.policies.backendTLS.rootstring
llm.models[].guardrails.response[].bedrockGuardrails.policies.backendTLS.hostnamestring
llm.models[].guardrails.response[].bedrockGuardrails.policies.backendTLS.insecureboolean
llm.models[].guardrails.response[].bedrockGuardrails.policies.backendTLS.insecureHostboolean
llm.models[].guardrails.response[].bedrockGuardrails.policies.backendTLS.alpn[]string
llm.models[].guardrails.response[].bedrockGuardrails.policies.backendTLS.subjectAltNames[]string
llm.models[].guardrails.response[].bedrockGuardrails.policies.backendAuthobjectAuthenticate to the backend.
llm.models[].guardrails.response[].bedrockGuardrails.policies.backendAuth.passthroughobject
llm.models[].guardrails.response[].bedrockGuardrails.policies.backendAuth.keyobject
llm.models[].guardrails.response[].bedrockGuardrails.policies.backendAuth.key.filestring
llm.models[].guardrails.response[].bedrockGuardrails.policies.backendAuth.gcpobject
llm.models[].guardrails.response[].bedrockGuardrails.policies.backendAuth.gcp.typestring
llm.models[].guardrails.response[].bedrockGuardrails.policies.backendAuth.gcp.audiencestringAudience for the token. If not set, the destination host will be used.
llm.models[].guardrails.response[].bedrockGuardrails.policies.backendAuth.gcp.typestring
llm.models[].guardrails.response[].bedrockGuardrails.policies.backendAuth.awsobject
llm.models[].guardrails.response[].bedrockGuardrails.policies.backendAuth.aws.accessKeyIdstring
llm.models[].guardrails.response[].bedrockGuardrails.policies.backendAuth.aws.secretAccessKeystring
llm.models[].guardrails.response[].bedrockGuardrails.policies.backendAuth.aws.regionstring
llm.models[].guardrails.response[].bedrockGuardrails.policies.backendAuth.aws.sessionTokenstring
llm.models[].guardrails.response[].bedrockGuardrails.policies.backendAuth.azureobjectExactly one of explicitConfig, developerImplicit, or implicit may be set.
llm.models[].guardrails.response[].bedrockGuardrails.policies.backendAuth.azure.explicitConfigobjectExactly one of clientSecret, managedIdentity, or workloadIdentity may be set.
llm.models[].guardrails.response[].bedrockGuardrails.policies.backendAuth.azure.explicitConfig.clientSecretobject
llm.models[].guardrails.response[].bedrockGuardrails.policies.backendAuth.azure.explicitConfig.clientSecret.tenant_idstring
llm.models[].guardrails.response[].bedrockGuardrails.policies.backendAuth.azure.explicitConfig.clientSecret.client_idstring
llm.models[].guardrails.response[].bedrockGuardrails.policies.backendAuth.azure.explicitConfig.clientSecret.client_secretstring
llm.models[].guardrails.response[].bedrockGuardrails.policies.backendAuth.azure.explicitConfig.managedIdentityobject
llm.models[].guardrails.response[].bedrockGuardrails.policies.backendAuth.azure.explicitConfig.managedIdentity.userAssignedIdentityobject
llm.models[].guardrails.response[].bedrockGuardrails.policies.backendAuth.azure.explicitConfig.managedIdentity.userAssignedIdentity.clientIdstring
llm.models[].guardrails.response[].bedrockGuardrails.policies.backendAuth.azure.explicitConfig.managedIdentity.userAssignedIdentity.objectIdstring
llm.models[].guardrails.response[].bedrockGuardrails.policies.backendAuth.azure.explicitConfig.managedIdentity.userAssignedIdentity.resourceIdstring
llm.models[].guardrails.response[].bedrockGuardrails.policies.backendAuth.azure.explicitConfig.workloadIdentityobject
llm.models[].guardrails.response[].bedrockGuardrails.policies.backendAuth.azure.developerImplicitobject
llm.models[].guardrails.response[].bedrockGuardrails.policies.backendAuth.azure.implicitobject
llm.models[].guardrails.response[].bedrockGuardrails.policies.httpobjectSpecify HTTP settings for the backend
llm.models[].guardrails.response[].bedrockGuardrails.policies.http.versionstring
llm.models[].guardrails.response[].bedrockGuardrails.policies.http.requestTimeoutstring
llm.models[].guardrails.response[].bedrockGuardrails.policies.tcpobjectSpecify TCP settings for the backend
llm.models[].guardrails.response[].bedrockGuardrails.policies.tcp.keepalivesobject
llm.models[].guardrails.response[].bedrockGuardrails.policies.tcp.keepalives.enabledboolean
llm.models[].guardrails.response[].bedrockGuardrails.policies.tcp.keepalives.timestring
llm.models[].guardrails.response[].bedrockGuardrails.policies.tcp.keepalives.intervalstring
llm.models[].guardrails.response[].bedrockGuardrails.policies.tcp.keepalives.retriesinteger
llm.models[].guardrails.response[].bedrockGuardrails.policies.tcp.connectTimeoutobject
llm.models[].guardrails.response[].bedrockGuardrails.policies.tcp.connectTimeout.secsinteger
llm.models[].guardrails.response[].bedrockGuardrails.policies.tcp.connectTimeout.nanosinteger
llm.models[].guardrails.response[].bedrockGuardrails.policies.healthobjectHealth policy for backend outlier detection; evicts on unhealthy responses based on CEL condition and configurable duration.
llm.models[].guardrails.response[].bedrockGuardrails.policies.health.unhealthyExpressionstringCEL expression; true means unhealthy (evict). E.g. response.code >= 500.
When unset, any 5xx or connection failure is treated as unhealthy.
llm.models[].guardrails.response[].bedrockGuardrails.policies.health.evictionobjectLocal/config eviction sub-policy with duration as string; mirrors Eviction.
llm.models[].guardrails.response[].bedrockGuardrails.policies.health.eviction.durationstring
llm.models[].guardrails.response[].bedrockGuardrails.policies.health.eviction.restoreHealthnumber
llm.models[].guardrails.response[].bedrockGuardrails.policies.health.eviction.consecutiveFailuresinteger
llm.models[].guardrails.response[].bedrockGuardrails.policies.health.eviction.healthThresholdnumber
llm.models[].guardrails.response[].bedrockGuardrails.policies.backendTunnelobjectSpecify a tunnel to use when connecting to the backend
llm.models[].guardrails.response[].bedrockGuardrails.policies.backendTunnel.proxyobjectReference to the proxy address
Exactly one of service, host, or backend may be set.
llm.models[].guardrails.response[].bedrockGuardrails.policies.backendTunnel.proxy.serviceobject
llm.models[].guardrails.response[].bedrockGuardrails.policies.backendTunnel.proxy.service.nameobject
llm.models[].guardrails.response[].bedrockGuardrails.policies.backendTunnel.proxy.service.name.namespacestring
llm.models[].guardrails.response[].bedrockGuardrails.policies.backendTunnel.proxy.service.name.hostnamestring
llm.models[].guardrails.response[].bedrockGuardrails.policies.backendTunnel.proxy.service.portinteger
llm.models[].guardrails.response[].bedrockGuardrails.policies.backendTunnel.proxy.hoststringHostname or IP address
llm.models[].guardrails.response[].bedrockGuardrails.policies.backendTunnel.proxy.backendstringExplicit backend reference. Backend must be defined in the top level backends list
llm.models[].guardrails.response[].googleModelArmorobjectConfiguration for Google Cloud Model Armor integration.
llm.models[].guardrails.response[].googleModelArmor.templateIdstringThe template ID for the Model Armor configuration
llm.models[].guardrails.response[].googleModelArmor.projectIdstringThe GCP project ID
llm.models[].guardrails.response[].googleModelArmor.locationstringThe GCP region (default: us-central1)
llm.models[].guardrails.response[].googleModelArmor.policiesobjectBackend policies for GCP authentication (optional, defaults to implicit GCP auth)
llm.models[].guardrails.response[].googleModelArmor.policies.requestHeaderModifierobjectHeaders to be modified in the request.
llm.models[].guardrails.response[].googleModelArmor.policies.requestHeaderModifier.addobject
llm.models[].guardrails.response[].googleModelArmor.policies.requestHeaderModifier.setobject
llm.models[].guardrails.response[].googleModelArmor.policies.requestHeaderModifier.remove[]string
llm.models[].guardrails.response[].googleModelArmor.policies.responseHeaderModifierobjectHeaders to be modified in the response.
llm.models[].guardrails.response[].googleModelArmor.policies.responseHeaderModifier.addobject
llm.models[].guardrails.response[].googleModelArmor.policies.responseHeaderModifier.setobject
llm.models[].guardrails.response[].googleModelArmor.policies.responseHeaderModifier.remove[]string
llm.models[].guardrails.response[].googleModelArmor.policies.requestRedirectobjectDirectly respond to the request with a redirect.
llm.models[].guardrails.response[].googleModelArmor.policies.requestRedirect.schemestring
llm.models[].guardrails.response[].googleModelArmor.policies.requestRedirect.authoritystring
llm.models[].guardrails.response[].googleModelArmor.policies.requestRedirect.authority.fullstring
llm.models[].guardrails.response[].googleModelArmor.policies.requestRedirect.authority.hoststring
llm.models[].guardrails.response[].googleModelArmor.policies.requestRedirect.authority.portinteger
llm.models[].guardrails.response[].googleModelArmor.policies.requestRedirect.pathobject
llm.models[].guardrails.response[].googleModelArmor.policies.requestRedirect.path.fullstring
llm.models[].guardrails.response[].googleModelArmor.policies.requestRedirect.path.prefixstring
llm.models[].guardrails.response[].googleModelArmor.policies.requestRedirect.statusinteger
llm.models[].guardrails.response[].googleModelArmor.policies.transformationsobjectModify requests and responses sent to and from the backend.
llm.models[].guardrails.response[].googleModelArmor.policies.transformations.requestobject
llm.models[].guardrails.response[].googleModelArmor.policies.transformations.request.addobject
llm.models[].guardrails.response[].googleModelArmor.policies.transformations.request.setobject
llm.models[].guardrails.response[].googleModelArmor.policies.transformations.request.remove[]string
llm.models[].guardrails.response[].googleModelArmor.policies.transformations.request.bodystring
llm.models[].guardrails.response[].googleModelArmor.policies.transformations.request.metadataobject
llm.models[].guardrails.response[].googleModelArmor.policies.transformations.responseobject
llm.models[].guardrails.response[].googleModelArmor.policies.transformations.response.addobject
llm.models[].guardrails.response[].googleModelArmor.policies.transformations.response.setobject
llm.models[].guardrails.response[].googleModelArmor.policies.transformations.response.remove[]string
llm.models[].guardrails.response[].googleModelArmor.policies.transformations.response.bodystring
llm.models[].guardrails.response[].googleModelArmor.policies.transformations.response.metadataobject
llm.models[].guardrails.response[].googleModelArmor.policies.backendTLSobjectSend TLS to the backend.
llm.models[].guardrails.response[].googleModelArmor.policies.backendTLS.certstring
llm.models[].guardrails.response[].googleModelArmor.policies.backendTLS.keystring
llm.models[].guardrails.response[].googleModelArmor.policies.backendTLS.rootstring
llm.models[].guardrails.response[].googleModelArmor.policies.backendTLS.hostnamestring
llm.models[].guardrails.response[].googleModelArmor.policies.backendTLS.insecureboolean
llm.models[].guardrails.response[].googleModelArmor.policies.backendTLS.insecureHostboolean
llm.models[].guardrails.response[].googleModelArmor.policies.backendTLS.alpn[]string
llm.models[].guardrails.response[].googleModelArmor.policies.backendTLS.subjectAltNames[]string
llm.models[].guardrails.response[].googleModelArmor.policies.backendAuthobjectAuthenticate to the backend.
llm.models[].guardrails.response[].googleModelArmor.policies.backendAuth.passthroughobject
llm.models[].guardrails.response[].googleModelArmor.policies.backendAuth.keyobject
llm.models[].guardrails.response[].googleModelArmor.policies.backendAuth.key.filestring
llm.models[].guardrails.response[].googleModelArmor.policies.backendAuth.gcpobject
llm.models[].guardrails.response[].googleModelArmor.policies.backendAuth.gcp.typestring
llm.models[].guardrails.response[].googleModelArmor.policies.backendAuth.gcp.audiencestringAudience for the token. If not set, the destination host will be used.
llm.models[].guardrails.response[].googleModelArmor.policies.backendAuth.gcp.typestring
llm.models[].guardrails.response[].googleModelArmor.policies.backendAuth.awsobject
llm.models[].guardrails.response[].googleModelArmor.policies.backendAuth.aws.accessKeyIdstring
llm.models[].guardrails.response[].googleModelArmor.policies.backendAuth.aws.secretAccessKeystring
llm.models[].guardrails.response[].googleModelArmor.policies.backendAuth.aws.regionstring
llm.models[].guardrails.response[].googleModelArmor.policies.backendAuth.aws.sessionTokenstring
llm.models[].guardrails.response[].googleModelArmor.policies.backendAuth.azureobjectExactly one of explicitConfig, developerImplicit, or implicit may be set.
llm.models[].guardrails.response[].googleModelArmor.policies.backendAuth.azure.explicitConfigobjectExactly one of clientSecret, managedIdentity, or workloadIdentity may be set.
llm.models[].guardrails.response[].googleModelArmor.policies.backendAuth.azure.explicitConfig.clientSecretobject
llm.models[].guardrails.response[].googleModelArmor.policies.backendAuth.azure.explicitConfig.clientSecret.tenant_idstring
llm.models[].guardrails.response[].googleModelArmor.policies.backendAuth.azure.explicitConfig.clientSecret.client_idstring
llm.models[].guardrails.response[].googleModelArmor.policies.backendAuth.azure.explicitConfig.clientSecret.client_secretstring
llm.models[].guardrails.response[].googleModelArmor.policies.backendAuth.azure.explicitConfig.managedIdentityobject
llm.models[].guardrails.response[].googleModelArmor.policies.backendAuth.azure.explicitConfig.managedIdentity.userAssignedIdentityobject
llm.models[].guardrails.response[].googleModelArmor.policies.backendAuth.azure.explicitConfig.managedIdentity.userAssignedIdentity.clientIdstring
llm.models[].guardrails.response[].googleModelArmor.policies.backendAuth.azure.explicitConfig.managedIdentity.userAssignedIdentity.objectIdstring
llm.models[].guardrails.response[].googleModelArmor.policies.backendAuth.azure.explicitConfig.managedIdentity.userAssignedIdentity.resourceIdstring
llm.models[].guardrails.response[].googleModelArmor.policies.backendAuth.azure.explicitConfig.workloadIdentityobject
llm.models[].guardrails.response[].googleModelArmor.policies.backendAuth.azure.developerImplicitobject
llm.models[].guardrails.response[].googleModelArmor.policies.backendAuth.azure.implicitobject
llm.models[].guardrails.response[].googleModelArmor.policies.httpobjectSpecify HTTP settings for the backend
llm.models[].guardrails.response[].googleModelArmor.policies.http.versionstring
llm.models[].guardrails.response[].googleModelArmor.policies.http.requestTimeoutstring
llm.models[].guardrails.response[].googleModelArmor.policies.tcpobjectSpecify TCP settings for the backend
llm.models[].guardrails.response[].googleModelArmor.policies.tcp.keepalivesobject
llm.models[].guardrails.response[].googleModelArmor.policies.tcp.keepalives.enabledboolean
llm.models[].guardrails.response[].googleModelArmor.policies.tcp.keepalives.timestring
llm.models[].guardrails.response[].googleModelArmor.policies.tcp.keepalives.intervalstring
llm.models[].guardrails.response[].googleModelArmor.policies.tcp.keepalives.retriesinteger
llm.models[].guardrails.response[].googleModelArmor.policies.tcp.connectTimeoutobject
llm.models[].guardrails.response[].googleModelArmor.policies.tcp.connectTimeout.secsinteger
llm.models[].guardrails.response[].googleModelArmor.policies.tcp.connectTimeout.nanosinteger
llm.models[].guardrails.response[].googleModelArmor.policies.healthobjectHealth policy for backend outlier detection; evicts on unhealthy responses based on CEL condition and configurable duration.
llm.models[].guardrails.response[].googleModelArmor.policies.health.unhealthyExpressionstringCEL expression; true means unhealthy (evict). E.g. response.code >= 500.
When unset, any 5xx or connection failure is treated as unhealthy.
llm.models[].guardrails.response[].googleModelArmor.policies.health.evictionobjectLocal/config eviction sub-policy with duration as string; mirrors Eviction.
llm.models[].guardrails.response[].googleModelArmor.policies.health.eviction.durationstring
llm.models[].guardrails.response[].googleModelArmor.policies.health.eviction.restoreHealthnumber
llm.models[].guardrails.response[].googleModelArmor.policies.health.eviction.consecutiveFailuresinteger
llm.models[].guardrails.response[].googleModelArmor.policies.health.eviction.healthThresholdnumber
llm.models[].guardrails.response[].googleModelArmor.policies.backendTunnelobjectSpecify a tunnel to use when connecting to the backend
llm.models[].guardrails.response[].googleModelArmor.policies.backendTunnel.proxyobjectReference to the proxy address
Exactly one of service, host, or backend may be set.
llm.models[].guardrails.response[].googleModelArmor.policies.backendTunnel.proxy.serviceobject
llm.models[].guardrails.response[].googleModelArmor.policies.backendTunnel.proxy.service.nameobject
llm.models[].guardrails.response[].googleModelArmor.policies.backendTunnel.proxy.service.name.namespacestring
llm.models[].guardrails.response[].googleModelArmor.policies.backendTunnel.proxy.service.name.hostnamestring
llm.models[].guardrails.response[].googleModelArmor.policies.backendTunnel.proxy.service.portinteger
llm.models[].guardrails.response[].googleModelArmor.policies.backendTunnel.proxy.hoststringHostname or IP address
llm.models[].guardrails.response[].googleModelArmor.policies.backendTunnel.proxy.backendstringExplicit backend reference. Backend must be defined in the top level backends list
llm.models[].guardrails.response[].rejectionobject
llm.models[].guardrails.response[].rejection.bodyarray
llm.models[].guardrails.response[].rejection.statusinteger
llm.models[].guardrails.response[].rejection.headersobjectOptional headers to add, set, or remove from the rejection response
llm.models[].guardrails.response[].rejection.headers.addobject
llm.models[].guardrails.response[].rejection.headers.setobject
llm.models[].guardrails.response[].rejection.headers.remove[]string
llm.models[].matches[]objectmatches specifies the conditions under which this model should be used in addition to matching the model name.
llm.models[].matches[].headers[]object
llm.models[].matches[].headers[].namestring
llm.models[].matches[].headers[].valueobjectExactly one of exact or regex may be set.
llm.models[].matches[].headers[].value.exactstring
llm.models[].matches[].headers[].value.regexstring
llm.policiesobjectpolicies defines policies for handling incoming requests, before a model is selected
llm.policies.jwtAuthobjectAuthenticate incoming JWT requests.
llm.policies.jwtAuth.modestring
llm.policies.jwtAuth.providers[]object
llm.policies.jwtAuth.providers[].issuerstring
llm.policies.jwtAuth.providers[].audiences[]string
llm.policies.jwtAuth.providers[].jwksobject
llm.policies.jwtAuth.providers[].jwks.filestring
llm.policies.jwtAuth.providers[].jwks.urlstring
llm.policies.jwtAuth.providers[].jwtValidationOptionsobjectJWT validation options controlling which claims must be present in a token.

The required_claims set specifies which RFC 7519 registered claims must
exist in the token payload before validation proceeds. Only the following
values are recognized: exp, nbf, aud, iss, sub. Other registered
claims such as iat and jti are not enforced by the underlying
jsonwebtoken library and will be silently ignored.

This only enforces presence. Standard claims like exp and nbf
have their values validated independently (e.g., expiry is always checked
when the exp claim is present, regardless of this setting).

Defaults to ["exp"].
llm.policies.jwtAuth.providers[].jwtValidationOptions.requiredClaims[]stringClaims that must be present in the token before validation.
Only “exp”, “nbf”, “aud”, “iss”, “sub” are enforced; others
(including “iat” and “jti”) are ignored.
Defaults to [“exp”]. Use an empty list to require no claims.
llm.policies.jwtAuth.modestring
llm.policies.jwtAuth.issuerstring
llm.policies.jwtAuth.audiences[]string
llm.policies.jwtAuth.jwksobject
llm.policies.jwtAuth.jwks.filestring
llm.policies.jwtAuth.jwks.urlstring
llm.policies.jwtAuth.jwtValidationOptionsobjectJWT validation options controlling which claims must be present in a token.

The required_claims set specifies which RFC 7519 registered claims must
exist in the token payload before validation proceeds. Only the following
values are recognized: exp, nbf, aud, iss, sub. Other registered
claims such as iat and jti are not enforced by the underlying
jsonwebtoken library and will be silently ignored.

This only enforces presence. Standard claims like exp and nbf
have their values validated independently (e.g., expiry is always checked
when the exp claim is present, regardless of this setting).

Defaults to ["exp"].
llm.policies.jwtAuth.jwtValidationOptions.requiredClaims[]stringClaims that must be present in the token before validation.
Only “exp”, “nbf”, “aud”, “iss”, “sub” are enforced; others
(including “iat” and “jti”) are ignored.
Defaults to [“exp”]. Use an empty list to require no claims.
llm.policies.extAuthzobjectAuthenticate incoming requests by calling an external authorization server.
llm.policies.extAuthz.serviceobject
llm.policies.extAuthz.service.nameobject
llm.policies.extAuthz.service.name.namespacestring
llm.policies.extAuthz.service.name.hostnamestring
llm.policies.extAuthz.service.portinteger
llm.policies.extAuthz.hoststringHostname or IP address
llm.policies.extAuthz.backendstringExplicit backend reference. Backend must be defined in the top level backends list
llm.policies.extAuthz.policiesobjectPolicies to connect to the backend
llm.policies.extAuthz.policies.requestHeaderModifierobjectHeaders to be modified in the request.
llm.policies.extAuthz.policies.requestHeaderModifier.addobject
llm.policies.extAuthz.policies.requestHeaderModifier.setobject
llm.policies.extAuthz.policies.requestHeaderModifier.remove[]string
llm.policies.extAuthz.policies.responseHeaderModifierobjectHeaders to be modified in the response.
llm.policies.extAuthz.policies.responseHeaderModifier.addobject
llm.policies.extAuthz.policies.responseHeaderModifier.setobject
llm.policies.extAuthz.policies.responseHeaderModifier.remove[]string
llm.policies.extAuthz.policies.requestRedirectobjectDirectly respond to the request with a redirect.
llm.policies.extAuthz.policies.requestRedirect.schemestring
llm.policies.extAuthz.policies.requestRedirect.authoritystring
llm.policies.extAuthz.policies.requestRedirect.authority.fullstring
llm.policies.extAuthz.policies.requestRedirect.authority.hoststring
llm.policies.extAuthz.policies.requestRedirect.authority.portinteger
llm.policies.extAuthz.policies.requestRedirect.pathobject
llm.policies.extAuthz.policies.requestRedirect.path.fullstring
llm.policies.extAuthz.policies.requestRedirect.path.prefixstring
llm.policies.extAuthz.policies.requestRedirect.statusinteger
llm.policies.extAuthz.policies.transformationsobjectModify requests and responses sent to and from the backend.
llm.policies.extAuthz.policies.transformations.requestobject
llm.policies.extAuthz.policies.transformations.request.addobject
llm.policies.extAuthz.policies.transformations.request.setobject
llm.policies.extAuthz.policies.transformations.request.remove[]string
llm.policies.extAuthz.policies.transformations.request.bodystring
llm.policies.extAuthz.policies.transformations.request.metadataobject
llm.policies.extAuthz.policies.transformations.responseobject
llm.policies.extAuthz.policies.transformations.response.addobject
llm.policies.extAuthz.policies.transformations.response.setobject
llm.policies.extAuthz.policies.transformations.response.remove[]string
llm.policies.extAuthz.policies.transformations.response.bodystring
llm.policies.extAuthz.policies.transformations.response.metadataobject
llm.policies.extAuthz.policies.backendTLSobjectSend TLS to the backend.
llm.policies.extAuthz.policies.backendTLS.certstring
llm.policies.extAuthz.policies.backendTLS.keystring
llm.policies.extAuthz.policies.backendTLS.rootstring
llm.policies.extAuthz.policies.backendTLS.hostnamestring
llm.policies.extAuthz.policies.backendTLS.insecureboolean
llm.policies.extAuthz.policies.backendTLS.insecureHostboolean
llm.policies.extAuthz.policies.backendTLS.alpn[]string
llm.policies.extAuthz.policies.backendTLS.subjectAltNames[]string
llm.policies.extAuthz.policies.backendAuthobjectAuthenticate to the backend.
llm.policies.extAuthz.policies.backendAuth.passthroughobject
llm.policies.extAuthz.policies.backendAuth.keyobject
llm.policies.extAuthz.policies.backendAuth.key.filestring
llm.policies.extAuthz.policies.backendAuth.gcpobject
llm.policies.extAuthz.policies.backendAuth.gcp.typestring
llm.policies.extAuthz.policies.backendAuth.gcp.audiencestringAudience for the token. If not set, the destination host will be used.
llm.policies.extAuthz.policies.backendAuth.gcp.typestring
llm.policies.extAuthz.policies.backendAuth.awsobject
llm.policies.extAuthz.policies.backendAuth.aws.accessKeyIdstring
llm.policies.extAuthz.policies.backendAuth.aws.secretAccessKeystring
llm.policies.extAuthz.policies.backendAuth.aws.regionstring
llm.policies.extAuthz.policies.backendAuth.aws.sessionTokenstring
llm.policies.extAuthz.policies.backendAuth.azureobjectExactly one of explicitConfig, developerImplicit, or implicit may be set.
llm.policies.extAuthz.policies.backendAuth.azure.explicitConfigobjectExactly one of clientSecret, managedIdentity, or workloadIdentity may be set.
llm.policies.extAuthz.policies.backendAuth.azure.explicitConfig.clientSecretobject
llm.policies.extAuthz.policies.backendAuth.azure.explicitConfig.clientSecret.tenant_idstring
llm.policies.extAuthz.policies.backendAuth.azure.explicitConfig.clientSecret.client_idstring
llm.policies.extAuthz.policies.backendAuth.azure.explicitConfig.clientSecret.client_secretstring
llm.policies.extAuthz.policies.backendAuth.azure.explicitConfig.managedIdentityobject
llm.policies.extAuthz.policies.backendAuth.azure.explicitConfig.managedIdentity.userAssignedIdentityobject
llm.policies.extAuthz.policies.backendAuth.azure.explicitConfig.managedIdentity.userAssignedIdentity.clientIdstring
llm.policies.extAuthz.policies.backendAuth.azure.explicitConfig.managedIdentity.userAssignedIdentity.objectIdstring
llm.policies.extAuthz.policies.backendAuth.azure.explicitConfig.managedIdentity.userAssignedIdentity.resourceIdstring
llm.policies.extAuthz.policies.backendAuth.azure.explicitConfig.workloadIdentityobject
llm.policies.extAuthz.policies.backendAuth.azure.developerImplicitobject
llm.policies.extAuthz.policies.backendAuth.azure.implicitobject
llm.policies.extAuthz.policies.httpobjectSpecify HTTP settings for the backend
llm.policies.extAuthz.policies.http.versionstring
llm.policies.extAuthz.policies.http.requestTimeoutstring
llm.policies.extAuthz.policies.tcpobjectSpecify TCP settings for the backend
llm.policies.extAuthz.policies.tcp.keepalivesobject
llm.policies.extAuthz.policies.tcp.keepalives.enabledboolean
llm.policies.extAuthz.policies.tcp.keepalives.timestring
llm.policies.extAuthz.policies.tcp.keepalives.intervalstring
llm.policies.extAuthz.policies.tcp.keepalives.retriesinteger
llm.policies.extAuthz.policies.tcp.connectTimeoutobject
llm.policies.extAuthz.policies.tcp.connectTimeout.secsinteger
llm.policies.extAuthz.policies.tcp.connectTimeout.nanosinteger
llm.policies.extAuthz.policies.healthobjectHealth policy for backend outlier detection; evicts on unhealthy responses based on CEL condition and configurable duration.
llm.policies.extAuthz.policies.health.unhealthyExpressionstringCEL expression; true means unhealthy (evict). E.g. response.code >= 500.
When unset, any 5xx or connection failure is treated as unhealthy.
llm.policies.extAuthz.policies.health.evictionobjectLocal/config eviction sub-policy with duration as string; mirrors Eviction.
llm.policies.extAuthz.policies.health.eviction.durationstring
llm.policies.extAuthz.policies.health.eviction.restoreHealthnumber
llm.policies.extAuthz.policies.health.eviction.consecutiveFailuresinteger
llm.policies.extAuthz.policies.health.eviction.healthThresholdnumber
llm.policies.extAuthz.policies.backendTunnelobjectSpecify a tunnel to use when connecting to the backend
llm.policies.extAuthz.policies.backendTunnel.proxyobjectReference to the proxy address
Exactly one of service, host, or backend may be set.
llm.policies.extAuthz.policies.backendTunnel.proxy.serviceobject
llm.policies.extAuthz.policies.backendTunnel.proxy.service.nameobject
llm.policies.extAuthz.policies.backendTunnel.proxy.service.name.namespacestring
llm.policies.extAuthz.policies.backendTunnel.proxy.service.name.hostnamestring
llm.policies.extAuthz.policies.backendTunnel.proxy.service.portinteger
llm.policies.extAuthz.policies.backendTunnel.proxy.hoststringHostname or IP address
llm.policies.extAuthz.policies.backendTunnel.proxy.backendstringExplicit backend reference. Backend must be defined in the top level backends list
llm.policies.extAuthz.protocolobjectThe ext_authz protocol to use. Unless you need to integrate with an HTTP-only server, gRPC is recommended.
Exactly one of grpc or http may be set.
llm.policies.extAuthz.protocol.grpcobject
llm.policies.extAuthz.protocol.grpc.contextobjectAdditional context to send to the authorization service.
This maps to the context_extensions field of the request, and only allows static values.
llm.policies.extAuthz.protocol.grpc.metadataobjectAdditional metadata to send to the authorization service.
This maps to the metadata_context.filter_metadata field of the request, and allows dynamic CEL expressions.
If unset, by default the envoy.filters.http.jwt_authn key is set if the JWT policy is used as well, for compatibility.
llm.policies.extAuthz.protocol.httpobject
llm.policies.extAuthz.protocol.http.pathstring
llm.policies.extAuthz.protocol.http.redirectstringWhen using the HTTP protocol, and the server returns unauthorized, redirect to the URL resolved by
the provided expression rather than directly returning the error.
llm.policies.extAuthz.protocol.http.includeResponseHeaders[]stringSpecific headers from the authorization response will be copied into the request to the backend.
llm.policies.extAuthz.protocol.http.addRequestHeadersobjectSpecific headers to add in the authorization request (empty = all headers), based on the expression
llm.policies.extAuthz.protocol.http.metadataobjectMetadata to include under the extauthz variable, based on the authorization response.
llm.policies.extAuthz.failureModestringBehavior when the authorization service is unavailable or returns an error
llm.policies.extAuthz.failureMode.denyWithStatusinteger
llm.policies.extAuthz.includeRequestHeaders[]stringSpecific headers to include in the authorization request.
If unset, the gRPC protocol sends all request headers. The HTTP protocol sends only ‘Authorization’.
llm.policies.extAuthz.includeRequestBodyobjectOptions for including the request body in the authorization request
llm.policies.extAuthz.includeRequestBody.maxRequestBytesintegerMaximum size of request body to buffer (default: 8192)
llm.policies.extAuthz.includeRequestBody.allowPartialMessagebooleanIf true, send partial body when max_request_bytes is reached
llm.policies.extAuthz.includeRequestBody.packAsBytesbooleanIf true, pack body as raw bytes in gRPC
llm.policies.extProcobjectExtend agentgateway with an external processor
llm.policies.extProc.serviceobject
llm.policies.extProc.service.nameobject
llm.policies.extProc.service.name.namespacestring
llm.policies.extProc.service.name.hostnamestring
llm.policies.extProc.service.portinteger
llm.policies.extProc.hoststringHostname or IP address
llm.policies.extProc.backendstringExplicit backend reference. Backend must be defined in the top level backends list
llm.policies.extProc.policiesobjectPolicies to connect to the backend
llm.policies.extProc.policies.requestHeaderModifierobjectHeaders to be modified in the request.
llm.policies.extProc.policies.requestHeaderModifier.addobject
llm.policies.extProc.policies.requestHeaderModifier.setobject
llm.policies.extProc.policies.requestHeaderModifier.remove[]string
llm.policies.extProc.policies.responseHeaderModifierobjectHeaders to be modified in the response.
llm.policies.extProc.policies.responseHeaderModifier.addobject
llm.policies.extProc.policies.responseHeaderModifier.setobject
llm.policies.extProc.policies.responseHeaderModifier.remove[]string
llm.policies.extProc.policies.requestRedirectobjectDirectly respond to the request with a redirect.
llm.policies.extProc.policies.requestRedirect.schemestring
llm.policies.extProc.policies.requestRedirect.authoritystring
llm.policies.extProc.policies.requestRedirect.authority.fullstring
llm.policies.extProc.policies.requestRedirect.authority.hoststring
llm.policies.extProc.policies.requestRedirect.authority.portinteger
llm.policies.extProc.policies.requestRedirect.pathobject
llm.policies.extProc.policies.requestRedirect.path.fullstring
llm.policies.extProc.policies.requestRedirect.path.prefixstring
llm.policies.extProc.policies.requestRedirect.statusinteger
llm.policies.extProc.policies.transformationsobjectModify requests and responses sent to and from the backend.
llm.policies.extProc.policies.transformations.requestobject
llm.policies.extProc.policies.transformations.request.addobject
llm.policies.extProc.policies.transformations.request.setobject
llm.policies.extProc.policies.transformations.request.remove[]string
llm.policies.extProc.policies.transformations.request.bodystring
llm.policies.extProc.policies.transformations.request.metadataobject
llm.policies.extProc.policies.transformations.responseobject
llm.policies.extProc.policies.transformations.response.addobject
llm.policies.extProc.policies.transformations.response.setobject
llm.policies.extProc.policies.transformations.response.remove[]string
llm.policies.extProc.policies.transformations.response.bodystring
llm.policies.extProc.policies.transformations.response.metadataobject
llm.policies.extProc.policies.backendTLSobjectSend TLS to the backend.
llm.policies.extProc.policies.backendTLS.certstring
llm.policies.extProc.policies.backendTLS.keystring
llm.policies.extProc.policies.backendTLS.rootstring
llm.policies.extProc.policies.backendTLS.hostnamestring
llm.policies.extProc.policies.backendTLS.insecureboolean
llm.policies.extProc.policies.backendTLS.insecureHostboolean
llm.policies.extProc.policies.backendTLS.alpn[]string
llm.policies.extProc.policies.backendTLS.subjectAltNames[]string
llm.policies.extProc.policies.backendAuthobjectAuthenticate to the backend.
llm.policies.extProc.policies.backendAuth.passthroughobject
llm.policies.extProc.policies.backendAuth.keyobject
llm.policies.extProc.policies.backendAuth.key.filestring
llm.policies.extProc.policies.backendAuth.gcpobject
llm.policies.extProc.policies.backendAuth.gcp.typestring
llm.policies.extProc.policies.backendAuth.gcp.audiencestringAudience for the token. If not set, the destination host will be used.
llm.policies.extProc.policies.backendAuth.gcp.typestring
llm.policies.extProc.policies.backendAuth.awsobject
llm.policies.extProc.policies.backendAuth.aws.accessKeyIdstring
llm.policies.extProc.policies.backendAuth.aws.secretAccessKeystring
llm.policies.extProc.policies.backendAuth.aws.regionstring
llm.policies.extProc.policies.backendAuth.aws.sessionTokenstring
llm.policies.extProc.policies.backendAuth.azureobjectExactly one of explicitConfig, developerImplicit, or implicit may be set.
llm.policies.extProc.policies.backendAuth.azure.explicitConfigobjectExactly one of clientSecret, managedIdentity, or workloadIdentity may be set.
llm.policies.extProc.policies.backendAuth.azure.explicitConfig.clientSecretobject
llm.policies.extProc.policies.backendAuth.azure.explicitConfig.clientSecret.tenant_idstring
llm.policies.extProc.policies.backendAuth.azure.explicitConfig.clientSecret.client_idstring
llm.policies.extProc.policies.backendAuth.azure.explicitConfig.clientSecret.client_secretstring
llm.policies.extProc.policies.backendAuth.azure.explicitConfig.managedIdentityobject
llm.policies.extProc.policies.backendAuth.azure.explicitConfig.managedIdentity.userAssignedIdentityobject
llm.policies.extProc.policies.backendAuth.azure.explicitConfig.managedIdentity.userAssignedIdentity.clientIdstring
llm.policies.extProc.policies.backendAuth.azure.explicitConfig.managedIdentity.userAssignedIdentity.objectIdstring
llm.policies.extProc.policies.backendAuth.azure.explicitConfig.managedIdentity.userAssignedIdentity.resourceIdstring
llm.policies.extProc.policies.backendAuth.azure.explicitConfig.workloadIdentityobject
llm.policies.extProc.policies.backendAuth.azure.developerImplicitobject
llm.policies.extProc.policies.backendAuth.azure.implicitobject
llm.policies.extProc.policies.httpobjectSpecify HTTP settings for the backend
llm.policies.extProc.policies.http.versionstring
llm.policies.extProc.policies.http.requestTimeoutstring
llm.policies.extProc.policies.tcpobjectSpecify TCP settings for the backend
llm.policies.extProc.policies.tcp.keepalivesobject
llm.policies.extProc.policies.tcp.keepalives.enabledboolean
llm.policies.extProc.policies.tcp.keepalives.timestring
llm.policies.extProc.policies.tcp.keepalives.intervalstring
llm.policies.extProc.policies.tcp.keepalives.retriesinteger
llm.policies.extProc.policies.tcp.connectTimeoutobject
llm.policies.extProc.policies.tcp.connectTimeout.secsinteger
llm.policies.extProc.policies.tcp.connectTimeout.nanosinteger
llm.policies.extProc.policies.healthobjectHealth policy for backend outlier detection; evicts on unhealthy responses based on CEL condition and configurable duration.
llm.policies.extProc.policies.health.unhealthyExpressionstringCEL expression; true means unhealthy (evict). E.g. response.code >= 500.
When unset, any 5xx or connection failure is treated as unhealthy.
llm.policies.extProc.policies.health.evictionobjectLocal/config eviction sub-policy with duration as string; mirrors Eviction.
llm.policies.extProc.policies.health.eviction.durationstring
llm.policies.extProc.policies.health.eviction.restoreHealthnumber
llm.policies.extProc.policies.health.eviction.consecutiveFailuresinteger
llm.policies.extProc.policies.health.eviction.healthThresholdnumber
llm.policies.extProc.policies.backendTunnelobjectSpecify a tunnel to use when connecting to the backend
llm.policies.extProc.policies.backendTunnel.proxyobjectReference to the proxy address
Exactly one of service, host, or backend may be set.
llm.policies.extProc.policies.backendTunnel.proxy.serviceobject
llm.policies.extProc.policies.backendTunnel.proxy.service.nameobject
llm.policies.extProc.policies.backendTunnel.proxy.service.name.namespacestring
llm.policies.extProc.policies.backendTunnel.proxy.service.name.hostnamestring
llm.policies.extProc.policies.backendTunnel.proxy.service.portinteger
llm.policies.extProc.policies.backendTunnel.proxy.hoststringHostname or IP address
llm.policies.extProc.policies.backendTunnel.proxy.backendstringExplicit backend reference. Backend must be defined in the top level backends list
llm.policies.extProc.failureModestringBehavior when the ext_proc service is unavailable or returns an error
llm.policies.extProc.metadataContextobjectAdditional metadata to send to the external processing service.
Maps to the metadata_context.filter_metadata field in ProcessingRequest, and allows dynamic CEL expressions.
llm.policies.extProc.requestAttributesobjectMaps to the request attributes field in ProcessingRequest, and allows dynamic CEL expressions.
llm.policies.extProc.responseAttributesobjectMaps to the response attributes field in ProcessingRequest, and allows dynamic CEL expressions.
llm.policies.transformationsobjectModify requests and responses
llm.policies.transformations.requestobject
llm.policies.transformations.request.addobject
llm.policies.transformations.request.setobject
llm.policies.transformations.request.remove[]string
llm.policies.transformations.request.bodystring
llm.policies.transformations.request.metadataobject
llm.policies.transformations.responseobject
llm.policies.transformations.response.addobject
llm.policies.transformations.response.setobject
llm.policies.transformations.response.remove[]string
llm.policies.transformations.response.bodystring
llm.policies.transformations.response.metadataobject
llm.policies.basicAuthobjectAuthenticate incoming requests using Basic Authentication with htpasswd.
llm.policies.basicAuth.htpasswdobject.htpasswd file contents/reference
llm.policies.basicAuth.htpasswd.filestring
llm.policies.basicAuth.realmstringRealm name for the WWW-Authenticate header
llm.policies.basicAuth.modestringValidation mode for basic authentication
llm.policies.apiKeyobjectAuthenticate incoming requests using API Keys
llm.policies.apiKey.keys[]objectList of API keys
llm.policies.apiKey.keys[].keystring
llm.policies.apiKey.keys[].metadataany
llm.policies.apiKey.modestringValidation mode for API keys
llm.policies.authorizationobjectAuthorization policies for HTTP access.
llm.policies.authorization.rules[]string
mcpobject
mcp.portinteger
mcp.targets[]object
mcp.targets[].sseobject
mcp.targets[].sse.hoststring
mcp.targets[].sse.portinteger
mcp.targets[].sse.pathstring
mcp.targets[].mcpobject
mcp.targets[].mcp.hoststring
mcp.targets[].mcp.portinteger
mcp.targets[].mcp.pathstring
mcp.targets[].stdioobject
mcp.targets[].stdio.cmdstring
mcp.targets[].stdio.args[]string
mcp.targets[].stdio.envobject
mcp.targets[].openapiobject
mcp.targets[].openapi.hoststring
mcp.targets[].openapi.portinteger
mcp.targets[].openapi.pathstring
mcp.targets[].openapi.schemaobject
mcp.targets[].openapi.schema.filestring
mcp.targets[].openapi.schema.urlstring
mcp.targets[].namestring
mcp.targets[].policiesobject
mcp.targets[].policies.requestHeaderModifierobjectHeaders to be modified in the request.
mcp.targets[].policies.requestHeaderModifier.addobject
mcp.targets[].policies.requestHeaderModifier.setobject
mcp.targets[].policies.requestHeaderModifier.remove[]string
mcp.targets[].policies.responseHeaderModifierobjectHeaders to be modified in the response.
mcp.targets[].policies.responseHeaderModifier.addobject
mcp.targets[].policies.responseHeaderModifier.setobject
mcp.targets[].policies.responseHeaderModifier.remove[]string
mcp.targets[].policies.requestRedirectobjectDirectly respond to the request with a redirect.
mcp.targets[].policies.requestRedirect.schemestring
mcp.targets[].policies.requestRedirect.authoritystring
mcp.targets[].policies.requestRedirect.authority.fullstring
mcp.targets[].policies.requestRedirect.authority.hoststring
mcp.targets[].policies.requestRedirect.authority.portinteger
mcp.targets[].policies.requestRedirect.pathobject
mcp.targets[].policies.requestRedirect.path.fullstring
mcp.targets[].policies.requestRedirect.path.prefixstring
mcp.targets[].policies.requestRedirect.statusinteger
mcp.targets[].policies.transformationsobjectModify requests and responses sent to and from the backend.
mcp.targets[].policies.transformations.requestobject
mcp.targets[].policies.transformations.request.addobject
mcp.targets[].policies.transformations.request.setobject
mcp.targets[].policies.transformations.request.remove[]string
mcp.targets[].policies.transformations.request.bodystring
mcp.targets[].policies.transformations.request.metadataobject
mcp.targets[].policies.transformations.responseobject
mcp.targets[].policies.transformations.response.addobject
mcp.targets[].policies.transformations.response.setobject
mcp.targets[].policies.transformations.response.remove[]string
mcp.targets[].policies.transformations.response.bodystring
mcp.targets[].policies.transformations.response.metadataobject
mcp.targets[].policies.backendTLSobjectSend TLS to the backend.
mcp.targets[].policies.backendTLS.certstring
mcp.targets[].policies.backendTLS.keystring
mcp.targets[].policies.backendTLS.rootstring
mcp.targets[].policies.backendTLS.hostnamestring
mcp.targets[].policies.backendTLS.insecureboolean
mcp.targets[].policies.backendTLS.insecureHostboolean
mcp.targets[].policies.backendTLS.alpn[]string
mcp.targets[].policies.backendTLS.subjectAltNames[]string
mcp.targets[].policies.backendAuthobjectAuthenticate to the backend.
mcp.targets[].policies.backendAuth.passthroughobject
mcp.targets[].policies.backendAuth.keyobject
mcp.targets[].policies.backendAuth.key.filestring
mcp.targets[].policies.backendAuth.gcpobject
mcp.targets[].policies.backendAuth.gcp.typestring
mcp.targets[].policies.backendAuth.gcp.audiencestringAudience for the token. If not set, the destination host will be used.
mcp.targets[].policies.backendAuth.gcp.typestring
mcp.targets[].policies.backendAuth.awsobject
mcp.targets[].policies.backendAuth.aws.accessKeyIdstring
mcp.targets[].policies.backendAuth.aws.secretAccessKeystring
mcp.targets[].policies.backendAuth.aws.regionstring
mcp.targets[].policies.backendAuth.aws.sessionTokenstring
mcp.targets[].policies.backendAuth.azureobjectExactly one of explicitConfig, developerImplicit, or implicit may be set.
mcp.targets[].policies.backendAuth.azure.explicitConfigobjectExactly one of clientSecret, managedIdentity, or workloadIdentity may be set.
mcp.targets[].policies.backendAuth.azure.explicitConfig.clientSecretobject
mcp.targets[].policies.backendAuth.azure.explicitConfig.clientSecret.tenant_idstring
mcp.targets[].policies.backendAuth.azure.explicitConfig.clientSecret.client_idstring
mcp.targets[].policies.backendAuth.azure.explicitConfig.clientSecret.client_secretstring
mcp.targets[].policies.backendAuth.azure.explicitConfig.managedIdentityobject
mcp.targets[].policies.backendAuth.azure.explicitConfig.managedIdentity.userAssignedIdentityobject
mcp.targets[].policies.backendAuth.azure.explicitConfig.managedIdentity.userAssignedIdentity.clientIdstring
mcp.targets[].policies.backendAuth.azure.explicitConfig.managedIdentity.userAssignedIdentity.objectIdstring
mcp.targets[].policies.backendAuth.azure.explicitConfig.managedIdentity.userAssignedIdentity.resourceIdstring
mcp.targets[].policies.backendAuth.azure.explicitConfig.workloadIdentityobject
mcp.targets[].policies.backendAuth.azure.developerImplicitobject
mcp.targets[].policies.backendAuth.azure.implicitobject
mcp.targets[].policies.httpobjectSpecify HTTP settings for the backend
mcp.targets[].policies.http.versionstring
mcp.targets[].policies.http.requestTimeoutstring
mcp.targets[].policies.tcpobjectSpecify TCP settings for the backend
mcp.targets[].policies.tcp.keepalivesobject
mcp.targets[].policies.tcp.keepalives.enabledboolean
mcp.targets[].policies.tcp.keepalives.timestring
mcp.targets[].policies.tcp.keepalives.intervalstring
mcp.targets[].policies.tcp.keepalives.retriesinteger
mcp.targets[].policies.tcp.connectTimeoutobject
mcp.targets[].policies.tcp.connectTimeout.secsinteger
mcp.targets[].policies.tcp.connectTimeout.nanosinteger
mcp.targets[].policies.healthobjectHealth policy for backend outlier detection; evicts on unhealthy responses based on CEL condition and configurable duration.
mcp.targets[].policies.health.unhealthyExpressionstringCEL expression; true means unhealthy (evict). E.g. response.code >= 500.
When unset, any 5xx or connection failure is treated as unhealthy.
mcp.targets[].policies.health.evictionobjectLocal/config eviction sub-policy with duration as string; mirrors Eviction.
mcp.targets[].policies.health.eviction.durationstring
mcp.targets[].policies.health.eviction.restoreHealthnumber
mcp.targets[].policies.health.eviction.consecutiveFailuresinteger
mcp.targets[].policies.health.eviction.healthThresholdnumber
mcp.targets[].policies.backendTunnelobjectSpecify a tunnel to use when connecting to the backend
mcp.targets[].policies.backendTunnel.proxyobjectReference to the proxy address
Exactly one of service, host, or backend may be set.
mcp.targets[].policies.backendTunnel.proxy.serviceobject
mcp.targets[].policies.backendTunnel.proxy.service.nameobject
mcp.targets[].policies.backendTunnel.proxy.service.name.namespacestring
mcp.targets[].policies.backendTunnel.proxy.service.name.hostnamestring
mcp.targets[].policies.backendTunnel.proxy.service.portinteger
mcp.targets[].policies.backendTunnel.proxy.hoststringHostname or IP address
mcp.targets[].policies.backendTunnel.proxy.backendstringExplicit backend reference. Backend must be defined in the top level backends list
mcp.targets[].policies.mcpAuthorizationobjectAuthorization policies for MCP access.
mcp.targets[].policies.mcpAuthorization.rules[]string
mcp.statefulModestring
mcp.prefixModestring
mcp.failureModestringBehavior when one or more MCP targets fail to initialize or fail during fanout.
Defaults to failClosed.
mcp.policiesobject
mcp.policies.requestHeaderModifierobjectHeaders to be modified in the request.
mcp.policies.requestHeaderModifier.addobject
mcp.policies.requestHeaderModifier.setobject
mcp.policies.requestHeaderModifier.remove[]string
mcp.policies.responseHeaderModifierobjectHeaders to be modified in the response.
mcp.policies.responseHeaderModifier.addobject
mcp.policies.responseHeaderModifier.setobject
mcp.policies.responseHeaderModifier.remove[]string
mcp.policies.requestRedirectobjectDirectly respond to the request with a redirect.
mcp.policies.requestRedirect.schemestring
mcp.policies.requestRedirect.authoritystring
mcp.policies.requestRedirect.authority.fullstring
mcp.policies.requestRedirect.authority.hoststring
mcp.policies.requestRedirect.authority.portinteger
mcp.policies.requestRedirect.pathobject
mcp.policies.requestRedirect.path.fullstring
mcp.policies.requestRedirect.path.prefixstring
mcp.policies.requestRedirect.statusinteger
mcp.policies.urlRewriteobjectModify the URL path or authority.
mcp.policies.urlRewrite.authoritystring
mcp.policies.urlRewrite.authority.fullstring
mcp.policies.urlRewrite.authority.hoststring
mcp.policies.urlRewrite.authority.portinteger
mcp.policies.urlRewrite.pathobject
mcp.policies.urlRewrite.path.fullstring
mcp.policies.urlRewrite.path.prefixstring
mcp.policies.requestMirrorobjectMirror incoming requests to another destination.
mcp.policies.requestMirror.backendobjectExactly one of service, host, or backend may be set.
mcp.policies.requestMirror.backend.serviceobject
mcp.policies.requestMirror.backend.service.nameobject
mcp.policies.requestMirror.backend.service.name.namespacestring
mcp.policies.requestMirror.backend.service.name.hostnamestring
mcp.policies.requestMirror.backend.service.portinteger
mcp.policies.requestMirror.backend.hoststringHostname or IP address
mcp.policies.requestMirror.backend.backendstringExplicit backend reference. Backend must be defined in the top level backends list
mcp.policies.requestMirror.percentagenumber
mcp.policies.directResponseobjectDirectly respond to the request with a static response.
mcp.policies.directResponse.bodyarray
mcp.policies.directResponse.statusinteger
mcp.policies.corsobjectHandle CORS preflight requests and append configured CORS headers to applicable requests.
mcp.policies.cors.allowCredentialsboolean
mcp.policies.cors.allowHeaders[]string
mcp.policies.cors.allowMethods[]string
mcp.policies.cors.allowOrigins[]string
mcp.policies.cors.exposeHeaders[]string
mcp.policies.cors.maxAgestring
mcp.policies.mcpAuthorizationobjectAuthorization policies for MCP access.
mcp.policies.mcpAuthorization.rules[]string
mcp.policies.authorizationobjectAuthorization policies for HTTP access.
mcp.policies.authorization.rules[]string
mcp.policies.mcpAuthenticationobjectAuthentication for MCP clients.
mcp.policies.mcpAuthentication.issuerstring
mcp.policies.mcpAuthentication.audiences[]string
mcp.policies.mcpAuthentication.providerobject
mcp.policies.mcpAuthentication.provider.auth0object
mcp.policies.mcpAuthentication.provider.keycloakobject
mcp.policies.mcpAuthentication.resourceMetadataobject
mcp.policies.mcpAuthentication.jwksobject
mcp.policies.mcpAuthentication.jwks.filestring
mcp.policies.mcpAuthentication.jwks.urlstring
mcp.policies.mcpAuthentication.modestring
mcp.policies.mcpAuthentication.jwtValidationOptionsobjectJWT validation options controlling which claims must be present in a token.

The required_claims set specifies which RFC 7519 registered claims must
exist in the token payload before validation proceeds. Only the following
values are recognized: exp, nbf, aud, iss, sub. Other registered
claims such as iat and jti are not enforced by the underlying
jsonwebtoken library and will be silently ignored.

This only enforces presence. Standard claims like exp and nbf
have their values validated independently (e.g., expiry is always checked
when the exp claim is present, regardless of this setting).

Defaults to ["exp"].
mcp.policies.mcpAuthentication.jwtValidationOptions.requiredClaims[]stringClaims that must be present in the token before validation.
Only “exp”, “nbf”, “aud”, “iss”, “sub” are enforced; others
(including “iat” and “jti”) are ignored.
Defaults to [“exp”]. Use an empty list to require no claims.
mcp.policies.a2aobjectMark this traffic as A2A to enable A2A processing and telemetry.
mcp.policies.aiobjectMark this as LLM traffic to enable LLM processing.
mcp.policies.ai.promptGuardobject
mcp.policies.ai.promptGuard.request[]object
mcp.policies.ai.promptGuard.request[].regexobject
mcp.policies.ai.promptGuard.request[].regex.actionstring
mcp.policies.ai.promptGuard.request[].regex.rules[]object
mcp.policies.ai.promptGuard.request[].regex.rules[].builtinstring
mcp.policies.ai.promptGuard.request[].regex.rules[].patternstring
mcp.policies.ai.promptGuard.request[].webhookobject
mcp.policies.ai.promptGuard.request[].webhook.targetobjectExactly one of service, host, or backend may be set.
mcp.policies.ai.promptGuard.request[].webhook.target.serviceobject
mcp.policies.ai.promptGuard.request[].webhook.target.service.nameobject
mcp.policies.ai.promptGuard.request[].webhook.target.service.name.namespacestring
mcp.policies.ai.promptGuard.request[].webhook.target.service.name.hostnamestring
mcp.policies.ai.promptGuard.request[].webhook.target.service.portinteger
mcp.policies.ai.promptGuard.request[].webhook.target.hoststringHostname or IP address
mcp.policies.ai.promptGuard.request[].webhook.target.backendstringExplicit backend reference. Backend must be defined in the top level backends list
mcp.policies.ai.promptGuard.request[].webhook.forwardHeaderMatches[]object
mcp.policies.ai.promptGuard.request[].webhook.forwardHeaderMatches[].namestring
mcp.policies.ai.promptGuard.request[].webhook.forwardHeaderMatches[].valueobjectExactly one of exact or regex may be set.
mcp.policies.ai.promptGuard.request[].webhook.forwardHeaderMatches[].value.exactstring
mcp.policies.ai.promptGuard.request[].webhook.forwardHeaderMatches[].value.regexstring
mcp.policies.ai.promptGuard.request[].openAIModerationobject
mcp.policies.ai.promptGuard.request[].openAIModeration.modelstringModel to use. Defaults to omni-moderation-latest
mcp.policies.ai.promptGuard.request[].openAIModeration.policiesobject
mcp.policies.ai.promptGuard.request[].openAIModeration.policies.requestHeaderModifierobjectHeaders to be modified in the request.
mcp.policies.ai.promptGuard.request[].openAIModeration.policies.requestHeaderModifier.addobject
mcp.policies.ai.promptGuard.request[].openAIModeration.policies.requestHeaderModifier.setobject
mcp.policies.ai.promptGuard.request[].openAIModeration.policies.requestHeaderModifier.remove[]string
mcp.policies.ai.promptGuard.request[].openAIModeration.policies.responseHeaderModifierobjectHeaders to be modified in the response.
mcp.policies.ai.promptGuard.request[].openAIModeration.policies.responseHeaderModifier.addobject
mcp.policies.ai.promptGuard.request[].openAIModeration.policies.responseHeaderModifier.setobject
mcp.policies.ai.promptGuard.request[].openAIModeration.policies.responseHeaderModifier.remove[]string
mcp.policies.ai.promptGuard.request[].openAIModeration.policies.requestRedirectobjectDirectly respond to the request with a redirect.
mcp.policies.ai.promptGuard.request[].openAIModeration.policies.requestRedirect.schemestring
mcp.policies.ai.promptGuard.request[].openAIModeration.policies.requestRedirect.authoritystring
mcp.policies.ai.promptGuard.request[].openAIModeration.policies.requestRedirect.authority.fullstring
mcp.policies.ai.promptGuard.request[].openAIModeration.policies.requestRedirect.authority.hoststring
mcp.policies.ai.promptGuard.request[].openAIModeration.policies.requestRedirect.authority.portinteger
mcp.policies.ai.promptGuard.request[].openAIModeration.policies.requestRedirect.pathobject
mcp.policies.ai.promptGuard.request[].openAIModeration.policies.requestRedirect.path.fullstring
mcp.policies.ai.promptGuard.request[].openAIModeration.policies.requestRedirect.path.prefixstring
mcp.policies.ai.promptGuard.request[].openAIModeration.policies.requestRedirect.statusinteger
mcp.policies.ai.promptGuard.request[].openAIModeration.policies.transformationsobjectModify requests and responses sent to and from the backend.
mcp.policies.ai.promptGuard.request[].openAIModeration.policies.transformations.requestobject
mcp.policies.ai.promptGuard.request[].openAIModeration.policies.transformations.request.addobject
mcp.policies.ai.promptGuard.request[].openAIModeration.policies.transformations.request.setobject
mcp.policies.ai.promptGuard.request[].openAIModeration.policies.transformations.request.remove[]string
mcp.policies.ai.promptGuard.request[].openAIModeration.policies.transformations.request.bodystring
mcp.policies.ai.promptGuard.request[].openAIModeration.policies.transformations.request.metadataobject
mcp.policies.ai.promptGuard.request[].openAIModeration.policies.transformations.responseobject
mcp.policies.ai.promptGuard.request[].openAIModeration.policies.transformations.response.addobject
mcp.policies.ai.promptGuard.request[].openAIModeration.policies.transformations.response.setobject
mcp.policies.ai.promptGuard.request[].openAIModeration.policies.transformations.response.remove[]string
mcp.policies.ai.promptGuard.request[].openAIModeration.policies.transformations.response.bodystring
mcp.policies.ai.promptGuard.request[].openAIModeration.policies.transformations.response.metadataobject
mcp.policies.ai.promptGuard.request[].openAIModeration.policies.backendTLSobjectSend TLS to the backend.
mcp.policies.ai.promptGuard.request[].openAIModeration.policies.backendTLS.certstring
mcp.policies.ai.promptGuard.request[].openAIModeration.policies.backendTLS.keystring
mcp.policies.ai.promptGuard.request[].openAIModeration.policies.backendTLS.rootstring
mcp.policies.ai.promptGuard.request[].openAIModeration.policies.backendTLS.hostnamestring
mcp.policies.ai.promptGuard.request[].openAIModeration.policies.backendTLS.insecureboolean
mcp.policies.ai.promptGuard.request[].openAIModeration.policies.backendTLS.insecureHostboolean
mcp.policies.ai.promptGuard.request[].openAIModeration.policies.backendTLS.alpn[]string
mcp.policies.ai.promptGuard.request[].openAIModeration.policies.backendTLS.subjectAltNames[]string
mcp.policies.ai.promptGuard.request[].openAIModeration.policies.backendAuthobjectAuthenticate to the backend.
mcp.policies.ai.promptGuard.request[].openAIModeration.policies.backendAuth.passthroughobject
mcp.policies.ai.promptGuard.request[].openAIModeration.policies.backendAuth.keyobject
mcp.policies.ai.promptGuard.request[].openAIModeration.policies.backendAuth.key.filestring
mcp.policies.ai.promptGuard.request[].openAIModeration.policies.backendAuth.gcpobject
mcp.policies.ai.promptGuard.request[].openAIModeration.policies.backendAuth.gcp.typestring
mcp.policies.ai.promptGuard.request[].openAIModeration.policies.backendAuth.gcp.audiencestringAudience for the token. If not set, the destination host will be used.
mcp.policies.ai.promptGuard.request[].openAIModeration.policies.backendAuth.gcp.typestring
mcp.policies.ai.promptGuard.request[].openAIModeration.policies.backendAuth.awsobject
mcp.policies.ai.promptGuard.request[].openAIModeration.policies.backendAuth.aws.accessKeyIdstring
mcp.policies.ai.promptGuard.request[].openAIModeration.policies.backendAuth.aws.secretAccessKeystring
mcp.policies.ai.promptGuard.request[].openAIModeration.policies.backendAuth.aws.regionstring
mcp.policies.ai.promptGuard.request[].openAIModeration.policies.backendAuth.aws.sessionTokenstring
mcp.policies.ai.promptGuard.request[].openAIModeration.policies.backendAuth.azureobjectExactly one of explicitConfig, developerImplicit, or implicit may be set.
mcp.policies.ai.promptGuard.request[].openAIModeration.policies.backendAuth.azure.explicitConfigobjectExactly one of clientSecret, managedIdentity, or workloadIdentity may be set.
mcp.policies.ai.promptGuard.request[].openAIModeration.policies.backendAuth.azure.explicitConfig.clientSecretobject
mcp.policies.ai.promptGuard.request[].openAIModeration.policies.backendAuth.azure.explicitConfig.clientSecret.tenant_idstring
mcp.policies.ai.promptGuard.request[].openAIModeration.policies.backendAuth.azure.explicitConfig.clientSecret.client_idstring
mcp.policies.ai.promptGuard.request[].openAIModeration.policies.backendAuth.azure.explicitConfig.clientSecret.client_secretstring
mcp.policies.ai.promptGuard.request[].openAIModeration.policies.backendAuth.azure.explicitConfig.managedIdentityobject
mcp.policies.ai.promptGuard.request[].openAIModeration.policies.backendAuth.azure.explicitConfig.managedIdentity.userAssignedIdentityobject
mcp.policies.ai.promptGuard.request[].openAIModeration.policies.backendAuth.azure.explicitConfig.managedIdentity.userAssignedIdentity.clientIdstring
mcp.policies.ai.promptGuard.request[].openAIModeration.policies.backendAuth.azure.explicitConfig.managedIdentity.userAssignedIdentity.objectIdstring
mcp.policies.ai.promptGuard.request[].openAIModeration.policies.backendAuth.azure.explicitConfig.managedIdentity.userAssignedIdentity.resourceIdstring
mcp.policies.ai.promptGuard.request[].openAIModeration.policies.backendAuth.azure.explicitConfig.workloadIdentityobject
mcp.policies.ai.promptGuard.request[].openAIModeration.policies.backendAuth.azure.developerImplicitobject
mcp.policies.ai.promptGuard.request[].openAIModeration.policies.backendAuth.azure.implicitobject
mcp.policies.ai.promptGuard.request[].openAIModeration.policies.httpobjectSpecify HTTP settings for the backend
mcp.policies.ai.promptGuard.request[].openAIModeration.policies.http.versionstring
mcp.policies.ai.promptGuard.request[].openAIModeration.policies.http.requestTimeoutstring
mcp.policies.ai.promptGuard.request[].openAIModeration.policies.tcpobjectSpecify TCP settings for the backend
mcp.policies.ai.promptGuard.request[].openAIModeration.policies.tcp.keepalivesobject
mcp.policies.ai.promptGuard.request[].openAIModeration.policies.tcp.keepalives.enabledboolean
mcp.policies.ai.promptGuard.request[].openAIModeration.policies.tcp.keepalives.timestring
mcp.policies.ai.promptGuard.request[].openAIModeration.policies.tcp.keepalives.intervalstring
mcp.policies.ai.promptGuard.request[].openAIModeration.policies.tcp.keepalives.retriesinteger
mcp.policies.ai.promptGuard.request[].openAIModeration.policies.tcp.connectTimeoutobject
mcp.policies.ai.promptGuard.request[].openAIModeration.policies.tcp.connectTimeout.secsinteger
mcp.policies.ai.promptGuard.request[].openAIModeration.policies.tcp.connectTimeout.nanosinteger
mcp.policies.ai.promptGuard.request[].openAIModeration.policies.healthobjectHealth policy for backend outlier detection; evicts on unhealthy responses based on CEL condition and configurable duration.
mcp.policies.ai.promptGuard.request[].openAIModeration.policies.health.unhealthyExpressionstringCEL expression; true means unhealthy (evict). E.g. response.code >= 500.
When unset, any 5xx or connection failure is treated as unhealthy.
mcp.policies.ai.promptGuard.request[].openAIModeration.policies.health.evictionobjectLocal/config eviction sub-policy with duration as string; mirrors Eviction.
mcp.policies.ai.promptGuard.request[].openAIModeration.policies.health.eviction.durationstring
mcp.policies.ai.promptGuard.request[].openAIModeration.policies.health.eviction.restoreHealthnumber
mcp.policies.ai.promptGuard.request[].openAIModeration.policies.health.eviction.consecutiveFailuresinteger
mcp.policies.ai.promptGuard.request[].openAIModeration.policies.health.eviction.healthThresholdnumber
mcp.policies.ai.promptGuard.request[].openAIModeration.policies.backendTunnelobjectSpecify a tunnel to use when connecting to the backend
mcp.policies.ai.promptGuard.request[].openAIModeration.policies.backendTunnel.proxyobjectReference to the proxy address
Exactly one of service, host, or backend may be set.
mcp.policies.ai.promptGuard.request[].openAIModeration.policies.backendTunnel.proxy.serviceobject
mcp.policies.ai.promptGuard.request[].openAIModeration.policies.backendTunnel.proxy.service.nameobject
mcp.policies.ai.promptGuard.request[].openAIModeration.policies.backendTunnel.proxy.service.name.namespacestring
mcp.policies.ai.promptGuard.request[].openAIModeration.policies.backendTunnel.proxy.service.name.hostnamestring
mcp.policies.ai.promptGuard.request[].openAIModeration.policies.backendTunnel.proxy.service.portinteger
mcp.policies.ai.promptGuard.request[].openAIModeration.policies.backendTunnel.proxy.hoststringHostname or IP address
mcp.policies.ai.promptGuard.request[].openAIModeration.policies.backendTunnel.proxy.backendstringExplicit backend reference. Backend must be defined in the top level backends list
mcp.policies.ai.promptGuard.request[].bedrockGuardrailsobjectConfiguration for AWS Bedrock Guardrails integration.
mcp.policies.ai.promptGuard.request[].bedrockGuardrails.guardrailIdentifierstringThe unique identifier of the guardrail
mcp.policies.ai.promptGuard.request[].bedrockGuardrails.guardrailVersionstringThe version of the guardrail
mcp.policies.ai.promptGuard.request[].bedrockGuardrails.regionstringAWS region where the guardrail is deployed
mcp.policies.ai.promptGuard.request[].bedrockGuardrails.policiesobjectBackend policies for AWS authentication (optional, defaults to implicit AWS auth)
mcp.policies.ai.promptGuard.request[].bedrockGuardrails.policies.requestHeaderModifierobjectHeaders to be modified in the request.
mcp.policies.ai.promptGuard.request[].bedrockGuardrails.policies.requestHeaderModifier.addobject
mcp.policies.ai.promptGuard.request[].bedrockGuardrails.policies.requestHeaderModifier.setobject
mcp.policies.ai.promptGuard.request[].bedrockGuardrails.policies.requestHeaderModifier.remove[]string
mcp.policies.ai.promptGuard.request[].bedrockGuardrails.policies.responseHeaderModifierobjectHeaders to be modified in the response.
mcp.policies.ai.promptGuard.request[].bedrockGuardrails.policies.responseHeaderModifier.addobject
mcp.policies.ai.promptGuard.request[].bedrockGuardrails.policies.responseHeaderModifier.setobject
mcp.policies.ai.promptGuard.request[].bedrockGuardrails.policies.responseHeaderModifier.remove[]string
mcp.policies.ai.promptGuard.request[].bedrockGuardrails.policies.requestRedirectobjectDirectly respond to the request with a redirect.
mcp.policies.ai.promptGuard.request[].bedrockGuardrails.policies.requestRedirect.schemestring
mcp.policies.ai.promptGuard.request[].bedrockGuardrails.policies.requestRedirect.authoritystring
mcp.policies.ai.promptGuard.request[].bedrockGuardrails.policies.requestRedirect.authority.fullstring
mcp.policies.ai.promptGuard.request[].bedrockGuardrails.policies.requestRedirect.authority.hoststring
mcp.policies.ai.promptGuard.request[].bedrockGuardrails.policies.requestRedirect.authority.portinteger
mcp.policies.ai.promptGuard.request[].bedrockGuardrails.policies.requestRedirect.pathobject
mcp.policies.ai.promptGuard.request[].bedrockGuardrails.policies.requestRedirect.path.fullstring
mcp.policies.ai.promptGuard.request[].bedrockGuardrails.policies.requestRedirect.path.prefixstring
mcp.policies.ai.promptGuard.request[].bedrockGuardrails.policies.requestRedirect.statusinteger
mcp.policies.ai.promptGuard.request[].bedrockGuardrails.policies.transformationsobjectModify requests and responses sent to and from the backend.
mcp.policies.ai.promptGuard.request[].bedrockGuardrails.policies.transformations.requestobject
mcp.policies.ai.promptGuard.request[].bedrockGuardrails.policies.transformations.request.addobject
mcp.policies.ai.promptGuard.request[].bedrockGuardrails.policies.transformations.request.setobject
mcp.policies.ai.promptGuard.request[].bedrockGuardrails.policies.transformations.request.remove[]string
mcp.policies.ai.promptGuard.request[].bedrockGuardrails.policies.transformations.request.bodystring
mcp.policies.ai.promptGuard.request[].bedrockGuardrails.policies.transformations.request.metadataobject
mcp.policies.ai.promptGuard.request[].bedrockGuardrails.policies.transformations.responseobject
mcp.policies.ai.promptGuard.request[].bedrockGuardrails.policies.transformations.response.addobject
mcp.policies.ai.promptGuard.request[].bedrockGuardrails.policies.transformations.response.setobject
mcp.policies.ai.promptGuard.request[].bedrockGuardrails.policies.transformations.response.remove[]string
mcp.policies.ai.promptGuard.request[].bedrockGuardrails.policies.transformations.response.bodystring
mcp.policies.ai.promptGuard.request[].bedrockGuardrails.policies.transformations.response.metadataobject
mcp.policies.ai.promptGuard.request[].bedrockGuardrails.policies.backendTLSobjectSend TLS to the backend.
mcp.policies.ai.promptGuard.request[].bedrockGuardrails.policies.backendTLS.certstring
mcp.policies.ai.promptGuard.request[].bedrockGuardrails.policies.backendTLS.keystring
mcp.policies.ai.promptGuard.request[].bedrockGuardrails.policies.backendTLS.rootstring
mcp.policies.ai.promptGuard.request[].bedrockGuardrails.policies.backendTLS.hostnamestring
mcp.policies.ai.promptGuard.request[].bedrockGuardrails.policies.backendTLS.insecureboolean
mcp.policies.ai.promptGuard.request[].bedrockGuardrails.policies.backendTLS.insecureHostboolean
mcp.policies.ai.promptGuard.request[].bedrockGuardrails.policies.backendTLS.alpn[]string
mcp.policies.ai.promptGuard.request[].bedrockGuardrails.policies.backendTLS.subjectAltNames[]string
mcp.policies.ai.promptGuard.request[].bedrockGuardrails.policies.backendAuthobjectAuthenticate to the backend.
mcp.policies.ai.promptGuard.request[].bedrockGuardrails.policies.backendAuth.passthroughobject
mcp.policies.ai.promptGuard.request[].bedrockGuardrails.policies.backendAuth.keyobject
mcp.policies.ai.promptGuard.request[].bedrockGuardrails.policies.backendAuth.key.filestring
mcp.policies.ai.promptGuard.request[].bedrockGuardrails.policies.backendAuth.gcpobject
mcp.policies.ai.promptGuard.request[].bedrockGuardrails.policies.backendAuth.gcp.typestring
mcp.policies.ai.promptGuard.request[].bedrockGuardrails.policies.backendAuth.gcp.audiencestringAudience for the token. If not set, the destination host will be used.
mcp.policies.ai.promptGuard.request[].bedrockGuardrails.policies.backendAuth.gcp.typestring
mcp.policies.ai.promptGuard.request[].bedrockGuardrails.policies.backendAuth.awsobject
mcp.policies.ai.promptGuard.request[].bedrockGuardrails.policies.backendAuth.aws.accessKeyIdstring
mcp.policies.ai.promptGuard.request[].bedrockGuardrails.policies.backendAuth.aws.secretAccessKeystring
mcp.policies.ai.promptGuard.request[].bedrockGuardrails.policies.backendAuth.aws.regionstring
mcp.policies.ai.promptGuard.request[].bedrockGuardrails.policies.backendAuth.aws.sessionTokenstring
mcp.policies.ai.promptGuard.request[].bedrockGuardrails.policies.backendAuth.azureobjectExactly one of explicitConfig, developerImplicit, or implicit may be set.
mcp.policies.ai.promptGuard.request[].bedrockGuardrails.policies.backendAuth.azure.explicitConfigobjectExactly one of clientSecret, managedIdentity, or workloadIdentity may be set.
mcp.policies.ai.promptGuard.request[].bedrockGuardrails.policies.backendAuth.azure.explicitConfig.clientSecretobject
mcp.policies.ai.promptGuard.request[].bedrockGuardrails.policies.backendAuth.azure.explicitConfig.clientSecret.tenant_idstring
mcp.policies.ai.promptGuard.request[].bedrockGuardrails.policies.backendAuth.azure.explicitConfig.clientSecret.client_idstring
mcp.policies.ai.promptGuard.request[].bedrockGuardrails.policies.backendAuth.azure.explicitConfig.clientSecret.client_secretstring
mcp.policies.ai.promptGuard.request[].bedrockGuardrails.policies.backendAuth.azure.explicitConfig.managedIdentityobject
mcp.policies.ai.promptGuard.request[].bedrockGuardrails.policies.backendAuth.azure.explicitConfig.managedIdentity.userAssignedIdentityobject
mcp.policies.ai.promptGuard.request[].bedrockGuardrails.policies.backendAuth.azure.explicitConfig.managedIdentity.userAssignedIdentity.clientIdstring
mcp.policies.ai.promptGuard.request[].bedrockGuardrails.policies.backendAuth.azure.explicitConfig.managedIdentity.userAssignedIdentity.objectIdstring
mcp.policies.ai.promptGuard.request[].bedrockGuardrails.policies.backendAuth.azure.explicitConfig.managedIdentity.userAssignedIdentity.resourceIdstring
mcp.policies.ai.promptGuard.request[].bedrockGuardrails.policies.backendAuth.azure.explicitConfig.workloadIdentityobject
mcp.policies.ai.promptGuard.request[].bedrockGuardrails.policies.backendAuth.azure.developerImplicitobject
mcp.policies.ai.promptGuard.request[].bedrockGuardrails.policies.backendAuth.azure.implicitobject
mcp.policies.ai.promptGuard.request[].bedrockGuardrails.policies.httpobjectSpecify HTTP settings for the backend
mcp.policies.ai.promptGuard.request[].bedrockGuardrails.policies.http.versionstring
mcp.policies.ai.promptGuard.request[].bedrockGuardrails.policies.http.requestTimeoutstring
mcp.policies.ai.promptGuard.request[].bedrockGuardrails.policies.tcpobjectSpecify TCP settings for the backend
mcp.policies.ai.promptGuard.request[].bedrockGuardrails.policies.tcp.keepalivesobject
mcp.policies.ai.promptGuard.request[].bedrockGuardrails.policies.tcp.keepalives.enabledboolean
mcp.policies.ai.promptGuard.request[].bedrockGuardrails.policies.tcp.keepalives.timestring
mcp.policies.ai.promptGuard.request[].bedrockGuardrails.policies.tcp.keepalives.intervalstring
mcp.policies.ai.promptGuard.request[].bedrockGuardrails.policies.tcp.keepalives.retriesinteger
mcp.policies.ai.promptGuard.request[].bedrockGuardrails.policies.tcp.connectTimeoutobject
mcp.policies.ai.promptGuard.request[].bedrockGuardrails.policies.tcp.connectTimeout.secsinteger
mcp.policies.ai.promptGuard.request[].bedrockGuardrails.policies.tcp.connectTimeout.nanosinteger
mcp.policies.ai.promptGuard.request[].bedrockGuardrails.policies.healthobjectHealth policy for backend outlier detection; evicts on unhealthy responses based on CEL condition and configurable duration.
mcp.policies.ai.promptGuard.request[].bedrockGuardrails.policies.health.unhealthyExpressionstringCEL expression; true means unhealthy (evict). E.g. response.code >= 500.
When unset, any 5xx or connection failure is treated as unhealthy.
mcp.policies.ai.promptGuard.request[].bedrockGuardrails.policies.health.evictionobjectLocal/config eviction sub-policy with duration as string; mirrors Eviction.
mcp.policies.ai.promptGuard.request[].bedrockGuardrails.policies.health.eviction.durationstring
mcp.policies.ai.promptGuard.request[].bedrockGuardrails.policies.health.eviction.restoreHealthnumber
mcp.policies.ai.promptGuard.request[].bedrockGuardrails.policies.health.eviction.consecutiveFailuresinteger
mcp.policies.ai.promptGuard.request[].bedrockGuardrails.policies.health.eviction.healthThresholdnumber
mcp.policies.ai.promptGuard.request[].bedrockGuardrails.policies.backendTunnelobjectSpecify a tunnel to use when connecting to the backend
mcp.policies.ai.promptGuard.request[].bedrockGuardrails.policies.backendTunnel.proxyobjectReference to the proxy address
Exactly one of service, host, or backend may be set.
mcp.policies.ai.promptGuard.request[].bedrockGuardrails.policies.backendTunnel.proxy.serviceobject
mcp.policies.ai.promptGuard.request[].bedrockGuardrails.policies.backendTunnel.proxy.service.nameobject
mcp.policies.ai.promptGuard.request[].bedrockGuardrails.policies.backendTunnel.proxy.service.name.namespacestring
mcp.policies.ai.promptGuard.request[].bedrockGuardrails.policies.backendTunnel.proxy.service.name.hostnamestring
mcp.policies.ai.promptGuard.request[].bedrockGuardrails.policies.backendTunnel.proxy.service.portinteger
mcp.policies.ai.promptGuard.request[].bedrockGuardrails.policies.backendTunnel.proxy.hoststringHostname or IP address
mcp.policies.ai.promptGuard.request[].bedrockGuardrails.policies.backendTunnel.proxy.backendstringExplicit backend reference. Backend must be defined in the top level backends list
mcp.policies.ai.promptGuard.request[].googleModelArmorobjectConfiguration for Google Cloud Model Armor integration.
mcp.policies.ai.promptGuard.request[].googleModelArmor.templateIdstringThe template ID for the Model Armor configuration
mcp.policies.ai.promptGuard.request[].googleModelArmor.projectIdstringThe GCP project ID
mcp.policies.ai.promptGuard.request[].googleModelArmor.locationstringThe GCP region (default: us-central1)
mcp.policies.ai.promptGuard.request[].googleModelArmor.policiesobjectBackend policies for GCP authentication (optional, defaults to implicit GCP auth)
mcp.policies.ai.promptGuard.request[].googleModelArmor.policies.requestHeaderModifierobjectHeaders to be modified in the request.
mcp.policies.ai.promptGuard.request[].googleModelArmor.policies.requestHeaderModifier.addobject
mcp.policies.ai.promptGuard.request[].googleModelArmor.policies.requestHeaderModifier.setobject
mcp.policies.ai.promptGuard.request[].googleModelArmor.policies.requestHeaderModifier.remove[]string
mcp.policies.ai.promptGuard.request[].googleModelArmor.policies.responseHeaderModifierobjectHeaders to be modified in the response.
mcp.policies.ai.promptGuard.request[].googleModelArmor.policies.responseHeaderModifier.addobject
mcp.policies.ai.promptGuard.request[].googleModelArmor.policies.responseHeaderModifier.setobject
mcp.policies.ai.promptGuard.request[].googleModelArmor.policies.responseHeaderModifier.remove[]string
mcp.policies.ai.promptGuard.request[].googleModelArmor.policies.requestRedirectobjectDirectly respond to the request with a redirect.
mcp.policies.ai.promptGuard.request[].googleModelArmor.policies.requestRedirect.schemestring
mcp.policies.ai.promptGuard.request[].googleModelArmor.policies.requestRedirect.authoritystring
mcp.policies.ai.promptGuard.request[].googleModelArmor.policies.requestRedirect.authority.fullstring
mcp.policies.ai.promptGuard.request[].googleModelArmor.policies.requestRedirect.authority.hoststring
mcp.policies.ai.promptGuard.request[].googleModelArmor.policies.requestRedirect.authority.portinteger
mcp.policies.ai.promptGuard.request[].googleModelArmor.policies.requestRedirect.pathobject
mcp.policies.ai.promptGuard.request[].googleModelArmor.policies.requestRedirect.path.fullstring
mcp.policies.ai.promptGuard.request[].googleModelArmor.policies.requestRedirect.path.prefixstring
mcp.policies.ai.promptGuard.request[].googleModelArmor.policies.requestRedirect.statusinteger
mcp.policies.ai.promptGuard.request[].googleModelArmor.policies.transformationsobjectModify requests and responses sent to and from the backend.
mcp.policies.ai.promptGuard.request[].googleModelArmor.policies.transformations.requestobject
mcp.policies.ai.promptGuard.request[].googleModelArmor.policies.transformations.request.addobject
mcp.policies.ai.promptGuard.request[].googleModelArmor.policies.transformations.request.setobject
mcp.policies.ai.promptGuard.request[].googleModelArmor.policies.transformations.request.remove[]string
mcp.policies.ai.promptGuard.request[].googleModelArmor.policies.transformations.request.bodystring
mcp.policies.ai.promptGuard.request[].googleModelArmor.policies.transformations.request.metadataobject
mcp.policies.ai.promptGuard.request[].googleModelArmor.policies.transformations.responseobject
mcp.policies.ai.promptGuard.request[].googleModelArmor.policies.transformations.response.addobject
mcp.policies.ai.promptGuard.request[].googleModelArmor.policies.transformations.response.setobject
mcp.policies.ai.promptGuard.request[].googleModelArmor.policies.transformations.response.remove[]string
mcp.policies.ai.promptGuard.request[].googleModelArmor.policies.transformations.response.bodystring
mcp.policies.ai.promptGuard.request[].googleModelArmor.policies.transformations.response.metadataobject
mcp.policies.ai.promptGuard.request[].googleModelArmor.policies.backendTLSobjectSend TLS to the backend.
mcp.policies.ai.promptGuard.request[].googleModelArmor.policies.backendTLS.certstring
mcp.policies.ai.promptGuard.request[].googleModelArmor.policies.backendTLS.keystring
mcp.policies.ai.promptGuard.request[].googleModelArmor.policies.backendTLS.rootstring
mcp.policies.ai.promptGuard.request[].googleModelArmor.policies.backendTLS.hostnamestring
mcp.policies.ai.promptGuard.request[].googleModelArmor.policies.backendTLS.insecureboolean
mcp.policies.ai.promptGuard.request[].googleModelArmor.policies.backendTLS.insecureHostboolean
mcp.policies.ai.promptGuard.request[].googleModelArmor.policies.backendTLS.alpn[]string
mcp.policies.ai.promptGuard.request[].googleModelArmor.policies.backendTLS.subjectAltNames[]string
mcp.policies.ai.promptGuard.request[].googleModelArmor.policies.backendAuthobjectAuthenticate to the backend.
mcp.policies.ai.promptGuard.request[].googleModelArmor.policies.backendAuth.passthroughobject
mcp.policies.ai.promptGuard.request[].googleModelArmor.policies.backendAuth.keyobject
mcp.policies.ai.promptGuard.request[].googleModelArmor.policies.backendAuth.key.filestring
mcp.policies.ai.promptGuard.request[].googleModelArmor.policies.backendAuth.gcpobject
mcp.policies.ai.promptGuard.request[].googleModelArmor.policies.backendAuth.gcp.typestring
mcp.policies.ai.promptGuard.request[].googleModelArmor.policies.backendAuth.gcp.audiencestringAudience for the token. If not set, the destination host will be used.
mcp.policies.ai.promptGuard.request[].googleModelArmor.policies.backendAuth.gcp.typestring
mcp.policies.ai.promptGuard.request[].googleModelArmor.policies.backendAuth.awsobject
mcp.policies.ai.promptGuard.request[].googleModelArmor.policies.backendAuth.aws.accessKeyIdstring
mcp.policies.ai.promptGuard.request[].googleModelArmor.policies.backendAuth.aws.secretAccessKeystring
mcp.policies.ai.promptGuard.request[].googleModelArmor.policies.backendAuth.aws.regionstring
mcp.policies.ai.promptGuard.request[].googleModelArmor.policies.backendAuth.aws.sessionTokenstring
mcp.policies.ai.promptGuard.request[].googleModelArmor.policies.backendAuth.azureobjectExactly one of explicitConfig, developerImplicit, or implicit may be set.
mcp.policies.ai.promptGuard.request[].googleModelArmor.policies.backendAuth.azure.explicitConfigobjectExactly one of clientSecret, managedIdentity, or workloadIdentity may be set.
mcp.policies.ai.promptGuard.request[].googleModelArmor.policies.backendAuth.azure.explicitConfig.clientSecretobject
mcp.policies.ai.promptGuard.request[].googleModelArmor.policies.backendAuth.azure.explicitConfig.clientSecret.tenant_idstring
mcp.policies.ai.promptGuard.request[].googleModelArmor.policies.backendAuth.azure.explicitConfig.clientSecret.client_idstring
mcp.policies.ai.promptGuard.request[].googleModelArmor.policies.backendAuth.azure.explicitConfig.clientSecret.client_secretstring
mcp.policies.ai.promptGuard.request[].googleModelArmor.policies.backendAuth.azure.explicitConfig.managedIdentityobject
mcp.policies.ai.promptGuard.request[].googleModelArmor.policies.backendAuth.azure.explicitConfig.managedIdentity.userAssignedIdentityobject
mcp.policies.ai.promptGuard.request[].googleModelArmor.policies.backendAuth.azure.explicitConfig.managedIdentity.userAssignedIdentity.clientIdstring
mcp.policies.ai.promptGuard.request[].googleModelArmor.policies.backendAuth.azure.explicitConfig.managedIdentity.userAssignedIdentity.objectIdstring
mcp.policies.ai.promptGuard.request[].googleModelArmor.policies.backendAuth.azure.explicitConfig.managedIdentity.userAssignedIdentity.resourceIdstring
mcp.policies.ai.promptGuard.request[].googleModelArmor.policies.backendAuth.azure.explicitConfig.workloadIdentityobject
mcp.policies.ai.promptGuard.request[].googleModelArmor.policies.backendAuth.azure.developerImplicitobject
mcp.policies.ai.promptGuard.request[].googleModelArmor.policies.backendAuth.azure.implicitobject
mcp.policies.ai.promptGuard.request[].googleModelArmor.policies.httpobjectSpecify HTTP settings for the backend
mcp.policies.ai.promptGuard.request[].googleModelArmor.policies.http.versionstring
mcp.policies.ai.promptGuard.request[].googleModelArmor.policies.http.requestTimeoutstring
mcp.policies.ai.promptGuard.request[].googleModelArmor.policies.tcpobjectSpecify TCP settings for the backend
mcp.policies.ai.promptGuard.request[].googleModelArmor.policies.tcp.keepalivesobject
mcp.policies.ai.promptGuard.request[].googleModelArmor.policies.tcp.keepalives.enabledboolean
mcp.policies.ai.promptGuard.request[].googleModelArmor.policies.tcp.keepalives.timestring
mcp.policies.ai.promptGuard.request[].googleModelArmor.policies.tcp.keepalives.intervalstring
mcp.policies.ai.promptGuard.request[].googleModelArmor.policies.tcp.keepalives.retriesinteger
mcp.policies.ai.promptGuard.request[].googleModelArmor.policies.tcp.connectTimeoutobject
mcp.policies.ai.promptGuard.request[].googleModelArmor.policies.tcp.connectTimeout.secsinteger
mcp.policies.ai.promptGuard.request[].googleModelArmor.policies.tcp.connectTimeout.nanosinteger
mcp.policies.ai.promptGuard.request[].googleModelArmor.policies.healthobjectHealth policy for backend outlier detection; evicts on unhealthy responses based on CEL condition and configurable duration.
mcp.policies.ai.promptGuard.request[].googleModelArmor.policies.health.unhealthyExpressionstringCEL expression; true means unhealthy (evict). E.g. response.code >= 500.
When unset, any 5xx or connection failure is treated as unhealthy.
mcp.policies.ai.promptGuard.request[].googleModelArmor.policies.health.evictionobjectLocal/config eviction sub-policy with duration as string; mirrors Eviction.
mcp.policies.ai.promptGuard.request[].googleModelArmor.policies.health.eviction.durationstring
mcp.policies.ai.promptGuard.request[].googleModelArmor.policies.health.eviction.restoreHealthnumber
mcp.policies.ai.promptGuard.request[].googleModelArmor.policies.health.eviction.consecutiveFailuresinteger
mcp.policies.ai.promptGuard.request[].googleModelArmor.policies.health.eviction.healthThresholdnumber
mcp.policies.ai.promptGuard.request[].googleModelArmor.policies.backendTunnelobjectSpecify a tunnel to use when connecting to the backend
mcp.policies.ai.promptGuard.request[].googleModelArmor.policies.backendTunnel.proxyobjectReference to the proxy address
Exactly one of service, host, or backend may be set.
mcp.policies.ai.promptGuard.request[].googleModelArmor.policies.backendTunnel.proxy.serviceobject
mcp.policies.ai.promptGuard.request[].googleModelArmor.policies.backendTunnel.proxy.service.nameobject
mcp.policies.ai.promptGuard.request[].googleModelArmor.policies.backendTunnel.proxy.service.name.namespacestring
mcp.policies.ai.promptGuard.request[].googleModelArmor.policies.backendTunnel.proxy.service.name.hostnamestring
mcp.policies.ai.promptGuard.request[].googleModelArmor.policies.backendTunnel.proxy.service.portinteger
mcp.policies.ai.promptGuard.request[].googleModelArmor.policies.backendTunnel.proxy.hoststringHostname or IP address
mcp.policies.ai.promptGuard.request[].googleModelArmor.policies.backendTunnel.proxy.backendstringExplicit backend reference. Backend must be defined in the top level backends list
mcp.policies.ai.promptGuard.request[].rejectionobject
mcp.policies.ai.promptGuard.request[].rejection.bodyarray
mcp.policies.ai.promptGuard.request[].rejection.statusinteger
mcp.policies.ai.promptGuard.request[].rejection.headersobjectOptional headers to add, set, or remove from the rejection response
mcp.policies.ai.promptGuard.request[].rejection.headers.addobject
mcp.policies.ai.promptGuard.request[].rejection.headers.setobject
mcp.policies.ai.promptGuard.request[].rejection.headers.remove[]string
mcp.policies.ai.promptGuard.response[]object
mcp.policies.ai.promptGuard.response[].regexobject
mcp.policies.ai.promptGuard.response[].regex.actionstring
mcp.policies.ai.promptGuard.response[].regex.rules[]object
mcp.policies.ai.promptGuard.response[].regex.rules[].builtinstring
mcp.policies.ai.promptGuard.response[].regex.rules[].patternstring
mcp.policies.ai.promptGuard.response[].webhookobject
mcp.policies.ai.promptGuard.response[].webhook.targetobjectExactly one of service, host, or backend may be set.
mcp.policies.ai.promptGuard.response[].webhook.target.serviceobject
mcp.policies.ai.promptGuard.response[].webhook.target.service.nameobject
mcp.policies.ai.promptGuard.response[].webhook.target.service.name.namespacestring
mcp.policies.ai.promptGuard.response[].webhook.target.service.name.hostnamestring
mcp.policies.ai.promptGuard.response[].webhook.target.service.portinteger
mcp.policies.ai.promptGuard.response[].webhook.target.hoststringHostname or IP address
mcp.policies.ai.promptGuard.response[].webhook.target.backendstringExplicit backend reference. Backend must be defined in the top level backends list
mcp.policies.ai.promptGuard.response[].webhook.forwardHeaderMatches[]object
mcp.policies.ai.promptGuard.response[].webhook.forwardHeaderMatches[].namestring
mcp.policies.ai.promptGuard.response[].webhook.forwardHeaderMatches[].valueobjectExactly one of exact or regex may be set.
mcp.policies.ai.promptGuard.response[].webhook.forwardHeaderMatches[].value.exactstring
mcp.policies.ai.promptGuard.response[].webhook.forwardHeaderMatches[].value.regexstring
mcp.policies.ai.promptGuard.response[].bedrockGuardrailsobjectConfiguration for AWS Bedrock Guardrails integration.
mcp.policies.ai.promptGuard.response[].bedrockGuardrails.guardrailIdentifierstringThe unique identifier of the guardrail
mcp.policies.ai.promptGuard.response[].bedrockGuardrails.guardrailVersionstringThe version of the guardrail
mcp.policies.ai.promptGuard.response[].bedrockGuardrails.regionstringAWS region where the guardrail is deployed
mcp.policies.ai.promptGuard.response[].bedrockGuardrails.policiesobjectBackend policies for AWS authentication (optional, defaults to implicit AWS auth)
mcp.policies.ai.promptGuard.response[].bedrockGuardrails.policies.requestHeaderModifierobjectHeaders to be modified in the request.
mcp.policies.ai.promptGuard.response[].bedrockGuardrails.policies.requestHeaderModifier.addobject
mcp.policies.ai.promptGuard.response[].bedrockGuardrails.policies.requestHeaderModifier.setobject
mcp.policies.ai.promptGuard.response[].bedrockGuardrails.policies.requestHeaderModifier.remove[]string
mcp.policies.ai.promptGuard.response[].bedrockGuardrails.policies.responseHeaderModifierobjectHeaders to be modified in the response.
mcp.policies.ai.promptGuard.response[].bedrockGuardrails.policies.responseHeaderModifier.addobject
mcp.policies.ai.promptGuard.response[].bedrockGuardrails.policies.responseHeaderModifier.setobject
mcp.policies.ai.promptGuard.response[].bedrockGuardrails.policies.responseHeaderModifier.remove[]string
mcp.policies.ai.promptGuard.response[].bedrockGuardrails.policies.requestRedirectobjectDirectly respond to the request with a redirect.
mcp.policies.ai.promptGuard.response[].bedrockGuardrails.policies.requestRedirect.schemestring
mcp.policies.ai.promptGuard.response[].bedrockGuardrails.policies.requestRedirect.authoritystring
mcp.policies.ai.promptGuard.response[].bedrockGuardrails.policies.requestRedirect.authority.fullstring
mcp.policies.ai.promptGuard.response[].bedrockGuardrails.policies.requestRedirect.authority.hoststring
mcp.policies.ai.promptGuard.response[].bedrockGuardrails.policies.requestRedirect.authority.portinteger
mcp.policies.ai.promptGuard.response[].bedrockGuardrails.policies.requestRedirect.pathobject
mcp.policies.ai.promptGuard.response[].bedrockGuardrails.policies.requestRedirect.path.fullstring
mcp.policies.ai.promptGuard.response[].bedrockGuardrails.policies.requestRedirect.path.prefixstring
mcp.policies.ai.promptGuard.response[].bedrockGuardrails.policies.requestRedirect.statusinteger
mcp.policies.ai.promptGuard.response[].bedrockGuardrails.policies.transformationsobjectModify requests and responses sent to and from the backend.
mcp.policies.ai.promptGuard.response[].bedrockGuardrails.policies.transformations.requestobject
mcp.policies.ai.promptGuard.response[].bedrockGuardrails.policies.transformations.request.addobject
mcp.policies.ai.promptGuard.response[].bedrockGuardrails.policies.transformations.request.setobject
mcp.policies.ai.promptGuard.response[].bedrockGuardrails.policies.transformations.request.remove[]string
mcp.policies.ai.promptGuard.response[].bedrockGuardrails.policies.transformations.request.bodystring
mcp.policies.ai.promptGuard.response[].bedrockGuardrails.policies.transformations.request.metadataobject
mcp.policies.ai.promptGuard.response[].bedrockGuardrails.policies.transformations.responseobject
mcp.policies.ai.promptGuard.response[].bedrockGuardrails.policies.transformations.response.addobject
mcp.policies.ai.promptGuard.response[].bedrockGuardrails.policies.transformations.response.setobject
mcp.policies.ai.promptGuard.response[].bedrockGuardrails.policies.transformations.response.remove[]string
mcp.policies.ai.promptGuard.response[].bedrockGuardrails.policies.transformations.response.bodystring
mcp.policies.ai.promptGuard.response[].bedrockGuardrails.policies.transformations.response.metadataobject
mcp.policies.ai.promptGuard.response[].bedrockGuardrails.policies.backendTLSobjectSend TLS to the backend.
mcp.policies.ai.promptGuard.response[].bedrockGuardrails.policies.backendTLS.certstring
mcp.policies.ai.promptGuard.response[].bedrockGuardrails.policies.backendTLS.keystring
mcp.policies.ai.promptGuard.response[].bedrockGuardrails.policies.backendTLS.rootstring
mcp.policies.ai.promptGuard.response[].bedrockGuardrails.policies.backendTLS.hostnamestring
mcp.policies.ai.promptGuard.response[].bedrockGuardrails.policies.backendTLS.insecureboolean
mcp.policies.ai.promptGuard.response[].bedrockGuardrails.policies.backendTLS.insecureHostboolean
mcp.policies.ai.promptGuard.response[].bedrockGuardrails.policies.backendTLS.alpn[]string
mcp.policies.ai.promptGuard.response[].bedrockGuardrails.policies.backendTLS.subjectAltNames[]string
mcp.policies.ai.promptGuard.response[].bedrockGuardrails.policies.backendAuthobjectAuthenticate to the backend.
mcp.policies.ai.promptGuard.response[].bedrockGuardrails.policies.backendAuth.passthroughobject
mcp.policies.ai.promptGuard.response[].bedrockGuardrails.policies.backendAuth.keyobject
mcp.policies.ai.promptGuard.response[].bedrockGuardrails.policies.backendAuth.key.filestring
mcp.policies.ai.promptGuard.response[].bedrockGuardrails.policies.backendAuth.gcpobject
mcp.policies.ai.promptGuard.response[].bedrockGuardrails.policies.backendAuth.gcp.typestring
mcp.policies.ai.promptGuard.response[].bedrockGuardrails.policies.backendAuth.gcp.audiencestringAudience for the token. If not set, the destination host will be used.
mcp.policies.ai.promptGuard.response[].bedrockGuardrails.policies.backendAuth.gcp.typestring
mcp.policies.ai.promptGuard.response[].bedrockGuardrails.policies.backendAuth.awsobject
mcp.policies.ai.promptGuard.response[].bedrockGuardrails.policies.backendAuth.aws.accessKeyIdstring
mcp.policies.ai.promptGuard.response[].bedrockGuardrails.policies.backendAuth.aws.secretAccessKeystring
mcp.policies.ai.promptGuard.response[].bedrockGuardrails.policies.backendAuth.aws.regionstring
mcp.policies.ai.promptGuard.response[].bedrockGuardrails.policies.backendAuth.aws.sessionTokenstring
mcp.policies.ai.promptGuard.response[].bedrockGuardrails.policies.backendAuth.azureobjectExactly one of explicitConfig, developerImplicit, or implicit may be set.
mcp.policies.ai.promptGuard.response[].bedrockGuardrails.policies.backendAuth.azure.explicitConfigobjectExactly one of clientSecret, managedIdentity, or workloadIdentity may be set.
mcp.policies.ai.promptGuard.response[].bedrockGuardrails.policies.backendAuth.azure.explicitConfig.clientSecretobject
mcp.policies.ai.promptGuard.response[].bedrockGuardrails.policies.backendAuth.azure.explicitConfig.clientSecret.tenant_idstring
mcp.policies.ai.promptGuard.response[].bedrockGuardrails.policies.backendAuth.azure.explicitConfig.clientSecret.client_idstring
mcp.policies.ai.promptGuard.response[].bedrockGuardrails.policies.backendAuth.azure.explicitConfig.clientSecret.client_secretstring
mcp.policies.ai.promptGuard.response[].bedrockGuardrails.policies.backendAuth.azure.explicitConfig.managedIdentityobject
mcp.policies.ai.promptGuard.response[].bedrockGuardrails.policies.backendAuth.azure.explicitConfig.managedIdentity.userAssignedIdentityobject
mcp.policies.ai.promptGuard.response[].bedrockGuardrails.policies.backendAuth.azure.explicitConfig.managedIdentity.userAssignedIdentity.clientIdstring
mcp.policies.ai.promptGuard.response[].bedrockGuardrails.policies.backendAuth.azure.explicitConfig.managedIdentity.userAssignedIdentity.objectIdstring
mcp.policies.ai.promptGuard.response[].bedrockGuardrails.policies.backendAuth.azure.explicitConfig.managedIdentity.userAssignedIdentity.resourceIdstring
mcp.policies.ai.promptGuard.response[].bedrockGuardrails.policies.backendAuth.azure.explicitConfig.workloadIdentityobject
mcp.policies.ai.promptGuard.response[].bedrockGuardrails.policies.backendAuth.azure.developerImplicitobject
mcp.policies.ai.promptGuard.response[].bedrockGuardrails.policies.backendAuth.azure.implicitobject
mcp.policies.ai.promptGuard.response[].bedrockGuardrails.policies.httpobjectSpecify HTTP settings for the backend
mcp.policies.ai.promptGuard.response[].bedrockGuardrails.policies.http.versionstring
mcp.policies.ai.promptGuard.response[].bedrockGuardrails.policies.http.requestTimeoutstring
mcp.policies.ai.promptGuard.response[].bedrockGuardrails.policies.tcpobjectSpecify TCP settings for the backend
mcp.policies.ai.promptGuard.response[].bedrockGuardrails.policies.tcp.keepalivesobject
mcp.policies.ai.promptGuard.response[].bedrockGuardrails.policies.tcp.keepalives.enabledboolean
mcp.policies.ai.promptGuard.response[].bedrockGuardrails.policies.tcp.keepalives.timestring
mcp.policies.ai.promptGuard.response[].bedrockGuardrails.policies.tcp.keepalives.intervalstring
mcp.policies.ai.promptGuard.response[].bedrockGuardrails.policies.tcp.keepalives.retriesinteger
mcp.policies.ai.promptGuard.response[].bedrockGuardrails.policies.tcp.connectTimeoutobject
mcp.policies.ai.promptGuard.response[].bedrockGuardrails.policies.tcp.connectTimeout.secsinteger
mcp.policies.ai.promptGuard.response[].bedrockGuardrails.policies.tcp.connectTimeout.nanosinteger
mcp.policies.ai.promptGuard.response[].bedrockGuardrails.policies.healthobjectHealth policy for backend outlier detection; evicts on unhealthy responses based on CEL condition and configurable duration.
mcp.policies.ai.promptGuard.response[].bedrockGuardrails.policies.health.unhealthyExpressionstringCEL expression; true means unhealthy (evict). E.g. response.code >= 500.
When unset, any 5xx or connection failure is treated as unhealthy.
mcp.policies.ai.promptGuard.response[].bedrockGuardrails.policies.health.evictionobjectLocal/config eviction sub-policy with duration as string; mirrors Eviction.
mcp.policies.ai.promptGuard.response[].bedrockGuardrails.policies.health.eviction.durationstring
mcp.policies.ai.promptGuard.response[].bedrockGuardrails.policies.health.eviction.restoreHealthnumber
mcp.policies.ai.promptGuard.response[].bedrockGuardrails.policies.health.eviction.consecutiveFailuresinteger
mcp.policies.ai.promptGuard.response[].bedrockGuardrails.policies.health.eviction.healthThresholdnumber
mcp.policies.ai.promptGuard.response[].bedrockGuardrails.policies.backendTunnelobjectSpecify a tunnel to use when connecting to the backend
mcp.policies.ai.promptGuard.response[].bedrockGuardrails.policies.backendTunnel.proxyobjectReference to the proxy address
Exactly one of service, host, or backend may be set.
mcp.policies.ai.promptGuard.response[].bedrockGuardrails.policies.backendTunnel.proxy.serviceobject
mcp.policies.ai.promptGuard.response[].bedrockGuardrails.policies.backendTunnel.proxy.service.nameobject
mcp.policies.ai.promptGuard.response[].bedrockGuardrails.policies.backendTunnel.proxy.service.name.namespacestring
mcp.policies.ai.promptGuard.response[].bedrockGuardrails.policies.backendTunnel.proxy.service.name.hostnamestring
mcp.policies.ai.promptGuard.response[].bedrockGuardrails.policies.backendTunnel.proxy.service.portinteger
mcp.policies.ai.promptGuard.response[].bedrockGuardrails.policies.backendTunnel.proxy.hoststringHostname or IP address
mcp.policies.ai.promptGuard.response[].bedrockGuardrails.policies.backendTunnel.proxy.backendstringExplicit backend reference. Backend must be defined in the top level backends list
mcp.policies.ai.promptGuard.response[].googleModelArmorobjectConfiguration for Google Cloud Model Armor integration.
mcp.policies.ai.promptGuard.response[].googleModelArmor.templateIdstringThe template ID for the Model Armor configuration
mcp.policies.ai.promptGuard.response[].googleModelArmor.projectIdstringThe GCP project ID
mcp.policies.ai.promptGuard.response[].googleModelArmor.locationstringThe GCP region (default: us-central1)
mcp.policies.ai.promptGuard.response[].googleModelArmor.policiesobjectBackend policies for GCP authentication (optional, defaults to implicit GCP auth)
mcp.policies.ai.promptGuard.response[].googleModelArmor.policies.requestHeaderModifierobjectHeaders to be modified in the request.
mcp.policies.ai.promptGuard.response[].googleModelArmor.policies.requestHeaderModifier.addobject
mcp.policies.ai.promptGuard.response[].googleModelArmor.policies.requestHeaderModifier.setobject
mcp.policies.ai.promptGuard.response[].googleModelArmor.policies.requestHeaderModifier.remove[]string
mcp.policies.ai.promptGuard.response[].googleModelArmor.policies.responseHeaderModifierobjectHeaders to be modified in the response.
mcp.policies.ai.promptGuard.response[].googleModelArmor.policies.responseHeaderModifier.addobject
mcp.policies.ai.promptGuard.response[].googleModelArmor.policies.responseHeaderModifier.setobject
mcp.policies.ai.promptGuard.response[].googleModelArmor.policies.responseHeaderModifier.remove[]string
mcp.policies.ai.promptGuard.response[].googleModelArmor.policies.requestRedirectobjectDirectly respond to the request with a redirect.
mcp.policies.ai.promptGuard.response[].googleModelArmor.policies.requestRedirect.schemestring
mcp.policies.ai.promptGuard.response[].googleModelArmor.policies.requestRedirect.authoritystring
mcp.policies.ai.promptGuard.response[].googleModelArmor.policies.requestRedirect.authority.fullstring
mcp.policies.ai.promptGuard.response[].googleModelArmor.policies.requestRedirect.authority.hoststring
mcp.policies.ai.promptGuard.response[].googleModelArmor.policies.requestRedirect.authority.portinteger
mcp.policies.ai.promptGuard.response[].googleModelArmor.policies.requestRedirect.pathobject
mcp.policies.ai.promptGuard.response[].googleModelArmor.policies.requestRedirect.path.fullstring
mcp.policies.ai.promptGuard.response[].googleModelArmor.policies.requestRedirect.path.prefixstring
mcp.policies.ai.promptGuard.response[].googleModelArmor.policies.requestRedirect.statusinteger
mcp.policies.ai.promptGuard.response[].googleModelArmor.policies.transformationsobjectModify requests and responses sent to and from the backend.
mcp.policies.ai.promptGuard.response[].googleModelArmor.policies.transformations.requestobject
mcp.policies.ai.promptGuard.response[].googleModelArmor.policies.transformations.request.addobject
mcp.policies.ai.promptGuard.response[].googleModelArmor.policies.transformations.request.setobject
mcp.policies.ai.promptGuard.response[].googleModelArmor.policies.transformations.request.remove[]string
mcp.policies.ai.promptGuard.response[].googleModelArmor.policies.transformations.request.bodystring
mcp.policies.ai.promptGuard.response[].googleModelArmor.policies.transformations.request.metadataobject
mcp.policies.ai.promptGuard.response[].googleModelArmor.policies.transformations.responseobject
mcp.policies.ai.promptGuard.response[].googleModelArmor.policies.transformations.response.addobject
mcp.policies.ai.promptGuard.response[].googleModelArmor.policies.transformations.response.setobject
mcp.policies.ai.promptGuard.response[].googleModelArmor.policies.transformations.response.remove[]string
mcp.policies.ai.promptGuard.response[].googleModelArmor.policies.transformations.response.bodystring
mcp.policies.ai.promptGuard.response[].googleModelArmor.policies.transformations.response.metadataobject
mcp.policies.ai.promptGuard.response[].googleModelArmor.policies.backendTLSobjectSend TLS to the backend.
mcp.policies.ai.promptGuard.response[].googleModelArmor.policies.backendTLS.certstring
mcp.policies.ai.promptGuard.response[].googleModelArmor.policies.backendTLS.keystring
mcp.policies.ai.promptGuard.response[].googleModelArmor.policies.backendTLS.rootstring
mcp.policies.ai.promptGuard.response[].googleModelArmor.policies.backendTLS.hostnamestring
mcp.policies.ai.promptGuard.response[].googleModelArmor.policies.backendTLS.insecureboolean
mcp.policies.ai.promptGuard.response[].googleModelArmor.policies.backendTLS.insecureHostboolean
mcp.policies.ai.promptGuard.response[].googleModelArmor.policies.backendTLS.alpn[]string
mcp.policies.ai.promptGuard.response[].googleModelArmor.policies.backendTLS.subjectAltNames[]string
mcp.policies.ai.promptGuard.response[].googleModelArmor.policies.backendAuthobjectAuthenticate to the backend.
mcp.policies.ai.promptGuard.response[].googleModelArmor.policies.backendAuth.passthroughobject
mcp.policies.ai.promptGuard.response[].googleModelArmor.policies.backendAuth.keyobject
mcp.policies.ai.promptGuard.response[].googleModelArmor.policies.backendAuth.key.filestring
mcp.policies.ai.promptGuard.response[].googleModelArmor.policies.backendAuth.gcpobject
mcp.policies.ai.promptGuard.response[].googleModelArmor.policies.backendAuth.gcp.typestring
mcp.policies.ai.promptGuard.response[].googleModelArmor.policies.backendAuth.gcp.audiencestringAudience for the token. If not set, the destination host will be used.
mcp.policies.ai.promptGuard.response[].googleModelArmor.policies.backendAuth.gcp.typestring
mcp.policies.ai.promptGuard.response[].googleModelArmor.policies.backendAuth.awsobject
mcp.policies.ai.promptGuard.response[].googleModelArmor.policies.backendAuth.aws.accessKeyIdstring
mcp.policies.ai.promptGuard.response[].googleModelArmor.policies.backendAuth.aws.secretAccessKeystring
mcp.policies.ai.promptGuard.response[].googleModelArmor.policies.backendAuth.aws.regionstring
mcp.policies.ai.promptGuard.response[].googleModelArmor.policies.backendAuth.aws.sessionTokenstring
mcp.policies.ai.promptGuard.response[].googleModelArmor.policies.backendAuth.azureobjectExactly one of explicitConfig, developerImplicit, or implicit may be set.
mcp.policies.ai.promptGuard.response[].googleModelArmor.policies.backendAuth.azure.explicitConfigobjectExactly one of clientSecret, managedIdentity, or workloadIdentity may be set.
mcp.policies.ai.promptGuard.response[].googleModelArmor.policies.backendAuth.azure.explicitConfig.clientSecretobject
mcp.policies.ai.promptGuard.response[].googleModelArmor.policies.backendAuth.azure.explicitConfig.clientSecret.tenant_idstring
mcp.policies.ai.promptGuard.response[].googleModelArmor.policies.backendAuth.azure.explicitConfig.clientSecret.client_idstring
mcp.policies.ai.promptGuard.response[].googleModelArmor.policies.backendAuth.azure.explicitConfig.clientSecret.client_secretstring
mcp.policies.ai.promptGuard.response[].googleModelArmor.policies.backendAuth.azure.explicitConfig.managedIdentityobject
mcp.policies.ai.promptGuard.response[].googleModelArmor.policies.backendAuth.azure.explicitConfig.managedIdentity.userAssignedIdentityobject
mcp.policies.ai.promptGuard.response[].googleModelArmor.policies.backendAuth.azure.explicitConfig.managedIdentity.userAssignedIdentity.clientIdstring
mcp.policies.ai.promptGuard.response[].googleModelArmor.policies.backendAuth.azure.explicitConfig.managedIdentity.userAssignedIdentity.objectIdstring
mcp.policies.ai.promptGuard.response[].googleModelArmor.policies.backendAuth.azure.explicitConfig.managedIdentity.userAssignedIdentity.resourceIdstring
mcp.policies.ai.promptGuard.response[].googleModelArmor.policies.backendAuth.azure.explicitConfig.workloadIdentityobject
mcp.policies.ai.promptGuard.response[].googleModelArmor.policies.backendAuth.azure.developerImplicitobject
mcp.policies.ai.promptGuard.response[].googleModelArmor.policies.backendAuth.azure.implicitobject
mcp.policies.ai.promptGuard.response[].googleModelArmor.policies.httpobjectSpecify HTTP settings for the backend
mcp.policies.ai.promptGuard.response[].googleModelArmor.policies.http.versionstring
mcp.policies.ai.promptGuard.response[].googleModelArmor.policies.http.requestTimeoutstring
mcp.policies.ai.promptGuard.response[].googleModelArmor.policies.tcpobjectSpecify TCP settings for the backend
mcp.policies.ai.promptGuard.response[].googleModelArmor.policies.tcp.keepalivesobject
mcp.policies.ai.promptGuard.response[].googleModelArmor.policies.tcp.keepalives.enabledboolean
mcp.policies.ai.promptGuard.response[].googleModelArmor.policies.tcp.keepalives.timestring
mcp.policies.ai.promptGuard.response[].googleModelArmor.policies.tcp.keepalives.intervalstring
mcp.policies.ai.promptGuard.response[].googleModelArmor.policies.tcp.keepalives.retriesinteger
mcp.policies.ai.promptGuard.response[].googleModelArmor.policies.tcp.connectTimeoutobject
mcp.policies.ai.promptGuard.response[].googleModelArmor.policies.tcp.connectTimeout.secsinteger
mcp.policies.ai.promptGuard.response[].googleModelArmor.policies.tcp.connectTimeout.nanosinteger
mcp.policies.ai.promptGuard.response[].googleModelArmor.policies.healthobjectHealth policy for backend outlier detection; evicts on unhealthy responses based on CEL condition and configurable duration.
mcp.policies.ai.promptGuard.response[].googleModelArmor.policies.health.unhealthyExpressionstringCEL expression; true means unhealthy (evict). E.g. response.code >= 500.
When unset, any 5xx or connection failure is treated as unhealthy.
mcp.policies.ai.promptGuard.response[].googleModelArmor.policies.health.evictionobjectLocal/config eviction sub-policy with duration as string; mirrors Eviction.
mcp.policies.ai.promptGuard.response[].googleModelArmor.policies.health.eviction.durationstring
mcp.policies.ai.promptGuard.response[].googleModelArmor.policies.health.eviction.restoreHealthnumber
mcp.policies.ai.promptGuard.response[].googleModelArmor.policies.health.eviction.consecutiveFailuresinteger
mcp.policies.ai.promptGuard.response[].googleModelArmor.policies.health.eviction.healthThresholdnumber
mcp.policies.ai.promptGuard.response[].googleModelArmor.policies.backendTunnelobjectSpecify a tunnel to use when connecting to the backend
mcp.policies.ai.promptGuard.response[].googleModelArmor.policies.backendTunnel.proxyobjectReference to the proxy address
Exactly one of service, host, or backend may be set.
mcp.policies.ai.promptGuard.response[].googleModelArmor.policies.backendTunnel.proxy.serviceobject
mcp.policies.ai.promptGuard.response[].googleModelArmor.policies.backendTunnel.proxy.service.nameobject
mcp.policies.ai.promptGuard.response[].googleModelArmor.policies.backendTunnel.proxy.service.name.namespacestring
mcp.policies.ai.promptGuard.response[].googleModelArmor.policies.backendTunnel.proxy.service.name.hostnamestring
mcp.policies.ai.promptGuard.response[].googleModelArmor.policies.backendTunnel.proxy.service.portinteger
mcp.policies.ai.promptGuard.response[].googleModelArmor.policies.backendTunnel.proxy.hoststringHostname or IP address
mcp.policies.ai.promptGuard.response[].googleModelArmor.policies.backendTunnel.proxy.backendstringExplicit backend reference. Backend must be defined in the top level backends list
mcp.policies.ai.promptGuard.response[].rejectionobject
mcp.policies.ai.promptGuard.response[].rejection.bodyarray
mcp.policies.ai.promptGuard.response[].rejection.statusinteger
mcp.policies.ai.promptGuard.response[].rejection.headersobjectOptional headers to add, set, or remove from the rejection response
mcp.policies.ai.promptGuard.response[].rejection.headers.addobject
mcp.policies.ai.promptGuard.response[].rejection.headers.setobject
mcp.policies.ai.promptGuard.response[].rejection.headers.remove[]string
mcp.policies.ai.defaultsobject
mcp.policies.ai.overridesobject
mcp.policies.ai.transformationsobject
mcp.policies.ai.promptsobject
mcp.policies.ai.prompts.append[]object
mcp.policies.ai.prompts.append[].rolestring
mcp.policies.ai.prompts.append[].contentstring
mcp.policies.ai.prompts.prepend[]object
mcp.policies.ai.prompts.prepend[].rolestring
mcp.policies.ai.prompts.prepend[].contentstring
mcp.policies.ai.modelAliasesobject
mcp.policies.ai.promptCachingobject
mcp.policies.ai.promptCaching.cacheSystemboolean
mcp.policies.ai.promptCaching.cacheMessagesboolean
mcp.policies.ai.promptCaching.cacheToolsboolean
mcp.policies.ai.promptCaching.minTokensinteger
mcp.policies.ai.routesobject
mcp.policies.backendTLSobjectSend TLS to the backend.
mcp.policies.backendTLS.certstring
mcp.policies.backendTLS.keystring
mcp.policies.backendTLS.rootstring
mcp.policies.backendTLS.hostnamestring
mcp.policies.backendTLS.insecureboolean
mcp.policies.backendTLS.insecureHostboolean
mcp.policies.backendTLS.alpn[]string
mcp.policies.backendTLS.subjectAltNames[]string
mcp.policies.backendTunnelobjectTunnel to the backend.
mcp.policies.backendTunnel.proxyobjectReference to the proxy address
Exactly one of service, host, or backend may be set.
mcp.policies.backendTunnel.proxy.serviceobject
mcp.policies.backendTunnel.proxy.service.nameobject
mcp.policies.backendTunnel.proxy.service.name.namespacestring
mcp.policies.backendTunnel.proxy.service.name.hostnamestring
mcp.policies.backendTunnel.proxy.service.portinteger
mcp.policies.backendTunnel.proxy.hoststringHostname or IP address
mcp.policies.backendTunnel.proxy.backendstringExplicit backend reference. Backend must be defined in the top level backends list
mcp.policies.backendAuthobjectAuthenticate to the backend.
mcp.policies.backendAuth.passthroughobject
mcp.policies.backendAuth.keyobject
mcp.policies.backendAuth.key.filestring
mcp.policies.backendAuth.gcpobject
mcp.policies.backendAuth.gcp.typestring
mcp.policies.backendAuth.gcp.audiencestringAudience for the token. If not set, the destination host will be used.
mcp.policies.backendAuth.gcp.typestring
mcp.policies.backendAuth.awsobject
mcp.policies.backendAuth.aws.accessKeyIdstring
mcp.policies.backendAuth.aws.secretAccessKeystring
mcp.policies.backendAuth.aws.regionstring
mcp.policies.backendAuth.aws.sessionTokenstring
mcp.policies.backendAuth.azureobjectExactly one of explicitConfig, developerImplicit, or implicit may be set.
mcp.policies.backendAuth.azure.explicitConfigobjectExactly one of clientSecret, managedIdentity, or workloadIdentity may be set.
mcp.policies.backendAuth.azure.explicitConfig.clientSecretobject
mcp.policies.backendAuth.azure.explicitConfig.clientSecret.tenant_idstring
mcp.policies.backendAuth.azure.explicitConfig.clientSecret.client_idstring
mcp.policies.backendAuth.azure.explicitConfig.clientSecret.client_secretstring
mcp.policies.backendAuth.azure.explicitConfig.managedIdentityobject
mcp.policies.backendAuth.azure.explicitConfig.managedIdentity.userAssignedIdentityobject
mcp.policies.backendAuth.azure.explicitConfig.managedIdentity.userAssignedIdentity.clientIdstring
mcp.policies.backendAuth.azure.explicitConfig.managedIdentity.userAssignedIdentity.objectIdstring
mcp.policies.backendAuth.azure.explicitConfig.managedIdentity.userAssignedIdentity.resourceIdstring
mcp.policies.backendAuth.azure.explicitConfig.workloadIdentityobject
mcp.policies.backendAuth.azure.developerImplicitobject
mcp.policies.backendAuth.azure.implicitobject
mcp.policies.localRateLimit[]objectRate limit incoming requests. State is kept local.
mcp.policies.localRateLimit[].maxTokensinteger
mcp.policies.localRateLimit[].tokensPerFillinteger
mcp.policies.localRateLimit[].fillIntervalstring
mcp.policies.localRateLimit[].typestring
mcp.policies.remoteRateLimitobjectRate limit incoming requests. State is managed by a remote server.
mcp.policies.remoteRateLimit.serviceobject
mcp.policies.remoteRateLimit.service.nameobject
mcp.policies.remoteRateLimit.service.name.namespacestring
mcp.policies.remoteRateLimit.service.name.hostnamestring
mcp.policies.remoteRateLimit.service.portinteger
mcp.policies.remoteRateLimit.hoststringHostname or IP address
mcp.policies.remoteRateLimit.backendstringExplicit backend reference. Backend must be defined in the top level backends list
mcp.policies.remoteRateLimit.domainstring
mcp.policies.remoteRateLimit.policiesobjectPolicies to connect to the backend
mcp.policies.remoteRateLimit.policies.requestHeaderModifierobjectHeaders to be modified in the request.
mcp.policies.remoteRateLimit.policies.requestHeaderModifier.addobject
mcp.policies.remoteRateLimit.policies.requestHeaderModifier.setobject
mcp.policies.remoteRateLimit.policies.requestHeaderModifier.remove[]string
mcp.policies.remoteRateLimit.policies.responseHeaderModifierobjectHeaders to be modified in the response.
mcp.policies.remoteRateLimit.policies.responseHeaderModifier.addobject
mcp.policies.remoteRateLimit.policies.responseHeaderModifier.setobject
mcp.policies.remoteRateLimit.policies.responseHeaderModifier.remove[]string
mcp.policies.remoteRateLimit.policies.requestRedirectobjectDirectly respond to the request with a redirect.
mcp.policies.remoteRateLimit.policies.requestRedirect.schemestring
mcp.policies.remoteRateLimit.policies.requestRedirect.authoritystring
mcp.policies.remoteRateLimit.policies.requestRedirect.authority.fullstring
mcp.policies.remoteRateLimit.policies.requestRedirect.authority.hoststring
mcp.policies.remoteRateLimit.policies.requestRedirect.authority.portinteger
mcp.policies.remoteRateLimit.policies.requestRedirect.pathobject
mcp.policies.remoteRateLimit.policies.requestRedirect.path.fullstring
mcp.policies.remoteRateLimit.policies.requestRedirect.path.prefixstring
mcp.policies.remoteRateLimit.policies.requestRedirect.statusinteger
mcp.policies.remoteRateLimit.policies.transformationsobjectModify requests and responses sent to and from the backend.
mcp.policies.remoteRateLimit.policies.transformations.requestobject
mcp.policies.remoteRateLimit.policies.transformations.request.addobject
mcp.policies.remoteRateLimit.policies.transformations.request.setobject
mcp.policies.remoteRateLimit.policies.transformations.request.remove[]string
mcp.policies.remoteRateLimit.policies.transformations.request.bodystring
mcp.policies.remoteRateLimit.policies.transformations.request.metadataobject
mcp.policies.remoteRateLimit.policies.transformations.responseobject
mcp.policies.remoteRateLimit.policies.transformations.response.addobject
mcp.policies.remoteRateLimit.policies.transformations.response.setobject
mcp.policies.remoteRateLimit.policies.transformations.response.remove[]string
mcp.policies.remoteRateLimit.policies.transformations.response.bodystring
mcp.policies.remoteRateLimit.policies.transformations.response.metadataobject
mcp.policies.remoteRateLimit.policies.backendTLSobjectSend TLS to the backend.
mcp.policies.remoteRateLimit.policies.backendTLS.certstring
mcp.policies.remoteRateLimit.policies.backendTLS.keystring
mcp.policies.remoteRateLimit.policies.backendTLS.rootstring
mcp.policies.remoteRateLimit.policies.backendTLS.hostnamestring
mcp.policies.remoteRateLimit.policies.backendTLS.insecureboolean
mcp.policies.remoteRateLimit.policies.backendTLS.insecureHostboolean
mcp.policies.remoteRateLimit.policies.backendTLS.alpn[]string
mcp.policies.remoteRateLimit.policies.backendTLS.subjectAltNames[]string
mcp.policies.remoteRateLimit.policies.backendAuthobjectAuthenticate to the backend.
mcp.policies.remoteRateLimit.policies.backendAuth.passthroughobject
mcp.policies.remoteRateLimit.policies.backendAuth.keyobject
mcp.policies.remoteRateLimit.policies.backendAuth.key.filestring
mcp.policies.remoteRateLimit.policies.backendAuth.gcpobject
mcp.policies.remoteRateLimit.policies.backendAuth.gcp.typestring
mcp.policies.remoteRateLimit.policies.backendAuth.gcp.audiencestringAudience for the token. If not set, the destination host will be used.
mcp.policies.remoteRateLimit.policies.backendAuth.gcp.typestring
mcp.policies.remoteRateLimit.policies.backendAuth.awsobject
mcp.policies.remoteRateLimit.policies.backendAuth.aws.accessKeyIdstring
mcp.policies.remoteRateLimit.policies.backendAuth.aws.secretAccessKeystring
mcp.policies.remoteRateLimit.policies.backendAuth.aws.regionstring
mcp.policies.remoteRateLimit.policies.backendAuth.aws.sessionTokenstring
mcp.policies.remoteRateLimit.policies.backendAuth.azureobjectExactly one of explicitConfig, developerImplicit, or implicit may be set.
mcp.policies.remoteRateLimit.policies.backendAuth.azure.explicitConfigobjectExactly one of clientSecret, managedIdentity, or workloadIdentity may be set.
mcp.policies.remoteRateLimit.policies.backendAuth.azure.explicitConfig.clientSecretobject
mcp.policies.remoteRateLimit.policies.backendAuth.azure.explicitConfig.clientSecret.tenant_idstring
mcp.policies.remoteRateLimit.policies.backendAuth.azure.explicitConfig.clientSecret.client_idstring
mcp.policies.remoteRateLimit.policies.backendAuth.azure.explicitConfig.clientSecret.client_secretstring
mcp.policies.remoteRateLimit.policies.backendAuth.azure.explicitConfig.managedIdentityobject
mcp.policies.remoteRateLimit.policies.backendAuth.azure.explicitConfig.managedIdentity.userAssignedIdentityobject
mcp.policies.remoteRateLimit.policies.backendAuth.azure.explicitConfig.managedIdentity.userAssignedIdentity.clientIdstring
mcp.policies.remoteRateLimit.policies.backendAuth.azure.explicitConfig.managedIdentity.userAssignedIdentity.objectIdstring
mcp.policies.remoteRateLimit.policies.backendAuth.azure.explicitConfig.managedIdentity.userAssignedIdentity.resourceIdstring
mcp.policies.remoteRateLimit.policies.backendAuth.azure.explicitConfig.workloadIdentityobject
mcp.policies.remoteRateLimit.policies.backendAuth.azure.developerImplicitobject
mcp.policies.remoteRateLimit.policies.backendAuth.azure.implicitobject
mcp.policies.remoteRateLimit.policies.httpobjectSpecify HTTP settings for the backend
mcp.policies.remoteRateLimit.policies.http.versionstring
mcp.policies.remoteRateLimit.policies.http.requestTimeoutstring
mcp.policies.remoteRateLimit.policies.tcpobjectSpecify TCP settings for the backend
mcp.policies.remoteRateLimit.policies.tcp.keepalivesobject
mcp.policies.remoteRateLimit.policies.tcp.keepalives.enabledboolean
mcp.policies.remoteRateLimit.policies.tcp.keepalives.timestring
mcp.policies.remoteRateLimit.policies.tcp.keepalives.intervalstring
mcp.policies.remoteRateLimit.policies.tcp.keepalives.retriesinteger
mcp.policies.remoteRateLimit.policies.tcp.connectTimeoutobject
mcp.policies.remoteRateLimit.policies.tcp.connectTimeout.secsinteger
mcp.policies.remoteRateLimit.policies.tcp.connectTimeout.nanosinteger
mcp.policies.remoteRateLimit.policies.healthobjectHealth policy for backend outlier detection; evicts on unhealthy responses based on CEL condition and configurable duration.
mcp.policies.remoteRateLimit.policies.health.unhealthyExpressionstringCEL expression; true means unhealthy (evict). E.g. response.code >= 500.
When unset, any 5xx or connection failure is treated as unhealthy.
mcp.policies.remoteRateLimit.policies.health.evictionobjectLocal/config eviction sub-policy with duration as string; mirrors Eviction.
mcp.policies.remoteRateLimit.policies.health.eviction.durationstring
mcp.policies.remoteRateLimit.policies.health.eviction.restoreHealthnumber
mcp.policies.remoteRateLimit.policies.health.eviction.consecutiveFailuresinteger
mcp.policies.remoteRateLimit.policies.health.eviction.healthThresholdnumber
mcp.policies.remoteRateLimit.policies.backendTunnelobjectSpecify a tunnel to use when connecting to the backend
mcp.policies.remoteRateLimit.policies.backendTunnel.proxyobjectReference to the proxy address
Exactly one of service, host, or backend may be set.
mcp.policies.remoteRateLimit.policies.backendTunnel.proxy.serviceobject
mcp.policies.remoteRateLimit.policies.backendTunnel.proxy.service.nameobject
mcp.policies.remoteRateLimit.policies.backendTunnel.proxy.service.name.namespacestring
mcp.policies.remoteRateLimit.policies.backendTunnel.proxy.service.name.hostnamestring
mcp.policies.remoteRateLimit.policies.backendTunnel.proxy.service.portinteger
mcp.policies.remoteRateLimit.policies.backendTunnel.proxy.hoststringHostname or IP address
mcp.policies.remoteRateLimit.policies.backendTunnel.proxy.backendstringExplicit backend reference. Backend must be defined in the top level backends list
mcp.policies.remoteRateLimit.descriptors[]object
mcp.policies.remoteRateLimit.descriptors[].entries[]object
mcp.policies.remoteRateLimit.descriptors[].entries[].keystring
mcp.policies.remoteRateLimit.descriptors[].entries[].valuestring
mcp.policies.remoteRateLimit.descriptors[].typestring
mcp.policies.remoteRateLimit.failureModestringBehavior when the remote rate limit service is unavailable or returns an error.
Defaults to failClosed, denying requests with a 500 status on service failure.
mcp.policies.jwtAuthobjectAuthenticate incoming JWT requests.
mcp.policies.jwtAuth.modestring
mcp.policies.jwtAuth.providers[]object
mcp.policies.jwtAuth.providers[].issuerstring
mcp.policies.jwtAuth.providers[].audiences[]string
mcp.policies.jwtAuth.providers[].jwksobject
mcp.policies.jwtAuth.providers[].jwks.filestring
mcp.policies.jwtAuth.providers[].jwks.urlstring
mcp.policies.jwtAuth.providers[].jwtValidationOptionsobjectJWT validation options controlling which claims must be present in a token.

The required_claims set specifies which RFC 7519 registered claims must
exist in the token payload before validation proceeds. Only the following
values are recognized: exp, nbf, aud, iss, sub. Other registered
claims such as iat and jti are not enforced by the underlying
jsonwebtoken library and will be silently ignored.

This only enforces presence. Standard claims like exp and nbf
have their values validated independently (e.g., expiry is always checked
when the exp claim is present, regardless of this setting).

Defaults to ["exp"].
mcp.policies.jwtAuth.providers[].jwtValidationOptions.requiredClaims[]stringClaims that must be present in the token before validation.
Only “exp”, “nbf”, “aud”, “iss”, “sub” are enforced; others
(including “iat” and “jti”) are ignored.
Defaults to [“exp”]. Use an empty list to require no claims.
mcp.policies.jwtAuth.modestring
mcp.policies.jwtAuth.issuerstring
mcp.policies.jwtAuth.audiences[]string
mcp.policies.jwtAuth.jwksobject
mcp.policies.jwtAuth.jwks.filestring
mcp.policies.jwtAuth.jwks.urlstring
mcp.policies.jwtAuth.jwtValidationOptionsobjectJWT validation options controlling which claims must be present in a token.

The required_claims set specifies which RFC 7519 registered claims must
exist in the token payload before validation proceeds. Only the following
values are recognized: exp, nbf, aud, iss, sub. Other registered
claims such as iat and jti are not enforced by the underlying
jsonwebtoken library and will be silently ignored.

This only enforces presence. Standard claims like exp and nbf
have their values validated independently (e.g., expiry is always checked
when the exp claim is present, regardless of this setting).

Defaults to ["exp"].
mcp.policies.jwtAuth.jwtValidationOptions.requiredClaims[]stringClaims that must be present in the token before validation.
Only “exp”, “nbf”, “aud”, “iss”, “sub” are enforced; others
(including “iat” and “jti”) are ignored.
Defaults to [“exp”]. Use an empty list to require no claims.
mcp.policies.basicAuthobjectAuthenticate incoming requests using Basic Authentication with htpasswd.
mcp.policies.basicAuth.htpasswdobject.htpasswd file contents/reference
mcp.policies.basicAuth.htpasswd.filestring
mcp.policies.basicAuth.realmstringRealm name for the WWW-Authenticate header
mcp.policies.basicAuth.modestringValidation mode for basic authentication
mcp.policies.apiKeyobjectAuthenticate incoming requests using API Keys
mcp.policies.apiKey.keys[]objectList of API keys
mcp.policies.apiKey.keys[].keystring
mcp.policies.apiKey.keys[].metadataany
mcp.policies.apiKey.modestringValidation mode for API keys
mcp.policies.extAuthzobjectAuthenticate incoming requests by calling an external authorization server.
mcp.policies.extAuthz.serviceobject
mcp.policies.extAuthz.service.nameobject
mcp.policies.extAuthz.service.name.namespacestring
mcp.policies.extAuthz.service.name.hostnamestring
mcp.policies.extAuthz.service.portinteger
mcp.policies.extAuthz.hoststringHostname or IP address
mcp.policies.extAuthz.backendstringExplicit backend reference. Backend must be defined in the top level backends list
mcp.policies.extAuthz.policiesobjectPolicies to connect to the backend
mcp.policies.extAuthz.policies.requestHeaderModifierobjectHeaders to be modified in the request.
mcp.policies.extAuthz.policies.requestHeaderModifier.addobject
mcp.policies.extAuthz.policies.requestHeaderModifier.setobject
mcp.policies.extAuthz.policies.requestHeaderModifier.remove[]string
mcp.policies.extAuthz.policies.responseHeaderModifierobjectHeaders to be modified in the response.
mcp.policies.extAuthz.policies.responseHeaderModifier.addobject
mcp.policies.extAuthz.policies.responseHeaderModifier.setobject
mcp.policies.extAuthz.policies.responseHeaderModifier.remove[]string
mcp.policies.extAuthz.policies.requestRedirectobjectDirectly respond to the request with a redirect.
mcp.policies.extAuthz.policies.requestRedirect.schemestring
mcp.policies.extAuthz.policies.requestRedirect.authoritystring
mcp.policies.extAuthz.policies.requestRedirect.authority.fullstring
mcp.policies.extAuthz.policies.requestRedirect.authority.hoststring
mcp.policies.extAuthz.policies.requestRedirect.authority.portinteger
mcp.policies.extAuthz.policies.requestRedirect.pathobject
mcp.policies.extAuthz.policies.requestRedirect.path.fullstring
mcp.policies.extAuthz.policies.requestRedirect.path.prefixstring
mcp.policies.extAuthz.policies.requestRedirect.statusinteger
mcp.policies.extAuthz.policies.transformationsobjectModify requests and responses sent to and from the backend.
mcp.policies.extAuthz.policies.transformations.requestobject
mcp.policies.extAuthz.policies.transformations.request.addobject
mcp.policies.extAuthz.policies.transformations.request.setobject
mcp.policies.extAuthz.policies.transformations.request.remove[]string
mcp.policies.extAuthz.policies.transformations.request.bodystring
mcp.policies.extAuthz.policies.transformations.request.metadataobject
mcp.policies.extAuthz.policies.transformations.responseobject
mcp.policies.extAuthz.policies.transformations.response.addobject
mcp.policies.extAuthz.policies.transformations.response.setobject
mcp.policies.extAuthz.policies.transformations.response.remove[]string
mcp.policies.extAuthz.policies.transformations.response.bodystring
mcp.policies.extAuthz.policies.transformations.response.metadataobject
mcp.policies.extAuthz.policies.backendTLSobjectSend TLS to the backend.
mcp.policies.extAuthz.policies.backendTLS.certstring
mcp.policies.extAuthz.policies.backendTLS.keystring
mcp.policies.extAuthz.policies.backendTLS.rootstring
mcp.policies.extAuthz.policies.backendTLS.hostnamestring
mcp.policies.extAuthz.policies.backendTLS.insecureboolean
mcp.policies.extAuthz.policies.backendTLS.insecureHostboolean
mcp.policies.extAuthz.policies.backendTLS.alpn[]string
mcp.policies.extAuthz.policies.backendTLS.subjectAltNames[]string
mcp.policies.extAuthz.policies.backendAuthobjectAuthenticate to the backend.
mcp.policies.extAuthz.policies.backendAuth.passthroughobject
mcp.policies.extAuthz.policies.backendAuth.keyobject
mcp.policies.extAuthz.policies.backendAuth.key.filestring
mcp.policies.extAuthz.policies.backendAuth.gcpobject
mcp.policies.extAuthz.policies.backendAuth.gcp.typestring
mcp.policies.extAuthz.policies.backendAuth.gcp.audiencestringAudience for the token. If not set, the destination host will be used.
mcp.policies.extAuthz.policies.backendAuth.gcp.typestring
mcp.policies.extAuthz.policies.backendAuth.awsobject
mcp.policies.extAuthz.policies.backendAuth.aws.accessKeyIdstring
mcp.policies.extAuthz.policies.backendAuth.aws.secretAccessKeystring
mcp.policies.extAuthz.policies.backendAuth.aws.regionstring
mcp.policies.extAuthz.policies.backendAuth.aws.sessionTokenstring
mcp.policies.extAuthz.policies.backendAuth.azureobjectExactly one of explicitConfig, developerImplicit, or implicit may be set.
mcp.policies.extAuthz.policies.backendAuth.azure.explicitConfigobjectExactly one of clientSecret, managedIdentity, or workloadIdentity may be set.
mcp.policies.extAuthz.policies.backendAuth.azure.explicitConfig.clientSecretobject
mcp.policies.extAuthz.policies.backendAuth.azure.explicitConfig.clientSecret.tenant_idstring
mcp.policies.extAuthz.policies.backendAuth.azure.explicitConfig.clientSecret.client_idstring
mcp.policies.extAuthz.policies.backendAuth.azure.explicitConfig.clientSecret.client_secretstring
mcp.policies.extAuthz.policies.backendAuth.azure.explicitConfig.managedIdentityobject
mcp.policies.extAuthz.policies.backendAuth.azure.explicitConfig.managedIdentity.userAssignedIdentityobject
mcp.policies.extAuthz.policies.backendAuth.azure.explicitConfig.managedIdentity.userAssignedIdentity.clientIdstring
mcp.policies.extAuthz.policies.backendAuth.azure.explicitConfig.managedIdentity.userAssignedIdentity.objectIdstring
mcp.policies.extAuthz.policies.backendAuth.azure.explicitConfig.managedIdentity.userAssignedIdentity.resourceIdstring
mcp.policies.extAuthz.policies.backendAuth.azure.explicitConfig.workloadIdentityobject
mcp.policies.extAuthz.policies.backendAuth.azure.developerImplicitobject
mcp.policies.extAuthz.policies.backendAuth.azure.implicitobject
mcp.policies.extAuthz.policies.httpobjectSpecify HTTP settings for the backend
mcp.policies.extAuthz.policies.http.versionstring
mcp.policies.extAuthz.policies.http.requestTimeoutstring
mcp.policies.extAuthz.policies.tcpobjectSpecify TCP settings for the backend
mcp.policies.extAuthz.policies.tcp.keepalivesobject
mcp.policies.extAuthz.policies.tcp.keepalives.enabledboolean
mcp.policies.extAuthz.policies.tcp.keepalives.timestring
mcp.policies.extAuthz.policies.tcp.keepalives.intervalstring
mcp.policies.extAuthz.policies.tcp.keepalives.retriesinteger
mcp.policies.extAuthz.policies.tcp.connectTimeoutobject
mcp.policies.extAuthz.policies.tcp.connectTimeout.secsinteger
mcp.policies.extAuthz.policies.tcp.connectTimeout.nanosinteger
mcp.policies.extAuthz.policies.healthobjectHealth policy for backend outlier detection; evicts on unhealthy responses based on CEL condition and configurable duration.
mcp.policies.extAuthz.policies.health.unhealthyExpressionstringCEL expression; true means unhealthy (evict). E.g. response.code >= 500.
When unset, any 5xx or connection failure is treated as unhealthy.
mcp.policies.extAuthz.policies.health.evictionobjectLocal/config eviction sub-policy with duration as string; mirrors Eviction.
mcp.policies.extAuthz.policies.health.eviction.durationstring
mcp.policies.extAuthz.policies.health.eviction.restoreHealthnumber
mcp.policies.extAuthz.policies.health.eviction.consecutiveFailuresinteger
mcp.policies.extAuthz.policies.health.eviction.healthThresholdnumber
mcp.policies.extAuthz.policies.backendTunnelobjectSpecify a tunnel to use when connecting to the backend
mcp.policies.extAuthz.policies.backendTunnel.proxyobjectReference to the proxy address
Exactly one of service, host, or backend may be set.
mcp.policies.extAuthz.policies.backendTunnel.proxy.serviceobject
mcp.policies.extAuthz.policies.backendTunnel.proxy.service.nameobject
mcp.policies.extAuthz.policies.backendTunnel.proxy.service.name.namespacestring
mcp.policies.extAuthz.policies.backendTunnel.proxy.service.name.hostnamestring
mcp.policies.extAuthz.policies.backendTunnel.proxy.service.portinteger
mcp.policies.extAuthz.policies.backendTunnel.proxy.hoststringHostname or IP address
mcp.policies.extAuthz.policies.backendTunnel.proxy.backendstringExplicit backend reference. Backend must be defined in the top level backends list
mcp.policies.extAuthz.protocolobjectThe ext_authz protocol to use. Unless you need to integrate with an HTTP-only server, gRPC is recommended.
Exactly one of grpc or http may be set.
mcp.policies.extAuthz.protocol.grpcobject
mcp.policies.extAuthz.protocol.grpc.contextobjectAdditional context to send to the authorization service.
This maps to the context_extensions field of the request, and only allows static values.
mcp.policies.extAuthz.protocol.grpc.metadataobjectAdditional metadata to send to the authorization service.
This maps to the metadata_context.filter_metadata field of the request, and allows dynamic CEL expressions.
If unset, by default the envoy.filters.http.jwt_authn key is set if the JWT policy is used as well, for compatibility.
mcp.policies.extAuthz.protocol.httpobject
mcp.policies.extAuthz.protocol.http.pathstring
mcp.policies.extAuthz.protocol.http.redirectstringWhen using the HTTP protocol, and the server returns unauthorized, redirect to the URL resolved by
the provided expression rather than directly returning the error.
mcp.policies.extAuthz.protocol.http.includeResponseHeaders[]stringSpecific headers from the authorization response will be copied into the request to the backend.
mcp.policies.extAuthz.protocol.http.addRequestHeadersobjectSpecific headers to add in the authorization request (empty = all headers), based on the expression
mcp.policies.extAuthz.protocol.http.metadataobjectMetadata to include under the extauthz variable, based on the authorization response.
mcp.policies.extAuthz.failureModestringBehavior when the authorization service is unavailable or returns an error
mcp.policies.extAuthz.failureMode.denyWithStatusinteger
mcp.policies.extAuthz.includeRequestHeaders[]stringSpecific headers to include in the authorization request.
If unset, the gRPC protocol sends all request headers. The HTTP protocol sends only ‘Authorization’.
mcp.policies.extAuthz.includeRequestBodyobjectOptions for including the request body in the authorization request
mcp.policies.extAuthz.includeRequestBody.maxRequestBytesintegerMaximum size of request body to buffer (default: 8192)
mcp.policies.extAuthz.includeRequestBody.allowPartialMessagebooleanIf true, send partial body when max_request_bytes is reached
mcp.policies.extAuthz.includeRequestBody.packAsBytesbooleanIf true, pack body as raw bytes in gRPC
mcp.policies.extProcobjectExtend agentgateway with an external processor
mcp.policies.extProc.serviceobject
mcp.policies.extProc.service.nameobject
mcp.policies.extProc.service.name.namespacestring
mcp.policies.extProc.service.name.hostnamestring
mcp.policies.extProc.service.portinteger
mcp.policies.extProc.hoststringHostname or IP address
mcp.policies.extProc.backendstringExplicit backend reference. Backend must be defined in the top level backends list
mcp.policies.extProc.policiesobjectPolicies to connect to the backend
mcp.policies.extProc.policies.requestHeaderModifierobjectHeaders to be modified in the request.
mcp.policies.extProc.policies.requestHeaderModifier.addobject
mcp.policies.extProc.policies.requestHeaderModifier.setobject
mcp.policies.extProc.policies.requestHeaderModifier.remove[]string
mcp.policies.extProc.policies.responseHeaderModifierobjectHeaders to be modified in the response.
mcp.policies.extProc.policies.responseHeaderModifier.addobject
mcp.policies.extProc.policies.responseHeaderModifier.setobject
mcp.policies.extProc.policies.responseHeaderModifier.remove[]string
mcp.policies.extProc.policies.requestRedirectobjectDirectly respond to the request with a redirect.
mcp.policies.extProc.policies.requestRedirect.schemestring
mcp.policies.extProc.policies.requestRedirect.authoritystring
mcp.policies.extProc.policies.requestRedirect.authority.fullstring
mcp.policies.extProc.policies.requestRedirect.authority.hoststring
mcp.policies.extProc.policies.requestRedirect.authority.portinteger
mcp.policies.extProc.policies.requestRedirect.pathobject
mcp.policies.extProc.policies.requestRedirect.path.fullstring
mcp.policies.extProc.policies.requestRedirect.path.prefixstring
mcp.policies.extProc.policies.requestRedirect.statusinteger
mcp.policies.extProc.policies.transformationsobjectModify requests and responses sent to and from the backend.
mcp.policies.extProc.policies.transformations.requestobject
mcp.policies.extProc.policies.transformations.request.addobject
mcp.policies.extProc.policies.transformations.request.setobject
mcp.policies.extProc.policies.transformations.request.remove[]string
mcp.policies.extProc.policies.transformations.request.bodystring
mcp.policies.extProc.policies.transformations.request.metadataobject
mcp.policies.extProc.policies.transformations.responseobject
mcp.policies.extProc.policies.transformations.response.addobject
mcp.policies.extProc.policies.transformations.response.setobject
mcp.policies.extProc.policies.transformations.response.remove[]string
mcp.policies.extProc.policies.transformations.response.bodystring
mcp.policies.extProc.policies.transformations.response.metadataobject
mcp.policies.extProc.policies.backendTLSobjectSend TLS to the backend.
mcp.policies.extProc.policies.backendTLS.certstring
mcp.policies.extProc.policies.backendTLS.keystring
mcp.policies.extProc.policies.backendTLS.rootstring
mcp.policies.extProc.policies.backendTLS.hostnamestring
mcp.policies.extProc.policies.backendTLS.insecureboolean
mcp.policies.extProc.policies.backendTLS.insecureHostboolean
mcp.policies.extProc.policies.backendTLS.alpn[]string
mcp.policies.extProc.policies.backendTLS.subjectAltNames[]string
mcp.policies.extProc.policies.backendAuthobjectAuthenticate to the backend.
mcp.policies.extProc.policies.backendAuth.passthroughobject
mcp.policies.extProc.policies.backendAuth.keyobject
mcp.policies.extProc.policies.backendAuth.key.filestring
mcp.policies.extProc.policies.backendAuth.gcpobject
mcp.policies.extProc.policies.backendAuth.gcp.typestring
mcp.policies.extProc.policies.backendAuth.gcp.audiencestringAudience for the token. If not set, the destination host will be used.
mcp.policies.extProc.policies.backendAuth.gcp.typestring
mcp.policies.extProc.policies.backendAuth.awsobject
mcp.policies.extProc.policies.backendAuth.aws.accessKeyIdstring
mcp.policies.extProc.policies.backendAuth.aws.secretAccessKeystring
mcp.policies.extProc.policies.backendAuth.aws.regionstring
mcp.policies.extProc.policies.backendAuth.aws.sessionTokenstring
mcp.policies.extProc.policies.backendAuth.azureobjectExactly one of explicitConfig, developerImplicit, or implicit may be set.
mcp.policies.extProc.policies.backendAuth.azure.explicitConfigobjectExactly one of clientSecret, managedIdentity, or workloadIdentity may be set.
mcp.policies.extProc.policies.backendAuth.azure.explicitConfig.clientSecretobject
mcp.policies.extProc.policies.backendAuth.azure.explicitConfig.clientSecret.tenant_idstring
mcp.policies.extProc.policies.backendAuth.azure.explicitConfig.clientSecret.client_idstring
mcp.policies.extProc.policies.backendAuth.azure.explicitConfig.clientSecret.client_secretstring
mcp.policies.extProc.policies.backendAuth.azure.explicitConfig.managedIdentityobject
mcp.policies.extProc.policies.backendAuth.azure.explicitConfig.managedIdentity.userAssignedIdentityobject
mcp.policies.extProc.policies.backendAuth.azure.explicitConfig.managedIdentity.userAssignedIdentity.clientIdstring
mcp.policies.extProc.policies.backendAuth.azure.explicitConfig.managedIdentity.userAssignedIdentity.objectIdstring
mcp.policies.extProc.policies.backendAuth.azure.explicitConfig.managedIdentity.userAssignedIdentity.resourceIdstring
mcp.policies.extProc.policies.backendAuth.azure.explicitConfig.workloadIdentityobject
mcp.policies.extProc.policies.backendAuth.azure.developerImplicitobject
mcp.policies.extProc.policies.backendAuth.azure.implicitobject
mcp.policies.extProc.policies.httpobjectSpecify HTTP settings for the backend
mcp.policies.extProc.policies.http.versionstring
mcp.policies.extProc.policies.http.requestTimeoutstring
mcp.policies.extProc.policies.tcpobjectSpecify TCP settings for the backend
mcp.policies.extProc.policies.tcp.keepalivesobject
mcp.policies.extProc.policies.tcp.keepalives.enabledboolean
mcp.policies.extProc.policies.tcp.keepalives.timestring
mcp.policies.extProc.policies.tcp.keepalives.intervalstring
mcp.policies.extProc.policies.tcp.keepalives.retriesinteger
mcp.policies.extProc.policies.tcp.connectTimeoutobject
mcp.policies.extProc.policies.tcp.connectTimeout.secsinteger
mcp.policies.extProc.policies.tcp.connectTimeout.nanosinteger
mcp.policies.extProc.policies.healthobjectHealth policy for backend outlier detection; evicts on unhealthy responses based on CEL condition and configurable duration.
mcp.policies.extProc.policies.health.unhealthyExpressionstringCEL expression; true means unhealthy (evict). E.g. response.code >= 500.
When unset, any 5xx or connection failure is treated as unhealthy.
mcp.policies.extProc.policies.health.evictionobjectLocal/config eviction sub-policy with duration as string; mirrors Eviction.
mcp.policies.extProc.policies.health.eviction.durationstring
mcp.policies.extProc.policies.health.eviction.restoreHealthnumber
mcp.policies.extProc.policies.health.eviction.consecutiveFailuresinteger
mcp.policies.extProc.policies.health.eviction.healthThresholdnumber
mcp.policies.extProc.policies.backendTunnelobjectSpecify a tunnel to use when connecting to the backend
mcp.policies.extProc.policies.backendTunnel.proxyobjectReference to the proxy address
Exactly one of service, host, or backend may be set.
mcp.policies.extProc.policies.backendTunnel.proxy.serviceobject
mcp.policies.extProc.policies.backendTunnel.proxy.service.nameobject
mcp.policies.extProc.policies.backendTunnel.proxy.service.name.namespacestring
mcp.policies.extProc.policies.backendTunnel.proxy.service.name.hostnamestring
mcp.policies.extProc.policies.backendTunnel.proxy.service.portinteger
mcp.policies.extProc.policies.backendTunnel.proxy.hoststringHostname or IP address
mcp.policies.extProc.policies.backendTunnel.proxy.backendstringExplicit backend reference. Backend must be defined in the top level backends list
mcp.policies.extProc.failureModestringBehavior when the ext_proc service is unavailable or returns an error
mcp.policies.extProc.metadataContextobjectAdditional metadata to send to the external processing service.
Maps to the metadata_context.filter_metadata field in ProcessingRequest, and allows dynamic CEL expressions.
mcp.policies.extProc.requestAttributesobjectMaps to the request attributes field in ProcessingRequest, and allows dynamic CEL expressions.
mcp.policies.extProc.responseAttributesobjectMaps to the response attributes field in ProcessingRequest, and allows dynamic CEL expressions.
mcp.policies.transformationsobjectModify requests and responses
mcp.policies.transformations.requestobject
mcp.policies.transformations.request.addobject
mcp.policies.transformations.request.setobject
mcp.policies.transformations.request.remove[]string
mcp.policies.transformations.request.bodystring
mcp.policies.transformations.request.metadataobject
mcp.policies.transformations.responseobject
mcp.policies.transformations.response.addobject
mcp.policies.transformations.response.setobject
mcp.policies.transformations.response.remove[]string
mcp.policies.transformations.response.bodystring
mcp.policies.transformations.response.metadataobject
mcp.policies.csrfobjectHandle CSRF protection by validating request origins against configured allowed origins.
mcp.policies.csrf.additionalOrigins[]string
mcp.policies.timeoutobjectTimeout requests that exceed the configured duration.
mcp.policies.timeout.requestTimeoutstring
mcp.policies.timeout.backendRequestTimeoutstring
mcp.policies.retryobjectRetry matching requests.
mcp.policies.retry.attemptsinteger
mcp.policies.retry.backoffstring
mcp.policies.retry.codes[]integer
Agentgateway assistant

Ask me anything about agentgateway configuration, features, or usage.

Note: AI-generated content might contain errors; please verify and test all returned information.

Tip: one topic per conversation gives the best results. Use the + button in the chat header to start a new conversation.

Switching topics? Starting a new conversation improves accuracy.
↑↓ navigate select esc dismiss

What could be improved?

Your feedback helps us improve assistant answers and identify docs gaps we should fix.

Need more help? Join us on Discord: https://discord.gg/y9efgEmppm

Want to use your own agent? Add the Solo MCP server to query our docs directly. Get started here: https://search.solo.io/.