The Perl Toolchain Summit needs more sponsors. If your company depends on Perl, please support this very important event.

NAME

Paws::ApiGatewayV2::UpdateIntegration - Arguments for method UpdateIntegration on Paws::ApiGatewayV2

DESCRIPTION

This class represents the parameters used for calling the method UpdateIntegration on the AmazonApiGatewayV2 service. Use the attributes of this class as arguments to method UpdateIntegration.

You shouldn't make instances of this class. Each attribute should be used as a named argument in the call to UpdateIntegration.

SYNOPSIS

    my $apigateway = Paws->service('ApiGatewayV2');
    my $UpdateIntegrationResponseShape = $apigateway->UpdateIntegration(
      ApiId                   => 'My__string',
      IntegrationId           => 'My__string',
      ConnectionId            => 'MyStringWithLengthBetween1And1024', # OPTIONAL
      ConnectionType          => 'INTERNET',                          # OPTIONAL
      ContentHandlingStrategy => 'CONVERT_TO_BINARY',                 # OPTIONAL
      CredentialsArn          => 'MyArn',                             # OPTIONAL
      Description             => 'MyStringWithLengthBetween0And1024', # OPTIONAL
      IntegrationMethod       => 'MyStringWithLengthBetween1And64',   # OPTIONAL
      IntegrationType         => 'AWS',                               # OPTIONAL
      IntegrationUri          => 'MyUriWithLengthBetween1And2048',    # OPTIONAL
      PassthroughBehavior     => 'WHEN_NO_MATCH',                     # OPTIONAL
      PayloadFormatVersion    => 'MyStringWithLengthBetween1And64',   # OPTIONAL
      RequestParameters =>
        { 'My__string' => 'MyStringWithLengthBetween1And512', },      # OPTIONAL
      RequestTemplates =>
        { 'My__string' => 'MyStringWithLengthBetween0And32K', },      # OPTIONAL
      TemplateSelectionExpression => 'MySelectionExpression',         # OPTIONAL
      TimeoutInMillis             => 1,                               # OPTIONAL
    );

    # Results:
    my $ApiGatewayManaged = $UpdateIntegrationResponseShape->ApiGatewayManaged;
    my $ConnectionId      = $UpdateIntegrationResponseShape->ConnectionId;
    my $ConnectionType    = $UpdateIntegrationResponseShape->ConnectionType;
    my $ContentHandlingStrategy =
      $UpdateIntegrationResponseShape->ContentHandlingStrategy;
    my $CredentialsArn    = $UpdateIntegrationResponseShape->CredentialsArn;
    my $Description       = $UpdateIntegrationResponseShape->Description;
    my $IntegrationId     = $UpdateIntegrationResponseShape->IntegrationId;
    my $IntegrationMethod = $UpdateIntegrationResponseShape->IntegrationMethod;
    my $IntegrationResponseSelectionExpression =
      $UpdateIntegrationResponseShape->IntegrationResponseSelectionExpression;
    my $IntegrationType = $UpdateIntegrationResponseShape->IntegrationType;
    my $IntegrationUri  = $UpdateIntegrationResponseShape->IntegrationUri;
    my $PassthroughBehavior =
      $UpdateIntegrationResponseShape->PassthroughBehavior;
    my $PayloadFormatVersion =
      $UpdateIntegrationResponseShape->PayloadFormatVersion;
    my $RequestParameters = $UpdateIntegrationResponseShape->RequestParameters;
    my $RequestTemplates  = $UpdateIntegrationResponseShape->RequestTemplates;
    my $TemplateSelectionExpression =
      $UpdateIntegrationResponseShape->TemplateSelectionExpression;
    my $TimeoutInMillis = $UpdateIntegrationResponseShape->TimeoutInMillis;

    # Returns a L<Paws::ApiGatewayV2::UpdateIntegrationResponseShape> object.

Values for attributes that are native types (Int, String, Float, etc) can passed as-is (scalar values). Values for complex Types (objects) can be passed as a HashRef. The keys and values of the hashref will be used to instance the underlying object. For the AWS API documentation, see https://docs.aws.amazon.com/goto/WebAPI/apigateway/UpdateIntegration

ATTRIBUTES

REQUIRED ApiId => Str

The API identifier.

ConnectionId => Str

The connection ID.

ConnectionType => Str

The type of the network connection to the integration endpoint. Currently the only valid value is INTERNET, for connections through the public routable internet.

Valid values are: "INTERNET", "VPC_LINK"

ContentHandlingStrategy => Str

Supported only for WebSocket APIs. Specifies how to handle response payload content type conversions. Supported values are CONVERT_TO_BINARY and CONVERT_TO_TEXT, with the following behaviors:

CONVERT_TO_BINARY: Converts a response payload from a Base64-encoded string to the corresponding binary blob.

CONVERT_TO_TEXT: Converts a response payload from a binary blob to a Base64-encoded string.

If this property is not defined, the response payload will be passed through from the integration response to the route response or method response without modification.

Valid values are: "CONVERT_TO_BINARY", "CONVERT_TO_TEXT"

CredentialsArn => Str

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 AWS services, specify null.

Description => Str

The description of the integration

REQUIRED IntegrationId => Str

The integration ID.

IntegrationMethod => Str

Specifies the integration's HTTP method type.

IntegrationType => Str

The integration type of an integration. One of the following:

AWS: for integrating the route or method request with an AWS service action, including the Lambda function-invoking action. With the Lambda function-invoking action, this is referred to as the Lambda custom integration. With any other AWS service action, this is known as AWS integration. Supported only for WebSocket APIs.

AWS_PROXY: for integrating the route or method request with the Lambda function-invoking action with the client request passed through as-is. This integration is also referred to as Lambda proxy integration.

HTTP: for integrating the route or method request with an HTTP endpoint. This integration is also referred to as the HTTP custom integration. Supported only for WebSocket APIs.

HTTP_PROXY: for integrating route or method request with an HTTP endpoint, with the client request passed through as-is. This is also referred to as HTTP proxy integration.

MOCK: for integrating the route or method request with API Gateway as a "loopback" endpoint without invoking any backend. Supported only for WebSocket APIs.

Valid values are: "AWS", "HTTP", "MOCK", "HTTP_PROXY", "AWS_PROXY"

IntegrationUri => Str

For a Lambda proxy integration, this is the URI of the Lambda function.

PassthroughBehavior => Str

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. Supported only for WebSocket APIs.

WHEN_NO_MATCH passes the request body for unmapped content types through to the integration backend 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 HTTP 415 Unsupported Media Type response.

Valid values are: "WHEN_NO_MATCH", "NEVER", "WHEN_NO_TEMPLATES"

PayloadFormatVersion => Str

Specifies the format of the payload sent to an integration. Required for HTTP APIs. Currently, the only supported value is 1.0.

RequestParameters => Paws::ApiGatewayV2::IntegrationParameters

A key-value map specifying request parameters that are passed from the method request to the backend. 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 backend. 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. Supported only for WebSocket APIs.

RequestTemplates => Paws::ApiGatewayV2::TemplateMap

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. Supported only for WebSocket APIs.

TemplateSelectionExpression => Str

The template selection expression for the integration.

TimeoutInMillis => Int

Custom timeout between 50 and 29,000 milliseconds. The default value is 29,000 milliseconds or 29 seconds for WebSocket APIs. The default value is 5,000 milliseconds, or 5 seconds for HTTP APIs.

SEE ALSO

This class forms part of Paws, documenting arguments for method UpdateIntegration in Paws::ApiGatewayV2

BUGS and CONTRIBUTIONS

The source code is located here: https://github.com/pplu/aws-sdk-perl

Please report bugs to: https://github.com/pplu/aws-sdk-perl/issues