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.
apigateway¶
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.apigateway.Account(resource_name, opts=None, cloudwatch_role_arn=None, __props__=None, __name__=None, __opts__=None)¶ Provides a settings of an API Gateway Account. Settings is applied region-wide per
providerblock.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
import pulumi import pulumi_aws as aws cloudwatch_role = aws.iam.Role("cloudwatchRole", assume_role_policy="""{ "Version": "2012-10-17", "Statement": [ { "Sid": "", "Effect": "Allow", "Principal": { "Service": "apigateway.amazonaws.com" }, "Action": "sts:AssumeRole" } ] } """) demo = aws.apigateway.Account("demo", cloudwatch_role_arn=cloudwatch_role.arn) cloudwatch_role_policy = aws.iam.RolePolicy("cloudwatchRolePolicy", policy="""{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "logs:CreateLogGroup", "logs:CreateLogStream", "logs:DescribeLogGroups", "logs:DescribeLogStreams", "logs:PutLogEvents", "logs:GetLogEvents", "logs:FilterLogEvents" ], "Resource": "*" } ] } """, role=cloudwatch_role.id)
- 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: pulumi.Output[str] = 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: pulumi.Output[dict] = None¶Account-Level throttle settings. See exported fields below.
burstLimit(float) - The absolute maximum number of times API Gateway allows the API to be called per second (RPS).rate_limit(float) - The number of times API Gateway allows the API to be called per second on average (RPS).
- static
get(resource_name, id, opts=None, cloudwatch_role_arn=None, throttle_settings=None)¶ Get an existing Account 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.
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.
throttle_settings (pulumi.Input[dict]) – Account-Level throttle settings. See exported fields below.
The throttle_settings object supports the following:
burstLimit(pulumi.Input[float]) - The absolute maximum number of times API Gateway allows the API to be called per second (RPS).rate_limit(pulumi.Input[float]) - The number of times API Gateway allows the API to be called per second on average (RPS).
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, tags=None, value=None, __props__=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.
import pulumi import pulumi_aws as aws my_demo_api_key = aws.apigateway.ApiKey("myDemoApiKey")
- 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 Pulumi”.
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
tags (pulumi.Input[dict]) – Key-value map of resource tags
value (pulumi.Input[str]) – The value of the API key. If not specified, it will be automatically generated by AWS on creation.
arn: pulumi.Output[str] = None¶Amazon Resource Name (ARN)
created_date: pulumi.Output[str] = None¶The creation date of the API key
description: pulumi.Output[str] = None¶The API key description. Defaults to “Managed by Pulumi”.
enabled: pulumi.Output[bool] = None¶Specifies whether the API key can be used by callers. Defaults to
true.
last_updated_date: pulumi.Output[str] = None¶The last update date of the API key
name: pulumi.Output[str] = None¶The name of the API key
Key-value map of resource tags
value: pulumi.Output[str] = None¶The value of the API key. If not specified, it will be automatically generated by AWS on creation.
- static
get(resource_name, id, opts=None, arn=None, created_date=None, description=None, enabled=None, last_updated_date=None, name=None, tags=None, value=None)¶ Get an existing ApiKey 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]) – Amazon Resource Name (ARN)
created_date (pulumi.Input[str]) – The creation date of the API key
description (pulumi.Input[str]) – The API key description. Defaults to “Managed by Pulumi”.
enabled (pulumi.Input[bool]) – Specifies whether the API key can be used by callers. Defaults to
true.last_updated_date (pulumi.Input[str]) – The last update date of the API key
name (pulumi.Input[str]) – The name of the API key
tags (pulumi.Input[dict]) – Key-value map of resource tags
value (pulumi.Input[str]) – 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, __props__=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/invocationsidentity_source (pulumi.Input[str]) – The source of the identity in an incoming request. Defaults to
method.request.header.Authorization. ForREQUESTtype, 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
TOKENtype, 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[dict]) – The ID of the associated REST API
type (pulumi.Input[str]) – The type of the authorizer. Possible values are
TOKENfor a Lambda function using a single authorization token submitted in a custom header,REQUESTfor a Lambda function using incoming request parameters, orCOGNITO_USER_POOLSfor using an Amazon Cognito user pool. Defaults toTOKEN.
The credentials required for the authorizer. To specify an IAM Role for API Gateway to assume, use the IAM Role ARN.
The TTL of cached authorizer results in seconds. Defaults to
300.
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.Output[str] = None¶The source of the identity in an incoming request. Defaults to
method.request.header.Authorization. ForREQUESTtype, 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.Output[str] = None¶A validation expression for the incoming identity. For
TOKENtype, 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.Output[str] = None¶The name of the authorizer
provider_arns: pulumi.Output[list] = 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: pulumi.Output[str] = None¶The ID of the associated REST API
type: pulumi.Output[str] = None¶The type of the authorizer. Possible values are
TOKENfor a Lambda function using a single authorization token submitted in a custom header,REQUESTfor a Lambda function using incoming request parameters, orCOGNITO_USER_POOLSfor using an Amazon Cognito user pool. Defaults toTOKEN.
- static
get(resource_name, id, 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)¶ 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.
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/invocationsidentity_source (pulumi.Input[str]) – The source of the identity in an incoming request. Defaults to
method.request.header.Authorization. ForREQUESTtype, 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
TOKENtype, 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[dict]) – The ID of the associated REST API
type (pulumi.Input[str]) – The type of the authorizer. Possible values are
TOKENfor a Lambda function using a single authorization token submitted in a custom header,REQUESTfor a Lambda function using incoming request parameters, orCOGNITO_USER_POOLSfor using an Amazon Cognito user pool. Defaults toTOKEN.
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.AwaitableGetKeyResult(created_date=None, description=None, enabled=None, id=None, last_updated_date=None, name=None, tags=None, value=None)¶
- class
pulumi_aws.apigateway.AwaitableGetResourceResult(id=None, parent_id=None, path=None, path_part=None, rest_api_id=None)¶
- class
pulumi_aws.apigateway.AwaitableGetRestApiResult(api_key_source=None, arn=None, binary_media_types=None, description=None, endpoint_configurations=None, execution_arn=None, id=None, minimum_compression_size=None, name=None, policy=None, root_resource_id=None, tags=None)¶
- class
pulumi_aws.apigateway.AwaitableGetVpcLinkResult(description=None, id=None, name=None, status=None, status_message=None, tags=None, target_arns=None)¶
- class
pulumi_aws.apigateway.BasePathMapping(resource_name, opts=None, base_path=None, domain_name=None, rest_api=None, stage_name=None, __props__=None, __name__=None, __opts__=None)¶ Connects a custom domain name registered via
apigateway.DomainNamewith a deployed API so that its methods can be called via the custom domain name.import pulumi import pulumi_aws as aws example_deployment = aws.apigateway.Deployment("exampleDeployment", rest_api=aws_api_gateway_rest_api["MyDemoAPI"]["id"], stage_name="live") example_domain_name = aws.apigateway.DomainName("exampleDomainName", certificate_body=(lambda path: open(path).read())(f"{path['module']}/example.com/example.crt"), certificate_chain=(lambda path: open(path).read())(f"{path['module']}/example.com/ca.crt"), certificate_name="example-api", certificate_private_key=(lambda path: open(path).read())(f"{path['module']}/example.com/example.key"), domain_name="example.com") test = aws.apigateway.BasePathMapping("test", rest_api=aws_api_gateway_rest_api["MyDemoAPI"]["id"], domain_name=example_domain_name.domain_name, stage_name=example_deployment.stage_name)
- Parameters
resource_name (str) – The name of the resource.
opts (pulumi.ResourceOptions) – Options for the resource.
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.
rest_api (pulumi.Input[dict]) – The id of the API to connect.
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.
base_path: pulumi.Output[str] = 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: pulumi.Output[str] = None¶The already-registered domain name to connect the API to.
rest_api: pulumi.Output[str] = None¶The id of the API to connect.
stage_name: pulumi.Output[str] = 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.
- static
get(resource_name, id, opts=None, base_path=None, domain_name=None, rest_api=None, stage_name=None)¶ Get an existing BasePathMapping 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.
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.
rest_api (pulumi.Input[dict]) – The id of the API to connect.
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.
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, tags=None, __props__=None, __name__=None, __opts__=None)¶ Provides an API Gateway Client Certificate.
import pulumi import pulumi_aws as aws demo = aws.apigateway.ClientCertificate("demo", description="My 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.
tags (pulumi.Input[dict]) – Key-value map of resource tags
arn: pulumi.Output[str] = None¶Amazon Resource Name (ARN)
created_date: pulumi.Output[str] = None¶The date when the client certificate was created.
description: pulumi.Output[str] = None¶The description of the client certificate.
expiration_date: pulumi.Output[str] = None¶The date when the client certificate will expire.
pem_encoded_certificate: pulumi.Output[str] = None¶The PEM-encoded public key of the client certificate.
Key-value map of resource tags
- static
get(resource_name, id, opts=None, arn=None, created_date=None, description=None, expiration_date=None, pem_encoded_certificate=None, tags=None)¶ Get an existing ClientCertificate 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]) – Amazon Resource Name (ARN)
created_date (pulumi.Input[str]) – The date when the client certificate was created.
description (pulumi.Input[str]) – The description of the client certificate.
expiration_date (pulumi.Input[str]) – The date when the client certificate will expire.
pem_encoded_certificate (pulumi.Input[str]) – The PEM-encoded public key of the client certificate.
tags (pulumi.Input[dict]) – Key-value map of resource tags
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, triggers=None, variables=None, __props__=None, __name__=None, __opts__=None)¶ Provides an API Gateway REST Deployment.
Note: This resource depends on having at least one
apigateway.Integrationcreated in the REST API, which itself has other dependencies. To avoid race conditions when all resources are being created together, you need to add implicit resource references via thetriggersargument or explicit resource references using the resource ``dependsOn` meta-argument <https://www.pulumi.com/docs/intro/concepts/programming-model/#dependson>`_.import pulumi import pulumi_aws as aws my_demo_api = aws.apigateway.RestApi("myDemoAPI", description="This is my API for demonstration purposes") my_demo_resource = aws.apigateway.Resource("myDemoResource", rest_api=my_demo_api.id, parent_id=my_demo_api.root_resource_id, path_part="test") my_demo_method = aws.apigateway.Method("myDemoMethod", rest_api=my_demo_api.id, resource_id=my_demo_resource.id, http_method="GET", authorization="NONE") my_demo_integration = aws.apigateway.Integration("myDemoIntegration", rest_api=my_demo_api.id, resource_id=my_demo_resource.id, http_method=my_demo_method.http_method, type="MOCK") my_demo_deployment = aws.apigateway.Deployment("myDemoDeployment", rest_api=my_demo_api.id, stage_name="test", variables={ "answer": "42", })
- 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[dict]) – 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.
triggers (pulumi.Input[dict]) – A map of arbitrary keys and values that, when changed, will trigger a redeployment.
variables (pulumi.Input[dict]) – A map that defines variables for the stage
created_date: pulumi.Output[str] = None¶The creation date of the deployment
description: pulumi.Output[str] = None¶The description of the deployment
execution_arn: pulumi.Output[str] = None¶The execution ARN to be used in
lambda_permissionresource’ssource_arnwhen allowing API Gateway to invoke a Lambda function, e.g.arn:aws:execute-api:eu-west-2:123456789012:z4675bid1j/prod
invoke_url: pulumi.Output[str] = 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: pulumi.Output[str] = None¶The ID of the associated REST API
stage_description: pulumi.Output[str] = None¶The description of the stage
stage_name: pulumi.Output[str] = 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.
triggers: pulumi.Output[dict] = None¶A map of arbitrary keys and values that, when changed, will trigger a redeployment.
variables: pulumi.Output[dict] = None¶A map that defines variables for the stage
- static
get(resource_name, id, opts=None, created_date=None, description=None, execution_arn=None, invoke_url=None, rest_api=None, stage_description=None, stage_name=None, triggers=None, variables=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.
created_date (pulumi.Input[str]) – The creation date of the deployment
description (pulumi.Input[str]) – The description of the deployment
execution_arn (pulumi.Input[str]) – The execution ARN to be used in
lambda_permissionresource’ssource_arnwhen allowing API Gateway to invoke a Lambda function, e.g.arn:aws:execute-api:eu-west-2:123456789012:z4675bid1j/prodinvoke_url (pulumi.Input[str]) – The URL to invoke the API pointing to the stage, e.g.
https://z4675bid1j.execute-api.eu-west-2.amazonaws.com/prodrest_api (pulumi.Input[dict]) – 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.
triggers (pulumi.Input[dict]) – A map of arbitrary keys and values that, when changed, will trigger a redeployment.
variables (pulumi.Input[dict]) – 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, __props__=None, __name__=None, __opts__=None)¶ Provides a settings of an API Gateway Documentation Part.
import pulumi import pulumi_aws as aws example_rest_api = aws.apigateway.RestApi("exampleRestApi") example_documentation_part = aws.apigateway.DocumentationPart("exampleDocumentationPart", location={ "method": "GET", "path": "/example", "type": "METHOD", }, properties="{"description":"Example description"}", rest_api_id=example_rest_api.id)
- 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
The location object supports the following:
method(pulumi.Input[str]) - The HTTP verb of a method. The default value is*for any method.name(pulumi.Input[str]) - The name of the targeted API entity.path(pulumi.Input[str]) - The URL path of the target. The default value is/for the root resource.status_code(pulumi.Input[str]) - The HTTP status code of a response. The default value is*for any status code.type(pulumi.Input[str]) - The type of API entity to which the documentation content applies. e.g.API,METHODorREQUEST_BODY
location: pulumi.Output[dict] = None¶The location of the targeted API entity of the to-be-created documentation part. See below.
method(str) - The HTTP verb of a method. The default value is*for any method.name(str) - The name of the targeted API entity.path(str) - The URL path of the target. The default value is/for the root resource.status_code(str) - The HTTP status code of a response. The default value is*for any status code.type(str) - The type of API entity to which the documentation content applies. e.g.API,METHODorREQUEST_BODY
properties: pulumi.Output[str] = 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: pulumi.Output[str] = None¶The ID of the associated Rest API
- static
get(resource_name, id, opts=None, location=None, properties=None, rest_api_id=None)¶ Get an existing DocumentationPart 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.
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
The location object supports the following:
method(pulumi.Input[str]) - The HTTP verb of a method. The default value is*for any method.name(pulumi.Input[str]) - The name of the targeted API entity.path(pulumi.Input[str]) - The URL path of the target. The default value is/for the root resource.status_code(pulumi.Input[str]) - The HTTP status code of a response. The default value is*for any status code.type(pulumi.Input[str]) - The type of API entity to which the documentation content applies. e.g.API,METHODorREQUEST_BODY
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, __props__=None, __name__=None, __opts__=None)¶ Provides a resource to manage an API Gateway Documentation Version.
import pulumi import pulumi_aws as aws example_rest_api = aws.apigateway.RestApi("exampleRestApi") example_documentation_version = aws.apigateway.DocumentationVersion("exampleDocumentationVersion", description="Example description", rest_api_id=example_rest_api.id, version="example_version") example_documentation_part = aws.apigateway.DocumentationPart("exampleDocumentationPart", location={ "type": "API", }, properties="{"description":"Example"}", rest_api_id=example_rest_api.id)
- 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: pulumi.Output[str] = None¶The description of the API documentation version.
rest_api_id: pulumi.Output[str] = None¶The ID of the associated Rest API
version: pulumi.Output[str] = None¶The version identifier of the API documentation snapshot.
- static
get(resource_name, id, opts=None, description=None, rest_api_id=None, version=None)¶ Get an existing DocumentationVersion 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.
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.
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, security_policy=None, tags=None, __props__=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
apigateway.BasePathMappingresource.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_nameattribute.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_nameattribute.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
acm.Certificateresource.Note: The
apigateway.DomainNameresource expects dependency on theacm.CertificateValidationas only verified certificates can be used. This can be made either explicitly by adding thedepends_on = [aws_acm_certificate_validation.cert]attribute. Or implicitly by referring certificate ARN from the validation resource where it will be available after the resource creation:regional_certificate_arn = aws_acm_certificate_validation.cert.certificate_arn.Note: All arguments including the private key will be stored in the raw state as plain-text.
import pulumi import pulumi_aws as aws example_domain_name = aws.apigateway.DomainName("exampleDomainName", certificate_arn=aws_acm_certificate_validation["example"]["certificate_arn"], domain_name="api.example.com") # Example DNS record using Route53. # Route53 is not specifically required; any DNS host can be used. example_record = aws.route53.Record("exampleRecord", aliases=[{ "evaluateTargetHealth": True, "name": example_domain_name.cloudfront_domain_name, "zone_id": example_domain_name.cloudfront_zone_id, }], name=example_domain_name.domain_name, type="A", zone_id=aws_route53_zone["example"]["id"])
import pulumi import pulumi_aws as aws example_domain_name = aws.apigateway.DomainName("exampleDomainName", certificate_body=(lambda path: open(path).read())(f"{path['module']}/example.com/example.crt"), certificate_chain=(lambda path: open(path).read())(f"{path['module']}/example.com/ca.crt"), certificate_name="example-api", certificate_private_key=(lambda path: open(path).read())(f"{path['module']}/example.com/example.key"), domain_name="api.example.com") # Example DNS record using Route53. # Route53 is not specifically required; any DNS host can be used. example_record = aws.route53.Record("exampleRecord", aliases=[{ "evaluateTargetHealth": True, "name": example_domain_name.cloudfront_domain_name, "zone_id": example_domain_name.cloudfront_zone_id, }], name=example_domain_name.domain_name, type="A", zone_id=aws_route53_zone["example"]["id"]) # See aws_route53_zone for how to create this
import pulumi import pulumi_aws as aws example_domain_name = aws.apigateway.DomainName("exampleDomainName", domain_name="api.example.com", endpoint_configuration={ "types": "REGIONAL", }, regional_certificate_arn=aws_acm_certificate_validation["example"]["certificate_arn"]) # Example DNS record using Route53. # Route53 is not specifically required; any DNS host can be used. example_record = aws.route53.Record("exampleRecord", aliases=[{ "evaluateTargetHealth": True, "name": example_domain_name.regional_domain_name, "zone_id": example_domain_name.regional_zone_id, }], name=example_domain_name.domain_name, type="A", zone_id=aws_route53_zone["example"]["id"])
import pulumi import pulumi_aws as aws example_domain_name = aws.apigateway.DomainName("exampleDomainName", certificate_body=(lambda path: open(path).read())(f"{path['module']}/example.com/example.crt"), certificate_chain=(lambda path: open(path).read())(f"{path['module']}/example.com/ca.crt"), certificate_private_key=(lambda path: open(path).read())(f"{path['module']}/example.com/example.key"), domain_name="api.example.com", endpoint_configuration={ "types": "REGIONAL", }, regional_certificate_name="example-api") # Example DNS record using Route53. # Route53 is not specifically required; any DNS host can be used. example_record = aws.route53.Record("exampleRecord", aliases=[{ "evaluateTargetHealth": True, "name": example_domain_name.regional_domain_name, "zone_id": example_domain_name.regional_zone_id, }], name=example_domain_name.domain_name, type="A", zone_id=aws_route53_zone["example"]["id"])
- 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, andregional_certificate_name.certificate_body (pulumi.Input[str]) – The certificate issued for the domain name being registered, in PEM format. Only valid for
EDGEendpoint configuration type. Conflicts withcertificate_arn,regional_certificate_arn, andregional_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
EDGEendpoint configuration type. Conflicts withcertificate_arn,regional_certificate_arn, andregional_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, andregional_certificate_name. Required ifcertificate_arnis not set.certificate_private_key (pulumi.Input[str]) – The private key associated with the domain certificate given in
certificate_body. Only valid forEDGEendpoint configuration type. Conflicts withcertificate_arn,regional_certificate_arn, andregional_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, andcertificate_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, andcertificate_private_key.security_policy (pulumi.Input[str]) – The Transport Layer Security (TLS) version + cipher suite for this DomainName. The valid values are
TLS_1_0andTLS_1_2. Must be configured to perform drift detection.tags (pulumi.Input[dict]) – Key-value map of resource tags
The endpoint_configuration object supports the following:
types(pulumi.Input[str]) - A list of endpoint types. This resource currently only supports managing a single value. Valid values:EDGEorREGIONAL. If unspecified, defaults toEDGE. Must be declared asREGIONALin non-Commercial partitions. Refer to the documentation for more information on the difference between edge-optimized and regional APIs.
arn: pulumi.Output[str] = None¶Amazon Resource Name (ARN)
certificate_arn: pulumi.Output[str] = 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, andregional_certificate_name.
certificate_body: pulumi.Output[str] = None¶The certificate issued for the domain name being registered, in PEM format. Only valid for
EDGEendpoint configuration type. Conflicts withcertificate_arn,regional_certificate_arn, andregional_certificate_name.
certificate_chain: pulumi.Output[str] = 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
EDGEendpoint configuration type. Conflicts withcertificate_arn,regional_certificate_arn, andregional_certificate_name.
certificate_name: pulumi.Output[str] = None¶The unique name to use when registering this certificate as an IAM server certificate. Conflicts with
certificate_arn,regional_certificate_arn, andregional_certificate_name. Required ifcertificate_arnis not set.
certificate_private_key: pulumi.Output[str] = None¶The private key associated with the domain certificate given in
certificate_body. Only valid forEDGEendpoint configuration type. Conflicts withcertificate_arn,regional_certificate_arn, andregional_certificate_name.
certificate_upload_date: pulumi.Output[str] = None¶The upload date associated with the domain certificate.
cloudfront_domain_name: pulumi.Output[str] = None¶The hostname created by Cloudfront to represent the distribution that implements this domain name mapping.
cloudfront_zone_id: pulumi.Output[str] = None¶For convenience, the hosted zone ID (
Z2FDTNDATAQYW2) that can be used to create a Route53 alias record for the distribution.
domain_name: pulumi.Output[str] = None¶The fully-qualified domain name to register
endpoint_configuration: pulumi.Output[dict] = None¶Configuration block defining API endpoint information including type. Defined below.
types(str) - A list of endpoint types. This resource currently only supports managing a single value. Valid values:EDGEorREGIONAL. If unspecified, defaults toEDGE. Must be declared asREGIONALin non-Commercial partitions. Refer to the documentation for more information on the difference between edge-optimized and regional APIs.
regional_certificate_arn: pulumi.Output[str] = 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, andcertificate_private_key.
regional_certificate_name: pulumi.Output[str] = 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, andcertificate_private_key.
regional_domain_name: pulumi.Output[str] = None¶The hostname for the custom domain’s regional endpoint.
regional_zone_id: pulumi.Output[str] = None¶The hosted zone ID that can be used to create a Route53 alias record for the regional endpoint.
security_policy: pulumi.Output[str] = None¶The Transport Layer Security (TLS) version + cipher suite for this DomainName. The valid values are
TLS_1_0andTLS_1_2. Must be configured to perform drift detection.
Key-value map of resource tags
- static
get(resource_name, id, opts=None, arn=None, certificate_arn=None, certificate_body=None, certificate_chain=None, certificate_name=None, certificate_private_key=None, certificate_upload_date=None, cloudfront_domain_name=None, cloudfront_zone_id=None, domain_name=None, endpoint_configuration=None, regional_certificate_arn=None, regional_certificate_name=None, regional_domain_name=None, regional_zone_id=None, security_policy=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.
arn (pulumi.Input[str]) – Amazon Resource Name (ARN)
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, andregional_certificate_name.certificate_body (pulumi.Input[str]) – The certificate issued for the domain name being registered, in PEM format. Only valid for
EDGEendpoint configuration type. Conflicts withcertificate_arn,regional_certificate_arn, andregional_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
EDGEendpoint configuration type. Conflicts withcertificate_arn,regional_certificate_arn, andregional_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, andregional_certificate_name. Required ifcertificate_arnis not set.certificate_private_key (pulumi.Input[str]) – The private key associated with the domain certificate given in
certificate_body. Only valid forEDGEendpoint configuration type. Conflicts withcertificate_arn,regional_certificate_arn, andregional_certificate_name.certificate_upload_date (pulumi.Input[str]) – The upload date associated with the domain certificate.
cloudfront_domain_name (pulumi.Input[str]) – The hostname created by Cloudfront to represent the distribution that implements this domain name mapping.
cloudfront_zone_id (pulumi.Input[str]) – For convenience, the hosted zone ID (
Z2FDTNDATAQYW2) that can be used to create a Route53 alias record for the distribution.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, andcertificate_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, andcertificate_private_key.regional_domain_name (pulumi.Input[str]) – The hostname for the custom domain’s regional endpoint.
regional_zone_id (pulumi.Input[str]) – The hosted zone ID that can be used to create a Route53 alias record for the regional endpoint.
security_policy (pulumi.Input[str]) – The Transport Layer Security (TLS) version + cipher suite for this DomainName. The valid values are
TLS_1_0andTLS_1_2. Must be configured to perform drift detection.tags (pulumi.Input[dict]) – Key-value map of resource tags
The endpoint_configuration object supports the following:
types(pulumi.Input[str]) - A list of endpoint types. This resource currently only supports managing a single value. Valid values:EDGEorREGIONAL. If unspecified, defaults toEDGE. Must be declared asREGIONALin non-Commercial partitions. Refer to the documentation for more information on the difference between edge-optimized and regional APIs.
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(created_date=None, description=None, enabled=None, id=None, last_updated_date=None, name=None, tags=None, value=None)¶ A collection of values returned by getKey.
created_date= None¶The date and time when the API Key was created.
description= None¶The description of the API Key.
enabled= None¶Specifies whether the API Key is enabled.
id= None¶Set to the ID of the API Key.
last_updated_date= None¶The date and time when the API Key was last updated.
name= None¶Set to the name of the API Key.
A map of tags for the resource.
value= None¶Set to the value of the API Key.
- class
pulumi_aws.apigateway.GetResourceResult(id=None, parent_id=None, path=None, path_part=None, rest_api_id=None)¶ A collection of values returned by getResource.
id= None¶The provider-assigned unique ID for this managed resource.
parent_id= None¶Set to the ID of the parent Resource.
path_part= None¶Set to the path relative to the parent Resource.
- class
pulumi_aws.apigateway.GetRestApiResult(api_key_source=None, arn=None, binary_media_types=None, description=None, endpoint_configurations=None, execution_arn=None, id=None, minimum_compression_size=None, name=None, policy=None, root_resource_id=None, tags=None)¶ A collection of values returned by getRestApi.
api_key_source= None¶The source of the API key for requests.
arn= None¶The ARN of the REST API.
binary_media_types= None¶The list of binary media types supported by the REST API.
description= None¶The description of the REST API.
endpoint_configurations= None¶The endpoint configuration of this RestApi showing the endpoint types of the API.
execution_arn= None¶The execution ARN part to be used in
lambda_permission’ssource_arnwhen 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.
id= None¶The provider-assigned unique ID for this managed resource.
minimum_compression_size= None¶Minimum response size to compress for the REST API.
policy= None¶JSON formatted policy document that controls access to the API Gateway.
root_resource_id= None¶Set to the ID of the API Gateway Resource on the found REST API where the route matches ‘/’.
Key-value map of resource tags.
- class
pulumi_aws.apigateway.GetVpcLinkResult(description=None, id=None, name=None, status=None, status_message=None, tags=None, target_arns=None)¶ A collection of values returned by getVpcLink.
description= None¶The description of the VPC link.
id= None¶Set to the ID of the found API Gateway VPC Link.
status= None¶The status of the VPC link.
status_message= None¶The status message of the VPC link.
Key-value map of resource tags
target_arns= None¶The list of network load balancer arns in the VPC targeted by the VPC link. Currently AWS only supports 1 target.
- 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, __props__=None, __name__=None, __opts__=None)¶ Provides an HTTP Method Integration for an API Gateway Integration.
import pulumi import pulumi_aws as aws my_demo_api = aws.apigateway.RestApi("myDemoAPI", description="This is my API for demonstration purposes") my_demo_resource = aws.apigateway.Resource("myDemoResource", parent_id=my_demo_api.root_resource_id, path_part="mydemoresource", rest_api=my_demo_api.id) my_demo_method = aws.apigateway.Method("myDemoMethod", authorization="NONE", http_method="GET", resource_id=my_demo_resource.id, rest_api=my_demo_api.id) my_demo_integration = aws.apigateway.Integration("myDemoIntegration", cache_key_parameters=["method.request.path.param"], cache_namespace="foobar", http_method=my_demo_method.http_method, request_parameters={ "integration.request.header.X-Authorization": "'static'", }, request_templates={ "application/xml": """{ "body" : $input.json('$') } """, }, resource_id=my_demo_resource.id, rest_api=my_demo_api.id, timeout_milliseconds=29000, type="MOCK")
import pulumi import pulumi_aws as aws config = pulumi.Config() name = config.require_object("name") subnet_id = config.require_object("subnetId") test_load_balancer = aws.lb.LoadBalancer("testLoadBalancer", internal=True, load_balancer_type="network", subnets=[subnet_id]) test_vpc_link = aws.apigateway.VpcLink("testVpcLink", target_arn=test_load_balancer.arn) test_rest_api = aws.apigateway.RestApi("testRestApi") test_resource = aws.apigateway.Resource("testResource", parent_id=test_rest_api.root_resource_id, path_part="test", rest_api=test_rest_api.id) test_method = aws.apigateway.Method("testMethod", authorization="NONE", http_method="GET", request_models={ "application/json": "Error", }, resource_id=test_resource.id, rest_api=test_rest_api.id) test_integration = aws.apigateway.Integration("testIntegration", connection_id=test_vpc_link.id, connection_type="VPC_LINK", content_handling="CONVERT_TO_TEXT", http_method=test_method.http_method, integration_http_method="GET", passthrough_behavior="WHEN_NO_MATCH", request_parameters={ "integration.request.header.X-Authorization": "'static'", "integration.request.header.X-Foo": "'Bar'", }, request_templates={ "application/json": "", "application/xml": """#set($inputRoot = $input.path('$')) { } """, }, resource_id=test_resource.id, rest_api=test_rest_api.id, type="HTTP", uri="https://www.google.de")
- 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_typeisVPC_LINKconnection_type (pulumi.Input[str]) – The integration input’s connectionType. Valid values are
INTERNET(default for connections through the public routable internet), andVPC_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_BINARYandCONVERT_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
AWSintegrations, 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 stringarn: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,OPTIONs,ANY,PATCH) specifying how API Gateway will interact with the back end. Required iftypeisAWS,AWS_PROXY,HTTPorHTTP_PROXY. Not all methods are compatible with allAWSintegrations. e.g. Lambda function can only be invoked viaPOST.passthrough_behavior (pulumi.Input[str]) – The integration passthrough behavior (
WHEN_NO_MATCH,WHEN_NO_TEMPLATES,NEVER). Required ifrequest_templatesis 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[dict]) – 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) andHTTP_PROXY(for HTTP proxy integration). AnHTTPorHTTP_PROXYintegration with aconnection_typeofVPC_LINKis 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
typeisAWS,AWS_PROXY,HTTPorHTTP_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 formarn:aws:apigateway:{region}:{subdomain.service|service}:{path|action}/{service_api}.region,subdomainandserviceare 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. For private integrations, the URI parameter is not used for routing requests to your endpoint, but is used for setting the Host header and for certificate validation.
cache_key_parameters: pulumi.Output[list] = None¶A list of cache key parameters for the integration.
cache_namespace: pulumi.Output[str] = None¶The integration’s cache namespace.
connection_id: pulumi.Output[str] = None¶The id of the VpcLink used for the integration. Required if
connection_typeisVPC_LINK
connection_type: pulumi.Output[str] = None¶The integration input’s connectionType. Valid values are
INTERNET(default for connections through the public routable internet), andVPC_LINK(for private connections between API Gateway and a network load balancer in a VPC).
content_handling: pulumi.Output[str] = None¶Specifies how to handle request payload content type conversions. Supported values are
CONVERT_TO_BINARYandCONVERT_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.Output[str] = None¶The credentials required for the integration. For
AWSintegrations, 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 stringarn:aws:iam::\*:user/\*.
http_method: pulumi.Output[str] = None¶The HTTP method (
GET,POST,PUT,DELETE,HEAD,OPTION,ANY) when calling the associated resource.
integration_http_method: pulumi.Output[str] = None¶The integration HTTP method (
GET,POST,PUT,DELETE,HEAD,OPTIONs,ANY,PATCH) specifying how API Gateway will interact with the back end. Required iftypeisAWS,AWS_PROXY,HTTPorHTTP_PROXY. Not all methods are compatible with allAWSintegrations. e.g. Lambda function can only be invoked viaPOST.
passthrough_behavior: pulumi.Output[str] = None¶The integration passthrough behavior (
WHEN_NO_MATCH,WHEN_NO_TEMPLATES,NEVER). Required ifrequest_templatesis used.
request_parameters: pulumi.Output[dict] = 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: pulumi.Output[dict] = None¶A map of the integration’s request templates.
resource_id: pulumi.Output[str] = None¶The API resource ID.
rest_api: pulumi.Output[str] = None¶The ID of the associated REST API.
timeout_milliseconds: pulumi.Output[float] = None¶Custom timeout between 50 and 29,000 milliseconds. The default value is 29,000 milliseconds.
type: pulumi.Output[str] = 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) andHTTP_PROXY(for HTTP proxy integration). AnHTTPorHTTP_PROXYintegration with aconnection_typeofVPC_LINKis referred to as a private integration and uses a VpcLink to connect API Gateway to a network load balancer of a VPC.
uri: pulumi.Output[str] = None¶The input’s URI. Required if
typeisAWS,AWS_PROXY,HTTPorHTTP_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 formarn:aws:apigateway:{region}:{subdomain.service|service}:{path|action}/{service_api}.region,subdomainandserviceare 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. For private integrations, the URI parameter is not used for routing requests to your endpoint, but is used for setting the Host header and for certificate validation.
- static
get(resource_name, id, 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)¶ 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.
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_typeisVPC_LINKconnection_type (pulumi.Input[str]) –
The integration input’s connectionType. Valid values are
INTERNET(default for connections through the public routable internet), andVPC_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_BINARYandCONVERT_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
AWSintegrations, 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 stringarn: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,OPTIONs,ANY,PATCH) specifying how API Gateway will interact with the back end. Required iftypeisAWS,AWS_PROXY,HTTPorHTTP_PROXY. Not all methods are compatible with allAWSintegrations. e.g. Lambda function can only be invoked viaPOST.passthrough_behavior (pulumi.Input[str]) – The integration passthrough behavior (
WHEN_NO_MATCH,WHEN_NO_TEMPLATES,NEVER). Required ifrequest_templatesis 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[dict]) – 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) andHTTP_PROXY(for HTTP proxy integration). AnHTTPorHTTP_PROXYintegration with aconnection_typeofVPC_LINKis 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
typeisAWS,AWS_PROXY,HTTPorHTTP_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 formarn:aws:apigateway:{region}:{subdomain.service|service}:{path|action}/{service_api}.region,subdomainandserviceare 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. For private integrations, the URI parameter is not used for routing requests to your endpoint, but is used for setting the Host header and for certificate validation.
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, __props__=None, __name__=None, __opts__=None)¶ Provides an HTTP Method Integration Response for an API Gateway Resource.
Note: Depends on having
apigateway.Integrationinside your rest api. To ensure this you might need to add an explicitdepends_onfor clean runs.import pulumi import pulumi_aws as aws my_demo_api = aws.apigateway.RestApi("myDemoAPI", description="This is my API for demonstration purposes") my_demo_resource = aws.apigateway.Resource("myDemoResource", parent_id=my_demo_api.root_resource_id, path_part="mydemoresource", rest_api=my_demo_api.id) my_demo_method = aws.apigateway.Method("myDemoMethod", authorization="NONE", http_method="GET", resource_id=my_demo_resource.id, rest_api=my_demo_api.id) my_demo_integration = aws.apigateway.Integration("myDemoIntegration", http_method=my_demo_method.http_method, resource_id=my_demo_resource.id, rest_api=my_demo_api.id, type="MOCK") response200 = aws.apigateway.MethodResponse("response200", http_method=my_demo_method.http_method, resource_id=my_demo_resource.id, rest_api=my_demo_api.id, status_code="200") my_demo_integration_response = aws.apigateway.IntegrationResponse("myDemoIntegrationResponse", http_method=my_demo_method.http_method, resource_id=my_demo_resource.id, response_templates={ "application/xml": """#set($inputRoot = $input.path('$')) <?xml version="1.0" encoding="UTF-8"?> <message> $inputRoot.body </message> """, }, rest_api=my_demo_api.id, status_code=response200.status_code)
- 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_BINARYandCONVERT_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[dict]) – 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 anAWSLambda function, the AWS Lambda function error header is matched. For all otherHTTPandAWSbackends, the HTTP status code is matched.status_code (pulumi.Input[str]) – The HTTP status code
content_handling: pulumi.Output[str] = None¶Specifies how to handle request payload content type conversions. Supported values are
CONVERT_TO_BINARYandCONVERT_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.Output[str] = None¶The HTTP method (
GET,POST,PUT,DELETE,HEAD,OPTIONS,ANY)
resource_id: pulumi.Output[str] = None¶The API resource ID
response_parameters: pulumi.Output[dict] = 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: pulumi.Output[dict] = None¶A map specifying the templates used to transform the integration response body
rest_api: pulumi.Output[str] = None¶The ID of the associated REST API
selection_pattern: pulumi.Output[str] = 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 anAWSLambda function, the AWS Lambda function error header is matched. For all otherHTTPandAWSbackends, the HTTP status code is matched.
status_code: pulumi.Output[str] = None¶The HTTP status code
- static
get(resource_name, id, 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)¶ 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.
content_handling (pulumi.Input[str]) – Specifies how to handle request payload content type conversions. Supported values are
CONVERT_TO_BINARYandCONVERT_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[dict]) – 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 anAWSLambda function, the AWS Lambda function error header is matched. For all otherHTTPandAWSbackends, the HTTP status code is matched.status_code (pulumi.Input[str]) – 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, __props__=None, __name__=None, __opts__=None)¶ Provides a HTTP Method for an API Gateway Resource.
import pulumi import pulumi_aws as aws my_demo_api = aws.apigateway.RestApi("myDemoAPI", description="This is my API for demonstration purposes") my_demo_resource = aws.apigateway.Resource("myDemoResource", parent_id=my_demo_api.root_resource_id, path_part="mydemoresource", rest_api=my_demo_api.id) my_demo_method = aws.apigateway.Method("myDemoMethod", authorization="NONE", http_method="GET", resource_id=my_demo_resource.id, rest_api=my_demo_api.id)
import pulumi import pulumi_aws as aws config = pulumi.Config() cognito_user_pool_name = config.require_object("cognitoUserPoolName") this_user_pools = aws.cognito.get_user_pools(name=cognito_user_pool_name) this_rest_api = aws.apigateway.RestApi("thisRestApi") this_resource = aws.apigateway.Resource("thisResource", parent_id=this_rest_api.root_resource_id, path_part="{proxy+}", rest_api=this_rest_api.id) this_authorizer = aws.apigateway.Authorizer("thisAuthorizer", provider_arns=this_user_pools.arns, rest_api=this_rest_api.id, type="COGNITO_USER_POOLS") any = aws.apigateway.Method("any", authorization="COGNITO_USER_POOLS", authorizer_id=this_authorizer.id, http_method="ANY", request_parameters={ "method.request.path.proxy": True, }, resource_id=this_resource.id, rest_api=this_rest_api.id)
- 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_POOLSauthorizer_id (pulumi.Input[str]) – The authorizer id to be used when the authorization is
CUSTOMorCOGNITO_USER_POOLShttp_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 eitherError,Empty(built-in models) orapigateway.Model’sname.request_parameters (pulumi.Input[dict]) – A map of request parameters (from the path, query string and headers) that should be passed to the integration. The boolean value indicates whether the parameter is required (
true) or optional (false). For example:request_parameters = {"method.request.header.X-Some-Header" = true "method.request.querystring.some-query-param" = true}would define that the headerX-Some-Headerand the query stringsome-query-parammust be provided in the request.request_validator_id (pulumi.Input[str]) – The ID of a
apigateway.RequestValidatorresource_id (pulumi.Input[str]) – The API resource ID
rest_api (pulumi.Input[dict]) – The ID of the associated REST API
api_key_required: pulumi.Output[bool] = None¶Specify if the method requires an API key
The type of authorization used for the method (
NONE,CUSTOM,AWS_IAM,COGNITO_USER_POOLS)
The authorization scopes used when the authorization is
COGNITO_USER_POOLS
The authorizer id to be used when the authorization is
CUSTOMorCOGNITO_USER_POOLS
http_method: pulumi.Output[str] = None¶The HTTP Method (
GET,POST,PUT,DELETE,HEAD,OPTIONS,ANY)
request_models: pulumi.Output[dict] = 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 eitherError,Empty(built-in models) orapigateway.Model’sname.
request_parameters: pulumi.Output[dict] = None¶A map of request parameters (from the path, query string and headers) that should be passed to the integration. The boolean value indicates whether the parameter is required (
true) or optional (false). For example:request_parameters = {"method.request.header.X-Some-Header" = true "method.request.querystring.some-query-param" = true}would define that the headerX-Some-Headerand the query stringsome-query-parammust be provided in the request.
request_validator_id: pulumi.Output[str] = None¶The ID of a
apigateway.RequestValidator
resource_id: pulumi.Output[str] = None¶The API resource ID
rest_api: pulumi.Output[str] = None¶The ID of the associated REST API
- static
get(resource_name, id, 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)¶ Get an existing Method 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_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_POOLSauthorizer_id (pulumi.Input[str]) – The authorizer id to be used when the authorization is
CUSTOMorCOGNITO_USER_POOLShttp_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 eitherError,Empty(built-in models) orapigateway.Model’sname.request_parameters (pulumi.Input[dict]) – A map of request parameters (from the path, query string and headers) that should be passed to the integration. The boolean value indicates whether the parameter is required (
true) or optional (false). For example:request_parameters = {"method.request.header.X-Some-Header" = true "method.request.querystring.some-query-param" = true}would define that the headerX-Some-Headerand the query stringsome-query-parammust be provided in the request.request_validator_id (pulumi.Input[str]) – The ID of a
apigateway.RequestValidatorresource_id (pulumi.Input[str]) – The API resource ID
rest_api (pulumi.Input[dict]) – 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, __props__=None, __name__=None, __opts__=None)¶ Provides an HTTP Method Response for an API Gateway Resource.
import pulumi import pulumi_aws as aws my_demo_api = aws.apigateway.RestApi("myDemoAPI", description="This is my API for demonstration purposes") my_demo_resource = aws.apigateway.Resource("myDemoResource", parent_id=my_demo_api.root_resource_id, path_part="mydemoresource", rest_api=my_demo_api.id) my_demo_method = aws.apigateway.Method("myDemoMethod", authorization="NONE", http_method="GET", resource_id=my_demo_resource.id, rest_api=my_demo_api.id) my_demo_integration = aws.apigateway.Integration("myDemoIntegration", http_method=my_demo_method.http_method, resource_id=my_demo_resource.id, rest_api=my_demo_api.id, type="MOCK") response200 = aws.apigateway.MethodResponse("response200", http_method=my_demo_method.http_method, resource_id=my_demo_resource.id, rest_api=my_demo_api.id, status_code="200")
- 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 headerX-Some-Headercan be provided on the response.rest_api (pulumi.Input[dict]) – The ID of the associated REST API
status_code (pulumi.Input[str]) – The HTTP status code
http_method: pulumi.Output[str] = None¶The HTTP Method (
GET,POST,PUT,DELETE,HEAD,OPTIONS,ANY)
resource_id: pulumi.Output[str] = None¶The API resource ID
response_models: pulumi.Output[dict] = None¶A map of the API models used for the response’s content type
response_parameters: pulumi.Output[dict] = 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 headerX-Some-Headercan be provided on the response.
rest_api: pulumi.Output[str] = None¶The ID of the associated REST API
status_code: pulumi.Output[str] = None¶The HTTP status code
- static
get(resource_name, id, opts=None, http_method=None, resource_id=None, response_models=None, response_parameters=None, rest_api=None, status_code=None)¶ Get an existing MethodResponse 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.
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 headerX-Some-Headercan be provided on the response.rest_api (pulumi.Input[dict]) – The ID of the associated REST API
status_code (pulumi.Input[str]) – 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, __props__=None, __name__=None, __opts__=None)¶ Provides an API Gateway Method Settings, e.g. logging or monitoring.
import pulumi import pulumi_aws as aws test_rest_api = aws.apigateway.RestApi("testRestApi", description="This is my API for demonstration purposes") test_deployment = aws.apigateway.Deployment("testDeployment", rest_api=test_rest_api.id, stage_name="dev") test_stage = aws.apigateway.Stage("testStage", deployment=test_deployment.id, rest_api=test_rest_api.id, stage_name="prod") test_resource = aws.apigateway.Resource("testResource", parent_id=test_rest_api.root_resource_id, path_part="mytestresource", rest_api=test_rest_api.id) test_method = aws.apigateway.Method("testMethod", authorization="NONE", http_method="GET", resource_id=test_resource.id, rest_api=test_rest_api.id) method_settings = aws.apigateway.MethodSettings("methodSettings", method_path=pulumi.Output.all(test_resource.path_part, test_method.http_method).apply(lambda path_part, http_method: f"{path_part}/{http_method}"), rest_api=test_rest_api.id, settings={ "loggingLevel": "INFO", "metricsEnabled": True, }, stage_name=test_stage.stage_name) test_integration = aws.apigateway.Integration("testIntegration", http_method=test_method.http_method, request_templates={ "application/xml": """{ "body" : $input.json('$') } """, }, resource_id=test_resource.id, rest_api=test_rest_api.id, type="MOCK")
- 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[dict]) – 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
The settings object supports the following:
cacheDataEncrypted(pulumi.Input[bool]) - Specifies whether the cached responses are encrypted.cacheTtlInSeconds(pulumi.Input[float]) - Specifies the time to live (TTL), in seconds, for cached responses. The higher the TTL, the longer the response will be cached.cachingEnabled(pulumi.Input[bool]) - Specifies whether responses should be cached and returned for requests. A cache cluster must be enabled on the stage for responses to be cached.dataTraceEnabled(pulumi.Input[bool]) - Specifies whether data trace logging is enabled for this method, which effects the log entries pushed to Amazon CloudWatch Logs.loggingLevel(pulumi.Input[str]) - Specifies the logging level for this method, which effects the log entries pushed to Amazon CloudWatch Logs. The available levels areOFF,ERROR, andINFO.metricsEnabled(pulumi.Input[bool]) - Specifies whether Amazon CloudWatch metrics are enabled for this method.requireAuthorizationForCacheControl(pulumi.Input[bool]) - Specifies whether authorization is required for a cache invalidation request.throttlingBurstLimit(pulumi.Input[float]) - Specifies the throttling burst limit.throttlingRateLimit(pulumi.Input[float]) - Specifies the throttling rate limit.unauthorizedCacheControlHeaderStrategy(pulumi.Input[str]) - Specifies how to handle unauthorized requests for cache invalidation. The available values areFAIL_WITH_403,SUCCEED_WITH_RESPONSE_HEADER,SUCCEED_WITHOUT_RESPONSE_HEADER.
method_path: pulumi.Output[str] = None¶Method path defined as
{resource_path}/{http_method}for an individual method override, or*/*for overriding all methods in the stage.
rest_api: pulumi.Output[str] = None¶The ID of the REST API
settings: pulumi.Output[dict] = None¶The settings block, see below.
cacheDataEncrypted(bool) - Specifies whether the cached responses are encrypted.cacheTtlInSeconds(float) - Specifies the time to live (TTL), in seconds, for cached responses. The higher the TTL, the longer the response will be cached.cachingEnabled(bool) - Specifies whether responses should be cached and returned for requests. A cache cluster must be enabled on the stage for responses to be cached.dataTraceEnabled(bool) - Specifies whether data trace logging is enabled for this method, which effects the log entries pushed to Amazon CloudWatch Logs.loggingLevel(str) - Specifies the logging level for this method, which effects the log entries pushed to Amazon CloudWatch Logs. The available levels areOFF,ERROR, andINFO.metricsEnabled(bool) - Specifies whether Amazon CloudWatch metrics are enabled for this method.requireAuthorizationForCacheControl(bool) - Specifies whether authorization is required for a cache invalidation request.throttlingBurstLimit(float) - Specifies the throttling burst limit.throttlingRateLimit(float) - Specifies the throttling rate limit.unauthorizedCacheControlHeaderStrategy(str) - Specifies how to handle unauthorized requests for cache invalidation. The available values areFAIL_WITH_403,SUCCEED_WITH_RESPONSE_HEADER,SUCCEED_WITHOUT_RESPONSE_HEADER.
stage_name: pulumi.Output[str] = None¶The name of the stage
- static
get(resource_name, id, opts=None, method_path=None, rest_api=None, settings=None, stage_name=None)¶ Get an existing MethodSettings 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.
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[dict]) – 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
The settings object supports the following:
cacheDataEncrypted(pulumi.Input[bool]) - Specifies whether the cached responses are encrypted.cacheTtlInSeconds(pulumi.Input[float]) - Specifies the time to live (TTL), in seconds, for cached responses. The higher the TTL, the longer the response will be cached.cachingEnabled(pulumi.Input[bool]) - Specifies whether responses should be cached and returned for requests. A cache cluster must be enabled on the stage for responses to be cached.dataTraceEnabled(pulumi.Input[bool]) - Specifies whether data trace logging is enabled for this method, which effects the log entries pushed to Amazon CloudWatch Logs.loggingLevel(pulumi.Input[str]) - Specifies the logging level for this method, which effects the log entries pushed to Amazon CloudWatch Logs. The available levels areOFF,ERROR, andINFO.metricsEnabled(pulumi.Input[bool]) - Specifies whether Amazon CloudWatch metrics are enabled for this method.requireAuthorizationForCacheControl(pulumi.Input[bool]) - Specifies whether authorization is required for a cache invalidation request.throttlingBurstLimit(pulumi.Input[float]) - Specifies the throttling burst limit.throttlingRateLimit(pulumi.Input[float]) - Specifies the throttling rate limit.unauthorizedCacheControlHeaderStrategy(pulumi.Input[str]) - Specifies how to handle unauthorized requests for cache invalidation. The available values areFAIL_WITH_403,SUCCEED_WITH_RESPONSE_HEADER,SUCCEED_WITHOUT_RESPONSE_HEADER.
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, __props__=None, __name__=None, __opts__=None)¶ Provides a Model for a REST API Gateway.
import pulumi import pulumi_aws as aws my_demo_api = aws.apigateway.RestApi("myDemoAPI", description="This is my API for demonstration purposes") my_demo_model = aws.apigateway.Model("myDemoModel", content_type="application/json", description="a JSON schema", rest_api=my_demo_api.id, schema="""{ "type": "object" } """)
- 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[dict]) – The ID of the associated REST API
schema (pulumi.Input[str]) – The schema of the model in a JSON form
content_type: pulumi.Output[str] = None¶The content type of the model
description: pulumi.Output[str] = None¶The description of the model
name: pulumi.Output[str] = None¶The name of the model
rest_api: pulumi.Output[str] = None¶The ID of the associated REST API
schema: pulumi.Output[str] = None¶The schema of the model in a JSON form
- static
get(resource_name, id, opts=None, content_type=None, description=None, name=None, rest_api=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.
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[dict]) – The ID of the associated REST API
schema (pulumi.Input[str]) – 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, __props__=None, __name__=None, __opts__=None)¶ Manages an API Gateway Request Validator.
import pulumi import pulumi_aws as aws example = aws.apigateway.RequestValidator("example", rest_api=aws_api_gateway_rest_api["example"]["id"], validate_request_body=True, validate_request_parameters=True)
- 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[dict]) – 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: pulumi.Output[str] = None¶The name of the request validator
rest_api: pulumi.Output[str] = None¶The ID of the associated Rest API
validate_request_body: pulumi.Output[bool] = None¶Boolean whether to validate request body. Defaults to
false.
validate_request_parameters: pulumi.Output[bool] = None¶Boolean whether to validate request parameters. Defaults to
false.
- static
get(resource_name, id, opts=None, name=None, rest_api=None, validate_request_body=None, validate_request_parameters=None)¶ Get an existing RequestValidator 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.
name (pulumi.Input[str]) – The name of the request validator
rest_api (pulumi.Input[dict]) – 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.
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, __props__=None, __name__=None, __opts__=None)¶ Provides an API Gateway Resource.
import pulumi import pulumi_aws as aws my_demo_api = aws.apigateway.RestApi("myDemoAPI", description="This is my API for demonstration purposes") my_demo_resource = aws.apigateway.Resource("myDemoResource", parent_id=my_demo_api.root_resource_id, path_part="mydemoresource", rest_api=my_demo_api.id)
- 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[dict]) – The ID of the associated REST API
parent_id: pulumi.Output[str] = None¶The ID of the parent API resource
path: pulumi.Output[str] = None¶The complete path for this API resource, including all parent paths.
path_part: pulumi.Output[str] = None¶The last path segment of this API resource.
rest_api: pulumi.Output[str] = None¶The ID of the associated REST API
- static
get(resource_name, id, opts=None, parent_id=None, path=None, path_part=None, rest_api=None)¶ Get an existing Resource 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.
parent_id (pulumi.Input[str]) – The ID of the parent API resource
path (pulumi.Input[str]) – The complete path for this API resource, including all parent paths.
path_part (pulumi.Input[str]) – The last path segment of this API resource.
rest_api (pulumi.Input[dict]) – 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, __props__=None, __name__=None, __opts__=None)¶ Provides an API Gateway Gateway Response for a REST API Gateway.
import pulumi import pulumi_aws as aws main = aws.apigateway.RestApi("main") test = aws.apigateway.Response("test", response_parameters={ "gatewayresponse.header.Authorization": "'Basic'", }, response_templates={ "application/json": "{'message':$context.error.messageString}", }, response_type="UNAUTHORIZED", rest_api_id=main.id, status_code="401")
- 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 parameters (paths, query strings and headers) of the Gateway Response.
response_templates (pulumi.Input[dict]) – A map specifying the templates used to transform the response body.
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: pulumi.Output[dict] = None¶A map specifying the parameters (paths, query strings and headers) of the Gateway Response.
response_templates: pulumi.Output[dict] = None¶A map specifying the templates used to transform the response body.
response_type: pulumi.Output[str] = None¶The response type of the associated GatewayResponse.
rest_api_id: pulumi.Output[str] = None¶The string identifier of the associated REST API.
status_code: pulumi.Output[str] = None¶The HTTP status code of the Gateway Response.
- static
get(resource_name, id, opts=None, response_parameters=None, response_templates=None, response_type=None, rest_api_id=None, status_code=None)¶ Get an existing Response 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.
response_parameters (pulumi.Input[dict]) – A map specifying the parameters (paths, query strings and headers) of the Gateway Response.
response_templates (pulumi.Input[dict]) – A map specifying the templates used to transform the response body.
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.
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, tags=None, __props__=None, __name__=None, __opts__=None)¶ Provides an API Gateway REST API.
Note: Amazon API Gateway Version 1 resources are used for creating and deploying REST APIs. To create and deploy WebSocket and HTTP APIs, use Amazon API Gateway Version 2.
import pulumi import pulumi_aws as aws my_demo_api = aws.apigateway.RestApi("myDemoAPI", description="This is my API for demonstration purposes")
import pulumi import pulumi_aws as aws example = aws.apigateway.RestApi("example", endpoint_configuration={ "types": "REGIONAL", })
- 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.
tags (pulumi.Input[dict]) – Key-value map of resource tags
The endpoint_configuration object supports the following:
types(pulumi.Input[str]) - A list of endpoint types. This resource currently only supports managing a single value. Valid values:EDGE,REGIONALorPRIVATE. If unspecified, defaults toEDGE. Must be declared asREGIONALin non-Commercial partitions. Refer to the documentation for more information on the difference between edge-optimized and regional APIs.vpcEndpointIds(pulumi.Input[list]) - A list of VPC Endpoint Ids. It is only supported for PRIVATE endpoint type.
api_key_source: pulumi.Output[str] = None¶The source of the API key for requests. Valid values are HEADER (default) and AUTHORIZER.
arn: pulumi.Output[str] = None¶Amazon Resource Name (ARN)
binary_media_types: pulumi.Output[list] = None¶The list of binary media types supported by the RestApi. By default, the RestApi supports only UTF-8-encoded text payloads.
body: pulumi.Output[str] = None¶An OpenAPI specification that defines the set of routes and integrations to create as part of the REST API.
created_date: pulumi.Output[str] = None¶The creation date of the REST API
description: pulumi.Output[str] = None¶The description of the REST API
endpoint_configuration: pulumi.Output[dict] = None¶Nested argument defining API endpoint configuration including endpoint type. Defined below.
types(str) - A list of endpoint types. This resource currently only supports managing a single value. Valid values:EDGE,REGIONALorPRIVATE. If unspecified, defaults toEDGE. Must be declared asREGIONALin non-Commercial partitions. Refer to the documentation for more information on the difference between edge-optimized and regional APIs.vpcEndpointIds(list) - A list of VPC Endpoint Ids. It is only supported for PRIVATE endpoint type.
execution_arn: pulumi.Output[str] = None¶The execution ARN part to be used in
lambda_permission’ssource_arnwhen 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: pulumi.Output[float] = 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: pulumi.Output[str] = None¶The name of the REST API
policy: pulumi.Output[str] = None¶JSON formatted policy document that controls access to the API Gateway.
root_resource_id: pulumi.Output[str] = None¶The resource ID of the REST API’s root
Key-value map of resource tags
- static
get(resource_name, id, opts=None, api_key_source=None, arn=None, binary_media_types=None, body=None, created_date=None, description=None, endpoint_configuration=None, execution_arn=None, minimum_compression_size=None, name=None, policy=None, root_resource_id=None, tags=None)¶ Get an existing RestApi 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_key_source (pulumi.Input[str]) – The source of the API key for requests. Valid values are HEADER (default) and AUTHORIZER.
arn (pulumi.Input[str]) – Amazon Resource Name (ARN)
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.
created_date (pulumi.Input[str]) – The creation date 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.
execution_arn (pulumi.Input[str]) – The execution ARN part to be used in
lambda_permission’ssource_arnwhen 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 (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.
root_resource_id (pulumi.Input[str]) – The resource ID of the REST API’s root
tags (pulumi.Input[dict]) – Key-value map of resource tags
The endpoint_configuration object supports the following:
types(pulumi.Input[str]) - A list of endpoint types. This resource currently only supports managing a single value. Valid values:EDGE,REGIONALorPRIVATE. If unspecified, defaults toEDGE. Must be declared asREGIONALin non-Commercial partitions. Refer to the documentation for more information on the difference between edge-optimized and regional APIs.vpcEndpointIds(pulumi.Input[list]) - A list of VPC Endpoint Ids. It is only supported for PRIVATE endpoint type.
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, __props__=None, __name__=None, __opts__=None)¶ Provides an API Gateway Stage.
import pulumi import pulumi_aws as aws test_rest_api = aws.apigateway.RestApi("testRestApi", description="This is my API for demonstration purposes") test_deployment = aws.apigateway.Deployment("testDeployment", rest_api=test_rest_api.id, stage_name="dev") test_stage = aws.apigateway.Stage("testStage", deployment=test_deployment.id, rest_api=test_rest_api.id, stage_name="prod") test_resource = aws.apigateway.Resource("testResource", parent_id=test_rest_api.root_resource_id, path_part="mytestresource", rest_api=test_rest_api.id) test_method = aws.apigateway.Method("testMethod", authorization="NONE", http_method="GET", resource_id=test_resource.id, rest_api=test_rest_api.id) method_settings = aws.apigateway.MethodSettings("methodSettings", method_path=pulumi.Output.all(test_resource.path_part, test_method.http_method).apply(lambda path_part, http_method: f"{path_part}/{http_method}"), rest_api=test_rest_api.id, settings={ "loggingLevel": "INFO", "metricsEnabled": True, }, stage_name=test_stage.stage_name) test_integration = aws.apigateway.Integration("testIntegration", http_method=test_method.http_method, resource_id=test_resource.id, rest_api=test_rest_api.id, type="MOCK")
import pulumi import pulumi_aws as aws config = pulumi.Config() stage_name = config.get("stageName") if stage_name is None: stage_name = "example" example_rest_api = aws.apigateway.RestApi("exampleRestApi") example_stage = aws.apigateway.Stage("exampleStage", name=stage_name) example_log_group = aws.cloudwatch.LogGroup("exampleLogGroup", retention_in_days=7)
- 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,118and237.client_certificate_id (pulumi.Input[str]) – The identifier of a client certificate for the stage.
deployment (pulumi.Input[dict]) – 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[dict]) – The ID of the associated REST API
stage_name (pulumi.Input[str]) – The name of the stage
tags (pulumi.Input[dict]) – A map 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.
The access_log_settings object supports the following:
destination_arn(pulumi.Input[str]) - The Amazon Resource Name (ARN) of the CloudWatch Logs log group or Kinesis Data Firehose delivery stream to receive access logs. If you specify a Kinesis Data Firehose delivery stream, the stream name must begin withamazon-apigateway-. Automatically removes trailing:*if present.format(pulumi.Input[str]) - The formatting and values recorded in the logs. For more information on configuring the log format rules visit the AWS documentation
access_log_settings: pulumi.Output[dict] = None¶Enables access logs for the API stage. Detailed below.
destination_arn(str) - The Amazon Resource Name (ARN) of the CloudWatch Logs log group or Kinesis Data Firehose delivery stream to receive access logs. If you specify a Kinesis Data Firehose delivery stream, the stream name must begin withamazon-apigateway-. Automatically removes trailing:*if present.format(str) - The formatting and values recorded in the logs. For more information on configuring the log format rules visit the AWS documentation
arn: pulumi.Output[str] = None¶Amazon Resource Name (ARN)
cache_cluster_enabled: pulumi.Output[bool] = None¶Specifies whether a cache cluster is enabled for the stage
cache_cluster_size: pulumi.Output[str] = 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,118and237.
client_certificate_id: pulumi.Output[str] = None¶The identifier of a client certificate for the stage.
deployment: pulumi.Output[str] = None¶The ID of the deployment that the stage points to
description: pulumi.Output[str] = None¶The description of the stage
documentation_version: pulumi.Output[str] = None¶The version of the associated API documentation
execution_arn: pulumi.Output[str] = None¶The execution ARN to be used in
lambda_permission’ssource_arnwhen allowing API Gateway to invoke a Lambda function, e.g.arn:aws:execute-api:eu-west-2:123456789012:z4675bid1j/prod
invoke_url: pulumi.Output[str] = 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: pulumi.Output[str] = None¶The ID of the associated REST API
stage_name: pulumi.Output[str] = None¶The name of the stage
A map of tags to assign to the resource.
variables: pulumi.Output[dict] = None¶A map that defines the stage variables
xray_tracing_enabled: pulumi.Output[bool] = None¶Whether active tracing with X-ray is enabled. Defaults to
false.
- static
get(resource_name, id, opts=None, access_log_settings=None, arn=None, cache_cluster_enabled=None, cache_cluster_size=None, client_certificate_id=None, deployment=None, description=None, documentation_version=None, execution_arn=None, invoke_url=None, rest_api=None, stage_name=None, tags=None, variables=None, xray_tracing_enabled=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]) – Enables access logs for the API stage. Detailed below.
arn (pulumi.Input[str]) – Amazon Resource Name (ARN)
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,118and237.client_certificate_id (pulumi.Input[str]) – The identifier of a client certificate for the stage.
deployment (pulumi.Input[dict]) – 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
execution_arn (pulumi.Input[str]) – The execution ARN to be used in
lambda_permission’ssource_arnwhen allowing API Gateway to invoke a Lambda function, e.g.arn:aws:execute-api:eu-west-2:123456789012:z4675bid1j/prodinvoke_url (pulumi.Input[str]) – The URL to invoke the API pointing to the stage, e.g.
https://z4675bid1j.execute-api.eu-west-2.amazonaws.com/prodrest_api (pulumi.Input[dict]) – The ID of the associated REST API
stage_name (pulumi.Input[str]) – The name of the stage
tags (pulumi.Input[dict]) – A map 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.
The access_log_settings object supports the following:
destination_arn(pulumi.Input[str]) - The Amazon Resource Name (ARN) of the CloudWatch Logs log group or Kinesis Data Firehose delivery stream to receive access logs. If you specify a Kinesis Data Firehose delivery stream, the stream name must begin withamazon-apigateway-. Automatically removes trailing:*if present.format(pulumi.Input[str]) - The formatting and values recorded in the logs. For more information on configuring the log format rules visit the AWS documentation
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, tags=None, throttle_settings=None, __props__=None, __name__=None, __opts__=None)¶ Provides an API Gateway Usage Plan.
import pulumi import pulumi_aws as aws myapi = aws.apigateway.RestApi("myapi") dev = aws.apigateway.Deployment("dev", rest_api=myapi.id, stage_name="dev") prod = aws.apigateway.Deployment("prod", rest_api=myapi.id, stage_name="prod") my_usage_plan = aws.apigateway.UsagePlan("myUsagePlan", api_stages=[ { "api_id": myapi.id, "stage": dev.stage_name, }, { "api_id": myapi.id, "stage": prod.stage_name, }, ], description="my description", product_code="MYCODE", quota_settings={ "limit": 20, "offset": 2, "period": "WEEK", }, throttle_settings={ "burstLimit": 5, "rate_limit": 10, })
- 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.
tags (pulumi.Input[dict]) – Key-value map of resource tags
throttle_settings (pulumi.Input[dict]) – The throttling limits of the usage plan.
The api_stages object supports the following:
api_id(pulumi.Input[str]) - API Id of the associated API stage in a usage plan.stage(pulumi.Input[str]) - API stage name of the associated API stage in a usage plan.
The quota_settings object supports the following:
limit(pulumi.Input[float]) - The maximum number of requests that can be made in a given time period.offset(pulumi.Input[float]) - The number of requests subtracted from the given limit in the initial time period.period(pulumi.Input[str]) - The time period in which the limit applies. Valid values are “DAY”, “WEEK” or “MONTH”.
The throttle_settings object supports the following:
burstLimit(pulumi.Input[float]) - The API request burst limit, the maximum rate limit over a time ranging from one to a few seconds, depending upon whether the underlying token bucket is at its full capacity.rate_limit(pulumi.Input[float]) - The API request steady-state rate limit.
api_stages: pulumi.Output[list] = None¶The associated API stages of the usage plan.
api_id(str) - API Id of the associated API stage in a usage plan.stage(str) - API stage name of the associated API stage in a usage plan.
arn: pulumi.Output[str] = None¶Amazon Resource Name (ARN)
description: pulumi.Output[str] = None¶The description of a usage plan.
name: pulumi.Output[str] = None¶The name of the usage plan.
product_code: pulumi.Output[str] = None¶The AWS Markeplace product identifier to associate with the usage plan as a SaaS product on AWS Marketplace.
quota_settings: pulumi.Output[dict] = None¶The quota settings of the usage plan.
limit(float) - The maximum number of requests that can be made in a given time period.offset(float) - The number of requests subtracted from the given limit in the initial time period.period(str) - The time period in which the limit applies. Valid values are “DAY”, “WEEK” or “MONTH”.
Key-value map of resource tags
throttle_settings: pulumi.Output[dict] = None¶The throttling limits of the usage plan.
burstLimit(float) - The API request burst limit, the maximum rate limit over a time ranging from one to a few seconds, depending upon whether the underlying token bucket is at its full capacity.rate_limit(float) - The API request steady-state rate limit.
- static
get(resource_name, id, opts=None, api_stages=None, arn=None, description=None, name=None, product_code=None, quota_settings=None, tags=None, throttle_settings=None)¶ Get an existing UsagePlan 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_stages (pulumi.Input[list]) – The associated API stages of the usage plan.
arn (pulumi.Input[str]) – Amazon Resource Name (ARN)
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.
tags (pulumi.Input[dict]) – Key-value map of resource tags
throttle_settings (pulumi.Input[dict]) – The throttling limits of the usage plan.
The api_stages object supports the following:
api_id(pulumi.Input[str]) - API Id of the associated API stage in a usage plan.stage(pulumi.Input[str]) - API stage name of the associated API stage in a usage plan.
The quota_settings object supports the following:
limit(pulumi.Input[float]) - The maximum number of requests that can be made in a given time period.offset(pulumi.Input[float]) - The number of requests subtracted from the given limit in the initial time period.period(pulumi.Input[str]) - The time period in which the limit applies. Valid values are “DAY”, “WEEK” or “MONTH”.
The throttle_settings object supports the following:
burstLimit(pulumi.Input[float]) - The API request burst limit, the maximum rate limit over a time ranging from one to a few seconds, depending upon whether the underlying token bucket is at its full capacity.rate_limit(pulumi.Input[float]) - The API request steady-state rate limit.
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, __props__=None, __name__=None, __opts__=None)¶ Provides an API Gateway Usage Plan Key.
import pulumi import pulumi_aws as aws test = aws.apigateway.RestApi("test") myusageplan = aws.apigateway.UsagePlan("myusageplan", api_stages=[{ "api_id": test.id, "stage": aws_api_gateway_deployment["foo"]["stage_name"], }]) mykey = aws.apigateway.ApiKey("mykey") main = aws.apigateway.UsagePlanKey("main", key_id=mykey.id, key_type="API_KEY", usage_plan_id=myusageplan.id)
- 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: pulumi.Output[str] = None¶The identifier of the API key resource.
key_type: pulumi.Output[str] = None¶The type of the API key resource. Currently, the valid key type is API_KEY.
name: pulumi.Output[str] = None¶The name of a usage plan key.
usage_plan_id: pulumi.Output[str] = None¶The Id of the usage plan resource representing to associate the key to.
value: pulumi.Output[str] = None¶The value of a usage plan key.
- static
get(resource_name, id, opts=None, key_id=None, key_type=None, name=None, usage_plan_id=None, value=None)¶ Get an existing UsagePlanKey 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.
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.
name (pulumi.Input[str]) – The name of a usage plan key.
usage_plan_id (pulumi.Input[str]) – The Id of the usage plan resource representing to associate the key to.
value (pulumi.Input[str]) – 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
- class
pulumi_aws.apigateway.VpcLink(resource_name, opts=None, description=None, name=None, tags=None, target_arn=None, __props__=None, __name__=None, __opts__=None)¶ Provides an API Gateway VPC Link.
Note: Amazon API Gateway Version 1 VPC Links enable private integrations that connect REST APIs to private resources in a VPC. To enable private integration for HTTP APIs, use the
Amazon API Gateway Version 2 VPC Linkresource.import pulumi import pulumi_aws as aws example_load_balancer = aws.lb.LoadBalancer("exampleLoadBalancer", internal=True, load_balancer_type="network", subnet_mappings=[{ "subnet_id": "12345", }]) example_vpc_link = aws.apigateway.VpcLink("exampleVpcLink", description="example description", target_arn=example_load_balancer.arn)
- 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.
tags (pulumi.Input[dict]) – Key-value map of resource tags
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: pulumi.Output[str] = None¶The description of the VPC link.
name: pulumi.Output[str] = None¶The name used to label and identify the VPC link.
Key-value map of resource tags
target_arn: pulumi.Output[str] = None¶The list of network load balancer arns in the VPC targeted by the VPC link. Currently AWS only supports 1 target.
- static
get(resource_name, id, opts=None, arn=None, description=None, name=None, tags=None, target_arn=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.
description (pulumi.Input[str]) – The description of the VPC link.
name (pulumi.Input[str]) – The name used to label and identify the VPC link.
tags (pulumi.Input[dict]) – Key-value map of resource tags
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.
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, tags=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.
import pulumi import pulumi_aws as aws my_api_key = aws.apigateway.get_key(id="ru3mpjgse6")
- Parameters
id (str) – The ID of the API Key to look up.
tags (dict) – A map of tags for the resource.
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.
import pulumi import pulumi_aws as aws my_rest_api = aws.apigateway.get_rest_api(name="my-rest-api") my_resource = aws.apigateway.get_resource(path="/endpoint/path", rest_api_id=my_rest_api.id)
- Parameters
path (str) – The full path of the resource. If no path is found, an error will be returned.
rest_api_id (str) – The REST API id that owns the resource. If no REST API is found, an error will be returned.
pulumi_aws.apigateway.get_rest_api(name=None, tags=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.
import pulumi import pulumi_aws as aws my_rest_api = aws.apigateway.get_rest_api(name="my-rest-api")
- Parameters
name (str) – The name of the REST API to look up. If no REST API is found with this name, an error will be returned. If multiple REST APIs are found with this name, an error will be returned.
tags (dict) – Key-value map of resource tags.
pulumi_aws.apigateway.get_vpc_link(name=None, tags=None, opts=None)¶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.
import pulumi import pulumi_aws as aws my_api_gateway_vpc_link = aws.apigateway.get_vpc_link(name="my-vpc-link")
- Parameters
name (str) – The name of the API Gateway VPC Link to look up. If no API Gateway VPC Link is found with this name, an error will be returned. If multiple API Gateway VPC Links are found with this name, an error will be returned.
tags (dict) – Key-value map of resource tags