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 0.12.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.

FieldDescription
config
config.enableIpv6
config.localXdsPathLocal XDS path. If not specified, the current configuration file will be used.
config.caAddress
config.caAuthToken
config.xdsAddress
config.xdsAuthToken
config.namespace
config.gateway
config.trustDomain
config.serviceAccount
config.clusterId
config.network
config.adminAddrAdmin UI address in the format “ip:port”
config.statsAddrStats/metrics server address in the format “ip:port”
config.readinessAddrReadiness probe server address in the format “ip:port”
config.sessionConfiguration for stateful session management
config.session.keyThe signing key to be used. If not set, sessions will not be encrypted.
For example, generated via openssl rand -hex 32.
config.connectionTerminationDeadline
config.connectionMinTerminationDeadline
config.workerThreads
config.tracing
config.tracing.otlpEndpoint
config.tracing.headers
config.tracing.otlpProtocol
config.tracing.fields
config.tracing.fields.remove
config.tracing.fields.add
config.tracing.randomSamplingExpression 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.clientSamplingExpression 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.pathOTLP path. Default is /v1/traces
config.logging
config.logging.filter
config.logging.fields
config.logging.fields.remove
config.logging.fields.add
config.logging.level
config.logging.format
config.metrics
config.metrics.remove
config.metrics.fields
config.metrics.fields.add
config.backend
config.backend.keepalives
config.backend.keepalives.enabled
config.backend.keepalives.time
config.backend.keepalives.interval
config.backend.keepalives.retries
config.backend.connectTimeout
config.backend.poolIdleTimeoutThe maximum duration to keep an idle connection alive.
config.backend.poolMaxSizeThe 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.hbone
config.hbone.windowSize
config.hbone.connectionWindowSize
config.hbone.frameSize
config.hbone.poolMaxStreamsPerConn
config.hbone.poolUnusedReleaseTimeout
binds
binds[].port
binds[].listeners
binds[].listeners[].name
binds[].listeners[].namespace
binds[].listeners[].hostnameCan be a wildcard
binds[].listeners[].protocol
binds[].listeners[].tls
binds[].listeners[].tls.cert
binds[].listeners[].tls.key
binds[].listeners[].tls.root
binds[].listeners[].tls.cipherSuitesOptional cipher suite allowlist (order is preserved).
binds[].listeners[].tls.minTLSVersionMinimum supported TLS version (only TLS 1.2 and 1.3 are supported).
binds[].listeners[].tls.maxTLSVersionMaximum supported TLS version (only TLS 1.2 and 1.3 are supported).
binds[].listeners[].routes
binds[].listeners[].routes[].name
binds[].listeners[].routes[].namespace
binds[].listeners[].routes[].ruleName
binds[].listeners[].routes[].hostnamesCan be a wildcard
binds[].listeners[].routes[].matches
binds[].listeners[].routes[].matches[].headers
binds[].listeners[].routes[].matches[].headers[].name
binds[].listeners[].routes[].matches[].headers[].value
binds[].listeners[].routes[].matches[].headers[].value.(1)exact
binds[].listeners[].routes[].matches[].headers[].value.(1)regex
binds[].listeners[].routes[].matches[].path
binds[].listeners[].routes[].matches[].path.(1)exact
binds[].listeners[].routes[].matches[].path.(1)pathPrefix
binds[].listeners[].routes[].matches[].path.(1)regex
binds[].listeners[].routes[].matches[].method
binds[].listeners[].routes[].matches[].query
binds[].listeners[].routes[].matches[].query[].name
binds[].listeners[].routes[].matches[].query[].value
binds[].listeners[].routes[].matches[].query[].value.(1)exact
binds[].listeners[].routes[].matches[].query[].value.(1)regex
binds[].listeners[].routes[].policies
binds[].listeners[].routes[].policies.requestHeaderModifierHeaders to be modified in the request.
binds[].listeners[].routes[].policies.requestHeaderModifier.add
binds[].listeners[].routes[].policies.requestHeaderModifier.set
binds[].listeners[].routes[].policies.requestHeaderModifier.remove
binds[].listeners[].routes[].policies.responseHeaderModifierHeaders to be modified in the response.
binds[].listeners[].routes[].policies.responseHeaderModifier.add
binds[].listeners[].routes[].policies.responseHeaderModifier.set
binds[].listeners[].routes[].policies.responseHeaderModifier.remove
binds[].listeners[].routes[].policies.requestRedirectDirectly respond to the request with a redirect.
binds[].listeners[].routes[].policies.requestRedirect.scheme
binds[].listeners[].routes[].policies.requestRedirect.authority
binds[].listeners[].routes[].policies.requestRedirect.authority.(any)(1)full
binds[].listeners[].routes[].policies.requestRedirect.authority.(any)(1)host
binds[].listeners[].routes[].policies.requestRedirect.authority.(any)(1)port
binds[].listeners[].routes[].policies.requestRedirect.path
binds[].listeners[].routes[].policies.requestRedirect.path.(any)(1)full
binds[].listeners[].routes[].policies.requestRedirect.path.(any)(1)prefix
binds[].listeners[].routes[].policies.requestRedirect.status
binds[].listeners[].routes[].policies.urlRewriteModify the URL path or authority.
binds[].listeners[].routes[].policies.urlRewrite.authority
binds[].listeners[].routes[].policies.urlRewrite.authority.(any)(1)full
binds[].listeners[].routes[].policies.urlRewrite.authority.(any)(1)host
binds[].listeners[].routes[].policies.urlRewrite.authority.(any)(1)port
binds[].listeners[].routes[].policies.urlRewrite.path
binds[].listeners[].routes[].policies.urlRewrite.path.(any)(1)full
binds[].listeners[].routes[].policies.urlRewrite.path.(any)(1)prefix
binds[].listeners[].routes[].policies.requestMirrorMirror incoming requests to another destination.
binds[].listeners[].routes[].policies.requestMirror.backend
binds[].listeners[].routes[].policies.requestMirror.backend.(1)service
binds[].listeners[].routes[].policies.requestMirror.backend.(1)service.name
binds[].listeners[].routes[].policies.requestMirror.backend.(1)service.name.namespace
binds[].listeners[].routes[].policies.requestMirror.backend.(1)service.name.hostname
binds[].listeners[].routes[].policies.requestMirror.backend.(1)service.port
binds[].listeners[].routes[].policies.requestMirror.backend.(1)hostHostname or IP address
binds[].listeners[].routes[].policies.requestMirror.backend.(1)backendExplicit backend reference. Backend must be defined in the top level backends list
binds[].listeners[].routes[].policies.requestMirror.percentage
binds[].listeners[].routes[].policies.directResponseDirectly respond to the request with a static response.
binds[].listeners[].routes[].policies.directResponse.body
binds[].listeners[].routes[].policies.directResponse.status
binds[].listeners[].routes[].policies.corsHandle CORS preflight requests and append configured CORS headers to applicable requests.
binds[].listeners[].routes[].policies.cors.allowCredentials
binds[].listeners[].routes[].policies.cors.allowHeaders
binds[].listeners[].routes[].policies.cors.allowMethods
binds[].listeners[].routes[].policies.cors.allowOrigins
binds[].listeners[].routes[].policies.cors.exposeHeaders
binds[].listeners[].routes[].policies.cors.maxAge
binds[].listeners[].routes[].policies.mcpAuthorizationAuthorization policies for MCP access.
binds[].listeners[].routes[].policies.mcpAuthorization.rules
binds[].listeners[].routes[].policies.authorizationAuthorization policies for HTTP access.
binds[].listeners[].routes[].policies.authorization.rules
binds[].listeners[].routes[].policies.mcpAuthenticationAuthentication for MCP clients.
binds[].listeners[].routes[].policies.mcpAuthentication.issuer
binds[].listeners[].routes[].policies.mcpAuthentication.audiences
binds[].listeners[].routes[].policies.mcpAuthentication.provider
binds[].listeners[].routes[].policies.mcpAuthentication.provider.(any)(1)auth0
binds[].listeners[].routes[].policies.mcpAuthentication.provider.(any)(1)keycloak
binds[].listeners[].routes[].policies.mcpAuthentication.resourceMetadata
binds[].listeners[].routes[].policies.mcpAuthentication.jwks
binds[].listeners[].routes[].policies.mcpAuthentication.jwks.(any)file
binds[].listeners[].routes[].policies.mcpAuthentication.jwks.(any)url
binds[].listeners[].routes[].policies.mcpAuthentication.mode
binds[].listeners[].routes[].policies.a2aMark this traffic as A2A to enable A2A processing and telemetry.
binds[].listeners[].routes[].policies.aiMark this as LLM traffic to enable LLM processing.
binds[].listeners[].routes[].policies.ai.promptGuard
binds[].listeners[].routes[].policies.ai.promptGuard.request
binds[].listeners[].routes[].policies.ai.promptGuard.request[].(1)regex
binds[].listeners[].routes[].policies.ai.promptGuard.request[].(1)regex.action
binds[].listeners[].routes[].policies.ai.promptGuard.request[].(1)regex.rules
binds[].listeners[].routes[].policies.ai.promptGuard.request[].(1)regex.rules[].(any)builtin
binds[].listeners[].routes[].policies.ai.promptGuard.request[].(1)regex.rules[].(any)pattern
binds[].listeners[].routes[].policies.ai.promptGuard.request[].(1)webhook
binds[].listeners[].routes[].policies.ai.promptGuard.request[].(1)webhook.target
binds[].listeners[].routes[].policies.ai.promptGuard.request[].(1)webhook.target.(1)service
binds[].listeners[].routes[].policies.ai.promptGuard.request[].(1)webhook.target.(1)service.name
binds[].listeners[].routes[].policies.ai.promptGuard.request[].(1)webhook.target.(1)service.name.namespace
binds[].listeners[].routes[].policies.ai.promptGuard.request[].(1)webhook.target.(1)service.name.hostname
binds[].listeners[].routes[].policies.ai.promptGuard.request[].(1)webhook.target.(1)service.port
binds[].listeners[].routes[].policies.ai.promptGuard.request[].(1)webhook.target.(1)hostHostname or IP address
binds[].listeners[].routes[].policies.ai.promptGuard.request[].(1)webhook.target.(1)backendExplicit backend reference. Backend must be defined in the top level backends list
binds[].listeners[].routes[].policies.ai.promptGuard.request[].(1)webhook.forwardHeaderMatches
binds[].listeners[].routes[].policies.ai.promptGuard.request[].(1)webhook.forwardHeaderMatches[].name
binds[].listeners[].routes[].policies.ai.promptGuard.request[].(1)webhook.forwardHeaderMatches[].value
binds[].listeners[].routes[].policies.ai.promptGuard.request[].(1)webhook.forwardHeaderMatches[].value.(1)exact
binds[].listeners[].routes[].policies.ai.promptGuard.request[].(1)webhook.forwardHeaderMatches[].value.(1)regex
binds[].listeners[].routes[].policies.ai.promptGuard.request[].(1)openAIModeration
binds[].listeners[].routes[].policies.ai.promptGuard.request[].(1)openAIModeration.modelModel to use. Defaults to omni-moderation-latest
binds[].listeners[].routes[].policies.ai.promptGuard.request[].(1)openAIModeration.policies
binds[].listeners[].routes[].policies.ai.promptGuard.request[].(1)openAIModeration.policies.requestHeaderModifierHeaders to be modified in the request.
binds[].listeners[].routes[].policies.ai.promptGuard.request[].(1)openAIModeration.policies.requestHeaderModifier.add
binds[].listeners[].routes[].policies.ai.promptGuard.request[].(1)openAIModeration.policies.requestHeaderModifier.set
binds[].listeners[].routes[].policies.ai.promptGuard.request[].(1)openAIModeration.policies.requestHeaderModifier.remove
binds[].listeners[].routes[].policies.ai.promptGuard.request[].(1)openAIModeration.policies.responseHeaderModifierHeaders to be modified in the response.
binds[].listeners[].routes[].policies.ai.promptGuard.request[].(1)openAIModeration.policies.responseHeaderModifier.add
binds[].listeners[].routes[].policies.ai.promptGuard.request[].(1)openAIModeration.policies.responseHeaderModifier.set
binds[].listeners[].routes[].policies.ai.promptGuard.request[].(1)openAIModeration.policies.responseHeaderModifier.remove
binds[].listeners[].routes[].policies.ai.promptGuard.request[].(1)openAIModeration.policies.requestRedirectDirectly respond to the request with a redirect.
binds[].listeners[].routes[].policies.ai.promptGuard.request[].(1)openAIModeration.policies.requestRedirect.scheme
binds[].listeners[].routes[].policies.ai.promptGuard.request[].(1)openAIModeration.policies.requestRedirect.authority
binds[].listeners[].routes[].policies.ai.promptGuard.request[].(1)openAIModeration.policies.requestRedirect.authority.(any)(1)full
binds[].listeners[].routes[].policies.ai.promptGuard.request[].(1)openAIModeration.policies.requestRedirect.authority.(any)(1)host
binds[].listeners[].routes[].policies.ai.promptGuard.request[].(1)openAIModeration.policies.requestRedirect.authority.(any)(1)port
binds[].listeners[].routes[].policies.ai.promptGuard.request[].(1)openAIModeration.policies.requestRedirect.path
binds[].listeners[].routes[].policies.ai.promptGuard.request[].(1)openAIModeration.policies.requestRedirect.path.(any)(1)full
binds[].listeners[].routes[].policies.ai.promptGuard.request[].(1)openAIModeration.policies.requestRedirect.path.(any)(1)prefix
binds[].listeners[].routes[].policies.ai.promptGuard.request[].(1)openAIModeration.policies.requestRedirect.status
binds[].listeners[].routes[].policies.ai.promptGuard.request[].(1)openAIModeration.policies.mcpAuthorizationAuthorization policies for MCP access.
binds[].listeners[].routes[].policies.ai.promptGuard.request[].(1)openAIModeration.policies.mcpAuthorization.rules
binds[].listeners[].routes[].policies.ai.promptGuard.request[].(1)openAIModeration.policies.a2aMark this traffic as A2A to enable A2A processing and telemetry.
binds[].listeners[].routes[].policies.ai.promptGuard.request[].(1)openAIModeration.policies.aiMark this as LLM traffic to enable LLM processing.
binds[].listeners[].routes[].policies.ai.promptGuard.request[].(1)openAIModeration.policies.backendTLSSend TLS to the backend.
binds[].listeners[].routes[].policies.ai.promptGuard.request[].(1)openAIModeration.policies.backendTLS.cert
binds[].listeners[].routes[].policies.ai.promptGuard.request[].(1)openAIModeration.policies.backendTLS.key
binds[].listeners[].routes[].policies.ai.promptGuard.request[].(1)openAIModeration.policies.backendTLS.root
binds[].listeners[].routes[].policies.ai.promptGuard.request[].(1)openAIModeration.policies.backendTLS.hostname
binds[].listeners[].routes[].policies.ai.promptGuard.request[].(1)openAIModeration.policies.backendTLS.insecure
binds[].listeners[].routes[].policies.ai.promptGuard.request[].(1)openAIModeration.policies.backendTLS.insecureHost
binds[].listeners[].routes[].policies.ai.promptGuard.request[].(1)openAIModeration.policies.backendTLS.alpn
binds[].listeners[].routes[].policies.ai.promptGuard.request[].(1)openAIModeration.policies.backendTLS.subjectAltNames
binds[].listeners[].routes[].policies.ai.promptGuard.request[].(1)openAIModeration.policies.backendAuthAuthenticate to the backend.
binds[].listeners[].routes[].policies.ai.promptGuard.request[].(1)openAIModeration.policies.backendAuth.(any)(1)passthrough
binds[].listeners[].routes[].policies.ai.promptGuard.request[].(1)openAIModeration.policies.backendAuth.(any)(1)key
binds[].listeners[].routes[].policies.ai.promptGuard.request[].(1)openAIModeration.policies.backendAuth.(any)(1)key.(any)file
binds[].listeners[].routes[].policies.ai.promptGuard.request[].(1)openAIModeration.policies.backendAuth.(any)(1)gcp
binds[].listeners[].routes[].policies.ai.promptGuard.request[].(1)openAIModeration.policies.backendAuth.(any)(1)gcp.(any)type
binds[].listeners[].routes[].policies.ai.promptGuard.request[].(1)openAIModeration.policies.backendAuth.(any)(1)gcp.(any)audienceAudience for the token. If not set, the destination host will be used.
binds[].listeners[].routes[].policies.ai.promptGuard.request[].(1)openAIModeration.policies.backendAuth.(any)(1)gcp.(any)type
binds[].listeners[].routes[].policies.ai.promptGuard.request[].(1)openAIModeration.policies.backendAuth.(any)(1)aws
binds[].listeners[].routes[].policies.ai.promptGuard.request[].(1)openAIModeration.policies.backendAuth.(any)(1)aws.(any)accessKeyId
binds[].listeners[].routes[].policies.ai.promptGuard.request[].(1)openAIModeration.policies.backendAuth.(any)(1)aws.(any)secretAccessKey
binds[].listeners[].routes[].policies.ai.promptGuard.request[].(1)openAIModeration.policies.backendAuth.(any)(1)aws.(any)region
binds[].listeners[].routes[].policies.ai.promptGuard.request[].(1)openAIModeration.policies.backendAuth.(any)(1)aws.(any)sessionToken
binds[].listeners[].routes[].policies.ai.promptGuard.request[].(1)openAIModeration.policies.backendAuth.(any)(1)azure
binds[].listeners[].routes[].policies.ai.promptGuard.request[].(1)openAIModeration.policies.backendAuth.(any)(1)azure.(1)explicitConfig
binds[].listeners[].routes[].policies.ai.promptGuard.request[].(1)openAIModeration.policies.backendAuth.(any)(1)azure.(1)explicitConfig.(1)clientSecret
binds[].listeners[].routes[].policies.ai.promptGuard.request[].(1)openAIModeration.policies.backendAuth.(any)(1)azure.(1)explicitConfig.(1)clientSecret.tenant_id
binds[].listeners[].routes[].policies.ai.promptGuard.request[].(1)openAIModeration.policies.backendAuth.(any)(1)azure.(1)explicitConfig.(1)clientSecret.client_id
binds[].listeners[].routes[].policies.ai.promptGuard.request[].(1)openAIModeration.policies.backendAuth.(any)(1)azure.(1)explicitConfig.(1)clientSecret.client_secret
binds[].listeners[].routes[].policies.ai.promptGuard.request[].(1)openAIModeration.policies.backendAuth.(any)(1)azure.(1)explicitConfig.(1)managedIdentity
binds[].listeners[].routes[].policies.ai.promptGuard.request[].(1)openAIModeration.policies.backendAuth.(any)(1)azure.(1)explicitConfig.(1)managedIdentity.userAssignedIdentity
binds[].listeners[].routes[].policies.ai.promptGuard.request[].(1)openAIModeration.policies.backendAuth.(any)(1)azure.(1)explicitConfig.(1)managedIdentity.userAssignedIdentity.(any)(1)clientId
binds[].listeners[].routes[].policies.ai.promptGuard.request[].(1)openAIModeration.policies.backendAuth.(any)(1)azure.(1)explicitConfig.(1)managedIdentity.userAssignedIdentity.(any)(1)objectId
binds[].listeners[].routes[].policies.ai.promptGuard.request[].(1)openAIModeration.policies.backendAuth.(any)(1)azure.(1)explicitConfig.(1)managedIdentity.userAssignedIdentity.(any)(1)resourceId
binds[].listeners[].routes[].policies.ai.promptGuard.request[].(1)openAIModeration.policies.backendAuth.(any)(1)azure.(1)explicitConfig.(1)workloadIdentity
binds[].listeners[].routes[].policies.ai.promptGuard.request[].(1)openAIModeration.policies.backendAuth.(any)(1)azure.(1)developerImplicit
binds[].listeners[].routes[].policies.ai.promptGuard.request[].(1)openAIModeration.policies.httpSpecify HTTP settings for the backend
binds[].listeners[].routes[].policies.ai.promptGuard.request[].(1)openAIModeration.policies.http.version
binds[].listeners[].routes[].policies.ai.promptGuard.request[].(1)openAIModeration.policies.http.requestTimeout
binds[].listeners[].routes[].policies.ai.promptGuard.request[].(1)openAIModeration.policies.tcpSpecify TCP settings for the backend
binds[].listeners[].routes[].policies.ai.promptGuard.request[].(1)openAIModeration.policies.tcp.keepalives
binds[].listeners[].routes[].policies.ai.promptGuard.request[].(1)openAIModeration.policies.tcp.keepalives.enabled
binds[].listeners[].routes[].policies.ai.promptGuard.request[].(1)openAIModeration.policies.tcp.keepalives.time
binds[].listeners[].routes[].policies.ai.promptGuard.request[].(1)openAIModeration.policies.tcp.keepalives.interval
binds[].listeners[].routes[].policies.ai.promptGuard.request[].(1)openAIModeration.policies.tcp.keepalives.retries
binds[].listeners[].routes[].policies.ai.promptGuard.request[].(1)openAIModeration.policies.tcp.connectTimeout
binds[].listeners[].routes[].policies.ai.promptGuard.request[].(1)openAIModeration.policies.tcp.connectTimeout.secs
binds[].listeners[].routes[].policies.ai.promptGuard.request[].(1)openAIModeration.policies.tcp.connectTimeout.nanos
binds[].listeners[].routes[].policies.ai.promptGuard.request[].rejection
binds[].listeners[].routes[].policies.ai.promptGuard.request[].rejection.body
binds[].listeners[].routes[].policies.ai.promptGuard.request[].rejection.status
binds[].listeners[].routes[].policies.ai.promptGuard.request[].rejection.headersOptional headers to add, set, or remove from the rejection response
binds[].listeners[].routes[].policies.ai.promptGuard.request[].rejection.headers.add
binds[].listeners[].routes[].policies.ai.promptGuard.request[].rejection.headers.set
binds[].listeners[].routes[].policies.ai.promptGuard.request[].rejection.headers.remove
binds[].listeners[].routes[].policies.ai.promptGuard.response
binds[].listeners[].routes[].policies.ai.promptGuard.response[].(1)regex
binds[].listeners[].routes[].policies.ai.promptGuard.response[].(1)regex.action
binds[].listeners[].routes[].policies.ai.promptGuard.response[].(1)regex.rules
binds[].listeners[].routes[].policies.ai.promptGuard.response[].(1)regex.rules[].(any)builtin
binds[].listeners[].routes[].policies.ai.promptGuard.response[].(1)regex.rules[].(any)pattern
binds[].listeners[].routes[].policies.ai.promptGuard.response[].(1)webhook
binds[].listeners[].routes[].policies.ai.promptGuard.response[].(1)webhook.target
binds[].listeners[].routes[].policies.ai.promptGuard.response[].(1)webhook.target.(1)service
binds[].listeners[].routes[].policies.ai.promptGuard.response[].(1)webhook.target.(1)service.name
binds[].listeners[].routes[].policies.ai.promptGuard.response[].(1)webhook.target.(1)service.name.namespace
binds[].listeners[].routes[].policies.ai.promptGuard.response[].(1)webhook.target.(1)service.name.hostname
binds[].listeners[].routes[].policies.ai.promptGuard.response[].(1)webhook.target.(1)service.port
binds[].listeners[].routes[].policies.ai.promptGuard.response[].(1)webhook.target.(1)hostHostname or IP address
binds[].listeners[].routes[].policies.ai.promptGuard.response[].(1)webhook.target.(1)backendExplicit backend reference. Backend must be defined in the top level backends list
binds[].listeners[].routes[].policies.ai.promptGuard.response[].(1)webhook.forwardHeaderMatches
binds[].listeners[].routes[].policies.ai.promptGuard.response[].(1)webhook.forwardHeaderMatches[].name
binds[].listeners[].routes[].policies.ai.promptGuard.response[].(1)webhook.forwardHeaderMatches[].value
binds[].listeners[].routes[].policies.ai.promptGuard.response[].(1)webhook.forwardHeaderMatches[].value.(1)exact
binds[].listeners[].routes[].policies.ai.promptGuard.response[].(1)webhook.forwardHeaderMatches[].value.(1)regex
binds[].listeners[].routes[].policies.ai.promptGuard.response[].rejection
binds[].listeners[].routes[].policies.ai.promptGuard.response[].rejection.body
binds[].listeners[].routes[].policies.ai.promptGuard.response[].rejection.status
binds[].listeners[].routes[].policies.ai.promptGuard.response[].rejection.headersOptional headers to add, set, or remove from the rejection response
binds[].listeners[].routes[].policies.ai.promptGuard.response[].rejection.headers.add
binds[].listeners[].routes[].policies.ai.promptGuard.response[].rejection.headers.set
binds[].listeners[].routes[].policies.ai.promptGuard.response[].rejection.headers.remove
binds[].listeners[].routes[].policies.ai.defaults
binds[].listeners[].routes[].policies.ai.overrides
binds[].listeners[].routes[].policies.ai.prompts
binds[].listeners[].routes[].policies.ai.prompts.append
binds[].listeners[].routes[].policies.ai.prompts.append[].role
binds[].listeners[].routes[].policies.ai.prompts.append[].content
binds[].listeners[].routes[].policies.ai.prompts.prepend
binds[].listeners[].routes[].policies.ai.prompts.prepend[].role
binds[].listeners[].routes[].policies.ai.prompts.prepend[].content
binds[].listeners[].routes[].policies.ai.modelAliases
binds[].listeners[].routes[].policies.ai.promptCaching
binds[].listeners[].routes[].policies.ai.promptCaching.cacheSystem
binds[].listeners[].routes[].policies.ai.promptCaching.cacheMessages
binds[].listeners[].routes[].policies.ai.promptCaching.cacheTools
binds[].listeners[].routes[].policies.ai.promptCaching.minTokens
binds[].listeners[].routes[].policies.ai.routes
binds[].listeners[].routes[].policies.backendTLSSend TLS to the backend.
binds[].listeners[].routes[].policies.backendTLS.cert
binds[].listeners[].routes[].policies.backendTLS.key
binds[].listeners[].routes[].policies.backendTLS.root
binds[].listeners[].routes[].policies.backendTLS.hostname
binds[].listeners[].routes[].policies.backendTLS.insecure
binds[].listeners[].routes[].policies.backendTLS.insecureHost
binds[].listeners[].routes[].policies.backendTLS.alpn
binds[].listeners[].routes[].policies.backendTLS.subjectAltNames
binds[].listeners[].routes[].policies.backendAuthAuthenticate to the backend.
binds[].listeners[].routes[].policies.backendAuth.(any)(1)passthrough
binds[].listeners[].routes[].policies.backendAuth.(any)(1)key
binds[].listeners[].routes[].policies.backendAuth.(any)(1)key.(any)file
binds[].listeners[].routes[].policies.backendAuth.(any)(1)gcp
binds[].listeners[].routes[].policies.backendAuth.(any)(1)gcp.(any)type
binds[].listeners[].routes[].policies.backendAuth.(any)(1)gcp.(any)audienceAudience for the token. If not set, the destination host will be used.
binds[].listeners[].routes[].policies.backendAuth.(any)(1)gcp.(any)type
binds[].listeners[].routes[].policies.backendAuth.(any)(1)aws
binds[].listeners[].routes[].policies.backendAuth.(any)(1)aws.(any)accessKeyId
binds[].listeners[].routes[].policies.backendAuth.(any)(1)aws.(any)secretAccessKey
binds[].listeners[].routes[].policies.backendAuth.(any)(1)aws.(any)region
binds[].listeners[].routes[].policies.backendAuth.(any)(1)aws.(any)sessionToken
binds[].listeners[].routes[].policies.backendAuth.(any)(1)azure
binds[].listeners[].routes[].policies.backendAuth.(any)(1)azure.(1)explicitConfig
binds[].listeners[].routes[].policies.backendAuth.(any)(1)azure.(1)explicitConfig.(1)clientSecret
binds[].listeners[].routes[].policies.backendAuth.(any)(1)azure.(1)explicitConfig.(1)clientSecret.tenant_id
binds[].listeners[].routes[].policies.backendAuth.(any)(1)azure.(1)explicitConfig.(1)clientSecret.client_id
binds[].listeners[].routes[].policies.backendAuth.(any)(1)azure.(1)explicitConfig.(1)clientSecret.client_secret
binds[].listeners[].routes[].policies.backendAuth.(any)(1)azure.(1)explicitConfig.(1)managedIdentity
binds[].listeners[].routes[].policies.backendAuth.(any)(1)azure.(1)explicitConfig.(1)managedIdentity.userAssignedIdentity
binds[].listeners[].routes[].policies.backendAuth.(any)(1)azure.(1)explicitConfig.(1)managedIdentity.userAssignedIdentity.(any)(1)clientId
binds[].listeners[].routes[].policies.backendAuth.(any)(1)azure.(1)explicitConfig.(1)managedIdentity.userAssignedIdentity.(any)(1)objectId
binds[].listeners[].routes[].policies.backendAuth.(any)(1)azure.(1)explicitConfig.(1)managedIdentity.userAssignedIdentity.(any)(1)resourceId
binds[].listeners[].routes[].policies.backendAuth.(any)(1)azure.(1)explicitConfig.(1)workloadIdentity
binds[].listeners[].routes[].policies.backendAuth.(any)(1)azure.(1)developerImplicit
binds[].listeners[].routes[].policies.localRateLimitRate limit incoming requests. State is kept local.
binds[].listeners[].routes[].policies.localRateLimit[].maxTokens
binds[].listeners[].routes[].policies.localRateLimit[].tokensPerFill
binds[].listeners[].routes[].policies.localRateLimit[].fillInterval
binds[].listeners[].routes[].policies.localRateLimit[].type
binds[].listeners[].routes[].policies.remoteRateLimitRate limit incoming requests. State is managed by a remote server.
binds[].listeners[].routes[].policies.remoteRateLimit.(any)(1)service
binds[].listeners[].routes[].policies.remoteRateLimit.(any)(1)service.name
binds[].listeners[].routes[].policies.remoteRateLimit.(any)(1)service.name.namespace
binds[].listeners[].routes[].policies.remoteRateLimit.(any)(1)service.name.hostname
binds[].listeners[].routes[].policies.remoteRateLimit.(any)(1)service.port
binds[].listeners[].routes[].policies.remoteRateLimit.(any)(1)hostHostname or IP address
binds[].listeners[].routes[].policies.remoteRateLimit.(any)(1)backendExplicit backend reference. Backend must be defined in the top level backends list
binds[].listeners[].routes[].policies.remoteRateLimit.(any)domain
binds[].listeners[].routes[].policies.remoteRateLimit.(any)descriptors
binds[].listeners[].routes[].policies.remoteRateLimit.(any)descriptors[].entries
binds[].listeners[].routes[].policies.remoteRateLimit.(any)descriptors[].entries[].key
binds[].listeners[].routes[].policies.remoteRateLimit.(any)descriptors[].entries[].value
binds[].listeners[].routes[].policies.remoteRateLimit.(any)descriptors[].type
binds[].listeners[].routes[].policies.remoteRateLimit.(any)timeoutTimeout for the request
binds[].listeners[].routes[].policies.jwtAuthAuthenticate incoming JWT requests.
binds[].listeners[].routes[].policies.jwtAuth.(any)(any)mode
binds[].listeners[].routes[].policies.jwtAuth.(any)(any)providers
binds[].listeners[].routes[].policies.jwtAuth.(any)(any)providers[].issuer
binds[].listeners[].routes[].policies.jwtAuth.(any)(any)providers[].audiences
binds[].listeners[].routes[].policies.jwtAuth.(any)(any)providers[].jwks
binds[].listeners[].routes[].policies.jwtAuth.(any)(any)providers[].jwks.(any)file
binds[].listeners[].routes[].policies.jwtAuth.(any)(any)providers[].jwks.(any)url
binds[].listeners[].routes[].policies.jwtAuth.(any)(any)mode
binds[].listeners[].routes[].policies.jwtAuth.(any)(any)issuer
binds[].listeners[].routes[].policies.jwtAuth.(any)(any)audiences
binds[].listeners[].routes[].policies.jwtAuth.(any)(any)jwks
binds[].listeners[].routes[].policies.jwtAuth.(any)(any)jwks.(any)file
binds[].listeners[].routes[].policies.jwtAuth.(any)(any)jwks.(any)url
binds[].listeners[].routes[].policies.basicAuthAuthenticate incoming requests using Basic Authentication with htpasswd.
binds[].listeners[].routes[].policies.basicAuth.htpasswd.htpasswd file contents/reference
binds[].listeners[].routes[].policies.basicAuth.htpasswd.(any)file
binds[].listeners[].routes[].policies.basicAuth.realmRealm name for the WWW-Authenticate header
binds[].listeners[].routes[].policies.basicAuth.modeValidation mode for basic authentication
binds[].listeners[].routes[].policies.apiKeyAuthenticate incoming requests using API Keys
binds[].listeners[].routes[].policies.apiKey.keysList of API keys
binds[].listeners[].routes[].policies.apiKey.keys[].key
binds[].listeners[].routes[].policies.apiKey.keys[].metadata
binds[].listeners[].routes[].policies.apiKey.modeValidation mode for API keys
binds[].listeners[].routes[].policies.extAuthzAuthenticate incoming requests by calling an external authorization server.
binds[].listeners[].routes[].policies.extAuthz.(any)(1)service
binds[].listeners[].routes[].policies.extAuthz.(any)(1)service.name
binds[].listeners[].routes[].policies.extAuthz.(any)(1)service.name.namespace
binds[].listeners[].routes[].policies.extAuthz.(any)(1)service.name.hostname
binds[].listeners[].routes[].policies.extAuthz.(any)(1)service.port
binds[].listeners[].routes[].policies.extAuthz.(any)(1)hostHostname or IP address
binds[].listeners[].routes[].policies.extAuthz.(any)(1)backendExplicit backend reference. Backend must be defined in the top level backends list
binds[].listeners[].routes[].policies.extAuthz.(any)protocolThe ext_authz protocol to use. Unless you need to integrate with an HTTP-only server, gRPC is recommended.
binds[].listeners[].routes[].policies.extAuthz.(any)protocol.(1)grpc
binds[].listeners[].routes[].policies.extAuthz.(any)protocol.(1)grpc.contextAdditional 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.(any)protocol.(1)grpc.metadataAdditional 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.(any)protocol.(1)http
binds[].listeners[].routes[].policies.extAuthz.(any)protocol.(1)http.path
binds[].listeners[].routes[].policies.extAuthz.(any)protocol.(1)http.redirectWhen 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.(any)protocol.(1)http.includeResponseHeadersSpecific headers from the authorization response will be copied into the request to the backend.
binds[].listeners[].routes[].policies.extAuthz.(any)protocol.(1)http.addRequestHeadersSpecific headers to add in the authorization request (empty = all headers), based on the expression
binds[].listeners[].routes[].policies.extAuthz.(any)protocol.(1)http.metadataMetadata to include under the extauthz variable, based on the authorization response.
binds[].listeners[].routes[].policies.extAuthz.(any)failureModeBehavior when the authorization service is unavailable or returns an error
binds[].listeners[].routes[].policies.extAuthz.(any)failureMode.(1)denyWithStatus
binds[].listeners[].routes[].policies.extAuthz.(any)includeRequestHeadersSpecific 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.(any)includeRequestBodyOptions for including the request body in the authorization request
binds[].listeners[].routes[].policies.extAuthz.(any)includeRequestBody.maxRequestBytesMaximum size of request body to buffer (default: 8192)
binds[].listeners[].routes[].policies.extAuthz.(any)includeRequestBody.allowPartialMessageIf true, send partial body when max_request_bytes is reached
binds[].listeners[].routes[].policies.extAuthz.(any)includeRequestBody.packAsBytesIf true, pack body as raw bytes in gRPC
binds[].listeners[].routes[].policies.extAuthz.(any)timeoutTimeout for the authorization request (default: 200ms)
binds[].listeners[].routes[].policies.extProcExtend agentgateway with an external processor
binds[].listeners[].routes[].policies.extProc.(any)(1)service
binds[].listeners[].routes[].policies.extProc.(any)(1)service.name
binds[].listeners[].routes[].policies.extProc.(any)(1)service.name.namespace
binds[].listeners[].routes[].policies.extProc.(any)(1)service.name.hostname
binds[].listeners[].routes[].policies.extProc.(any)(1)service.port
binds[].listeners[].routes[].policies.extProc.(any)(1)hostHostname or IP address
binds[].listeners[].routes[].policies.extProc.(any)(1)backendExplicit backend reference. Backend must be defined in the top level backends list
binds[].listeners[].routes[].policies.extProc.(any)failureModeBehavior when the ext_proc service is unavailable or returns an error
binds[].listeners[].routes[].policies.extProc.(any)metadataContextAdditional 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.(any)requestAttributesMaps to the request attributes field in ProcessingRequest, and allows dynamic CEL expressions.
binds[].listeners[].routes[].policies.extProc.(any)responseAttributesMaps to the response attributes field in ProcessingRequest, and allows dynamic CEL expressions.
binds[].listeners[].routes[].policies.transformationsModify requests and responses
binds[].listeners[].routes[].policies.transformations.request
binds[].listeners[].routes[].policies.transformations.request.add
binds[].listeners[].routes[].policies.transformations.request.set
binds[].listeners[].routes[].policies.transformations.request.remove
binds[].listeners[].routes[].policies.transformations.request.body
binds[].listeners[].routes[].policies.transformations.response
binds[].listeners[].routes[].policies.transformations.response.add
binds[].listeners[].routes[].policies.transformations.response.set
binds[].listeners[].routes[].policies.transformations.response.remove
binds[].listeners[].routes[].policies.transformations.response.body
binds[].listeners[].routes[].policies.csrfHandle CSRF protection by validating request origins against configured allowed origins.
binds[].listeners[].routes[].policies.csrf.additionalOrigins
binds[].listeners[].routes[].policies.timeoutTimeout requests that exceed the configured duration.
binds[].listeners[].routes[].policies.timeout.requestTimeout
binds[].listeners[].routes[].policies.timeout.backendRequestTimeout
binds[].listeners[].routes[].policies.retryRetry matching requests.
binds[].listeners[].routes[].policies.retry.attempts
binds[].listeners[].routes[].policies.retry.backoff
binds[].listeners[].routes[].policies.retry.codes
binds[].listeners[].routes[].backends
binds[].listeners[].routes[].backends[].(1)service
binds[].listeners[].routes[].backends[].(1)service.name
binds[].listeners[].routes[].backends[].(1)service.name.namespace
binds[].listeners[].routes[].backends[].(1)service.name.hostname
binds[].listeners[].routes[].backends[].(1)service.port
binds[].listeners[].routes[].backends[].(1)host
binds[].listeners[].routes[].backends[].(1)dynamic
binds[].listeners[].routes[].backends[].(1)mcp
binds[].listeners[].routes[].backends[].(1)mcp.targets
binds[].listeners[].routes[].backends[].(1)mcp.targets[].(1)sse
binds[].listeners[].routes[].backends[].(1)mcp.targets[].(1)sse.host
binds[].listeners[].routes[].backends[].(1)mcp.targets[].(1)sse.port
binds[].listeners[].routes[].backends[].(1)mcp.targets[].(1)sse.path
binds[].listeners[].routes[].backends[].(1)mcp.targets[].(1)mcp
binds[].listeners[].routes[].backends[].(1)mcp.targets[].(1)mcp.host
binds[].listeners[].routes[].backends[].(1)mcp.targets[].(1)mcp.port
binds[].listeners[].routes[].backends[].(1)mcp.targets[].(1)mcp.path
binds[].listeners[].routes[].backends[].(1)mcp.targets[].(1)stdio
binds[].listeners[].routes[].backends[].(1)mcp.targets[].(1)stdio.cmd
binds[].listeners[].routes[].backends[].(1)mcp.targets[].(1)stdio.args
binds[].listeners[].routes[].backends[].(1)mcp.targets[].(1)stdio.env
binds[].listeners[].routes[].backends[].(1)mcp.targets[].(1)openapi
binds[].listeners[].routes[].backends[].(1)mcp.targets[].(1)openapi.host
binds[].listeners[].routes[].backends[].(1)mcp.targets[].(1)openapi.port
binds[].listeners[].routes[].backends[].(1)mcp.targets[].(1)openapi.path
binds[].listeners[].routes[].backends[].(1)mcp.targets[].(1)openapi.schema
binds[].listeners[].routes[].backends[].(1)mcp.targets[].name
binds[].listeners[].routes[].backends[].(1)mcp.targets[].policies
binds[].listeners[].routes[].backends[].(1)mcp.targets[].policies.requestHeaderModifierHeaders to be modified in the request.
binds[].listeners[].routes[].backends[].(1)mcp.targets[].policies.requestHeaderModifier.add
binds[].listeners[].routes[].backends[].(1)mcp.targets[].policies.requestHeaderModifier.set
binds[].listeners[].routes[].backends[].(1)mcp.targets[].policies.requestHeaderModifier.remove
binds[].listeners[].routes[].backends[].(1)mcp.targets[].policies.responseHeaderModifierHeaders to be modified in the response.
binds[].listeners[].routes[].backends[].(1)mcp.targets[].policies.responseHeaderModifier.add
binds[].listeners[].routes[].backends[].(1)mcp.targets[].policies.responseHeaderModifier.set
binds[].listeners[].routes[].backends[].(1)mcp.targets[].policies.responseHeaderModifier.remove
binds[].listeners[].routes[].backends[].(1)mcp.targets[].policies.requestRedirectDirectly respond to the request with a redirect.
binds[].listeners[].routes[].backends[].(1)mcp.targets[].policies.requestRedirect.scheme
binds[].listeners[].routes[].backends[].(1)mcp.targets[].policies.requestRedirect.authority
binds[].listeners[].routes[].backends[].(1)mcp.targets[].policies.requestRedirect.authority.(any)(1)full
binds[].listeners[].routes[].backends[].(1)mcp.targets[].policies.requestRedirect.authority.(any)(1)host
binds[].listeners[].routes[].backends[].(1)mcp.targets[].policies.requestRedirect.authority.(any)(1)port
binds[].listeners[].routes[].backends[].(1)mcp.targets[].policies.requestRedirect.path
binds[].listeners[].routes[].backends[].(1)mcp.targets[].policies.requestRedirect.path.(any)(1)full
binds[].listeners[].routes[].backends[].(1)mcp.targets[].policies.requestRedirect.path.(any)(1)prefix
binds[].listeners[].routes[].backends[].(1)mcp.targets[].policies.requestRedirect.status
binds[].listeners[].routes[].backends[].(1)mcp.targets[].policies.mcpAuthorizationAuthorization policies for MCP access.
binds[].listeners[].routes[].backends[].(1)mcp.targets[].policies.mcpAuthorization.rules
binds[].listeners[].routes[].backends[].(1)mcp.targets[].policies.a2aMark this traffic as A2A to enable A2A processing and telemetry.
binds[].listeners[].routes[].backends[].(1)mcp.targets[].policies.aiMark this as LLM traffic to enable LLM processing.
binds[].listeners[].routes[].backends[].(1)mcp.targets[].policies.ai.promptGuard
binds[].listeners[].routes[].backends[].(1)mcp.targets[].policies.ai.promptGuard.request
binds[].listeners[].routes[].backends[].(1)mcp.targets[].policies.ai.promptGuard.request[].(1)regex
binds[].listeners[].routes[].backends[].(1)mcp.targets[].policies.ai.promptGuard.request[].(1)regex.action
binds[].listeners[].routes[].backends[].(1)mcp.targets[].policies.ai.promptGuard.request[].(1)regex.rules
binds[].listeners[].routes[].backends[].(1)mcp.targets[].policies.ai.promptGuard.request[].(1)regex.rules[].(any)builtin
binds[].listeners[].routes[].backends[].(1)mcp.targets[].policies.ai.promptGuard.request[].(1)regex.rules[].(any)pattern
binds[].listeners[].routes[].backends[].(1)mcp.targets[].policies.ai.promptGuard.request[].(1)webhook
binds[].listeners[].routes[].backends[].(1)mcp.targets[].policies.ai.promptGuard.request[].(1)webhook.target
binds[].listeners[].routes[].backends[].(1)mcp.targets[].policies.ai.promptGuard.request[].(1)webhook.target.(1)service
binds[].listeners[].routes[].backends[].(1)mcp.targets[].policies.ai.promptGuard.request[].(1)webhook.target.(1)service.name
binds[].listeners[].routes[].backends[].(1)mcp.targets[].policies.ai.promptGuard.request[].(1)webhook.target.(1)service.name.namespace
binds[].listeners[].routes[].backends[].(1)mcp.targets[].policies.ai.promptGuard.request[].(1)webhook.target.(1)service.name.hostname
binds[].listeners[].routes[].backends[].(1)mcp.targets[].policies.ai.promptGuard.request[].(1)webhook.target.(1)service.port
binds[].listeners[].routes[].backends[].(1)mcp.targets[].policies.ai.promptGuard.request[].(1)webhook.target.(1)hostHostname or IP address
binds[].listeners[].routes[].backends[].(1)mcp.targets[].policies.ai.promptGuard.request[].(1)webhook.target.(1)backendExplicit backend reference. Backend must be defined in the top level backends list
binds[].listeners[].routes[].backends[].(1)mcp.targets[].policies.ai.promptGuard.request[].(1)webhook.forwardHeaderMatches
binds[].listeners[].routes[].backends[].(1)mcp.targets[].policies.ai.promptGuard.request[].(1)webhook.forwardHeaderMatches[].name
binds[].listeners[].routes[].backends[].(1)mcp.targets[].policies.ai.promptGuard.request[].(1)webhook.forwardHeaderMatches[].value
binds[].listeners[].routes[].backends[].(1)mcp.targets[].policies.ai.promptGuard.request[].(1)webhook.forwardHeaderMatches[].value.(1)exact
binds[].listeners[].routes[].backends[].(1)mcp.targets[].policies.ai.promptGuard.request[].(1)webhook.forwardHeaderMatches[].value.(1)regex
binds[].listeners[].routes[].backends[].(1)mcp.targets[].policies.ai.promptGuard.request[].(1)openAIModeration
binds[].listeners[].routes[].backends[].(1)mcp.targets[].policies.ai.promptGuard.request[].(1)openAIModeration.modelModel to use. Defaults to omni-moderation-latest
binds[].listeners[].routes[].backends[].(1)mcp.targets[].policies.ai.promptGuard.request[].(1)openAIModeration.policies
binds[].listeners[].routes[].backends[].(1)mcp.targets[].policies.ai.promptGuard.request[].rejection
binds[].listeners[].routes[].backends[].(1)mcp.targets[].policies.ai.promptGuard.request[].rejection.body
binds[].listeners[].routes[].backends[].(1)mcp.targets[].policies.ai.promptGuard.request[].rejection.status
binds[].listeners[].routes[].backends[].(1)mcp.targets[].policies.ai.promptGuard.request[].rejection.headersOptional headers to add, set, or remove from the rejection response
binds[].listeners[].routes[].backends[].(1)mcp.targets[].policies.ai.promptGuard.request[].rejection.headers.add
binds[].listeners[].routes[].backends[].(1)mcp.targets[].policies.ai.promptGuard.request[].rejection.headers.set
binds[].listeners[].routes[].backends[].(1)mcp.targets[].policies.ai.promptGuard.request[].rejection.headers.remove
binds[].listeners[].routes[].backends[].(1)mcp.targets[].policies.ai.promptGuard.response
binds[].listeners[].routes[].backends[].(1)mcp.targets[].policies.ai.promptGuard.response[].(1)regex
binds[].listeners[].routes[].backends[].(1)mcp.targets[].policies.ai.promptGuard.response[].(1)regex.action
binds[].listeners[].routes[].backends[].(1)mcp.targets[].policies.ai.promptGuard.response[].(1)regex.rules
binds[].listeners[].routes[].backends[].(1)mcp.targets[].policies.ai.promptGuard.response[].(1)regex.rules[].(any)builtin
binds[].listeners[].routes[].backends[].(1)mcp.targets[].policies.ai.promptGuard.response[].(1)regex.rules[].(any)pattern
binds[].listeners[].routes[].backends[].(1)mcp.targets[].policies.ai.promptGuard.response[].(1)webhook
binds[].listeners[].routes[].backends[].(1)mcp.targets[].policies.ai.promptGuard.response[].(1)webhook.target
binds[].listeners[].routes[].backends[].(1)mcp.targets[].policies.ai.promptGuard.response[].(1)webhook.target.(1)service
binds[].listeners[].routes[].backends[].(1)mcp.targets[].policies.ai.promptGuard.response[].(1)webhook.target.(1)service.name
binds[].listeners[].routes[].backends[].(1)mcp.targets[].policies.ai.promptGuard.response[].(1)webhook.target.(1)service.name.namespace
binds[].listeners[].routes[].backends[].(1)mcp.targets[].policies.ai.promptGuard.response[].(1)webhook.target.(1)service.name.hostname
binds[].listeners[].routes[].backends[].(1)mcp.targets[].policies.ai.promptGuard.response[].(1)webhook.target.(1)service.port
binds[].listeners[].routes[].backends[].(1)mcp.targets[].policies.ai.promptGuard.response[].(1)webhook.target.(1)hostHostname or IP address
binds[].listeners[].routes[].backends[].(1)mcp.targets[].policies.ai.promptGuard.response[].(1)webhook.target.(1)backendExplicit backend reference. Backend must be defined in the top level backends list
binds[].listeners[].routes[].backends[].(1)mcp.targets[].policies.ai.promptGuard.response[].(1)webhook.forwardHeaderMatches
binds[].listeners[].routes[].backends[].(1)mcp.targets[].policies.ai.promptGuard.response[].(1)webhook.forwardHeaderMatches[].name
binds[].listeners[].routes[].backends[].(1)mcp.targets[].policies.ai.promptGuard.response[].(1)webhook.forwardHeaderMatches[].value
binds[].listeners[].routes[].backends[].(1)mcp.targets[].policies.ai.promptGuard.response[].(1)webhook.forwardHeaderMatches[].value.(1)exact
binds[].listeners[].routes[].backends[].(1)mcp.targets[].policies.ai.promptGuard.response[].(1)webhook.forwardHeaderMatches[].value.(1)regex
binds[].listeners[].routes[].backends[].(1)mcp.targets[].policies.ai.promptGuard.response[].rejection
binds[].listeners[].routes[].backends[].(1)mcp.targets[].policies.ai.promptGuard.response[].rejection.body
binds[].listeners[].routes[].backends[].(1)mcp.targets[].policies.ai.promptGuard.response[].rejection.status
binds[].listeners[].routes[].backends[].(1)mcp.targets[].policies.ai.promptGuard.response[].rejection.headersOptional headers to add, set, or remove from the rejection response
binds[].listeners[].routes[].backends[].(1)mcp.targets[].policies.ai.promptGuard.response[].rejection.headers.add
binds[].listeners[].routes[].backends[].(1)mcp.targets[].policies.ai.promptGuard.response[].rejection.headers.set
binds[].listeners[].routes[].backends[].(1)mcp.targets[].policies.ai.promptGuard.response[].rejection.headers.remove
binds[].listeners[].routes[].backends[].(1)mcp.targets[].policies.ai.defaults
binds[].listeners[].routes[].backends[].(1)mcp.targets[].policies.ai.overrides
binds[].listeners[].routes[].backends[].(1)mcp.targets[].policies.ai.prompts
binds[].listeners[].routes[].backends[].(1)mcp.targets[].policies.ai.prompts.append
binds[].listeners[].routes[].backends[].(1)mcp.targets[].policies.ai.prompts.append[].role
binds[].listeners[].routes[].backends[].(1)mcp.targets[].policies.ai.prompts.append[].content
binds[].listeners[].routes[].backends[].(1)mcp.targets[].policies.ai.prompts.prepend
binds[].listeners[].routes[].backends[].(1)mcp.targets[].policies.ai.prompts.prepend[].role
binds[].listeners[].routes[].backends[].(1)mcp.targets[].policies.ai.prompts.prepend[].content
binds[].listeners[].routes[].backends[].(1)mcp.targets[].policies.ai.modelAliases
binds[].listeners[].routes[].backends[].(1)mcp.targets[].policies.ai.promptCaching
binds[].listeners[].routes[].backends[].(1)mcp.targets[].policies.ai.promptCaching.cacheSystem
binds[].listeners[].routes[].backends[].(1)mcp.targets[].policies.ai.promptCaching.cacheMessages
binds[].listeners[].routes[].backends[].(1)mcp.targets[].policies.ai.promptCaching.cacheTools
binds[].listeners[].routes[].backends[].(1)mcp.targets[].policies.ai.promptCaching.minTokens
binds[].listeners[].routes[].backends[].(1)mcp.targets[].policies.ai.routes
binds[].listeners[].routes[].backends[].(1)mcp.targets[].policies.backendTLSSend TLS to the backend.
binds[].listeners[].routes[].backends[].(1)mcp.targets[].policies.backendTLS.cert
binds[].listeners[].routes[].backends[].(1)mcp.targets[].policies.backendTLS.key
binds[].listeners[].routes[].backends[].(1)mcp.targets[].policies.backendTLS.root
binds[].listeners[].routes[].backends[].(1)mcp.targets[].policies.backendTLS.hostname
binds[].listeners[].routes[].backends[].(1)mcp.targets[].policies.backendTLS.insecure
binds[].listeners[].routes[].backends[].(1)mcp.targets[].policies.backendTLS.insecureHost
binds[].listeners[].routes[].backends[].(1)mcp.targets[].policies.backendTLS.alpn
binds[].listeners[].routes[].backends[].(1)mcp.targets[].policies.backendTLS.subjectAltNames
binds[].listeners[].routes[].backends[].(1)mcp.targets[].policies.backendAuthAuthenticate to the backend.
binds[].listeners[].routes[].backends[].(1)mcp.targets[].policies.backendAuth.(any)(1)passthrough
binds[].listeners[].routes[].backends[].(1)mcp.targets[].policies.backendAuth.(any)(1)key
binds[].listeners[].routes[].backends[].(1)mcp.targets[].policies.backendAuth.(any)(1)key.(any)file
binds[].listeners[].routes[].backends[].(1)mcp.targets[].policies.backendAuth.(any)(1)gcp
binds[].listeners[].routes[].backends[].(1)mcp.targets[].policies.backendAuth.(any)(1)gcp.(any)type
binds[].listeners[].routes[].backends[].(1)mcp.targets[].policies.backendAuth.(any)(1)gcp.(any)audienceAudience for the token. If not set, the destination host will be used.
binds[].listeners[].routes[].backends[].(1)mcp.targets[].policies.backendAuth.(any)(1)gcp.(any)type
binds[].listeners[].routes[].backends[].(1)mcp.targets[].policies.backendAuth.(any)(1)aws
binds[].listeners[].routes[].backends[].(1)mcp.targets[].policies.backendAuth.(any)(1)aws.(any)accessKeyId
binds[].listeners[].routes[].backends[].(1)mcp.targets[].policies.backendAuth.(any)(1)aws.(any)secretAccessKey
binds[].listeners[].routes[].backends[].(1)mcp.targets[].policies.backendAuth.(any)(1)aws.(any)region
binds[].listeners[].routes[].backends[].(1)mcp.targets[].policies.backendAuth.(any)(1)aws.(any)sessionToken
binds[].listeners[].routes[].backends[].(1)mcp.targets[].policies.backendAuth.(any)(1)azure
binds[].listeners[].routes[].backends[].(1)mcp.targets[].policies.backendAuth.(any)(1)azure.(1)explicitConfig
binds[].listeners[].routes[].backends[].(1)mcp.targets[].policies.backendAuth.(any)(1)azure.(1)explicitConfig.(1)clientSecret
binds[].listeners[].routes[].backends[].(1)mcp.targets[].policies.backendAuth.(any)(1)azure.(1)explicitConfig.(1)clientSecret.tenant_id
binds[].listeners[].routes[].backends[].(1)mcp.targets[].policies.backendAuth.(any)(1)azure.(1)explicitConfig.(1)clientSecret.client_id
binds[].listeners[].routes[].backends[].(1)mcp.targets[].policies.backendAuth.(any)(1)azure.(1)explicitConfig.(1)clientSecret.client_secret
binds[].listeners[].routes[].backends[].(1)mcp.targets[].policies.backendAuth.(any)(1)azure.(1)explicitConfig.(1)managedIdentity
binds[].listeners[].routes[].backends[].(1)mcp.targets[].policies.backendAuth.(any)(1)azure.(1)explicitConfig.(1)managedIdentity.userAssignedIdentity
binds[].listeners[].routes[].backends[].(1)mcp.targets[].policies.backendAuth.(any)(1)azure.(1)explicitConfig.(1)managedIdentity.userAssignedIdentity.(any)(1)clientId
binds[].listeners[].routes[].backends[].(1)mcp.targets[].policies.backendAuth.(any)(1)azure.(1)explicitConfig.(1)managedIdentity.userAssignedIdentity.(any)(1)objectId
binds[].listeners[].routes[].backends[].(1)mcp.targets[].policies.backendAuth.(any)(1)azure.(1)explicitConfig.(1)managedIdentity.userAssignedIdentity.(any)(1)resourceId
binds[].listeners[].routes[].backends[].(1)mcp.targets[].policies.backendAuth.(any)(1)azure.(1)explicitConfig.(1)workloadIdentity
binds[].listeners[].routes[].backends[].(1)mcp.targets[].policies.backendAuth.(any)(1)azure.(1)developerImplicit
binds[].listeners[].routes[].backends[].(1)mcp.targets[].policies.httpSpecify HTTP settings for the backend
binds[].listeners[].routes[].backends[].(1)mcp.targets[].policies.http.version
binds[].listeners[].routes[].backends[].(1)mcp.targets[].policies.http.requestTimeout
binds[].listeners[].routes[].backends[].(1)mcp.targets[].policies.tcpSpecify TCP settings for the backend
binds[].listeners[].routes[].backends[].(1)mcp.targets[].policies.tcp.keepalives
binds[].listeners[].routes[].backends[].(1)mcp.targets[].policies.tcp.keepalives.enabled
binds[].listeners[].routes[].backends[].(1)mcp.targets[].policies.tcp.keepalives.time
binds[].listeners[].routes[].backends[].(1)mcp.targets[].policies.tcp.keepalives.interval
binds[].listeners[].routes[].backends[].(1)mcp.targets[].policies.tcp.keepalives.retries
binds[].listeners[].routes[].backends[].(1)mcp.targets[].policies.tcp.connectTimeout
binds[].listeners[].routes[].backends[].(1)mcp.targets[].policies.tcp.connectTimeout.secs
binds[].listeners[].routes[].backends[].(1)mcp.targets[].policies.tcp.connectTimeout.nanos
binds[].listeners[].routes[].backends[].(1)mcp.statefulMode
binds[].listeners[].routes[].backends[].(1)mcp.prefixMode
binds[].listeners[].routes[].backends[].(1)ai
binds[].listeners[].routes[].backends[].(1)ai.(any)name
binds[].listeners[].routes[].backends[].(1)ai.(any)provider
binds[].listeners[].routes[].backends[].(1)ai.(any)provider.(1)openAI
binds[].listeners[].routes[].backends[].(1)ai.(any)provider.(1)openAI.model
binds[].listeners[].routes[].backends[].(1)ai.(any)provider.(1)gemini
binds[].listeners[].routes[].backends[].(1)ai.(any)provider.(1)gemini.model
binds[].listeners[].routes[].backends[].(1)ai.(any)provider.(1)vertex
binds[].listeners[].routes[].backends[].(1)ai.(any)provider.(1)vertex.model
binds[].listeners[].routes[].backends[].(1)ai.(any)provider.(1)vertex.region
binds[].listeners[].routes[].backends[].(1)ai.(any)provider.(1)vertex.projectId
binds[].listeners[].routes[].backends[].(1)ai.(any)provider.(1)anthropic
binds[].listeners[].routes[].backends[].(1)ai.(any)provider.(1)anthropic.model
binds[].listeners[].routes[].backends[].(1)ai.(any)provider.(1)bedrock
binds[].listeners[].routes[].backends[].(1)ai.(any)provider.(1)bedrock.model
binds[].listeners[].routes[].backends[].(1)ai.(any)provider.(1)bedrock.region
binds[].listeners[].routes[].backends[].(1)ai.(any)provider.(1)bedrock.guardrailIdentifier
binds[].listeners[].routes[].backends[].(1)ai.(any)provider.(1)bedrock.guardrailVersion
binds[].listeners[].routes[].backends[].(1)ai.(any)provider.(1)azureOpenAI
binds[].listeners[].routes[].backends[].(1)ai.(any)provider.(1)azureOpenAI.model
binds[].listeners[].routes[].backends[].(1)ai.(any)provider.(1)azureOpenAI.host
binds[].listeners[].routes[].backends[].(1)ai.(any)provider.(1)azureOpenAI.apiVersion
binds[].listeners[].routes[].backends[].(1)ai.(any)hostOverride
binds[].listeners[].routes[].backends[].(1)ai.(any)pathOverride
binds[].listeners[].routes[].backends[].(1)ai.(any)tokenizeWhether 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[].(1)ai.(any)policies
binds[].listeners[].routes[].backends[].(1)ai.(any)policies.requestHeaderModifierHeaders to be modified in the request.
binds[].listeners[].routes[].backends[].(1)ai.(any)policies.requestHeaderModifier.add
binds[].listeners[].routes[].backends[].(1)ai.(any)policies.requestHeaderModifier.set
binds[].listeners[].routes[].backends[].(1)ai.(any)policies.requestHeaderModifier.remove
binds[].listeners[].routes[].backends[].(1)ai.(any)policies.responseHeaderModifierHeaders to be modified in the response.
binds[].listeners[].routes[].backends[].(1)ai.(any)policies.responseHeaderModifier.add
binds[].listeners[].routes[].backends[].(1)ai.(any)policies.responseHeaderModifier.set
binds[].listeners[].routes[].backends[].(1)ai.(any)policies.responseHeaderModifier.remove
binds[].listeners[].routes[].backends[].(1)ai.(any)policies.requestRedirectDirectly respond to the request with a redirect.
binds[].listeners[].routes[].backends[].(1)ai.(any)policies.requestRedirect.scheme
binds[].listeners[].routes[].backends[].(1)ai.(any)policies.requestRedirect.authority
binds[].listeners[].routes[].backends[].(1)ai.(any)policies.requestRedirect.authority.(any)(1)full
binds[].listeners[].routes[].backends[].(1)ai.(any)policies.requestRedirect.authority.(any)(1)host
binds[].listeners[].routes[].backends[].(1)ai.(any)policies.requestRedirect.authority.(any)(1)port
binds[].listeners[].routes[].backends[].(1)ai.(any)policies.requestRedirect.path
binds[].listeners[].routes[].backends[].(1)ai.(any)policies.requestRedirect.path.(any)(1)full
binds[].listeners[].routes[].backends[].(1)ai.(any)policies.requestRedirect.path.(any)(1)prefix
binds[].listeners[].routes[].backends[].(1)ai.(any)policies.requestRedirect.status
binds[].listeners[].routes[].backends[].(1)ai.(any)policies.mcpAuthorizationAuthorization policies for MCP access.
binds[].listeners[].routes[].backends[].(1)ai.(any)policies.mcpAuthorization.rules
binds[].listeners[].routes[].backends[].(1)ai.(any)policies.a2aMark this traffic as A2A to enable A2A processing and telemetry.
binds[].listeners[].routes[].backends[].(1)ai.(any)policies.aiMark this as LLM traffic to enable LLM processing.
binds[].listeners[].routes[].backends[].(1)ai.(any)policies.ai.promptGuard
binds[].listeners[].routes[].backends[].(1)ai.(any)policies.ai.promptGuard.request
binds[].listeners[].routes[].backends[].(1)ai.(any)policies.ai.promptGuard.request[].(1)regex
binds[].listeners[].routes[].backends[].(1)ai.(any)policies.ai.promptGuard.request[].(1)regex.action
binds[].listeners[].routes[].backends[].(1)ai.(any)policies.ai.promptGuard.request[].(1)regex.rules
binds[].listeners[].routes[].backends[].(1)ai.(any)policies.ai.promptGuard.request[].(1)regex.rules[].(any)builtin
binds[].listeners[].routes[].backends[].(1)ai.(any)policies.ai.promptGuard.request[].(1)regex.rules[].(any)pattern
binds[].listeners[].routes[].backends[].(1)ai.(any)policies.ai.promptGuard.request[].(1)webhook
binds[].listeners[].routes[].backends[].(1)ai.(any)policies.ai.promptGuard.request[].(1)webhook.target
binds[].listeners[].routes[].backends[].(1)ai.(any)policies.ai.promptGuard.request[].(1)webhook.target.(1)service
binds[].listeners[].routes[].backends[].(1)ai.(any)policies.ai.promptGuard.request[].(1)webhook.target.(1)service.name
binds[].listeners[].routes[].backends[].(1)ai.(any)policies.ai.promptGuard.request[].(1)webhook.target.(1)service.name.namespace
binds[].listeners[].routes[].backends[].(1)ai.(any)policies.ai.promptGuard.request[].(1)webhook.target.(1)service.name.hostname
binds[].listeners[].routes[].backends[].(1)ai.(any)policies.ai.promptGuard.request[].(1)webhook.target.(1)service.port
binds[].listeners[].routes[].backends[].(1)ai.(any)policies.ai.promptGuard.request[].(1)webhook.target.(1)hostHostname or IP address
binds[].listeners[].routes[].backends[].(1)ai.(any)policies.ai.promptGuard.request[].(1)webhook.target.(1)backendExplicit backend reference. Backend must be defined in the top level backends list
binds[].listeners[].routes[].backends[].(1)ai.(any)policies.ai.promptGuard.request[].(1)webhook.forwardHeaderMatches
binds[].listeners[].routes[].backends[].(1)ai.(any)policies.ai.promptGuard.request[].(1)webhook.forwardHeaderMatches[].name
binds[].listeners[].routes[].backends[].(1)ai.(any)policies.ai.promptGuard.request[].(1)webhook.forwardHeaderMatches[].value
binds[].listeners[].routes[].backends[].(1)ai.(any)policies.ai.promptGuard.request[].(1)webhook.forwardHeaderMatches[].value.(1)exact
binds[].listeners[].routes[].backends[].(1)ai.(any)policies.ai.promptGuard.request[].(1)webhook.forwardHeaderMatches[].value.(1)regex
binds[].listeners[].routes[].backends[].(1)ai.(any)policies.ai.promptGuard.request[].(1)openAIModeration
binds[].listeners[].routes[].backends[].(1)ai.(any)policies.ai.promptGuard.request[].(1)openAIModeration.modelModel to use. Defaults to omni-moderation-latest
binds[].listeners[].routes[].backends[].(1)ai.(any)policies.ai.promptGuard.request[].(1)openAIModeration.policies
binds[].listeners[].routes[].backends[].(1)ai.(any)policies.ai.promptGuard.request[].rejection
binds[].listeners[].routes[].backends[].(1)ai.(any)policies.ai.promptGuard.request[].rejection.body
binds[].listeners[].routes[].backends[].(1)ai.(any)policies.ai.promptGuard.request[].rejection.status
binds[].listeners[].routes[].backends[].(1)ai.(any)policies.ai.promptGuard.request[].rejection.headersOptional headers to add, set, or remove from the rejection response
binds[].listeners[].routes[].backends[].(1)ai.(any)policies.ai.promptGuard.request[].rejection.headers.add
binds[].listeners[].routes[].backends[].(1)ai.(any)policies.ai.promptGuard.request[].rejection.headers.set
binds[].listeners[].routes[].backends[].(1)ai.(any)policies.ai.promptGuard.request[].rejection.headers.remove
binds[].listeners[].routes[].backends[].(1)ai.(any)policies.ai.promptGuard.response
binds[].listeners[].routes[].backends[].(1)ai.(any)policies.ai.promptGuard.response[].(1)regex
binds[].listeners[].routes[].backends[].(1)ai.(any)policies.ai.promptGuard.response[].(1)regex.action
binds[].listeners[].routes[].backends[].(1)ai.(any)policies.ai.promptGuard.response[].(1)regex.rules
binds[].listeners[].routes[].backends[].(1)ai.(any)policies.ai.promptGuard.response[].(1)regex.rules[].(any)builtin
binds[].listeners[].routes[].backends[].(1)ai.(any)policies.ai.promptGuard.response[].(1)regex.rules[].(any)pattern
binds[].listeners[].routes[].backends[].(1)ai.(any)policies.ai.promptGuard.response[].(1)webhook
binds[].listeners[].routes[].backends[].(1)ai.(any)policies.ai.promptGuard.response[].(1)webhook.target
binds[].listeners[].routes[].backends[].(1)ai.(any)policies.ai.promptGuard.response[].(1)webhook.target.(1)service
binds[].listeners[].routes[].backends[].(1)ai.(any)policies.ai.promptGuard.response[].(1)webhook.target.(1)service.name
binds[].listeners[].routes[].backends[].(1)ai.(any)policies.ai.promptGuard.response[].(1)webhook.target.(1)service.name.namespace
binds[].listeners[].routes[].backends[].(1)ai.(any)policies.ai.promptGuard.response[].(1)webhook.target.(1)service.name.hostname
binds[].listeners[].routes[].backends[].(1)ai.(any)policies.ai.promptGuard.response[].(1)webhook.target.(1)service.port
binds[].listeners[].routes[].backends[].(1)ai.(any)policies.ai.promptGuard.response[].(1)webhook.target.(1)hostHostname or IP address
binds[].listeners[].routes[].backends[].(1)ai.(any)policies.ai.promptGuard.response[].(1)webhook.target.(1)backendExplicit backend reference. Backend must be defined in the top level backends list
binds[].listeners[].routes[].backends[].(1)ai.(any)policies.ai.promptGuard.response[].(1)webhook.forwardHeaderMatches
binds[].listeners[].routes[].backends[].(1)ai.(any)policies.ai.promptGuard.response[].(1)webhook.forwardHeaderMatches[].name
binds[].listeners[].routes[].backends[].(1)ai.(any)policies.ai.promptGuard.response[].(1)webhook.forwardHeaderMatches[].value
binds[].listeners[].routes[].backends[].(1)ai.(any)policies.ai.promptGuard.response[].(1)webhook.forwardHeaderMatches[].value.(1)exact
binds[].listeners[].routes[].backends[].(1)ai.(any)policies.ai.promptGuard.response[].(1)webhook.forwardHeaderMatches[].value.(1)regex
binds[].listeners[].routes[].backends[].(1)ai.(any)policies.ai.promptGuard.response[].rejection
binds[].listeners[].routes[].backends[].(1)ai.(any)policies.ai.promptGuard.response[].rejection.body
binds[].listeners[].routes[].backends[].(1)ai.(any)policies.ai.promptGuard.response[].rejection.status
binds[].listeners[].routes[].backends[].(1)ai.(any)policies.ai.promptGuard.response[].rejection.headersOptional headers to add, set, or remove from the rejection response
binds[].listeners[].routes[].backends[].(1)ai.(any)policies.ai.promptGuard.response[].rejection.headers.add
binds[].listeners[].routes[].backends[].(1)ai.(any)policies.ai.promptGuard.response[].rejection.headers.set
binds[].listeners[].routes[].backends[].(1)ai.(any)policies.ai.promptGuard.response[].rejection.headers.remove
binds[].listeners[].routes[].backends[].(1)ai.(any)policies.ai.defaults
binds[].listeners[].routes[].backends[].(1)ai.(any)policies.ai.overrides
binds[].listeners[].routes[].backends[].(1)ai.(any)policies.ai.prompts
binds[].listeners[].routes[].backends[].(1)ai.(any)policies.ai.prompts.append
binds[].listeners[].routes[].backends[].(1)ai.(any)policies.ai.prompts.append[].role
binds[].listeners[].routes[].backends[].(1)ai.(any)policies.ai.prompts.append[].content
binds[].listeners[].routes[].backends[].(1)ai.(any)policies.ai.prompts.prepend
binds[].listeners[].routes[].backends[].(1)ai.(any)policies.ai.prompts.prepend[].role
binds[].listeners[].routes[].backends[].(1)ai.(any)policies.ai.prompts.prepend[].content
binds[].listeners[].routes[].backends[].(1)ai.(any)policies.ai.modelAliases
binds[].listeners[].routes[].backends[].(1)ai.(any)policies.ai.promptCaching
binds[].listeners[].routes[].backends[].(1)ai.(any)policies.ai.promptCaching.cacheSystem
binds[].listeners[].routes[].backends[].(1)ai.(any)policies.ai.promptCaching.cacheMessages
binds[].listeners[].routes[].backends[].(1)ai.(any)policies.ai.promptCaching.cacheTools
binds[].listeners[].routes[].backends[].(1)ai.(any)policies.ai.promptCaching.minTokens
binds[].listeners[].routes[].backends[].(1)ai.(any)policies.ai.routes
binds[].listeners[].routes[].backends[].(1)ai.(any)policies.backendTLSSend TLS to the backend.
binds[].listeners[].routes[].backends[].(1)ai.(any)policies.backendTLS.cert
binds[].listeners[].routes[].backends[].(1)ai.(any)policies.backendTLS.key
binds[].listeners[].routes[].backends[].(1)ai.(any)policies.backendTLS.root
binds[].listeners[].routes[].backends[].(1)ai.(any)policies.backendTLS.hostname
binds[].listeners[].routes[].backends[].(1)ai.(any)policies.backendTLS.insecure
binds[].listeners[].routes[].backends[].(1)ai.(any)policies.backendTLS.insecureHost
binds[].listeners[].routes[].backends[].(1)ai.(any)policies.backendTLS.alpn
binds[].listeners[].routes[].backends[].(1)ai.(any)policies.backendTLS.subjectAltNames
binds[].listeners[].routes[].backends[].(1)ai.(any)policies.backendAuthAuthenticate to the backend.
binds[].listeners[].routes[].backends[].(1)ai.(any)policies.backendAuth.(any)(1)passthrough
binds[].listeners[].routes[].backends[].(1)ai.(any)policies.backendAuth.(any)(1)key
binds[].listeners[].routes[].backends[].(1)ai.(any)policies.backendAuth.(any)(1)key.(any)file
binds[].listeners[].routes[].backends[].(1)ai.(any)policies.backendAuth.(any)(1)gcp
binds[].listeners[].routes[].backends[].(1)ai.(any)policies.backendAuth.(any)(1)gcp.(any)type
binds[].listeners[].routes[].backends[].(1)ai.(any)policies.backendAuth.(any)(1)gcp.(any)audienceAudience for the token. If not set, the destination host will be used.
binds[].listeners[].routes[].backends[].(1)ai.(any)policies.backendAuth.(any)(1)gcp.(any)type
binds[].listeners[].routes[].backends[].(1)ai.(any)policies.backendAuth.(any)(1)aws
binds[].listeners[].routes[].backends[].(1)ai.(any)policies.backendAuth.(any)(1)aws.(any)accessKeyId
binds[].listeners[].routes[].backends[].(1)ai.(any)policies.backendAuth.(any)(1)aws.(any)secretAccessKey
binds[].listeners[].routes[].backends[].(1)ai.(any)policies.backendAuth.(any)(1)aws.(any)region
binds[].listeners[].routes[].backends[].(1)ai.(any)policies.backendAuth.(any)(1)aws.(any)sessionToken
binds[].listeners[].routes[].backends[].(1)ai.(any)policies.backendAuth.(any)(1)azure
binds[].listeners[].routes[].backends[].(1)ai.(any)policies.backendAuth.(any)(1)azure.(1)explicitConfig
binds[].listeners[].routes[].backends[].(1)ai.(any)policies.backendAuth.(any)(1)azure.(1)explicitConfig.(1)clientSecret
binds[].listeners[].routes[].backends[].(1)ai.(any)policies.backendAuth.(any)(1)azure.(1)explicitConfig.(1)clientSecret.tenant_id
binds[].listeners[].routes[].backends[].(1)ai.(any)policies.backendAuth.(any)(1)azure.(1)explicitConfig.(1)clientSecret.client_id
binds[].listeners[].routes[].backends[].(1)ai.(any)policies.backendAuth.(any)(1)azure.(1)explicitConfig.(1)clientSecret.client_secret
binds[].listeners[].routes[].backends[].(1)ai.(any)policies.backendAuth.(any)(1)azure.(1)explicitConfig.(1)managedIdentity
binds[].listeners[].routes[].backends[].(1)ai.(any)policies.backendAuth.(any)(1)azure.(1)explicitConfig.(1)managedIdentity.userAssignedIdentity
binds[].listeners[].routes[].backends[].(1)ai.(any)policies.backendAuth.(any)(1)azure.(1)explicitConfig.(1)managedIdentity.userAssignedIdentity.(any)(1)clientId
binds[].listeners[].routes[].backends[].(1)ai.(any)policies.backendAuth.(any)(1)azure.(1)explicitConfig.(1)managedIdentity.userAssignedIdentity.(any)(1)objectId
binds[].listeners[].routes[].backends[].(1)ai.(any)policies.backendAuth.(any)(1)azure.(1)explicitConfig.(1)managedIdentity.userAssignedIdentity.(any)(1)resourceId
binds[].listeners[].routes[].backends[].(1)ai.(any)policies.backendAuth.(any)(1)azure.(1)explicitConfig.(1)workloadIdentity
binds[].listeners[].routes[].backends[].(1)ai.(any)policies.backendAuth.(any)(1)azure.(1)developerImplicit
binds[].listeners[].routes[].backends[].(1)ai.(any)policies.httpSpecify HTTP settings for the backend
binds[].listeners[].routes[].backends[].(1)ai.(any)policies.http.version
binds[].listeners[].routes[].backends[].(1)ai.(any)policies.http.requestTimeout
binds[].listeners[].routes[].backends[].(1)ai.(any)policies.tcpSpecify TCP settings for the backend
binds[].listeners[].routes[].backends[].(1)ai.(any)policies.tcp.keepalives
binds[].listeners[].routes[].backends[].(1)ai.(any)policies.tcp.keepalives.enabled
binds[].listeners[].routes[].backends[].(1)ai.(any)policies.tcp.keepalives.time
binds[].listeners[].routes[].backends[].(1)ai.(any)policies.tcp.keepalives.interval
binds[].listeners[].routes[].backends[].(1)ai.(any)policies.tcp.keepalives.retries
binds[].listeners[].routes[].backends[].(1)ai.(any)policies.tcp.connectTimeout
binds[].listeners[].routes[].backends[].(1)ai.(any)policies.tcp.connectTimeout.secs
binds[].listeners[].routes[].backends[].(1)ai.(any)policies.tcp.connectTimeout.nanos
binds[].listeners[].routes[].backends[].(1)ai.(any)groups
binds[].listeners[].routes[].backends[].(1)ai.(any)groups[].providers
binds[].listeners[].routes[].backends[].(1)ai.(any)groups[].providers[].name
binds[].listeners[].routes[].backends[].(1)ai.(any)groups[].providers[].provider
binds[].listeners[].routes[].backends[].(1)ai.(any)groups[].providers[].provider.(1)openAI
binds[].listeners[].routes[].backends[].(1)ai.(any)groups[].providers[].provider.(1)openAI.model
binds[].listeners[].routes[].backends[].(1)ai.(any)groups[].providers[].provider.(1)gemini
binds[].listeners[].routes[].backends[].(1)ai.(any)groups[].providers[].provider.(1)gemini.model
binds[].listeners[].routes[].backends[].(1)ai.(any)groups[].providers[].provider.(1)vertex
binds[].listeners[].routes[].backends[].(1)ai.(any)groups[].providers[].provider.(1)vertex.model
binds[].listeners[].routes[].backends[].(1)ai.(any)groups[].providers[].provider.(1)vertex.region
binds[].listeners[].routes[].backends[].(1)ai.(any)groups[].providers[].provider.(1)vertex.projectId
binds[].listeners[].routes[].backends[].(1)ai.(any)groups[].providers[].provider.(1)anthropic
binds[].listeners[].routes[].backends[].(1)ai.(any)groups[].providers[].provider.(1)anthropic.model
binds[].listeners[].routes[].backends[].(1)ai.(any)groups[].providers[].provider.(1)bedrock
binds[].listeners[].routes[].backends[].(1)ai.(any)groups[].providers[].provider.(1)bedrock.model
binds[].listeners[].routes[].backends[].(1)ai.(any)groups[].providers[].provider.(1)bedrock.region
binds[].listeners[].routes[].backends[].(1)ai.(any)groups[].providers[].provider.(1)bedrock.guardrailIdentifier
binds[].listeners[].routes[].backends[].(1)ai.(any)groups[].providers[].provider.(1)bedrock.guardrailVersion
binds[].listeners[].routes[].backends[].(1)ai.(any)groups[].providers[].provider.(1)azureOpenAI
binds[].listeners[].routes[].backends[].(1)ai.(any)groups[].providers[].provider.(1)azureOpenAI.model
binds[].listeners[].routes[].backends[].(1)ai.(any)groups[].providers[].provider.(1)azureOpenAI.host
binds[].listeners[].routes[].backends[].(1)ai.(any)groups[].providers[].provider.(1)azureOpenAI.apiVersion
binds[].listeners[].routes[].backends[].(1)ai.(any)groups[].providers[].hostOverride
binds[].listeners[].routes[].backends[].(1)ai.(any)groups[].providers[].pathOverride
binds[].listeners[].routes[].backends[].(1)ai.(any)groups[].providers[].tokenizeWhether 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[].(1)ai.(any)groups[].providers[].policies
binds[].listeners[].routes[].backends[].(1)ai.(any)groups[].providers[].policies.requestHeaderModifierHeaders to be modified in the request.
binds[].listeners[].routes[].backends[].(1)ai.(any)groups[].providers[].policies.requestHeaderModifier.add
binds[].listeners[].routes[].backends[].(1)ai.(any)groups[].providers[].policies.requestHeaderModifier.set
binds[].listeners[].routes[].backends[].(1)ai.(any)groups[].providers[].policies.requestHeaderModifier.remove
binds[].listeners[].routes[].backends[].(1)ai.(any)groups[].providers[].policies.responseHeaderModifierHeaders to be modified in the response.
binds[].listeners[].routes[].backends[].(1)ai.(any)groups[].providers[].policies.responseHeaderModifier.add
binds[].listeners[].routes[].backends[].(1)ai.(any)groups[].providers[].policies.responseHeaderModifier.set
binds[].listeners[].routes[].backends[].(1)ai.(any)groups[].providers[].policies.responseHeaderModifier.remove
binds[].listeners[].routes[].backends[].(1)ai.(any)groups[].providers[].policies.requestRedirectDirectly respond to the request with a redirect.
binds[].listeners[].routes[].backends[].(1)ai.(any)groups[].providers[].policies.requestRedirect.scheme
binds[].listeners[].routes[].backends[].(1)ai.(any)groups[].providers[].policies.requestRedirect.authority
binds[].listeners[].routes[].backends[].(1)ai.(any)groups[].providers[].policies.requestRedirect.authority.(any)(1)full
binds[].listeners[].routes[].backends[].(1)ai.(any)groups[].providers[].policies.requestRedirect.authority.(any)(1)host
binds[].listeners[].routes[].backends[].(1)ai.(any)groups[].providers[].policies.requestRedirect.authority.(any)(1)port
binds[].listeners[].routes[].backends[].(1)ai.(any)groups[].providers[].policies.requestRedirect.path
binds[].listeners[].routes[].backends[].(1)ai.(any)groups[].providers[].policies.requestRedirect.path.(any)(1)full
binds[].listeners[].routes[].backends[].(1)ai.(any)groups[].providers[].policies.requestRedirect.path.(any)(1)prefix
binds[].listeners[].routes[].backends[].(1)ai.(any)groups[].providers[].policies.requestRedirect.status
binds[].listeners[].routes[].backends[].(1)ai.(any)groups[].providers[].policies.mcpAuthorizationAuthorization policies for MCP access.
binds[].listeners[].routes[].backends[].(1)ai.(any)groups[].providers[].policies.mcpAuthorization.rules
binds[].listeners[].routes[].backends[].(1)ai.(any)groups[].providers[].policies.a2aMark this traffic as A2A to enable A2A processing and telemetry.
binds[].listeners[].routes[].backends[].(1)ai.(any)groups[].providers[].policies.aiMark this as LLM traffic to enable LLM processing.
binds[].listeners[].routes[].backends[].(1)ai.(any)groups[].providers[].policies.ai.promptGuard
binds[].listeners[].routes[].backends[].(1)ai.(any)groups[].providers[].policies.ai.promptGuard.request
binds[].listeners[].routes[].backends[].(1)ai.(any)groups[].providers[].policies.ai.promptGuard.request[].(1)regex
binds[].listeners[].routes[].backends[].(1)ai.(any)groups[].providers[].policies.ai.promptGuard.request[].(1)regex.action
binds[].listeners[].routes[].backends[].(1)ai.(any)groups[].providers[].policies.ai.promptGuard.request[].(1)regex.rules
binds[].listeners[].routes[].backends[].(1)ai.(any)groups[].providers[].policies.ai.promptGuard.request[].(1)regex.rules[].(any)builtin
binds[].listeners[].routes[].backends[].(1)ai.(any)groups[].providers[].policies.ai.promptGuard.request[].(1)regex.rules[].(any)pattern
binds[].listeners[].routes[].backends[].(1)ai.(any)groups[].providers[].policies.ai.promptGuard.request[].(1)webhook
binds[].listeners[].routes[].backends[].(1)ai.(any)groups[].providers[].policies.ai.promptGuard.request[].(1)webhook.target
binds[].listeners[].routes[].backends[].(1)ai.(any)groups[].providers[].policies.ai.promptGuard.request[].(1)webhook.target.(1)service
binds[].listeners[].routes[].backends[].(1)ai.(any)groups[].providers[].policies.ai.promptGuard.request[].(1)webhook.target.(1)service.name
binds[].listeners[].routes[].backends[].(1)ai.(any)groups[].providers[].policies.ai.promptGuard.request[].(1)webhook.target.(1)service.name.namespace
binds[].listeners[].routes[].backends[].(1)ai.(any)groups[].providers[].policies.ai.promptGuard.request[].(1)webhook.target.(1)service.name.hostname
binds[].listeners[].routes[].backends[].(1)ai.(any)groups[].providers[].policies.ai.promptGuard.request[].(1)webhook.target.(1)service.port
binds[].listeners[].routes[].backends[].(1)ai.(any)groups[].providers[].policies.ai.promptGuard.request[].(1)webhook.target.(1)hostHostname or IP address
binds[].listeners[].routes[].backends[].(1)ai.(any)groups[].providers[].policies.ai.promptGuard.request[].(1)webhook.target.(1)backendExplicit backend reference. Backend must be defined in the top level backends list
binds[].listeners[].routes[].backends[].(1)ai.(any)groups[].providers[].policies.ai.promptGuard.request[].(1)webhook.forwardHeaderMatches
binds[].listeners[].routes[].backends[].(1)ai.(any)groups[].providers[].policies.ai.promptGuard.request[].(1)webhook.forwardHeaderMatches[].name
binds[].listeners[].routes[].backends[].(1)ai.(any)groups[].providers[].policies.ai.promptGuard.request[].(1)webhook.forwardHeaderMatches[].value
binds[].listeners[].routes[].backends[].(1)ai.(any)groups[].providers[].policies.ai.promptGuard.request[].(1)webhook.forwardHeaderMatches[].value.(1)exact
binds[].listeners[].routes[].backends[].(1)ai.(any)groups[].providers[].policies.ai.promptGuard.request[].(1)webhook.forwardHeaderMatches[].value.(1)regex
binds[].listeners[].routes[].backends[].(1)ai.(any)groups[].providers[].policies.ai.promptGuard.request[].(1)openAIModeration
binds[].listeners[].routes[].backends[].(1)ai.(any)groups[].providers[].policies.ai.promptGuard.request[].(1)openAIModeration.modelModel to use. Defaults to omni-moderation-latest
binds[].listeners[].routes[].backends[].(1)ai.(any)groups[].providers[].policies.ai.promptGuard.request[].(1)openAIModeration.policies
binds[].listeners[].routes[].backends[].(1)ai.(any)groups[].providers[].policies.ai.promptGuard.request[].rejection
binds[].listeners[].routes[].backends[].(1)ai.(any)groups[].providers[].policies.ai.promptGuard.request[].rejection.body
binds[].listeners[].routes[].backends[].(1)ai.(any)groups[].providers[].policies.ai.promptGuard.request[].rejection.status
binds[].listeners[].routes[].backends[].(1)ai.(any)groups[].providers[].policies.ai.promptGuard.request[].rejection.headersOptional headers to add, set, or remove from the rejection response
binds[].listeners[].routes[].backends[].(1)ai.(any)groups[].providers[].policies.ai.promptGuard.request[].rejection.headers.add
binds[].listeners[].routes[].backends[].(1)ai.(any)groups[].providers[].policies.ai.promptGuard.request[].rejection.headers.set
binds[].listeners[].routes[].backends[].(1)ai.(any)groups[].providers[].policies.ai.promptGuard.request[].rejection.headers.remove
binds[].listeners[].routes[].backends[].(1)ai.(any)groups[].providers[].policies.ai.promptGuard.response
binds[].listeners[].routes[].backends[].(1)ai.(any)groups[].providers[].policies.ai.promptGuard.response[].(1)regex
binds[].listeners[].routes[].backends[].(1)ai.(any)groups[].providers[].policies.ai.promptGuard.response[].(1)regex.action
binds[].listeners[].routes[].backends[].(1)ai.(any)groups[].providers[].policies.ai.promptGuard.response[].(1)regex.rules
binds[].listeners[].routes[].backends[].(1)ai.(any)groups[].providers[].policies.ai.promptGuard.response[].(1)regex.rules[].(any)builtin
binds[].listeners[].routes[].backends[].(1)ai.(any)groups[].providers[].policies.ai.promptGuard.response[].(1)regex.rules[].(any)pattern
binds[].listeners[].routes[].backends[].(1)ai.(any)groups[].providers[].policies.ai.promptGuard.response[].(1)webhook
binds[].listeners[].routes[].backends[].(1)ai.(any)groups[].providers[].policies.ai.promptGuard.response[].(1)webhook.target
binds[].listeners[].routes[].backends[].(1)ai.(any)groups[].providers[].policies.ai.promptGuard.response[].(1)webhook.target.(1)service
binds[].listeners[].routes[].backends[].(1)ai.(any)groups[].providers[].policies.ai.promptGuard.response[].(1)webhook.target.(1)service.name
binds[].listeners[].routes[].backends[].(1)ai.(any)groups[].providers[].policies.ai.promptGuard.response[].(1)webhook.target.(1)service.name.namespace
binds[].listeners[].routes[].backends[].(1)ai.(any)groups[].providers[].policies.ai.promptGuard.response[].(1)webhook.target.(1)service.name.hostname
binds[].listeners[].routes[].backends[].(1)ai.(any)groups[].providers[].policies.ai.promptGuard.response[].(1)webhook.target.(1)service.port
binds[].listeners[].routes[].backends[].(1)ai.(any)groups[].providers[].policies.ai.promptGuard.response[].(1)webhook.target.(1)hostHostname or IP address
binds[].listeners[].routes[].backends[].(1)ai.(any)groups[].providers[].policies.ai.promptGuard.response[].(1)webhook.target.(1)backendExplicit backend reference. Backend must be defined in the top level backends list
binds[].listeners[].routes[].backends[].(1)ai.(any)groups[].providers[].policies.ai.promptGuard.response[].(1)webhook.forwardHeaderMatches
binds[].listeners[].routes[].backends[].(1)ai.(any)groups[].providers[].policies.ai.promptGuard.response[].(1)webhook.forwardHeaderMatches[].name
binds[].listeners[].routes[].backends[].(1)ai.(any)groups[].providers[].policies.ai.promptGuard.response[].(1)webhook.forwardHeaderMatches[].value
binds[].listeners[].routes[].backends[].(1)ai.(any)groups[].providers[].policies.ai.promptGuard.response[].(1)webhook.forwardHeaderMatches[].value.(1)exact
binds[].listeners[].routes[].backends[].(1)ai.(any)groups[].providers[].policies.ai.promptGuard.response[].(1)webhook.forwardHeaderMatches[].value.(1)regex
binds[].listeners[].routes[].backends[].(1)ai.(any)groups[].providers[].policies.ai.promptGuard.response[].rejection
binds[].listeners[].routes[].backends[].(1)ai.(any)groups[].providers[].policies.ai.promptGuard.response[].rejection.body
binds[].listeners[].routes[].backends[].(1)ai.(any)groups[].providers[].policies.ai.promptGuard.response[].rejection.status
binds[].listeners[].routes[].backends[].(1)ai.(any)groups[].providers[].policies.ai.promptGuard.response[].rejection.headersOptional headers to add, set, or remove from the rejection response
binds[].listeners[].routes[].backends[].(1)ai.(any)groups[].providers[].policies.ai.promptGuard.response[].rejection.headers.add
binds[].listeners[].routes[].backends[].(1)ai.(any)groups[].providers[].policies.ai.promptGuard.response[].rejection.headers.set
binds[].listeners[].routes[].backends[].(1)ai.(any)groups[].providers[].policies.ai.promptGuard.response[].rejection.headers.remove
binds[].listeners[].routes[].backends[].(1)ai.(any)groups[].providers[].policies.ai.defaults
binds[].listeners[].routes[].backends[].(1)ai.(any)groups[].providers[].policies.ai.overrides
binds[].listeners[].routes[].backends[].(1)ai.(any)groups[].providers[].policies.ai.prompts
binds[].listeners[].routes[].backends[].(1)ai.(any)groups[].providers[].policies.ai.prompts.append
binds[].listeners[].routes[].backends[].(1)ai.(any)groups[].providers[].policies.ai.prompts.append[].role
binds[].listeners[].routes[].backends[].(1)ai.(any)groups[].providers[].policies.ai.prompts.append[].content
binds[].listeners[].routes[].backends[].(1)ai.(any)groups[].providers[].policies.ai.prompts.prepend
binds[].listeners[].routes[].backends[].(1)ai.(any)groups[].providers[].policies.ai.prompts.prepend[].role
binds[].listeners[].routes[].backends[].(1)ai.(any)groups[].providers[].policies.ai.prompts.prepend[].content
binds[].listeners[].routes[].backends[].(1)ai.(any)groups[].providers[].policies.ai.modelAliases
binds[].listeners[].routes[].backends[].(1)ai.(any)groups[].providers[].policies.ai.promptCaching
binds[].listeners[].routes[].backends[].(1)ai.(any)groups[].providers[].policies.ai.promptCaching.cacheSystem
binds[].listeners[].routes[].backends[].(1)ai.(any)groups[].providers[].policies.ai.promptCaching.cacheMessages
binds[].listeners[].routes[].backends[].(1)ai.(any)groups[].providers[].policies.ai.promptCaching.cacheTools
binds[].listeners[].routes[].backends[].(1)ai.(any)groups[].providers[].policies.ai.promptCaching.minTokens
binds[].listeners[].routes[].backends[].(1)ai.(any)groups[].providers[].policies.ai.routes
binds[].listeners[].routes[].backends[].(1)ai.(any)groups[].providers[].policies.backendTLSSend TLS to the backend.
binds[].listeners[].routes[].backends[].(1)ai.(any)groups[].providers[].policies.backendTLS.cert
binds[].listeners[].routes[].backends[].(1)ai.(any)groups[].providers[].policies.backendTLS.key
binds[].listeners[].routes[].backends[].(1)ai.(any)groups[].providers[].policies.backendTLS.root
binds[].listeners[].routes[].backends[].(1)ai.(any)groups[].providers[].policies.backendTLS.hostname
binds[].listeners[].routes[].backends[].(1)ai.(any)groups[].providers[].policies.backendTLS.insecure
binds[].listeners[].routes[].backends[].(1)ai.(any)groups[].providers[].policies.backendTLS.insecureHost
binds[].listeners[].routes[].backends[].(1)ai.(any)groups[].providers[].policies.backendTLS.alpn
binds[].listeners[].routes[].backends[].(1)ai.(any)groups[].providers[].policies.backendTLS.subjectAltNames
binds[].listeners[].routes[].backends[].(1)ai.(any)groups[].providers[].policies.backendAuthAuthenticate to the backend.
binds[].listeners[].routes[].backends[].(1)ai.(any)groups[].providers[].policies.backendAuth.(any)(1)passthrough
binds[].listeners[].routes[].backends[].(1)ai.(any)groups[].providers[].policies.backendAuth.(any)(1)key
binds[].listeners[].routes[].backends[].(1)ai.(any)groups[].providers[].policies.backendAuth.(any)(1)key.(any)file
binds[].listeners[].routes[].backends[].(1)ai.(any)groups[].providers[].policies.backendAuth.(any)(1)gcp
binds[].listeners[].routes[].backends[].(1)ai.(any)groups[].providers[].policies.backendAuth.(any)(1)gcp.(any)type
binds[].listeners[].routes[].backends[].(1)ai.(any)groups[].providers[].policies.backendAuth.(any)(1)gcp.(any)audienceAudience for the token. If not set, the destination host will be used.
binds[].listeners[].routes[].backends[].(1)ai.(any)groups[].providers[].policies.backendAuth.(any)(1)gcp.(any)type
binds[].listeners[].routes[].backends[].(1)ai.(any)groups[].providers[].policies.backendAuth.(any)(1)aws
binds[].listeners[].routes[].backends[].(1)ai.(any)groups[].providers[].policies.backendAuth.(any)(1)aws.(any)accessKeyId
binds[].listeners[].routes[].backends[].(1)ai.(any)groups[].providers[].policies.backendAuth.(any)(1)aws.(any)secretAccessKey
binds[].listeners[].routes[].backends[].(1)ai.(any)groups[].providers[].policies.backendAuth.(any)(1)aws.(any)region
binds[].listeners[].routes[].backends[].(1)ai.(any)groups[].providers[].policies.backendAuth.(any)(1)aws.(any)sessionToken
binds[].listeners[].routes[].backends[].(1)ai.(any)groups[].providers[].policies.backendAuth.(any)(1)azure
binds[].listeners[].routes[].backends[].(1)ai.(any)groups[].providers[].policies.backendAuth.(any)(1)azure.(1)explicitConfig
binds[].listeners[].routes[].backends[].(1)ai.(any)groups[].providers[].policies.backendAuth.(any)(1)azure.(1)explicitConfig.(1)clientSecret
binds[].listeners[].routes[].backends[].(1)ai.(any)groups[].providers[].policies.backendAuth.(any)(1)azure.(1)explicitConfig.(1)clientSecret.tenant_id
binds[].listeners[].routes[].backends[].(1)ai.(any)groups[].providers[].policies.backendAuth.(any)(1)azure.(1)explicitConfig.(1)clientSecret.client_id
binds[].listeners[].routes[].backends[].(1)ai.(any)groups[].providers[].policies.backendAuth.(any)(1)azure.(1)explicitConfig.(1)clientSecret.client_secret
binds[].listeners[].routes[].backends[].(1)ai.(any)groups[].providers[].policies.backendAuth.(any)(1)azure.(1)explicitConfig.(1)managedIdentity
binds[].listeners[].routes[].backends[].(1)ai.(any)groups[].providers[].policies.backendAuth.(any)(1)azure.(1)explicitConfig.(1)managedIdentity.userAssignedIdentity
binds[].listeners[].routes[].backends[].(1)ai.(any)groups[].providers[].policies.backendAuth.(any)(1)azure.(1)explicitConfig.(1)managedIdentity.userAssignedIdentity.(any)(1)clientId
binds[].listeners[].routes[].backends[].(1)ai.(any)groups[].providers[].policies.backendAuth.(any)(1)azure.(1)explicitConfig.(1)managedIdentity.userAssignedIdentity.(any)(1)objectId
binds[].listeners[].routes[].backends[].(1)ai.(any)groups[].providers[].policies.backendAuth.(any)(1)azure.(1)explicitConfig.(1)managedIdentity.userAssignedIdentity.(any)(1)resourceId
binds[].listeners[].routes[].backends[].(1)ai.(any)groups[].providers[].policies.backendAuth.(any)(1)azure.(1)explicitConfig.(1)workloadIdentity
binds[].listeners[].routes[].backends[].(1)ai.(any)groups[].providers[].policies.backendAuth.(any)(1)azure.(1)developerImplicit
binds[].listeners[].routes[].backends[].(1)ai.(any)groups[].providers[].policies.httpSpecify HTTP settings for the backend
binds[].listeners[].routes[].backends[].(1)ai.(any)groups[].providers[].policies.http.version
binds[].listeners[].routes[].backends[].(1)ai.(any)groups[].providers[].policies.http.requestTimeout
binds[].listeners[].routes[].backends[].(1)ai.(any)groups[].providers[].policies.tcpSpecify TCP settings for the backend
binds[].listeners[].routes[].backends[].(1)ai.(any)groups[].providers[].policies.tcp.keepalives
binds[].listeners[].routes[].backends[].(1)ai.(any)groups[].providers[].policies.tcp.keepalives.enabled
binds[].listeners[].routes[].backends[].(1)ai.(any)groups[].providers[].policies.tcp.keepalives.time
binds[].listeners[].routes[].backends[].(1)ai.(any)groups[].providers[].policies.tcp.keepalives.interval
binds[].listeners[].routes[].backends[].(1)ai.(any)groups[].providers[].policies.tcp.keepalives.retries
binds[].listeners[].routes[].backends[].(1)ai.(any)groups[].providers[].policies.tcp.connectTimeout
binds[].listeners[].routes[].backends[].(1)ai.(any)groups[].providers[].policies.tcp.connectTimeout.secs
binds[].listeners[].routes[].backends[].(1)ai.(any)groups[].providers[].policies.tcp.connectTimeout.nanos
binds[].listeners[].routes[].backends[].weight
binds[].listeners[].routes[].backends[].policies
binds[].listeners[].routes[].backends[].policies.requestHeaderModifierHeaders to be modified in the request.
binds[].listeners[].routes[].backends[].policies.requestHeaderModifier.add
binds[].listeners[].routes[].backends[].policies.requestHeaderModifier.set
binds[].listeners[].routes[].backends[].policies.requestHeaderModifier.remove
binds[].listeners[].routes[].backends[].policies.responseHeaderModifierHeaders to be modified in the response.
binds[].listeners[].routes[].backends[].policies.responseHeaderModifier.add
binds[].listeners[].routes[].backends[].policies.responseHeaderModifier.set
binds[].listeners[].routes[].backends[].policies.responseHeaderModifier.remove
binds[].listeners[].routes[].backends[].policies.requestRedirectDirectly respond to the request with a redirect.
binds[].listeners[].routes[].backends[].policies.requestRedirect.scheme
binds[].listeners[].routes[].backends[].policies.requestRedirect.authority
binds[].listeners[].routes[].backends[].policies.requestRedirect.authority.(any)(1)full
binds[].listeners[].routes[].backends[].policies.requestRedirect.authority.(any)(1)host
binds[].listeners[].routes[].backends[].policies.requestRedirect.authority.(any)(1)port
binds[].listeners[].routes[].backends[].policies.requestRedirect.path
binds[].listeners[].routes[].backends[].policies.requestRedirect.path.(any)(1)full
binds[].listeners[].routes[].backends[].policies.requestRedirect.path.(any)(1)prefix
binds[].listeners[].routes[].backends[].policies.requestRedirect.status
binds[].listeners[].routes[].backends[].policies.mcpAuthorizationAuthorization policies for MCP access.
binds[].listeners[].routes[].backends[].policies.mcpAuthorization.rules
binds[].listeners[].routes[].backends[].policies.a2aMark this traffic as A2A to enable A2A processing and telemetry.
binds[].listeners[].routes[].backends[].policies.aiMark this as LLM traffic to enable LLM processing.
binds[].listeners[].routes[].backends[].policies.ai.promptGuard
binds[].listeners[].routes[].backends[].policies.ai.promptGuard.request
binds[].listeners[].routes[].backends[].policies.ai.promptGuard.request[].(1)regex
binds[].listeners[].routes[].backends[].policies.ai.promptGuard.request[].(1)regex.action
binds[].listeners[].routes[].backends[].policies.ai.promptGuard.request[].(1)regex.rules
binds[].listeners[].routes[].backends[].policies.ai.promptGuard.request[].(1)regex.rules[].(any)builtin
binds[].listeners[].routes[].backends[].policies.ai.promptGuard.request[].(1)regex.rules[].(any)pattern
binds[].listeners[].routes[].backends[].policies.ai.promptGuard.request[].(1)webhook
binds[].listeners[].routes[].backends[].policies.ai.promptGuard.request[].(1)webhook.target
binds[].listeners[].routes[].backends[].policies.ai.promptGuard.request[].(1)webhook.target.(1)service
binds[].listeners[].routes[].backends[].policies.ai.promptGuard.request[].(1)webhook.target.(1)service.name
binds[].listeners[].routes[].backends[].policies.ai.promptGuard.request[].(1)webhook.target.(1)service.name.namespace
binds[].listeners[].routes[].backends[].policies.ai.promptGuard.request[].(1)webhook.target.(1)service.name.hostname
binds[].listeners[].routes[].backends[].policies.ai.promptGuard.request[].(1)webhook.target.(1)service.port
binds[].listeners[].routes[].backends[].policies.ai.promptGuard.request[].(1)webhook.target.(1)hostHostname or IP address
binds[].listeners[].routes[].backends[].policies.ai.promptGuard.request[].(1)webhook.target.(1)backendExplicit backend reference. Backend must be defined in the top level backends list
binds[].listeners[].routes[].backends[].policies.ai.promptGuard.request[].(1)webhook.forwardHeaderMatches
binds[].listeners[].routes[].backends[].policies.ai.promptGuard.request[].(1)webhook.forwardHeaderMatches[].name
binds[].listeners[].routes[].backends[].policies.ai.promptGuard.request[].(1)webhook.forwardHeaderMatches[].value
binds[].listeners[].routes[].backends[].policies.ai.promptGuard.request[].(1)webhook.forwardHeaderMatches[].value.(1)exact
binds[].listeners[].routes[].backends[].policies.ai.promptGuard.request[].(1)webhook.forwardHeaderMatches[].value.(1)regex
binds[].listeners[].routes[].backends[].policies.ai.promptGuard.request[].(1)openAIModeration
binds[].listeners[].routes[].backends[].policies.ai.promptGuard.request[].(1)openAIModeration.modelModel to use. Defaults to omni-moderation-latest
binds[].listeners[].routes[].backends[].policies.ai.promptGuard.request[].(1)openAIModeration.policies
binds[].listeners[].routes[].backends[].policies.ai.promptGuard.request[].rejection
binds[].listeners[].routes[].backends[].policies.ai.promptGuard.request[].rejection.body
binds[].listeners[].routes[].backends[].policies.ai.promptGuard.request[].rejection.status
binds[].listeners[].routes[].backends[].policies.ai.promptGuard.request[].rejection.headersOptional headers to add, set, or remove from the rejection response
binds[].listeners[].routes[].backends[].policies.ai.promptGuard.request[].rejection.headers.add
binds[].listeners[].routes[].backends[].policies.ai.promptGuard.request[].rejection.headers.set
binds[].listeners[].routes[].backends[].policies.ai.promptGuard.request[].rejection.headers.remove
binds[].listeners[].routes[].backends[].policies.ai.promptGuard.response
binds[].listeners[].routes[].backends[].policies.ai.promptGuard.response[].(1)regex
binds[].listeners[].routes[].backends[].policies.ai.promptGuard.response[].(1)regex.action
binds[].listeners[].routes[].backends[].policies.ai.promptGuard.response[].(1)regex.rules
binds[].listeners[].routes[].backends[].policies.ai.promptGuard.response[].(1)regex.rules[].(any)builtin
binds[].listeners[].routes[].backends[].policies.ai.promptGuard.response[].(1)regex.rules[].(any)pattern
binds[].listeners[].routes[].backends[].policies.ai.promptGuard.response[].(1)webhook
binds[].listeners[].routes[].backends[].policies.ai.promptGuard.response[].(1)webhook.target
binds[].listeners[].routes[].backends[].policies.ai.promptGuard.response[].(1)webhook.target.(1)service
binds[].listeners[].routes[].backends[].policies.ai.promptGuard.response[].(1)webhook.target.(1)service.name
binds[].listeners[].routes[].backends[].policies.ai.promptGuard.response[].(1)webhook.target.(1)service.name.namespace
binds[].listeners[].routes[].backends[].policies.ai.promptGuard.response[].(1)webhook.target.(1)service.name.hostname
binds[].listeners[].routes[].backends[].policies.ai.promptGuard.response[].(1)webhook.target.(1)service.port
binds[].listeners[].routes[].backends[].policies.ai.promptGuard.response[].(1)webhook.target.(1)hostHostname or IP address
binds[].listeners[].routes[].backends[].policies.ai.promptGuard.response[].(1)webhook.target.(1)backendExplicit backend reference. Backend must be defined in the top level backends list
binds[].listeners[].routes[].backends[].policies.ai.promptGuard.response[].(1)webhook.forwardHeaderMatches
binds[].listeners[].routes[].backends[].policies.ai.promptGuard.response[].(1)webhook.forwardHeaderMatches[].name
binds[].listeners[].routes[].backends[].policies.ai.promptGuard.response[].(1)webhook.forwardHeaderMatches[].value
binds[].listeners[].routes[].backends[].policies.ai.promptGuard.response[].(1)webhook.forwardHeaderMatches[].value.(1)exact
binds[].listeners[].routes[].backends[].policies.ai.promptGuard.response[].(1)webhook.forwardHeaderMatches[].value.(1)regex
binds[].listeners[].routes[].backends[].policies.ai.promptGuard.response[].rejection
binds[].listeners[].routes[].backends[].policies.ai.promptGuard.response[].rejection.body
binds[].listeners[].routes[].backends[].policies.ai.promptGuard.response[].rejection.status
binds[].listeners[].routes[].backends[].policies.ai.promptGuard.response[].rejection.headersOptional headers to add, set, or remove from the rejection response
binds[].listeners[].routes[].backends[].policies.ai.promptGuard.response[].rejection.headers.add
binds[].listeners[].routes[].backends[].policies.ai.promptGuard.response[].rejection.headers.set
binds[].listeners[].routes[].backends[].policies.ai.promptGuard.response[].rejection.headers.remove
binds[].listeners[].routes[].backends[].policies.ai.defaults
binds[].listeners[].routes[].backends[].policies.ai.overrides
binds[].listeners[].routes[].backends[].policies.ai.prompts
binds[].listeners[].routes[].backends[].policies.ai.prompts.append
binds[].listeners[].routes[].backends[].policies.ai.prompts.append[].role
binds[].listeners[].routes[].backends[].policies.ai.prompts.append[].content
binds[].listeners[].routes[].backends[].policies.ai.prompts.prepend
binds[].listeners[].routes[].backends[].policies.ai.prompts.prepend[].role
binds[].listeners[].routes[].backends[].policies.ai.prompts.prepend[].content
binds[].listeners[].routes[].backends[].policies.ai.modelAliases
binds[].listeners[].routes[].backends[].policies.ai.promptCaching
binds[].listeners[].routes[].backends[].policies.ai.promptCaching.cacheSystem
binds[].listeners[].routes[].backends[].policies.ai.promptCaching.cacheMessages
binds[].listeners[].routes[].backends[].policies.ai.promptCaching.cacheTools
binds[].listeners[].routes[].backends[].policies.ai.promptCaching.minTokens
binds[].listeners[].routes[].backends[].policies.ai.routes
binds[].listeners[].routes[].backends[].policies.backendTLSSend TLS to the backend.
binds[].listeners[].routes[].backends[].policies.backendTLS.cert
binds[].listeners[].routes[].backends[].policies.backendTLS.key
binds[].listeners[].routes[].backends[].policies.backendTLS.root
binds[].listeners[].routes[].backends[].policies.backendTLS.hostname
binds[].listeners[].routes[].backends[].policies.backendTLS.insecure
binds[].listeners[].routes[].backends[].policies.backendTLS.insecureHost
binds[].listeners[].routes[].backends[].policies.backendTLS.alpn
binds[].listeners[].routes[].backends[].policies.backendTLS.subjectAltNames
binds[].listeners[].routes[].backends[].policies.backendAuthAuthenticate to the backend.
binds[].listeners[].routes[].backends[].policies.backendAuth.(any)(1)passthrough
binds[].listeners[].routes[].backends[].policies.backendAuth.(any)(1)key
binds[].listeners[].routes[].backends[].policies.backendAuth.(any)(1)key.(any)file
binds[].listeners[].routes[].backends[].policies.backendAuth.(any)(1)gcp
binds[].listeners[].routes[].backends[].policies.backendAuth.(any)(1)gcp.(any)type
binds[].listeners[].routes[].backends[].policies.backendAuth.(any)(1)gcp.(any)audienceAudience for the token. If not set, the destination host will be used.
binds[].listeners[].routes[].backends[].policies.backendAuth.(any)(1)gcp.(any)type
binds[].listeners[].routes[].backends[].policies.backendAuth.(any)(1)aws
binds[].listeners[].routes[].backends[].policies.backendAuth.(any)(1)aws.(any)accessKeyId
binds[].listeners[].routes[].backends[].policies.backendAuth.(any)(1)aws.(any)secretAccessKey
binds[].listeners[].routes[].backends[].policies.backendAuth.(any)(1)aws.(any)region
binds[].listeners[].routes[].backends[].policies.backendAuth.(any)(1)aws.(any)sessionToken
binds[].listeners[].routes[].backends[].policies.backendAuth.(any)(1)azure
binds[].listeners[].routes[].backends[].policies.backendAuth.(any)(1)azure.(1)explicitConfig
binds[].listeners[].routes[].backends[].policies.backendAuth.(any)(1)azure.(1)explicitConfig.(1)clientSecret
binds[].listeners[].routes[].backends[].policies.backendAuth.(any)(1)azure.(1)explicitConfig.(1)clientSecret.tenant_id
binds[].listeners[].routes[].backends[].policies.backendAuth.(any)(1)azure.(1)explicitConfig.(1)clientSecret.client_id
binds[].listeners[].routes[].backends[].policies.backendAuth.(any)(1)azure.(1)explicitConfig.(1)clientSecret.client_secret
binds[].listeners[].routes[].backends[].policies.backendAuth.(any)(1)azure.(1)explicitConfig.(1)managedIdentity
binds[].listeners[].routes[].backends[].policies.backendAuth.(any)(1)azure.(1)explicitConfig.(1)managedIdentity.userAssignedIdentity
binds[].listeners[].routes[].backends[].policies.backendAuth.(any)(1)azure.(1)explicitConfig.(1)managedIdentity.userAssignedIdentity.(any)(1)clientId
binds[].listeners[].routes[].backends[].policies.backendAuth.(any)(1)azure.(1)explicitConfig.(1)managedIdentity.userAssignedIdentity.(any)(1)objectId
binds[].listeners[].routes[].backends[].policies.backendAuth.(any)(1)azure.(1)explicitConfig.(1)managedIdentity.userAssignedIdentity.(any)(1)resourceId
binds[].listeners[].routes[].backends[].policies.backendAuth.(any)(1)azure.(1)explicitConfig.(1)workloadIdentity
binds[].listeners[].routes[].backends[].policies.backendAuth.(any)(1)azure.(1)developerImplicit
binds[].listeners[].routes[].backends[].policies.httpSpecify HTTP settings for the backend
binds[].listeners[].routes[].backends[].policies.http.version
binds[].listeners[].routes[].backends[].policies.http.requestTimeout
binds[].listeners[].routes[].backends[].policies.tcpSpecify TCP settings for the backend
binds[].listeners[].routes[].backends[].policies.tcp.keepalives
binds[].listeners[].routes[].backends[].policies.tcp.keepalives.enabled
binds[].listeners[].routes[].backends[].policies.tcp.keepalives.time
binds[].listeners[].routes[].backends[].policies.tcp.keepalives.interval
binds[].listeners[].routes[].backends[].policies.tcp.keepalives.retries
binds[].listeners[].routes[].backends[].policies.tcp.connectTimeout
binds[].listeners[].routes[].backends[].policies.tcp.connectTimeout.secs
binds[].listeners[].routes[].backends[].policies.tcp.connectTimeout.nanos
binds[].listeners[].tcpRoutes
binds[].listeners[].tcpRoutes[].name
binds[].listeners[].tcpRoutes[].namespace
binds[].listeners[].tcpRoutes[].ruleName
binds[].listeners[].tcpRoutes[].hostnamesCan be a wildcard
binds[].listeners[].tcpRoutes[].policies
binds[].listeners[].tcpRoutes[].policies.backendTLS
binds[].listeners[].tcpRoutes[].policies.backendTLS.cert
binds[].listeners[].tcpRoutes[].policies.backendTLS.key
binds[].listeners[].tcpRoutes[].policies.backendTLS.root
binds[].listeners[].tcpRoutes[].policies.backendTLS.hostname
binds[].listeners[].tcpRoutes[].policies.backendTLS.insecure
binds[].listeners[].tcpRoutes[].policies.backendTLS.insecureHost
binds[].listeners[].tcpRoutes[].policies.backendTLS.alpn
binds[].listeners[].tcpRoutes[].policies.backendTLS.subjectAltNames
binds[].listeners[].tcpRoutes[].backends
binds[].listeners[].tcpRoutes[].backends[].(1)service
binds[].listeners[].tcpRoutes[].backends[].(1)service.name
binds[].listeners[].tcpRoutes[].backends[].(1)service.name.namespace
binds[].listeners[].tcpRoutes[].backends[].(1)service.name.hostname
binds[].listeners[].tcpRoutes[].backends[].(1)service.port
binds[].listeners[].tcpRoutes[].backends[].(1)hostHostname or IP address
binds[].listeners[].tcpRoutes[].backends[].(1)backendExplicit backend reference. Backend must be defined in the top level backends list
binds[].listeners[].tcpRoutes[].backends[].weight
binds[].listeners[].tcpRoutes[].backends[].policies
binds[].listeners[].tcpRoutes[].backends[].policies.backendTLSSend TLS to the backend.
binds[].listeners[].tcpRoutes[].backends[].policies.backendTLS.cert
binds[].listeners[].tcpRoutes[].backends[].policies.backendTLS.key
binds[].listeners[].tcpRoutes[].backends[].policies.backendTLS.root
binds[].listeners[].tcpRoutes[].backends[].policies.backendTLS.hostname
binds[].listeners[].tcpRoutes[].backends[].policies.backendTLS.insecure
binds[].listeners[].tcpRoutes[].backends[].policies.backendTLS.insecureHost
binds[].listeners[].tcpRoutes[].backends[].policies.backendTLS.alpn
binds[].listeners[].tcpRoutes[].backends[].policies.backendTLS.subjectAltNames
binds[].listeners[].policies
binds[].listeners[].policies.jwtAuthAuthenticate incoming JWT requests.
binds[].listeners[].policies.jwtAuth.(any)(any)mode
binds[].listeners[].policies.jwtAuth.(any)(any)providers
binds[].listeners[].policies.jwtAuth.(any)(any)providers[].issuer
binds[].listeners[].policies.jwtAuth.(any)(any)providers[].audiences
binds[].listeners[].policies.jwtAuth.(any)(any)providers[].jwks
binds[].listeners[].policies.jwtAuth.(any)(any)providers[].jwks.(any)file
binds[].listeners[].policies.jwtAuth.(any)(any)providers[].jwks.(any)url
binds[].listeners[].policies.jwtAuth.(any)(any)mode
binds[].listeners[].policies.jwtAuth.(any)(any)issuer
binds[].listeners[].policies.jwtAuth.(any)(any)audiences
binds[].listeners[].policies.jwtAuth.(any)(any)jwks
binds[].listeners[].policies.jwtAuth.(any)(any)jwks.(any)file
binds[].listeners[].policies.jwtAuth.(any)(any)jwks.(any)url
binds[].listeners[].policies.extAuthzAuthenticate incoming requests by calling an external authorization server.
binds[].listeners[].policies.extAuthz.(any)(1)service
binds[].listeners[].policies.extAuthz.(any)(1)service.name
binds[].listeners[].policies.extAuthz.(any)(1)service.name.namespace
binds[].listeners[].policies.extAuthz.(any)(1)service.name.hostname
binds[].listeners[].policies.extAuthz.(any)(1)service.port
binds[].listeners[].policies.extAuthz.(any)(1)hostHostname or IP address
binds[].listeners[].policies.extAuthz.(any)(1)backendExplicit backend reference. Backend must be defined in the top level backends list
binds[].listeners[].policies.extAuthz.(any)protocolThe ext_authz protocol to use. Unless you need to integrate with an HTTP-only server, gRPC is recommended.
binds[].listeners[].policies.extAuthz.(any)protocol.(1)grpc
binds[].listeners[].policies.extAuthz.(any)protocol.(1)grpc.contextAdditional 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.(any)protocol.(1)grpc.metadataAdditional 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.(any)protocol.(1)http
binds[].listeners[].policies.extAuthz.(any)protocol.(1)http.path
binds[].listeners[].policies.extAuthz.(any)protocol.(1)http.redirectWhen 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.(any)protocol.(1)http.includeResponseHeadersSpecific headers from the authorization response will be copied into the request to the backend.
binds[].listeners[].policies.extAuthz.(any)protocol.(1)http.addRequestHeadersSpecific headers to add in the authorization request (empty = all headers), based on the expression
binds[].listeners[].policies.extAuthz.(any)protocol.(1)http.metadataMetadata to include under the extauthz variable, based on the authorization response.
binds[].listeners[].policies.extAuthz.(any)failureModeBehavior when the authorization service is unavailable or returns an error
binds[].listeners[].policies.extAuthz.(any)failureMode.(1)denyWithStatus
binds[].listeners[].policies.extAuthz.(any)includeRequestHeadersSpecific 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.(any)includeRequestBodyOptions for including the request body in the authorization request
binds[].listeners[].policies.extAuthz.(any)includeRequestBody.maxRequestBytesMaximum size of request body to buffer (default: 8192)
binds[].listeners[].policies.extAuthz.(any)includeRequestBody.allowPartialMessageIf true, send partial body when max_request_bytes is reached
binds[].listeners[].policies.extAuthz.(any)includeRequestBody.packAsBytesIf true, pack body as raw bytes in gRPC
binds[].listeners[].policies.extAuthz.(any)timeoutTimeout for the authorization request (default: 200ms)
binds[].listeners[].policies.extProcExtend agentgateway with an external processor
binds[].listeners[].policies.extProc.(any)(1)service
binds[].listeners[].policies.extProc.(any)(1)service.name
binds[].listeners[].policies.extProc.(any)(1)service.name.namespace
binds[].listeners[].policies.extProc.(any)(1)service.name.hostname
binds[].listeners[].policies.extProc.(any)(1)service.port
binds[].listeners[].policies.extProc.(any)(1)hostHostname or IP address
binds[].listeners[].policies.extProc.(any)(1)backendExplicit backend reference. Backend must be defined in the top level backends list
binds[].listeners[].policies.extProc.(any)failureModeBehavior when the ext_proc service is unavailable or returns an error
binds[].listeners[].policies.extProc.(any)metadataContextAdditional 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.(any)requestAttributesMaps to the request attributes field in ProcessingRequest, and allows dynamic CEL expressions.
binds[].listeners[].policies.extProc.(any)responseAttributesMaps to the response attributes field in ProcessingRequest, and allows dynamic CEL expressions.
binds[].listeners[].policies.transformationsModify requests and responses
binds[].listeners[].policies.transformations.request
binds[].listeners[].policies.transformations.request.add
binds[].listeners[].policies.transformations.request.set
binds[].listeners[].policies.transformations.request.remove
binds[].listeners[].policies.transformations.request.body
binds[].listeners[].policies.transformations.response
binds[].listeners[].policies.transformations.response.add
binds[].listeners[].policies.transformations.response.set
binds[].listeners[].policies.transformations.response.remove
binds[].listeners[].policies.transformations.response.body
binds[].listeners[].policies.basicAuthAuthenticate incoming requests using Basic Authentication with htpasswd.
binds[].listeners[].policies.basicAuth.htpasswd.htpasswd file contents/reference
binds[].listeners[].policies.basicAuth.htpasswd.(any)file
binds[].listeners[].policies.basicAuth.realmRealm name for the WWW-Authenticate header
binds[].listeners[].policies.basicAuth.modeValidation mode for basic authentication
binds[].listeners[].policies.apiKeyAuthenticate incoming requests using API Keys
binds[].listeners[].policies.apiKey.keysList of API keys
binds[].listeners[].policies.apiKey.keys[].key
binds[].listeners[].policies.apiKey.keys[].metadata
binds[].listeners[].policies.apiKey.modeValidation mode for API keys
binds[].tunnelProtocol
frontendPolicies
frontendPolicies.httpSettings for handling incoming HTTP requests.
frontendPolicies.http.maxBufferSize
frontendPolicies.http.http1MaxHeadersThe 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.http1IdleTimeout
frontendPolicies.http.http2WindowSize
frontendPolicies.http.http2ConnectionWindowSize
frontendPolicies.http.http2FrameSize
frontendPolicies.http.http2KeepaliveInterval
frontendPolicies.http.http2KeepaliveTimeout
frontendPolicies.tlsSettings for handling incoming TLS connections.
frontendPolicies.tls.handshakeTimeout
frontendPolicies.tls.alpn
frontendPolicies.tls.minVersion
frontendPolicies.tls.maxVersion
frontendPolicies.tls.cipherSuites
frontendPolicies.tcpSettings for handling incoming TCP connections.
frontendPolicies.tcp.keepalives
frontendPolicies.tcp.keepalives.enabled
frontendPolicies.tcp.keepalives.time
frontendPolicies.tcp.keepalives.interval
frontendPolicies.tcp.keepalives.retries
frontendPolicies.accessLogSettings for request access logs.
frontendPolicies.accessLog.filter
frontendPolicies.accessLog.add
frontendPolicies.accessLog.remove
frontendPolicies.tracing
frontendPolicies.tracing.(any)(1)service
frontendPolicies.tracing.(any)(1)service.name
frontendPolicies.tracing.(any)(1)service.name.namespace
frontendPolicies.tracing.(any)(1)service.name.hostname
frontendPolicies.tracing.(any)(1)service.port
frontendPolicies.tracing.(any)(1)hostHostname or IP address
frontendPolicies.tracing.(any)(1)backendExplicit backend reference. Backend must be defined in the top level backends list
frontendPolicies.tracing.(any)attributesSpan attributes to add, keyed by attribute name.
frontendPolicies.tracing.(any)resourcesResource attributes to add to the tracer provider (OTel Resource).
This can be used to set things like service.name dynamically.
frontendPolicies.tracing.(any)removeAttribute 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.(any)randomSamplingOptional per-policy override for random sampling. If set, overrides global config for
requests that use this frontend policy.
frontendPolicies.tracing.(any)clientSamplingOptional per-policy override for client sampling. If set, overrides global config for
requests that use this frontend policy.
frontendPolicies.tracing.(any)path
frontendPolicies.tracing.(any)protocol
policiespolicies 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[].name
policies[].name.name
policies[].name.namespace
policies[].target
policies[].target.(1)gateway
policies[].target.(1)gateway.gatewayName
policies[].target.(1)gateway.gatewayNamespace
policies[].target.(1)gateway.listenerName
policies[].target.(1)route
policies[].target.(1)route.name
policies[].target.(1)route.namespace
policies[].target.(1)route.ruleName
policies[].target.(1)route.kind
policies[].target.(1)backend
policies[].target.(1)backend.(1)backend
policies[].target.(1)backend.(1)backend.name
policies[].target.(1)backend.(1)backend.namespace
policies[].target.(1)backend.(1)backend.section
policies[].target.(1)backend.(1)service
policies[].target.(1)backend.(1)service.hostname
policies[].target.(1)backend.(1)service.namespace
policies[].target.(1)backend.(1)service.port
policies[].phasephase 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[].policy
policies[].policy.requestHeaderModifierHeaders to be modified in the request.
policies[].policy.requestHeaderModifier.add
policies[].policy.requestHeaderModifier.set
policies[].policy.requestHeaderModifier.remove
policies[].policy.responseHeaderModifierHeaders to be modified in the response.
policies[].policy.responseHeaderModifier.add
policies[].policy.responseHeaderModifier.set
policies[].policy.responseHeaderModifier.remove
policies[].policy.requestRedirectDirectly respond to the request with a redirect.
policies[].policy.requestRedirect.scheme
policies[].policy.requestRedirect.authority
policies[].policy.requestRedirect.authority.(any)(1)full
policies[].policy.requestRedirect.authority.(any)(1)host
policies[].policy.requestRedirect.authority.(any)(1)port
policies[].policy.requestRedirect.path
policies[].policy.requestRedirect.path.(any)(1)full
policies[].policy.requestRedirect.path.(any)(1)prefix
policies[].policy.requestRedirect.status
policies[].policy.urlRewriteModify the URL path or authority.
policies[].policy.urlRewrite.authority
policies[].policy.urlRewrite.authority.(any)(1)full
policies[].policy.urlRewrite.authority.(any)(1)host
policies[].policy.urlRewrite.authority.(any)(1)port
policies[].policy.urlRewrite.path
policies[].policy.urlRewrite.path.(any)(1)full
policies[].policy.urlRewrite.path.(any)(1)prefix
policies[].policy.requestMirrorMirror incoming requests to another destination.
policies[].policy.requestMirror.backend
policies[].policy.requestMirror.backend.(1)service
policies[].policy.requestMirror.backend.(1)service.name
policies[].policy.requestMirror.backend.(1)service.name.namespace
policies[].policy.requestMirror.backend.(1)service.name.hostname
policies[].policy.requestMirror.backend.(1)service.port
policies[].policy.requestMirror.backend.(1)hostHostname or IP address
policies[].policy.requestMirror.backend.(1)backendExplicit backend reference. Backend must be defined in the top level backends list
policies[].policy.requestMirror.percentage
policies[].policy.directResponseDirectly respond to the request with a static response.
policies[].policy.directResponse.body
policies[].policy.directResponse.status
policies[].policy.corsHandle CORS preflight requests and append configured CORS headers to applicable requests.
policies[].policy.cors.allowCredentials
policies[].policy.cors.allowHeaders
policies[].policy.cors.allowMethods
policies[].policy.cors.allowOrigins
policies[].policy.cors.exposeHeaders
policies[].policy.cors.maxAge
policies[].policy.mcpAuthorizationAuthorization policies for MCP access.
policies[].policy.mcpAuthorization.rules
policies[].policy.authorizationAuthorization policies for HTTP access.
policies[].policy.authorization.rules
policies[].policy.mcpAuthenticationAuthentication for MCP clients.
policies[].policy.mcpAuthentication.issuer
policies[].policy.mcpAuthentication.audiences
policies[].policy.mcpAuthentication.provider
policies[].policy.mcpAuthentication.provider.(any)(1)auth0
policies[].policy.mcpAuthentication.provider.(any)(1)keycloak
policies[].policy.mcpAuthentication.resourceMetadata
policies[].policy.mcpAuthentication.jwks
policies[].policy.mcpAuthentication.jwks.(any)file
policies[].policy.mcpAuthentication.jwks.(any)url
policies[].policy.mcpAuthentication.mode
policies[].policy.a2aMark this traffic as A2A to enable A2A processing and telemetry.
policies[].policy.aiMark this as LLM traffic to enable LLM processing.
policies[].policy.ai.promptGuard
policies[].policy.ai.promptGuard.request
policies[].policy.ai.promptGuard.request[].(1)regex
policies[].policy.ai.promptGuard.request[].(1)regex.action
policies[].policy.ai.promptGuard.request[].(1)regex.rules
policies[].policy.ai.promptGuard.request[].(1)regex.rules[].(any)builtin
policies[].policy.ai.promptGuard.request[].(1)regex.rules[].(any)pattern
policies[].policy.ai.promptGuard.request[].(1)webhook
policies[].policy.ai.promptGuard.request[].(1)webhook.target
policies[].policy.ai.promptGuard.request[].(1)webhook.target.(1)service
policies[].policy.ai.promptGuard.request[].(1)webhook.target.(1)service.name
policies[].policy.ai.promptGuard.request[].(1)webhook.target.(1)service.name.namespace
policies[].policy.ai.promptGuard.request[].(1)webhook.target.(1)service.name.hostname
policies[].policy.ai.promptGuard.request[].(1)webhook.target.(1)service.port
policies[].policy.ai.promptGuard.request[].(1)webhook.target.(1)hostHostname or IP address
policies[].policy.ai.promptGuard.request[].(1)webhook.target.(1)backendExplicit backend reference. Backend must be defined in the top level backends list
policies[].policy.ai.promptGuard.request[].(1)webhook.forwardHeaderMatches
policies[].policy.ai.promptGuard.request[].(1)webhook.forwardHeaderMatches[].name
policies[].policy.ai.promptGuard.request[].(1)webhook.forwardHeaderMatches[].value
policies[].policy.ai.promptGuard.request[].(1)webhook.forwardHeaderMatches[].value.(1)exact
policies[].policy.ai.promptGuard.request[].(1)webhook.forwardHeaderMatches[].value.(1)regex
policies[].policy.ai.promptGuard.request[].(1)openAIModeration
policies[].policy.ai.promptGuard.request[].(1)openAIModeration.modelModel to use. Defaults to omni-moderation-latest
policies[].policy.ai.promptGuard.request[].(1)openAIModeration.policies
policies[].policy.ai.promptGuard.request[].(1)openAIModeration.policies.requestHeaderModifierHeaders to be modified in the request.
policies[].policy.ai.promptGuard.request[].(1)openAIModeration.policies.requestHeaderModifier.add
policies[].policy.ai.promptGuard.request[].(1)openAIModeration.policies.requestHeaderModifier.set
policies[].policy.ai.promptGuard.request[].(1)openAIModeration.policies.requestHeaderModifier.remove
policies[].policy.ai.promptGuard.request[].(1)openAIModeration.policies.responseHeaderModifierHeaders to be modified in the response.
policies[].policy.ai.promptGuard.request[].(1)openAIModeration.policies.responseHeaderModifier.add
policies[].policy.ai.promptGuard.request[].(1)openAIModeration.policies.responseHeaderModifier.set
policies[].policy.ai.promptGuard.request[].(1)openAIModeration.policies.responseHeaderModifier.remove
policies[].policy.ai.promptGuard.request[].(1)openAIModeration.policies.requestRedirectDirectly respond to the request with a redirect.
policies[].policy.ai.promptGuard.request[].(1)openAIModeration.policies.requestRedirect.scheme
policies[].policy.ai.promptGuard.request[].(1)openAIModeration.policies.requestRedirect.authority
policies[].policy.ai.promptGuard.request[].(1)openAIModeration.policies.requestRedirect.authority.(any)(1)full
policies[].policy.ai.promptGuard.request[].(1)openAIModeration.policies.requestRedirect.authority.(any)(1)host
policies[].policy.ai.promptGuard.request[].(1)openAIModeration.policies.requestRedirect.authority.(any)(1)port
policies[].policy.ai.promptGuard.request[].(1)openAIModeration.policies.requestRedirect.path
policies[].policy.ai.promptGuard.request[].(1)openAIModeration.policies.requestRedirect.path.(any)(1)full
policies[].policy.ai.promptGuard.request[].(1)openAIModeration.policies.requestRedirect.path.(any)(1)prefix
policies[].policy.ai.promptGuard.request[].(1)openAIModeration.policies.requestRedirect.status
policies[].policy.ai.promptGuard.request[].(1)openAIModeration.policies.mcpAuthorizationAuthorization policies for MCP access.
policies[].policy.ai.promptGuard.request[].(1)openAIModeration.policies.mcpAuthorization.rules
policies[].policy.ai.promptGuard.request[].(1)openAIModeration.policies.a2aMark this traffic as A2A to enable A2A processing and telemetry.
policies[].policy.ai.promptGuard.request[].(1)openAIModeration.policies.aiMark this as LLM traffic to enable LLM processing.
policies[].policy.ai.promptGuard.request[].(1)openAIModeration.policies.backendTLSSend TLS to the backend.
policies[].policy.ai.promptGuard.request[].(1)openAIModeration.policies.backendTLS.cert
policies[].policy.ai.promptGuard.request[].(1)openAIModeration.policies.backendTLS.key
policies[].policy.ai.promptGuard.request[].(1)openAIModeration.policies.backendTLS.root
policies[].policy.ai.promptGuard.request[].(1)openAIModeration.policies.backendTLS.hostname
policies[].policy.ai.promptGuard.request[].(1)openAIModeration.policies.backendTLS.insecure
policies[].policy.ai.promptGuard.request[].(1)openAIModeration.policies.backendTLS.insecureHost
policies[].policy.ai.promptGuard.request[].(1)openAIModeration.policies.backendTLS.alpn
policies[].policy.ai.promptGuard.request[].(1)openAIModeration.policies.backendTLS.subjectAltNames
policies[].policy.ai.promptGuard.request[].(1)openAIModeration.policies.backendAuthAuthenticate to the backend.
policies[].policy.ai.promptGuard.request[].(1)openAIModeration.policies.backendAuth.(any)(1)passthrough
policies[].policy.ai.promptGuard.request[].(1)openAIModeration.policies.backendAuth.(any)(1)key
policies[].policy.ai.promptGuard.request[].(1)openAIModeration.policies.backendAuth.(any)(1)key.(any)file
policies[].policy.ai.promptGuard.request[].(1)openAIModeration.policies.backendAuth.(any)(1)gcp
policies[].policy.ai.promptGuard.request[].(1)openAIModeration.policies.backendAuth.(any)(1)gcp.(any)type
policies[].policy.ai.promptGuard.request[].(1)openAIModeration.policies.backendAuth.(any)(1)gcp.(any)audienceAudience for the token. If not set, the destination host will be used.
policies[].policy.ai.promptGuard.request[].(1)openAIModeration.policies.backendAuth.(any)(1)gcp.(any)type
policies[].policy.ai.promptGuard.request[].(1)openAIModeration.policies.backendAuth.(any)(1)aws
policies[].policy.ai.promptGuard.request[].(1)openAIModeration.policies.backendAuth.(any)(1)aws.(any)accessKeyId
policies[].policy.ai.promptGuard.request[].(1)openAIModeration.policies.backendAuth.(any)(1)aws.(any)secretAccessKey
policies[].policy.ai.promptGuard.request[].(1)openAIModeration.policies.backendAuth.(any)(1)aws.(any)region
policies[].policy.ai.promptGuard.request[].(1)openAIModeration.policies.backendAuth.(any)(1)aws.(any)sessionToken
policies[].policy.ai.promptGuard.request[].(1)openAIModeration.policies.backendAuth.(any)(1)azure
policies[].policy.ai.promptGuard.request[].(1)openAIModeration.policies.backendAuth.(any)(1)azure.(1)explicitConfig
policies[].policy.ai.promptGuard.request[].(1)openAIModeration.policies.backendAuth.(any)(1)azure.(1)explicitConfig.(1)clientSecret
policies[].policy.ai.promptGuard.request[].(1)openAIModeration.policies.backendAuth.(any)(1)azure.(1)explicitConfig.(1)clientSecret.tenant_id
policies[].policy.ai.promptGuard.request[].(1)openAIModeration.policies.backendAuth.(any)(1)azure.(1)explicitConfig.(1)clientSecret.client_id
policies[].policy.ai.promptGuard.request[].(1)openAIModeration.policies.backendAuth.(any)(1)azure.(1)explicitConfig.(1)clientSecret.client_secret
policies[].policy.ai.promptGuard.request[].(1)openAIModeration.policies.backendAuth.(any)(1)azure.(1)explicitConfig.(1)managedIdentity
policies[].policy.ai.promptGuard.request[].(1)openAIModeration.policies.backendAuth.(any)(1)azure.(1)explicitConfig.(1)managedIdentity.userAssignedIdentity
policies[].policy.ai.promptGuard.request[].(1)openAIModeration.policies.backendAuth.(any)(1)azure.(1)explicitConfig.(1)managedIdentity.userAssignedIdentity.(any)(1)clientId
policies[].policy.ai.promptGuard.request[].(1)openAIModeration.policies.backendAuth.(any)(1)azure.(1)explicitConfig.(1)managedIdentity.userAssignedIdentity.(any)(1)objectId
policies[].policy.ai.promptGuard.request[].(1)openAIModeration.policies.backendAuth.(any)(1)azure.(1)explicitConfig.(1)managedIdentity.userAssignedIdentity.(any)(1)resourceId
policies[].policy.ai.promptGuard.request[].(1)openAIModeration.policies.backendAuth.(any)(1)azure.(1)explicitConfig.(1)workloadIdentity
policies[].policy.ai.promptGuard.request[].(1)openAIModeration.policies.backendAuth.(any)(1)azure.(1)developerImplicit
policies[].policy.ai.promptGuard.request[].(1)openAIModeration.policies.httpSpecify HTTP settings for the backend
policies[].policy.ai.promptGuard.request[].(1)openAIModeration.policies.http.version
policies[].policy.ai.promptGuard.request[].(1)openAIModeration.policies.http.requestTimeout
policies[].policy.ai.promptGuard.request[].(1)openAIModeration.policies.tcpSpecify TCP settings for the backend
policies[].policy.ai.promptGuard.request[].(1)openAIModeration.policies.tcp.keepalives
policies[].policy.ai.promptGuard.request[].(1)openAIModeration.policies.tcp.keepalives.enabled
policies[].policy.ai.promptGuard.request[].(1)openAIModeration.policies.tcp.keepalives.time
policies[].policy.ai.promptGuard.request[].(1)openAIModeration.policies.tcp.keepalives.interval
policies[].policy.ai.promptGuard.request[].(1)openAIModeration.policies.tcp.keepalives.retries
policies[].policy.ai.promptGuard.request[].(1)openAIModeration.policies.tcp.connectTimeout
policies[].policy.ai.promptGuard.request[].(1)openAIModeration.policies.tcp.connectTimeout.secs
policies[].policy.ai.promptGuard.request[].(1)openAIModeration.policies.tcp.connectTimeout.nanos
policies[].policy.ai.promptGuard.request[].rejection
policies[].policy.ai.promptGuard.request[].rejection.body
policies[].policy.ai.promptGuard.request[].rejection.status
policies[].policy.ai.promptGuard.request[].rejection.headersOptional headers to add, set, or remove from the rejection response
policies[].policy.ai.promptGuard.request[].rejection.headers.add
policies[].policy.ai.promptGuard.request[].rejection.headers.set
policies[].policy.ai.promptGuard.request[].rejection.headers.remove
policies[].policy.ai.promptGuard.response
policies[].policy.ai.promptGuard.response[].(1)regex
policies[].policy.ai.promptGuard.response[].(1)regex.action
policies[].policy.ai.promptGuard.response[].(1)regex.rules
policies[].policy.ai.promptGuard.response[].(1)regex.rules[].(any)builtin
policies[].policy.ai.promptGuard.response[].(1)regex.rules[].(any)pattern
policies[].policy.ai.promptGuard.response[].(1)webhook
policies[].policy.ai.promptGuard.response[].(1)webhook.target
policies[].policy.ai.promptGuard.response[].(1)webhook.target.(1)service
policies[].policy.ai.promptGuard.response[].(1)webhook.target.(1)service.name
policies[].policy.ai.promptGuard.response[].(1)webhook.target.(1)service.name.namespace
policies[].policy.ai.promptGuard.response[].(1)webhook.target.(1)service.name.hostname
policies[].policy.ai.promptGuard.response[].(1)webhook.target.(1)service.port
policies[].policy.ai.promptGuard.response[].(1)webhook.target.(1)hostHostname or IP address
policies[].policy.ai.promptGuard.response[].(1)webhook.target.(1)backendExplicit backend reference. Backend must be defined in the top level backends list
policies[].policy.ai.promptGuard.response[].(1)webhook.forwardHeaderMatches
policies[].policy.ai.promptGuard.response[].(1)webhook.forwardHeaderMatches[].name
policies[].policy.ai.promptGuard.response[].(1)webhook.forwardHeaderMatches[].value
policies[].policy.ai.promptGuard.response[].(1)webhook.forwardHeaderMatches[].value.(1)exact
policies[].policy.ai.promptGuard.response[].(1)webhook.forwardHeaderMatches[].value.(1)regex
policies[].policy.ai.promptGuard.response[].rejection
policies[].policy.ai.promptGuard.response[].rejection.body
policies[].policy.ai.promptGuard.response[].rejection.status
policies[].policy.ai.promptGuard.response[].rejection.headersOptional headers to add, set, or remove from the rejection response
policies[].policy.ai.promptGuard.response[].rejection.headers.add
policies[].policy.ai.promptGuard.response[].rejection.headers.set
policies[].policy.ai.promptGuard.response[].rejection.headers.remove
policies[].policy.ai.defaults
policies[].policy.ai.overrides
policies[].policy.ai.prompts
policies[].policy.ai.prompts.append
policies[].policy.ai.prompts.append[].role
policies[].policy.ai.prompts.append[].content
policies[].policy.ai.prompts.prepend
policies[].policy.ai.prompts.prepend[].role
policies[].policy.ai.prompts.prepend[].content
policies[].policy.ai.modelAliases
policies[].policy.ai.promptCaching
policies[].policy.ai.promptCaching.cacheSystem
policies[].policy.ai.promptCaching.cacheMessages
policies[].policy.ai.promptCaching.cacheTools
policies[].policy.ai.promptCaching.minTokens
policies[].policy.ai.routes
policies[].policy.backendTLSSend TLS to the backend.
policies[].policy.backendTLS.cert
policies[].policy.backendTLS.key
policies[].policy.backendTLS.root
policies[].policy.backendTLS.hostname
policies[].policy.backendTLS.insecure
policies[].policy.backendTLS.insecureHost
policies[].policy.backendTLS.alpn
policies[].policy.backendTLS.subjectAltNames
policies[].policy.backendAuthAuthenticate to the backend.
policies[].policy.backendAuth.(any)(1)passthrough
policies[].policy.backendAuth.(any)(1)key
policies[].policy.backendAuth.(any)(1)key.(any)file
policies[].policy.backendAuth.(any)(1)gcp
policies[].policy.backendAuth.(any)(1)gcp.(any)type
policies[].policy.backendAuth.(any)(1)gcp.(any)audienceAudience for the token. If not set, the destination host will be used.
policies[].policy.backendAuth.(any)(1)gcp.(any)type
policies[].policy.backendAuth.(any)(1)aws
policies[].policy.backendAuth.(any)(1)aws.(any)accessKeyId
policies[].policy.backendAuth.(any)(1)aws.(any)secretAccessKey
policies[].policy.backendAuth.(any)(1)aws.(any)region
policies[].policy.backendAuth.(any)(1)aws.(any)sessionToken
policies[].policy.backendAuth.(any)(1)azure
policies[].policy.backendAuth.(any)(1)azure.(1)explicitConfig
policies[].policy.backendAuth.(any)(1)azure.(1)explicitConfig.(1)clientSecret
policies[].policy.backendAuth.(any)(1)azure.(1)explicitConfig.(1)clientSecret.tenant_id
policies[].policy.backendAuth.(any)(1)azure.(1)explicitConfig.(1)clientSecret.client_id
policies[].policy.backendAuth.(any)(1)azure.(1)explicitConfig.(1)clientSecret.client_secret
policies[].policy.backendAuth.(any)(1)azure.(1)explicitConfig.(1)managedIdentity
policies[].policy.backendAuth.(any)(1)azure.(1)explicitConfig.(1)managedIdentity.userAssignedIdentity
policies[].policy.backendAuth.(any)(1)azure.(1)explicitConfig.(1)managedIdentity.userAssignedIdentity.(any)(1)clientId
policies[].policy.backendAuth.(any)(1)azure.(1)explicitConfig.(1)managedIdentity.userAssignedIdentity.(any)(1)objectId
policies[].policy.backendAuth.(any)(1)azure.(1)explicitConfig.(1)managedIdentity.userAssignedIdentity.(any)(1)resourceId
policies[].policy.backendAuth.(any)(1)azure.(1)explicitConfig.(1)workloadIdentity
policies[].policy.backendAuth.(any)(1)azure.(1)developerImplicit
policies[].policy.localRateLimitRate limit incoming requests. State is kept local.
policies[].policy.localRateLimit[].maxTokens
policies[].policy.localRateLimit[].tokensPerFill
policies[].policy.localRateLimit[].fillInterval
policies[].policy.localRateLimit[].type
policies[].policy.remoteRateLimitRate limit incoming requests. State is managed by a remote server.
policies[].policy.remoteRateLimit.(any)(1)service
policies[].policy.remoteRateLimit.(any)(1)service.name
policies[].policy.remoteRateLimit.(any)(1)service.name.namespace
policies[].policy.remoteRateLimit.(any)(1)service.name.hostname
policies[].policy.remoteRateLimit.(any)(1)service.port
policies[].policy.remoteRateLimit.(any)(1)hostHostname or IP address
policies[].policy.remoteRateLimit.(any)(1)backendExplicit backend reference. Backend must be defined in the top level backends list
policies[].policy.remoteRateLimit.(any)domain
policies[].policy.remoteRateLimit.(any)descriptors
policies[].policy.remoteRateLimit.(any)descriptors[].entries
policies[].policy.remoteRateLimit.(any)descriptors[].entries[].key
policies[].policy.remoteRateLimit.(any)descriptors[].entries[].value
policies[].policy.remoteRateLimit.(any)descriptors[].type
policies[].policy.remoteRateLimit.(any)timeoutTimeout for the request
policies[].policy.jwtAuthAuthenticate incoming JWT requests.
policies[].policy.jwtAuth.(any)(any)mode
policies[].policy.jwtAuth.(any)(any)providers
policies[].policy.jwtAuth.(any)(any)providers[].issuer
policies[].policy.jwtAuth.(any)(any)providers[].audiences
policies[].policy.jwtAuth.(any)(any)providers[].jwks
policies[].policy.jwtAuth.(any)(any)providers[].jwks.(any)file
policies[].policy.jwtAuth.(any)(any)providers[].jwks.(any)url
policies[].policy.jwtAuth.(any)(any)mode
policies[].policy.jwtAuth.(any)(any)issuer
policies[].policy.jwtAuth.(any)(any)audiences
policies[].policy.jwtAuth.(any)(any)jwks
policies[].policy.jwtAuth.(any)(any)jwks.(any)file
policies[].policy.jwtAuth.(any)(any)jwks.(any)url
policies[].policy.basicAuthAuthenticate incoming requests using Basic Authentication with htpasswd.
policies[].policy.basicAuth.htpasswd.htpasswd file contents/reference
policies[].policy.basicAuth.htpasswd.(any)file
policies[].policy.basicAuth.realmRealm name for the WWW-Authenticate header
policies[].policy.basicAuth.modeValidation mode for basic authentication
policies[].policy.apiKeyAuthenticate incoming requests using API Keys
policies[].policy.apiKey.keysList of API keys
policies[].policy.apiKey.keys[].key
policies[].policy.apiKey.keys[].metadata
policies[].policy.apiKey.modeValidation mode for API keys
policies[].policy.extAuthzAuthenticate incoming requests by calling an external authorization server.
policies[].policy.extAuthz.(any)(1)service
policies[].policy.extAuthz.(any)(1)service.name
policies[].policy.extAuthz.(any)(1)service.name.namespace
policies[].policy.extAuthz.(any)(1)service.name.hostname
policies[].policy.extAuthz.(any)(1)service.port
policies[].policy.extAuthz.(any)(1)hostHostname or IP address
policies[].policy.extAuthz.(any)(1)backendExplicit backend reference. Backend must be defined in the top level backends list
policies[].policy.extAuthz.(any)protocolThe ext_authz protocol to use. Unless you need to integrate with an HTTP-only server, gRPC is recommended.
policies[].policy.extAuthz.(any)protocol.(1)grpc
policies[].policy.extAuthz.(any)protocol.(1)grpc.contextAdditional 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.(any)protocol.(1)grpc.metadataAdditional 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.(any)protocol.(1)http
policies[].policy.extAuthz.(any)protocol.(1)http.path
policies[].policy.extAuthz.(any)protocol.(1)http.redirectWhen 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.(any)protocol.(1)http.includeResponseHeadersSpecific headers from the authorization response will be copied into the request to the backend.
policies[].policy.extAuthz.(any)protocol.(1)http.addRequestHeadersSpecific headers to add in the authorization request (empty = all headers), based on the expression
policies[].policy.extAuthz.(any)protocol.(1)http.metadataMetadata to include under the extauthz variable, based on the authorization response.
policies[].policy.extAuthz.(any)failureModeBehavior when the authorization service is unavailable or returns an error
policies[].policy.extAuthz.(any)failureMode.(1)denyWithStatus
policies[].policy.extAuthz.(any)includeRequestHeadersSpecific 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.(any)includeRequestBodyOptions for including the request body in the authorization request
policies[].policy.extAuthz.(any)includeRequestBody.maxRequestBytesMaximum size of request body to buffer (default: 8192)
policies[].policy.extAuthz.(any)includeRequestBody.allowPartialMessageIf true, send partial body when max_request_bytes is reached
policies[].policy.extAuthz.(any)includeRequestBody.packAsBytesIf true, pack body as raw bytes in gRPC
policies[].policy.extAuthz.(any)timeoutTimeout for the authorization request (default: 200ms)
policies[].policy.extProcExtend agentgateway with an external processor
policies[].policy.extProc.(any)(1)service
policies[].policy.extProc.(any)(1)service.name
policies[].policy.extProc.(any)(1)service.name.namespace
policies[].policy.extProc.(any)(1)service.name.hostname
policies[].policy.extProc.(any)(1)service.port
policies[].policy.extProc.(any)(1)hostHostname or IP address
policies[].policy.extProc.(any)(1)backendExplicit backend reference. Backend must be defined in the top level backends list
policies[].policy.extProc.(any)failureModeBehavior when the ext_proc service is unavailable or returns an error
policies[].policy.extProc.(any)metadataContextAdditional 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.(any)requestAttributesMaps to the request attributes field in ProcessingRequest, and allows dynamic CEL expressions.
policies[].policy.extProc.(any)responseAttributesMaps to the response attributes field in ProcessingRequest, and allows dynamic CEL expressions.
policies[].policy.transformationsModify requests and responses
policies[].policy.transformations.request
policies[].policy.transformations.request.add
policies[].policy.transformations.request.set
policies[].policy.transformations.request.remove
policies[].policy.transformations.request.body
policies[].policy.transformations.response
policies[].policy.transformations.response.add
policies[].policy.transformations.response.set
policies[].policy.transformations.response.remove
policies[].policy.transformations.response.body
policies[].policy.csrfHandle CSRF protection by validating request origins against configured allowed origins.
policies[].policy.csrf.additionalOrigins
policies[].policy.timeoutTimeout requests that exceed the configured duration.
policies[].policy.timeout.requestTimeout
policies[].policy.timeout.backendRequestTimeout
policies[].policy.retryRetry matching requests.
policies[].policy.retry.attempts
policies[].policy.retry.backoff
policies[].policy.retry.codes
workloads
services
backends
backends[].name
backends[].host
backends[].policies
backends[].policies.requestHeaderModifierHeaders to be modified in the request.
backends[].policies.requestHeaderModifier.add
backends[].policies.requestHeaderModifier.set
backends[].policies.requestHeaderModifier.remove
backends[].policies.responseHeaderModifierHeaders to be modified in the response.
backends[].policies.responseHeaderModifier.add
backends[].policies.responseHeaderModifier.set
backends[].policies.responseHeaderModifier.remove
backends[].policies.requestRedirectDirectly respond to the request with a redirect.
backends[].policies.requestRedirect.scheme
backends[].policies.requestRedirect.authority
backends[].policies.requestRedirect.authority.(any)(1)full
backends[].policies.requestRedirect.authority.(any)(1)host
backends[].policies.requestRedirect.authority.(any)(1)port
backends[].policies.requestRedirect.path
backends[].policies.requestRedirect.path.(any)(1)full
backends[].policies.requestRedirect.path.(any)(1)prefix
backends[].policies.requestRedirect.status
backends[].policies.mcpAuthorizationAuthorization policies for MCP access.
backends[].policies.mcpAuthorization.rules
backends[].policies.a2aMark this traffic as A2A to enable A2A processing and telemetry.
backends[].policies.aiMark this as LLM traffic to enable LLM processing.
backends[].policies.ai.promptGuard
backends[].policies.ai.promptGuard.request
backends[].policies.ai.promptGuard.request[].(1)regex
backends[].policies.ai.promptGuard.request[].(1)regex.action
backends[].policies.ai.promptGuard.request[].(1)regex.rules
backends[].policies.ai.promptGuard.request[].(1)regex.rules[].(any)builtin
backends[].policies.ai.promptGuard.request[].(1)regex.rules[].(any)pattern
backends[].policies.ai.promptGuard.request[].(1)webhook
backends[].policies.ai.promptGuard.request[].(1)webhook.target
backends[].policies.ai.promptGuard.request[].(1)webhook.target.(1)service
backends[].policies.ai.promptGuard.request[].(1)webhook.target.(1)service.name
backends[].policies.ai.promptGuard.request[].(1)webhook.target.(1)service.name.namespace
backends[].policies.ai.promptGuard.request[].(1)webhook.target.(1)service.name.hostname
backends[].policies.ai.promptGuard.request[].(1)webhook.target.(1)service.port
backends[].policies.ai.promptGuard.request[].(1)webhook.target.(1)hostHostname or IP address
backends[].policies.ai.promptGuard.request[].(1)webhook.target.(1)backendExplicit backend reference. Backend must be defined in the top level backends list
backends[].policies.ai.promptGuard.request[].(1)webhook.forwardHeaderMatches
backends[].policies.ai.promptGuard.request[].(1)webhook.forwardHeaderMatches[].name
backends[].policies.ai.promptGuard.request[].(1)webhook.forwardHeaderMatches[].value
backends[].policies.ai.promptGuard.request[].(1)webhook.forwardHeaderMatches[].value.(1)exact
backends[].policies.ai.promptGuard.request[].(1)webhook.forwardHeaderMatches[].value.(1)regex
backends[].policies.ai.promptGuard.request[].(1)openAIModeration
backends[].policies.ai.promptGuard.request[].(1)openAIModeration.modelModel to use. Defaults to omni-moderation-latest
backends[].policies.ai.promptGuard.request[].(1)openAIModeration.policies
backends[].policies.ai.promptGuard.request[].rejection
backends[].policies.ai.promptGuard.request[].rejection.body
backends[].policies.ai.promptGuard.request[].rejection.status
backends[].policies.ai.promptGuard.request[].rejection.headersOptional headers to add, set, or remove from the rejection response
backends[].policies.ai.promptGuard.request[].rejection.headers.add
backends[].policies.ai.promptGuard.request[].rejection.headers.set
backends[].policies.ai.promptGuard.request[].rejection.headers.remove
backends[].policies.ai.promptGuard.response
backends[].policies.ai.promptGuard.response[].(1)regex
backends[].policies.ai.promptGuard.response[].(1)regex.action
backends[].policies.ai.promptGuard.response[].(1)regex.rules
backends[].policies.ai.promptGuard.response[].(1)regex.rules[].(any)builtin
backends[].policies.ai.promptGuard.response[].(1)regex.rules[].(any)pattern
backends[].policies.ai.promptGuard.response[].(1)webhook
backends[].policies.ai.promptGuard.response[].(1)webhook.target
backends[].policies.ai.promptGuard.response[].(1)webhook.target.(1)service
backends[].policies.ai.promptGuard.response[].(1)webhook.target.(1)service.name
backends[].policies.ai.promptGuard.response[].(1)webhook.target.(1)service.name.namespace
backends[].policies.ai.promptGuard.response[].(1)webhook.target.(1)service.name.hostname
backends[].policies.ai.promptGuard.response[].(1)webhook.target.(1)service.port
backends[].policies.ai.promptGuard.response[].(1)webhook.target.(1)hostHostname or IP address
backends[].policies.ai.promptGuard.response[].(1)webhook.target.(1)backendExplicit backend reference. Backend must be defined in the top level backends list
backends[].policies.ai.promptGuard.response[].(1)webhook.forwardHeaderMatches
backends[].policies.ai.promptGuard.response[].(1)webhook.forwardHeaderMatches[].name
backends[].policies.ai.promptGuard.response[].(1)webhook.forwardHeaderMatches[].value
backends[].policies.ai.promptGuard.response[].(1)webhook.forwardHeaderMatches[].value.(1)exact
backends[].policies.ai.promptGuard.response[].(1)webhook.forwardHeaderMatches[].value.(1)regex
backends[].policies.ai.promptGuard.response[].rejection
backends[].policies.ai.promptGuard.response[].rejection.body
backends[].policies.ai.promptGuard.response[].rejection.status
backends[].policies.ai.promptGuard.response[].rejection.headersOptional headers to add, set, or remove from the rejection response
backends[].policies.ai.promptGuard.response[].rejection.headers.add
backends[].policies.ai.promptGuard.response[].rejection.headers.set
backends[].policies.ai.promptGuard.response[].rejection.headers.remove
backends[].policies.ai.defaults
backends[].policies.ai.overrides
backends[].policies.ai.prompts
backends[].policies.ai.prompts.append
backends[].policies.ai.prompts.append[].role
backends[].policies.ai.prompts.append[].content
backends[].policies.ai.prompts.prepend
backends[].policies.ai.prompts.prepend[].role
backends[].policies.ai.prompts.prepend[].content
backends[].policies.ai.modelAliases
backends[].policies.ai.promptCaching
backends[].policies.ai.promptCaching.cacheSystem
backends[].policies.ai.promptCaching.cacheMessages
backends[].policies.ai.promptCaching.cacheTools
backends[].policies.ai.promptCaching.minTokens
backends[].policies.ai.routes
backends[].policies.backendTLSSend TLS to the backend.
backends[].policies.backendTLS.cert
backends[].policies.backendTLS.key
backends[].policies.backendTLS.root
backends[].policies.backendTLS.hostname
backends[].policies.backendTLS.insecure
backends[].policies.backendTLS.insecureHost
backends[].policies.backendTLS.alpn
backends[].policies.backendTLS.subjectAltNames
backends[].policies.backendAuthAuthenticate to the backend.
backends[].policies.backendAuth.(any)(1)passthrough
backends[].policies.backendAuth.(any)(1)key
backends[].policies.backendAuth.(any)(1)key.(any)file
backends[].policies.backendAuth.(any)(1)gcp
backends[].policies.backendAuth.(any)(1)gcp.(any)type
backends[].policies.backendAuth.(any)(1)gcp.(any)audienceAudience for the token. If not set, the destination host will be used.
backends[].policies.backendAuth.(any)(1)gcp.(any)type
backends[].policies.backendAuth.(any)(1)aws
backends[].policies.backendAuth.(any)(1)aws.(any)accessKeyId
backends[].policies.backendAuth.(any)(1)aws.(any)secretAccessKey
backends[].policies.backendAuth.(any)(1)aws.(any)region
backends[].policies.backendAuth.(any)(1)aws.(any)sessionToken
backends[].policies.backendAuth.(any)(1)azure
backends[].policies.backendAuth.(any)(1)azure.(1)explicitConfig
backends[].policies.backendAuth.(any)(1)azure.(1)explicitConfig.(1)clientSecret
backends[].policies.backendAuth.(any)(1)azure.(1)explicitConfig.(1)clientSecret.tenant_id
backends[].policies.backendAuth.(any)(1)azure.(1)explicitConfig.(1)clientSecret.client_id
backends[].policies.backendAuth.(any)(1)azure.(1)explicitConfig.(1)clientSecret.client_secret
backends[].policies.backendAuth.(any)(1)azure.(1)explicitConfig.(1)managedIdentity
backends[].policies.backendAuth.(any)(1)azure.(1)explicitConfig.(1)managedIdentity.userAssignedIdentity
backends[].policies.backendAuth.(any)(1)azure.(1)explicitConfig.(1)managedIdentity.userAssignedIdentity.(any)(1)clientId
backends[].policies.backendAuth.(any)(1)azure.(1)explicitConfig.(1)managedIdentity.userAssignedIdentity.(any)(1)objectId
backends[].policies.backendAuth.(any)(1)azure.(1)explicitConfig.(1)managedIdentity.userAssignedIdentity.(any)(1)resourceId
backends[].policies.backendAuth.(any)(1)azure.(1)explicitConfig.(1)workloadIdentity
backends[].policies.backendAuth.(any)(1)azure.(1)developerImplicit
backends[].policies.httpSpecify HTTP settings for the backend
backends[].policies.http.version
backends[].policies.http.requestTimeout
backends[].policies.tcpSpecify TCP settings for the backend
backends[].policies.tcp.keepalives
backends[].policies.tcp.keepalives.enabled
backends[].policies.tcp.keepalives.time
backends[].policies.tcp.keepalives.interval
backends[].policies.tcp.keepalives.retries
backends[].policies.tcp.connectTimeout
backends[].policies.tcp.connectTimeout.secs
backends[].policies.tcp.connectTimeout.nanos
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/.