Class SpecRestApiProps
- Namespace
- Amazon.CDK.AWS.APIGateway
- Assembly
- Amazon.CDK.AWS.APIGateway.dll
Props to instantiate a new SpecRestApi.
public class SpecRestApiProps : ISpecRestApiProps, IRestApiBaseProps
- Inheritance
-
SpecRestApiProps
- Implements
- Inherited Members
Examples
Integration integration;
var api = new SpecRestApi(this, "books-api", new SpecRestApiProps {
ApiDefinition = ApiDefinition.FromAsset("path-to-file.json")
});
var booksResource = api.Root.AddResource("books");
booksResource.AddMethod("GET", integration);
Remarks
ExampleMetadata: infused
Constructors
SpecRestApiProps()
public SpecRestApiProps()
Properties
ApiDefinition
An OpenAPI definition compatible with API Gateway.
public ApiDefinition ApiDefinition { get; set; }
Property Value
Remarks
CloudWatchRole
Automatically configure an AWS CloudWatch role for API Gateway.
public bool? CloudWatchRole { get; set; }
Property Value
- bool?
Remarks
Default: true
Deploy
Indicates if a Deployment should be automatically created for this API, and recreated when the API model (resources, methods) changes.
public bool? Deploy { get; set; }
Property Value
- bool?
Remarks
Since API Gateway deployments are immutable, When this option is enabled (by default), an AWS::ApiGateway::Deployment resource will automatically created with a logical ID that hashes the API model (methods, resources and options). This means that when the model changes, the logical ID of this CloudFormation resource will change, and a new deployment will be created.
If this is set, latestDeployment
will refer to the Deployment
object
and deploymentStage
will refer to a Stage
that points to this
deployment. To customize the stage options, use the deployOptions
property.
A CloudFormation Output will also be defined with the root URL endpoint of this REST API.
Default: true
DeployOptions
Options for the API Gateway stage that will always point to the latest deployment when deploy
is enabled.
public IStageOptions? DeployOptions { get; set; }
Property Value
Remarks
If deploy
is disabled,
this value cannot be set.
Default: - Based on defaults of StageOptions
.
DisableExecuteApiEndpoint
Specifies whether clients can invoke the API using the default execute-api endpoint.
public bool? DisableExecuteApiEndpoint { get; set; }
Property Value
- bool?
Remarks
To require that clients use a custom domain name to invoke the API, disable the default endpoint.
Default: false
See: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-restapi.html
DomainName
Configure a custom domain name and map it to this API.
public IDomainNameOptions? DomainName { get; set; }
Property Value
Remarks
Default: - no domain name is defined, use addDomainName
or directly define a DomainName
.
EndpointExportName
Export name for the CfnOutput containing the API endpoint.
public string? EndpointExportName { get; set; }
Property Value
Remarks
Default: - when no export name is given, output will be created without export
EndpointTypes
A list of the endpoint types of the API.
public EndpointType[]? EndpointTypes { get; set; }
Property Value
Remarks
Use this property when creating an API.
Default: EndpointType.EDGE
FailOnWarnings
Indicates whether to roll back the resource if a warning occurs while API Gateway is creating the RestApi resource.
public bool? FailOnWarnings { get; set; }
Property Value
- bool?
Remarks
Default: false
Parameters
Custom header parameters for the request.
public IDictionary<string, string>? Parameters { get; set; }
Property Value
Remarks
Default: - No parameters.
See: https://docs.aws.amazon.com/cli/latest/reference/apigateway/import-rest-api.html
Policy
A policy document that contains the permissions for this RestApi.
public PolicyDocument? Policy { get; set; }
Property Value
- PolicyDocument
Remarks
Default: - No policy.
RestApiName
A name for the API Gateway RestApi resource.
public string? RestApiName { get; set; }
Property Value
Remarks
Default: - ID of the RestApi construct.
RetainDeployments
Retains old deployment resources when the API changes.
public bool? RetainDeployments { get; set; }
Property Value
- bool?
Remarks
This allows manually reverting stages to point to old deployments via the AWS Console.
Default: false