update_integration¶
Operation¶
update_integration
async
¶
update_integration(input: UpdateIntegrationInput, plugins: list[Plugin] | None = None) -> UpdateIntegrationOutput
Represents an update integration.
Parameters:
| Name | Type | Description | Default |
|---|---|---|---|
input
|
UpdateIntegrationInput
|
An instance of |
required |
plugins
|
list[Plugin] | None
|
A list of callables that modify the configuration dynamically. Changes made by these plugins only apply for the duration of the operation execution and will not affect any other operation invocations. |
None
|
Returns:
| Type | Description |
|---|---|
UpdateIntegrationOutput
|
An instance of |
Input¶
UpdateIntegrationInput
dataclass
¶
Represents an update integration request.
Attributes¶
http_method
class-attribute
instance-attribute
¶
http_method: str | None = None
Represents an update integration request's HTTP method.
patch_operations
class-attribute
instance-attribute
¶
patch_operations: list[PatchOperation] | None = None
For more information about supported patch operations, see Patch Operations.
resource_id
class-attribute
instance-attribute
¶
resource_id: str | None = None
Represents an update integration request's resource identifier.
rest_api_id
class-attribute
instance-attribute
¶
rest_api_id: str | None = None
The string identifier of the associated RestApi.
Output¶
UpdateIntegrationOutput
dataclass
¶
Represents an HTTP, HTTP_PROXY, AWS, AWS_PROXY, or Mock
integration.
Attributes¶
cache_key_parameters
class-attribute
instance-attribute
¶
cache_key_parameters: list[str] | None = None
A list of request parameters whose values API Gateway caches. To be
valid values for cacheKeyParameters, these parameters must also be
specified for Method requestParameters.
cache_namespace
class-attribute
instance-attribute
¶
cache_namespace: str | None = None
Specifies a group of related cached parameters. By default, API Gateway
uses the resource ID as the cacheNamespace. You can specify the same
cacheNamespace across resources to return the same cached data for
requests to different resources.
connection_id
class-attribute
instance-attribute
¶
connection_id: str | None = None
The ID of the VpcLink used for the integration when
connectionType=VPC_LINK and undefined, otherwise.
connection_type
class-attribute
instance-attribute
¶
connection_type: ConnectionType | None = None
The type of the network connection to the integration endpoint. The
valid value is INTERNET for connections through the public routable
internet or VPC_LINK for private connections between API Gateway and a
network load balancer in a VPC. The default value is INTERNET.
content_handling
class-attribute
instance-attribute
¶
content_handling: ContentHandlingStrategy | None = None
Specifies how to handle request payload content type conversions.
Supported values are CONVERT_TO_BINARY and CONVERT_TO_TEXT, with the
following behaviors:
If this property is not defined, the request payload will be passed
through from the method request to integration request without
modification, provided that the passthroughBehavior is configured to
support payload pass-through.
credentials
class-attribute
instance-attribute
¶
credentials: str | None = None
Specifies the credentials required for the integration, if any. For AWS
integrations, three options are available. To specify an IAM Role for
API Gateway to assume, use the role's Amazon Resource Name (ARN). To
require that the caller's identity be passed through from the request,
specify the string arn:aws:iam::*:user/*. To use resource-based
permissions on supported Amazon Web Services services, specify null.
http_method
class-attribute
instance-attribute
¶
http_method: str | None = None
Specifies the integration's HTTP method type. For the Type property, if
you specify MOCK, this property is optional. For Lambda integrations,
you must set the integration method to POST. For all other types, you
must specify this property.
integration_responses
class-attribute
instance-attribute
¶
integration_responses: dict[str, IntegrationResponse] | None = None
Specifies the integration's responses.
integration_target
class-attribute
instance-attribute
¶
integration_target: str | None = None
The ALB or NLB listener to send the request to.
passthrough_behavior
class-attribute
instance-attribute
¶
passthrough_behavior: str | None = None
Specifies how the method request body of an unmapped content type will
be passed through the integration request to the back end without
transformation. A content type is unmapped if no mapping template is
defined in the integration or the content type does not match any of the
mapped content types, as specified in requestTemplates. The valid
value is one of the following: WHEN_NO_MATCH: passes the method
request body through the integration request to the back end without
transformation when the method request content type does not match any
content type associated with the mapping templates defined in the
integration request. WHEN_NO_TEMPLATES: passes the method request body
through the integration request to the back end without transformation
when no mapping template is defined in the integration request. If a
template is defined when this option is selected, the method request of
an unmapped content-type will be rejected with an HTTP 415 Unsupported
Media Type response. NEVER: rejects the method request with an HTTP
415 Unsupported Media Type response when either the method request
content type does not match any content type associated with the mapping
templates defined in the integration request or no mapping template is
defined in the integration request.
request_parameters
class-attribute
instance-attribute
¶
request_parameters: dict[str, str] | None = None
A key-value map specifying request parameters that are passed from the
method request to the back end. The key is an integration request
parameter name and the associated value is a method request parameter
value or static value that must be enclosed within single quotes and
pre-encoded as required by the back end. The method request parameter
value must match the pattern of method.request.{location}.{name},
where location is querystring, path, or header and name must
be a valid and unique method request parameter name.
request_templates
class-attribute
instance-attribute
¶
request_templates: dict[str, str] | None = None
Represents a map of Velocity templates that are applied on the request payload based on the value of the Content-Type header sent by the client. The content type value is the key in this map, and the template (as a String) is the value.
response_transfer_mode
class-attribute
instance-attribute
¶
response_transfer_mode: ResponseTransferMode | None = None
The response transfer mode of the integration.
timeout_in_millis
class-attribute
instance-attribute
¶
timeout_in_millis: int = 0
Custom timeout between 50 and 29,000 milliseconds. The default value is 29,000 milliseconds or 29 seconds. You can increase the default value to longer than 29 seconds for Regional or private APIs only.
tls_config
class-attribute
instance-attribute
¶
tls_config: TlsConfig | None = None
Specifies the TLS configuration for an integration.
type
class-attribute
instance-attribute
¶
type: IntegrationType | None = None
Specifies an API method integration type. The valid value is one of the following:
For the HTTP and HTTP proxy integrations, each integration can specify a
protocol (http/https), port and path. Standard 80 and 443 ports are
supported as well as custom ports above 1024. An HTTP or HTTP proxy
integration with a connectionType of VPC_LINK is referred to as a
private integration and uses a VpcLink to connect API Gateway to a
network load balancer of a VPC.
uri
class-attribute
instance-attribute
¶
uri: str | None = None
Specifies Uniform Resource Identifier (URI) of the integration endpoint.
For HTTP or HTTP_PROXY integrations, the URI must be a fully formed,
encoded HTTP(S) URL according to the RFC-3986 specification for standard
integrations. If connectionType is VPC_LINK specify the Network Load
Balancer DNS name. For AWS or AWS_PROXY integrations, the URI is of
the form
arn:aws:apigateway:{region}:{subdomain.service|service}:path|action/{service_api}.
Here, {Region} is the API Gateway region (e.g., us-east-1); {service} is
the name of the integrated Amazon Web Services service (e.g., s3); and
{subdomain} is a designated subdomain supported by certain Amazon Web
Services service for fast host-name lookup. action can be used for an
Amazon Web Services service action-based API, using an
Action={name}&{p1}={v1}&p2={v2}... query string. The ensuing
{service_api} refers to a supported action {name} plus any required
input parameters. Alternatively, path can be used for an Amazon Web
Services service path-based API. The ensuing service_api refers to the
path to an Amazon Web Services service resource, including the region of
the integrated Amazon Web Services service, if applicable. For example,
for integration with the S3 API of GetObject, the uri can be either
arn:aws:apigateway:us-west-2:s3:action/GetObject&Bucket={bucket}&Key={key}
or arn:aws:apigateway:us-west-2:s3:path/{bucket}/{key}