interface CfnApiProps
| Language | Type name |
|---|---|
.NET | Amazon.CDK.AWS.SAM.CfnApiProps |
Java | software.amazon.awscdk.services.sam.CfnApiProps |
Python | aws_cdk.aws_sam.CfnApiProps |
TypeScript | @aws-cdk/aws-sam » CfnApiProps |
Properties for defining a CfnApi.
Example
// The code below shows an example of how to instantiate this type.
// The values are placeholders you should change.
import * as sam from '@aws-cdk/aws-sam';
declare const authorizers: any;
declare const definitionBody: any;
declare const gatewayResponses: any;
declare const methodSettings: any;
declare const models: any;
const cfnApiProps: sam.CfnApiProps = {
stageName: 'stageName',
// the properties below are optional
accessLogSetting: {
destinationArn: 'destinationArn',
format: 'format',
},
auth: {
addDefaultAuthorizerToCorsPreflight: false,
authorizers: authorizers,
defaultAuthorizer: 'defaultAuthorizer',
},
binaryMediaTypes: ['binaryMediaTypes'],
cacheClusterEnabled: false,
cacheClusterSize: 'cacheClusterSize',
canarySetting: {
deploymentId: 'deploymentId',
percentTraffic: 123,
stageVariableOverrides: {
stageVariableOverridesKey: 'stageVariableOverrides',
},
useStageCache: false,
},
cors: 'cors',
definitionBody: definitionBody,
definitionUri: 'definitionUri',
description: 'description',
disableExecuteApiEndpoint: false,
domain: {
certificateArn: 'certificateArn',
domainName: 'domainName',
// the properties below are optional
basePath: ['basePath'],
endpointConfiguration: 'endpointConfiguration',
mutualTlsAuthentication: {
truststoreUri: 'truststoreUri',
truststoreVersion: 'truststoreVersion',
},
ownershipVerificationCertificateArn: 'ownershipVerificationCertificateArn',
route53: {
distributedDomainName: 'distributedDomainName',
evaluateTargetHealth: false,
hostedZoneId: 'hostedZoneId',
hostedZoneName: 'hostedZoneName',
ipV6: false,
},
securityPolicy: 'securityPolicy',
},
endpointConfiguration: 'endpointConfiguration',
gatewayResponses: gatewayResponses,
methodSettings: [methodSettings],
minimumCompressionSize: 123,
models: models,
name: 'name',
openApiVersion: 'openApiVersion',
tags: {
tagsKey: 'tags',
},
tracingEnabled: false,
variables: {
variablesKey: 'variables',
},
};
Properties
| Name | Type | Description |
|---|---|---|
| stage | string | AWS::Serverless::Api.StageName. |
| access | Access | IResolvable | AWS::Serverless::Api.AccessLogSetting. |
| auth? | IResolvable | Auth | AWS::Serverless::Api.Auth. |
| binary | string[] | AWS::Serverless::Api.BinaryMediaTypes. |
| cache | boolean | IResolvable | AWS::Serverless::Api.CacheClusterEnabled. |
| cache | string | AWS::Serverless::Api.CacheClusterSize. |
| canary | IResolvable | Canary | AWS::Serverless::Api.CanarySetting. |
| cors? | string | IResolvable | Cors | AWS::Serverless::Api.Cors. |
| definition | any | AWS::Serverless::Api.DefinitionBody. |
| definition | string | IResolvable | S3 | AWS::Serverless::Api.DefinitionUri. |
| description? | string | AWS::Serverless::Api.Description. |
| disable | boolean | IResolvable | AWS::Serverless::Api.DisableExecuteApiEndpoint. |
| domain? | IResolvable | Domain | AWS::Serverless::Api.Domain. |
| endpoint | string | IResolvable | Endpoint | AWS::Serverless::Api.EndpointConfiguration. |
| gateway | any | AWS::Serverless::Api.GatewayResponses. |
| method | any[] | IResolvable | AWS::Serverless::Api.MethodSettings. |
| minimum | number | AWS::Serverless::Api.MinimumCompressionSize. |
| models? | any | AWS::Serverless::Api.Models. |
| name? | string | AWS::Serverless::Api.Name. |
| open | string | AWS::Serverless::Api.OpenApiVersion. |
| tags? | { [string]: string } | AWS::Serverless::Api.Tags. |
| tracing | boolean | IResolvable | AWS::Serverless::Api.TracingEnabled. |
| variables? | IResolvable | { [string]: string } | AWS::Serverless::Api.Variables. |
stageName
Type:
string
AWS::Serverless::Api.StageName.
accessLogSetting?
Type:
Access | IResolvable
(optional)
AWS::Serverless::Api.AccessLogSetting.
auth?
Type:
IResolvable | Auth
(optional)
AWS::Serverless::Api.Auth.
binaryMediaTypes?
Type:
string[]
(optional)
AWS::Serverless::Api.BinaryMediaTypes.
cacheClusterEnabled?
Type:
boolean | IResolvable
(optional)
AWS::Serverless::Api.CacheClusterEnabled.
cacheClusterSize?
Type:
string
(optional)
AWS::Serverless::Api.CacheClusterSize.
canarySetting?
Type:
IResolvable | Canary
(optional)
AWS::Serverless::Api.CanarySetting.
cors?
Type:
string | IResolvable | Cors
(optional)
AWS::Serverless::Api.Cors.
definitionBody?
Type:
any
(optional)
AWS::Serverless::Api.DefinitionBody.
definitionUri?
Type:
string | IResolvable | S3
(optional)
AWS::Serverless::Api.DefinitionUri.
description?
Type:
string
(optional)
AWS::Serverless::Api.Description.
disableExecuteApiEndpoint?
Type:
boolean | IResolvable
(optional)
AWS::Serverless::Api.DisableExecuteApiEndpoint.
domain?
Type:
IResolvable | Domain
(optional)
AWS::Serverless::Api.Domain.
endpointConfiguration?
Type:
string | IResolvable | Endpoint
(optional)
AWS::Serverless::Api.EndpointConfiguration.
gatewayResponses?
Type:
any
(optional)
AWS::Serverless::Api.GatewayResponses.
methodSettings?
Type:
any[] | IResolvable
(optional)
AWS::Serverless::Api.MethodSettings.
minimumCompressionSize?
Type:
number
(optional)
AWS::Serverless::Api.MinimumCompressionSize.
models?
Type:
any
(optional)
AWS::Serverless::Api.Models.
name?
Type:
string
(optional)
AWS::Serverless::Api.Name.
openApiVersion?
Type:
string
(optional)
AWS::Serverless::Api.OpenApiVersion.
tags?
Type:
{ [string]: string }
(optional)
AWS::Serverless::Api.Tags.
tracingEnabled?
Type:
boolean | IResolvable
(optional)
AWS::Serverless::Api.TracingEnabled.
variables?
Type:
IResolvable | { [string]: string }
(optional)
AWS::Serverless::Api.Variables.

.NET
Java
Python
TypeScript