Struct aws_sdk_apigateway::client::Client

source ·
pub struct Client { /* private fields */ }
Expand description

Client for Amazon API Gateway

Client for invoking operations on Amazon API Gateway. Each operation on Amazon API Gateway is a method on this this struct. .send() MUST be invoked on the generated operations to dispatch the request to the service.

§Constructing a Client

A Config is required to construct a client. For most use cases, the aws-config crate should be used to automatically resolve this config using aws_config::load_from_env(), since this will resolve an SdkConfig which can be shared across multiple different AWS SDK clients. This config resolution process can be customized by calling aws_config::from_env() instead, which returns a ConfigLoader that uses the builder pattern to customize the default config.

In the simplest case, creating a client looks as follows:

let config = aws_config::load_from_env().await;
let client = aws_sdk_apigateway::Client::new(&config);

Occasionally, SDKs may have additional service-specific values that can be set on the Config that is absent from SdkConfig, or slightly different settings for a specific client may be desired. The Config struct implements From<&SdkConfig>, so setting these specific settings can be done as follows:

let sdk_config = ::aws_config::load_from_env().await;
let config = aws_sdk_apigateway::config::Builder::from(&sdk_config)
    .some_service_specific_setting("value")
    .build();

See the aws-config docs and Config for more information on customizing configuration.

Note: Client construction is expensive due to connection thread pool initialization, and should be done once at application start-up.

§Using the Client

A client has a function for every operation that can be performed by the service. For example, the CreateApiKey operation has a Client::create_api_key, function which returns a builder for that operation. The fluent builder ultimately has a send() function that returns an async future that returns a result, as illustrated below:

let result = client.create_api_key()
    .name("example")
    .send()
    .await;

The underlying HTTP requests that get made by this can be modified with the customize_operation function on the fluent builder. See the customize module for more information.

Implementations§

source§

impl Client

source

pub fn create_api_key(&self) -> CreateApiKeyFluentBuilder

Constructs a fluent builder for the CreateApiKey operation.

source§

impl Client

source

pub fn create_authorizer(&self) -> CreateAuthorizerFluentBuilder

Constructs a fluent builder for the CreateAuthorizer operation.

  • The fluent builder is configurable:
    • rest_api_id(impl Into<String>) / set_rest_api_id(Option<String>):
      required: true

      The string identifier of the associated RestApi.


    • name(impl Into<String>) / set_name(Option<String>):
      required: true

      The name of the authorizer.


    • r#type(AuthorizerType) / set_type(Option<AuthorizerType>):
      required: true

      The authorizer type. Valid values are TOKEN for a Lambda function using a single authorization token submitted in a custom header, REQUEST for a Lambda function using incoming request parameters, and COGNITO_USER_POOLS for using an Amazon Cognito user pool.


    • provider_arns(impl Into<String>) / set_provider_arns(Option<Vec::<String>>):
      required: false

      A list of the Amazon Cognito user pool ARNs for the COGNITO_USER_POOLS authorizer. Each element is of this format: arn:aws:cognito-idp:{region}:{account_id}:userpool/{user_pool_id}. For a TOKEN or REQUEST authorizer, this is not defined.


    • auth_type(impl Into<String>) / set_auth_type(Option<String>):
      required: false

      Optional customer-defined field, used in OpenAPI imports and exports without functional impact.


    • authorizer_uri(impl Into<String>) / set_authorizer_uri(Option<String>):
      required: false

      Specifies the authorizer’s Uniform Resource Identifier (URI). For TOKEN or REQUEST authorizers, this must be a well-formed Lambda function URI, for example, arn:aws:apigateway:us-west-2:lambda:path/2015-03-31/functions/arn:aws:lambda:us-west-2:{account_id}:function:{lambda_function_name}/invocations. In general, the URI has this form arn:aws:apigateway:{region}:lambda:path/{service_api}, where {region} is the same as the region hosting the Lambda function, path indicates that the remaining substring in the URI should be treated as the path to the resource, including the initial /. For Lambda functions, this is usually of the form /2015-03-31/functions/[FunctionARN]/invocations.


    • authorizer_credentials(impl Into<String>) / set_authorizer_credentials(Option<String>):
      required: false

      Specifies the required credentials as an IAM role for API Gateway to invoke the authorizer. To specify an IAM role for API Gateway to assume, use the role’s Amazon Resource Name (ARN). To use resource-based permissions on the Lambda function, specify null.


    • identity_source(impl Into<String>) / set_identity_source(Option<String>):
      required: false

      The identity source for which authorization is requested. For a TOKEN or COGNITO_USER_POOLS authorizer, this is required and specifies the request header mapping expression for the custom header holding the authorization token submitted by the client. For example, if the token header name is Auth, the header mapping expression is method.request.header.Auth. For the REQUEST authorizer, this is required when authorization caching is enabled. The value is a comma-separated string of one or more mapping expressions of the specified request parameters. For example, if an Auth header, a Name query string parameter are defined as identity sources, this value is method.request.header.Auth, method.request.querystring.Name. These parameters will be used to derive the authorization caching key and to perform runtime validation of the REQUEST authorizer by verifying all of the identity-related request parameters are present, not null and non-empty. Only when this is true does the authorizer invoke the authorizer Lambda function, otherwise, it returns a 401 Unauthorized response without calling the Lambda function. The valid value is a string of comma-separated mapping expressions of the specified request parameters. When the authorization caching is not enabled, this property is optional.


    • identity_validation_expression(impl Into<String>) / set_identity_validation_expression(Option<String>):
      required: false

      A validation expression for the incoming identity token. For TOKEN authorizers, this value is a regular expression. For COGNITO_USER_POOLS authorizers, API Gateway will match the aud field of the incoming token from the client against the specified regular expression. It will invoke the authorizer’s Lambda function when there is a match. Otherwise, it will return a 401 Unauthorized response without calling the Lambda function. The validation expression does not apply to the REQUEST authorizer.


    • authorizer_result_ttl_in_seconds(i32) / set_authorizer_result_ttl_in_seconds(Option<i32>):
      required: false

      The TTL in seconds of cached authorizer results. If it equals 0, authorization caching is disabled. If it is greater than 0, API Gateway will cache authorizer responses. If this field is not set, the default value is 300. The maximum value is 3600, or 1 hour.


  • On success, responds with CreateAuthorizerOutput with field(s):
    • id(Option<String>):

      The identifier for the authorizer resource.

    • name(Option<String>):

      The name of the authorizer.

    • r#type(Option<AuthorizerType>):

      The authorizer type. Valid values are TOKEN for a Lambda function using a single authorization token submitted in a custom header, REQUEST for a Lambda function using incoming request parameters, and COGNITO_USER_POOLS for using an Amazon Cognito user pool.

    • provider_arns(Option<Vec::<String>>):

      A list of the Amazon Cognito user pool ARNs for the COGNITO_USER_POOLS authorizer. Each element is of this format: arn:aws:cognito-idp:{region}:{account_id}:userpool/{user_pool_id}. For a TOKEN or REQUEST authorizer, this is not defined.

    • auth_type(Option<String>):

      Optional customer-defined field, used in OpenAPI imports and exports without functional impact.

    • authorizer_uri(Option<String>):

      Specifies the authorizer’s Uniform Resource Identifier (URI). For TOKEN or REQUEST authorizers, this must be a well-formed Lambda function URI, for example, arn:aws:apigateway:us-west-2:lambda:path/2015-03-31/functions/arn:aws:lambda:us-west-2:{account_id}:function:{lambda_function_name}/invocations. In general, the URI has this form arn:aws:apigateway:{region}:lambda:path/{service_api}, where {region} is the same as the region hosting the Lambda function, path indicates that the remaining substring in the URI should be treated as the path to the resource, including the initial /. For Lambda functions, this is usually of the form /2015-03-31/functions/[FunctionARN]/invocations.

    • authorizer_credentials(Option<String>):

      Specifies the required credentials as an IAM role for API Gateway to invoke the authorizer. To specify an IAM role for API Gateway to assume, use the role’s Amazon Resource Name (ARN). To use resource-based permissions on the Lambda function, specify null.

    • identity_source(Option<String>):

      The identity source for which authorization is requested. For a TOKEN or COGNITO_USER_POOLS authorizer, this is required and specifies the request header mapping expression for the custom header holding the authorization token submitted by the client. For example, if the token header name is Auth, the header mapping expression is method.request.header.Auth. For the REQUEST authorizer, this is required when authorization caching is enabled. The value is a comma-separated string of one or more mapping expressions of the specified request parameters. For example, if an Auth header, a Name query string parameter are defined as identity sources, this value is method.request.header.Auth, method.request.querystring.Name. These parameters will be used to derive the authorization caching key and to perform runtime validation of the REQUEST authorizer by verifying all of the identity-related request parameters are present, not null and non-empty. Only when this is true does the authorizer invoke the authorizer Lambda function, otherwise, it returns a 401 Unauthorized response without calling the Lambda function. The valid value is a string of comma-separated mapping expressions of the specified request parameters. When the authorization caching is not enabled, this property is optional.

    • identity_validation_expression(Option<String>):

      A validation expression for the incoming identity token. For TOKEN authorizers, this value is a regular expression. For COGNITO_USER_POOLS authorizers, API Gateway will match the aud field of the incoming token from the client against the specified regular expression. It will invoke the authorizer’s Lambda function when there is a match. Otherwise, it will return a 401 Unauthorized response without calling the Lambda function. The validation expression does not apply to the REQUEST authorizer.

    • authorizer_result_ttl_in_seconds(Option<i32>):

      The TTL in seconds of cached authorizer results. If it equals 0, authorization caching is disabled. If it is greater than 0, API Gateway will cache authorizer responses. If this field is not set, the default value is 300. The maximum value is 3600, or 1 hour.

  • On failure, responds with SdkError<CreateAuthorizerError>
source§

impl Client

source

pub fn create_base_path_mapping(&self) -> CreateBasePathMappingFluentBuilder

Constructs a fluent builder for the CreateBasePathMapping operation.

source§

impl Client

source

pub fn create_deployment(&self) -> CreateDeploymentFluentBuilder

Constructs a fluent builder for the CreateDeployment operation.

source§

impl Client

source

pub fn create_documentation_part(&self) -> CreateDocumentationPartFluentBuilder

Constructs a fluent builder for the CreateDocumentationPart operation.

source§

impl Client

source

pub fn create_documentation_version( &self ) -> CreateDocumentationVersionFluentBuilder

Constructs a fluent builder for the CreateDocumentationVersion operation.

source§

impl Client

source

pub fn create_domain_name(&self) -> CreateDomainNameFluentBuilder

Constructs a fluent builder for the CreateDomainName operation.

source§

impl Client

source

pub fn create_model(&self) -> CreateModelFluentBuilder

Constructs a fluent builder for the CreateModel operation.

source§

impl Client

source

pub fn create_request_validator(&self) -> CreateRequestValidatorFluentBuilder

Constructs a fluent builder for the CreateRequestValidator operation.

source§

impl Client

source

pub fn create_resource(&self) -> CreateResourceFluentBuilder

Constructs a fluent builder for the CreateResource operation.

source§

impl Client

source

pub fn create_rest_api(&self) -> CreateRestApiFluentBuilder

Constructs a fluent builder for the CreateRestApi operation.

source§

impl Client

source

pub fn create_stage(&self) -> CreateStageFluentBuilder

Constructs a fluent builder for the CreateStage operation.

source§

impl Client

source

pub fn create_usage_plan(&self) -> CreateUsagePlanFluentBuilder

Constructs a fluent builder for the CreateUsagePlan operation.

source§

impl Client

source

pub fn create_usage_plan_key(&self) -> CreateUsagePlanKeyFluentBuilder

Constructs a fluent builder for the CreateUsagePlanKey operation.

source§

impl Client

Constructs a fluent builder for the CreateVpcLink operation.

source§

impl Client

source

pub fn delete_api_key(&self) -> DeleteApiKeyFluentBuilder

Constructs a fluent builder for the DeleteApiKey operation.

source§

impl Client

source

pub fn delete_authorizer(&self) -> DeleteAuthorizerFluentBuilder

Constructs a fluent builder for the DeleteAuthorizer operation.

source§

impl Client

source

pub fn delete_base_path_mapping(&self) -> DeleteBasePathMappingFluentBuilder

Constructs a fluent builder for the DeleteBasePathMapping operation.

source§

impl Client

source

pub fn delete_client_certificate(&self) -> DeleteClientCertificateFluentBuilder

Constructs a fluent builder for the DeleteClientCertificate operation.

source§

impl Client

source

pub fn delete_deployment(&self) -> DeleteDeploymentFluentBuilder

Constructs a fluent builder for the DeleteDeployment operation.

source§

impl Client

source

pub fn delete_documentation_part(&self) -> DeleteDocumentationPartFluentBuilder

Constructs a fluent builder for the DeleteDocumentationPart operation.

source§

impl Client

source

pub fn delete_documentation_version( &self ) -> DeleteDocumentationVersionFluentBuilder

Constructs a fluent builder for the DeleteDocumentationVersion operation.

source§

impl Client

source

pub fn delete_domain_name(&self) -> DeleteDomainNameFluentBuilder

Constructs a fluent builder for the DeleteDomainName operation.

source§

impl Client

source

pub fn delete_gateway_response(&self) -> DeleteGatewayResponseFluentBuilder

Constructs a fluent builder for the DeleteGatewayResponse operation.

source§

impl Client

source

pub fn delete_integration(&self) -> DeleteIntegrationFluentBuilder

Constructs a fluent builder for the DeleteIntegration operation.

source§

impl Client

source

pub fn delete_integration_response( &self ) -> DeleteIntegrationResponseFluentBuilder

Constructs a fluent builder for the DeleteIntegrationResponse operation.

source§

impl Client

source

pub fn delete_method(&self) -> DeleteMethodFluentBuilder

Constructs a fluent builder for the DeleteMethod operation.

source§

impl Client

source

pub fn delete_method_response(&self) -> DeleteMethodResponseFluentBuilder

Constructs a fluent builder for the DeleteMethodResponse operation.

source§

impl Client

source

pub fn delete_model(&self) -> DeleteModelFluentBuilder

Constructs a fluent builder for the DeleteModel operation.

source§

impl Client

source

pub fn delete_request_validator(&self) -> DeleteRequestValidatorFluentBuilder

Constructs a fluent builder for the DeleteRequestValidator operation.

source§

impl Client

source

pub fn delete_resource(&self) -> DeleteResourceFluentBuilder

Constructs a fluent builder for the DeleteResource operation.

source§

impl Client

source

pub fn delete_rest_api(&self) -> DeleteRestApiFluentBuilder

Constructs a fluent builder for the DeleteRestApi operation.

source§

impl Client

source

pub fn delete_stage(&self) -> DeleteStageFluentBuilder

Constructs a fluent builder for the DeleteStage operation.

source§

impl Client

source

pub fn delete_usage_plan(&self) -> DeleteUsagePlanFluentBuilder

Constructs a fluent builder for the DeleteUsagePlan operation.

source§

impl Client

source

pub fn delete_usage_plan_key(&self) -> DeleteUsagePlanKeyFluentBuilder

Constructs a fluent builder for the DeleteUsagePlanKey operation.

source§

impl Client

Constructs a fluent builder for the DeleteVpcLink operation.

source§

impl Client

source

pub fn flush_stage_authorizers_cache( &self ) -> FlushStageAuthorizersCacheFluentBuilder

Constructs a fluent builder for the FlushStageAuthorizersCache operation.

source§

impl Client

source

pub fn flush_stage_cache(&self) -> FlushStageCacheFluentBuilder

Constructs a fluent builder for the FlushStageCache operation.

source§

impl Client

source

pub fn generate_client_certificate( &self ) -> GenerateClientCertificateFluentBuilder

Constructs a fluent builder for the GenerateClientCertificate operation.

source§

impl Client

source

pub fn get_account(&self) -> GetAccountFluentBuilder

Constructs a fluent builder for the GetAccount operation.

source§

impl Client

source

pub fn get_api_key(&self) -> GetApiKeyFluentBuilder

Constructs a fluent builder for the GetApiKey operation.

source§

impl Client

source

pub fn get_api_keys(&self) -> GetApiKeysFluentBuilder

Constructs a fluent builder for the GetApiKeys operation. This operation supports pagination; See into_paginator().

source§

impl Client

source

pub fn get_authorizer(&self) -> GetAuthorizerFluentBuilder

Constructs a fluent builder for the GetAuthorizer operation.

  • The fluent builder is configurable:
  • On success, responds with GetAuthorizerOutput with field(s):
    • id(Option<String>):

      The identifier for the authorizer resource.

    • name(Option<String>):

      The name of the authorizer.

    • r#type(Option<AuthorizerType>):

      The authorizer type. Valid values are TOKEN for a Lambda function using a single authorization token submitted in a custom header, REQUEST for a Lambda function using incoming request parameters, and COGNITO_USER_POOLS for using an Amazon Cognito user pool.

    • provider_arns(Option<Vec::<String>>):

      A list of the Amazon Cognito user pool ARNs for the COGNITO_USER_POOLS authorizer. Each element is of this format: arn:aws:cognito-idp:{region}:{account_id}:userpool/{user_pool_id}. For a TOKEN or REQUEST authorizer, this is not defined.

    • auth_type(Option<String>):

      Optional customer-defined field, used in OpenAPI imports and exports without functional impact.

    • authorizer_uri(Option<String>):

      Specifies the authorizer’s Uniform Resource Identifier (URI). For TOKEN or REQUEST authorizers, this must be a well-formed Lambda function URI, for example, arn:aws:apigateway:us-west-2:lambda:path/2015-03-31/functions/arn:aws:lambda:us-west-2:{account_id}:function:{lambda_function_name}/invocations. In general, the URI has this form arn:aws:apigateway:{region}:lambda:path/{service_api}, where {region} is the same as the region hosting the Lambda function, path indicates that the remaining substring in the URI should be treated as the path to the resource, including the initial /. For Lambda functions, this is usually of the form /2015-03-31/functions/[FunctionARN]/invocations.

    • authorizer_credentials(Option<String>):

      Specifies the required credentials as an IAM role for API Gateway to invoke the authorizer. To specify an IAM role for API Gateway to assume, use the role’s Amazon Resource Name (ARN). To use resource-based permissions on the Lambda function, specify null.

    • identity_source(Option<String>):

      The identity source for which authorization is requested. For a TOKEN or COGNITO_USER_POOLS authorizer, this is required and specifies the request header mapping expression for the custom header holding the authorization token submitted by the client. For example, if the token header name is Auth, the header mapping expression is method.request.header.Auth. For the REQUEST authorizer, this is required when authorization caching is enabled. The value is a comma-separated string of one or more mapping expressions of the specified request parameters. For example, if an Auth header, a Name query string parameter are defined as identity sources, this value is method.request.header.Auth, method.request.querystring.Name. These parameters will be used to derive the authorization caching key and to perform runtime validation of the REQUEST authorizer by verifying all of the identity-related request parameters are present, not null and non-empty. Only when this is true does the authorizer invoke the authorizer Lambda function, otherwise, it returns a 401 Unauthorized response without calling the Lambda function. The valid value is a string of comma-separated mapping expressions of the specified request parameters. When the authorization caching is not enabled, this property is optional.

    • identity_validation_expression(Option<String>):

      A validation expression for the incoming identity token. For TOKEN authorizers, this value is a regular expression. For COGNITO_USER_POOLS authorizers, API Gateway will match the aud field of the incoming token from the client against the specified regular expression. It will invoke the authorizer’s Lambda function when there is a match. Otherwise, it will return a 401 Unauthorized response without calling the Lambda function. The validation expression does not apply to the REQUEST authorizer.

    • authorizer_result_ttl_in_seconds(Option<i32>):

      The TTL in seconds of cached authorizer results. If it equals 0, authorization caching is disabled. If it is greater than 0, API Gateway will cache authorizer responses. If this field is not set, the default value is 300. The maximum value is 3600, or 1 hour.

  • On failure, responds with SdkError<GetAuthorizerError>
source§

impl Client

source

pub fn get_authorizers(&self) -> GetAuthorizersFluentBuilder

Constructs a fluent builder for the GetAuthorizers operation.

source§

impl Client

source

pub fn get_base_path_mapping(&self) -> GetBasePathMappingFluentBuilder

Constructs a fluent builder for the GetBasePathMapping operation.

source§

impl Client

source

pub fn get_base_path_mappings(&self) -> GetBasePathMappingsFluentBuilder

Constructs a fluent builder for the GetBasePathMappings operation. This operation supports pagination; See into_paginator().

source§

impl Client

source

pub fn get_client_certificate(&self) -> GetClientCertificateFluentBuilder

Constructs a fluent builder for the GetClientCertificate operation.

source§

impl Client

source

pub fn get_client_certificates(&self) -> GetClientCertificatesFluentBuilder

Constructs a fluent builder for the GetClientCertificates operation. This operation supports pagination; See into_paginator().

source§

impl Client

source

pub fn get_deployment(&self) -> GetDeploymentFluentBuilder

Constructs a fluent builder for the GetDeployment operation.

source§

impl Client

source

pub fn get_deployments(&self) -> GetDeploymentsFluentBuilder

Constructs a fluent builder for the GetDeployments operation. This operation supports pagination; See into_paginator().

source§

impl Client

source

pub fn get_documentation_part(&self) -> GetDocumentationPartFluentBuilder

Constructs a fluent builder for the GetDocumentationPart operation.

source§

impl Client

source

pub fn get_documentation_parts(&self) -> GetDocumentationPartsFluentBuilder

Constructs a fluent builder for the GetDocumentationParts operation.

source§

impl Client

source

pub fn get_documentation_version(&self) -> GetDocumentationVersionFluentBuilder

Constructs a fluent builder for the GetDocumentationVersion operation.

source§

impl Client

source

pub fn get_documentation_versions( &self ) -> GetDocumentationVersionsFluentBuilder

Constructs a fluent builder for the GetDocumentationVersions operation.

source§

impl Client

source

pub fn get_domain_name(&self) -> GetDomainNameFluentBuilder

Constructs a fluent builder for the GetDomainName operation.

source§

impl Client

source

pub fn get_domain_names(&self) -> GetDomainNamesFluentBuilder

Constructs a fluent builder for the GetDomainNames operation. This operation supports pagination; See into_paginator().

source§

impl Client

source

pub fn get_export(&self) -> GetExportFluentBuilder

Constructs a fluent builder for the GetExport operation.

source§

impl Client

source

pub fn get_gateway_response(&self) -> GetGatewayResponseFluentBuilder

Constructs a fluent builder for the GetGatewayResponse operation.

source§

impl Client

source

pub fn get_gateway_responses(&self) -> GetGatewayResponsesFluentBuilder

Constructs a fluent builder for the GetGatewayResponses operation.

source§

impl Client

source

pub fn get_integration(&self) -> GetIntegrationFluentBuilder

Constructs a fluent builder for the GetIntegration operation.

  • The fluent builder is configurable:
  • On success, responds with GetIntegrationOutput with field(s):
    • r#type(Option<IntegrationType>):

      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.

    • http_method(Option<String>):

      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.

    • uri(Option<String>):

      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}

    • connection_type(Option<ConnectionType>):

      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.

    • connection_id(Option<String>):

      The ID of the VpcLink used for the integration when connectionType=VPC_LINK and undefined, otherwise.

    • credentials(Option<String>):

      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.

    • request_parameters(Option<HashMap::<String, String>>):

      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(Option<HashMap::<String, String>>):

      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.

    • passthrough_behavior(Option<String>):

      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.

    • content_handling(Option<ContentHandlingStrategy>):

      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.

    • timeout_in_millis(i32):

      Custom timeout between 50 and 29,000 milliseconds. The default value is 29,000 milliseconds or 29 seconds.

    • cache_namespace(Option<String>):

      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.

    • cache_key_parameters(Option<Vec::<String>>):

      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.

    • integration_responses(Option<HashMap::<String, IntegrationResponse>>):

      Specifies the integration’s responses.

    • tls_config(Option<TlsConfig>):

      Specifies the TLS configuration for an integration.

  • On failure, responds with SdkError<GetIntegrationError>
source§

impl Client

source

pub fn get_integration_response(&self) -> GetIntegrationResponseFluentBuilder

Constructs a fluent builder for the GetIntegrationResponse operation.

  • The fluent builder is configurable:
  • On success, responds with GetIntegrationResponseOutput with field(s):
    • status_code(Option<String>):

      Specifies the status code that is used to map the integration response to an existing MethodResponse.

    • selection_pattern(Option<String>):

      Specifies the regular expression (regex) pattern used to choose an integration response based on the response from the back end. For example, if the success response returns nothing and the error response returns some string, you could use the .+ regex to match error response. However, make sure that the error response does not contain any newline (\n) character in such cases. If the back end is an Lambda function, the Lambda function error header is matched. For all other HTTP and Amazon Web Services back ends, the HTTP status code is matched.

    • response_parameters(Option<HashMap::<String, String>>):

      A key-value map specifying response parameters that are passed to the method response from the back end. The key is a method response header parameter name and the mapped value is an integration response header value, a static value enclosed within a pair of single quotes, or a JSON expression from the integration response body. The mapping key must match the pattern of method.response.header.{name}, where name is a valid and unique header name. The mapped non-static value must match the pattern of integration.response.header.{name} or integration.response.body.{JSON-expression}, where name is a valid and unique response header name and JSON-expression is a valid JSON expression without the $ prefix.

    • response_templates(Option<HashMap::<String, String>>):

      Specifies the templates used to transform the integration response body. Response templates are represented as a key/value map, with a content-type as the key and a template as the value.

    • content_handling(Option<ContentHandlingStrategy>):

      Specifies how to handle response 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 response payload will be passed through from the integration response to the method response without modification.

  • On failure, responds with SdkError<GetIntegrationResponseError>
source§

impl Client

source

pub fn get_method(&self) -> GetMethodFluentBuilder

Constructs a fluent builder for the GetMethod operation.

source§

impl Client

source

pub fn get_method_response(&self) -> GetMethodResponseFluentBuilder

Constructs a fluent builder for the GetMethodResponse operation.

source§

impl Client

source

pub fn get_model(&self) -> GetModelFluentBuilder

Constructs a fluent builder for the GetModel operation.

source§

impl Client

source

pub fn get_model_template(&self) -> GetModelTemplateFluentBuilder

Constructs a fluent builder for the GetModelTemplate operation.

source§

impl Client

source

pub fn get_models(&self) -> GetModelsFluentBuilder

Constructs a fluent builder for the GetModels operation. This operation supports pagination; See into_paginator().

source§

impl Client

source

pub fn get_request_validator(&self) -> GetRequestValidatorFluentBuilder

Constructs a fluent builder for the GetRequestValidator operation.

source§

impl Client

source

pub fn get_request_validators(&self) -> GetRequestValidatorsFluentBuilder

Constructs a fluent builder for the GetRequestValidators operation.

source§

impl Client

source

pub fn get_resource(&self) -> GetResourceFluentBuilder

Constructs a fluent builder for the GetResource operation.

source§

impl Client

source

pub fn get_resources(&self) -> GetResourcesFluentBuilder

Constructs a fluent builder for the GetResources operation. This operation supports pagination; See into_paginator().

source§

impl Client

source

pub fn get_rest_api(&self) -> GetRestApiFluentBuilder

Constructs a fluent builder for the GetRestApi operation.

source§

impl Client

source

pub fn get_rest_apis(&self) -> GetRestApisFluentBuilder

Constructs a fluent builder for the GetRestApis operation. This operation supports pagination; See into_paginator().

source§

impl Client

source

pub fn get_sdk(&self) -> GetSdkFluentBuilder

Constructs a fluent builder for the GetSdk operation.

source§

impl Client

source

pub fn get_sdk_type(&self) -> GetSdkTypeFluentBuilder

Constructs a fluent builder for the GetSdkType operation.

source§

impl Client

source

pub fn get_sdk_types(&self) -> GetSdkTypesFluentBuilder

Constructs a fluent builder for the GetSdkTypes operation.

source§

impl Client

source

pub fn get_stage(&self) -> GetStageFluentBuilder

Constructs a fluent builder for the GetStage operation.

source§

impl Client

source

pub fn get_stages(&self) -> GetStagesFluentBuilder

Constructs a fluent builder for the GetStages operation.

source§

impl Client

source

pub fn get_tags(&self) -> GetTagsFluentBuilder

Constructs a fluent builder for the GetTags operation.

source§

impl Client

source

pub fn get_usage(&self) -> GetUsageFluentBuilder

Constructs a fluent builder for the GetUsage operation. This operation supports pagination; See into_paginator().

source§

impl Client

source

pub fn get_usage_plan(&self) -> GetUsagePlanFluentBuilder

Constructs a fluent builder for the GetUsagePlan operation.

source§

impl Client

source

pub fn get_usage_plan_key(&self) -> GetUsagePlanKeyFluentBuilder

Constructs a fluent builder for the GetUsagePlanKey operation.

source§

impl Client

source

pub fn get_usage_plan_keys(&self) -> GetUsagePlanKeysFluentBuilder

Constructs a fluent builder for the GetUsagePlanKeys operation. This operation supports pagination; See into_paginator().

source§

impl Client

source

pub fn get_usage_plans(&self) -> GetUsagePlansFluentBuilder

Constructs a fluent builder for the GetUsagePlans operation. This operation supports pagination; See into_paginator().

source§

impl Client

Constructs a fluent builder for the GetVpcLink operation.

source§

impl Client

Constructs a fluent builder for the GetVpcLinks operation. This operation supports pagination; See into_paginator().

source§

impl Client

source

pub fn import_api_keys(&self) -> ImportApiKeysFluentBuilder

Constructs a fluent builder for the ImportApiKeys operation.

source§

impl Client

source

pub fn import_documentation_parts( &self ) -> ImportDocumentationPartsFluentBuilder

Constructs a fluent builder for the ImportDocumentationParts operation.

source§

impl Client

source

pub fn import_rest_api(&self) -> ImportRestApiFluentBuilder

Constructs a fluent builder for the ImportRestApi operation.

  • The fluent builder is configurable:
    • fail_on_warnings(bool) / set_fail_on_warnings(Option<bool>):
      required: false

      A query parameter to indicate whether to rollback the API creation (true) or not (false) when a warning is encountered. The default value is false.


    • parameters(impl Into<String>, impl Into<String>) / set_parameters(Option<HashMap::<String, String>>):
      required: false

      A key-value map of context-specific query string parameters specifying the behavior of different API importing operations. The following shows operation-specific parameters and their supported values.

      To exclude DocumentationParts from the import, set parameters as ignore=documentation.

      To configure the endpoint type, set parameters as endpointConfigurationTypes=EDGE, endpointConfigurationTypes=REGIONAL, or endpointConfigurationTypes=PRIVATE. The default endpoint type is EDGE.

      To handle imported basepath, set parameters as basepath=ignore, basepath=prepend or basepath=split.


    • body(Blob) / set_body(Option<Blob>):
      required: true

      The POST request body containing external API definitions. Currently, only OpenAPI definition JSON/YAML files are supported. The maximum size of the API definition file is 6MB.


  • On success, responds with ImportRestApiOutput with field(s):
  • On failure, responds with SdkError<ImportRestApiError>
source§

impl Client

source

pub fn put_gateway_response(&self) -> PutGatewayResponseFluentBuilder

Constructs a fluent builder for the PutGatewayResponse operation.

source§

impl Client

source

pub fn put_integration(&self) -> PutIntegrationFluentBuilder

Constructs a fluent builder for the PutIntegration operation.

  • The fluent builder is configurable:
  • On success, responds with PutIntegrationOutput with field(s):
    • r#type(Option<IntegrationType>):

      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.

    • http_method(Option<String>):

      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.

    • uri(Option<String>):

      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}

    • connection_type(Option<ConnectionType>):

      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.

    • connection_id(Option<String>):

      The ID of the VpcLink used for the integration when connectionType=VPC_LINK and undefined, otherwise.

    • credentials(Option<String>):

      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.

    • request_parameters(Option<HashMap::<String, String>>):

      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(Option<HashMap::<String, String>>):

      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.

    • passthrough_behavior(Option<String>):

      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.

    • content_handling(Option<ContentHandlingStrategy>):

      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.

    • timeout_in_millis(i32):

      Custom timeout between 50 and 29,000 milliseconds. The default value is 29,000 milliseconds or 29 seconds.

    • cache_namespace(Option<String>):

      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.

    • cache_key_parameters(Option<Vec::<String>>):

      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.

    • integration_responses(Option<HashMap::<String, IntegrationResponse>>):

      Specifies the integration’s responses.

    • tls_config(Option<TlsConfig>):

      Specifies the TLS configuration for an integration.

  • On failure, responds with SdkError<PutIntegrationError>
source§

impl Client

source

pub fn put_integration_response(&self) -> PutIntegrationResponseFluentBuilder

Constructs a fluent builder for the PutIntegrationResponse operation.

source§

impl Client

source

pub fn put_method(&self) -> PutMethodFluentBuilder

Constructs a fluent builder for the PutMethod operation.

source§

impl Client

source

pub fn put_method_response(&self) -> PutMethodResponseFluentBuilder

Constructs a fluent builder for the PutMethodResponse operation.

  • The fluent builder is configurable:
  • On success, responds with PutMethodResponseOutput with field(s):
    • status_code(Option<String>):

      The method response’s status code.

    • response_parameters(Option<HashMap::<String, bool>>):

      A key-value map specifying required or optional response parameters that API Gateway can send back to the caller. A key defines a method response header and the value specifies whether the associated method response header is required or not. The expression of the key must match the pattern method.response.header.{name}, where name is a valid and unique header name. API Gateway passes certain integration response data to the method response headers specified here according to the mapping you prescribe in the API’s IntegrationResponse. The integration response data that can be mapped include an integration response header expressed in integration.response.header.{name}, a static value enclosed within a pair of single quotes (e.g., ‘application/json’), or a JSON expression from the back-end response payload in the form of integration.response.body.{JSON-expression}, where JSON-expression is a valid JSON expression without the $ prefix.)

    • response_models(Option<HashMap::<String, String>>):

      Specifies the Model resources used for the response’s content-type. Response models are represented as a key/value map, with a content-type as the key and a Model name as the value.

  • On failure, responds with SdkError<PutMethodResponseError>
source§

impl Client

source

pub fn put_rest_api(&self) -> PutRestApiFluentBuilder

Constructs a fluent builder for the PutRestApi operation.

source§

impl Client

source

pub fn tag_resource(&self) -> TagResourceFluentBuilder

Constructs a fluent builder for the TagResource operation.

source§

impl Client

source

pub fn test_invoke_authorizer(&self) -> TestInvokeAuthorizerFluentBuilder

Constructs a fluent builder for the TestInvokeAuthorizer operation.

source§

impl Client

source

pub fn test_invoke_method(&self) -> TestInvokeMethodFluentBuilder

Constructs a fluent builder for the TestInvokeMethod operation.

source§

impl Client

source

pub fn untag_resource(&self) -> UntagResourceFluentBuilder

Constructs a fluent builder for the UntagResource operation.

source§

impl Client

source

pub fn update_account(&self) -> UpdateAccountFluentBuilder

Constructs a fluent builder for the UpdateAccount operation.

source§

impl Client

source

pub fn update_api_key(&self) -> UpdateApiKeyFluentBuilder

Constructs a fluent builder for the UpdateApiKey operation.

source§

impl Client

source

pub fn update_authorizer(&self) -> UpdateAuthorizerFluentBuilder

Constructs a fluent builder for the UpdateAuthorizer operation.

  • The fluent builder is configurable:
  • On success, responds with UpdateAuthorizerOutput with field(s):
    • id(Option<String>):

      The identifier for the authorizer resource.

    • name(Option<String>):

      The name of the authorizer.

    • r#type(Option<AuthorizerType>):

      The authorizer type. Valid values are TOKEN for a Lambda function using a single authorization token submitted in a custom header, REQUEST for a Lambda function using incoming request parameters, and COGNITO_USER_POOLS for using an Amazon Cognito user pool.

    • provider_arns(Option<Vec::<String>>):

      A list of the Amazon Cognito user pool ARNs for the COGNITO_USER_POOLS authorizer. Each element is of this format: arn:aws:cognito-idp:{region}:{account_id}:userpool/{user_pool_id}. For a TOKEN or REQUEST authorizer, this is not defined.

    • auth_type(Option<String>):

      Optional customer-defined field, used in OpenAPI imports and exports without functional impact.

    • authorizer_uri(Option<String>):

      Specifies the authorizer’s Uniform Resource Identifier (URI). For TOKEN or REQUEST authorizers, this must be a well-formed Lambda function URI, for example, arn:aws:apigateway:us-west-2:lambda:path/2015-03-31/functions/arn:aws:lambda:us-west-2:{account_id}:function:{lambda_function_name}/invocations. In general, the URI has this form arn:aws:apigateway:{region}:lambda:path/{service_api}, where {region} is the same as the region hosting the Lambda function, path indicates that the remaining substring in the URI should be treated as the path to the resource, including the initial /. For Lambda functions, this is usually of the form /2015-03-31/functions/[FunctionARN]/invocations.

    • authorizer_credentials(Option<String>):

      Specifies the required credentials as an IAM role for API Gateway to invoke the authorizer. To specify an IAM role for API Gateway to assume, use the role’s Amazon Resource Name (ARN). To use resource-based permissions on the Lambda function, specify null.

    • identity_source(Option<String>):

      The identity source for which authorization is requested. For a TOKEN or COGNITO_USER_POOLS authorizer, this is required and specifies the request header mapping expression for the custom header holding the authorization token submitted by the client. For example, if the token header name is Auth, the header mapping expression is method.request.header.Auth. For the REQUEST authorizer, this is required when authorization caching is enabled. The value is a comma-separated string of one or more mapping expressions of the specified request parameters. For example, if an Auth header, a Name query string parameter are defined as identity sources, this value is method.request.header.Auth, method.request.querystring.Name. These parameters will be used to derive the authorization caching key and to perform runtime validation of the REQUEST authorizer by verifying all of the identity-related request parameters are present, not null and non-empty. Only when this is true does the authorizer invoke the authorizer Lambda function, otherwise, it returns a 401 Unauthorized response without calling the Lambda function. The valid value is a string of comma-separated mapping expressions of the specified request parameters. When the authorization caching is not enabled, this property is optional.

    • identity_validation_expression(Option<String>):

      A validation expression for the incoming identity token. For TOKEN authorizers, this value is a regular expression. For COGNITO_USER_POOLS authorizers, API Gateway will match the aud field of the incoming token from the client against the specified regular expression. It will invoke the authorizer’s Lambda function when there is a match. Otherwise, it will return a 401 Unauthorized response without calling the Lambda function. The validation expression does not apply to the REQUEST authorizer.

    • authorizer_result_ttl_in_seconds(Option<i32>):

      The TTL in seconds of cached authorizer results. If it equals 0, authorization caching is disabled. If it is greater than 0, API Gateway will cache authorizer responses. If this field is not set, the default value is 300. The maximum value is 3600, or 1 hour.

  • On failure, responds with SdkError<UpdateAuthorizerError>
source§

impl Client

source

pub fn update_base_path_mapping(&self) -> UpdateBasePathMappingFluentBuilder

Constructs a fluent builder for the UpdateBasePathMapping operation.

source§

impl Client

source

pub fn update_client_certificate(&self) -> UpdateClientCertificateFluentBuilder

Constructs a fluent builder for the UpdateClientCertificate operation.

source§

impl Client

source

pub fn update_deployment(&self) -> UpdateDeploymentFluentBuilder

Constructs a fluent builder for the UpdateDeployment operation.

source§

impl Client

source

pub fn update_documentation_part(&self) -> UpdateDocumentationPartFluentBuilder

Constructs a fluent builder for the UpdateDocumentationPart operation.

source§

impl Client

source

pub fn update_documentation_version( &self ) -> UpdateDocumentationVersionFluentBuilder

Constructs a fluent builder for the UpdateDocumentationVersion operation.

source§

impl Client

source

pub fn update_domain_name(&self) -> UpdateDomainNameFluentBuilder

Constructs a fluent builder for the UpdateDomainName operation.

source§

impl Client

source

pub fn update_gateway_response(&self) -> UpdateGatewayResponseFluentBuilder

Constructs a fluent builder for the UpdateGatewayResponse operation.

source§

impl Client

source

pub fn update_integration(&self) -> UpdateIntegrationFluentBuilder

Constructs a fluent builder for the UpdateIntegration operation.

  • The fluent builder is configurable:
  • On success, responds with UpdateIntegrationOutput with field(s):
    • r#type(Option<IntegrationType>):

      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.

    • http_method(Option<String>):

      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.

    • uri(Option<String>):

      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}

    • connection_type(Option<ConnectionType>):

      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.

    • connection_id(Option<String>):

      The ID of the VpcLink used for the integration when connectionType=VPC_LINK and undefined, otherwise.

    • credentials(Option<String>):

      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.

    • request_parameters(Option<HashMap::<String, String>>):

      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(Option<HashMap::<String, String>>):

      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.

    • passthrough_behavior(Option<String>):

      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.

    • content_handling(Option<ContentHandlingStrategy>):

      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.

    • timeout_in_millis(i32):

      Custom timeout between 50 and 29,000 milliseconds. The default value is 29,000 milliseconds or 29 seconds.

    • cache_namespace(Option<String>):

      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.

    • cache_key_parameters(Option<Vec::<String>>):

      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.

    • integration_responses(Option<HashMap::<String, IntegrationResponse>>):

      Specifies the integration’s responses.

    • tls_config(Option<TlsConfig>):

      Specifies the TLS configuration for an integration.

  • On failure, responds with SdkError<UpdateIntegrationError>
source§

impl Client

source

pub fn update_integration_response( &self ) -> UpdateIntegrationResponseFluentBuilder

Constructs a fluent builder for the UpdateIntegrationResponse operation.

source§

impl Client

source

pub fn update_method(&self) -> UpdateMethodFluentBuilder

Constructs a fluent builder for the UpdateMethod operation.

source§

impl Client

source

pub fn update_method_response(&self) -> UpdateMethodResponseFluentBuilder

Constructs a fluent builder for the UpdateMethodResponse operation.

source§

impl Client

source

pub fn update_model(&self) -> UpdateModelFluentBuilder

Constructs a fluent builder for the UpdateModel operation.

source§

impl Client

source

pub fn update_request_validator(&self) -> UpdateRequestValidatorFluentBuilder

Constructs a fluent builder for the UpdateRequestValidator operation.

source§

impl Client

source

pub fn update_resource(&self) -> UpdateResourceFluentBuilder

Constructs a fluent builder for the UpdateResource operation.

source§

impl Client

source

pub fn update_rest_api(&self) -> UpdateRestApiFluentBuilder

Constructs a fluent builder for the UpdateRestApi operation.

source§

impl Client

source

pub fn update_stage(&self) -> UpdateStageFluentBuilder

Constructs a fluent builder for the UpdateStage operation.

source§

impl Client

source

pub fn update_usage(&self) -> UpdateUsageFluentBuilder

Constructs a fluent builder for the UpdateUsage operation.

source§

impl Client

source

pub fn update_usage_plan(&self) -> UpdateUsagePlanFluentBuilder

Constructs a fluent builder for the UpdateUsagePlan operation.

source§

impl Client

Constructs a fluent builder for the UpdateVpcLink operation.

source§

impl Client

source

pub fn from_conf(conf: Config) -> Self

Creates a new client from the service Config.

§Panics

This method will panic in the following cases:

  • Retries or timeouts are enabled without a sleep_impl configured.
  • Identity caching is enabled without a sleep_impl and time_source configured.
  • No behavior_version is provided.

The panic message for each of these will have instructions on how to resolve them.

source

pub fn config(&self) -> &Config

Returns the client’s configuration.

source§

impl Client

source

pub fn new(sdk_config: &SdkConfig) -> Self

Creates a new client from an SDK Config.

§Panics
  • This method will panic if the sdk_config is missing an async sleep implementation. If you experience this panic, set the sleep_impl on the Config passed into this function to fix it.
  • This method will panic if the sdk_config is missing an HTTP connector. If you experience this panic, set the http_connector on the Config passed into this function to fix it.
  • This method will panic if no BehaviorVersion is provided. If you experience this panic, set behavior_version on the Config or enable the behavior-version-latest Cargo feature.

Trait Implementations§

source§

impl Clone for Client

source§

fn clone(&self) -> Client

Returns a copy of the value. Read more
1.0.0 · source§

fn clone_from(&mut self, source: &Self)

Performs copy-assignment from source. Read more
source§

impl Debug for Client

source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more

Auto Trait Implementations§

§

impl Freeze for Client

§

impl !RefUnwindSafe for Client

§

impl Send for Client

§

impl Sync for Client

§

impl Unpin for Client

§

impl !UnwindSafe for Client

Blanket Implementations§

source§

impl<T> Any for T
where T: 'static + ?Sized,

source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
source§

impl<T> Borrow<T> for T
where T: ?Sized,

source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
source§

impl<T> From<T> for T

source§

fn from(t: T) -> T

Returns the argument unchanged.

source§

impl<T> Instrument for T

source§

fn instrument(self, span: Span) -> Instrumented<Self>

Instruments this type with the provided Span, returning an Instrumented wrapper. Read more
source§

fn in_current_span(self) -> Instrumented<Self>

Instruments this type with the current Span, returning an Instrumented wrapper. Read more
source§

impl<T, U> Into<U> for T
where U: From<T>,

source§

fn into(self) -> U

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

source§

impl<T> IntoEither for T

source§

fn into_either(self, into_left: bool) -> Either<Self, Self>

Converts self into a Left variant of Either<Self, Self> if into_left is true. Converts self into a Right variant of Either<Self, Self> otherwise. Read more
source§

fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
where F: FnOnce(&Self) -> bool,

Converts self into a Left variant of Either<Self, Self> if into_left(&self) returns true. Converts self into a Right variant of Either<Self, Self> otherwise. Read more
source§

impl<Unshared, Shared> IntoShared<Shared> for Unshared
where Shared: FromUnshared<Unshared>,

source§

fn into_shared(self) -> Shared

Creates a shared type from an unshared type.
source§

impl<T> Same for T

§

type Output = T

Should always be Self
source§

impl<T> ToOwned for T
where T: Clone,

§

type Owned = T

The resulting type after obtaining ownership.
source§

fn to_owned(&self) -> T

Creates owned data from borrowed data, usually by cloning. Read more
source§

fn clone_into(&self, target: &mut T)

Uses borrowed data to replace owned data, usually by cloning. Read more
source§

impl<T, U> TryFrom<U> for T
where U: Into<T>,

§

type Error = Infallible

The type returned in the event of a conversion error.
source§

fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

Performs the conversion.
source§

impl<T, U> TryInto<U> for T
where U: TryFrom<T>,

§

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.
source§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.
source§

impl<T> WithSubscriber for T

source§

fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
where S: Into<Dispatch>,

Attaches the provided Subscriber to this type, returning a WithDispatch wrapper. Read more
source§

fn with_current_subscriber(self) -> WithDispatch<Self>

Attaches the current default Subscriber to this type, returning a WithDispatch wrapper. Read more