Try AWS Native preview for resources not in the classic version.
aws.apigatewayv2.Integration
Explore with Pulumi AI
Try AWS Native preview for resources not in the classic version.
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={
"serverNameToVerify": "example.com",
},
request_parameters={
"append:header.authforintegration": "$context.authorizer.authorizerResponse",
"overwrite:path": "staticValueForIntegration",
},
response_parameters=[
{
"statusCode": "403",
"mappings": {
"append:header.auth": "$context.authorizer.authorizerResponse",
},
},
{
"statusCode": "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
Resources are created with functions called constructors. To learn more about declaring and configuring resources, see Resources.
Constructor syntax
new Integration(name: string, args: IntegrationArgs, opts?: CustomResourceOptions);
@overload
def Integration(resource_name: str,
args: IntegrationArgs,
opts: Optional[ResourceOptions] = None)
@overload
def Integration(resource_name: str,
opts: Optional[ResourceOptions] = None,
api_id: Optional[str] = None,
integration_type: Optional[str] = None,
credentials_arn: Optional[str] = None,
integration_uri: Optional[str] = None,
connection_type: Optional[str] = None,
description: Optional[str] = None,
integration_method: Optional[str] = None,
integration_subtype: Optional[str] = None,
connection_id: Optional[str] = None,
content_handling_strategy: 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)
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.
Parameters
- 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.
Constructor example
The following reference example uses placeholder values for all input properties.
var awsIntegrationResource = new Aws.ApiGatewayV2.Integration("awsIntegrationResource", new()
{
ApiId = "string",
IntegrationType = "string",
CredentialsArn = "string",
IntegrationUri = "string",
ConnectionType = "string",
Description = "string",
IntegrationMethod = "string",
IntegrationSubtype = "string",
ConnectionId = "string",
ContentHandlingStrategy = "string",
PassthroughBehavior = "string",
PayloadFormatVersion = "string",
RequestParameters =
{
{ "string", "string" },
},
RequestTemplates =
{
{ "string", "string" },
},
ResponseParameters = new[]
{
new Aws.ApiGatewayV2.Inputs.IntegrationResponseParameterArgs
{
Mappings =
{
{ "string", "string" },
},
StatusCode = "string",
},
},
TemplateSelectionExpression = "string",
TimeoutMilliseconds = 0,
TlsConfig = new Aws.ApiGatewayV2.Inputs.IntegrationTlsConfigArgs
{
ServerNameToVerify = "string",
},
});
example, err := apigatewayv2.NewIntegration(ctx, "awsIntegrationResource", &apigatewayv2.IntegrationArgs{
ApiId: pulumi.String("string"),
IntegrationType: pulumi.String("string"),
CredentialsArn: pulumi.String("string"),
IntegrationUri: pulumi.String("string"),
ConnectionType: pulumi.String("string"),
Description: pulumi.String("string"),
IntegrationMethod: pulumi.String("string"),
IntegrationSubtype: pulumi.String("string"),
ConnectionId: pulumi.String("string"),
ContentHandlingStrategy: pulumi.String("string"),
PassthroughBehavior: pulumi.String("string"),
PayloadFormatVersion: pulumi.String("string"),
RequestParameters: pulumi.StringMap{
"string": pulumi.String("string"),
},
RequestTemplates: pulumi.StringMap{
"string": pulumi.String("string"),
},
ResponseParameters: apigatewayv2.IntegrationResponseParameterArray{
&apigatewayv2.IntegrationResponseParameterArgs{
Mappings: pulumi.StringMap{
"string": pulumi.String("string"),
},
StatusCode: pulumi.String("string"),
},
},
TemplateSelectionExpression: pulumi.String("string"),
TimeoutMilliseconds: pulumi.Int(0),
TlsConfig: &apigatewayv2.IntegrationTlsConfigArgs{
ServerNameToVerify: pulumi.String("string"),
},
})
var awsIntegrationResource = new Integration("awsIntegrationResource", IntegrationArgs.builder()
.apiId("string")
.integrationType("string")
.credentialsArn("string")
.integrationUri("string")
.connectionType("string")
.description("string")
.integrationMethod("string")
.integrationSubtype("string")
.connectionId("string")
.contentHandlingStrategy("string")
.passthroughBehavior("string")
.payloadFormatVersion("string")
.requestParameters(Map.of("string", "string"))
.requestTemplates(Map.of("string", "string"))
.responseParameters(IntegrationResponseParameterArgs.builder()
.mappings(Map.of("string", "string"))
.statusCode("string")
.build())
.templateSelectionExpression("string")
.timeoutMilliseconds(0)
.tlsConfig(IntegrationTlsConfigArgs.builder()
.serverNameToVerify("string")
.build())
.build());
aws_integration_resource = aws.apigatewayv2.Integration("awsIntegrationResource",
api_id="string",
integration_type="string",
credentials_arn="string",
integration_uri="string",
connection_type="string",
description="string",
integration_method="string",
integration_subtype="string",
connection_id="string",
content_handling_strategy="string",
passthrough_behavior="string",
payload_format_version="string",
request_parameters={
"string": "string",
},
request_templates={
"string": "string",
},
response_parameters=[{
"mappings": {
"string": "string",
},
"statusCode": "string",
}],
template_selection_expression="string",
timeout_milliseconds=0,
tls_config={
"serverNameToVerify": "string",
})
const awsIntegrationResource = new aws.apigatewayv2.Integration("awsIntegrationResource", {
apiId: "string",
integrationType: "string",
credentialsArn: "string",
integrationUri: "string",
connectionType: "string",
description: "string",
integrationMethod: "string",
integrationSubtype: "string",
connectionId: "string",
contentHandlingStrategy: "string",
passthroughBehavior: "string",
payloadFormatVersion: "string",
requestParameters: {
string: "string",
},
requestTemplates: {
string: "string",
},
responseParameters: [{
mappings: {
string: "string",
},
statusCode: "string",
}],
templateSelectionExpression: "string",
timeoutMilliseconds: 0,
tlsConfig: {
serverNameToVerify: "string",
},
});
type: aws:apigatewayv2:Integration
properties:
apiId: string
connectionId: string
connectionType: string
contentHandlingStrategy: string
credentialsArn: string
description: string
integrationMethod: string
integrationSubtype: string
integrationType: string
integrationUri: string
passthroughBehavior: string
payloadFormatVersion: string
requestParameters:
string: string
requestTemplates:
string: string
responseParameters:
- mappings:
string: string
statusCode: string
templateSelectionExpression: string
timeoutMilliseconds: 0
tlsConfig:
serverNameToVerify: string
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:
- Api
Id string - API identifier.
- Integration
Type 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, useHTTP_PROXY
. - Connection
Id string - 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 string - Type of the network connection to the integration endpoint. Valid values:
INTERNET
,VPC_LINK
. Default isINTERNET
. - Content
Handling stringStrategy - How to handle response payload content type conversions. Valid values:
CONVERT_TO_BINARY
,CONVERT_TO_TEXT
. Supported only for WebSocket APIs. - Credentials
Arn string - Credentials required for the integration, if any.
- Description string
- Description of the integration.
- Integration
Method string - Integration's HTTP method. Must be specified if
integration_type
is notMOCK
. - Integration
Subtype string - AWS service action to invoke. Supported only for HTTP APIs when
integration_type
isAWS_PROXY
. See the AWS service integration reference documentation for supported values. Must be between 1 and 128 characters in length. - Integration
Uri string - URI of the Lambda function for a Lambda proxy integration, when
integration_type
isAWS_PROXY
. For anHTTP
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 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 isWHEN_NO_MATCH
. Supported only for WebSocket APIs. - Payload
Format stringVersion - The format of the payload sent to an integration. Valid values:
1.0
,2.0
. Default is1.0
. - Request
Parameters 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 toAWS_PROXY
integrations. For HTTP APIs without a specifiedintegration_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 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.
- Response
Parameters List<IntegrationResponse Parameter> - Mappings to transform the HTTP response from a backend integration before returning the response to clients. Supported only for HTTP APIs.
- Template
Selection stringExpression - 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 IntegrationTls Config - TLS configuration for a private integration. Supported only for HTTP APIs.
- Api
Id string - API identifier.
- Integration
Type 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, useHTTP_PROXY
. - Connection
Id string - 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 string - Type of the network connection to the integration endpoint. Valid values:
INTERNET
,VPC_LINK
. Default isINTERNET
. - Content
Handling stringStrategy - How to handle response payload content type conversions. Valid values:
CONVERT_TO_BINARY
,CONVERT_TO_TEXT
. Supported only for WebSocket APIs. - Credentials
Arn string - Credentials required for the integration, if any.
- Description string
- Description of the integration.
- Integration
Method string - Integration's HTTP method. Must be specified if
integration_type
is notMOCK
. - Integration
Subtype string - AWS service action to invoke. Supported only for HTTP APIs when
integration_type
isAWS_PROXY
. See the AWS service integration reference documentation for supported values. Must be between 1 and 128 characters in length. - Integration
Uri string - URI of the Lambda function for a Lambda proxy integration, when
integration_type
isAWS_PROXY
. For anHTTP
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 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 isWHEN_NO_MATCH
. Supported only for WebSocket APIs. - Payload
Format stringVersion - The format of the payload sent to an integration. Valid values:
1.0
,2.0
. Default is1.0
. - Request
Parameters 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 toAWS_PROXY
integrations. For HTTP APIs without a specifiedintegration_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 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.
- Response
Parameters []IntegrationResponse Parameter Args - Mappings to transform the HTTP response from a backend integration before returning the response to clients. Supported only for HTTP APIs.
- Template
Selection stringExpression - 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 IntegrationTls Config Args - TLS configuration for a private integration. Supported only for HTTP APIs.
- api
Id String - API identifier.
- integration
Type 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, useHTTP_PROXY
. - connection
Id String - 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 String - Type of the network connection to the integration endpoint. Valid values:
INTERNET
,VPC_LINK
. Default isINTERNET
. - content
Handling StringStrategy - How to handle response payload content type conversions. Valid values:
CONVERT_TO_BINARY
,CONVERT_TO_TEXT
. Supported only for WebSocket APIs. - credentials
Arn String - Credentials required for the integration, if any.
- description String
- Description of the integration.
- integration
Method String - Integration's HTTP method. Must be specified if
integration_type
is notMOCK
. - integration
Subtype String - AWS service action to invoke. Supported only for HTTP APIs when
integration_type
isAWS_PROXY
. See the AWS service integration reference documentation for supported values. Must be between 1 and 128 characters in length. - integration
Uri String - URI of the Lambda function for a Lambda proxy integration, when
integration_type
isAWS_PROXY
. For anHTTP
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 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 isWHEN_NO_MATCH
. Supported only for WebSocket APIs. - payload
Format StringVersion - The format of the payload sent to an integration. Valid values:
1.0
,2.0
. Default is1.0
. - request
Parameters 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 toAWS_PROXY
integrations. For HTTP APIs without a specifiedintegration_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 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.
- response
Parameters List<IntegrationResponse Parameter> - Mappings to transform the HTTP response from a backend integration before returning the response to clients. Supported only for HTTP APIs.
- template
Selection StringExpression - The template selection expression for the integration.
- timeout
Milliseconds 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.
- tls
Config IntegrationTls Config - TLS configuration for a private integration. Supported only for HTTP APIs.
- api
Id string - API identifier.
- integration
Type 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, useHTTP_PROXY
. - connection
Id string - 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 string - Type of the network connection to the integration endpoint. Valid values:
INTERNET
,VPC_LINK
. Default isINTERNET
. - content
Handling stringStrategy - How to handle response payload content type conversions. Valid values:
CONVERT_TO_BINARY
,CONVERT_TO_TEXT
. Supported only for WebSocket APIs. - credentials
Arn string - Credentials required for the integration, if any.
- description string
- Description of the integration.
- integration
Method string - Integration's HTTP method. Must be specified if
integration_type
is notMOCK
. - integration
Subtype string - AWS service action to invoke. Supported only for HTTP APIs when
integration_type
isAWS_PROXY
. See the AWS service integration reference documentation for supported values. Must be between 1 and 128 characters in length. - integration
Uri string - URI of the Lambda function for a Lambda proxy integration, when
integration_type
isAWS_PROXY
. For anHTTP
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 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 isWHEN_NO_MATCH
. Supported only for WebSocket APIs. - payload
Format stringVersion - The format of the payload sent to an integration. Valid values:
1.0
,2.0
. Default is1.0
. - request
Parameters {[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 toAWS_PROXY
integrations. For HTTP APIs without a specifiedintegration_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 {[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.
- response
Parameters IntegrationResponse Parameter[] - Mappings to transform the HTTP response from a backend integration before returning the response to clients. Supported only for HTTP APIs.
- template
Selection stringExpression - The template selection expression for the integration.
- timeout
Milliseconds 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.
- tls
Config IntegrationTls Config - 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, useHTTP_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 isINTERNET
. - content_
handling_ strstrategy - 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 notMOCK
. - integration_
subtype str - AWS service action to invoke. Supported only for HTTP APIs when
integration_type
isAWS_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
isAWS_PROXY
. For anHTTP
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 isWHEN_NO_MATCH
. Supported only for WebSocket APIs. - payload_
format_ strversion - The format of the payload sent to an integration. Valid values:
1.0
,2.0
. Default is1.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 toAWS_PROXY
integrations. For HTTP APIs without a specifiedintegration_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[IntegrationResponse Parameter Args] - Mappings to transform the HTTP response from a backend integration before returning the response to clients. Supported only for HTTP APIs.
- template_
selection_ strexpression - 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 IntegrationTls Config Args - TLS configuration for a private integration. Supported only for HTTP APIs.
- api
Id String - API identifier.
- integration
Type 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, useHTTP_PROXY
. - connection
Id String - 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 String - Type of the network connection to the integration endpoint. Valid values:
INTERNET
,VPC_LINK
. Default isINTERNET
. - content
Handling StringStrategy - How to handle response payload content type conversions. Valid values:
CONVERT_TO_BINARY
,CONVERT_TO_TEXT
. Supported only for WebSocket APIs. - credentials
Arn String - Credentials required for the integration, if any.
- description String
- Description of the integration.
- integration
Method String - Integration's HTTP method. Must be specified if
integration_type
is notMOCK
. - integration
Subtype String - AWS service action to invoke. Supported only for HTTP APIs when
integration_type
isAWS_PROXY
. See the AWS service integration reference documentation for supported values. Must be between 1 and 128 characters in length. - integration
Uri String - URI of the Lambda function for a Lambda proxy integration, when
integration_type
isAWS_PROXY
. For anHTTP
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 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 isWHEN_NO_MATCH
. Supported only for WebSocket APIs. - payload
Format StringVersion - The format of the payload sent to an integration. Valid values:
1.0
,2.0
. Default is1.0
. - request
Parameters 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 toAWS_PROXY
integrations. For HTTP APIs without a specifiedintegration_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 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.
- response
Parameters List<Property Map> - Mappings to transform the HTTP response from a backend integration before returning the response to clients. Supported only for HTTP APIs.
- template
Selection StringExpression - The template selection expression for the integration.
- timeout
Milliseconds 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.
- tls
Config 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.
- Integration
Response stringSelection Expression - The integration response selection expression for the integration.
- Id string
- The provider-assigned unique ID for this managed resource.
- Integration
Response stringSelection Expression - The integration response selection expression for the integration.
- id String
- The provider-assigned unique ID for this managed resource.
- integration
Response StringSelection Expression - The integration response selection expression for the integration.
- id string
- The provider-assigned unique ID for this managed resource.
- integration
Response stringSelection Expression - The integration response selection expression for the integration.
- id str
- The provider-assigned unique ID for this managed resource.
- integration_
response_ strselection_ expression - The integration response selection expression for the integration.
- id String
- The provider-assigned unique ID for this managed resource.
- integration
Response StringSelection Expression - 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.
- Api
Id string - API identifier.
- Connection
Id string - 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 string - Type of the network connection to the integration endpoint. Valid values:
INTERNET
,VPC_LINK
. Default isINTERNET
. - Content
Handling stringStrategy - How to handle response payload content type conversions. Valid values:
CONVERT_TO_BINARY
,CONVERT_TO_TEXT
. Supported only for WebSocket APIs. - Credentials
Arn string - Credentials required for the integration, if any.
- Description string
- Description of the integration.
- Integration
Method string - Integration's HTTP method. Must be specified if
integration_type
is notMOCK
. - Integration
Response stringSelection Expression - The integration response selection expression for the integration.
- Integration
Subtype string - AWS service action to invoke. Supported only for HTTP APIs when
integration_type
isAWS_PROXY
. See the AWS service integration reference documentation for supported values. Must be between 1 and 128 characters in length. - Integration
Type 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, useHTTP_PROXY
. - Integration
Uri string - URI of the Lambda function for a Lambda proxy integration, when
integration_type
isAWS_PROXY
. For anHTTP
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 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 isWHEN_NO_MATCH
. Supported only for WebSocket APIs. - Payload
Format stringVersion - The format of the payload sent to an integration. Valid values:
1.0
,2.0
. Default is1.0
. - Request
Parameters 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 toAWS_PROXY
integrations. For HTTP APIs without a specifiedintegration_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 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.
- Response
Parameters List<IntegrationResponse Parameter> - Mappings to transform the HTTP response from a backend integration before returning the response to clients. Supported only for HTTP APIs.
- Template
Selection stringExpression - 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 IntegrationTls Config - TLS configuration for a private integration. Supported only for HTTP APIs.
- Api
Id string - API identifier.
- Connection
Id string - 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 string - Type of the network connection to the integration endpoint. Valid values:
INTERNET
,VPC_LINK
. Default isINTERNET
. - Content
Handling stringStrategy - How to handle response payload content type conversions. Valid values:
CONVERT_TO_BINARY
,CONVERT_TO_TEXT
. Supported only for WebSocket APIs. - Credentials
Arn string - Credentials required for the integration, if any.
- Description string
- Description of the integration.
- Integration
Method string - Integration's HTTP method. Must be specified if
integration_type
is notMOCK
. - Integration
Response stringSelection Expression - The integration response selection expression for the integration.
- Integration
Subtype string - AWS service action to invoke. Supported only for HTTP APIs when
integration_type
isAWS_PROXY
. See the AWS service integration reference documentation for supported values. Must be between 1 and 128 characters in length. - Integration
Type 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, useHTTP_PROXY
. - Integration
Uri string - URI of the Lambda function for a Lambda proxy integration, when
integration_type
isAWS_PROXY
. For anHTTP
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 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 isWHEN_NO_MATCH
. Supported only for WebSocket APIs. - Payload
Format stringVersion - The format of the payload sent to an integration. Valid values:
1.0
,2.0
. Default is1.0
. - Request
Parameters 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 toAWS_PROXY
integrations. For HTTP APIs without a specifiedintegration_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 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.
- Response
Parameters []IntegrationResponse Parameter Args - Mappings to transform the HTTP response from a backend integration before returning the response to clients. Supported only for HTTP APIs.
- Template
Selection stringExpression - 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 IntegrationTls Config Args - TLS configuration for a private integration. Supported only for HTTP APIs.
- api
Id String - API identifier.
- connection
Id String - 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 String - Type of the network connection to the integration endpoint. Valid values:
INTERNET
,VPC_LINK
. Default isINTERNET
. - content
Handling StringStrategy - How to handle response payload content type conversions. Valid values:
CONVERT_TO_BINARY
,CONVERT_TO_TEXT
. Supported only for WebSocket APIs. - credentials
Arn String - Credentials required for the integration, if any.
- description String
- Description of the integration.
- integration
Method String - Integration's HTTP method. Must be specified if
integration_type
is notMOCK
. - integration
Response StringSelection Expression - The integration response selection expression for the integration.
- integration
Subtype String - AWS service action to invoke. Supported only for HTTP APIs when
integration_type
isAWS_PROXY
. See the AWS service integration reference documentation for supported values. Must be between 1 and 128 characters in length. - integration
Type 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, useHTTP_PROXY
. - integration
Uri String - URI of the Lambda function for a Lambda proxy integration, when
integration_type
isAWS_PROXY
. For anHTTP
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 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 isWHEN_NO_MATCH
. Supported only for WebSocket APIs. - payload
Format StringVersion - The format of the payload sent to an integration. Valid values:
1.0
,2.0
. Default is1.0
. - request
Parameters 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 toAWS_PROXY
integrations. For HTTP APIs without a specifiedintegration_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 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.
- response
Parameters List<IntegrationResponse Parameter> - Mappings to transform the HTTP response from a backend integration before returning the response to clients. Supported only for HTTP APIs.
- template
Selection StringExpression - The template selection expression for the integration.
- timeout
Milliseconds 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.
- tls
Config IntegrationTls Config - TLS configuration for a private integration. Supported only for HTTP APIs.
- api
Id string - API identifier.
- connection
Id string - 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 string - Type of the network connection to the integration endpoint. Valid values:
INTERNET
,VPC_LINK
. Default isINTERNET
. - content
Handling stringStrategy - How to handle response payload content type conversions. Valid values:
CONVERT_TO_BINARY
,CONVERT_TO_TEXT
. Supported only for WebSocket APIs. - credentials
Arn string - Credentials required for the integration, if any.
- description string
- Description of the integration.
- integration
Method string - Integration's HTTP method. Must be specified if
integration_type
is notMOCK
. - integration
Response stringSelection Expression - The integration response selection expression for the integration.
- integration
Subtype string - AWS service action to invoke. Supported only for HTTP APIs when
integration_type
isAWS_PROXY
. See the AWS service integration reference documentation for supported values. Must be between 1 and 128 characters in length. - integration
Type 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, useHTTP_PROXY
. - integration
Uri string - URI of the Lambda function for a Lambda proxy integration, when
integration_type
isAWS_PROXY
. For anHTTP
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 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 isWHEN_NO_MATCH
. Supported only for WebSocket APIs. - payload
Format stringVersion - The format of the payload sent to an integration. Valid values:
1.0
,2.0
. Default is1.0
. - request
Parameters {[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 toAWS_PROXY
integrations. For HTTP APIs without a specifiedintegration_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 {[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.
- response
Parameters IntegrationResponse Parameter[] - Mappings to transform the HTTP response from a backend integration before returning the response to clients. Supported only for HTTP APIs.
- template
Selection stringExpression - The template selection expression for the integration.
- timeout
Milliseconds 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.
- tls
Config IntegrationTls Config - 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 isINTERNET
. - content_
handling_ strstrategy - 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 notMOCK
. - integration_
response_ strselection_ expression - The integration response selection expression for the integration.
- integration_
subtype str - AWS service action to invoke. Supported only for HTTP APIs when
integration_type
isAWS_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, useHTTP_PROXY
. - integration_
uri str - URI of the Lambda function for a Lambda proxy integration, when
integration_type
isAWS_PROXY
. For anHTTP
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 isWHEN_NO_MATCH
. Supported only for WebSocket APIs. - payload_
format_ strversion - The format of the payload sent to an integration. Valid values:
1.0
,2.0
. Default is1.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 toAWS_PROXY
integrations. For HTTP APIs without a specifiedintegration_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[IntegrationResponse Parameter Args] - Mappings to transform the HTTP response from a backend integration before returning the response to clients. Supported only for HTTP APIs.
- template_
selection_ strexpression - 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 IntegrationTls Config Args - TLS configuration for a private integration. Supported only for HTTP APIs.
- api
Id String - API identifier.
- connection
Id String - 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 String - Type of the network connection to the integration endpoint. Valid values:
INTERNET
,VPC_LINK
. Default isINTERNET
. - content
Handling StringStrategy - How to handle response payload content type conversions. Valid values:
CONVERT_TO_BINARY
,CONVERT_TO_TEXT
. Supported only for WebSocket APIs. - credentials
Arn String - Credentials required for the integration, if any.
- description String
- Description of the integration.
- integration
Method String - Integration's HTTP method. Must be specified if
integration_type
is notMOCK
. - integration
Response StringSelection Expression - The integration response selection expression for the integration.
- integration
Subtype String - AWS service action to invoke. Supported only for HTTP APIs when
integration_type
isAWS_PROXY
. See the AWS service integration reference documentation for supported values. Must be between 1 and 128 characters in length. - integration
Type 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, useHTTP_PROXY
. - integration
Uri String - URI of the Lambda function for a Lambda proxy integration, when
integration_type
isAWS_PROXY
. For anHTTP
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 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 isWHEN_NO_MATCH
. Supported only for WebSocket APIs. - payload
Format StringVersion - The format of the payload sent to an integration. Valid values:
1.0
,2.0
. Default is1.0
. - request
Parameters 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 toAWS_PROXY
integrations. For HTTP APIs without a specifiedintegration_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 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.
- response
Parameters List<Property Map> - Mappings to transform the HTTP response from a backend integration before returning the response to clients. Supported only for HTTP APIs.
- template
Selection StringExpression - The template selection expression for the integration.
- timeout
Milliseconds 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.
- tls
Config 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.
- Status
Code 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.
- Status
Code 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.
- status
Code 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.
- status
Code 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.
- status
Code String - HTTP status code in the range 200-599.
IntegrationTlsConfig, IntegrationTlsConfigArgs
- Server
Name stringTo Verify - 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 stringTo Verify - 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 StringTo Verify - 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 stringTo Verify - 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_ strto_ verify - 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 StringTo Verify - 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.
To learn more about importing existing cloud resources, see Importing resources.
Package Details
- Repository
- AWS Classic pulumi/pulumi-aws
- License
- Apache-2.0
- Notes
- This Pulumi package is based on the
aws
Terraform Provider.
Try AWS Native preview for resources not in the classic version.