- Resource: ExtensionBinding
- Target
- Scope
- ResourceType
- MatchCondition
- To
- Destination
- HeaderSet
- HeaderMatch
- StringMatch
- Methods
Resource: ExtensionBinding
ExtensionBinding is a resource representing the attachment of an extension to a service.
| JSON representation |
|---|
{ "name": string, "createTime": string, "updateTime": string, "description": string, "labels": { string: string, ... }, "etag": string, "producerExtension": string, "target": { object ( |
| Fields | |
|---|---|
name |
Identifier. Name of the |
createTime |
Output only. The timestamp when the resource was created. Uses RFC 3339, where generated output will always be Z-normalized and use 0, 3, 6 or 9 fractional digits. Offsets other than "Z" are also accepted. Examples: |
updateTime |
Output only. The timestamp when the resource was updated. Uses RFC 3339, where generated output will always be Z-normalized and use 0, 3, 6 or 9 fractional digits. Offsets other than "Z" are also accepted. Examples: |
description |
Optional. A human-readable description of the resource. |
labels |
Optional. Set of labels associated with the The format must comply with the following requirements. An object containing a list of |
etag |
Optional. Etag of the resource. If provided, it must match the server's etag. If the provided etag does not match the server's etag, the request will fail with a 409 ABORTED error. |
producerExtension |
Required. The name of the extension that this binding should attach to target resources. Format:
|
target |
Required. Specifies a target to which this |
matchConditions[] |
Optional. A list of match conditions to evaluate against the incoming request. The extension is invoked if the request matches at least one condition, or if no match conditions are specified. A request matches a condition only if it matches every field that is set in that condition. Limited to 5 conditions. |
failOpen |
Optional. Determines the behavior of the extension binding when the call to the extension fails or times out. Default value is When set to |
producerMetadata |
Optional. Additional metadata that should be passed to the attached extension with each request. This field is subject to the following limitations:
An object containing a list of |
Target
Specifies a list of targets to which this ExtensionBinding should attach.
| JSON representation |
|---|
{
"resources": [
string
],
"scope": {
object ( |
| Fields | |
|---|---|
resources[] |
Optional. The references to the target resources to which this binding should attach. Exactly one of For AI Application resources, specify the full resource name in the format: Limited to 1 resource. |
scope |
Optional. Specifies the scope of resources to which this binding should attach. Exactly one of |
Scope
Specifies the scope of resources to which this binding should attach.
| JSON representation |
|---|
{
"parent": string,
"resourceTypes": [
enum ( |
| Fields | |
|---|---|
parent |
Required. The parent resource that defines the scope, in the format When the scope is a project, the binding applies to the resources that meet all of the following conditions:
|
resourceTypes[] |
Required. The types of resources to which the binding should attach. Limited to 1 resource type. |
ResourceType
Resource types that should be targeted by the binding.
| Enums | |
|---|---|
RESOURCE_TYPE_UNSPECIFIED |
Default value. Should not be used. |
AI_APPLICATION |
AI Application resources. |
AGENT_GATEWAY |
Agent Gateway resources. |
MatchCondition
Conditions to match against the incoming request.
| JSON representation |
|---|
{
"to": {
object ( |
| Fields | |
|---|---|
to |
Optional. Describes properties of a destination of a request. If specified, the extension will only be invoked on requests to destinations that match the specified criteria. |
To
Describes properties of one or more destinations of a request.
| JSON representation |
|---|
{ "destination": { object ( |
| Fields | |
|---|---|
destination |
Optional. Describes properties of the destination of a request. A request matches the destination only if it matches every field that is set. Fields that are not set are always considered a match. For example, if only At least one of |
notDestination |
Optional. Describes the negated properties of the request destination. The extension will not be invoked on requests that match the criteria specified in this field. At least one of |
Destination
Describes properties of a single destination.
| JSON representation |
|---|
{ "headerSet": { object ( |
| Fields | |
|---|---|
headerSet |
Optional. A set of HTTP headers to match against. If not specified, requests with any headers are matched. |
resources[] |
Optional. A list of non-empty strings whose value is matched against the resource to which a request is sent (for example, an |
hosts[] |
Optional. A list of HTTP hosts to match against. Limited to 10 hosts. If not specified, any host is allowed. If specified, a match occurs if any of the hosts matches the host value in the request. |
paths[] |
Optional. A list of paths to match against. Limited to 10 paths. If not specified, any path is allowed. Note that this path match includes the query parameters. For gRPC services, this should be a fully-qualified name of the form |
HeaderSet
Describes a set of HTTP headers to match against.
| JSON representation |
|---|
{
"headers": [
{
object ( |
| Fields | |
|---|---|
headers[] |
Required. A list of HTTP headers to match against. If multiple header matches are provided, they are evaluated as an AND, meaning that all header matches must match for the request to match. Limited to 10 headers. |
HeaderMatch
Determines how an HTTP header should be matched.
| JSON representation |
|---|
{
"name": string,
"value": {
object ( |
| Fields | |
|---|---|
name |
Required. Specifies the name of the header in the request. |
value |
Optional. Specifies how the header match will be performed. |
StringMatch
Specifies matching logic for string values.
| JSON representation |
|---|
{ "ignoreCase": boolean, // The following is a list of mutually exclusive fields. At most one of the // fields will be set in a response: "exact": string, "prefix": string, "suffix": string, "contains": string // End of mutually exclusive fields. } |
| Fields | |
|---|---|
ignoreCase |
Optional. If true, the |
| Determines how a string value should be matched against the pattern. The following is a list of mutually exclusive fields. At most one of the fields will be set in a response: | |
exact |
Optional. The input string must match exactly the string specified here. Examples:
|
prefix |
Optional. The input string must have the prefix specified here. An empty prefix is not allowed. Examples:
|
suffix |
Optional. The input string must have the suffix specified here. An empty suffix is not allowed. Examples:
|
contains |
Optional. The input string must contain the substring specified here. An empty substring is not allowed. Examples:
|
| End of mutually exclusive fields. | |
Methods |
|
|---|---|
|
Creates a new ExtensionBinding resource in a given project and location. |
|
Deletes the specified ExtensionBinding resource. |
|
Gets details of the specified ExtensionBinding resource. |
|
Lists ExtensionBinding resources in a given project and location. |
|
Updates the parameters of the specified ExtensionBinding resource. |