apigateway

class pulumi_aws.apigateway.Account(resource_name, opts=None, cloudwatch_role_arn=None, __name__=None, __opts__=None)

Provides a settings of an API Gateway Account. Settings is applied region-wide per provider block.

Note: As there is no API method for deleting account settings or resetting it to defaults, destroying this resource will keep your account settings intact
Parameters:
  • resource_name (str) – The name of the resource.
  • opts (pulumi.ResourceOptions) – Options for the resource.
  • cloudwatch_role_arn (pulumi.Input[str]) – The ARN of an IAM role for CloudWatch (to allow logging & monitoring). See more in AWS Docs. Logging & monitoring can be enabled/disabled and otherwise tuned on the API Gateway Stage level.
cloudwatch_role_arn = None

The ARN of an IAM role for CloudWatch (to allow logging & monitoring). See more in AWS Docs. Logging & monitoring can be enabled/disabled and otherwise tuned on the API Gateway Stage level.

throttle_settings = None

Account-Level throttle settings. See exported fields below.

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.apigateway.ApiKey(resource_name, opts=None, description=None, enabled=None, name=None, value=None, __name__=None, __opts__=None)

Provides an API Gateway API Key.

NOTE: Since the API Gateway usage plans feature was launched on August 11, 2016, usage plans are now required to associate an API key with an API stage.
Parameters:
  • resource_name (str) – The name of the resource.
  • opts (pulumi.ResourceOptions) – Options for the resource.
  • description (pulumi.Input[str]) – The API key description. Defaults to “Managed by Terraform”.
  • enabled (pulumi.Input[bool]) – Specifies whether the API key can be used by callers. Defaults to true.
  • name (pulumi.Input[str]) – The name of the API key
  • value (pulumi.Input[str]) – The value of the API key. If not specified, it will be automatically generated by AWS on creation.
created_date = None

The creation date of the API key

description = None

The API key description. Defaults to “Managed by Terraform”.

enabled = None

Specifies whether the API key can be used by callers. Defaults to true.

last_updated_date = None

The last update date of the API key

name = None

The name of the API key

value = None

The value of the API key. If not specified, it will be automatically generated by AWS on creation.

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.apigateway.Authorizer(resource_name, opts=None, authorizer_credentials=None, authorizer_result_ttl_in_seconds=None, authorizer_uri=None, identity_source=None, identity_validation_expression=None, name=None, provider_arns=None, rest_api=None, type=None, __name__=None, __opts__=None)

Provides an API Gateway Authorizer.

Parameters:
  • resource_name (str) – The name of the resource.
  • opts (pulumi.ResourceOptions) – Options for the resource.
  • authorizer_credentials (pulumi.Input[str]) – The credentials required for the authorizer. To specify an IAM Role for API Gateway to assume, use the IAM Role ARN.
  • authorizer_result_ttl_in_seconds (pulumi.Input[float]) – The TTL of cached authorizer results in seconds. Defaults to 300.
  • authorizer_uri (pulumi.Input[str]) – The authorizer’s Uniform Resource Identifier (URI). This must be a well-formed Lambda function URI in the form of arn:aws:apigateway:{region}:lambda:path/{service_api}, e.g. arn:aws:apigateway:us-west-2:lambda:path/2015-03-31/functions/arn:aws:lambda:us-west-2:012345678912:function:my-function/invocations
  • identity_source (pulumi.Input[str]) – The source of the identity in an incoming request. Defaults to method.request.header.Authorization. For REQUEST type, this may be a comma-separated list of values, including headers, query string parameters and stage variables - e.g. "method.request.header.SomeHeaderName,method.request.querystring.SomeQueryStringName,stageVariables.SomeStageVariableName"
  • identity_validation_expression (pulumi.Input[str]) – A validation expression for the incoming identity. For TOKEN type, this value should be a regular expression. The incoming token from the client is matched against this expression, and will proceed if the token matches. If the token doesn’t match, the client receives a 401 Unauthorized response.
  • name (pulumi.Input[str]) – The name of the authorizer
  • provider_arns (pulumi.Input[list]) – A list of the Amazon Cognito user pool ARNs. Each element is of this format: arn:aws:cognito-idp:{region}:{account_id}:userpool/{user_pool_id}.
  • rest_api (pulumi.Input[str]) – The ID of the associated REST API
  • type (pulumi.Input[str]) – The type of the authorizer. Possible values are TOKEN for a Lambda function using a single authorization token submitted in a custom header, REQUEST for a Lambda function using incoming request parameters, or COGNITO_USER_POOLS for using an Amazon Cognito user pool. Defaults to TOKEN.
authorizer_credentials = None

The credentials required for the authorizer. To specify an IAM Role for API Gateway to assume, use the IAM Role ARN.

authorizer_result_ttl_in_seconds = None

The TTL of cached authorizer results in seconds. Defaults to 300.

authorizer_uri = None

The authorizer’s Uniform Resource Identifier (URI). This must be a well-formed Lambda function URI in the form of arn:aws:apigateway:{region}:lambda:path/{service_api}, e.g. arn:aws:apigateway:us-west-2:lambda:path/2015-03-31/functions/arn:aws:lambda:us-west-2:012345678912:function:my-function/invocations

identity_source = None

The source of the identity in an incoming request. Defaults to method.request.header.Authorization. For REQUEST type, this may be a comma-separated list of values, including headers, query string parameters and stage variables - e.g. "method.request.header.SomeHeaderName,method.request.querystring.SomeQueryStringName,stageVariables.SomeStageVariableName"

identity_validation_expression = None

A validation expression for the incoming identity. For TOKEN type, this value should be a regular expression. The incoming token from the client is matched against this expression, and will proceed if the token matches. If the token doesn’t match, the client receives a 401 Unauthorized response.

name = None

The name of the authorizer

provider_arns = None

A list of the Amazon Cognito user pool ARNs. Each element is of this format: arn:aws:cognito-idp:{region}:{account_id}:userpool/{user_pool_id}.

rest_api = None

The ID of the associated REST API

type = None

The type of the authorizer. Possible values are TOKEN for a Lambda function using a single authorization token submitted in a custom header, REQUEST for a Lambda function using incoming request parameters, or COGNITO_USER_POOLS for using an Amazon Cognito user pool. Defaults to TOKEN.

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.apigateway.BasePathMapping(resource_name, opts=None, rest_api=None, base_path=None, domain_name=None, stage_name=None, __name__=None, __opts__=None)

Connects a custom domain name registered via aws_api_gateway_domain_name with a deployed API so that its methods can be called via the custom domain name.

Parameters:
  • resource_name (str) – The name of the resource.
  • opts (pulumi.ResourceOptions) – Options for the resource.
  • rest_api (pulumi.Input[str]) – The id of the API to connect.
  • base_path (pulumi.Input[str]) – Path segment that must be prepended to the path when accessing the API via this mapping. If omitted, the API is exposed at the root of the given domain.
  • domain_name (pulumi.Input[str]) – The already-registered domain name to connect the API to.
  • stage_name (pulumi.Input[str]) – The name of a specific deployment stage to expose at the given path. If omitted, callers may select any stage by including its name as a path element after the base path.
rest_api = None

The id of the API to connect.

base_path = None

Path segment that must be prepended to the path when accessing the API via this mapping. If omitted, the API is exposed at the root of the given domain.

domain_name = None

The already-registered domain name to connect the API to.

stage_name = None

The name of a specific deployment stage to expose at the given path. If omitted, callers may select any stage by including its name as a path element after the base path.

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.apigateway.ClientCertificate(resource_name, opts=None, description=None, __name__=None, __opts__=None)

Provides an API Gateway Client Certificate.

Parameters:
  • resource_name (str) – The name of the resource.
  • opts (pulumi.ResourceOptions) – Options for the resource.
  • description (pulumi.Input[str]) – The description of the client certificate.
created_date = None

The date when the client certificate was created.

description = None

The description of the client certificate.

expiration_date = None

The date when the client certificate will expire.

pem_encoded_certificate = None

The PEM-encoded public key of the client certificate.

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.apigateway.Deployment(resource_name, opts=None, description=None, rest_api=None, stage_description=None, stage_name=None, variables=None, __name__=None, __opts__=None)

Provides an API Gateway Deployment.

Note: Depends on having aws_api_gateway_integration inside your rest api (which in turn depends on aws_api_gateway_method). To avoid race conditions you might need to add an explicit depends_on = ["aws_api_gateway_integration.name"].
Parameters:
  • resource_name (str) – The name of the resource.
  • opts (pulumi.ResourceOptions) – Options for the resource.
  • description (pulumi.Input[str]) – The description of the deployment
  • rest_api (pulumi.Input[str]) – The ID of the associated REST API
  • stage_description (pulumi.Input[str]) – The description of the stage
  • stage_name (pulumi.Input[str]) – The name of the stage. If the specified stage already exists, it will be updated to point to the new deployment. If the stage does not exist, a new one will be created and point to this deployment.
  • variables (pulumi.Input[dict]) – A map that defines variables for the stage
created_date = None

The creation date of the deployment

description = None

The description of the deployment

execution_arn = None

The execution ARN to be used in ``lambda_permission` <https://www.terraform.io/docs/providers/aws/r/lambda_permission.html>`_’s source_arn when allowing API Gateway to invoke a Lambda function, e.g. arn:aws:execute-api:eu-west-2:123456789012:z4675bid1j/prod

invoke_url = None

The URL to invoke the API pointing to the stage, e.g. https://z4675bid1j.execute-api.eu-west-2.amazonaws.com/prod

rest_api = None

The ID of the associated REST API

stage_description = None

The description of the stage

stage_name = None

The name of the stage. If the specified stage already exists, it will be updated to point to the new deployment. If the stage does not exist, a new one will be created and point to this deployment.

variables = None

A map that defines variables for the 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.apigateway.DocumentationPart(resource_name, opts=None, location=None, properties=None, rest_api_id=None, __name__=None, __opts__=None)

Provides a settings of an API Gateway Documentation Part.

Parameters:
  • resource_name (str) – The name of the resource.
  • opts (pulumi.ResourceOptions) – Options for the resource.
  • location (pulumi.Input[dict]) – The location of the targeted API entity of the to-be-created documentation part. See below.
  • properties (pulumi.Input[str]) – A content map of API-specific key-value pairs describing the targeted API entity. The map must be encoded as a JSON string, e.g., “{ “description”: “The API does …” }”. Only Swagger-compliant key-value pairs can be exported and, hence, published.
  • rest_api_id (pulumi.Input[str]) – The ID of the associated Rest API
location = None

The location of the targeted API entity of the to-be-created documentation part. See below.

properties = None

A content map of API-specific key-value pairs describing the targeted API entity. The map must be encoded as a JSON string, e.g., “{ “description”: “The API does …” }”. Only Swagger-compliant key-value pairs can be exported and, hence, published.

rest_api_id = None

The ID of the associated Rest API

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.apigateway.DocumentationVersion(resource_name, opts=None, description=None, rest_api_id=None, version=None, __name__=None, __opts__=None)

Provides a resource to manage an API Gateway Documentation Version.

Parameters:
  • resource_name (str) – The name of the resource.
  • opts (pulumi.ResourceOptions) – Options for the resource.
  • description (pulumi.Input[str]) – The description of the API documentation version.
  • rest_api_id (pulumi.Input[str]) – The ID of the associated Rest API
  • version (pulumi.Input[str]) – The version identifier of the API documentation snapshot.
description = None

The description of the API documentation version.

rest_api_id = None

The ID of the associated Rest API

version = None

The version identifier of the API documentation snapshot.

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.apigateway.DomainName(resource_name, opts=None, certificate_arn=None, certificate_body=None, certificate_chain=None, certificate_name=None, certificate_private_key=None, domain_name=None, endpoint_configuration=None, regional_certificate_arn=None, regional_certificate_name=None, __name__=None, __opts__=None)

Registers a custom domain name for use with AWS API Gateway. Additional information about this functionality can be found in the API Gateway Developer Guide.

This resource just establishes ownership of and the TLS settings for a particular domain name. An API can be attached to a particular path under the registered domain name using the aws_api_gateway_base_path_mapping resource.

API Gateway domains can be defined as either ‘edge-optimized’ or ‘regional’. In an edge-optimized configuration, API Gateway internally creates and manages a CloudFront distribution to route requests on the given hostname. In addition to this resource it’s necessary to create a DNS record corresponding to the given domain name which is an alias (either Route53 alias or traditional CNAME) to the Cloudfront domain name exported in the cloudfront_domain_name attribute.

In a regional configuration, API Gateway does not create a CloudFront distribution to route requests to the API, though a distribution can be created if needed. In either case, it is necessary to create a DNS record corresponding to the given domain name which is an alias (either Route53 alias or traditional CNAME) to the regional domain name exported in the regional_domain_name attribute.

Note: API Gateway requires the use of AWS Certificate Manager (ACM) certificates instead of Identity and Access Management (IAM) certificates in regions that support ACM. Regions that support ACM can be found in the Regions and Endpoints Documentation. To import an existing private key and certificate into ACM or request an ACM certificate, see the ``aws_acm_certificate` resource <https://www.terraform.io/docs/providers/aws/r/acm_certificate.html>`_.

Note: All arguments including the private key will be stored in the raw state as plain-text. Read more about sensitive data in state.

Parameters:
  • resource_name (str) – The name of the resource.
  • opts (pulumi.ResourceOptions) – Options for the resource.
  • certificate_arn (pulumi.Input[str]) – The ARN for an AWS-managed certificate. AWS Certificate Manager is the only supported source. Used when an edge-optimized domain name is desired. Conflicts with certificate_name, certificate_body, certificate_chain, certificate_private_key, regional_certificate_arn, and regional_certificate_name.
  • certificate_body (pulumi.Input[str]) – The certificate issued for the domain name being registered, in PEM format. Only valid for EDGE endpoint configuration type. Conflicts with certificate_arn, regional_certificate_arn, and regional_certificate_name.
  • certificate_chain (pulumi.Input[str]) – The certificate for the CA that issued the certificate, along with any intermediate CA certificates required to create an unbroken chain to a certificate trusted by the intended API clients. Only valid for EDGE endpoint configuration type. Conflicts with certificate_arn, regional_certificate_arn, and regional_certificate_name.
  • certificate_name (pulumi.Input[str]) – The unique name to use when registering this certificate as an IAM server certificate. Conflicts with certificate_arn, regional_certificate_arn, and regional_certificate_name. Required if certificate_arn is not set.
  • certificate_private_key (pulumi.Input[str]) – The private key associated with the domain certificate given in certificate_body. Only valid for EDGE endpoint configuration type. Conflicts with certificate_arn, regional_certificate_arn, and regional_certificate_name.
  • domain_name (pulumi.Input[str]) – The fully-qualified domain name to register
  • endpoint_configuration (pulumi.Input[dict]) – Configuration block defining API endpoint information including type. Defined below.
  • regional_certificate_arn (pulumi.Input[str]) – The ARN for an AWS-managed certificate. AWS Certificate Manager is the only supported source. Used when a regional domain name is desired. Conflicts with certificate_arn, certificate_name, certificate_body, certificate_chain, and certificate_private_key.
  • regional_certificate_name (pulumi.Input[str]) – The user-friendly name of the certificate that will be used by regional endpoint for this domain name. Conflicts with certificate_arn, certificate_name, certificate_body, certificate_chain, and certificate_private_key.
certificate_arn = None

The ARN for an AWS-managed certificate. AWS Certificate Manager is the only supported source. Used when an edge-optimized domain name is desired. Conflicts with certificate_name, certificate_body, certificate_chain, certificate_private_key, regional_certificate_arn, and regional_certificate_name.

certificate_body = None

The certificate issued for the domain name being registered, in PEM format. Only valid for EDGE endpoint configuration type. Conflicts with certificate_arn, regional_certificate_arn, and regional_certificate_name.

certificate_chain = None

The certificate for the CA that issued the certificate, along with any intermediate CA certificates required to create an unbroken chain to a certificate trusted by the intended API clients. Only valid for EDGE endpoint configuration type. Conflicts with certificate_arn, regional_certificate_arn, and regional_certificate_name.

certificate_name = None

The unique name to use when registering this certificate as an IAM server certificate. Conflicts with certificate_arn, regional_certificate_arn, and regional_certificate_name. Required if certificate_arn is not set.

certificate_private_key = None

The private key associated with the domain certificate given in certificate_body. Only valid for EDGE endpoint configuration type. Conflicts with certificate_arn, regional_certificate_arn, and regional_certificate_name.

certificate_upload_date = None

The upload date associated with the domain certificate.

cloudfront_domain_name = None

The hostname created by Cloudfront to represent the distribution that implements this domain name mapping.

cloudfront_zone_id = None

For convenience, the hosted zone ID (Z2FDTNDATAQYW2) that can be used to create a Route53 alias record for the distribution.

domain_name = None

The fully-qualified domain name to register

endpoint_configuration = None

Configuration block defining API endpoint information including type. Defined below.

regional_certificate_arn = None

The ARN for an AWS-managed certificate. AWS Certificate Manager is the only supported source. Used when a regional domain name is desired. Conflicts with certificate_arn, certificate_name, certificate_body, certificate_chain, and certificate_private_key.

regional_certificate_name = None

The user-friendly name of the certificate that will be used by regional endpoint for this domain name. Conflicts with certificate_arn, certificate_name, certificate_body, certificate_chain, and certificate_private_key.

regional_domain_name = None

The hostname for the custom domain’s regional endpoint.

regional_zone_id = None

The hosted zone ID that can be used to create a Route53 alias record for the regional endpoint.

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.apigateway.GetKeyResult(id=None, name=None, value=None)

A collection of values returned by getKey.

id = None

Set to the ID of the API Key.

name = None

Set to the name of the API Key.

value = None

Set to the value of the API Key.

class pulumi_aws.apigateway.GetResourceResult(parent_id=None, path=None, path_part=None, rest_api_id=None, id=None)

A collection of values returned by getResource.

parent_id = None

Set to the ID of the parent Resource.

path_part = None

Set to the path relative to the parent Resource.

id = None

id is the provider-assigned unique ID for this managed resource.

class pulumi_aws.apigateway.GetRestApiResult(name=None, root_resource_id=None, id=None)

A collection of values returned by getRestApi.

root_resource_id = None

Set to the ID of the API Gateway Resource on the found REST API where the route matches ‘/’.

id = None

id is the provider-assigned unique ID for this managed resource.

class pulumi_aws.apigateway.GetVpcLinkResult(id=None, name=None)

A collection of values returned by getVpcLink.

id = None

Set to the ID of the found API Gateway VPC Link.

class pulumi_aws.apigateway.Integration(resource_name, opts=None, cache_key_parameters=None, cache_namespace=None, connection_id=None, connection_type=None, content_handling=None, credentials=None, http_method=None, integration_http_method=None, passthrough_behavior=None, request_parameters=None, request_templates=None, resource_id=None, rest_api=None, timeout_milliseconds=None, type=None, uri=None, __name__=None, __opts__=None)

Provides an HTTP Method Integration for an API Gateway Integration.

Parameters:
  • resource_name (str) – The name of the resource.
  • opts (pulumi.ResourceOptions) – Options for the resource.
  • cache_key_parameters (pulumi.Input[list]) – A list of cache key parameters for the integration.
  • cache_namespace (pulumi.Input[str]) – The integration’s cache namespace.
  • connection_id (pulumi.Input[str]) – The id of the VpcLink used for the integration. Required if connection_type is VPC_LINK
  • connection_type (pulumi.Input[str]) – The integration input’s connectionType. Valid values are INTERNET (default for connections through the public routable internet), and VPC_LINK (for private connections between API Gateway and a network load balancer in a VPC).
  • content_handling (pulumi.Input[str]) – Specifies how to handle request payload content type conversions. Supported values are CONVERT_TO_BINARY and CONVERT_TO_TEXT. If this property is not defined, the request payload will be passed through from the method request to integration request without modification, provided that the passthroughBehaviors is configured to support payload pass-through.
  • credentials (pulumi.Input[str]) – The credentials required for the integration. For AWS integrations, 2 options are available. To specify an IAM Role for Amazon API Gateway to assume, use the role’s ARN. To require that the caller’s identity be passed through from the request, specify the string arn:aws:iam::\*:user/\*.
  • http_method (pulumi.Input[str]) – The HTTP method (GET, POST, PUT, DELETE, HEAD, OPTION, ANY) when calling the associated resource.
  • integration_http_method (pulumi.Input[str]) – The integration HTTP method (GET, POST, PUT, DELETE, HEAD, OPTION) specifying how API Gateway will interact with the back end. Required if type is AWS, AWS_PROXY, HTTP or HTTP_PROXY. Not all methods are compatible with all AWS integrations. e.g. Lambda function can only be invoked via POST.
  • passthrough_behavior (pulumi.Input[str]) – The integration passthrough behavior (WHEN_NO_MATCH, WHEN_NO_TEMPLATES, NEVER). Required if request_templates is used.
  • request_parameters (pulumi.Input[dict]) – A map of request query string parameters and headers that should be passed to the backend responder. For example: request_parameters = { "integration.request.header.X-Some-Other-Header" = "method.request.header.X-Some-Header" }
  • request_templates (pulumi.Input[dict]) – A map of the integration’s request templates.
  • resource_id (pulumi.Input[str]) – The API resource ID.
  • rest_api (pulumi.Input[str]) – The ID of the associated REST API.
  • timeout_milliseconds (pulumi.Input[float]) – Custom timeout between 50 and 29,000 milliseconds. The default value is 29,000 milliseconds.
  • type (pulumi.Input[str]) – The integration input’s type. Valid values are HTTP (for HTTP backends), MOCK (not calling any real backend), AWS (for AWS services), AWS_PROXY (for Lambda proxy integration) and HTTP_PROXY (for HTTP proxy integration). An HTTP or HTTP_PROXY integration with a connection_type of VPC_LINK is referred to as a private integration and uses a VpcLink to connect API Gateway to a network load balancer of a VPC.
  • uri (pulumi.Input[str]) – The input’s URI. Required if type is AWS, AWS_PROXY, HTTP or HTTP_PROXY. For HTTP integrations, the URI must be a fully formed, encoded HTTP(S) URL according to the RFC-3986 specification . For AWS integrations, the URI should be of the form arn:aws:apigateway:{region}:{subdomain.service|service}:{path|action}/{service_api}. region, subdomain and service are used to determine the right endpoint. e.g. arn:aws:apigateway:eu-west-1:lambda:path/2015-03-31/functions/arn:aws:lambda:eu-west-1:012345678901:function:my-func/invocations
cache_key_parameters = None

A list of cache key parameters for the integration.

cache_namespace = None

The integration’s cache namespace.

connection_id = None

The id of the VpcLink used for the integration. Required if connection_type is VPC_LINK

connection_type = None

The integration input’s connectionType. Valid values are INTERNET (default for connections through the public routable internet), and VPC_LINK (for private connections between API Gateway and a network load balancer in a VPC).

content_handling = None

Specifies how to handle request payload content type conversions. Supported values are CONVERT_TO_BINARY and CONVERT_TO_TEXT. If this property is not defined, the request payload will be passed through from the method request to integration request without modification, provided that the passthroughBehaviors is configured to support payload pass-through.

credentials = None

The credentials required for the integration. For AWS integrations, 2 options are available. To specify an IAM Role for Amazon API Gateway to assume, use the role’s ARN. To require that the caller’s identity be passed through from the request, specify the string arn:aws:iam::\*:user/\*.

http_method = None

The HTTP method (GET, POST, PUT, DELETE, HEAD, OPTION, ANY) when calling the associated resource.

integration_http_method = None

The integration HTTP method (GET, POST, PUT, DELETE, HEAD, OPTION) specifying how API Gateway will interact with the back end. Required if type is AWS, AWS_PROXY, HTTP or HTTP_PROXY. Not all methods are compatible with all AWS integrations. e.g. Lambda function can only be invoked via POST.

passthrough_behavior = None

The integration passthrough behavior (WHEN_NO_MATCH, WHEN_NO_TEMPLATES, NEVER). Required if request_templates is used.

request_parameters = None

A map of request query string parameters and headers that should be passed to the backend responder. For example: request_parameters = { "integration.request.header.X-Some-Other-Header" = "method.request.header.X-Some-Header" }

request_templates = None

A map of the integration’s request templates.

resource_id = None

The API resource ID.

rest_api = None

The ID of the associated REST API.

timeout_milliseconds = None

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

type = None

The integration input’s type. Valid values are HTTP (for HTTP backends), MOCK (not calling any real backend), AWS (for AWS services), AWS_PROXY (for Lambda proxy integration) and HTTP_PROXY (for HTTP proxy integration). An HTTP or HTTP_PROXY integration with a connection_type of VPC_LINK is referred to as a private integration and uses a VpcLink to connect API Gateway to a network load balancer of a VPC.

uri = None

The input’s URI. Required if type is AWS, AWS_PROXY, HTTP or HTTP_PROXY. For HTTP integrations, the URI must be a fully formed, encoded HTTP(S) URL according to the RFC-3986 specification . For AWS integrations, the URI should be of the form arn:aws:apigateway:{region}:{subdomain.service|service}:{path|action}/{service_api}. region, subdomain and service are used to determine the right endpoint. e.g. arn:aws:apigateway:eu-west-1:lambda:path/2015-03-31/functions/arn:aws:lambda:eu-west-1:012345678901:function:my-func/invocations

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.apigateway.IntegrationResponse(resource_name, opts=None, content_handling=None, http_method=None, resource_id=None, response_parameters=None, response_templates=None, rest_api=None, selection_pattern=None, status_code=None, __name__=None, __opts__=None)

Provides an HTTP Method Integration Response for an API Gateway Resource.

Note: Depends on having aws_api_gateway_integration inside your rest api. To ensure this you might need to add an explicit depends_on for clean runs.
Parameters:
  • resource_name (str) – The name of the resource.
  • opts (pulumi.ResourceOptions) – Options for the resource.
  • content_handling (pulumi.Input[str]) – Specifies how to handle request payload content type conversions. Supported values are CONVERT_TO_BINARY and CONVERT_TO_TEXT. If this property is not defined, the response payload will be passed through from the integration response to the method response without modification.
  • http_method (pulumi.Input[str]) – The HTTP method (GET, POST, PUT, DELETE, HEAD, OPTIONS, ANY)
  • resource_id (pulumi.Input[str]) – The API resource ID
  • response_parameters (pulumi.Input[dict]) – A map of response parameters that can be read from the backend response. For example: response_parameters = { "method.response.header.X-Some-Header" = "integration.response.header.X-Some-Other-Header" }
  • response_templates (pulumi.Input[dict]) – A map specifying the templates used to transform the integration response body
  • rest_api (pulumi.Input[str]) – The ID of the associated REST API
  • selection_pattern (pulumi.Input[str]) – Specifies the regular expression pattern used to choose an integration response based on the response from the backend. Setting this to - makes the integration the default one. If the backend is an AWS Lambda function, the AWS Lambda function error header is matched. For all other HTTP and AWS backends, the HTTP status code is matched.
  • status_code (pulumi.Input[str]) – The HTTP status code
content_handling = None

Specifies how to handle request payload content type conversions. Supported values are CONVERT_TO_BINARY and CONVERT_TO_TEXT. If this property is not defined, the response payload will be passed through from the integration response to the method response without modification.

http_method = None

The HTTP method (GET, POST, PUT, DELETE, HEAD, OPTIONS, ANY)

resource_id = None

The API resource ID

response_parameters = None

A map of response parameters that can be read from the backend response. For example: response_parameters = { "method.response.header.X-Some-Header" = "integration.response.header.X-Some-Other-Header" }

response_templates = None

A map specifying the templates used to transform the integration response body

rest_api = None

The ID of the associated REST API

selection_pattern = None

Specifies the regular expression pattern used to choose an integration response based on the response from the backend. Setting this to - makes the integration the default one. If the backend is an AWS Lambda function, the AWS Lambda function error header is matched. For all other HTTP and AWS backends, the HTTP status code is matched.

status_code = None

The HTTP status code

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.apigateway.Method(resource_name, opts=None, api_key_required=None, authorization=None, authorization_scopes=None, authorizer_id=None, http_method=None, request_models=None, request_parameters=None, request_validator_id=None, resource_id=None, rest_api=None, __name__=None, __opts__=None)

Provides a HTTP Method for an API Gateway Resource.

Parameters:
  • resource_name (str) – The name of the resource.
  • opts (pulumi.ResourceOptions) – Options for the resource.
  • api_key_required (pulumi.Input[bool]) – Specify if the method requires an API key
  • authorization (pulumi.Input[str]) – The type of authorization used for the method (NONE, CUSTOM, AWS_IAM, COGNITO_USER_POOLS)
  • authorization_scopes (pulumi.Input[list]) – The authorization scopes used when the authorization is COGNITO_USER_POOLS
  • authorizer_id (pulumi.Input[str]) – The authorizer id to be used when the authorization is CUSTOM or COGNITO_USER_POOLS
  • http_method (pulumi.Input[str]) – The HTTP Method (GET, POST, PUT, DELETE, HEAD, OPTIONS, ANY)
  • request_models (pulumi.Input[dict]) – A map of the API models used for the request’s content type where key is the content type (e.g. application/json) and value is either Error, Empty (built-in models) or aws_api_gateway_model’s name.
  • request_parameters (pulumi.Input[dict]) – A map of request query string parameters and headers that should be passed to the integration. For example: request_parameters = {"method.request.header.X-Some-Header" = true "method.request.querystring.some-query-param" = true} would define that the header X-Some-Header and the query string some-query-param must be provided in the request
  • request_validator_id (pulumi.Input[str]) – The ID of a aws_api_gateway_request_validator
  • resource_id (pulumi.Input[str]) – The API resource ID
  • rest_api (pulumi.Input[str]) – The ID of the associated REST API
api_key_required = None

Specify if the method requires an API key

authorization = None

The type of authorization used for the method (NONE, CUSTOM, AWS_IAM, COGNITO_USER_POOLS)

authorization_scopes = None

The authorization scopes used when the authorization is COGNITO_USER_POOLS

authorizer_id = None

The authorizer id to be used when the authorization is CUSTOM or COGNITO_USER_POOLS

http_method = None

The HTTP Method (GET, POST, PUT, DELETE, HEAD, OPTIONS, ANY)

request_models = None

A map of the API models used for the request’s content type where key is the content type (e.g. application/json) and value is either Error, Empty (built-in models) or aws_api_gateway_model’s name.

request_parameters = None

A map of request query string parameters and headers that should be passed to the integration. For example: request_parameters = {"method.request.header.X-Some-Header" = true "method.request.querystring.some-query-param" = true} would define that the header X-Some-Header and the query string some-query-param must be provided in the request

request_validator_id = None

The ID of a aws_api_gateway_request_validator

resource_id = None

The API resource ID

rest_api = None

The ID of the associated REST API

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.apigateway.MethodResponse(resource_name, opts=None, http_method=None, resource_id=None, response_models=None, response_parameters=None, rest_api=None, status_code=None, __name__=None, __opts__=None)

Provides an HTTP Method Response for an API Gateway Resource.

Parameters:
  • resource_name (str) – The name of the resource.
  • opts (pulumi.ResourceOptions) – Options for the resource.
  • http_method (pulumi.Input[str]) – The HTTP Method (GET, POST, PUT, DELETE, HEAD, OPTIONS, ANY)
  • resource_id (pulumi.Input[str]) – The API resource ID
  • response_models (pulumi.Input[dict]) – A map of the API models used for the response’s content type
  • response_parameters (pulumi.Input[dict]) – A map of response parameters that can be sent to the caller. For example: response_parameters = { "method.response.header.X-Some-Header" = true } would define that the header X-Some-Header can be provided on the response.
  • rest_api (pulumi.Input[str]) – The ID of the associated REST API
  • status_code (pulumi.Input[str]) – The HTTP status code
http_method = None

The HTTP Method (GET, POST, PUT, DELETE, HEAD, OPTIONS, ANY)

resource_id = None

The API resource ID

response_models = None

A map of the API models used for the response’s content type

response_parameters = None

A map of response parameters that can be sent to the caller. For example: response_parameters = { "method.response.header.X-Some-Header" = true } would define that the header X-Some-Header can be provided on the response.

rest_api = None

The ID of the associated REST API

status_code = None

The HTTP status code

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.apigateway.MethodSettings(resource_name, opts=None, method_path=None, rest_api=None, settings=None, stage_name=None, __name__=None, __opts__=None)

Provides an API Gateway Method Settings, e.g. logging or monitoring.

Parameters:
  • resource_name (str) – The name of the resource.
  • opts (pulumi.ResourceOptions) – Options for the resource.
  • method_path (pulumi.Input[str]) – Method path defined as {resource_path}/{http_method} for an individual method override, or */* for overriding all methods in the stage.
  • rest_api (pulumi.Input[str]) – The ID of the REST API
  • settings (pulumi.Input[dict]) – The settings block, see below.
  • stage_name (pulumi.Input[str]) – The name of the stage
method_path = None

Method path defined as {resource_path}/{http_method} for an individual method override, or */* for overriding all methods in the stage.

rest_api = None

The ID of the REST API

settings = None

The settings block, see below.

stage_name = None

The name of the 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.apigateway.Model(resource_name, opts=None, content_type=None, description=None, name=None, rest_api=None, schema=None, __name__=None, __opts__=None)

Provides a Model for a API Gateway.

Parameters:
  • resource_name (str) – The name of the resource.
  • opts (pulumi.ResourceOptions) – Options for the resource.
  • content_type (pulumi.Input[str]) – The content type of the model
  • description (pulumi.Input[str]) – The description of the model
  • name (pulumi.Input[str]) – The name of the model
  • rest_api (pulumi.Input[str]) – The ID of the associated REST API
  • schema (pulumi.Input[str]) – The schema of the model in a JSON form
content_type = None

The content type of the model

description = None

The description of the model

name = None

The name of the model

rest_api = None

The ID of the associated REST API

schema = None

The schema of the model in a JSON form

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.apigateway.RequestValidator(resource_name, opts=None, name=None, rest_api=None, validate_request_body=None, validate_request_parameters=None, __name__=None, __opts__=None)

Manages an API Gateway Request Validator.

Parameters:
  • resource_name (str) – The name of the resource.
  • opts (pulumi.ResourceOptions) – Options for the resource.
  • name (pulumi.Input[str]) – The name of the request validator
  • rest_api (pulumi.Input[str]) – The ID of the associated Rest API
  • validate_request_body (pulumi.Input[bool]) – Boolean whether to validate request body. Defaults to false.
  • validate_request_parameters (pulumi.Input[bool]) – Boolean whether to validate request parameters. Defaults to false.
name = None

The name of the request validator

rest_api = None

The ID of the associated Rest API

validate_request_body = None

Boolean whether to validate request body. Defaults to false.

validate_request_parameters = None

Boolean whether to validate request parameters. Defaults to false.

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.apigateway.Resource(resource_name, opts=None, parent_id=None, path_part=None, rest_api=None, __name__=None, __opts__=None)

Provides an API Gateway Resource.

Parameters:
  • resource_name (str) – The name of the resource.
  • opts (pulumi.ResourceOptions) – Options for the resource.
  • parent_id (pulumi.Input[str]) – The ID of the parent API resource
  • path_part (pulumi.Input[str]) – The last path segment of this API resource.
  • rest_api (pulumi.Input[str]) – The ID of the associated REST API
parent_id = None

The ID of the parent API resource

path = None

The complete path for this API resource, including all parent paths.

path_part = None

The last path segment of this API resource.

rest_api = None

The ID of the associated REST API

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.apigateway.Response(resource_name, opts=None, response_parameters=None, response_templates=None, response_type=None, rest_api_id=None, status_code=None, __name__=None, __opts__=None)

Provides an API Gateway Gateway Response for a REST API Gateway.

Parameters:
  • resource_name (str) – The name of the resource.
  • opts (pulumi.ResourceOptions) – Options for the resource.
  • response_parameters (pulumi.Input[dict]) – A map specifying the templates used to transform the response body.
  • response_templates (pulumi.Input[dict]) – A map specifying the parameters (paths, query strings and headers) of the Gateway Response.
  • response_type (pulumi.Input[str]) – The response type of the associated GatewayResponse.
  • rest_api_id (pulumi.Input[str]) – The string identifier of the associated REST API.
  • status_code (pulumi.Input[str]) – The HTTP status code of the Gateway Response.
response_parameters = None

A map specifying the templates used to transform the response body.

response_templates = None

A map specifying the parameters (paths, query strings and headers) of the Gateway Response.

response_type = None

The response type of the associated GatewayResponse.

rest_api_id = None

The string identifier of the associated REST API.

status_code = None

The HTTP status code of the Gateway 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.apigateway.RestApi(resource_name, opts=None, api_key_source=None, binary_media_types=None, body=None, description=None, endpoint_configuration=None, minimum_compression_size=None, name=None, policy=None, __name__=None, __opts__=None)

Provides an API Gateway REST API.

Parameters:
  • resource_name (str) – The name of the resource.
  • opts (pulumi.ResourceOptions) – Options for the resource.
  • api_key_source (pulumi.Input[str]) – The source of the API key for requests. Valid values are HEADER (default) and AUTHORIZER.
  • binary_media_types (pulumi.Input[list]) – The list of binary media types supported by the RestApi. By default, the RestApi supports only UTF-8-encoded text payloads.
  • body (pulumi.Input[str]) – An OpenAPI specification that defines the set of routes and integrations to create as part of the REST API.
  • description (pulumi.Input[str]) – The description of the REST API
  • endpoint_configuration (pulumi.Input[dict]) – Nested argument defining API endpoint configuration including endpoint type. Defined below.
  • minimum_compression_size (pulumi.Input[float]) – Minimum response size to compress for the REST API. Integer between -1 and 10485760 (10MB). Setting a value greater than -1 will enable compression, -1 disables compression (default).
  • name (pulumi.Input[str]) – The name of the REST API
  • policy (pulumi.Input[str]) – JSON formatted policy document that controls access to the API Gateway. For more information about building AWS IAM policy documents with Terraform, see the AWS IAM Policy Document Guide
api_key_source = None

The source of the API key for requests. Valid values are HEADER (default) and AUTHORIZER.

binary_media_types = None

The list of binary media types supported by the RestApi. By default, the RestApi supports only UTF-8-encoded text payloads.

body = None

An OpenAPI specification that defines the set of routes and integrations to create as part of the REST API.

created_date = None

The creation date of the REST API

description = None

The description of the REST API

endpoint_configuration = None

Nested argument defining API endpoint configuration including endpoint type. Defined below.

execution_arn = None

The execution ARN part to be used in ``lambda_permission` <https://www.terraform.io/docs/providers/aws/r/lambda_permission.html>`_’s source_arn when allowing API Gateway to invoke a Lambda function, e.g. arn:aws:execute-api:eu-west-2:123456789012:z4675bid1j, which can be concatenated with allowed stage, method and resource path.

minimum_compression_size = None

Minimum response size to compress for the REST API. Integer between -1 and 10485760 (10MB). Setting a value greater than -1 will enable compression, -1 disables compression (default).

name = None

The name of the REST API

policy = None

JSON formatted policy document that controls access to the API Gateway. For more information about building AWS IAM policy documents with Terraform, see the AWS IAM Policy Document Guide

root_resource_id = None

The resource ID of the REST API’s root

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.apigateway.Stage(resource_name, opts=None, access_log_settings=None, cache_cluster_enabled=None, cache_cluster_size=None, client_certificate_id=None, deployment=None, description=None, documentation_version=None, rest_api=None, stage_name=None, tags=None, variables=None, xray_tracing_enabled=None, __name__=None, __opts__=None)

Provides an API Gateway Stage.

Parameters:
  • resource_name (str) – The name of the resource.
  • opts (pulumi.ResourceOptions) – Options for the resource.
  • access_log_settings (pulumi.Input[dict]) – Enables access logs for the API stage. Detailed below.
  • cache_cluster_enabled (pulumi.Input[bool]) – Specifies whether a cache cluster is enabled for the stage
  • cache_cluster_size (pulumi.Input[str]) – The size of the cache cluster for the stage, if enabled. Allowed values include 0.5, 1.6, 6.1, 13.5, 28.4, 58.2, 118 and 237.
  • client_certificate_id (pulumi.Input[str]) – The identifier of a client certificate for the stage.
  • deployment (pulumi.Input[str]) – The ID of the deployment that the stage points to
  • description (pulumi.Input[str]) – The description of the stage
  • documentation_version (pulumi.Input[str]) – The version of the associated API documentation
  • rest_api (pulumi.Input[str]) – The ID of the associated REST API
  • stage_name (pulumi.Input[str]) – The name of the stage
  • tags (pulumi.Input[dict]) – A mapping of tags to assign to the resource.
  • variables (pulumi.Input[dict]) – A map that defines the stage variables
  • xray_tracing_enabled (pulumi.Input[bool]) – Whether active tracing with X-ray is enabled. Defaults to false.
access_log_settings = None

Enables access logs for the API stage. Detailed below.

cache_cluster_enabled = None

Specifies whether a cache cluster is enabled for the stage

cache_cluster_size = None

The size of the cache cluster for the stage, if enabled. Allowed values include 0.5, 1.6, 6.1, 13.5, 28.4, 58.2, 118 and 237.

client_certificate_id = None

The identifier of a client certificate for the stage.

deployment = None

The ID of the deployment that the stage points to

description = None

The description of the stage

documentation_version = None

The version of the associated API documentation

execution_arn = None

The execution ARN to be used in ``lambda_permission` <https://www.terraform.io/docs/providers/aws/r/lambda_permission.html>`_’s source_arn when allowing API Gateway to invoke a Lambda function, e.g. arn:aws:execute-api:eu-west-2:123456789012:z4675bid1j/prod

invoke_url = None

The URL to invoke the API pointing to the stage, e.g. https://z4675bid1j.execute-api.eu-west-2.amazonaws.com/prod

rest_api = None

The ID of the associated REST API

stage_name = None

The name of the stage

tags = None

A mapping of tags to assign to the resource.

variables = None

A map that defines the stage variables

xray_tracing_enabled = None

Whether active tracing with X-ray is enabled. Defaults to false.

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.apigateway.UsagePlan(resource_name, opts=None, api_stages=None, description=None, name=None, product_code=None, quota_settings=None, throttle_settings=None, __name__=None, __opts__=None)

Provides an API Gateway Usage Plan.

Parameters:
  • resource_name (str) – The name of the resource.
  • opts (pulumi.ResourceOptions) – Options for the resource.
  • api_stages (pulumi.Input[list]) – The associated API stages of the usage plan.
  • description (pulumi.Input[str]) – The description of a usage plan.
  • name (pulumi.Input[str]) – The name of the usage plan.
  • product_code (pulumi.Input[str]) – The AWS Markeplace product identifier to associate with the usage plan as a SaaS product on AWS Marketplace.
  • quota_settings (pulumi.Input[dict]) – The quota settings of the usage plan.
  • throttle_settings (pulumi.Input[dict]) – The throttling limits of the usage plan.
api_stages = None

The associated API stages of the usage plan.

description = None

The description of a usage plan.

name = None

The name of the usage plan.

product_code = None

The AWS Markeplace product identifier to associate with the usage plan as a SaaS product on AWS Marketplace.

quota_settings = None

The quota settings of the usage plan.

throttle_settings = None

The throttling limits of the usage plan.

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.apigateway.UsagePlanKey(resource_name, opts=None, key_id=None, key_type=None, usage_plan_id=None, __name__=None, __opts__=None)

Provides an API Gateway Usage Plan Key.

Parameters:
  • resource_name (str) – The name of the resource.
  • opts (pulumi.ResourceOptions) – Options for the resource.
  • key_id (pulumi.Input[str]) – The identifier of the API key resource.
  • key_type (pulumi.Input[str]) – The type of the API key resource. Currently, the valid key type is API_KEY.
  • usage_plan_id (pulumi.Input[str]) – The Id of the usage plan resource representing to associate the key to.
key_id = None

The identifier of the API key resource.

key_type = None

The type of the API key resource. Currently, the valid key type is API_KEY.

name = None

The name of a usage plan key.

usage_plan_id = None

The Id of the usage plan resource representing to associate the key to.

value = None

The value of a usage plan 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

Provides an API Gateway VPC Link.

Parameters:
  • resource_name (str) – The name of the resource.
  • opts (pulumi.ResourceOptions) – Options for the resource.
  • description (pulumi.Input[str]) – The description of the VPC link.
  • name (pulumi.Input[str]) – The name used to label and identify the VPC link.
  • target_arn (pulumi.Input[str]) – The list of network load balancer arns in the VPC targeted by the VPC link. Currently AWS only supports 1 target.
description = None

The description of the VPC link.

name = None

The name used to label and identify the VPC link.

target_arn = None

The list of network load balancer arns in the VPC targeted by the VPC link. Currently AWS only supports 1 target.

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
pulumi_aws.apigateway.get_key(id=None, opts=None)

Use this data source to get the name and value of a pre-existing API Key, for example to supply credentials for a dependency microservice.

pulumi_aws.apigateway.get_resource(path=None, rest_api_id=None, opts=None)

Use this data source to get the id of a Resource in API Gateway. To fetch the Resource, you must provide the REST API id as well as the full path.

pulumi_aws.apigateway.get_rest_api(name=None, opts=None)

Use this data source to get the id and root_resource_id of a REST API in API Gateway. To fetch the REST API you must provide a name to match against. As there is no unique name constraint on REST APIs this data source will error if there is more than one match.

Use this data source to get the id of a VPC Link in API Gateway. To fetch the VPC Link you must provide a name to match against. As there is no unique name constraint on API Gateway VPC Links this data source will error if there is more than one match.