AWS CloudFormation resources generated when AWS::Serverless::Api is specified
When an AWS::Serverless::Api
is specified, AWS Serverless Application Model (AWS SAM) always generates
an AWS::ApiGateway::RestApi
base AWS CloudFormation resource. In addition, it also always
generates an AWS::ApiGateway::Stage
and an
AWS::ApiGateway::Deployment
resource.
AWS::ApiGateway::RestApi
-
LogicalId
:<api‑LogicalId>
Referenceable property: N/A (you must use the
LogicalId
to reference this AWS CloudFormation resource) AWS::ApiGateway::Stage
-
LogicalId
:<api‑LogicalId>
<stage‑name>
Stage
is the string that the<stage‑name>
StageName
property is set to. For example, if you setStageName
toGamma
, theLogicalId
is
.MyRestApiGamma
StageReferenceable property:
<api‑LogicalId>
.Stage AWS::ApiGateway::Deployment
-
LogicalId
:<api‑LogicalId>
Deployment<sha>
is a unique hash value that is generated when the stack is created. For example,<sha>
.MyRestApi
Deployment926eeb5ff1
Referenceable property:
<api‑LogicalId>
.Deployment
In addition to these AWS CloudFormation resources, when AWS::Serverless::Api
is specified,
AWS SAM generates additional AWS CloudFormation resources for the following scenarios.
DomainName property is specified
When the DomainName
property of the Domain
property of an
AWS::Serverless::Api
is specified, AWS SAM generates the
AWS::ApiGateway::DomainName
AWS CloudFormation resource.
AWS::ApiGateway::DomainName
-
LogicalId
:ApiGatewayDomainName
<sha>
is a unique hash value that is generated when the stack is created. For example:<sha>
ApiGatewayDomainName
.926eeb5ff1
Referenceable property:
<api‑LogicalId>
.DomainName
UsagePlan property is specified
When the UsagePlan
property of the Auth
property of an
AWS::Serverless::Api
is specified, AWS SAM generates the following AWS CloudFormation
resources: AWS::ApiGateway::UsagePlan
,
AWS::ApiGateway::UsagePlanKey
, and
AWS::ApiGateway::ApiKey
.
AWS::ApiGateway::UsagePlan
-
LogicalId
:<api‑LogicalId>
UsagePlanReferenceable property:
<api‑LogicalId>
.UsagePlan AWS::ApiGateway::UsagePlanKey
-
LogicalId
:<api‑LogicalId>
UsagePlanKeyReferenceable property:
<api‑LogicalId>
.UsagePlanKey AWS::ApiGateway::ApiKey
-
LogicalId
:<api‑LogicalId>
ApiKeyReferenceable property:
<api‑LogicalId>
.ApiKey