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.

apigatewayv2

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-aws repo; however, if that doesn’t turn up anything, please consult the source terraform-providers/terraform-provider-aws repo.

class pulumi_aws.apigatewayv2.Api(resource_name, opts=None, api_key_selection_expression=None, cors_configuration=None, credentials_arn=None, description=None, name=None, protocol_type=None, route_key=None, route_selection_expression=None, tags=None, target=None, version=None, __props__=None, __name__=None, __opts__=None)

Manages 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.

import pulumi
import pulumi_aws as aws

example = aws.apigatewayv2.Api("example",
    protocol_type="WEBSOCKET",
    route_selection_expression="$request.body.action")
import pulumi
import pulumi_aws as aws

example = aws.apigatewayv2.Api("example", protocol_type="HTTP")
Parameters
  • resource_name (str) – The name of the resource.

  • opts (pulumi.ResourceOptions) – Options for the resource.

  • api_key_selection_expression (pulumi.Input[str]) – 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.

  • cors_configuration (pulumi.Input[dict]) – The cross-origin resource sharing (CORS) configuration. Applicable for HTTP APIs.

  • credentials_arn (pulumi.Input[str]) – Part of quick create. Specifies any credentials required for the integration. Applicable for HTTP APIs.

  • description (pulumi.Input[str]) – The description of the API.

  • name (pulumi.Input[str]) – The name of the API.

  • protocol_type (pulumi.Input[str]) – The API protocol. Valid values: HTTP, WEBSOCKET.

  • route_key (pulumi.Input[str]) – Part of quick create. Specifies any route key. Applicable for HTTP APIs.

  • route_selection_expression (pulumi.Input[str]) – The route selection expression for the API. Defaults to $request.method $request.path.

  • tags (pulumi.Input[dict]) – A map of tags to assign to the API.

  • target (pulumi.Input[str]) – 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.

  • version (pulumi.Input[str]) – A version identifier for the API.

The cors_configuration object supports the following:

  • allowCredentials (pulumi.Input[bool]) - Whether credentials are included in the CORS request.

  • allowHeaders (pulumi.Input[list]) - The set of allowed HTTP headers.

  • allowMethods (pulumi.Input[list]) - The set of allowed HTTP methods.

  • allowOrigins (pulumi.Input[list]) - The set of allowed origins.

  • exposeHeaders (pulumi.Input[list]) - The set of exposed HTTP headers.

  • maxAge (pulumi.Input[float]) - The number of seconds that the browser should cache preflight request results.

api_endpoint: pulumi.Output[str] = None

The URI of the API, of the form {api-id}.execute-api.{region}.amazonaws.com.

api_key_selection_expression: pulumi.Output[str] = None

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.

arn: pulumi.Output[str] = None

The ARN of the API.

cors_configuration: pulumi.Output[dict] = None

The cross-origin resource sharing (CORS) configuration. Applicable for HTTP APIs.

  • allowCredentials (bool) - Whether credentials are included in the CORS request.

  • allowHeaders (list) - The set of allowed HTTP headers.

  • allowMethods (list) - The set of allowed HTTP methods.

  • allowOrigins (list) - The set of allowed origins.

  • exposeHeaders (list) - The set of exposed HTTP headers.

  • maxAge (float) - The number of seconds that the browser should cache preflight request results.

credentials_arn: pulumi.Output[str] = None

Part of quick create. Specifies any credentials required for the integration. Applicable for HTTP APIs.

description: pulumi.Output[str] = None

The description of the API.

execution_arn: pulumi.Output[str] = None

The ARN prefix to be used in an lambda.Permission’s source_arn attribute or in an iam.Policy to authorize access to the ``@connections` API <https://docs.aws.amazon.com/apigateway/latest/developerguide/apigateway-how-to-call-websocket-api-connections.html>`_. See the Amazon API Gateway Developer Guide for details.

name: pulumi.Output[str] = None

The name of the API.

protocol_type: pulumi.Output[str] = None

The API protocol. Valid values: HTTP, WEBSOCKET.

route_key: pulumi.Output[str] = None

Part of quick create. Specifies any route key. Applicable for HTTP APIs.

route_selection_expression: pulumi.Output[str] = None

The route selection expression for the API. Defaults to $request.method $request.path.

tags: pulumi.Output[dict] = None

A map of tags to assign to the API.

target: pulumi.Output[str] = None

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.

version: pulumi.Output[str] = None

A version identifier for the API.

static get(resource_name, id, opts=None, api_endpoint=None, api_key_selection_expression=None, arn=None, cors_configuration=None, credentials_arn=None, description=None, execution_arn=None, name=None, protocol_type=None, route_key=None, route_selection_expression=None, tags=None, target=None, version=None)

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

Parameters
  • resource_name (str) – The unique name of the resulting resource.

  • id (str) – The unique provider ID of the resource to lookup.

  • opts (pulumi.ResourceOptions) – Options for the resource.

  • api_endpoint (pulumi.Input[str]) – The URI of the API, of the form {api-id}.execute-api.{region}.amazonaws.com.

  • api_key_selection_expression (pulumi.Input[str]) –

    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.

  • arn (pulumi.Input[str]) – The ARN of the API.

  • cors_configuration (pulumi.Input[dict]) –

    The cross-origin resource sharing (CORS) configuration. Applicable for HTTP APIs.

  • credentials_arn (pulumi.Input[str]) – Part of quick create. Specifies any credentials required for the integration. Applicable for HTTP APIs.

  • description (pulumi.Input[str]) – The description of the API.

  • execution_arn (pulumi.Input[str]) –

    The ARN prefix to be used in an lambda.Permission’s source_arn attribute or in an iam.Policy to authorize access to the ``@connections` API <https://docs.aws.amazon.com/apigateway/latest/developerguide/apigateway-how-to-call-websocket-api-connections.html>`_. See the Amazon API Gateway Developer Guide for details.

  • name (pulumi.Input[str]) – The name of the API.

  • protocol_type (pulumi.Input[str]) – The API protocol. Valid values: HTTP, WEBSOCKET.

  • route_key (pulumi.Input[str]) –

    Part of quick create. Specifies any route key. Applicable for HTTP APIs.

  • route_selection_expression (pulumi.Input[str]) –

    The route selection expression for the API. Defaults to $request.method $request.path.

  • tags (pulumi.Input[dict]) – A map of tags to assign to the API.

  • target (pulumi.Input[str]) – 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.

  • version (pulumi.Input[str]) – A version identifier for the API.

The cors_configuration object supports the following:

  • allowCredentials (pulumi.Input[bool]) - Whether credentials are included in the CORS request.

  • allowHeaders (pulumi.Input[list]) - The set of allowed HTTP headers.

  • allowMethods (pulumi.Input[list]) - The set of allowed HTTP methods.

  • allowOrigins (pulumi.Input[list]) - The set of allowed origins.

  • exposeHeaders (pulumi.Input[list]) - The set of exposed HTTP headers.

  • maxAge (pulumi.Input[float]) - The number of seconds that the browser should cache preflight request results.

translate_output_property(prop)

Provides subclasses of Resource an opportunity to translate names of output properties into a format of their choosing before writing those properties to the resource object.

Parameters

prop (str) – A property name.

Returns

A potentially transformed property name.

Return type

str

translate_input_property(prop)

Provides subclasses of Resource an opportunity to translate names of input properties into a format of their choosing before sending those properties to the Pulumi engine.

Parameters

prop (str) – A property name.

Returns

A potentially transformed property name.

Return type

str

class pulumi_aws.apigatewayv2.ApiMapping(resource_name, opts=None, api_id=None, api_mapping_key=None, domain_name=None, stage=None, __props__=None, __name__=None, __opts__=None)

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

import pulumi
import pulumi_aws as aws

example = aws.apigatewayv2.ApiMapping("example",
    api_id=aws_apigatewayv2_api["example"]["id"],
    domain_name=aws_apigatewayv2_domain_name["example"]["id"],
    stage=aws_apigatewayv2_stage["example"]["id"])
Parameters
  • resource_name (str) – The name of the resource.

  • opts (pulumi.ResourceOptions) – Options for the resource.

  • api_id (pulumi.Input[str]) – The API identifier.

  • api_mapping_key (pulumi.Input[str]) – The API mapping key.

  • domain_name (pulumi.Input[str]) – The domain name. Use the apigatewayv2.DomainName resource to configure a domain name.

  • stage (pulumi.Input[str]) – The API stage. Use the apigatewayv2.Stage resource to configure an API stage.

api_id: pulumi.Output[str] = None

The API identifier.

api_mapping_key: pulumi.Output[str] = None

The API mapping key.

domain_name: pulumi.Output[str] = None

The domain name. Use the apigatewayv2.DomainName resource to configure a domain name.

stage: pulumi.Output[str] = None

The API stage. Use the apigatewayv2.Stage resource to configure an API stage.

static get(resource_name, id, opts=None, api_id=None, api_mapping_key=None, domain_name=None, stage=None)

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

Parameters
  • resource_name (str) – The unique name of the resulting resource.

  • id (str) – The unique provider ID of the resource to lookup.

  • opts (pulumi.ResourceOptions) – Options for the resource.

  • api_id (pulumi.Input[str]) – The API identifier.

  • api_mapping_key (pulumi.Input[str]) –

    The API mapping key.

  • domain_name (pulumi.Input[str]) – The domain name. Use the apigatewayv2.DomainName resource to configure a domain name.

  • stage (pulumi.Input[str]) – The API stage. Use the apigatewayv2.Stage resource to configure an API stage.

translate_output_property(prop)

Provides subclasses of Resource an opportunity to translate names of output properties into a format of their choosing before writing those properties to the resource object.

Parameters

prop (str) – A property name.

Returns

A potentially transformed property name.

Return type

str

translate_input_property(prop)

Provides subclasses of Resource an opportunity to translate names of input properties into a format of their choosing before sending those properties to the Pulumi engine.

Parameters

prop (str) – A property name.

Returns

A potentially transformed property name.

Return type

str

class pulumi_aws.apigatewayv2.Authorizer(resource_name, opts=None, api_id=None, authorizer_credentials_arn=None, authorizer_type=None, authorizer_uri=None, identity_sources=None, jwt_configuration=None, name=None, __props__=None, __name__=None, __opts__=None)

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

import pulumi
import pulumi_aws as aws

example = aws.apigatewayv2.Authorizer("example",
    api_id=aws_apigatewayv2_api["example"]["id"],
    authorizer_type="REQUEST",
    authorizer_uri=aws_lambda_function["example"]["invoke_arn"],
    identity_sources=["route.request.header.Auth"])
import pulumi
import pulumi_aws as aws

example = aws.apigatewayv2.Authorizer("example",
    api_id=aws_apigatewayv2_api["example"]["id"],
    authorizer_type="JWT",
    identity_sources=["$request.header.Authorization"],
    jwt_configuration={
        "audience": ["example"],
        "issuer": f"https://{aws_cognito_user_pool['example']['endpoint']}",
    })
Parameters
  • resource_name (str) – The name of the resource.

  • opts (pulumi.ResourceOptions) – Options for the resource.

  • api_id (pulumi.Input[str]) – The API identifier.

  • authorizer_credentials_arn (pulumi.Input[str]) – The required credentials as an IAM role for API Gateway to invoke the authorizer. Supported only for REQUEST authorizers.

  • authorizer_type (pulumi.Input[str]) – 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.

  • authorizer_uri (pulumi.Input[str]) – The authorizer’s Uniform Resource Identifier (URI). For REQUEST authorizers this must be a well-formed Lambda function URI, such as the invoke_arn attribute of the lambda.Function resource. Supported only for REQUEST authorizers.

  • identity_sources (pulumi.Input[list]) – 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.

  • jwt_configuration (pulumi.Input[dict]) – The configuration of a JWT authorizer. Required for the JWT authorizer type. Supported only for HTTP APIs.

  • name (pulumi.Input[str]) – The name of the authorizer.

The jwt_configuration object supports the following:

  • audiences (pulumi.Input[list]) - A list of the intended recipients of the JWT. A valid JWT must provide an aud that matches at least one entry in this list.

  • issuer (pulumi.Input[str]) - The base domain of the identity provider that issues JSON Web Tokens, such as the endpoint attribute of the cognito.UserPool resource.

api_id: pulumi.Output[str] = None

The API identifier.

authorizer_credentials_arn: pulumi.Output[str] = None

The required credentials as an IAM role for API Gateway to invoke the authorizer. Supported only for REQUEST authorizers.

authorizer_type: pulumi.Output[str] = None

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.

authorizer_uri: pulumi.Output[str] = None

The authorizer’s Uniform Resource Identifier (URI). For REQUEST authorizers this must be a well-formed Lambda function URI, such as the invoke_arn attribute of the lambda.Function resource. Supported only for REQUEST authorizers.

identity_sources: pulumi.Output[list] = None

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.

jwt_configuration: pulumi.Output[dict] = None

The configuration of a JWT authorizer. Required for the JWT authorizer type. Supported only for HTTP APIs.

  • audiences (list) - A list of the intended recipients of the JWT. A valid JWT must provide an aud that matches at least one entry in this list.

  • issuer (str) - The base domain of the identity provider that issues JSON Web Tokens, such as the endpoint attribute of the cognito.UserPool resource.

name: pulumi.Output[str] = None

The name of the authorizer.

static get(resource_name, id, opts=None, api_id=None, authorizer_credentials_arn=None, authorizer_type=None, authorizer_uri=None, identity_sources=None, jwt_configuration=None, name=None)

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

Parameters
  • resource_name (str) – The unique name of the resulting resource.

  • id (str) – The unique provider ID of the resource to lookup.

  • opts (pulumi.ResourceOptions) – Options for the resource.

  • api_id (pulumi.Input[str]) – The API identifier.

  • authorizer_credentials_arn (pulumi.Input[str]) – The required credentials as an IAM role for API Gateway to invoke the authorizer. Supported only for REQUEST authorizers.

  • authorizer_type (pulumi.Input[str]) – 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.

  • authorizer_uri (pulumi.Input[str]) – The authorizer’s Uniform Resource Identifier (URI). For REQUEST authorizers this must be a well-formed Lambda function URI, such as the invoke_arn attribute of the lambda.Function resource. Supported only for REQUEST authorizers.

  • identity_sources (pulumi.Input[list]) – 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.

  • jwt_configuration (pulumi.Input[dict]) – The configuration of a JWT authorizer. Required for the JWT authorizer type. Supported only for HTTP APIs.

  • name (pulumi.Input[str]) – The name of the authorizer.

The jwt_configuration object supports the following:

  • audiences (pulumi.Input[list]) - A list of the intended recipients of the JWT. A valid JWT must provide an aud that matches at least one entry in this list.

  • issuer (pulumi.Input[str]) - The base domain of the identity provider that issues JSON Web Tokens, such as the endpoint attribute of the cognito.UserPool resource.

translate_output_property(prop)

Provides subclasses of Resource an opportunity to translate names of output properties into a format of their choosing before writing those properties to the resource object.

Parameters

prop (str) – A property name.

Returns

A potentially transformed property name.

Return type

str

translate_input_property(prop)

Provides subclasses of Resource an opportunity to translate names of input properties into a format of their choosing before sending those properties to the Pulumi engine.

Parameters

prop (str) – A property name.

Returns

A potentially transformed property name.

Return type

str

class pulumi_aws.apigatewayv2.Deployment(resource_name, opts=None, api_id=None, description=None, triggers=None, __props__=None, __name__=None, __opts__=None)

Manages 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 apigatewayv2.Route resource associated with that API. To avoid race conditions when all resources are being created together, you need to add implicit resource references via the triggers argument or explicit resource references using the resource ``dependsOn` meta-argument <https://www.pulumi.com/docs/intro/concepts/programming-model/#dependson>`_.

import pulumi
import pulumi_aws as aws

example = aws.apigatewayv2.Deployment("example",
    api_id=aws_apigatewayv2_route["example"]["api_id"],
    description="Example deployment")
Parameters
  • resource_name (str) – The name of the resource.

  • opts (pulumi.ResourceOptions) – Options for the resource.

  • api_id (pulumi.Input[str]) – The API identifier.

  • description (pulumi.Input[str]) – The description for the deployment resource.

  • triggers (pulumi.Input[dict]) – A map of arbitrary keys and values that, when changed, will trigger a redeployment.

api_id: pulumi.Output[str] = None

The API identifier.

auto_deployed: pulumi.Output[bool] = None

Whether the deployment was automatically released.

description: pulumi.Output[str] = None

The description for the deployment resource.

triggers: pulumi.Output[dict] = None

A map of arbitrary keys and values that, when changed, will trigger a redeployment.

static get(resource_name, id, opts=None, api_id=None, auto_deployed=None, description=None, triggers=None)

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

Parameters
  • resource_name (str) – The unique name of the resulting resource.

  • id (str) – The unique provider ID of the resource to lookup.

  • opts (pulumi.ResourceOptions) – Options for the resource.

  • api_id (pulumi.Input[str]) – The API identifier.

  • auto_deployed (pulumi.Input[bool]) – Whether the deployment was automatically released.

  • description (pulumi.Input[str]) – The description for the deployment resource.

  • triggers (pulumi.Input[dict]) – A map of arbitrary keys and values that, when changed, will trigger a redeployment.

translate_output_property(prop)

Provides subclasses of Resource an opportunity to translate names of output properties into a format of their choosing before writing those properties to the resource object.

Parameters

prop (str) – A property name.

Returns

A potentially transformed property name.

Return type

str

translate_input_property(prop)

Provides subclasses of Resource an opportunity to translate names of input properties into a format of their choosing before sending those properties to the Pulumi engine.

Parameters

prop (str) – A property name.

Returns

A potentially transformed property name.

Return type

str

class pulumi_aws.apigatewayv2.DomainName(resource_name, opts=None, domain_name=None, domain_name_configuration=None, tags=None, __props__=None, __name__=None, __opts__=None)

Manages 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 apigatewayv2.ApiMapping resource.

import pulumi
import pulumi_aws as aws

example = aws.apigatewayv2.DomainName("example",
    domain_name="ws-api.example.com",
    domain_name_configuration={
        "certificate_arn": aws_acm_certificate["example"]["arn"],
        "endpoint_type": "REGIONAL",
        "security_policy": "TLS_1_2",
    })
Parameters
  • resource_name (str) – The name of the resource.

  • opts (pulumi.ResourceOptions) – Options for the resource.

  • domain_name (pulumi.Input[str]) – The domain name.

  • domain_name_configuration (pulumi.Input[dict]) – The domain name configuration.

  • tags (pulumi.Input[dict]) – A map of tags to assign to the domain name.

The domain_name_configuration object supports the following:

  • certificate_arn (pulumi.Input[str]) - The ARN of an AWS-managed certificate that will be used by the endpoint for the domain name. AWS Certificate Manager is the only supported source. Use the acm.Certificate resource to configure an ACM certificate.

  • endpoint_type (pulumi.Input[str]) - The endpoint type. Valid values: REGIONAL.

  • hosted_zone_id (pulumi.Input[str]) - The Amazon Route 53 Hosted Zone ID of the endpoint.

  • security_policy (pulumi.Input[str]) - The Transport Layer Security (TLS) version of the security policy for the domain name. Valid values: TLS_1_2.

  • targetDomainName (pulumi.Input[str]) - The target domain name.

api_mapping_selection_expression: pulumi.Output[str] = None

The API mapping selection expression for the domain name.

arn: pulumi.Output[str] = None

The ARN of the domain name.

domain_name: pulumi.Output[str] = None

The domain name.

domain_name_configuration: pulumi.Output[dict] = None

The domain name configuration.

  • certificate_arn (str) - The ARN of an AWS-managed certificate that will be used by the endpoint for the domain name. AWS Certificate Manager is the only supported source. Use the acm.Certificate resource to configure an ACM certificate.

  • endpoint_type (str) - The endpoint type. Valid values: REGIONAL.

  • hosted_zone_id (str) - The Amazon Route 53 Hosted Zone ID of the endpoint.

  • security_policy (str) - The Transport Layer Security (TLS) version of the security policy for the domain name. Valid values: TLS_1_2.

  • targetDomainName (str) - The target domain name.

tags: pulumi.Output[dict] = None

A map of tags to assign to the domain name.

static get(resource_name, id, opts=None, api_mapping_selection_expression=None, arn=None, domain_name=None, domain_name_configuration=None, tags=None)

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

Parameters
  • resource_name (str) – The unique name of the resulting resource.

  • id (str) – The unique provider ID of the resource to lookup.

  • opts (pulumi.ResourceOptions) – Options for the resource.

  • api_mapping_selection_expression (pulumi.Input[str]) –

    The API mapping selection expression for the domain name.

  • arn (pulumi.Input[str]) – The ARN of the domain name.

  • domain_name (pulumi.Input[str]) – The domain name.

  • domain_name_configuration (pulumi.Input[dict]) – The domain name configuration.

  • tags (pulumi.Input[dict]) – A map of tags to assign to the domain name.

The domain_name_configuration object supports the following:

  • certificate_arn (pulumi.Input[str]) - The ARN of an AWS-managed certificate that will be used by the endpoint for the domain name. AWS Certificate Manager is the only supported source. Use the acm.Certificate resource to configure an ACM certificate.

  • endpoint_type (pulumi.Input[str]) - The endpoint type. Valid values: REGIONAL.

  • hosted_zone_id (pulumi.Input[str]) - The Amazon Route 53 Hosted Zone ID of the endpoint.

  • security_policy (pulumi.Input[str]) - The Transport Layer Security (TLS) version of the security policy for the domain name. Valid values: TLS_1_2.

  • targetDomainName (pulumi.Input[str]) - The target domain name.

translate_output_property(prop)

Provides subclasses of Resource an opportunity to translate names of output properties into a format of their choosing before writing those properties to the resource object.

Parameters

prop (str) – A property name.

Returns

A potentially transformed property name.

Return type

str

translate_input_property(prop)

Provides subclasses of Resource an opportunity to translate names of input properties into a format of their choosing before sending those properties to the Pulumi engine.

Parameters

prop (str) – A property name.

Returns

A potentially transformed property name.

Return type

str

class pulumi_aws.apigatewayv2.Integration(resource_name, opts=None, api_id=None, connection_id=None, connection_type=None, content_handling_strategy=None, credentials_arn=None, description=None, integration_method=None, integration_type=None, integration_uri=None, passthrough_behavior=None, payload_format_version=None, request_templates=None, template_selection_expression=None, timeout_milliseconds=None, __props__=None, __name__=None, __opts__=None)

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

import pulumi
import pulumi_aws as aws

example = aws.apigatewayv2.Integration("example",
    api_id=aws_apigatewayv2_api["example"]["id"],
    integration_type="MOCK")
import pulumi
import pulumi_aws as aws

example_function = aws.lambda_.Function("exampleFunction",
    code=pulumi.FileArchive("example.zip"),
    handler="index.handler",
    role=aws_iam_role["example"]["arn"],
    runtime="nodejs10.x")
example_integration = aws.apigatewayv2.Integration("exampleIntegration",
    api_id=aws_apigatewayv2_api["example"]["id"],
    connection_type="INTERNET",
    content_handling_strategy="CONVERT_TO_TEXT",
    description="Lambda example",
    integration_method="POST",
    integration_type="AWS",
    integration_uri=example_function.invoke_arn,
    passthrough_behavior="WHEN_NO_MATCH")
Parameters
  • resource_name (str) – The name of the resource.

  • opts (pulumi.ResourceOptions) – Options for the resource.

  • api_id (pulumi.Input[str]) – The API identifier.

  • connection_id (pulumi.Input[str]) – The ID of the VPC link for a private integration. Supported only for HTTP APIs.

  • connection_type (pulumi.Input[str]) – The type of the network connection to the integration endpoint. Valid values: INTERNET, VPC_LINK. Default is INTERNET.

  • content_handling_strategy (pulumi.Input[str]) – How to handle response payload content type conversions. Valid values: CONVERT_TO_BINARY, CONVERT_TO_TEXT. Supported only for WebSocket APIs.

  • credentials_arn (pulumi.Input[str]) – The credentials required for the integration, if any.

  • description (pulumi.Input[str]) – The description of the integration.

  • integration_method (pulumi.Input[str]) – The integration’s HTTP method. Must be specified if integration_type is not MOCK.

  • integration_type (pulumi.Input[str]) – The integration type of an integration. Valid values: AWS, AWS_PROXY, HTTP, HTTP_PROXY, MOCK.

  • integration_uri (pulumi.Input[str]) – The URI of the Lambda function for a Lambda proxy integration, when integration_type is AWS_PROXY. For an HTTP integration, specify a fully-qualified URL. For an HTTP API private integration, specify the ARN of an Application Load Balancer listener, Network Load Balancer listener, or AWS Cloud Map service.

  • passthrough_behavior (pulumi.Input[str]) – The pass-through behavior for incoming requests based on the Content-Type header in the request, and the available mapping templates specified as the request_templates attribute. Valid values: WHEN_NO_MATCH, WHEN_NO_TEMPLATES, NEVER. Default is WHEN_NO_MATCH. Supported only for WebSocket APIs.

  • payload_format_version (pulumi.Input[str]) – The format of the payload sent to an integration. Valid values: 1.0, 2.0. Default is 1.0.

  • request_templates (pulumi.Input[dict]) – 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.

  • template_selection_expression (pulumi.Input[str]) – The template selection expression for the integration.

  • timeout_milliseconds (pulumi.Input[float]) – Custom timeout between 50 and 29,000 milliseconds. The default value is 29,000 milliseconds or 29 seconds.

api_id: pulumi.Output[str] = None

The API identifier.

connection_id: pulumi.Output[str] = None

The ID of the VPC link for a private integration. Supported only for HTTP APIs.

connection_type: pulumi.Output[str] = None

The type of the network connection to the integration endpoint. Valid values: INTERNET, VPC_LINK. Default is INTERNET.

content_handling_strategy: pulumi.Output[str] = None

How to handle response payload content type conversions. Valid values: CONVERT_TO_BINARY, CONVERT_TO_TEXT. Supported only for WebSocket APIs.

credentials_arn: pulumi.Output[str] = None

The credentials required for the integration, if any.

description: pulumi.Output[str] = None

The description of the integration.

integration_method: pulumi.Output[str] = None

The integration’s HTTP method. Must be specified if integration_type is not MOCK.

integration_response_selection_expression: pulumi.Output[str] = None

The integration response selection expression for the integration.

integration_type: pulumi.Output[str] = None

The integration type of an integration. Valid values: AWS, AWS_PROXY, HTTP, HTTP_PROXY, MOCK.

integration_uri: pulumi.Output[str] = None

The URI of the Lambda function for a Lambda proxy integration, when integration_type is AWS_PROXY. For an HTTP integration, specify a fully-qualified URL. For an HTTP API private integration, specify the ARN of an Application Load Balancer listener, Network Load Balancer listener, or AWS Cloud Map service.

passthrough_behavior: pulumi.Output[str] = None

The pass-through behavior for incoming requests based on the Content-Type header in the request, and the available mapping templates specified as the request_templates attribute. Valid values: WHEN_NO_MATCH, WHEN_NO_TEMPLATES, NEVER. Default is WHEN_NO_MATCH. Supported only for WebSocket APIs.

payload_format_version: pulumi.Output[str] = None

The format of the payload sent to an integration. Valid values: 1.0, 2.0. Default is 1.0.

request_templates: pulumi.Output[dict] = None

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.

template_selection_expression: pulumi.Output[str] = None

The template selection expression for the integration.

timeout_milliseconds: pulumi.Output[float] = None

Custom timeout between 50 and 29,000 milliseconds. The default value is 29,000 milliseconds or 29 seconds.

static get(resource_name, id, opts=None, api_id=None, connection_id=None, connection_type=None, content_handling_strategy=None, credentials_arn=None, description=None, integration_method=None, integration_response_selection_expression=None, integration_type=None, integration_uri=None, passthrough_behavior=None, payload_format_version=None, request_templates=None, template_selection_expression=None, timeout_milliseconds=None)

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

Parameters
  • resource_name (str) – The unique name of the resulting resource.

  • id (str) – The unique provider ID of the resource to lookup.

  • opts (pulumi.ResourceOptions) – Options for the resource.

  • api_id (pulumi.Input[str]) – The API identifier.

  • connection_id (pulumi.Input[str]) – The ID of the VPC link for a private integration. Supported only for HTTP APIs.

  • connection_type (pulumi.Input[str]) – The type of the network connection to the integration endpoint. Valid values: INTERNET, VPC_LINK. Default is INTERNET.

  • content_handling_strategy (pulumi.Input[str]) – How to handle response payload content type conversions. Valid values: CONVERT_TO_BINARY, CONVERT_TO_TEXT. Supported only for WebSocket APIs.

  • credentials_arn (pulumi.Input[str]) – The credentials required for the integration, if any.

  • description (pulumi.Input[str]) – The description of the integration.

  • integration_method (pulumi.Input[str]) – The integration’s HTTP method. Must be specified if integration_type is not MOCK.

  • integration_response_selection_expression (pulumi.Input[str]) –

    The integration response selection expression for the integration.

  • integration_type (pulumi.Input[str]) – The integration type of an integration. Valid values: AWS, AWS_PROXY, HTTP, HTTP_PROXY, MOCK.

  • integration_uri (pulumi.Input[str]) – The URI of the Lambda function for a Lambda proxy integration, when integration_type is AWS_PROXY. For an HTTP integration, specify a fully-qualified URL. For an HTTP API private integration, specify the ARN of an Application Load Balancer listener, Network Load Balancer listener, or AWS Cloud Map service.

  • passthrough_behavior (pulumi.Input[str]) – The pass-through behavior for incoming requests based on the Content-Type header in the request, and the available mapping templates specified as the request_templates attribute. Valid values: WHEN_NO_MATCH, WHEN_NO_TEMPLATES, NEVER. Default is WHEN_NO_MATCH. Supported only for WebSocket APIs.

  • payload_format_version (pulumi.Input[str]) –

    The format of the payload sent to an integration. Valid values: 1.0, 2.0. Default is 1.0.

  • request_templates (pulumi.Input[dict]) – 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.

  • template_selection_expression (pulumi.Input[str]) –

    The template selection expression for the integration.

  • timeout_milliseconds (pulumi.Input[float]) – Custom timeout between 50 and 29,000 milliseconds. The default value is 29,000 milliseconds or 29 seconds.

translate_output_property(prop)

Provides subclasses of Resource an opportunity to translate names of output properties into a format of their choosing before writing those properties to the resource object.

Parameters

prop (str) – A property name.

Returns

A potentially transformed property name.

Return type

str

translate_input_property(prop)

Provides subclasses of Resource an opportunity to translate names of input properties into a format of their choosing before sending those properties to the Pulumi engine.

Parameters

prop (str) – A property name.

Returns

A potentially transformed property name.

Return type

str

class pulumi_aws.apigatewayv2.IntegrationResponse(resource_name, opts=None, api_id=None, content_handling_strategy=None, integration_id=None, integration_response_key=None, response_templates=None, template_selection_expression=None, __props__=None, __name__=None, __opts__=None)

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

import pulumi
import pulumi_aws as aws

example = aws.apigatewayv2.IntegrationResponse("example",
    api_id=aws_apigatewayv2_api["example"]["id"],
    integration_id=aws_apigatewayv2_integration["example"]["id"],
    integration_response_key="/200/")
Parameters
  • resource_name (str) – The name of the resource.

  • opts (pulumi.ResourceOptions) – Options for the resource.

  • api_id (pulumi.Input[str]) – The API identifier.

  • content_handling_strategy (pulumi.Input[str]) – How to handle response payload content type conversions. Valid values: CONVERT_TO_BINARY, CONVERT_TO_TEXT.

  • integration_id (pulumi.Input[str]) – The identifier of the apigatewayv2.Integration.

  • integration_response_key (pulumi.Input[str]) – The integration response key.

  • response_templates (pulumi.Input[dict]) – 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.

  • template_selection_expression (pulumi.Input[str]) –

    The template selection expression for the integration response.

api_id: pulumi.Output[str] = None

The API identifier.

content_handling_strategy: pulumi.Output[str] = None

How to handle response payload content type conversions. Valid values: CONVERT_TO_BINARY, CONVERT_TO_TEXT.

integration_id: pulumi.Output[str] = None

The identifier of the apigatewayv2.Integration.

integration_response_key: pulumi.Output[str] = None

The integration response key.

response_templates: pulumi.Output[dict] = None

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.

template_selection_expression: pulumi.Output[str] = None

The template selection expression for the integration response.

static get(resource_name, id, opts=None, api_id=None, content_handling_strategy=None, integration_id=None, integration_response_key=None, response_templates=None, template_selection_expression=None)

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

Parameters
  • resource_name (str) – The unique name of the resulting resource.

  • id (str) – The unique provider ID of the resource to lookup.

  • opts (pulumi.ResourceOptions) – Options for the resource.

  • api_id (pulumi.Input[str]) – The API identifier.

  • content_handling_strategy (pulumi.Input[str]) – How to handle response payload content type conversions. Valid values: CONVERT_TO_BINARY, CONVERT_TO_TEXT.

  • integration_id (pulumi.Input[str]) – The identifier of the apigatewayv2.Integration.

  • integration_response_key (pulumi.Input[str]) – The integration response key.

  • response_templates (pulumi.Input[dict]) – 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.

  • template_selection_expression (pulumi.Input[str]) –

    The template selection expression for the integration response.

translate_output_property(prop)

Provides subclasses of Resource an opportunity to translate names of output properties into a format of their choosing before writing those properties to the resource object.

Parameters

prop (str) – A property name.

Returns

A potentially transformed property name.

Return type

str

translate_input_property(prop)

Provides subclasses of Resource an opportunity to translate names of input properties into a format of their choosing before sending those properties to the Pulumi engine.

Parameters

prop (str) – A property name.

Returns

A potentially transformed property name.

Return type

str

class pulumi_aws.apigatewayv2.Model(resource_name, opts=None, api_id=None, content_type=None, description=None, name=None, schema=None, __props__=None, __name__=None, __opts__=None)

Manages an Amazon API Gateway Version 2 model.

import pulumi
import pulumi_aws as aws

example = aws.apigatewayv2.Model("example",
    api_id=aws_apigatewayv2_api["example"]["id"],
    content_type="application/json",
    schema="""{
  "$schema": "http://json-schema.org/draft-04/schema#",
  "title": "ExampleModel",
  "type": "object",
  "properties": {
    "id": { "type": "string" }
  }
}

""")
Parameters
  • resource_name (str) – The name of the resource.

  • opts (pulumi.ResourceOptions) – Options for the resource.

  • api_id (pulumi.Input[str]) – The API identifier.

  • content_type (pulumi.Input[str]) – The content-type for the model, for example, application/json.

  • description (pulumi.Input[str]) – The description of the model.

  • name (pulumi.Input[str]) – The name of the model. Must be alphanumeric.

  • schema (pulumi.Input[str]) – The schema for the model. This should be a JSON schema draft 4 model.

api_id: pulumi.Output[str] = None

The API identifier.

content_type: pulumi.Output[str] = None

The content-type for the model, for example, application/json.

description: pulumi.Output[str] = None

The description of the model.

name: pulumi.Output[str] = None

The name of the model. Must be alphanumeric.

schema: pulumi.Output[str] = None

The schema for the model. This should be a JSON schema draft 4 model.

static get(resource_name, id, opts=None, api_id=None, content_type=None, description=None, name=None, schema=None)

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

Parameters
  • resource_name (str) – The unique name of the resulting resource.

  • id (str) – The unique provider ID of the resource to lookup.

  • opts (pulumi.ResourceOptions) – Options for the resource.

  • api_id (pulumi.Input[str]) – The API identifier.

  • content_type (pulumi.Input[str]) – The content-type for the model, for example, application/json.

  • description (pulumi.Input[str]) – The description of the model.

  • name (pulumi.Input[str]) – The name of the model. Must be alphanumeric.

  • schema (pulumi.Input[str]) –

    The schema for the model. This should be a JSON schema draft 4 model.

translate_output_property(prop)

Provides subclasses of Resource an opportunity to translate names of output properties into a format of their choosing before writing those properties to the resource object.

Parameters

prop (str) – A property name.

Returns

A potentially transformed property name.

Return type

str

translate_input_property(prop)

Provides subclasses of Resource an opportunity to translate names of input properties into a format of their choosing before sending those properties to the Pulumi engine.

Parameters

prop (str) – A property name.

Returns

A potentially transformed property name.

Return type

str

class pulumi_aws.apigatewayv2.Route(resource_name, opts=None, api_id=None, api_key_required=None, authorization_scopes=None, authorization_type=None, authorizer_id=None, model_selection_expression=None, operation_name=None, request_models=None, route_key=None, route_response_selection_expression=None, target=None, __props__=None, __name__=None, __opts__=None)

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

import pulumi
import pulumi_aws as aws

example = aws.apigatewayv2.Route("example",
    api_id=aws_apigatewayv2_api["example"]["id"],
    route_key="$default")
Parameters
  • resource_name (str) – The name of the resource.

  • opts (pulumi.ResourceOptions) – Options for the resource.

  • api_id (pulumi.Input[str]) – The API identifier.

  • api_key_required (pulumi.Input[bool]) – Boolean whether an API key is required for the route. Defaults to false.

  • authorization_scopes (pulumi.Input[list]) – The authorization scopes supported by this route. The scopes are used with a JWT authorizer to authorize the method invocation.

  • authorization_type (pulumi.Input[str]) – 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.

  • authorizer_id (pulumi.Input[str]) – The identifier of the apigatewayv2.Authorizer resource to be associated with this route, if the authorizationType is CUSTOM.

  • model_selection_expression (pulumi.Input[str]) – The model selection expression for the route.

  • operation_name (pulumi.Input[str]) – The operation name for the route.

  • request_models (pulumi.Input[dict]) – The request models for the route.

  • route_key (pulumi.Input[str]) – The route key for the route.

  • route_response_selection_expression (pulumi.Input[str]) – The route response selection expression for the route.

  • target (pulumi.Input[str]) – The target for the route.

api_id: pulumi.Output[str] = None

The API identifier.

api_key_required: pulumi.Output[bool] = None

Boolean whether an API key is required for the route. Defaults to false.

authorization_scopes: pulumi.Output[list] = None

The authorization scopes supported by this route. The scopes are used with a JWT authorizer to authorize the method invocation.

authorization_type: pulumi.Output[str] = None

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.

authorizer_id: pulumi.Output[str] = None

The identifier of the apigatewayv2.Authorizer resource to be associated with this route, if the authorizationType is CUSTOM.

model_selection_expression: pulumi.Output[str] = None

The model selection expression for the route.

operation_name: pulumi.Output[str] = None

The operation name for the route.

request_models: pulumi.Output[dict] = None

The request models for the route.

route_key: pulumi.Output[str] = None

The route key for the route.

route_response_selection_expression: pulumi.Output[str] = None

The route response selection expression for the route.

target: pulumi.Output[str] = None

The target for the route.

static get(resource_name, id, opts=None, api_id=None, api_key_required=None, authorization_scopes=None, authorization_type=None, authorizer_id=None, model_selection_expression=None, operation_name=None, request_models=None, route_key=None, route_response_selection_expression=None, target=None)

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

Parameters
  • resource_name (str) – The unique name of the resulting resource.

  • id (str) – The unique provider ID of the resource to lookup.

  • opts (pulumi.ResourceOptions) – Options for the resource.

  • api_id (pulumi.Input[str]) – The API identifier.

  • api_key_required (pulumi.Input[bool]) – Boolean whether an API key is required for the route. Defaults to false.

  • authorization_scopes (pulumi.Input[list]) – The authorization scopes supported by this route. The scopes are used with a JWT authorizer to authorize the method invocation.

  • authorization_type (pulumi.Input[str]) – 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.

  • authorizer_id (pulumi.Input[str]) – The identifier of the apigatewayv2.Authorizer resource to be associated with this route, if the authorizationType is CUSTOM.

  • model_selection_expression (pulumi.Input[str]) –

    The model selection expression for the route.

  • operation_name (pulumi.Input[str]) – The operation name for the route.

  • request_models (pulumi.Input[dict]) – The request models for the route.

  • route_key (pulumi.Input[str]) – The route key for the route.

  • route_response_selection_expression (pulumi.Input[str]) –

    The route response selection expression for the route.

  • target (pulumi.Input[str]) – The target for the route.

translate_output_property(prop)

Provides subclasses of Resource an opportunity to translate names of output properties into a format of their choosing before writing those properties to the resource object.

Parameters

prop (str) – A property name.

Returns

A potentially transformed property name.

Return type

str

translate_input_property(prop)

Provides subclasses of Resource an opportunity to translate names of input properties into a format of their choosing before sending those properties to the Pulumi engine.

Parameters

prop (str) – A property name.

Returns

A potentially transformed property name.

Return type

str

class pulumi_aws.apigatewayv2.RouteResponse(resource_name, opts=None, api_id=None, model_selection_expression=None, response_models=None, route_id=None, route_response_key=None, __props__=None, __name__=None, __opts__=None)

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

import pulumi
import pulumi_aws as aws

example = aws.apigatewayv2.RouteResponse("example",
    api_id=aws_apigatewayv2_api["example"]["id"],
    route_id=aws_apigatewayv2_route["example"]["id"],
    route_response_key="$default")
Parameters
  • resource_name (str) – The name of the resource.

  • opts (pulumi.ResourceOptions) – Options for the resource.

  • api_id (pulumi.Input[str]) – The API identifier.

  • model_selection_expression (pulumi.Input[str]) –

    The model selection expression for the route response.

  • response_models (pulumi.Input[dict]) – The response models for the route response.

  • route_id (pulumi.Input[str]) – The identifier of the apigatewayv2.Route.

  • route_response_key (pulumi.Input[str]) – The route response key.

api_id: pulumi.Output[str] = None

The API identifier.

model_selection_expression: pulumi.Output[str] = None

The model selection expression for the route response.

response_models: pulumi.Output[dict] = None

The response models for the route response.

route_id: pulumi.Output[str] = None

The identifier of the apigatewayv2.Route.

route_response_key: pulumi.Output[str] = None

The route response key.

static get(resource_name, id, opts=None, api_id=None, model_selection_expression=None, response_models=None, route_id=None, route_response_key=None)

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

Parameters
  • resource_name (str) – The unique name of the resulting resource.

  • id (str) – The unique provider ID of the resource to lookup.

  • opts (pulumi.ResourceOptions) – Options for the resource.

  • api_id (pulumi.Input[str]) – The API identifier.

  • model_selection_expression (pulumi.Input[str]) –

    The model selection expression for the route response.

  • response_models (pulumi.Input[dict]) – The response models for the route response.

  • route_id (pulumi.Input[str]) – The identifier of the apigatewayv2.Route.

  • route_response_key (pulumi.Input[str]) – The route response key.

translate_output_property(prop)

Provides subclasses of Resource an opportunity to translate names of output properties into a format of their choosing before writing those properties to the resource object.

Parameters

prop (str) – A property name.

Returns

A potentially transformed property name.

Return type

str

translate_input_property(prop)

Provides subclasses of Resource an opportunity to translate names of input properties into a format of their choosing before sending those properties to the Pulumi engine.

Parameters

prop (str) – A property name.

Returns

A potentially transformed property name.

Return type

str

class pulumi_aws.apigatewayv2.Stage(resource_name, opts=None, access_log_settings=None, api_id=None, auto_deploy=None, client_certificate_id=None, default_route_settings=None, deployment_id=None, description=None, name=None, route_settings=None, stage_variables=None, tags=None, __props__=None, __name__=None, __opts__=None)

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

import pulumi
import pulumi_aws as aws

example = aws.apigatewayv2.Stage("example", api_id=aws_apigatewayv2_api["example"]["id"])
Parameters
  • resource_name (str) – The name of the resource.

  • opts (pulumi.ResourceOptions) – Options for the resource.

  • access_log_settings (pulumi.Input[dict]) – Settings for logging access in this stage. Use the apigateway.Account resource to configure permissions for CloudWatch Logging.

  • api_id (pulumi.Input[str]) – The API identifier.

  • auto_deploy (pulumi.Input[bool]) – Whether updates to an API automatically trigger a new deployment. Defaults to false.

  • client_certificate_id (pulumi.Input[str]) – The identifier of a client certificate for the stage. Use the apigateway.ClientCertificate resource to configure a client certificate. Supported only for WebSocket APIs.

  • default_route_settings (pulumi.Input[dict]) – The default route settings for the stage.

  • deployment_id (pulumi.Input[str]) – The deployment identifier of the stage. Use the apigatewayv2.Deployment resource to configure a deployment.

  • description (pulumi.Input[str]) – The description for the stage.

  • name (pulumi.Input[str]) – The name of the stage.

  • route_settings (pulumi.Input[list]) – Route settings for the stage.

  • stage_variables (pulumi.Input[dict]) – A map that defines the stage variables for the stage.

  • tags (pulumi.Input[dict]) – A map of tags to assign to the stage.

The access_log_settings object supports the following:

  • destination_arn (pulumi.Input[str]) - The ARN of the CloudWatch Logs log group to receive access logs. Any trailing :* is trimmed from the ARN.

  • format (pulumi.Input[str]) - A single line format of the access logs of data, as specified by selected $context variables.

The default_route_settings object supports the following:

  • dataTraceEnabled (pulumi.Input[bool]) - Whether data trace logging is enabled for the default route. Affects the log entries pushed to Amazon CloudWatch Logs. Defaults to false. Supported only for WebSocket APIs.

  • detailedMetricsEnabled (pulumi.Input[bool]) - Whether detailed metrics are enabled for the default route. Defaults to false.

  • loggingLevel (pulumi.Input[str]) - The logging level for the default route. Affects the log entries pushed to Amazon CloudWatch Logs. Valid values: ERROR, INFO, OFF. Defaults to OFF. Supported only for WebSocket APIs.

  • throttlingBurstLimit (pulumi.Input[float]) - The throttling burst limit for the default route.

  • throttlingRateLimit (pulumi.Input[float]) - The throttling rate limit for the default route.

The route_settings object supports the following:

  • dataTraceEnabled (pulumi.Input[bool]) - Whether data trace logging is enabled for the route. Affects the log entries pushed to Amazon CloudWatch Logs. Defaults to false. Supported only for WebSocket APIs.

  • detailedMetricsEnabled (pulumi.Input[bool]) - Whether detailed metrics are enabled for the route. Defaults to false.

  • loggingLevel (pulumi.Input[str]) - The logging level for the route. Affects the log entries pushed to Amazon CloudWatch Logs. Valid values: ERROR, INFO, OFF. Defaults to OFF. Supported only for WebSocket APIs.

  • route_key (pulumi.Input[str]) - Route key.

  • throttlingBurstLimit (pulumi.Input[float]) - The throttling burst limit for the route.

  • throttlingRateLimit (pulumi.Input[float]) - The throttling rate limit for the route.

access_log_settings: pulumi.Output[dict] = None

Settings for logging access in this stage. Use the apigateway.Account resource to configure permissions for CloudWatch Logging.

  • destination_arn (str) - The ARN of the CloudWatch Logs log group to receive access logs. Any trailing :* is trimmed from the ARN.

  • format (str) - A single line format of the access logs of data, as specified by selected $context variables.

api_id: pulumi.Output[str] = None

The API identifier.

arn: pulumi.Output[str] = None

The ARN of the stage.

auto_deploy: pulumi.Output[bool] = None

Whether updates to an API automatically trigger a new deployment. Defaults to false.

client_certificate_id: pulumi.Output[str] = None

The identifier of a client certificate for the stage. Use the apigateway.ClientCertificate resource to configure a client certificate. Supported only for WebSocket APIs.

default_route_settings: pulumi.Output[dict] = None

The default route settings for the stage.

  • dataTraceEnabled (bool) - Whether data trace logging is enabled for the default route. Affects the log entries pushed to Amazon CloudWatch Logs. Defaults to false. Supported only for WebSocket APIs.

  • detailedMetricsEnabled (bool) - Whether detailed metrics are enabled for the default route. Defaults to false.

  • loggingLevel (str) - The logging level for the default route. Affects the log entries pushed to Amazon CloudWatch Logs. Valid values: ERROR, INFO, OFF. Defaults to OFF. Supported only for WebSocket APIs.

  • throttlingBurstLimit (float) - The throttling burst limit for the default route.

  • throttlingRateLimit (float) - The throttling rate limit for the default route.

deployment_id: pulumi.Output[str] = None

The deployment identifier of the stage. Use the apigatewayv2.Deployment resource to configure a deployment.

description: pulumi.Output[str] = None

The description for the stage.

execution_arn: pulumi.Output[str] = None

The ARN prefix to be used in an lambda.Permission’s source_arn attribute or in an iam.Policy to authorize access to the ``@connections` API <https://docs.aws.amazon.com/apigateway/latest/developerguide/apigateway-how-to-call-websocket-api-connections.html>`_. See the Amazon API Gateway Developer Guide for details. Set only for WebSocket APIs.

invoke_url: pulumi.Output[str] = None

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/

name: pulumi.Output[str] = None

The name of the stage.

route_settings: pulumi.Output[list] = None

Route settings for the stage.

  • dataTraceEnabled (bool) - Whether data trace logging is enabled for the route. Affects the log entries pushed to Amazon CloudWatch Logs. Defaults to false. Supported only for WebSocket APIs.

  • detailedMetricsEnabled (bool) - Whether detailed metrics are enabled for the route. Defaults to false.

  • loggingLevel (str) - The logging level for the route. Affects the log entries pushed to Amazon CloudWatch Logs. Valid values: ERROR, INFO, OFF. Defaults to OFF. Supported only for WebSocket APIs.

  • route_key (str) - Route key.

  • throttlingBurstLimit (float) - The throttling burst limit for the route.

  • throttlingRateLimit (float) - The throttling rate limit for the route.

stage_variables: pulumi.Output[dict] = None

A map that defines the stage variables for the stage.

tags: pulumi.Output[dict] = None

A map of tags to assign to the stage.

static get(resource_name, id, opts=None, access_log_settings=None, api_id=None, arn=None, auto_deploy=None, client_certificate_id=None, default_route_settings=None, deployment_id=None, description=None, execution_arn=None, invoke_url=None, name=None, route_settings=None, stage_variables=None, tags=None)

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

Parameters
  • resource_name (str) – The unique name of the resulting resource.

  • id (str) – The unique provider ID of the resource to lookup.

  • opts (pulumi.ResourceOptions) – Options for the resource.

  • access_log_settings (pulumi.Input[dict]) –

    Settings for logging access in this stage. Use the apigateway.Account resource to configure permissions for CloudWatch Logging.

  • api_id (pulumi.Input[str]) – The API identifier.

  • arn (pulumi.Input[str]) – The ARN of the stage.

  • auto_deploy (pulumi.Input[bool]) – Whether updates to an API automatically trigger a new deployment. Defaults to false.

  • client_certificate_id (pulumi.Input[str]) – The identifier of a client certificate for the stage. Use the apigateway.ClientCertificate resource to configure a client certificate. Supported only for WebSocket APIs.

  • default_route_settings (pulumi.Input[dict]) – The default route settings for the stage.

  • deployment_id (pulumi.Input[str]) – The deployment identifier of the stage. Use the apigatewayv2.Deployment resource to configure a deployment.

  • description (pulumi.Input[str]) – The description for the stage.

  • execution_arn (pulumi.Input[str]) –

    The ARN prefix to be used in an lambda.Permission’s source_arn attribute or in an iam.Policy to authorize access to the ``@connections` API <https://docs.aws.amazon.com/apigateway/latest/developerguide/apigateway-how-to-call-websocket-api-connections.html>`_. See the Amazon API Gateway Developer Guide for details. Set only for WebSocket APIs.

  • invoke_url (pulumi.Input[str]) – 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/

  • name (pulumi.Input[str]) – The name of the stage.

  • route_settings (pulumi.Input[list]) – Route settings for the stage.

  • stage_variables (pulumi.Input[dict]) – A map that defines the stage variables for the stage.

  • tags (pulumi.Input[dict]) – A map of tags to assign to the stage.

The access_log_settings object supports the following:

  • destination_arn (pulumi.Input[str]) - The ARN of the CloudWatch Logs log group to receive access logs. Any trailing :* is trimmed from the ARN.

  • format (pulumi.Input[str]) - A single line format of the access logs of data, as specified by selected $context variables.

The default_route_settings object supports the following:

  • dataTraceEnabled (pulumi.Input[bool]) - Whether data trace logging is enabled for the default route. Affects the log entries pushed to Amazon CloudWatch Logs. Defaults to false. Supported only for WebSocket APIs.

  • detailedMetricsEnabled (pulumi.Input[bool]) - Whether detailed metrics are enabled for the default route. Defaults to false.

  • loggingLevel (pulumi.Input[str]) - The logging level for the default route. Affects the log entries pushed to Amazon CloudWatch Logs. Valid values: ERROR, INFO, OFF. Defaults to OFF. Supported only for WebSocket APIs.

  • throttlingBurstLimit (pulumi.Input[float]) - The throttling burst limit for the default route.

  • throttlingRateLimit (pulumi.Input[float]) - The throttling rate limit for the default route.

The route_settings object supports the following:

  • dataTraceEnabled (pulumi.Input[bool]) - Whether data trace logging is enabled for the route. Affects the log entries pushed to Amazon CloudWatch Logs. Defaults to false. Supported only for WebSocket APIs.

  • detailedMetricsEnabled (pulumi.Input[bool]) - Whether detailed metrics are enabled for the route. Defaults to false.

  • loggingLevel (pulumi.Input[str]) - The logging level for the route. Affects the log entries pushed to Amazon CloudWatch Logs. Valid values: ERROR, INFO, OFF. Defaults to OFF. Supported only for WebSocket APIs.

  • route_key (pulumi.Input[str]) - Route key.

  • throttlingBurstLimit (pulumi.Input[float]) - The throttling burst limit for the route.

  • throttlingRateLimit (pulumi.Input[float]) - The throttling rate limit for the route.

translate_output_property(prop)

Provides subclasses of Resource an opportunity to translate names of output properties into a format of their choosing before writing those properties to the resource object.

Parameters

prop (str) – A property name.

Returns

A potentially transformed property name.

Return type

str

translate_input_property(prop)

Provides subclasses of Resource an opportunity to translate names of input properties into a format of their choosing before sending those properties to the Pulumi engine.

Parameters

prop (str) – A property name.

Returns

A potentially transformed property name.

Return type

str

Manages 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 Link resource.

import pulumi
import pulumi_aws as aws

example = aws.apigatewayv2.VpcLink("example",
    security_group_ids=[data["aws_security_group"]["example"]["id"]],
    subnet_ids=data["aws_subnet_ids"]["example"]["ids"],
    tags={
        "Usage": "example",
    })
Parameters
  • resource_name (str) – The name of the resource.

  • opts (pulumi.ResourceOptions) – Options for the resource.

  • name (pulumi.Input[str]) – The name of the VPC Link.

  • security_group_ids (pulumi.Input[list]) – Security group IDs for the VPC Link.

  • subnet_ids (pulumi.Input[list]) – Subnet IDs for the VPC Link.

  • tags (pulumi.Input[dict]) – A map of tags to assign to the VPC Link.

arn: pulumi.Output[str] = None

The VPC Link ARN.

name: pulumi.Output[str] = None

The name of the VPC Link.

security_group_ids: pulumi.Output[list] = None

Security group IDs for the VPC Link.

subnet_ids: pulumi.Output[list] = None

Subnet IDs for the VPC Link.

tags: pulumi.Output[dict] = None

A map of tags to assign to the VPC Link.

static get(resource_name, id, opts=None, arn=None, name=None, security_group_ids=None, subnet_ids=None, tags=None)

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

Parameters
  • resource_name (str) – The unique name of the resulting resource.

  • id (str) – The unique provider ID of the resource to lookup.

  • opts (pulumi.ResourceOptions) – Options for the resource.

  • arn (pulumi.Input[str]) – The VPC Link ARN.

  • name (pulumi.Input[str]) – The name of the VPC Link.

  • security_group_ids (pulumi.Input[list]) – Security group IDs for the VPC Link.

  • subnet_ids (pulumi.Input[list]) – Subnet IDs for the VPC Link.

  • tags (pulumi.Input[dict]) – A map of tags to assign to the VPC Link.

translate_output_property(prop)

Provides subclasses of Resource an opportunity to translate names of output properties into a format of their choosing before writing those properties to the resource object.

Parameters

prop (str) – A property name.

Returns

A potentially transformed property name.

Return type

str

translate_input_property(prop)

Provides subclasses of Resource an opportunity to translate names of input properties into a format of their choosing before sending those properties to the Pulumi engine.

Parameters

prop (str) – A property name.

Returns

A potentially transformed property name.

Return type

str