Module apigatewayv2
This page documents the language specification for the aws package. If you're looking for help working with the inputs, outputs, or functions of aws resources in a Pulumi program, please see the resource documentation for examples and API reference.
This provider is a derived work of the Terraform Provider distributed under MPL 2.0. If you encounter a bug or missing feature, first check the
pulumi/pulumi-awsrepo; however, if that doesn’t turn up anything, please consult the sourceterraform-providers/terraform-provider-awsrepo.
Resources
- Api
- ApiMapping
- Authorizer
- Deployment
- DomainName
- Integration
- IntegrationResponse
- Model
- Route
- RouteResponse
- Stage
- VpcLink
Others
- ApiArgs
- ApiMappingArgs
- ApiMappingState
- ApiState
- AuthorizerArgs
- AuthorizerState
- DeploymentArgs
- DeploymentState
- DomainNameArgs
- DomainNameState
- IntegrationArgs
- IntegrationResponseArgs
- IntegrationResponseState
- IntegrationState
- ModelArgs
- ModelState
- RouteArgs
- RouteResponseArgs
- RouteResponseState
- RouteState
- StageArgs
- StageState
- VpcLinkArgs
- VpcLinkState
Resources
Resource Api
class Api extends CustomResourceManages an Amazon API Gateway Version 2 API.
Note: Amazon API Gateway Version 2 resources are used for creating and deploying WebSocket and HTTP APIs. To create and deploy REST APIs, use Amazon API Gateway Version 1.
Example Usage
Basic WebSocket API
import * as pulumi from "@pulumi/pulumi";
import * as aws from "@pulumi/aws";
const example = new aws.apigatewayv2.Api("example", {
protocolType: "WEBSOCKET",
routeSelectionExpression: "$request.body.action",
});Basic HTTP API
import * as pulumi from "@pulumi/pulumi";
import * as aws from "@pulumi/aws";
const example = new aws.apigatewayv2.Api("example", {
protocolType: "HTTP",
});constructor
new Api(name: string, args: ApiArgs, opts?: pulumi.CustomResourceOptions)Create a Api resource with the given unique name, arguments, and options.
nameThe unique name of the resource.argsThe arguments to use to populate this resource's properties.optsA bag of options that control this resource's behavior.
method get
public static get(name: string, id: pulumi.Input<pulumi.ID>, state?: ApiState, opts?: pulumi.CustomResourceOptions): ApiGet an existing Api resource’s state with the given name, ID, and optional extra properties used to qualify the lookup.
method getProvider
getProvider(moduleMember: string): ProviderResource | undefinedmethod isInstance
public static isInstance(obj: any): obj is ApiReturns true if the given object is an instance of Api. This is designed to work even when multiple copies of the Pulumi SDK have been loaded into the same process.
property apiEndpoint
public apiEndpoint: pulumi.Output<string>;The URI of the API, of the form {api-id}.execute-api.{region}.amazonaws.com.
property apiKeySelectionExpression
public apiKeySelectionExpression: pulumi.Output<string | undefined>;An API key selection expression.
Valid values: $context.authorizer.usageIdentifierKey, $request.header.x-api-key. Defaults to $request.header.x-api-key.
Applicable for WebSocket APIs.
property arn
public arn: pulumi.Output<string>;The ARN of the API.
property corsConfiguration
public corsConfiguration: pulumi.Output<ApiCorsConfiguration | undefined>;The cross-origin resource sharing (CORS) configuration. Applicable for HTTP APIs.
property credentialsArn
public credentialsArn: pulumi.Output<string | undefined>;Part of quick create. Specifies any credentials required for the integration. Applicable for HTTP APIs.
property description
public description: pulumi.Output<string | undefined>;The description of the API.
property executionArn
public executionArn: pulumi.Output<string>;The ARN prefix to be used in an aws.lambda.Permission’s sourceArn attribute
or in an aws.iam.Policy to authorize access to the @connections API.
See the Amazon API Gateway Developer Guide for details.
property id
id: Output<ID>;id is the provider-assigned unique ID for this managed resource. It is set during deployments and may be missing (undefined) during planning phases.
property name
public name: pulumi.Output<string>;The name of the API.
property protocolType
public protocolType: pulumi.Output<string>;The API protocol. Valid values: HTTP, WEBSOCKET.
property routeKey
public routeKey: pulumi.Output<string | undefined>;Part of quick create. Specifies any route key. Applicable for HTTP APIs.
property routeSelectionExpression
public routeSelectionExpression: pulumi.Output<string | undefined>;The route selection expression for the API.
Defaults to $request.method $request.path.
property tags
public tags: pulumi.Output<{[key: string]: any} | undefined>;A map of tags to assign to the API.
property target
public target: pulumi.Output<string | undefined>;Part of quick create. Quick create produces an API with an integration, a default catch-all route, and a default stage which is configured to automatically deploy changes.
For HTTP integrations, specify a fully qualified URL. For Lambda integrations, specify a function ARN.
The type of the integration will be HTTP_PROXY or AWS_PROXY, respectively. Applicable for HTTP APIs.
property urn
urn: Output<URN>;urn is the stable logical URN used to distinctly address a resource, both before and after deployments.
property version
public version: pulumi.Output<string | undefined>;A version identifier for the API.
Resource ApiMapping
class ApiMapping extends CustomResourceManages an Amazon API Gateway Version 2 API mapping. 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.ApiMapping("example", {
apiId: aws_apigatewayv2_api_example.id,
domainName: aws_apigatewayv2_domain_name_example.id,
stage: aws_apigatewayv2_stage_example.id,
});constructor
new ApiMapping(name: string, args: ApiMappingArgs, opts?: pulumi.CustomResourceOptions)Create a ApiMapping resource with the given unique name, arguments, and options.
nameThe unique name of the resource.argsThe arguments to use to populate this resource's properties.optsA bag of options that control this resource's behavior.
method get
public static get(name: string, id: pulumi.Input<pulumi.ID>, state?: ApiMappingState, opts?: pulumi.CustomResourceOptions): ApiMappingGet an existing ApiMapping resource’s state with the given name, ID, and optional extra properties used to qualify the lookup.
method getProvider
getProvider(moduleMember: string): ProviderResource | undefinedmethod isInstance
public static isInstance(obj: any): obj is ApiMappingReturns true if the given object is an instance of ApiMapping. This is designed to work even when multiple copies of the Pulumi SDK have been loaded into the same process.
property apiId
public apiId: pulumi.Output<string>;The API identifier.
property apiMappingKey
public apiMappingKey: pulumi.Output<string | undefined>;The API mapping key.
property domainName
public domainName: pulumi.Output<string>;The domain name. Use the aws.apigatewayv2.DomainName resource to configure a domain name.
property id
id: Output<ID>;id is the provider-assigned unique ID for this managed resource. It is set during deployments and may be missing (undefined) during planning phases.
property stage
public stage: pulumi.Output<string>;The API stage. Use the aws.apigatewayv2.Stage resource to configure an API stage.
property urn
urn: Output<URN>;urn is the stable logical URN used to distinctly address a resource, both before and after deployments.
Resource Authorizer
class Authorizer extends CustomResourceManages an Amazon API Gateway Version 2 authorizer. More information can be found in the Amazon API Gateway Developer Guide.
Example Usage
Basic WebSocket API
import * as pulumi from "@pulumi/pulumi";
import * as aws from "@pulumi/aws";
const example = new aws.apigatewayv2.Authorizer("example", {
apiId: aws_apigatewayv2_api_example.id,
authorizerType: "REQUEST",
authorizerUri: aws_lambda_function_example.invokeArn,
identitySources: ["route.request.header.Auth"],
});Basic HTTP API
import * as pulumi from "@pulumi/pulumi";
import * as aws from "@pulumi/aws";
const example = new aws.apigatewayv2.Authorizer("example", {
apiId: aws_apigatewayv2_api_example.id,
authorizerType: "JWT",
identitySources: ["$request.header.Authorization"],
jwtConfiguration: {
audiences: ["example"],
issuer: pulumi.interpolate`https://${aws_cognito_user_pool_example.endpoint}`,
},
});constructor
new Authorizer(name: string, args: AuthorizerArgs, opts?: pulumi.CustomResourceOptions)Create a Authorizer resource with the given unique name, arguments, and options.
nameThe unique name of the resource.argsThe arguments to use to populate this resource's properties.optsA bag of options that control this resource's behavior.
method get
public static get(name: string, id: pulumi.Input<pulumi.ID>, state?: AuthorizerState, opts?: pulumi.CustomResourceOptions): AuthorizerGet an existing Authorizer resource’s state with the given name, ID, and optional extra properties used to qualify the lookup.
method getProvider
getProvider(moduleMember: string): ProviderResource | undefinedmethod isInstance
public static isInstance(obj: any): obj is AuthorizerReturns true if the given object is an instance of Authorizer. This is designed to work even when multiple copies of the Pulumi SDK have been loaded into the same process.
property apiId
public apiId: pulumi.Output<string>;The API identifier.
property authorizerCredentialsArn
public authorizerCredentialsArn: pulumi.Output<string | undefined>;The required credentials as an IAM role for API Gateway to invoke the authorizer.
Supported only for REQUEST authorizers.
property authorizerType
public authorizerType: pulumi.Output<string>;The authorizer type. Valid values: JWT, REQUEST.
For WebSocket APIs, specify REQUEST for a Lambda function using incoming request parameters.
For HTTP APIs, specify JWT to use JSON Web Tokens.
property authorizerUri
public authorizerUri: pulumi.Output<string | undefined>;The authorizer’s Uniform Resource Identifier (URI).
For REQUEST authorizers this must be a well-formed Lambda function URI, such as the invokeArn attribute of the aws.lambda.Function resource.
Supported only for REQUEST authorizers.
property id
id: Output<ID>;id is the provider-assigned unique ID for this managed resource. It is set during deployments and may be missing (undefined) during planning phases.
property identitySources
public identitySources: pulumi.Output<string[]>;The identity sources for which authorization is requested.
For REQUEST authorizers the value is a list of one or more mapping expressions of the specified request parameters.
For JWT authorizers the single entry specifies where to extract the JSON Web Token (JWT) from inbound requests.
property jwtConfiguration
public jwtConfiguration: pulumi.Output<AuthorizerJwtConfiguration | undefined>;The configuration of a JWT authorizer. Required for the JWT authorizer type.
Supported only for HTTP APIs.
property name
public name: pulumi.Output<string>;The name of the authorizer.
property urn
urn: Output<URN>;urn is the stable logical URN used to distinctly address a resource, both before and after deployments.
Resource Deployment
class Deployment extends CustomResourceManages an Amazon API Gateway Version 2 deployment. More information can be found in the Amazon API Gateway Developer Guide.
Note: Creating a deployment for an API requires at least one
aws.apigatewayv2.Routeresource associated with that API. To avoid race conditions when all resources are being created together, you need to add implicit resource references via thetriggersargument or explicit resource references using the resourcedependsOnmeta-argument.
Example Usage
Basic
import * as pulumi from "@pulumi/pulumi";
import * as aws from "@pulumi/aws";
const example = new aws.apigatewayv2.Deployment("example", {
apiId: aws_apigatewayv2_route_example.apiId,
description: "Example deployment",
});constructor
new Deployment(name: string, args: DeploymentArgs, opts?: pulumi.CustomResourceOptions)Create a Deployment resource with the given unique name, arguments, and options.
nameThe unique name of the resource.argsThe arguments to use to populate this resource's properties.optsA bag of options that control this resource's behavior.
method get
public static get(name: string, id: pulumi.Input<pulumi.ID>, state?: DeploymentState, opts?: pulumi.CustomResourceOptions): DeploymentGet an existing Deployment resource’s state with the given name, ID, and optional extra properties used to qualify the lookup.
method getProvider
getProvider(moduleMember: string): ProviderResource | undefinedmethod isInstance
public static isInstance(obj: any): obj is DeploymentReturns true if the given object is an instance of Deployment. This is designed to work even when multiple copies of the Pulumi SDK have been loaded into the same process.
property apiId
public apiId: pulumi.Output<string>;The API identifier.
property autoDeployed
public autoDeployed: pulumi.Output<boolean>;Whether the deployment was automatically released.
property description
public description: pulumi.Output<string | undefined>;The description for the deployment resource.
property id
id: Output<ID>;id is the provider-assigned unique ID for this managed resource. It is set during deployments and may be missing (undefined) during planning phases.
property triggers
public triggers: pulumi.Output<{[key: string]: string} | undefined>;A map of arbitrary keys and values that, when changed, will trigger a redeployment.
property urn
urn: Output<URN>;urn is the stable logical URN used to distinctly address a resource, both before and after deployments.
Resource DomainName
class DomainName extends CustomResourceManages an Amazon API Gateway Version 2 domain name. More information can be found in the Amazon API Gateway Developer Guide.
Note: This resource establishes ownership of and the TLS settings for a particular domain name. An API stage can be associated with the domain name using the
aws.apigatewayv2.ApiMappingresource.
Example Usage
Basic
import * as pulumi from "@pulumi/pulumi";
import * as aws from "@pulumi/aws";
const example = new aws.apigatewayv2.DomainName("example", {
domainName: "ws-api.example.com",
domainNameConfiguration: {
certificateArn: aws_acm_certificate_example.arn,
endpointType: "REGIONAL",
securityPolicy: "TLS_1_2",
},
});constructor
new DomainName(name: string, args: DomainNameArgs, opts?: pulumi.CustomResourceOptions)Create a DomainName resource with the given unique name, arguments, and options.
nameThe unique name of the resource.argsThe arguments to use to populate this resource's properties.optsA bag of options that control this resource's behavior.
method get
public static get(name: string, id: pulumi.Input<pulumi.ID>, state?: DomainNameState, opts?: pulumi.CustomResourceOptions): DomainNameGet an existing DomainName resource’s state with the given name, ID, and optional extra properties used to qualify the lookup.
method getProvider
getProvider(moduleMember: string): ProviderResource | undefinedmethod isInstance
public static isInstance(obj: any): obj is DomainNameReturns true if the given object is an instance of DomainName. This is designed to work even when multiple copies of the Pulumi SDK have been loaded into the same process.
property apiMappingSelectionExpression
public apiMappingSelectionExpression: pulumi.Output<string>;The API mapping selection expression for the domain name.
property arn
public arn: pulumi.Output<string>;The ARN of the domain name.
property domainName
public domainName: pulumi.Output<string>;The domain name.
property domainNameConfiguration
public domainNameConfiguration: pulumi.Output<DomainNameDomainNameConfiguration>;The domain name configuration.
property id
id: Output<ID>;id is the provider-assigned unique ID for this managed resource. It is set during deployments and may be missing (undefined) during planning phases.
property tags
public tags: pulumi.Output<{[key: string]: any} | undefined>;A map of tags to assign to the domain name.
property urn
urn: Output<URN>;urn is the stable logical URN used to distinctly address a resource, both before and after deployments.
Resource Integration
class Integration extends CustomResourceManages 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: aws_apigatewayv2_api_example.id,
integrationType: "MOCK",
});Lambda Integration
import * as pulumi from "@pulumi/pulumi";
import * as aws from "@pulumi/aws";
const exampleFunction = new aws.lambda.Function("example", {
code: new pulumi.asset.FileArchive("example.zip"),
handler: "index.handler",
role: aws_iam_role_example.arn,
runtime: "nodejs10.x",
});
const exampleIntegration = new aws.apigatewayv2.Integration("example", {
apiId: aws_apigatewayv2_api_example.id,
connectionType: "INTERNET",
contentHandlingStrategy: "CONVERT_TO_TEXT",
description: "Lambda example",
integrationMethod: "POST",
integrationType: "AWS",
integrationUri: exampleFunction.invokeArn,
passthroughBehavior: "WHEN_NO_MATCH",
});constructor
new Integration(name: string, args: IntegrationArgs, opts?: pulumi.CustomResourceOptions)Create a Integration resource with the given unique name, arguments, and options.
nameThe unique name of the resource.argsThe arguments to use to populate this resource's properties.optsA bag of options that control this resource's behavior.
method get
public static get(name: string, id: pulumi.Input<pulumi.ID>, state?: IntegrationState, opts?: pulumi.CustomResourceOptions): IntegrationGet an existing Integration resource’s state with the given name, ID, and optional extra properties used to qualify the lookup.
method getProvider
getProvider(moduleMember: string): ProviderResource | undefinedmethod isInstance
public static isInstance(obj: any): obj is IntegrationReturns true if the given object is an instance of Integration. This is designed to work even when multiple copies of the Pulumi SDK have been loaded into the same process.
property apiId
public apiId: pulumi.Output<string>;The API identifier.
property connectionId
public connectionId: pulumi.Output<string | undefined>;The ID of the VPC link for a private integration. Supported only for HTTP APIs.
property connectionType
public connectionType: pulumi.Output<string | undefined>;The type of the network connection to the integration endpoint. Valid values: INTERNET, VPC_LINK. Default is INTERNET.
property contentHandlingStrategy
public contentHandlingStrategy: pulumi.Output<string | undefined>;How to handle response payload content type conversions. Valid values: CONVERT_TO_BINARY, CONVERT_TO_TEXT. Supported only for WebSocket APIs.
property credentialsArn
public credentialsArn: pulumi.Output<string | undefined>;The credentials required for the integration, if any.
property description
public description: pulumi.Output<string | undefined>;The description of the integration.
property id
id: Output<ID>;id is the provider-assigned unique ID for this managed resource. It is set during deployments and may be missing (undefined) during planning phases.
property integrationMethod
public integrationMethod: pulumi.Output<string | undefined>;The integration’s HTTP method. Must be specified if integrationType is not MOCK.
property integrationResponseSelectionExpression
public integrationResponseSelectionExpression: pulumi.Output<string>;The integration response selection expression for the integration.
property integrationType
public integrationType: pulumi.Output<string>;The integration type of an integration.
Valid values: AWS, AWS_PROXY, HTTP, HTTP_PROXY, MOCK.
property integrationUri
public integrationUri: pulumi.Output<string | undefined>;The URI of the Lambda function for a Lambda proxy integration, when integrationType 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.
property passthroughBehavior
public passthroughBehavior: pulumi.Output<string | undefined>;The pass-through behavior for incoming requests based on the Content-Type header in the request, and the available mapping templates specified as the requestTemplates attribute.
Valid values: WHEN_NO_MATCH, WHEN_NO_TEMPLATES, NEVER. Default is WHEN_NO_MATCH. Supported only for WebSocket APIs.
property payloadFormatVersion
public payloadFormatVersion: pulumi.Output<string | undefined>;The format of the payload sent to an integration. Valid values: 1.0, 2.0. Default is 1.0.
property requestTemplates
public requestTemplates: pulumi.Output<{[key: string]: string} | undefined>;A map of Velocity templates that are applied on the request payload based on the value of the Content-Type header sent by the client. Supported only for WebSocket APIs.
property templateSelectionExpression
public templateSelectionExpression: pulumi.Output<string | undefined>;The template selection expression for the integration.
property timeoutMilliseconds
public timeoutMilliseconds: pulumi.Output<number | undefined>;Custom timeout between 50 and 29,000 milliseconds. The default value is 29,000 milliseconds or 29 seconds.
property urn
urn: Output<URN>;urn is the stable logical URN used to distinctly address a resource, both before and after deployments.
Resource IntegrationResponse
class IntegrationResponse extends CustomResourceManages an Amazon API Gateway Version 2 integration response. 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.IntegrationResponse("example", {
apiId: aws_apigatewayv2_api_example.id,
integrationId: aws_apigatewayv2_integration_example.id,
integrationResponseKey: "/200/",
});constructor
new IntegrationResponse(name: string, args: IntegrationResponseArgs, opts?: pulumi.CustomResourceOptions)Create a IntegrationResponse resource with the given unique name, arguments, and options.
nameThe unique name of the resource.argsThe arguments to use to populate this resource's properties.optsA bag of options that control this resource's behavior.
method get
public static get(name: string, id: pulumi.Input<pulumi.ID>, state?: IntegrationResponseState, opts?: pulumi.CustomResourceOptions): IntegrationResponseGet an existing IntegrationResponse resource’s state with the given name, ID, and optional extra properties used to qualify the lookup.
method getProvider
getProvider(moduleMember: string): ProviderResource | undefinedmethod isInstance
public static isInstance(obj: any): obj is IntegrationResponseReturns true if the given object is an instance of IntegrationResponse. This is designed to work even when multiple copies of the Pulumi SDK have been loaded into the same process.
property apiId
public apiId: pulumi.Output<string>;The API identifier.
property contentHandlingStrategy
public contentHandlingStrategy: pulumi.Output<string | undefined>;How to handle response payload content type conversions. Valid values: CONVERT_TO_BINARY, CONVERT_TO_TEXT.
property id
id: Output<ID>;id is the provider-assigned unique ID for this managed resource. It is set during deployments and may be missing (undefined) during planning phases.
property integrationId
public integrationId: pulumi.Output<string>;The identifier of the aws.apigatewayv2.Integration.
property integrationResponseKey
public integrationResponseKey: pulumi.Output<string>;The integration response key.
property responseTemplates
public responseTemplates: pulumi.Output<{[key: string]: string} | undefined>;A map of Velocity templates that are applied on the request payload based on the value of the Content-Type header sent by the client.
property templateSelectionExpression
public templateSelectionExpression: pulumi.Output<string | undefined>;The template selection expression for the integration response.
property urn
urn: Output<URN>;urn is the stable logical URN used to distinctly address a resource, both before and after deployments.
Resource Model
class Model extends CustomResourceManages an Amazon API Gateway Version 2 model.
Example Usage
Basic
import * as pulumi from "@pulumi/pulumi";
import * as aws from "@pulumi/aws";
const example = new aws.apigatewayv2.Model("example", {
apiId: aws_apigatewayv2_api_example.id,
contentType: "application/json",
schema: `{
"$schema": "http://json-schema.org/draft-04/schema#",
"title": "ExampleModel",
"type": "object",
"properties": {
"id": { "type": "string" }
}
}
`,
});constructor
new Model(name: string, args: ModelArgs, opts?: pulumi.CustomResourceOptions)Create a Model resource with the given unique name, arguments, and options.
nameThe unique name of the resource.argsThe arguments to use to populate this resource's properties.optsA bag of options that control this resource's behavior.
method get
public static get(name: string, id: pulumi.Input<pulumi.ID>, state?: ModelState, opts?: pulumi.CustomResourceOptions): ModelGet an existing Model resource’s state with the given name, ID, and optional extra properties used to qualify the lookup.
method getProvider
getProvider(moduleMember: string): ProviderResource | undefinedmethod isInstance
public static isInstance(obj: any): obj is ModelReturns true if the given object is an instance of Model. This is designed to work even when multiple copies of the Pulumi SDK have been loaded into the same process.
property apiId
public apiId: pulumi.Output<string>;The API identifier.
property contentType
public contentType: pulumi.Output<string>;The content-type for the model, for example, application/json.
property description
public description: pulumi.Output<string | undefined>;The description of the model.
property id
id: Output<ID>;id is the provider-assigned unique ID for this managed resource. It is set during deployments and may be missing (undefined) during planning phases.
property name
public name: pulumi.Output<string>;The name of the model. Must be alphanumeric.
property schema
public schema: pulumi.Output<string>;The schema for the model. This should be a JSON schema draft 4 model.
property urn
urn: Output<URN>;urn is the stable logical URN used to distinctly address a resource, both before and after deployments.
Resource Route
class Route extends CustomResourceManages an Amazon API Gateway Version 2 route. 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.Route("example", {
apiId: aws_apigatewayv2_api_example.id,
routeKey: "$default",
});constructor
new Route(name: string, args: RouteArgs, opts?: pulumi.CustomResourceOptions)Create a Route resource with the given unique name, arguments, and options.
nameThe unique name of the resource.argsThe arguments to use to populate this resource's properties.optsA bag of options that control this resource's behavior.
method get
public static get(name: string, id: pulumi.Input<pulumi.ID>, state?: RouteState, opts?: pulumi.CustomResourceOptions): RouteGet an existing Route resource’s state with the given name, ID, and optional extra properties used to qualify the lookup.
method getProvider
getProvider(moduleMember: string): ProviderResource | undefinedmethod isInstance
public static isInstance(obj: any): obj is RouteReturns true if the given object is an instance of Route. This is designed to work even when multiple copies of the Pulumi SDK have been loaded into the same process.
property apiId
public apiId: pulumi.Output<string>;The API identifier.
property apiKeyRequired
public apiKeyRequired: pulumi.Output<boolean | undefined>;Boolean whether an API key is required for the route. Defaults to false.
property authorizationScopes
public authorizationScopes: pulumi.Output<string[] | undefined>;The authorization scopes supported by this route. The scopes are used with a JWT authorizer to authorize the method invocation.
property authorizationType
public authorizationType: pulumi.Output<string | undefined>;The authorization type for the route.
For WebSocket APIs, valid values are NONE for open access, AWS_IAM for using AWS IAM permissions, and CUSTOM for using a Lambda authorizer.
For HTTP APIs, valid values are NONE for open access, or JWT for using JSON Web Tokens.
Defaults to NONE.
property authorizerId
public authorizerId: pulumi.Output<string | undefined>;The identifier of the aws.apigatewayv2.Authorizer resource to be associated with this route, if the authorizationType is CUSTOM.
property id
id: Output<ID>;id is the provider-assigned unique ID for this managed resource. It is set during deployments and may be missing (undefined) during planning phases.
property modelSelectionExpression
public modelSelectionExpression: pulumi.Output<string | undefined>;The model selection expression for the route.
property operationName
public operationName: pulumi.Output<string | undefined>;The operation name for the route.
property requestModels
public requestModels: pulumi.Output<{[key: string]: string} | undefined>;The request models for the route.
property routeKey
public routeKey: pulumi.Output<string>;The route key for the route.
property routeResponseSelectionExpression
public routeResponseSelectionExpression: pulumi.Output<string | undefined>;The route response selection expression for the route.
property target
public target: pulumi.Output<string | undefined>;The target for the route.
property urn
urn: Output<URN>;urn is the stable logical URN used to distinctly address a resource, both before and after deployments.
Resource RouteResponse
class RouteResponse extends CustomResourceManages an Amazon API Gateway Version 2 route response. 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.RouteResponse("example", {
apiId: aws_apigatewayv2_api_example.id,
routeId: aws_apigatewayv2_route_example.id,
routeResponseKey: "$default",
});constructor
new RouteResponse(name: string, args: RouteResponseArgs, opts?: pulumi.CustomResourceOptions)Create a RouteResponse resource with the given unique name, arguments, and options.
nameThe unique name of the resource.argsThe arguments to use to populate this resource's properties.optsA bag of options that control this resource's behavior.
method get
public static get(name: string, id: pulumi.Input<pulumi.ID>, state?: RouteResponseState, opts?: pulumi.CustomResourceOptions): RouteResponseGet an existing RouteResponse resource’s state with the given name, ID, and optional extra properties used to qualify the lookup.
method getProvider
getProvider(moduleMember: string): ProviderResource | undefinedmethod isInstance
public static isInstance(obj: any): obj is RouteResponseReturns true if the given object is an instance of RouteResponse. This is designed to work even when multiple copies of the Pulumi SDK have been loaded into the same process.
property apiId
public apiId: pulumi.Output<string>;The API identifier.
property id
id: Output<ID>;id is the provider-assigned unique ID for this managed resource. It is set during deployments and may be missing (undefined) during planning phases.
property modelSelectionExpression
public modelSelectionExpression: pulumi.Output<string | undefined>;The model selection expression for the route response.
property responseModels
public responseModels: pulumi.Output<{[key: string]: string} | undefined>;The response models for the route response.
property routeId
public routeId: pulumi.Output<string>;The identifier of the aws.apigatewayv2.Route.
property routeResponseKey
public routeResponseKey: pulumi.Output<string>;The route response key.
property urn
urn: Output<URN>;urn is the stable logical URN used to distinctly address a resource, both before and after deployments.
Resource Stage
class Stage extends CustomResourceManages an Amazon API Gateway Version 2 stage. 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.Stage("example", {
apiId: aws_apigatewayv2_api_example.id,
});constructor
new Stage(name: string, args: StageArgs, opts?: pulumi.CustomResourceOptions)Create a Stage resource with the given unique name, arguments, and options.
nameThe unique name of the resource.argsThe arguments to use to populate this resource's properties.optsA bag of options that control this resource's behavior.
method get
public static get(name: string, id: pulumi.Input<pulumi.ID>, state?: StageState, opts?: pulumi.CustomResourceOptions): StageGet an existing Stage resource’s state with the given name, ID, and optional extra properties used to qualify the lookup.
method getProvider
getProvider(moduleMember: string): ProviderResource | undefinedmethod isInstance
public static isInstance(obj: any): obj is StageReturns true if the given object is an instance of Stage. This is designed to work even when multiple copies of the Pulumi SDK have been loaded into the same process.
property accessLogSettings
public accessLogSettings: pulumi.Output<StageAccessLogSettings | undefined>;Settings for logging access in this stage.
Use the aws.apigateway.Account resource to configure permissions for CloudWatch Logging.
property apiId
public apiId: pulumi.Output<string>;The API identifier.
property arn
public arn: pulumi.Output<string>;The ARN of the stage.
property autoDeploy
public autoDeploy: pulumi.Output<boolean | undefined>;Whether updates to an API automatically trigger a new deployment. Defaults to false.
property clientCertificateId
public clientCertificateId: pulumi.Output<string | undefined>;The identifier of a client certificate for the stage. Use the aws.apigateway.ClientCertificate resource to configure a client certificate.
Supported only for WebSocket APIs.
property defaultRouteSettings
public defaultRouteSettings: pulumi.Output<StageDefaultRouteSettings | undefined>;The default route settings for the stage.
property deploymentId
public deploymentId: pulumi.Output<string | undefined>;The deployment identifier of the stage. Use the aws.apigatewayv2.Deployment resource to configure a deployment.
property description
public description: pulumi.Output<string | undefined>;The description for the stage.
property executionArn
public executionArn: pulumi.Output<string>;The ARN prefix to be used in an aws.lambda.Permission’s sourceArn attribute
or in an aws.iam.Policy to authorize access to the @connections API.
See the Amazon API Gateway Developer Guide for details.
Set only for WebSocket APIs.
property id
id: Output<ID>;id is the provider-assigned unique ID for this managed resource. It is set during deployments and may be missing (undefined) during planning phases.
property invokeUrl
public invokeUrl: pulumi.Output<string>;The URL to invoke the API pointing to the stage,
e.g. wss://z4675bid1j.execute-api.eu-west-2.amazonaws.com/example-stage, or https://z4675bid1j.execute-api.eu-west-2.amazonaws.com/
property name
public name: pulumi.Output<string>;The name of the stage.
property routeSettings
public routeSettings: pulumi.Output<StageRouteSetting[] | undefined>;Route settings for the stage.
property stageVariables
public stageVariables: pulumi.Output<{[key: string]: string} | undefined>;A map that defines the stage variables for the stage.
property tags
public tags: pulumi.Output<{[key: string]: any} | undefined>;A map of tags to assign to the stage.
property urn
urn: Output<URN>;urn is the stable logical URN used to distinctly address a resource, both before and after deployments.
Resource VpcLink
class VpcLink extends CustomResourceManages an Amazon API Gateway Version 2 VPC Link.
Note: Amazon API Gateway Version 2 VPC Links enable private integrations that connect HTTP APIs to private resources in a VPC. To enable private integration for REST APIs, use the
Amazon API Gateway Version 1 VPC Linkresource.
Example Usage
import * as pulumi from "@pulumi/pulumi";
import * as aws from "@pulumi/aws";
const example = new aws.apigatewayv2.VpcLink("example", {
securityGroupIds: [data.aws_security_group.example.id],
subnetIds: data.aws_subnet_ids.example.ids,
tags: {
Usage: "example",
},
});constructor
new VpcLink(name: string, args: VpcLinkArgs, opts?: pulumi.CustomResourceOptions)Create a VpcLink resource with the given unique name, arguments, and options.
nameThe unique name of the resource.argsThe arguments to use to populate this resource's properties.optsA bag of options that control this resource's behavior.
method get
public static get(name: string, id: pulumi.Input<pulumi.ID>, state?: VpcLinkState, opts?: pulumi.CustomResourceOptions): VpcLinkGet an existing VpcLink resource’s state with the given name, ID, and optional extra properties used to qualify the lookup.
method getProvider
getProvider(moduleMember: string): ProviderResource | undefinedmethod isInstance
public static isInstance(obj: any): obj is VpcLinkReturns true if the given object is an instance of VpcLink. This is designed to work even when multiple copies of the Pulumi SDK have been loaded into the same process.
property arn
public arn: pulumi.Output<string>;The VPC Link ARN.
property id
id: Output<ID>;id is the provider-assigned unique ID for this managed resource. It is set during deployments and may be missing (undefined) during planning phases.
property name
public name: pulumi.Output<string>;The name of the VPC Link.
property securityGroupIds
public securityGroupIds: pulumi.Output<string[]>;Security group IDs for the VPC Link.
property subnetIds
public subnetIds: pulumi.Output<string[]>;Subnet IDs for the VPC Link.
property tags
public tags: pulumi.Output<{[key: string]: any} | undefined>;A map of tags to assign to the VPC Link.
property urn
urn: Output<URN>;urn is the stable logical URN used to distinctly address a resource, both before and after deployments.
Others
interface ApiArgs
interface ApiArgsThe set of arguments for constructing a Api resource.
property apiKeySelectionExpression
apiKeySelectionExpression?: pulumi.Input<string>;An API key selection expression.
Valid values: $context.authorizer.usageIdentifierKey, $request.header.x-api-key. Defaults to $request.header.x-api-key.
Applicable for WebSocket APIs.
property corsConfiguration
corsConfiguration?: pulumi.Input<ApiCorsConfiguration>;The cross-origin resource sharing (CORS) configuration. Applicable for HTTP APIs.
property credentialsArn
credentialsArn?: pulumi.Input<string>;Part of quick create. Specifies any credentials required for the integration. Applicable for HTTP APIs.
property description
description?: pulumi.Input<string>;The description of the API.
property name
name?: pulumi.Input<string>;The name of the API.
property protocolType
protocolType: pulumi.Input<string>;The API protocol. Valid values: HTTP, WEBSOCKET.
property routeKey
routeKey?: pulumi.Input<string>;Part of quick create. Specifies any route key. Applicable for HTTP APIs.
property routeSelectionExpression
routeSelectionExpression?: pulumi.Input<string>;The route selection expression for the API.
Defaults to $request.method $request.path.
property tags
tags?: pulumi.Input<{[key: string]: any}>;A map of tags to assign to the API.
property target
target?: pulumi.Input<string>;Part of quick create. Quick create produces an API with an integration, a default catch-all route, and a default stage which is configured to automatically deploy changes.
For HTTP integrations, specify a fully qualified URL. For Lambda integrations, specify a function ARN.
The type of the integration will be HTTP_PROXY or AWS_PROXY, respectively. Applicable for HTTP APIs.
property version
version?: pulumi.Input<string>;A version identifier for the API.
interface ApiMappingArgs
interface ApiMappingArgsThe set of arguments for constructing a ApiMapping resource.
property apiId
apiId: pulumi.Input<string>;The API identifier.
property apiMappingKey
apiMappingKey?: pulumi.Input<string>;The API mapping key.
property domainName
domainName: pulumi.Input<string>;The domain name. Use the aws.apigatewayv2.DomainName resource to configure a domain name.
property stage
stage: pulumi.Input<string>;The API stage. Use the aws.apigatewayv2.Stage resource to configure an API stage.
interface ApiMappingState
interface ApiMappingStateInput properties used for looking up and filtering ApiMapping resources.
property apiId
apiId?: pulumi.Input<string>;The API identifier.
property apiMappingKey
apiMappingKey?: pulumi.Input<string>;The API mapping key.
property domainName
domainName?: pulumi.Input<string>;The domain name. Use the aws.apigatewayv2.DomainName resource to configure a domain name.
property stage
stage?: pulumi.Input<string>;The API stage. Use the aws.apigatewayv2.Stage resource to configure an API stage.
interface ApiState
interface ApiStateInput properties used for looking up and filtering Api resources.
property apiEndpoint
apiEndpoint?: pulumi.Input<string>;The URI of the API, of the form {api-id}.execute-api.{region}.amazonaws.com.
property apiKeySelectionExpression
apiKeySelectionExpression?: pulumi.Input<string>;An API key selection expression.
Valid values: $context.authorizer.usageIdentifierKey, $request.header.x-api-key. Defaults to $request.header.x-api-key.
Applicable for WebSocket APIs.
property arn
arn?: pulumi.Input<string>;The ARN of the API.
property corsConfiguration
corsConfiguration?: pulumi.Input<ApiCorsConfiguration>;The cross-origin resource sharing (CORS) configuration. Applicable for HTTP APIs.
property credentialsArn
credentialsArn?: pulumi.Input<string>;Part of quick create. Specifies any credentials required for the integration. Applicable for HTTP APIs.
property description
description?: pulumi.Input<string>;The description of the API.
property executionArn
executionArn?: pulumi.Input<string>;The ARN prefix to be used in an aws.lambda.Permission’s sourceArn attribute
or in an aws.iam.Policy to authorize access to the @connections API.
See the Amazon API Gateway Developer Guide for details.
property name
name?: pulumi.Input<string>;The name of the API.
property protocolType
protocolType?: pulumi.Input<string>;The API protocol. Valid values: HTTP, WEBSOCKET.
property routeKey
routeKey?: pulumi.Input<string>;Part of quick create. Specifies any route key. Applicable for HTTP APIs.
property routeSelectionExpression
routeSelectionExpression?: pulumi.Input<string>;The route selection expression for the API.
Defaults to $request.method $request.path.
property tags
tags?: pulumi.Input<{[key: string]: any}>;A map of tags to assign to the API.
property target
target?: pulumi.Input<string>;Part of quick create. Quick create produces an API with an integration, a default catch-all route, and a default stage which is configured to automatically deploy changes.
For HTTP integrations, specify a fully qualified URL. For Lambda integrations, specify a function ARN.
The type of the integration will be HTTP_PROXY or AWS_PROXY, respectively. Applicable for HTTP APIs.
property version
version?: pulumi.Input<string>;A version identifier for the API.
interface AuthorizerArgs
interface AuthorizerArgsThe set of arguments for constructing a Authorizer resource.
property apiId
apiId: pulumi.Input<string>;The API identifier.
property authorizerCredentialsArn
authorizerCredentialsArn?: pulumi.Input<string>;The required credentials as an IAM role for API Gateway to invoke the authorizer.
Supported only for REQUEST authorizers.
property authorizerType
authorizerType: pulumi.Input<string>;The authorizer type. Valid values: JWT, REQUEST.
For WebSocket APIs, specify REQUEST for a Lambda function using incoming request parameters.
For HTTP APIs, specify JWT to use JSON Web Tokens.
property authorizerUri
authorizerUri?: pulumi.Input<string>;The authorizer’s Uniform Resource Identifier (URI).
For REQUEST authorizers this must be a well-formed Lambda function URI, such as the invokeArn attribute of the aws.lambda.Function resource.
Supported only for REQUEST authorizers.
property identitySources
identitySources: pulumi.Input<pulumi.Input<string>[]>;The identity sources for which authorization is requested.
For REQUEST authorizers the value is a list of one or more mapping expressions of the specified request parameters.
For JWT authorizers the single entry specifies where to extract the JSON Web Token (JWT) from inbound requests.
property jwtConfiguration
jwtConfiguration?: pulumi.Input<AuthorizerJwtConfiguration>;The configuration of a JWT authorizer. Required for the JWT authorizer type.
Supported only for HTTP APIs.
property name
name?: pulumi.Input<string>;The name of the authorizer.
interface AuthorizerState
interface AuthorizerStateInput properties used for looking up and filtering Authorizer resources.
property apiId
apiId?: pulumi.Input<string>;The API identifier.
property authorizerCredentialsArn
authorizerCredentialsArn?: pulumi.Input<string>;The required credentials as an IAM role for API Gateway to invoke the authorizer.
Supported only for REQUEST authorizers.
property authorizerType
authorizerType?: pulumi.Input<string>;The authorizer type. Valid values: JWT, REQUEST.
For WebSocket APIs, specify REQUEST for a Lambda function using incoming request parameters.
For HTTP APIs, specify JWT to use JSON Web Tokens.
property authorizerUri
authorizerUri?: pulumi.Input<string>;The authorizer’s Uniform Resource Identifier (URI).
For REQUEST authorizers this must be a well-formed Lambda function URI, such as the invokeArn attribute of the aws.lambda.Function resource.
Supported only for REQUEST authorizers.
property identitySources
identitySources?: pulumi.Input<pulumi.Input<string>[]>;The identity sources for which authorization is requested.
For REQUEST authorizers the value is a list of one or more mapping expressions of the specified request parameters.
For JWT authorizers the single entry specifies where to extract the JSON Web Token (JWT) from inbound requests.
property jwtConfiguration
jwtConfiguration?: pulumi.Input<AuthorizerJwtConfiguration>;The configuration of a JWT authorizer. Required for the JWT authorizer type.
Supported only for HTTP APIs.
property name
name?: pulumi.Input<string>;The name of the authorizer.
interface DeploymentArgs
interface DeploymentArgsThe set of arguments for constructing a Deployment resource.
property apiId
apiId: pulumi.Input<string>;The API identifier.
property description
description?: pulumi.Input<string>;The description for the deployment resource.
property triggers
triggers?: pulumi.Input<{[key: string]: pulumi.Input<string>}>;A map of arbitrary keys and values that, when changed, will trigger a redeployment.
interface DeploymentState
interface DeploymentStateInput properties used for looking up and filtering Deployment resources.
property apiId
apiId?: pulumi.Input<string>;The API identifier.
property autoDeployed
autoDeployed?: pulumi.Input<boolean>;Whether the deployment was automatically released.
property description
description?: pulumi.Input<string>;The description for the deployment resource.
property triggers
triggers?: pulumi.Input<{[key: string]: pulumi.Input<string>}>;A map of arbitrary keys and values that, when changed, will trigger a redeployment.
interface DomainNameArgs
interface DomainNameArgsThe set of arguments for constructing a DomainName resource.
property domainName
domainName: pulumi.Input<string>;The domain name.
property domainNameConfiguration
domainNameConfiguration: pulumi.Input<DomainNameDomainNameConfiguration>;The domain name configuration.
property tags
tags?: pulumi.Input<{[key: string]: any}>;A map of tags to assign to the domain name.
interface DomainNameState
interface DomainNameStateInput properties used for looking up and filtering DomainName resources.
property apiMappingSelectionExpression
apiMappingSelectionExpression?: pulumi.Input<string>;The API mapping selection expression for the domain name.
property arn
arn?: pulumi.Input<string>;The ARN of the domain name.
property domainName
domainName?: pulumi.Input<string>;The domain name.
property domainNameConfiguration
domainNameConfiguration?: pulumi.Input<DomainNameDomainNameConfiguration>;The domain name configuration.
property tags
tags?: pulumi.Input<{[key: string]: any}>;A map of tags to assign to the domain name.
interface IntegrationArgs
interface IntegrationArgsThe set of arguments for constructing a Integration resource.
property apiId
apiId: pulumi.Input<string>;The API identifier.
property connectionId
connectionId?: pulumi.Input<string>;The ID of the VPC link for a private integration. Supported only for HTTP APIs.
property connectionType
connectionType?: pulumi.Input<string>;The type of the network connection to the integration endpoint. Valid values: INTERNET, VPC_LINK. Default is INTERNET.
property contentHandlingStrategy
contentHandlingStrategy?: pulumi.Input<string>;How to handle response payload content type conversions. Valid values: CONVERT_TO_BINARY, CONVERT_TO_TEXT. Supported only for WebSocket APIs.
property credentialsArn
credentialsArn?: pulumi.Input<string>;The credentials required for the integration, if any.
property description
description?: pulumi.Input<string>;The description of the integration.
property integrationMethod
integrationMethod?: pulumi.Input<string>;The integration’s HTTP method. Must be specified if integrationType is not MOCK.
property integrationType
integrationType: pulumi.Input<string>;The integration type of an integration.
Valid values: AWS, AWS_PROXY, HTTP, HTTP_PROXY, MOCK.
property integrationUri
integrationUri?: pulumi.Input<string>;The URI of the Lambda function for a Lambda proxy integration, when integrationType 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.
property passthroughBehavior
passthroughBehavior?: pulumi.Input<string>;The pass-through behavior for incoming requests based on the Content-Type header in the request, and the available mapping templates specified as the requestTemplates attribute.
Valid values: WHEN_NO_MATCH, WHEN_NO_TEMPLATES, NEVER. Default is WHEN_NO_MATCH. Supported only for WebSocket APIs.
property payloadFormatVersion
payloadFormatVersion?: pulumi.Input<string>;The format of the payload sent to an integration. Valid values: 1.0, 2.0. Default is 1.0.
property requestTemplates
requestTemplates?: pulumi.Input<{[key: string]: pulumi.Input<string>}>;A map of Velocity templates that are applied on the request payload based on the value of the Content-Type header sent by the client. Supported only for WebSocket APIs.
property templateSelectionExpression
templateSelectionExpression?: pulumi.Input<string>;The template selection expression for the integration.
property timeoutMilliseconds
timeoutMilliseconds?: pulumi.Input<number>;Custom timeout between 50 and 29,000 milliseconds. The default value is 29,000 milliseconds or 29 seconds.
interface IntegrationResponseArgs
interface IntegrationResponseArgsThe set of arguments for constructing a IntegrationResponse resource.
property apiId
apiId: pulumi.Input<string>;The API identifier.
property contentHandlingStrategy
contentHandlingStrategy?: pulumi.Input<string>;How to handle response payload content type conversions. Valid values: CONVERT_TO_BINARY, CONVERT_TO_TEXT.
property integrationId
integrationId: pulumi.Input<string>;The identifier of the aws.apigatewayv2.Integration.
property integrationResponseKey
integrationResponseKey: pulumi.Input<string>;The integration response key.
property responseTemplates
responseTemplates?: pulumi.Input<{[key: string]: pulumi.Input<string>}>;A map of Velocity templates that are applied on the request payload based on the value of the Content-Type header sent by the client.
property templateSelectionExpression
templateSelectionExpression?: pulumi.Input<string>;The template selection expression for the integration response.
interface IntegrationResponseState
interface IntegrationResponseStateInput properties used for looking up and filtering IntegrationResponse resources.
property apiId
apiId?: pulumi.Input<string>;The API identifier.
property contentHandlingStrategy
contentHandlingStrategy?: pulumi.Input<string>;How to handle response payload content type conversions. Valid values: CONVERT_TO_BINARY, CONVERT_TO_TEXT.
property integrationId
integrationId?: pulumi.Input<string>;The identifier of the aws.apigatewayv2.Integration.
property integrationResponseKey
integrationResponseKey?: pulumi.Input<string>;The integration response key.
property responseTemplates
responseTemplates?: pulumi.Input<{[key: string]: pulumi.Input<string>}>;A map of Velocity templates that are applied on the request payload based on the value of the Content-Type header sent by the client.
property templateSelectionExpression
templateSelectionExpression?: pulumi.Input<string>;The template selection expression for the integration response.
interface IntegrationState
interface IntegrationStateInput properties used for looking up and filtering Integration resources.
property apiId
apiId?: pulumi.Input<string>;The API identifier.
property connectionId
connectionId?: pulumi.Input<string>;The ID of the VPC link for a private integration. Supported only for HTTP APIs.
property connectionType
connectionType?: pulumi.Input<string>;The type of the network connection to the integration endpoint. Valid values: INTERNET, VPC_LINK. Default is INTERNET.
property contentHandlingStrategy
contentHandlingStrategy?: pulumi.Input<string>;How to handle response payload content type conversions. Valid values: CONVERT_TO_BINARY, CONVERT_TO_TEXT. Supported only for WebSocket APIs.
property credentialsArn
credentialsArn?: pulumi.Input<string>;The credentials required for the integration, if any.
property description
description?: pulumi.Input<string>;The description of the integration.
property integrationMethod
integrationMethod?: pulumi.Input<string>;The integration’s HTTP method. Must be specified if integrationType is not MOCK.
property integrationResponseSelectionExpression
integrationResponseSelectionExpression?: pulumi.Input<string>;The integration response selection expression for the integration.
property integrationType
integrationType?: pulumi.Input<string>;The integration type of an integration.
Valid values: AWS, AWS_PROXY, HTTP, HTTP_PROXY, MOCK.
property integrationUri
integrationUri?: pulumi.Input<string>;The URI of the Lambda function for a Lambda proxy integration, when integrationType 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.
property passthroughBehavior
passthroughBehavior?: pulumi.Input<string>;The pass-through behavior for incoming requests based on the Content-Type header in the request, and the available mapping templates specified as the requestTemplates attribute.
Valid values: WHEN_NO_MATCH, WHEN_NO_TEMPLATES, NEVER. Default is WHEN_NO_MATCH. Supported only for WebSocket APIs.
property payloadFormatVersion
payloadFormatVersion?: pulumi.Input<string>;The format of the payload sent to an integration. Valid values: 1.0, 2.0. Default is 1.0.
property requestTemplates
requestTemplates?: pulumi.Input<{[key: string]: pulumi.Input<string>}>;A map of Velocity templates that are applied on the request payload based on the value of the Content-Type header sent by the client. Supported only for WebSocket APIs.
property templateSelectionExpression
templateSelectionExpression?: pulumi.Input<string>;The template selection expression for the integration.
property timeoutMilliseconds
timeoutMilliseconds?: pulumi.Input<number>;Custom timeout between 50 and 29,000 milliseconds. The default value is 29,000 milliseconds or 29 seconds.
interface ModelArgs
interface ModelArgsThe set of arguments for constructing a Model resource.
property apiId
apiId: pulumi.Input<string>;The API identifier.
property contentType
contentType: pulumi.Input<string>;The content-type for the model, for example, application/json.
property description
description?: pulumi.Input<string>;The description of the model.
property name
name?: pulumi.Input<string>;The name of the model. Must be alphanumeric.
property schema
schema: pulumi.Input<string>;The schema for the model. This should be a JSON schema draft 4 model.
interface ModelState
interface ModelStateInput properties used for looking up and filtering Model resources.
property apiId
apiId?: pulumi.Input<string>;The API identifier.
property contentType
contentType?: pulumi.Input<string>;The content-type for the model, for example, application/json.
property description
description?: pulumi.Input<string>;The description of the model.
property name
name?: pulumi.Input<string>;The name of the model. Must be alphanumeric.
property schema
schema?: pulumi.Input<string>;The schema for the model. This should be a JSON schema draft 4 model.
interface RouteArgs
interface RouteArgsThe set of arguments for constructing a Route resource.
property apiId
apiId: pulumi.Input<string>;The API identifier.
property apiKeyRequired
apiKeyRequired?: pulumi.Input<boolean>;Boolean whether an API key is required for the route. Defaults to false.
property authorizationScopes
authorizationScopes?: pulumi.Input<pulumi.Input<string>[]>;The authorization scopes supported by this route. The scopes are used with a JWT authorizer to authorize the method invocation.
property authorizationType
authorizationType?: pulumi.Input<string>;The authorization type for the route.
For WebSocket APIs, valid values are NONE for open access, AWS_IAM for using AWS IAM permissions, and CUSTOM for using a Lambda authorizer.
For HTTP APIs, valid values are NONE for open access, or JWT for using JSON Web Tokens.
Defaults to NONE.
property authorizerId
authorizerId?: pulumi.Input<string>;The identifier of the aws.apigatewayv2.Authorizer resource to be associated with this route, if the authorizationType is CUSTOM.
property modelSelectionExpression
modelSelectionExpression?: pulumi.Input<string>;The model selection expression for the route.
property operationName
operationName?: pulumi.Input<string>;The operation name for the route.
property requestModels
requestModels?: pulumi.Input<{[key: string]: pulumi.Input<string>}>;The request models for the route.
property routeKey
routeKey: pulumi.Input<string>;The route key for the route.
property routeResponseSelectionExpression
routeResponseSelectionExpression?: pulumi.Input<string>;The route response selection expression for the route.
property target
target?: pulumi.Input<string>;The target for the route.
interface RouteResponseArgs
interface RouteResponseArgsThe set of arguments for constructing a RouteResponse resource.
property apiId
apiId: pulumi.Input<string>;The API identifier.
property modelSelectionExpression
modelSelectionExpression?: pulumi.Input<string>;The model selection expression for the route response.
property responseModels
responseModels?: pulumi.Input<{[key: string]: pulumi.Input<string>}>;The response models for the route response.
property routeId
routeId: pulumi.Input<string>;The identifier of the aws.apigatewayv2.Route.
property routeResponseKey
routeResponseKey: pulumi.Input<string>;The route response key.
interface RouteResponseState
interface RouteResponseStateInput properties used for looking up and filtering RouteResponse resources.
property apiId
apiId?: pulumi.Input<string>;The API identifier.
property modelSelectionExpression
modelSelectionExpression?: pulumi.Input<string>;The model selection expression for the route response.
property responseModels
responseModels?: pulumi.Input<{[key: string]: pulumi.Input<string>}>;The response models for the route response.
property routeId
routeId?: pulumi.Input<string>;The identifier of the aws.apigatewayv2.Route.
property routeResponseKey
routeResponseKey?: pulumi.Input<string>;The route response key.
interface RouteState
interface RouteStateInput properties used for looking up and filtering Route resources.
property apiId
apiId?: pulumi.Input<string>;The API identifier.
property apiKeyRequired
apiKeyRequired?: pulumi.Input<boolean>;Boolean whether an API key is required for the route. Defaults to false.
property authorizationScopes
authorizationScopes?: pulumi.Input<pulumi.Input<string>[]>;The authorization scopes supported by this route. The scopes are used with a JWT authorizer to authorize the method invocation.
property authorizationType
authorizationType?: pulumi.Input<string>;The authorization type for the route.
For WebSocket APIs, valid values are NONE for open access, AWS_IAM for using AWS IAM permissions, and CUSTOM for using a Lambda authorizer.
For HTTP APIs, valid values are NONE for open access, or JWT for using JSON Web Tokens.
Defaults to NONE.
property authorizerId
authorizerId?: pulumi.Input<string>;The identifier of the aws.apigatewayv2.Authorizer resource to be associated with this route, if the authorizationType is CUSTOM.
property modelSelectionExpression
modelSelectionExpression?: pulumi.Input<string>;The model selection expression for the route.
property operationName
operationName?: pulumi.Input<string>;The operation name for the route.
property requestModels
requestModels?: pulumi.Input<{[key: string]: pulumi.Input<string>}>;The request models for the route.
property routeKey
routeKey?: pulumi.Input<string>;The route key for the route.
property routeResponseSelectionExpression
routeResponseSelectionExpression?: pulumi.Input<string>;The route response selection expression for the route.
property target
target?: pulumi.Input<string>;The target for the route.
interface StageArgs
interface StageArgsThe set of arguments for constructing a Stage resource.
property accessLogSettings
accessLogSettings?: pulumi.Input<StageAccessLogSettings>;Settings for logging access in this stage.
Use the aws.apigateway.Account resource to configure permissions for CloudWatch Logging.
property apiId
apiId: pulumi.Input<string>;The API identifier.
property autoDeploy
autoDeploy?: pulumi.Input<boolean>;Whether updates to an API automatically trigger a new deployment. Defaults to false.
property clientCertificateId
clientCertificateId?: pulumi.Input<string>;The identifier of a client certificate for the stage. Use the aws.apigateway.ClientCertificate resource to configure a client certificate.
Supported only for WebSocket APIs.
property defaultRouteSettings
defaultRouteSettings?: pulumi.Input<StageDefaultRouteSettings>;The default route settings for the stage.
property deploymentId
deploymentId?: pulumi.Input<string>;The deployment identifier of the stage. Use the aws.apigatewayv2.Deployment resource to configure a deployment.
property description
description?: pulumi.Input<string>;The description for the stage.
property name
name?: pulumi.Input<string>;The name of the stage.
property routeSettings
routeSettings?: pulumi.Input<pulumi.Input<StageRouteSetting>[]>;Route settings for the stage.
property stageVariables
stageVariables?: pulumi.Input<{[key: string]: pulumi.Input<string>}>;A map that defines the stage variables for the stage.
property tags
tags?: pulumi.Input<{[key: string]: any}>;A map of tags to assign to the stage.
interface StageState
interface StageStateInput properties used for looking up and filtering Stage resources.
property accessLogSettings
accessLogSettings?: pulumi.Input<StageAccessLogSettings>;Settings for logging access in this stage.
Use the aws.apigateway.Account resource to configure permissions for CloudWatch Logging.
property apiId
apiId?: pulumi.Input<string>;The API identifier.
property arn
arn?: pulumi.Input<string>;The ARN of the stage.
property autoDeploy
autoDeploy?: pulumi.Input<boolean>;Whether updates to an API automatically trigger a new deployment. Defaults to false.
property clientCertificateId
clientCertificateId?: pulumi.Input<string>;The identifier of a client certificate for the stage. Use the aws.apigateway.ClientCertificate resource to configure a client certificate.
Supported only for WebSocket APIs.
property defaultRouteSettings
defaultRouteSettings?: pulumi.Input<StageDefaultRouteSettings>;The default route settings for the stage.
property deploymentId
deploymentId?: pulumi.Input<string>;The deployment identifier of the stage. Use the aws.apigatewayv2.Deployment resource to configure a deployment.
property description
description?: pulumi.Input<string>;The description for the stage.
property executionArn
executionArn?: pulumi.Input<string>;The ARN prefix to be used in an aws.lambda.Permission’s sourceArn attribute
or in an aws.iam.Policy to authorize access to the @connections API.
See the Amazon API Gateway Developer Guide for details.
Set only for WebSocket APIs.
property invokeUrl
invokeUrl?: pulumi.Input<string>;The URL to invoke the API pointing to the stage,
e.g. wss://z4675bid1j.execute-api.eu-west-2.amazonaws.com/example-stage, or https://z4675bid1j.execute-api.eu-west-2.amazonaws.com/
property name
name?: pulumi.Input<string>;The name of the stage.
property routeSettings
routeSettings?: pulumi.Input<pulumi.Input<StageRouteSetting>[]>;Route settings for the stage.
property stageVariables
stageVariables?: pulumi.Input<{[key: string]: pulumi.Input<string>}>;A map that defines the stage variables for the stage.
property tags
tags?: pulumi.Input<{[key: string]: any}>;A map of tags to assign to the stage.
interface VpcLinkArgs
interface VpcLinkArgsThe set of arguments for constructing a VpcLink resource.
property name
name?: pulumi.Input<string>;The name of the VPC Link.
property securityGroupIds
securityGroupIds: pulumi.Input<pulumi.Input<string>[]>;Security group IDs for the VPC Link.
property subnetIds
subnetIds: pulumi.Input<pulumi.Input<string>[]>;Subnet IDs for the VPC Link.
property tags
tags?: pulumi.Input<{[key: string]: any}>;A map of tags to assign to the VPC Link.
interface VpcLinkState
interface VpcLinkStateInput properties used for looking up and filtering VpcLink resources.
property arn
arn?: pulumi.Input<string>;The VPC Link ARN.
property name
name?: pulumi.Input<string>;The name of the VPC Link.
property securityGroupIds
securityGroupIds?: pulumi.Input<pulumi.Input<string>[]>;Security group IDs for the VPC Link.
property subnetIds
subnetIds?: pulumi.Input<pulumi.Input<string>[]>;Subnet IDs for the VPC Link.
property tags
tags?: pulumi.Input<{[key: string]: any}>;A map of tags to assign to the VPC Link.