aws logo
AWS Classic v5.33.0, Mar 24 23

aws.apigatewayv2.Integration

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

Example Usage

Basic

using System.Collections.Generic;
using Pulumi;
using Aws = Pulumi.Aws;

return await Deployment.RunAsync(() => 
{
    var example = new Aws.ApiGatewayV2.Integration("example", new()
    {
        ApiId = aws_apigatewayv2_api.Example.Id,
        IntegrationType = "MOCK",
    });

});
package main

import (
	"github.com/pulumi/pulumi-aws/sdk/v5/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(aws_apigatewayv2_api.Example.Id),
			IntegrationType: pulumi.String("MOCK"),
		})
		if err != nil {
			return err
		}
		return nil
	})
}
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(aws_apigatewayv2_api.example().id())
            .integrationType("MOCK")
            .build());

    }
}
import pulumi
import pulumi_aws as aws

example = aws.apigatewayv2.Integration("example",
    api_id=aws_apigatewayv2_api["example"]["id"],
    integration_type="MOCK")
import * as pulumi from "@pulumi/pulumi";
import * as aws from "@pulumi/aws";

const example = new aws.apigatewayv2.Integration("example", {
    apiId: aws_apigatewayv2_api.example.id,
    integrationType: "MOCK",
});
resources:
  example:
    type: aws:apigatewayv2:Integration
    properties:
      apiId: ${aws_apigatewayv2_api.example.id}
      integrationType: MOCK

Lambda Integration

using System.Collections.Generic;
using Pulumi;
using Aws = Pulumi.Aws;

return await Deployment.RunAsync(() => 
{
    var exampleFunction = new Aws.Lambda.Function("exampleFunction", new()
    {
        Code = new FileArchive("example.zip"),
        Role = aws_iam_role.Example.Arn,
        Handler = "index.handler",
        Runtime = "nodejs16.x",
    });

    var exampleIntegration = new Aws.ApiGatewayV2.Integration("exampleIntegration", new()
    {
        ApiId = aws_apigatewayv2_api.Example.Id,
        IntegrationType = "AWS_PROXY",
        ConnectionType = "INTERNET",
        ContentHandlingStrategy = "CONVERT_TO_TEXT",
        Description = "Lambda example",
        IntegrationMethod = "POST",
        IntegrationUri = exampleFunction.InvokeArn,
        PassthroughBehavior = "WHEN_NO_MATCH",
    });

});
package main

import (
	"github.com/pulumi/pulumi-aws/sdk/v5/go/aws"
	"github.com/pulumi/pulumi-aws/sdk/v5/go/aws/apigatewayv2"
	"github.com/pulumi/pulumi-aws/sdk/v5/go/aws/lambda"
	"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		exampleFunction, err := lambda.NewFunction(ctx, "exampleFunction", &lambda.FunctionArgs{
			Code:    pulumi.NewFileArchive("example.zip"),
			Role:    pulumi.Any(aws_iam_role.Example.Arn),
			Handler: pulumi.String("index.handler"),
			Runtime: pulumi.String("nodejs16.x"),
		})
		if err != nil {
			return err
		}
		_, err = apigatewayv2.NewIntegration(ctx, "exampleIntegration", &apigatewayv2.IntegrationArgs{
			ApiId:                   pulumi.Any(aws_apigatewayv2_api.Example.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:          exampleFunction.InvokeArn,
			PassthroughBehavior:     pulumi.String("WHEN_NO_MATCH"),
		})
		if err != nil {
			return err
		}
		return nil
	})
}
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 exampleFunction = new Function("exampleFunction", FunctionArgs.builder()        
            .code(new FileArchive("example.zip"))
            .role(aws_iam_role.example().arn())
            .handler("index.handler")
            .runtime("nodejs16.x")
            .build());

        var exampleIntegration = new Integration("exampleIntegration", IntegrationArgs.builder()        
            .apiId(aws_apigatewayv2_api.example().id())
            .integrationType("AWS_PROXY")
            .connectionType("INTERNET")
            .contentHandlingStrategy("CONVERT_TO_TEXT")
            .description("Lambda example")
            .integrationMethod("POST")
            .integrationUri(exampleFunction.invokeArn())
            .passthroughBehavior("WHEN_NO_MATCH")
            .build());

    }
}
import pulumi
import pulumi_aws as aws

example_function = aws.lambda_.Function("exampleFunction",
    code=pulumi.FileArchive("example.zip"),
    role=aws_iam_role["example"]["arn"],
    handler="index.handler",
    runtime="nodejs16.x")
example_integration = aws.apigatewayv2.Integration("exampleIntegration",
    api_id=aws_apigatewayv2_api["example"]["id"],
    integration_type="AWS_PROXY",
    connection_type="INTERNET",
    content_handling_strategy="CONVERT_TO_TEXT",
    description="Lambda example",
    integration_method="POST",
    integration_uri=example_function.invoke_arn,
    passthrough_behavior="WHEN_NO_MATCH")
import * as pulumi from "@pulumi/pulumi";
import * as aws from "@pulumi/aws";

const exampleFunction = new aws.lambda.Function("exampleFunction", {
    code: new pulumi.asset.FileArchive("example.zip"),
    role: aws_iam_role.example.arn,
    handler: "index.handler",
    runtime: "nodejs16.x",
});
const exampleIntegration = new aws.apigatewayv2.Integration("exampleIntegration", {
    apiId: aws_apigatewayv2_api.example.id,
    integrationType: "AWS_PROXY",
    connectionType: "INTERNET",
    contentHandlingStrategy: "CONVERT_TO_TEXT",
    description: "Lambda example",
    integrationMethod: "POST",
    integrationUri: exampleFunction.invokeArn,
    passthroughBehavior: "WHEN_NO_MATCH",
});
resources:
  exampleFunction:
    type: aws:lambda:Function
    properties:
      code:
        fn::FileArchive: example.zip
      role: ${aws_iam_role.example.arn}
      handler: index.handler
      runtime: nodejs16.x
  exampleIntegration:
    type: aws:apigatewayv2:Integration
    properties:
      apiId: ${aws_apigatewayv2_api.example.id}
      integrationType: AWS_PROXY
      connectionType: INTERNET
      contentHandlingStrategy: CONVERT_TO_TEXT
      description: Lambda example
      integrationMethod: POST
      integrationUri: ${exampleFunction.invokeArn}
      passthroughBehavior: WHEN_NO_MATCH

AWS Service Integration

using System.Collections.Generic;
using Pulumi;
using Aws = Pulumi.Aws;

return await Deployment.RunAsync(() => 
{
    var example = new Aws.ApiGatewayV2.Integration("example", new()
    {
        ApiId = aws_apigatewayv2_api.Example.Id,
        CredentialsArn = aws_iam_role.Example.Arn,
        Description = "SQS example",
        IntegrationType = "AWS_PROXY",
        IntegrationSubtype = "SQS-SendMessage",
        RequestParameters = 
        {
            { "QueueUrl", "$request.header.queueUrl" },
            { "MessageBody", "$request.body.message" },
        },
    });

});
package main

import (
	"github.com/pulumi/pulumi-aws/sdk/v5/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(aws_apigatewayv2_api.Example.Id),
			CredentialsArn:     pulumi.Any(aws_iam_role.Example.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
	})
}
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(aws_apigatewayv2_api.example().id())
            .credentialsArn(aws_iam_role.example().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());

    }
}
import pulumi
import pulumi_aws as aws

example = aws.apigatewayv2.Integration("example",
    api_id=aws_apigatewayv2_api["example"]["id"],
    credentials_arn=aws_iam_role["example"]["arn"],
    description="SQS example",
    integration_type="AWS_PROXY",
    integration_subtype="SQS-SendMessage",
    request_parameters={
        "QueueUrl": "$request.header.queueUrl",
        "MessageBody": "$request.body.message",
    })
import * as pulumi from "@pulumi/pulumi";
import * as aws from "@pulumi/aws";

const example = new aws.apigatewayv2.Integration("example", {
    apiId: aws_apigatewayv2_api.example.id,
    credentialsArn: aws_iam_role.example.arn,
    description: "SQS example",
    integrationType: "AWS_PROXY",
    integrationSubtype: "SQS-SendMessage",
    requestParameters: {
        QueueUrl: "$request.header.queueUrl",
        MessageBody: "$request.body.message",
    },
});
resources:
  example:
    type: aws:apigatewayv2:Integration
    properties:
      apiId: ${aws_apigatewayv2_api.example.id}
      credentialsArn: ${aws_iam_role.example.arn}
      description: SQS example
      integrationType: AWS_PROXY
      integrationSubtype: SQS-SendMessage
      requestParameters:
        QueueUrl: $request.header.queueUrl
        MessageBody: $request.body.message

Private Integration

using System.Collections.Generic;
using Pulumi;
using Aws = Pulumi.Aws;

return await Deployment.RunAsync(() => 
{
    var example = new Aws.ApiGatewayV2.Integration("example", new()
    {
        ApiId = aws_apigatewayv2_api.Example.Id,
        CredentialsArn = aws_iam_role.Example.Arn,
        Description = "Example with a load balancer",
        IntegrationType = "HTTP_PROXY",
        IntegrationUri = aws_lb_listener.Example.Arn,
        IntegrationMethod = "ANY",
        ConnectionType = "VPC_LINK",
        ConnectionId = aws_apigatewayv2_vpc_link.Example.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 main

import (
	"github.com/pulumi/pulumi-aws/sdk/v5/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(aws_apigatewayv2_api.Example.Id),
			CredentialsArn:    pulumi.Any(aws_iam_role.Example.Arn),
			Description:       pulumi.String("Example with a load balancer"),
			IntegrationType:   pulumi.String("HTTP_PROXY"),
			IntegrationUri:    pulumi.Any(aws_lb_listener.Example.Arn),
			IntegrationMethod: pulumi.String("ANY"),
			ConnectionType:    pulumi.String("VPC_LINK"),
			ConnectionId:      pulumi.Any(aws_apigatewayv2_vpc_link.Example.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
	})
}
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(aws_apigatewayv2_api.example().id())
            .credentialsArn(aws_iam_role.example().arn())
            .description("Example with a load balancer")
            .integrationType("HTTP_PROXY")
            .integrationUri(aws_lb_listener.example().arn())
            .integrationMethod("ANY")
            .connectionType("VPC_LINK")
            .connectionId(aws_apigatewayv2_vpc_link.example().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());

    }
}
import pulumi
import pulumi_aws as aws

example = aws.apigatewayv2.Integration("example",
    api_id=aws_apigatewayv2_api["example"]["id"],
    credentials_arn=aws_iam_role["example"]["arn"],
    description="Example with a load balancer",
    integration_type="HTTP_PROXY",
    integration_uri=aws_lb_listener["example"]["arn"],
    integration_method="ANY",
    connection_type="VPC_LINK",
    connection_id=aws_apigatewayv2_vpc_link["example"]["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",
            },
        ),
    ])
import * as pulumi from "@pulumi/pulumi";
import * as aws from "@pulumi/aws";

const example = new aws.apigatewayv2.Integration("example", {
    apiId: aws_apigatewayv2_api.example.id,
    credentialsArn: aws_iam_role.example.arn,
    description: "Example with a load balancer",
    integrationType: "HTTP_PROXY",
    integrationUri: aws_lb_listener.example.arn,
    integrationMethod: "ANY",
    connectionType: "VPC_LINK",
    connectionId: aws_apigatewayv2_vpc_link.example.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",
            },
        },
    ],
});
resources:
  example:
    type: aws:apigatewayv2:Integration
    properties:
      apiId: ${aws_apigatewayv2_api.example.id}
      credentialsArn: ${aws_iam_role.example.arn}
      description: Example with a load balancer
      integrationType: HTTP_PROXY
      integrationUri: ${aws_lb_listener.example.arn}
      integrationMethod: ANY
      connectionType: VPC_LINK
      connectionId: ${aws_apigatewayv2_vpc_link.example.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<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 []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<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 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 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 {[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 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 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 IntegrationTlsConfigArgs

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<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 []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<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 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 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 {[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 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 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 IntegrationTlsConfigArgs

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

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

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

aws_apigatewayv2_integration can be imported by using the API identifier and integration identifier, e.g.,

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

Package Details

Repository
AWS Classic pulumi/pulumi-aws
License
Apache-2.0
Notes

This Pulumi package is based on the aws Terraform Provider.