Struct aws_sdk_apigateway::client::fluent_builders::PutIntegration [−][src]
pub struct PutIntegration<C = DynConnector, M = DefaultMiddleware, R = Standard> { /* fields omitted */ }
Expand description
Fluent builder constructing a request to PutIntegration
.
Sets up a method's integration.
Implementations
impl<C, M, R> PutIntegration<C, M, R> where
C: SmithyConnector,
M: SmithyMiddleware<C>,
R: NewRequestPolicy,
impl<C, M, R> PutIntegration<C, M, R> where
C: SmithyConnector,
M: SmithyMiddleware<C>,
R: NewRequestPolicy,
pub async fn send(
self
) -> Result<PutIntegrationOutput, SdkError<PutIntegrationError>> where
R::Policy: SmithyRetryPolicy<PutIntegrationInputOperationOutputAlias, PutIntegrationOutput, PutIntegrationError, PutIntegrationInputOperationRetryAlias>,
pub async fn send(
self
) -> Result<PutIntegrationOutput, SdkError<PutIntegrationError>> where
R::Policy: SmithyRetryPolicy<PutIntegrationInputOperationOutputAlias, PutIntegrationOutput, PutIntegrationError, PutIntegrationInputOperationRetryAlias>,
Sends the request and returns the response.
If an error occurs, an SdkError
will be returned with additional details that
can be matched against.
By default, any retryable failures will be retried twice. Retry behavior is configurable with the RetryConfig, which can be set when configuring the client.
[Required] The string identifier of the associated RestApi
.
[Required] The string identifier of the associated RestApi
.
[Required] Specifies a put integration request's resource ID.
[Required] Specifies a put integration request's resource ID.
[Required] Specifies a put integration request's HTTP method.
[Required] Specifies a put integration request's HTTP method.
[Required] Specifies a put integration input's type.
[Required] Specifies a put integration input's type.
Specifies a put integration HTTP method. When the integration type is HTTP or AWS, this field is required.
Specifies a put integration HTTP method. When the integration type is HTTP or AWS, this field is required.
Specifies Uniform Resource Identifier (URI) of the integration endpoint.
For
HTTP
orHTTP_PROXY
integrations, the URI must be a fully formed, encoded HTTP(S) URL according to the RFC-3986 specification, for either standard integration, whereconnectionType
is notVPC_LINK
, or private integration, whereconnectionType
isVPC_LINK
. For a private HTTP integration, the URI is not used for routing.For
AWS
orAWS_PROXY
integrations, the URI is of the formarn: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 AWS service (e.g.,s3
); and{subdomain}
is a designated subdomain supported by certain AWS service for fast host-name lookup.action
can be used for an AWS service action-based API, using anAction={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 AWS service path-based API. The ensuingservice_api
refers to the path to an AWS service resource, including the region of the integrated AWS service, if applicable. For example, for integration with the S3 API ofGetObject
, theuri
can be eitherarn:aws:apigateway:us-west-2:s3:action/GetObject&Bucket={bucket}&Key={key}
orarn:aws:apigateway:us-west-2:s3:path/{bucket}/{key}
Specifies Uniform Resource Identifier (URI) of the integration endpoint.
For
HTTP
orHTTP_PROXY
integrations, the URI must be a fully formed, encoded HTTP(S) URL according to the RFC-3986 specification, for either standard integration, whereconnectionType
is notVPC_LINK
, or private integration, whereconnectionType
isVPC_LINK
. For a private HTTP integration, the URI is not used for routing.For
AWS
orAWS_PROXY
integrations, the URI is of the formarn: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 AWS service (e.g.,s3
); and{subdomain}
is a designated subdomain supported by certain AWS service for fast host-name lookup.action
can be used for an AWS service action-based API, using anAction={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 AWS service path-based API. The ensuingservice_api
refers to the path to an AWS service resource, including the region of the integrated AWS service, if applicable. For example, for integration with the S3 API ofGetObject
, theuri
can be eitherarn:aws:apigateway:us-west-2:s3:action/GetObject&Bucket={bucket}&Key={key}
orarn:aws:apigateway:us-west-2:s3:path/{bucket}/{key}
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
.
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
.
The (id
) of the VpcLink
used for the integration when connectionType=VPC_LINK
and undefined, otherwise.
The (id
) of the VpcLink
used for the integration when connectionType=VPC_LINK
and undefined, otherwise.
Specifies whether credentials are required for a put integration.
Specifies whether credentials are required for a put integration.
Adds a key-value pair to requestParameters
.
To override the contents of this collection use set_request_parameters
.
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.
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.
Adds a key-value pair to requestTemplates
.
To override the contents of this collection use set_request_templates
.
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.
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.
Specifies the pass-through behavior for incoming requests based on the Content-Type header in the request, and the available mapping templates specified as the requestTemplates
property on the Integration resource. There are three valid values: WHEN_NO_MATCH
, WHEN_NO_TEMPLATES
, and NEVER
.
WHEN_NO_MATCH
passes the request body for unmapped content types through to the integration back end without transformation.NEVER
rejects unmapped content types with an HTTP 415 'Unsupported Media Type' response.WHEN_NO_TEMPLATES
allows pass-through when the integration has NO content types mapped to templates. However if there is at least one content type defined, unmapped content types will be rejected with the same 415 response.
Specifies the pass-through behavior for incoming requests based on the Content-Type header in the request, and the available mapping templates specified as the requestTemplates
property on the Integration resource. There are three valid values: WHEN_NO_MATCH
, WHEN_NO_TEMPLATES
, and NEVER
.
WHEN_NO_MATCH
passes the request body for unmapped content types through to the integration back end without transformation.NEVER
rejects unmapped content types with an HTTP 415 'Unsupported Media Type' response.WHEN_NO_TEMPLATES
allows pass-through when the integration has NO content types mapped to templates. However if there is at least one content type defined, unmapped content types will be rejected with the same 415 response.
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.
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.
Appends an item to cacheKeyParameters
.
To override the contents of this collection use set_cache_key_parameters
.
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
.
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
.
Specifies how to handle request payload content type conversions. Supported values are CONVERT_TO_BINARY
and CONVERT_TO_TEXT
, with the following behaviors:
CONVERT_TO_BINARY
: Converts a request payload from a Base64-encoded string to the corresponding binary blob.CONVERT_TO_TEXT
: Converts a request payload from a binary blob to a Base64-encoded string.
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.
Specifies how to handle request payload content type conversions. Supported values are CONVERT_TO_BINARY
and CONVERT_TO_TEXT
, with the following behaviors:
CONVERT_TO_BINARY
: Converts a request payload from a Base64-encoded string to the corresponding binary blob.CONVERT_TO_TEXT
: Converts a request payload from a binary blob to a Base64-encoded string.
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.
Custom timeout between 50 and 29,000 milliseconds. The default value is 29,000 milliseconds or 29 seconds.
Custom timeout between 50 and 29,000 milliseconds. The default value is 29,000 milliseconds or 29 seconds.
Trait Implementations
Auto Trait Implementations
impl<C = DynConnector, M = DefaultMiddleware, R = Standard> !RefUnwindSafe for PutIntegration<C, M, R>
impl<C, M, R> Send for PutIntegration<C, M, R> where
C: Send + Sync,
M: Send + Sync,
R: Send + Sync,
impl<C, M, R> Sync for PutIntegration<C, M, R> where
C: Send + Sync,
M: Send + Sync,
R: Send + Sync,
impl<C, M, R> Unpin for PutIntegration<C, M, R>
impl<C = DynConnector, M = DefaultMiddleware, R = Standard> !UnwindSafe for PutIntegration<C, M, R>
Blanket Implementations
Mutably borrows from an owned value. Read more
Attaches the provided Subscriber
to this type, returning a
WithDispatch
wrapper. Read more
Attaches the current default Subscriber
to this type, returning a
WithDispatch
wrapper. Read more