AWS::ApiGateway::Deployment¶
The AWS::ApiGateway::Deployment resource deploys an API Gateway RestApi resource to a stage so that clients can call the API over the internet.
Generated by cfn-typegen --out cfn_types AWS::ApiGateway::Deployment into cfn_types/apigateway.py:
# Generated by cfn-typegen from the CloudFormation registry schemas. Do not edit.
# fmt: off
# ruff: noqa
"""AWS::ApiGateway resources."""
from collections.abc import Mapping, Sequence
from typing import Any, Literal, NotRequired, Unpack
from typing_extensions import TypedDict
from cfn_typed.base import DeletionPolicy, DependsOn, ResourceAttrs, Tag, UpdateReplacePolicy, build
from cfn_typed.intrinsics import Expr
CONSTRAINTS:dict[str,Any]={
}
ATTRIBUTES:dict[str,Any]={"AWS::ApiGateway::Deployment":["DeploymentId","RestApiId"]}
RULES:dict[str,Any]={}
Nested types (8)
These are defined above the properties in the generated module.
class DeploymentCanarySetting(TypedDict, closed=True):
'The ``CanarySetting`` property type specifies settings for the canary deployment in this stage.'
StageVariableOverrides: NotRequired[Expr[Mapping[str, Expr[str]]]]
PercentTraffic: NotRequired[Expr[float]]
UseStageCache: NotRequired[Expr[bool]]
class DeploymentMethodSetting(TypedDict, closed=True):
'The ``MethodSetting`` property type configures settings for all methods in a stage.'
CacheTtlInSeconds: NotRequired[Expr[int]]
LoggingLevel: NotRequired[Expr[str]]
ResourcePath: NotRequired[Expr[str]]
'The resource path for this method.'
CacheDataEncrypted: NotRequired[Expr[bool]]
DataTraceEnabled: NotRequired[Expr[bool]]
ThrottlingBurstLimit: NotRequired[Expr[int]]
CachingEnabled: NotRequired[Expr[bool]]
MetricsEnabled: NotRequired[Expr[bool]]
HttpMethod: NotRequired[Expr[str]]
'The HTTP method.'
ThrottlingRateLimit: NotRequired[Expr[float]]
class DeploymentAccessLogSetting(TypedDict, closed=True):
'The ``AccessLogSetting`` property type specifies settings for logging access in this stage.'
Format: NotRequired[Expr[str]]
DestinationArn: NotRequired[Expr[str]]
class DeploymentStageDescription(TypedDict, closed=True):
'``StageDescription`` is a property of the [AWS::ApiGateway::Deployment](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigatewa...'
CacheTtlInSeconds: NotRequired[Expr[int]]
'The time-to-live (TTL) period, in seconds, that specifies how long API Gateway caches responses.'
Description: NotRequired[Expr[str]]
'A description of the purpose of the stage.'
LoggingLevel: NotRequired[Expr[str]]
'The logging level for this method.'
CanarySetting: NotRequired[Expr[DeploymentCanarySetting]]
'Specifies settings for the canary deployment in this stage.'
ThrottlingRateLimit: NotRequired[Expr[float]]
'The target request steady-state rate limit.'
ClientCertificateId: NotRequired[Expr[str]]
'The identifier of the client certificate that API Gateway uses to call your integration endpoints in the stage.'
Variables: NotRequired[Expr[Mapping[str, Expr[str]]]]
'A map that defines the stage variables.'
DocumentationVersion: NotRequired[Expr[str]]
'The version identifier of the API documentation snapshot.'
CacheDataEncrypted: NotRequired[Expr[bool]]
'Indicates whether the cached responses are encrypted.'
DataTraceEnabled: NotRequired[Expr[bool]]
'Indicates whether data trace logging is enabled for methods in the stage.'
ThrottlingBurstLimit: NotRequired[Expr[int]]
'The target request burst rate limit.'
CachingEnabled: NotRequired[Expr[bool]]
'Indicates whether responses are cached and returned for requests.'
TracingEnabled: NotRequired[Expr[bool]]
'Specifies whether active tracing with X-ray is enabled for this stage.'
MethodSettings: NotRequired[Expr[Sequence[Expr[DeploymentMethodSetting]]]]
"Configures settings for all of the stage's methods."
AccessLogSetting: NotRequired[Expr[DeploymentAccessLogSetting]]
'Specifies settings for logging access in this stage.'
CacheClusterSize: NotRequired[Expr[str]]
"The size of the stage's cache cluster."
MetricsEnabled: NotRequired[Expr[bool]]
'Indicates whether Amazon CloudWatch metrics are enabled for methods in the stage.'
Tags: NotRequired[Expr[Sequence[Expr[Tag]]]]
'An array of arbitrary tags (key-value pairs) to associate with the stage.'
CacheClusterEnabled: NotRequired[Expr[bool]]
class DeploymentDeploymentCanarySettings(TypedDict, closed=True):
'The ``DeploymentCanarySettings`` property type specifies settings for the canary deployment.'
StageVariableOverrides: NotRequired[Expr[Mapping[str, Expr[str]]]]
PercentTraffic: NotRequired[Expr[float]]
UseStageCache: NotRequired[Expr[bool]]
class DeploymentProps(TypedDict, closed=True):
'The ``AWS::ApiGateway::Deployment`` resource deploys an API Gateway ``RestApi`` resource to a stage so that clients can call the API over the internet.'
Description: NotRequired[Expr[str]]
StageDescription: NotRequired[Expr[DeploymentStageDescription]]
'The description of the Stage resource for the Deployment resource to create.'
StageName: NotRequired[Expr[str]]
RestApiId: Expr[str]
DeploymentCanarySettings: NotRequired[Expr[DeploymentDeploymentCanarySettings]]
class Deployment(ResourceAttrs):
'The ``AWS::ApiGateway::Deployment`` resource deploys an API Gateway ``RestApi`` resource to a stage so that clients can call the API over the internet.'
Type: Literal['AWS::ApiGateway::Deployment']
Properties: DeploymentProps
def deployment(
*,
depends_on: DependsOn | None = None,
deletion_policy: DeletionPolicy | None = None,
update_replace_policy: UpdateReplacePolicy | None = None,
condition: str | None = None,
metadata: dict[str, Any] | None = None,
**props: Unpack[DeploymentProps],
) -> Deployment:
return build('AWS::ApiGateway::Deployment', props, depends_on, deletion_policy, update_replace_policy, condition, metadata)
Attributes¶
Read-only values for get_att(logical_id, attribute). They are not accepted as inputs.
DeploymentId