1. Packages
  2. AWS Classic
  3. API Docs
  4. apigatewayv2
  5. Integration

Try AWS Native preview for resources not in the classic version.

AWS Classic v6.28.1 published on Thursday, Mar 28, 2024 by Pulumi

aws.apigatewayv2.Integration

Explore with Pulumi AI

aws logo

Try AWS Native preview for resources not in the classic version.

AWS Classic v6.28.1 published on Thursday, Mar 28, 2024 by Pulumi

    Manages an Amazon API Gateway Version 2 integration. More information can be found in the Amazon API Gateway Developer Guide.

    Example Usage

    Basic

    import * as pulumi from "@pulumi/pulumi";
    import * as aws from "@pulumi/aws";
    
    const example = new aws.apigatewayv2.Integration("example", {
        apiId: exampleAwsApigatewayv2Api.id,
        integrationType: "MOCK",
    });
    
    import pulumi
    import pulumi_aws as aws
    
    example = aws.apigatewayv2.Integration("example",
        api_id=example_aws_apigatewayv2_api["id"],
        integration_type="MOCK")
    
    package main
    
    import (
    	"github.com/pulumi/pulumi-aws/sdk/v6/go/aws/apigatewayv2"
    	"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
    )
    
    func main() {
    	pulumi.Run(func(ctx *pulumi.Context) error {
    		_, err := apigatewayv2.NewIntegration(ctx, "example", &apigatewayv2.IntegrationArgs{
    			ApiId:           pulumi.Any(exampleAwsApigatewayv2Api.Id),
    			IntegrationType: pulumi.String("MOCK"),
    		})
    		if err != nil {
    			return err
    		}
    		return nil
    	})
    }
    
    using System.Collections.Generic;
    using System.Linq;
    using Pulumi;
    using Aws = Pulumi.Aws;
    
    return await Deployment.RunAsync(() => 
    {
        var example = new Aws.ApiGatewayV2.Integration("example", new()
        {
            ApiId = exampleAwsApigatewayv2Api.Id,
            IntegrationType = "MOCK",
        });
    
    });
    
    package generated_program;
    
    import com.pulumi.Context;
    import com.pulumi.Pulumi;
    import com.pulumi.core.Output;
    import com.pulumi.aws.apigatewayv2.Integration;
    import com.pulumi.aws.apigatewayv2.IntegrationArgs;
    import java.util.List;
    import java.util.ArrayList;
    import java.util.Map;
    import java.io.File;
    import java.nio.file.Files;
    import java.nio.file.Paths;
    
    public class App {
        public static void main(String[] args) {
            Pulumi.run(App::stack);
        }
    
        public static void stack(Context ctx) {
            var example = new Integration("example", IntegrationArgs.builder()        
                .apiId(exampleAwsApigatewayv2Api.id())
                .integrationType("MOCK")
                .build());
    
        }
    }
    
    resources:
      example:
        type: aws:apigatewayv2:Integration
        properties:
          apiId: ${exampleAwsApigatewayv2Api.id}
          integrationType: MOCK
    

    Lambda Integration

    import * as pulumi from "@pulumi/pulumi";
    import * as aws from "@pulumi/aws";
    
    const example = new aws.lambda.Function("example", {
        code: new pulumi.asset.FileArchive("example.zip"),
        name: "Example",
        role: exampleAwsIamRole.arn,
        handler: "index.handler",
        runtime: aws.lambda.Runtime.NodeJS16dX,
    });
    const exampleIntegration = new aws.apigatewayv2.Integration("example", {
        apiId: exampleAwsApigatewayv2Api.id,
        integrationType: "AWS_PROXY",
        connectionType: "INTERNET",
        contentHandlingStrategy: "CONVERT_TO_TEXT",
        description: "Lambda example",
        integrationMethod: "POST",
        integrationUri: example.invokeArn,
        passthroughBehavior: "WHEN_NO_MATCH",
    });
    
    import pulumi
    import pulumi_aws as aws
    
    example = aws.lambda_.Function("example",
        code=pulumi.FileArchive("example.zip"),
        name="Example",
        role=example_aws_iam_role["arn"],
        handler="index.handler",
        runtime=aws.lambda_.Runtime.NODE_JS16D_X)
    example_integration = aws.apigatewayv2.Integration("example",
        api_id=example_aws_apigatewayv2_api["id"],
        integration_type="AWS_PROXY",
        connection_type="INTERNET",
        content_handling_strategy="CONVERT_TO_TEXT",
        description="Lambda example",
        integration_method="POST",
        integration_uri=example.invoke_arn,
        passthrough_behavior="WHEN_NO_MATCH")
    
    package main
    
    import (
    	"github.com/pulumi/pulumi-aws/sdk/v6/go/aws"
    	"github.com/pulumi/pulumi-aws/sdk/v6/go/aws/apigatewayv2"
    	"github.com/pulumi/pulumi-aws/sdk/v6/go/aws/lambda"
    	"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
    )
    
    func main() {
    	pulumi.Run(func(ctx *pulumi.Context) error {
    		example, err := lambda.NewFunction(ctx, "example", &lambda.FunctionArgs{
    			Code:    pulumi.NewFileArchive("example.zip"),
    			Name:    pulumi.String("Example"),
    			Role:    pulumi.Any(exampleAwsIamRole.Arn),
    			Handler: pulumi.String("index.handler"),
    			Runtime: pulumi.String(lambda.RuntimeNodeJS16dX),
    		})
    		if err != nil {
    			return err
    		}
    		_, err = apigatewayv2.NewIntegration(ctx, "example", &apigatewayv2.IntegrationArgs{
    			ApiId:                   pulumi.Any(exampleAwsApigatewayv2Api.Id),
    			IntegrationType:         pulumi.String("AWS_PROXY"),
    			ConnectionType:          pulumi.String("INTERNET"),
    			ContentHandlingStrategy: pulumi.String("CONVERT_TO_TEXT"),
    			Description:             pulumi.String("Lambda example"),
    			IntegrationMethod:       pulumi.String("POST"),
    			IntegrationUri:          example.InvokeArn,
    			PassthroughBehavior:     pulumi.String("WHEN_NO_MATCH"),
    		})
    		if err != nil {
    			return err
    		}
    		return nil
    	})
    }
    
    using System.Collections.Generic;
    using System.Linq;
    using Pulumi;
    using Aws = Pulumi.Aws;
    
    return await Deployment.RunAsync(() => 
    {
        var example = new Aws.Lambda.Function("example", new()
        {
            Code = new FileArchive("example.zip"),
            Name = "Example",
            Role = exampleAwsIamRole.Arn,
            Handler = "index.handler",
            Runtime = Aws.Lambda.Runtime.NodeJS16dX,
        });
    
        var exampleIntegration = new Aws.ApiGatewayV2.Integration("example", new()
        {
            ApiId = exampleAwsApigatewayv2Api.Id,
            IntegrationType = "AWS_PROXY",
            ConnectionType = "INTERNET",
            ContentHandlingStrategy = "CONVERT_TO_TEXT",
            Description = "Lambda example",
            IntegrationMethod = "POST",
            IntegrationUri = example.InvokeArn,
            PassthroughBehavior = "WHEN_NO_MATCH",
        });
    
    });
    
    package generated_program;
    
    import com.pulumi.Context;
    import com.pulumi.Pulumi;
    import com.pulumi.core.Output;
    import com.pulumi.aws.lambda.Function;
    import com.pulumi.aws.lambda.FunctionArgs;
    import com.pulumi.aws.apigatewayv2.Integration;
    import com.pulumi.aws.apigatewayv2.IntegrationArgs;
    import com.pulumi.asset.FileArchive;
    import java.util.List;
    import java.util.ArrayList;
    import java.util.Map;
    import java.io.File;
    import java.nio.file.Files;
    import java.nio.file.Paths;
    
    public class App {
        public static void main(String[] args) {
            Pulumi.run(App::stack);
        }
    
        public static void stack(Context ctx) {
            var example = new Function("example", FunctionArgs.builder()        
                .code(new FileArchive("example.zip"))
                .name("Example")
                .role(exampleAwsIamRole.arn())
                .handler("index.handler")
                .runtime("nodejs16.x")
                .build());
    
            var exampleIntegration = new Integration("exampleIntegration", IntegrationArgs.builder()        
                .apiId(exampleAwsApigatewayv2Api.id())
                .integrationType("AWS_PROXY")
                .connectionType("INTERNET")
                .contentHandlingStrategy("CONVERT_TO_TEXT")
                .description("Lambda example")
                .integrationMethod("POST")
                .integrationUri(example.invokeArn())
                .passthroughBehavior("WHEN_NO_MATCH")
                .build());
    
        }
    }
    
    resources:
      example:
        type: aws:lambda:Function
        properties:
          code:
            fn::FileArchive: example.zip
          name: Example
          role: ${exampleAwsIamRole.arn}
          handler: index.handler
          runtime: nodejs16.x
      exampleIntegration:
        type: aws:apigatewayv2:Integration
        name: example
        properties:
          apiId: ${exampleAwsApigatewayv2Api.id}
          integrationType: AWS_PROXY
          connectionType: INTERNET
          contentHandlingStrategy: CONVERT_TO_TEXT
          description: Lambda example
          integrationMethod: POST
          integrationUri: ${example.invokeArn}
          passthroughBehavior: WHEN_NO_MATCH
    

    AWS Service Integration

    import * as pulumi from "@pulumi/pulumi";
    import * as aws from "@pulumi/aws";
    
    const example = new aws.apigatewayv2.Integration("example", {
        apiId: exampleAwsApigatewayv2Api.id,
        credentialsArn: exampleAwsIamRole.arn,
        description: "SQS example",
        integrationType: "AWS_PROXY",
        integrationSubtype: "SQS-SendMessage",
        requestParameters: {
            QueueUrl: "$request.header.queueUrl",
            MessageBody: "$request.body.message",
        },
    });
    
    import pulumi
    import pulumi_aws as aws
    
    example = aws.apigatewayv2.Integration("example",
        api_id=example_aws_apigatewayv2_api["id"],
        credentials_arn=example_aws_iam_role["arn"],
        description="SQS example",
        integration_type="AWS_PROXY",
        integration_subtype="SQS-SendMessage",
        request_parameters={
            "QueueUrl": "$request.header.queueUrl",
            "MessageBody": "$request.body.message",
        })
    
    package main
    
    import (
    	"github.com/pulumi/pulumi-aws/sdk/v6/go/aws/apigatewayv2"
    	"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
    )
    
    func main() {
    	pulumi.Run(func(ctx *pulumi.Context) error {
    		_, err := apigatewayv2.NewIntegration(ctx, "example", &apigatewayv2.IntegrationArgs{
    			ApiId:              pulumi.Any(exampleAwsApigatewayv2Api.Id),
    			CredentialsArn:     pulumi.Any(exampleAwsIamRole.Arn),
    			Description:        pulumi.String("SQS example"),
    			IntegrationType:    pulumi.String("AWS_PROXY"),
    			IntegrationSubtype: pulumi.String("SQS-SendMessage"),
    			RequestParameters: pulumi.StringMap{
    				"QueueUrl":    pulumi.String("$request.header.queueUrl"),
    				"MessageBody": pulumi.String("$request.body.message"),
    			},
    		})
    		if err != nil {
    			return err
    		}
    		return nil
    	})
    }
    
    using System.Collections.Generic;
    using System.Linq;
    using Pulumi;
    using Aws = Pulumi.Aws;
    
    return await Deployment.RunAsync(() => 
    {
        var example = new Aws.ApiGatewayV2.Integration("example", new()
        {
            ApiId = exampleAwsApigatewayv2Api.Id,
            CredentialsArn = exampleAwsIamRole.Arn,
            Description = "SQS example",
            IntegrationType = "AWS_PROXY",
            IntegrationSubtype = "SQS-SendMessage",
            RequestParameters = 
            {
                { "QueueUrl", "$request.header.queueUrl" },
                { "MessageBody", "$request.body.message" },
            },
        });
    
    });
    
    package generated_program;
    
    import com.pulumi.Context;
    import com.pulumi.Pulumi;
    import com.pulumi.core.Output;
    import com.pulumi.aws.apigatewayv2.Integration;
    import com.pulumi.aws.apigatewayv2.IntegrationArgs;
    import java.util.List;
    import java.util.ArrayList;
    import java.util.Map;
    import java.io.File;
    import java.nio.file.Files;
    import java.nio.file.Paths;
    
    public class App {
        public static void main(String[] args) {
            Pulumi.run(App::stack);
        }
    
        public static void stack(Context ctx) {
            var example = new Integration("example", IntegrationArgs.builder()        
                .apiId(exampleAwsApigatewayv2Api.id())
                .credentialsArn(exampleAwsIamRole.arn())
                .description("SQS example")
                .integrationType("AWS_PROXY")
                .integrationSubtype("SQS-SendMessage")
                .requestParameters(Map.ofEntries(
                    Map.entry("QueueUrl", "$request.header.queueUrl"),
                    Map.entry("MessageBody", "$request.body.message")
                ))
                .build());
    
        }
    }
    
    resources:
      example:
        type: aws:apigatewayv2:Integration
        properties:
          apiId: ${exampleAwsApigatewayv2Api.id}
          credentialsArn: ${exampleAwsIamRole.arn}
          description: SQS example
          integrationType: AWS_PROXY
          integrationSubtype: SQS-SendMessage
          requestParameters:
            QueueUrl: $request.header.queueUrl
            MessageBody: $request.body.message
    

    Private Integration

    import * as pulumi from "@pulumi/pulumi";
    import * as aws from "@pulumi/aws";
    
    const example = new aws.apigatewayv2.Integration("example", {
        apiId: exampleAwsApigatewayv2Api.id,
        credentialsArn: exampleAwsIamRole.arn,
        description: "Example with a load balancer",
        integrationType: "HTTP_PROXY",
        integrationUri: exampleAwsLbListener.arn,
        integrationMethod: "ANY",
        connectionType: "VPC_LINK",
        connectionId: exampleAwsApigatewayv2VpcLink.id,
        tlsConfig: {
            serverNameToVerify: "example.com",
        },
        requestParameters: {
            "append:header.authforintegration": "$context.authorizer.authorizerResponse",
            "overwrite:path": "staticValueForIntegration",
        },
        responseParameters: [
            {
                statusCode: "403",
                mappings: {
                    "append:header.auth": "$context.authorizer.authorizerResponse",
                },
            },
            {
                statusCode: "200",
                mappings: {
                    "overwrite:statuscode": "204",
                },
            },
        ],
    });
    
    import pulumi
    import pulumi_aws as aws
    
    example = aws.apigatewayv2.Integration("example",
        api_id=example_aws_apigatewayv2_api["id"],
        credentials_arn=example_aws_iam_role["arn"],
        description="Example with a load balancer",
        integration_type="HTTP_PROXY",
        integration_uri=example_aws_lb_listener["arn"],
        integration_method="ANY",
        connection_type="VPC_LINK",
        connection_id=example_aws_apigatewayv2_vpc_link["id"],
        tls_config=aws.apigatewayv2.IntegrationTlsConfigArgs(
            server_name_to_verify="example.com",
        ),
        request_parameters={
            "append:header.authforintegration": "$context.authorizer.authorizerResponse",
            "overwrite:path": "staticValueForIntegration",
        },
        response_parameters=[
            aws.apigatewayv2.IntegrationResponseParameterArgs(
                status_code="403",
                mappings={
                    "append:header.auth": "$context.authorizer.authorizerResponse",
                },
            ),
            aws.apigatewayv2.IntegrationResponseParameterArgs(
                status_code="200",
                mappings={
                    "overwrite:statuscode": "204",
                },
            ),
        ])
    
    package main
    
    import (
    	"github.com/pulumi/pulumi-aws/sdk/v6/go/aws/apigatewayv2"
    	"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
    )
    
    func main() {
    	pulumi.Run(func(ctx *pulumi.Context) error {
    		_, err := apigatewayv2.NewIntegration(ctx, "example", &apigatewayv2.IntegrationArgs{
    			ApiId:             pulumi.Any(exampleAwsApigatewayv2Api.Id),
    			CredentialsArn:    pulumi.Any(exampleAwsIamRole.Arn),
    			Description:       pulumi.String("Example with a load balancer"),
    			IntegrationType:   pulumi.String("HTTP_PROXY"),
    			IntegrationUri:    pulumi.Any(exampleAwsLbListener.Arn),
    			IntegrationMethod: pulumi.String("ANY"),
    			ConnectionType:    pulumi.String("VPC_LINK"),
    			ConnectionId:      pulumi.Any(exampleAwsApigatewayv2VpcLink.Id),
    			TlsConfig: &apigatewayv2.IntegrationTlsConfigArgs{
    				ServerNameToVerify: pulumi.String("example.com"),
    			},
    			RequestParameters: pulumi.StringMap{
    				"append:header.authforintegration": pulumi.String("$context.authorizer.authorizerResponse"),
    				"overwrite:path":                   pulumi.String("staticValueForIntegration"),
    			},
    			ResponseParameters: apigatewayv2.IntegrationResponseParameterArray{
    				&apigatewayv2.IntegrationResponseParameterArgs{
    					StatusCode: pulumi.String("403"),
    					Mappings: pulumi.StringMap{
    						"append:header.auth": pulumi.String("$context.authorizer.authorizerResponse"),
    					},
    				},
    				&apigatewayv2.IntegrationResponseParameterArgs{
    					StatusCode: pulumi.String("200"),
    					Mappings: pulumi.StringMap{
    						"overwrite:statuscode": pulumi.String("204"),
    					},
    				},
    			},
    		})
    		if err != nil {
    			return err
    		}
    		return nil
    	})
    }
    
    using System.Collections.Generic;
    using System.Linq;
    using Pulumi;
    using Aws = Pulumi.Aws;
    
    return await Deployment.RunAsync(() => 
    {
        var example = new Aws.ApiGatewayV2.Integration("example", new()
        {
            ApiId = exampleAwsApigatewayv2Api.Id,
            CredentialsArn = exampleAwsIamRole.Arn,
            Description = "Example with a load balancer",
            IntegrationType = "HTTP_PROXY",
            IntegrationUri = exampleAwsLbListener.Arn,
            IntegrationMethod = "ANY",
            ConnectionType = "VPC_LINK",
            ConnectionId = exampleAwsApigatewayv2VpcLink.Id,
            TlsConfig = new Aws.ApiGatewayV2.Inputs.IntegrationTlsConfigArgs
            {
                ServerNameToVerify = "example.com",
            },
            RequestParameters = 
            {
                { "append:header.authforintegration", "$context.authorizer.authorizerResponse" },
                { "overwrite:path", "staticValueForIntegration" },
            },
            ResponseParameters = new[]
            {
                new Aws.ApiGatewayV2.Inputs.IntegrationResponseParameterArgs
                {
                    StatusCode = "403",
                    Mappings = 
                    {
                        { "append:header.auth", "$context.authorizer.authorizerResponse" },
                    },
                },
                new Aws.ApiGatewayV2.Inputs.IntegrationResponseParameterArgs
                {
                    StatusCode = "200",
                    Mappings = 
                    {
                        { "overwrite:statuscode", "204" },
                    },
                },
            },
        });
    
    });
    
    package generated_program;
    
    import com.pulumi.Context;
    import com.pulumi.Pulumi;
    import com.pulumi.core.Output;
    import com.pulumi.aws.apigatewayv2.Integration;
    import com.pulumi.aws.apigatewayv2.IntegrationArgs;
    import com.pulumi.aws.apigatewayv2.inputs.IntegrationTlsConfigArgs;
    import com.pulumi.aws.apigatewayv2.inputs.IntegrationResponseParameterArgs;
    import java.util.List;
    import java.util.ArrayList;
    import java.util.Map;
    import java.io.File;
    import java.nio.file.Files;
    import java.nio.file.Paths;
    
    public class App {
        public static void main(String[] args) {
            Pulumi.run(App::stack);
        }
    
        public static void stack(Context ctx) {
            var example = new Integration("example", IntegrationArgs.builder()        
                .apiId(exampleAwsApigatewayv2Api.id())
                .credentialsArn(exampleAwsIamRole.arn())
                .description("Example with a load balancer")
                .integrationType("HTTP_PROXY")
                .integrationUri(exampleAwsLbListener.arn())
                .integrationMethod("ANY")
                .connectionType("VPC_LINK")
                .connectionId(exampleAwsApigatewayv2VpcLink.id())
                .tlsConfig(IntegrationTlsConfigArgs.builder()
                    .serverNameToVerify("example.com")
                    .build())
                .requestParameters(Map.ofEntries(
                    Map.entry("append:header.authforintegration", "$context.authorizer.authorizerResponse"),
                    Map.entry("overwrite:path", "staticValueForIntegration")
                ))
                .responseParameters(            
                    IntegrationResponseParameterArgs.builder()
                        .statusCode(403)
                        .mappings(Map.of("append:header.auth", "$context.authorizer.authorizerResponse"))
                        .build(),
                    IntegrationResponseParameterArgs.builder()
                        .statusCode(200)
                        .mappings(Map.of("overwrite:statuscode", "204"))
                        .build())
                .build());
    
        }
    }
    
    resources:
      example:
        type: aws:apigatewayv2:Integration
        properties:
          apiId: ${exampleAwsApigatewayv2Api.id}
          credentialsArn: ${exampleAwsIamRole.arn}
          description: Example with a load balancer
          integrationType: HTTP_PROXY
          integrationUri: ${exampleAwsLbListener.arn}
          integrationMethod: ANY
          connectionType: VPC_LINK
          connectionId: ${exampleAwsApigatewayv2VpcLink.id}
          tlsConfig:
            serverNameToVerify: example.com
          requestParameters:
            append:header.authforintegration: $context.authorizer.authorizerResponse
            overwrite:path: staticValueForIntegration
          responseParameters:
            - statusCode: 403
              mappings:
                append:header.auth: $context.authorizer.authorizerResponse
            - statusCode: 200
              mappings:
                overwrite:statuscode: '204'
    

    Create Integration Resource

    new Integration(name: string, args: IntegrationArgs, opts?: CustomResourceOptions);
    @overload
    def Integration(resource_name: str,
                    opts: Optional[ResourceOptions] = None,
                    api_id: Optional[str] = None,
                    connection_id: Optional[str] = None,
                    connection_type: Optional[str] = None,
                    content_handling_strategy: Optional[str] = None,
                    credentials_arn: Optional[str] = None,
                    description: Optional[str] = None,
                    integration_method: Optional[str] = None,
                    integration_subtype: Optional[str] = None,
                    integration_type: Optional[str] = None,
                    integration_uri: Optional[str] = None,
                    passthrough_behavior: Optional[str] = None,
                    payload_format_version: Optional[str] = None,
                    request_parameters: Optional[Mapping[str, str]] = None,
                    request_templates: Optional[Mapping[str, str]] = None,
                    response_parameters: Optional[Sequence[IntegrationResponseParameterArgs]] = None,
                    template_selection_expression: Optional[str] = None,
                    timeout_milliseconds: Optional[int] = None,
                    tls_config: Optional[IntegrationTlsConfigArgs] = None)
    @overload
    def Integration(resource_name: str,
                    args: IntegrationArgs,
                    opts: Optional[ResourceOptions] = None)
    func NewIntegration(ctx *Context, name string, args IntegrationArgs, opts ...ResourceOption) (*Integration, error)
    public Integration(string name, IntegrationArgs args, CustomResourceOptions? opts = null)
    public Integration(String name, IntegrationArgs args)
    public Integration(String name, IntegrationArgs args, CustomResourceOptions options)
    
    type: aws:apigatewayv2:Integration
    properties: # The arguments to resource properties.
    options: # Bag of options to control resource's behavior.
    
    
    name string
    The unique name of the resource.
    args IntegrationArgs
    The arguments to resource properties.
    opts CustomResourceOptions
    Bag of options to control resource's behavior.
    resource_name str
    The unique name of the resource.
    args IntegrationArgs
    The arguments to resource properties.
    opts ResourceOptions
    Bag of options to control resource's behavior.
    ctx Context
    Context object for the current deployment.
    name string
    The unique name of the resource.
    args IntegrationArgs
    The arguments to resource properties.
    opts ResourceOption
    Bag of options to control resource's behavior.
    name string
    The unique name of the resource.
    args IntegrationArgs
    The arguments to resource properties.
    opts CustomResourceOptions
    Bag of options to control resource's behavior.
    name String
    The unique name of the resource.
    args IntegrationArgs
    The arguments to resource properties.
    options CustomResourceOptions
    Bag of options to control resource's behavior.

    Integration Resource Properties

    To learn more about resource properties and how to use them, see Inputs and Outputs in the Architecture and Concepts docs.

    Inputs

    The Integration resource accepts the following input properties:

    ApiId string
    API identifier.
    IntegrationType string
    Integration type of an integration. Valid values: AWS (supported only for WebSocket APIs), AWS_PROXY, HTTP (supported only for WebSocket APIs), HTTP_PROXY, MOCK (supported only for WebSocket APIs). For an HTTP API private integration, use HTTP_PROXY.
    ConnectionId string
    ID of the VPC link for a private integration. Supported only for HTTP APIs. Must be between 1 and 1024 characters in length.
    ConnectionType string
    Type of the network connection to the integration endpoint. Valid values: INTERNET, VPC_LINK. Default is INTERNET.
    ContentHandlingStrategy string
    How to handle response payload content type conversions. Valid values: CONVERT_TO_BINARY, CONVERT_TO_TEXT. Supported only for WebSocket APIs.
    CredentialsArn string
    Credentials required for the integration, if any.
    Description string
    Description of the integration.
    IntegrationMethod string
    Integration's HTTP method. Must be specified if integration_type is not MOCK.
    IntegrationSubtype string
    AWS service action to invoke. Supported only for HTTP APIs when integration_type is AWS_PROXY. See the AWS service integration reference documentation for supported values. Must be between 1 and 128 characters in length.
    IntegrationUri string
    URI of the Lambda function for a Lambda proxy integration, when integration_type is AWS_PROXY. For an HTTP integration, specify a fully-qualified URL. For an HTTP API private integration, specify the ARN of an Application Load Balancer listener, Network Load Balancer listener, or AWS Cloud Map service.
    PassthroughBehavior string
    Pass-through behavior for incoming requests based on the Content-Type header in the request, and the available mapping templates specified as the request_templates attribute. Valid values: WHEN_NO_MATCH, WHEN_NO_TEMPLATES, NEVER. Default is WHEN_NO_MATCH. Supported only for WebSocket APIs.
    PayloadFormatVersion string
    The format of the payload sent to an integration. Valid values: 1.0, 2.0. Default is 1.0.
    RequestParameters Dictionary<string, string>
    For WebSocket APIs, a key-value map specifying request parameters that are passed from the method request to the backend. For HTTP APIs with a specified integration_subtype, a key-value map specifying parameters that are passed to AWS_PROXY integrations. For HTTP APIs without a specified integration_subtype, a key-value map specifying how to transform HTTP requests before sending them to the backend. See the Amazon API Gateway Developer Guide for details.
    RequestTemplates Dictionary<string, string>
    Map of Velocity templates that are applied on the request payload based on the value of the Content-Type header sent by the client. Supported only for WebSocket APIs.
    ResponseParameters List<IntegrationResponseParameter>
    Mappings to transform the HTTP response from a backend integration before returning the response to clients. Supported only for HTTP APIs.
    TemplateSelectionExpression string
    The template selection expression for the integration.
    TimeoutMilliseconds int
    Custom timeout between 50 and 29,000 milliseconds for WebSocket APIs and between 50 and 30,000 milliseconds for HTTP APIs. The default timeout is 29 seconds for WebSocket APIs and 30 seconds for HTTP APIs. this provider will only perform drift detection of its value when present in a configuration.
    TlsConfig IntegrationTlsConfig
    TLS configuration for a private integration. Supported only for HTTP APIs.
    ApiId string
    API identifier.
    IntegrationType string
    Integration type of an integration. Valid values: AWS (supported only for WebSocket APIs), AWS_PROXY, HTTP (supported only for WebSocket APIs), HTTP_PROXY, MOCK (supported only for WebSocket APIs). For an HTTP API private integration, use HTTP_PROXY.
    ConnectionId string
    ID of the VPC link for a private integration. Supported only for HTTP APIs. Must be between 1 and 1024 characters in length.
    ConnectionType string
    Type of the network connection to the integration endpoint. Valid values: INTERNET, VPC_LINK. Default is INTERNET.
    ContentHandlingStrategy string
    How to handle response payload content type conversions. Valid values: CONVERT_TO_BINARY, CONVERT_TO_TEXT. Supported only for WebSocket APIs.
    CredentialsArn string
    Credentials required for the integration, if any.
    Description string
    Description of the integration.
    IntegrationMethod string
    Integration's HTTP method. Must be specified if integration_type is not MOCK.
    IntegrationSubtype string
    AWS service action to invoke. Supported only for HTTP APIs when integration_type is AWS_PROXY. See the AWS service integration reference documentation for supported values. Must be between 1 and 128 characters in length.
    IntegrationUri string
    URI of the Lambda function for a Lambda proxy integration, when integration_type is AWS_PROXY. For an HTTP integration, specify a fully-qualified URL. For an HTTP API private integration, specify the ARN of an Application Load Balancer listener, Network Load Balancer listener, or AWS Cloud Map service.
    PassthroughBehavior string
    Pass-through behavior for incoming requests based on the Content-Type header in the request, and the available mapping templates specified as the request_templates attribute. Valid values: WHEN_NO_MATCH, WHEN_NO_TEMPLATES, NEVER. Default is WHEN_NO_MATCH. Supported only for WebSocket APIs.
    PayloadFormatVersion string
    The format of the payload sent to an integration. Valid values: 1.0, 2.0. Default is 1.0.
    RequestParameters map[string]string
    For WebSocket APIs, a key-value map specifying request parameters that are passed from the method request to the backend. For HTTP APIs with a specified integration_subtype, a key-value map specifying parameters that are passed to AWS_PROXY integrations. For HTTP APIs without a specified integration_subtype, a key-value map specifying how to transform HTTP requests before sending them to the backend. See the Amazon API Gateway Developer Guide for details.
    RequestTemplates map[string]string
    Map of Velocity templates that are applied on the request payload based on the value of the Content-Type header sent by the client. Supported only for WebSocket APIs.
    ResponseParameters []IntegrationResponseParameterArgs
    Mappings to transform the HTTP response from a backend integration before returning the response to clients. Supported only for HTTP APIs.
    TemplateSelectionExpression string
    The template selection expression for the integration.
    TimeoutMilliseconds int
    Custom timeout between 50 and 29,000 milliseconds for WebSocket APIs and between 50 and 30,000 milliseconds for HTTP APIs. The default timeout is 29 seconds for WebSocket APIs and 30 seconds for HTTP APIs. this provider will only perform drift detection of its value when present in a configuration.
    TlsConfig IntegrationTlsConfigArgs
    TLS configuration for a private integration. Supported only for HTTP APIs.
    apiId String
    API identifier.
    integrationType String
    Integration type of an integration. Valid values: AWS (supported only for WebSocket APIs), AWS_PROXY, HTTP (supported only for WebSocket APIs), HTTP_PROXY, MOCK (supported only for WebSocket APIs). For an HTTP API private integration, use HTTP_PROXY.
    connectionId String
    ID of the VPC link for a private integration. Supported only for HTTP APIs. Must be between 1 and 1024 characters in length.
    connectionType String
    Type of the network connection to the integration endpoint. Valid values: INTERNET, VPC_LINK. Default is INTERNET.
    contentHandlingStrategy String
    How to handle response payload content type conversions. Valid values: CONVERT_TO_BINARY, CONVERT_TO_TEXT. Supported only for WebSocket APIs.
    credentialsArn String
    Credentials required for the integration, if any.
    description String
    Description of the integration.
    integrationMethod String
    Integration's HTTP method. Must be specified if integration_type is not MOCK.
    integrationSubtype String
    AWS service action to invoke. Supported only for HTTP APIs when integration_type is AWS_PROXY. See the AWS service integration reference documentation for supported values. Must be between 1 and 128 characters in length.
    integrationUri String
    URI of the Lambda function for a Lambda proxy integration, when integration_type is AWS_PROXY. For an HTTP integration, specify a fully-qualified URL. For an HTTP API private integration, specify the ARN of an Application Load Balancer listener, Network Load Balancer listener, or AWS Cloud Map service.
    passthroughBehavior String
    Pass-through behavior for incoming requests based on the Content-Type header in the request, and the available mapping templates specified as the request_templates attribute. Valid values: WHEN_NO_MATCH, WHEN_NO_TEMPLATES, NEVER. Default is WHEN_NO_MATCH. Supported only for WebSocket APIs.
    payloadFormatVersion String
    The format of the payload sent to an integration. Valid values: 1.0, 2.0. Default is 1.0.
    requestParameters Map<String,String>
    For WebSocket APIs, a key-value map specifying request parameters that are passed from the method request to the backend. For HTTP APIs with a specified integration_subtype, a key-value map specifying parameters that are passed to AWS_PROXY integrations. For HTTP APIs without a specified integration_subtype, a key-value map specifying how to transform HTTP requests before sending them to the backend. See the Amazon API Gateway Developer Guide for details.
    requestTemplates Map<String,String>
    Map of Velocity templates that are applied on the request payload based on the value of the Content-Type header sent by the client. Supported only for WebSocket APIs.
    responseParameters List<IntegrationResponseParameter>
    Mappings to transform the HTTP response from a backend integration before returning the response to clients. Supported only for HTTP APIs.
    templateSelectionExpression String
    The template selection expression for the integration.
    timeoutMilliseconds Integer
    Custom timeout between 50 and 29,000 milliseconds for WebSocket APIs and between 50 and 30,000 milliseconds for HTTP APIs. The default timeout is 29 seconds for WebSocket APIs and 30 seconds for HTTP APIs. this provider will only perform drift detection of its value when present in a configuration.
    tlsConfig IntegrationTlsConfig
    TLS configuration for a private integration. Supported only for HTTP APIs.
    apiId string
    API identifier.
    integrationType string
    Integration type of an integration. Valid values: AWS (supported only for WebSocket APIs), AWS_PROXY, HTTP (supported only for WebSocket APIs), HTTP_PROXY, MOCK (supported only for WebSocket APIs). For an HTTP API private integration, use HTTP_PROXY.
    connectionId string
    ID of the VPC link for a private integration. Supported only for HTTP APIs. Must be between 1 and 1024 characters in length.
    connectionType string
    Type of the network connection to the integration endpoint. Valid values: INTERNET, VPC_LINK. Default is INTERNET.
    contentHandlingStrategy string
    How to handle response payload content type conversions. Valid values: CONVERT_TO_BINARY, CONVERT_TO_TEXT. Supported only for WebSocket APIs.
    credentialsArn string
    Credentials required for the integration, if any.
    description string
    Description of the integration.
    integrationMethod string
    Integration's HTTP method. Must be specified if integration_type is not MOCK.
    integrationSubtype string
    AWS service action to invoke. Supported only for HTTP APIs when integration_type is AWS_PROXY. See the AWS service integration reference documentation for supported values. Must be between 1 and 128 characters in length.
    integrationUri string
    URI of the Lambda function for a Lambda proxy integration, when integration_type is AWS_PROXY. For an HTTP integration, specify a fully-qualified URL. For an HTTP API private integration, specify the ARN of an Application Load Balancer listener, Network Load Balancer listener, or AWS Cloud Map service.
    passthroughBehavior string
    Pass-through behavior for incoming requests based on the Content-Type header in the request, and the available mapping templates specified as the request_templates attribute. Valid values: WHEN_NO_MATCH, WHEN_NO_TEMPLATES, NEVER. Default is WHEN_NO_MATCH. Supported only for WebSocket APIs.
    payloadFormatVersion string
    The format of the payload sent to an integration. Valid values: 1.0, 2.0. Default is 1.0.
    requestParameters {[key: string]: string}
    For WebSocket APIs, a key-value map specifying request parameters that are passed from the method request to the backend. For HTTP APIs with a specified integration_subtype, a key-value map specifying parameters that are passed to AWS_PROXY integrations. For HTTP APIs without a specified integration_subtype, a key-value map specifying how to transform HTTP requests before sending them to the backend. See the Amazon API Gateway Developer Guide for details.
    requestTemplates {[key: string]: string}
    Map of Velocity templates that are applied on the request payload based on the value of the Content-Type header sent by the client. Supported only for WebSocket APIs.
    responseParameters IntegrationResponseParameter[]
    Mappings to transform the HTTP response from a backend integration before returning the response to clients. Supported only for HTTP APIs.
    templateSelectionExpression string
    The template selection expression for the integration.
    timeoutMilliseconds number
    Custom timeout between 50 and 29,000 milliseconds for WebSocket APIs and between 50 and 30,000 milliseconds for HTTP APIs. The default timeout is 29 seconds for WebSocket APIs and 30 seconds for HTTP APIs. this provider will only perform drift detection of its value when present in a configuration.
    tlsConfig IntegrationTlsConfig
    TLS configuration for a private integration. Supported only for HTTP APIs.
    api_id str
    API identifier.
    integration_type str
    Integration type of an integration. Valid values: AWS (supported only for WebSocket APIs), AWS_PROXY, HTTP (supported only for WebSocket APIs), HTTP_PROXY, MOCK (supported only for WebSocket APIs). For an HTTP API private integration, use HTTP_PROXY.
    connection_id str
    ID of the VPC link for a private integration. Supported only for HTTP APIs. Must be between 1 and 1024 characters in length.
    connection_type str
    Type of the network connection to the integration endpoint. Valid values: INTERNET, VPC_LINK. Default is INTERNET.
    content_handling_strategy str
    How to handle response payload content type conversions. Valid values: CONVERT_TO_BINARY, CONVERT_TO_TEXT. Supported only for WebSocket APIs.
    credentials_arn str
    Credentials required for the integration, if any.
    description str
    Description of the integration.
    integration_method str
    Integration's HTTP method. Must be specified if integration_type is not MOCK.
    integration_subtype str
    AWS service action to invoke. Supported only for HTTP APIs when integration_type is AWS_PROXY. See the AWS service integration reference documentation for supported values. Must be between 1 and 128 characters in length.
    integration_uri str
    URI of the Lambda function for a Lambda proxy integration, when integration_type is AWS_PROXY. For an HTTP integration, specify a fully-qualified URL. For an HTTP API private integration, specify the ARN of an Application Load Balancer listener, Network Load Balancer listener, or AWS Cloud Map service.
    passthrough_behavior str
    Pass-through behavior for incoming requests based on the Content-Type header in the request, and the available mapping templates specified as the request_templates attribute. Valid values: WHEN_NO_MATCH, WHEN_NO_TEMPLATES, NEVER. Default is WHEN_NO_MATCH. Supported only for WebSocket APIs.
    payload_format_version str
    The format of the payload sent to an integration. Valid values: 1.0, 2.0. Default is 1.0.
    request_parameters Mapping[str, str]
    For WebSocket APIs, a key-value map specifying request parameters that are passed from the method request to the backend. For HTTP APIs with a specified integration_subtype, a key-value map specifying parameters that are passed to AWS_PROXY integrations. For HTTP APIs without a specified integration_subtype, a key-value map specifying how to transform HTTP requests before sending them to the backend. See the Amazon API Gateway Developer Guide for details.
    request_templates Mapping[str, str]
    Map of Velocity templates that are applied on the request payload based on the value of the Content-Type header sent by the client. Supported only for WebSocket APIs.
    response_parameters Sequence[IntegrationResponseParameterArgs]
    Mappings to transform the HTTP response from a backend integration before returning the response to clients. Supported only for HTTP APIs.
    template_selection_expression str
    The template selection expression for the integration.
    timeout_milliseconds int
    Custom timeout between 50 and 29,000 milliseconds for WebSocket APIs and between 50 and 30,000 milliseconds for HTTP APIs. The default timeout is 29 seconds for WebSocket APIs and 30 seconds for HTTP APIs. this provider will only perform drift detection of its value when present in a configuration.
    tls_config IntegrationTlsConfigArgs
    TLS configuration for a private integration. Supported only for HTTP APIs.
    apiId String
    API identifier.
    integrationType String
    Integration type of an integration. Valid values: AWS (supported only for WebSocket APIs), AWS_PROXY, HTTP (supported only for WebSocket APIs), HTTP_PROXY, MOCK (supported only for WebSocket APIs). For an HTTP API private integration, use HTTP_PROXY.
    connectionId String
    ID of the VPC link for a private integration. Supported only for HTTP APIs. Must be between 1 and 1024 characters in length.
    connectionType String
    Type of the network connection to the integration endpoint. Valid values: INTERNET, VPC_LINK. Default is INTERNET.
    contentHandlingStrategy String
    How to handle response payload content type conversions. Valid values: CONVERT_TO_BINARY, CONVERT_TO_TEXT. Supported only for WebSocket APIs.
    credentialsArn String
    Credentials required for the integration, if any.
    description String
    Description of the integration.
    integrationMethod String
    Integration's HTTP method. Must be specified if integration_type is not MOCK.
    integrationSubtype String
    AWS service action to invoke. Supported only for HTTP APIs when integration_type is AWS_PROXY. See the AWS service integration reference documentation for supported values. Must be between 1 and 128 characters in length.
    integrationUri String
    URI of the Lambda function for a Lambda proxy integration, when integration_type is AWS_PROXY. For an HTTP integration, specify a fully-qualified URL. For an HTTP API private integration, specify the ARN of an Application Load Balancer listener, Network Load Balancer listener, or AWS Cloud Map service.
    passthroughBehavior String
    Pass-through behavior for incoming requests based on the Content-Type header in the request, and the available mapping templates specified as the request_templates attribute. Valid values: WHEN_NO_MATCH, WHEN_NO_TEMPLATES, NEVER. Default is WHEN_NO_MATCH. Supported only for WebSocket APIs.
    payloadFormatVersion String
    The format of the payload sent to an integration. Valid values: 1.0, 2.0. Default is 1.0.
    requestParameters Map<String>
    For WebSocket APIs, a key-value map specifying request parameters that are passed from the method request to the backend. For HTTP APIs with a specified integration_subtype, a key-value map specifying parameters that are passed to AWS_PROXY integrations. For HTTP APIs without a specified integration_subtype, a key-value map specifying how to transform HTTP requests before sending them to the backend. See the Amazon API Gateway Developer Guide for details.
    requestTemplates Map<String>
    Map of Velocity templates that are applied on the request payload based on the value of the Content-Type header sent by the client. Supported only for WebSocket APIs.
    responseParameters List<Property Map>
    Mappings to transform the HTTP response from a backend integration before returning the response to clients. Supported only for HTTP APIs.
    templateSelectionExpression String
    The template selection expression for the integration.
    timeoutMilliseconds Number
    Custom timeout between 50 and 29,000 milliseconds for WebSocket APIs and between 50 and 30,000 milliseconds for HTTP APIs. The default timeout is 29 seconds for WebSocket APIs and 30 seconds for HTTP APIs. this provider will only perform drift detection of its value when present in a configuration.
    tlsConfig Property Map
    TLS configuration for a private integration. Supported only for HTTP APIs.

    Outputs

    All input properties are implicitly available as output properties. Additionally, the Integration resource produces the following output properties:

    Id string
    The provider-assigned unique ID for this managed resource.
    IntegrationResponseSelectionExpression string
    The integration response selection expression for the integration.
    Id string
    The provider-assigned unique ID for this managed resource.
    IntegrationResponseSelectionExpression string
    The integration response selection expression for the integration.
    id String
    The provider-assigned unique ID for this managed resource.
    integrationResponseSelectionExpression String
    The integration response selection expression for the integration.
    id string
    The provider-assigned unique ID for this managed resource.
    integrationResponseSelectionExpression string
    The integration response selection expression for the integration.
    id str
    The provider-assigned unique ID for this managed resource.
    integration_response_selection_expression str
    The integration response selection expression for the integration.
    id String
    The provider-assigned unique ID for this managed resource.
    integrationResponseSelectionExpression String
    The integration response selection expression for the integration.

    Look up Existing Integration Resource

    Get an existing Integration resource’s state with the given name, ID, and optional extra properties used to qualify the lookup.

    public static get(name: string, id: Input<ID>, state?: IntegrationState, opts?: CustomResourceOptions): Integration
    @staticmethod
    def get(resource_name: str,
            id: str,
            opts: Optional[ResourceOptions] = None,
            api_id: Optional[str] = None,
            connection_id: Optional[str] = None,
            connection_type: Optional[str] = None,
            content_handling_strategy: Optional[str] = None,
            credentials_arn: Optional[str] = None,
            description: Optional[str] = None,
            integration_method: Optional[str] = None,
            integration_response_selection_expression: Optional[str] = None,
            integration_subtype: Optional[str] = None,
            integration_type: Optional[str] = None,
            integration_uri: Optional[str] = None,
            passthrough_behavior: Optional[str] = None,
            payload_format_version: Optional[str] = None,
            request_parameters: Optional[Mapping[str, str]] = None,
            request_templates: Optional[Mapping[str, str]] = None,
            response_parameters: Optional[Sequence[IntegrationResponseParameterArgs]] = None,
            template_selection_expression: Optional[str] = None,
            timeout_milliseconds: Optional[int] = None,
            tls_config: Optional[IntegrationTlsConfigArgs] = None) -> Integration
    func GetIntegration(ctx *Context, name string, id IDInput, state *IntegrationState, opts ...ResourceOption) (*Integration, error)
    public static Integration Get(string name, Input<string> id, IntegrationState? state, CustomResourceOptions? opts = null)
    public static Integration get(String name, Output<String> id, IntegrationState state, CustomResourceOptions options)
    Resource lookup is not supported in YAML
    name
    The unique name of the resulting resource.
    id
    The unique provider ID of the resource to lookup.
    state
    Any extra arguments used during the lookup.
    opts
    A bag of options that control this resource's behavior.
    resource_name
    The unique name of the resulting resource.
    id
    The unique provider ID of the resource to lookup.
    name
    The unique name of the resulting resource.
    id
    The unique provider ID of the resource to lookup.
    state
    Any extra arguments used during the lookup.
    opts
    A bag of options that control this resource's behavior.
    name
    The unique name of the resulting resource.
    id
    The unique provider ID of the resource to lookup.
    state
    Any extra arguments used during the lookup.
    opts
    A bag of options that control this resource's behavior.
    name
    The unique name of the resulting resource.
    id
    The unique provider ID of the resource to lookup.
    state
    Any extra arguments used during the lookup.
    opts
    A bag of options that control this resource's behavior.
    The following state arguments are supported:
    ApiId string
    API identifier.
    ConnectionId string
    ID of the VPC link for a private integration. Supported only for HTTP APIs. Must be between 1 and 1024 characters in length.
    ConnectionType string
    Type of the network connection to the integration endpoint. Valid values: INTERNET, VPC_LINK. Default is INTERNET.
    ContentHandlingStrategy string
    How to handle response payload content type conversions. Valid values: CONVERT_TO_BINARY, CONVERT_TO_TEXT. Supported only for WebSocket APIs.
    CredentialsArn string
    Credentials required for the integration, if any.
    Description string
    Description of the integration.
    IntegrationMethod string
    Integration's HTTP method. Must be specified if integration_type is not MOCK.
    IntegrationResponseSelectionExpression string
    The integration response selection expression for the integration.
    IntegrationSubtype string
    AWS service action to invoke. Supported only for HTTP APIs when integration_type is AWS_PROXY. See the AWS service integration reference documentation for supported values. Must be between 1 and 128 characters in length.
    IntegrationType string
    Integration type of an integration. Valid values: AWS (supported only for WebSocket APIs), AWS_PROXY, HTTP (supported only for WebSocket APIs), HTTP_PROXY, MOCK (supported only for WebSocket APIs). For an HTTP API private integration, use HTTP_PROXY.
    IntegrationUri string
    URI of the Lambda function for a Lambda proxy integration, when integration_type is AWS_PROXY. For an HTTP integration, specify a fully-qualified URL. For an HTTP API private integration, specify the ARN of an Application Load Balancer listener, Network Load Balancer listener, or AWS Cloud Map service.
    PassthroughBehavior string
    Pass-through behavior for incoming requests based on the Content-Type header in the request, and the available mapping templates specified as the request_templates attribute. Valid values: WHEN_NO_MATCH, WHEN_NO_TEMPLATES, NEVER. Default is WHEN_NO_MATCH. Supported only for WebSocket APIs.
    PayloadFormatVersion string
    The format of the payload sent to an integration. Valid values: 1.0, 2.0. Default is 1.0.
    RequestParameters Dictionary<string, string>
    For WebSocket APIs, a key-value map specifying request parameters that are passed from the method request to the backend. For HTTP APIs with a specified integration_subtype, a key-value map specifying parameters that are passed to AWS_PROXY integrations. For HTTP APIs without a specified integration_subtype, a key-value map specifying how to transform HTTP requests before sending them to the backend. See the Amazon API Gateway Developer Guide for details.
    RequestTemplates Dictionary<string, string>
    Map of Velocity templates that are applied on the request payload based on the value of the Content-Type header sent by the client. Supported only for WebSocket APIs.
    ResponseParameters List<IntegrationResponseParameter>
    Mappings to transform the HTTP response from a backend integration before returning the response to clients. Supported only for HTTP APIs.
    TemplateSelectionExpression string
    The template selection expression for the integration.
    TimeoutMilliseconds int
    Custom timeout between 50 and 29,000 milliseconds for WebSocket APIs and between 50 and 30,000 milliseconds for HTTP APIs. The default timeout is 29 seconds for WebSocket APIs and 30 seconds for HTTP APIs. this provider will only perform drift detection of its value when present in a configuration.
    TlsConfig IntegrationTlsConfig
    TLS configuration for a private integration. Supported only for HTTP APIs.
    ApiId string
    API identifier.
    ConnectionId string
    ID of the VPC link for a private integration. Supported only for HTTP APIs. Must be between 1 and 1024 characters in length.
    ConnectionType string
    Type of the network connection to the integration endpoint. Valid values: INTERNET, VPC_LINK. Default is INTERNET.
    ContentHandlingStrategy string
    How to handle response payload content type conversions. Valid values: CONVERT_TO_BINARY, CONVERT_TO_TEXT. Supported only for WebSocket APIs.
    CredentialsArn string
    Credentials required for the integration, if any.
    Description string
    Description of the integration.
    IntegrationMethod string
    Integration's HTTP method. Must be specified if integration_type is not MOCK.
    IntegrationResponseSelectionExpression string
    The integration response selection expression for the integration.
    IntegrationSubtype string
    AWS service action to invoke. Supported only for HTTP APIs when integration_type is AWS_PROXY. See the AWS service integration reference documentation for supported values. Must be between 1 and 128 characters in length.
    IntegrationType string
    Integration type of an integration. Valid values: AWS (supported only for WebSocket APIs), AWS_PROXY, HTTP (supported only for WebSocket APIs), HTTP_PROXY, MOCK (supported only for WebSocket APIs). For an HTTP API private integration, use HTTP_PROXY.
    IntegrationUri string
    URI of the Lambda function for a Lambda proxy integration, when integration_type is AWS_PROXY. For an HTTP integration, specify a fully-qualified URL. For an HTTP API private integration, specify the ARN of an Application Load Balancer listener, Network Load Balancer listener, or AWS Cloud Map service.
    PassthroughBehavior string
    Pass-through behavior for incoming requests based on the Content-Type header in the request, and the available mapping templates specified as the request_templates attribute. Valid values: WHEN_NO_MATCH, WHEN_NO_TEMPLATES, NEVER. Default is WHEN_NO_MATCH. Supported only for WebSocket APIs.
    PayloadFormatVersion string
    The format of the payload sent to an integration. Valid values: 1.0, 2.0. Default is 1.0.
    RequestParameters map[string]string
    For WebSocket APIs, a key-value map specifying request parameters that are passed from the method request to the backend. For HTTP APIs with a specified integration_subtype, a key-value map specifying parameters that are passed to AWS_PROXY integrations. For HTTP APIs without a specified integration_subtype, a key-value map specifying how to transform HTTP requests before sending them to the backend. See the Amazon API Gateway Developer Guide for details.
    RequestTemplates map[string]string
    Map of Velocity templates that are applied on the request payload based on the value of the Content-Type header sent by the client. Supported only for WebSocket APIs.
    ResponseParameters []IntegrationResponseParameterArgs
    Mappings to transform the HTTP response from a backend integration before returning the response to clients. Supported only for HTTP APIs.
    TemplateSelectionExpression string
    The template selection expression for the integration.
    TimeoutMilliseconds int
    Custom timeout between 50 and 29,000 milliseconds for WebSocket APIs and between 50 and 30,000 milliseconds for HTTP APIs. The default timeout is 29 seconds for WebSocket APIs and 30 seconds for HTTP APIs. this provider will only perform drift detection of its value when present in a configuration.
    TlsConfig IntegrationTlsConfigArgs
    TLS configuration for a private integration. Supported only for HTTP APIs.
    apiId String
    API identifier.
    connectionId String
    ID of the VPC link for a private integration. Supported only for HTTP APIs. Must be between 1 and 1024 characters in length.
    connectionType String
    Type of the network connection to the integration endpoint. Valid values: INTERNET, VPC_LINK. Default is INTERNET.
    contentHandlingStrategy String
    How to handle response payload content type conversions. Valid values: CONVERT_TO_BINARY, CONVERT_TO_TEXT. Supported only for WebSocket APIs.
    credentialsArn String
    Credentials required for the integration, if any.
    description String
    Description of the integration.
    integrationMethod String
    Integration's HTTP method. Must be specified if integration_type is not MOCK.
    integrationResponseSelectionExpression String
    The integration response selection expression for the integration.
    integrationSubtype String
    AWS service action to invoke. Supported only for HTTP APIs when integration_type is AWS_PROXY. See the AWS service integration reference documentation for supported values. Must be between 1 and 128 characters in length.
    integrationType String
    Integration type of an integration. Valid values: AWS (supported only for WebSocket APIs), AWS_PROXY, HTTP (supported only for WebSocket APIs), HTTP_PROXY, MOCK (supported only for WebSocket APIs). For an HTTP API private integration, use HTTP_PROXY.
    integrationUri String
    URI of the Lambda function for a Lambda proxy integration, when integration_type is AWS_PROXY. For an HTTP integration, specify a fully-qualified URL. For an HTTP API private integration, specify the ARN of an Application Load Balancer listener, Network Load Balancer listener, or AWS Cloud Map service.
    passthroughBehavior String
    Pass-through behavior for incoming requests based on the Content-Type header in the request, and the available mapping templates specified as the request_templates attribute. Valid values: WHEN_NO_MATCH, WHEN_NO_TEMPLATES, NEVER. Default is WHEN_NO_MATCH. Supported only for WebSocket APIs.
    payloadFormatVersion String
    The format of the payload sent to an integration. Valid values: 1.0, 2.0. Default is 1.0.
    requestParameters Map<String,String>
    For WebSocket APIs, a key-value map specifying request parameters that are passed from the method request to the backend. For HTTP APIs with a specified integration_subtype, a key-value map specifying parameters that are passed to AWS_PROXY integrations. For HTTP APIs without a specified integration_subtype, a key-value map specifying how to transform HTTP requests before sending them to the backend. See the Amazon API Gateway Developer Guide for details.
    requestTemplates Map<String,String>
    Map of Velocity templates that are applied on the request payload based on the value of the Content-Type header sent by the client. Supported only for WebSocket APIs.
    responseParameters List<IntegrationResponseParameter>
    Mappings to transform the HTTP response from a backend integration before returning the response to clients. Supported only for HTTP APIs.
    templateSelectionExpression String
    The template selection expression for the integration.
    timeoutMilliseconds Integer
    Custom timeout between 50 and 29,000 milliseconds for WebSocket APIs and between 50 and 30,000 milliseconds for HTTP APIs. The default timeout is 29 seconds for WebSocket APIs and 30 seconds for HTTP APIs. this provider will only perform drift detection of its value when present in a configuration.
    tlsConfig IntegrationTlsConfig
    TLS configuration for a private integration. Supported only for HTTP APIs.
    apiId string
    API identifier.
    connectionId string
    ID of the VPC link for a private integration. Supported only for HTTP APIs. Must be between 1 and 1024 characters in length.
    connectionType string
    Type of the network connection to the integration endpoint. Valid values: INTERNET, VPC_LINK. Default is INTERNET.
    contentHandlingStrategy string
    How to handle response payload content type conversions. Valid values: CONVERT_TO_BINARY, CONVERT_TO_TEXT. Supported only for WebSocket APIs.
    credentialsArn string
    Credentials required for the integration, if any.
    description string
    Description of the integration.
    integrationMethod string
    Integration's HTTP method. Must be specified if integration_type is not MOCK.
    integrationResponseSelectionExpression string
    The integration response selection expression for the integration.
    integrationSubtype string
    AWS service action to invoke. Supported only for HTTP APIs when integration_type is AWS_PROXY. See the AWS service integration reference documentation for supported values. Must be between 1 and 128 characters in length.
    integrationType string
    Integration type of an integration. Valid values: AWS (supported only for WebSocket APIs), AWS_PROXY, HTTP (supported only for WebSocket APIs), HTTP_PROXY, MOCK (supported only for WebSocket APIs). For an HTTP API private integration, use HTTP_PROXY.
    integrationUri string
    URI of the Lambda function for a Lambda proxy integration, when integration_type is AWS_PROXY. For an HTTP integration, specify a fully-qualified URL. For an HTTP API private integration, specify the ARN of an Application Load Balancer listener, Network Load Balancer listener, or AWS Cloud Map service.
    passthroughBehavior string
    Pass-through behavior for incoming requests based on the Content-Type header in the request, and the available mapping templates specified as the request_templates attribute. Valid values: WHEN_NO_MATCH, WHEN_NO_TEMPLATES, NEVER. Default is WHEN_NO_MATCH. Supported only for WebSocket APIs.
    payloadFormatVersion string
    The format of the payload sent to an integration. Valid values: 1.0, 2.0. Default is 1.0.
    requestParameters {[key: string]: string}
    For WebSocket APIs, a key-value map specifying request parameters that are passed from the method request to the backend. For HTTP APIs with a specified integration_subtype, a key-value map specifying parameters that are passed to AWS_PROXY integrations. For HTTP APIs without a specified integration_subtype, a key-value map specifying how to transform HTTP requests before sending them to the backend. See the Amazon API Gateway Developer Guide for details.
    requestTemplates {[key: string]: string}
    Map of Velocity templates that are applied on the request payload based on the value of the Content-Type header sent by the client. Supported only for WebSocket APIs.
    responseParameters IntegrationResponseParameter[]
    Mappings to transform the HTTP response from a backend integration before returning the response to clients. Supported only for HTTP APIs.
    templateSelectionExpression string
    The template selection expression for the integration.
    timeoutMilliseconds number
    Custom timeout between 50 and 29,000 milliseconds for WebSocket APIs and between 50 and 30,000 milliseconds for HTTP APIs. The default timeout is 29 seconds for WebSocket APIs and 30 seconds for HTTP APIs. this provider will only perform drift detection of its value when present in a configuration.
    tlsConfig IntegrationTlsConfig
    TLS configuration for a private integration. Supported only for HTTP APIs.
    api_id str
    API identifier.
    connection_id str
    ID of the VPC link for a private integration. Supported only for HTTP APIs. Must be between 1 and 1024 characters in length.
    connection_type str
    Type of the network connection to the integration endpoint. Valid values: INTERNET, VPC_LINK. Default is INTERNET.
    content_handling_strategy str
    How to handle response payload content type conversions. Valid values: CONVERT_TO_BINARY, CONVERT_TO_TEXT. Supported only for WebSocket APIs.
    credentials_arn str
    Credentials required for the integration, if any.
    description str
    Description of the integration.
    integration_method str
    Integration's HTTP method. Must be specified if integration_type is not MOCK.
    integration_response_selection_expression str
    The integration response selection expression for the integration.
    integration_subtype str
    AWS service action to invoke. Supported only for HTTP APIs when integration_type is AWS_PROXY. See the AWS service integration reference documentation for supported values. Must be between 1 and 128 characters in length.
    integration_type str
    Integration type of an integration. Valid values: AWS (supported only for WebSocket APIs), AWS_PROXY, HTTP (supported only for WebSocket APIs), HTTP_PROXY, MOCK (supported only for WebSocket APIs). For an HTTP API private integration, use HTTP_PROXY.
    integration_uri str
    URI of the Lambda function for a Lambda proxy integration, when integration_type is AWS_PROXY. For an HTTP integration, specify a fully-qualified URL. For an HTTP API private integration, specify the ARN of an Application Load Balancer listener, Network Load Balancer listener, or AWS Cloud Map service.
    passthrough_behavior str
    Pass-through behavior for incoming requests based on the Content-Type header in the request, and the available mapping templates specified as the request_templates attribute. Valid values: WHEN_NO_MATCH, WHEN_NO_TEMPLATES, NEVER. Default is WHEN_NO_MATCH. Supported only for WebSocket APIs.
    payload_format_version str
    The format of the payload sent to an integration. Valid values: 1.0, 2.0. Default is 1.0.
    request_parameters Mapping[str, str]
    For WebSocket APIs, a key-value map specifying request parameters that are passed from the method request to the backend. For HTTP APIs with a specified integration_subtype, a key-value map specifying parameters that are passed to AWS_PROXY integrations. For HTTP APIs without a specified integration_subtype, a key-value map specifying how to transform HTTP requests before sending them to the backend. See the Amazon API Gateway Developer Guide for details.
    request_templates Mapping[str, str]
    Map of Velocity templates that are applied on the request payload based on the value of the Content-Type header sent by the client. Supported only for WebSocket APIs.
    response_parameters Sequence[IntegrationResponseParameterArgs]
    Mappings to transform the HTTP response from a backend integration before returning the response to clients. Supported only for HTTP APIs.
    template_selection_expression str
    The template selection expression for the integration.
    timeout_milliseconds int
    Custom timeout between 50 and 29,000 milliseconds for WebSocket APIs and between 50 and 30,000 milliseconds for HTTP APIs. The default timeout is 29 seconds for WebSocket APIs and 30 seconds for HTTP APIs. this provider will only perform drift detection of its value when present in a configuration.
    tls_config IntegrationTlsConfigArgs
    TLS configuration for a private integration. Supported only for HTTP APIs.
    apiId String
    API identifier.
    connectionId String
    ID of the VPC link for a private integration. Supported only for HTTP APIs. Must be between 1 and 1024 characters in length.
    connectionType String
    Type of the network connection to the integration endpoint. Valid values: INTERNET, VPC_LINK. Default is INTERNET.
    contentHandlingStrategy String
    How to handle response payload content type conversions. Valid values: CONVERT_TO_BINARY, CONVERT_TO_TEXT. Supported only for WebSocket APIs.
    credentialsArn String
    Credentials required for the integration, if any.
    description String
    Description of the integration.
    integrationMethod String
    Integration's HTTP method. Must be specified if integration_type is not MOCK.
    integrationResponseSelectionExpression String
    The integration response selection expression for the integration.
    integrationSubtype String
    AWS service action to invoke. Supported only for HTTP APIs when integration_type is AWS_PROXY. See the AWS service integration reference documentation for supported values. Must be between 1 and 128 characters in length.
    integrationType String
    Integration type of an integration. Valid values: AWS (supported only for WebSocket APIs), AWS_PROXY, HTTP (supported only for WebSocket APIs), HTTP_PROXY, MOCK (supported only for WebSocket APIs). For an HTTP API private integration, use HTTP_PROXY.
    integrationUri String
    URI of the Lambda function for a Lambda proxy integration, when integration_type is AWS_PROXY. For an HTTP integration, specify a fully-qualified URL. For an HTTP API private integration, specify the ARN of an Application Load Balancer listener, Network Load Balancer listener, or AWS Cloud Map service.
    passthroughBehavior String
    Pass-through behavior for incoming requests based on the Content-Type header in the request, and the available mapping templates specified as the request_templates attribute. Valid values: WHEN_NO_MATCH, WHEN_NO_TEMPLATES, NEVER. Default is WHEN_NO_MATCH. Supported only for WebSocket APIs.
    payloadFormatVersion String
    The format of the payload sent to an integration. Valid values: 1.0, 2.0. Default is 1.0.
    requestParameters Map<String>
    For WebSocket APIs, a key-value map specifying request parameters that are passed from the method request to the backend. For HTTP APIs with a specified integration_subtype, a key-value map specifying parameters that are passed to AWS_PROXY integrations. For HTTP APIs without a specified integration_subtype, a key-value map specifying how to transform HTTP requests before sending them to the backend. See the Amazon API Gateway Developer Guide for details.
    requestTemplates Map<String>
    Map of Velocity templates that are applied on the request payload based on the value of the Content-Type header sent by the client. Supported only for WebSocket APIs.
    responseParameters List<Property Map>
    Mappings to transform the HTTP response from a backend integration before returning the response to clients. Supported only for HTTP APIs.
    templateSelectionExpression String
    The template selection expression for the integration.
    timeoutMilliseconds Number
    Custom timeout between 50 and 29,000 milliseconds for WebSocket APIs and between 50 and 30,000 milliseconds for HTTP APIs. The default timeout is 29 seconds for WebSocket APIs and 30 seconds for HTTP APIs. this provider will only perform drift detection of its value when present in a configuration.
    tlsConfig Property Map
    TLS configuration for a private integration. Supported only for HTTP APIs.

    Supporting Types

    IntegrationResponseParameter, IntegrationResponseParameterArgs

    Mappings Dictionary<string, string>
    Key-value map. The key of this map identifies the location of the request parameter to change, and how to change it. The corresponding value specifies the new data for the parameter. See the Amazon API Gateway Developer Guide for details.
    StatusCode string
    HTTP status code in the range 200-599.
    Mappings map[string]string
    Key-value map. The key of this map identifies the location of the request parameter to change, and how to change it. The corresponding value specifies the new data for the parameter. See the Amazon API Gateway Developer Guide for details.
    StatusCode string
    HTTP status code in the range 200-599.
    mappings Map<String,String>
    Key-value map. The key of this map identifies the location of the request parameter to change, and how to change it. The corresponding value specifies the new data for the parameter. See the Amazon API Gateway Developer Guide for details.
    statusCode String
    HTTP status code in the range 200-599.
    mappings {[key: string]: string}
    Key-value map. The key of this map identifies the location of the request parameter to change, and how to change it. The corresponding value specifies the new data for the parameter. See the Amazon API Gateway Developer Guide for details.
    statusCode string
    HTTP status code in the range 200-599.
    mappings Mapping[str, str]
    Key-value map. The key of this map identifies the location of the request parameter to change, and how to change it. The corresponding value specifies the new data for the parameter. See the Amazon API Gateway Developer Guide for details.
    status_code str
    HTTP status code in the range 200-599.
    mappings Map<String>
    Key-value map. The key of this map identifies the location of the request parameter to change, and how to change it. The corresponding value specifies the new data for the parameter. See the Amazon API Gateway Developer Guide for details.
    statusCode String
    HTTP status code in the range 200-599.

    IntegrationTlsConfig, IntegrationTlsConfigArgs

    ServerNameToVerify string
    If you specify a server name, API Gateway uses it to verify the hostname on the integration's certificate. The server name is also included in the TLS handshake to support Server Name Indication (SNI) or virtual hosting.
    ServerNameToVerify string
    If you specify a server name, API Gateway uses it to verify the hostname on the integration's certificate. The server name is also included in the TLS handshake to support Server Name Indication (SNI) or virtual hosting.
    serverNameToVerify String
    If you specify a server name, API Gateway uses it to verify the hostname on the integration's certificate. The server name is also included in the TLS handshake to support Server Name Indication (SNI) or virtual hosting.
    serverNameToVerify string
    If you specify a server name, API Gateway uses it to verify the hostname on the integration's certificate. The server name is also included in the TLS handshake to support Server Name Indication (SNI) or virtual hosting.
    server_name_to_verify str
    If you specify a server name, API Gateway uses it to verify the hostname on the integration's certificate. The server name is also included in the TLS handshake to support Server Name Indication (SNI) or virtual hosting.
    serverNameToVerify String
    If you specify a server name, API Gateway uses it to verify the hostname on the integration's certificate. The server name is also included in the TLS handshake to support Server Name Indication (SNI) or virtual hosting.

    Import

    Using pulumi import, import aws_apigatewayv2_integration using the API identifier and integration identifier. For example:

    $ pulumi import aws:apigatewayv2/integration:Integration example aabbccddee/1122334
    

    -> Note: The API Gateway managed integration created as part of quick_create cannot be imported.

    Package Details

    Repository
    AWS Classic pulumi/pulumi-aws
    License
    Apache-2.0
    Notes
    This Pulumi package is based on the aws Terraform Provider.
    aws logo

    Try AWS Native preview for resources not in the classic version.

    AWS Classic v6.28.1 published on Thursday, Mar 28, 2024 by Pulumi