awsapigateway

package
v2.0.0-rc.24 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Oct 13, 2021 License: Apache-2.0 Imports: 16 Imported by: 36

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

func AccessLogField_ContextAccountId

func AccessLogField_ContextAccountId() *string

The API owner's AWS account ID. Experimental.

func AccessLogField_ContextApiId

func AccessLogField_ContextApiId() *string

The identifier API Gateway assigns to your API. Experimental.

func AccessLogField_ContextAuthorizer

func AccessLogField_ContextAuthorizer(property *string) *string

The stringified value of the specified key-value pair of the `context` map returned from an API Gateway Lambda authorizer function. See: https://docs.aws.amazon.com/apigateway/latest/developerguide/apigateway-use-lambda-authorizer.html

Experimental.

func AccessLogField_ContextAuthorizerClaims

func AccessLogField_ContextAuthorizerClaims(property *string) *string

A property of the claims returned from the Amazon Cognito user pool after the method caller is successfully authenticated. See: https://docs.aws.amazon.com/apigateway/latest/developerguide/apigateway-integrate-with-cognito.html

Experimental.

func AccessLogField_ContextAuthorizerIntegrationLatency

func AccessLogField_ContextAuthorizerIntegrationLatency() *string

The authorizer latency in ms. Experimental.

func AccessLogField_ContextAuthorizerPrincipalId

func AccessLogField_ContextAuthorizerPrincipalId() *string

The principal user identification associated with the token sent by the client and returned from an API Gateway Lambda authorizer (formerly known as a custom authorizer). See: https://docs.aws.amazon.com/apigateway/latest/developerguide/apigateway-use-lambda-authorizer.html

Experimental.

func AccessLogField_ContextAwsEndpointRequestId

func AccessLogField_ContextAwsEndpointRequestId() *string

The AWS endpoint's request ID. Experimental.

func AccessLogField_ContextDomainName

func AccessLogField_ContextDomainName() *string

The full domain name used to invoke the API.

This should be the same as the incoming `Host` header. Experimental.

func AccessLogField_ContextDomainPrefix

func AccessLogField_ContextDomainPrefix() *string

The first label of the `$context.domainName`. This is often used as a caller/customer identifier. Experimental.

func AccessLogField_ContextErrorMessage

func AccessLogField_ContextErrorMessage() *string

A string containing an API Gateway error message. Experimental.

func AccessLogField_ContextErrorMessageString

func AccessLogField_ContextErrorMessageString() *string

The quoted value of $context.error.message, namely "$context.error.message". Experimental.

func AccessLogField_ContextErrorResponseType

func AccessLogField_ContextErrorResponseType() *string

A type of GatewayResponse.

This variable can only be used for simple variable substitution in a GatewayResponse body-mapping template, which is not processed by the Velocity Template Language engine, and in access logging. See: https://docs.aws.amazon.com/apigateway/latest/developerguide/customize-gateway-responses.html

Experimental.

func AccessLogField_ContextErrorValidationErrorString

func AccessLogField_ContextErrorValidationErrorString() *string

A string containing a detailed validation error message. Experimental.

func AccessLogField_ContextExtendedRequestId

func AccessLogField_ContextExtendedRequestId() *string

The extended ID that API Gateway assigns to the API request, which contains more useful information for debugging/troubleshooting. Experimental.

func AccessLogField_ContextHttpMethod

func AccessLogField_ContextHttpMethod() *string

The HTTP method used.

Valid values include: `DELETE`, `GET`, `HEAD`, `OPTIONS`, `PATCH`, `POST`, and `PUT`. Experimental.

func AccessLogField_ContextIdentityAccountId

func AccessLogField_ContextIdentityAccountId() *string

The AWS account ID associated with the request. Experimental.

func AccessLogField_ContextIdentityApiKey

func AccessLogField_ContextIdentityApiKey() *string

For API methods that require an API key, this variable is the API key associated with the method request.

For methods that don't require an API key, this variable is See: https://docs.aws.amazon.com/apigateway/latest/developerguide/api-gateway-api-usage-plans.html

Experimental.

func AccessLogField_ContextIdentityApiKeyId

func AccessLogField_ContextIdentityApiKeyId() *string

The API key ID associated with an API request that requires an API key. Experimental.

func AccessLogField_ContextIdentityCaller

func AccessLogField_ContextIdentityCaller() *string

The principal identifier of the caller making the request. Experimental.

func AccessLogField_ContextIdentityCognitoAuthenticationProvider

func AccessLogField_ContextIdentityCognitoAuthenticationProvider() *string

The Amazon Cognito authentication provider used by the caller making the request.

Available only if the request was signed with Amazon Cognito credentials. See: https://docs.aws.amazon.com/cognito/latest/developerguide/cognito-identity.html

Experimental.

func AccessLogField_ContextIdentityCognitoAuthenticationType

func AccessLogField_ContextIdentityCognitoAuthenticationType() *string

The Amazon Cognito authentication type of the caller making the request.

Available only if the request was signed with Amazon Cognito credentials. Experimental.

func AccessLogField_ContextIdentityCognitoIdentityId

func AccessLogField_ContextIdentityCognitoIdentityId() *string

The Amazon Cognito identity ID of the caller making the request.

Available only if the request was signed with Amazon Cognito credentials. Experimental.

func AccessLogField_ContextIdentityCognitoIdentityPoolId

func AccessLogField_ContextIdentityCognitoIdentityPoolId() *string

The Amazon Cognito identity pool ID of the caller making the request.

Available only if the request was signed with Amazon Cognito credentials. Experimental.

func AccessLogField_ContextIdentityPrincipalOrgId

func AccessLogField_ContextIdentityPrincipalOrgId() *string

The AWS organization ID. Experimental.

func AccessLogField_ContextIdentitySourceIp

func AccessLogField_ContextIdentitySourceIp() *string

The source IP address of the TCP connection making the request to API Gateway.

Warning: You should not trust this value if there is any chance that the `X-Forwarded-For` header could be forged. Experimental.

func AccessLogField_ContextIdentityUser

func AccessLogField_ContextIdentityUser() *string

The principal identifier of the user making the request.

Used in Lambda authorizers. See: https://docs.aws.amazon.com/apigateway/latest/developerguide/api-gateway-lambda-authorizer-output.html

Experimental.

func AccessLogField_ContextIdentityUserAgent

func AccessLogField_ContextIdentityUserAgent() *string

The User-Agent header of the API caller. Experimental.

func AccessLogField_ContextIdentityUserArn

func AccessLogField_ContextIdentityUserArn() *string

The Amazon Resource Name (ARN) of the effective user identified after authentication. See: https://docs.aws.amazon.com/IAM/latest/UserGuide/id_users.html

Experimental.

func AccessLogField_ContextIntegrationLatency

func AccessLogField_ContextIntegrationLatency() *string

The integration latency in ms. Experimental.

func AccessLogField_ContextIntegrationStatus

func AccessLogField_ContextIntegrationStatus() *string

For Lambda proxy integration, this parameter represents the status code returned from AWS Lambda, not from the backend Lambda function. Experimental.

func AccessLogField_ContextPath

func AccessLogField_ContextPath() *string

The request path.

For example, for a non-proxy request URL of https://{rest-api-id.execute-api.{region}.amazonaws.com/{stage}/root/child, this value is /{stage}/root/child. Experimental.

func AccessLogField_ContextProtocol

func AccessLogField_ContextProtocol() *string

The request protocol, for example, HTTP/1.1. Experimental.

func AccessLogField_ContextRequestId

func AccessLogField_ContextRequestId() *string

The ID that API Gateway assigns to the API request. Experimental.

func AccessLogField_ContextRequestOverrideHeader

func AccessLogField_ContextRequestOverrideHeader(headerName *string) *string

The request header override.

If this parameter is defined, it contains the headers to be used instead of the HTTP Headers that are defined in the Integration Request pane. See: https://docs.aws.amazon.com/apigateway/latest/developerguide/apigateway-override-request-response-parameters.html

Experimental.

func AccessLogField_ContextRequestOverridePath

func AccessLogField_ContextRequestOverridePath(pathName *string) *string

The request path override.

If this parameter is defined, it contains the request path to be used instead of the URL Path Parameters that are defined in the Integration Request pane. See: https://docs.aws.amazon.com/apigateway/latest/developerguide/apigateway-override-request-response-parameters.html

Experimental.

func AccessLogField_ContextRequestOverrideQuerystring

func AccessLogField_ContextRequestOverrideQuerystring(querystringName *string) *string

The request query string override.

If this parameter is defined, it contains the request query strings to be used instead of the URL Query String Parameters that are defined in the Integration Request pane. Experimental.

func AccessLogField_ContextRequestTime

func AccessLogField_ContextRequestTime() *string

The CLF-formatted request time (dd/MMM/yyyy:HH:mm:ss +-hhmm). Experimental.

func AccessLogField_ContextRequestTimeEpoch

func AccessLogField_ContextRequestTimeEpoch() *string

The Epoch-formatted request time. Experimental.

func AccessLogField_ContextResourceId

func AccessLogField_ContextResourceId() *string

The identifier that API Gateway assigns to your resource. Experimental.

func AccessLogField_ContextResourcePath

func AccessLogField_ContextResourcePath() *string

The path to your resource.

For example, for the non-proxy request URI of `https://{rest-api-id.execute-api.{region}.amazonaws.com/{stage}/root/child`, The $context.resourcePath value is `/root/child`. See: https://docs.aws.amazon.com/apigateway/latest/developerguide/api-gateway-create-api-step-by-step.html

Experimental.

func AccessLogField_ContextResponseLatency

func AccessLogField_ContextResponseLatency() *string

The response latency in ms. Experimental.

func AccessLogField_ContextResponseLength

func AccessLogField_ContextResponseLength() *string

The response payload length. Experimental.

func AccessLogField_ContextResponseOverrideHeader

func AccessLogField_ContextResponseOverrideHeader(headerName *string) *string

The response header override.

If this parameter is defined, it contains the header to be returned instead of the Response header that is defined as the Default mapping in the Integration Response pane. See: https://docs.aws.amazon.com/apigateway/latest/developerguide/apigateway-override-request-response-parameters.html

Experimental.

func AccessLogField_ContextResponseOverrideStatus

func AccessLogField_ContextResponseOverrideStatus() *string

The response status code override.

If this parameter is defined, it contains the status code to be returned instead of the Method response status that is defined as the Default mapping in the Integration Response pane. See: https://docs.aws.amazon.com/apigateway/latest/developerguide/apigateway-override-request-response-parameters.html

Experimental.

func AccessLogField_ContextStage

func AccessLogField_ContextStage() *string

The deployment stage of the API request (for example, `Beta` or `Prod`). Experimental.

func AccessLogField_ContextStatus

func AccessLogField_ContextStatus() *string

The method response status. Experimental.

func AccessLogField_ContextWafResponseCode

func AccessLogField_ContextWafResponseCode() *string

The response received from AWS WAF: `WAF_ALLOW` or `WAF_BLOCK`.

Will not be set if the stage is not associated with a web ACL. See: https://docs.aws.amazon.com/apigateway/latest/developerguide/apigateway-control-access-aws-waf.html

Experimental.

func AccessLogField_ContextWebaclArn

func AccessLogField_ContextWebaclArn() *string

The complete ARN of the web ACL that is used to decide whether to allow or block the request.

Will not be set if the stage is not associated with a web ACL. See: https://docs.aws.amazon.com/apigateway/latest/developerguide/apigateway-control-access-aws-waf.html

Experimental.

func AccessLogField_ContextXrayTraceId

func AccessLogField_ContextXrayTraceId() *string

The trace ID for the X-Ray trace. See: https://docs.aws.amazon.com/apigateway/latest/developerguide/apigateway-enabling-xray.html

Experimental.

func ApiKey_IsConstruct

func ApiKey_IsConstruct(x interface{}) *bool

Checks if `x` is a construct.

Returns: true if `x` is an object created from a class which extends `Construct`. Deprecated: use `x instanceof Construct` instead

func ApiKey_IsResource

func ApiKey_IsResource(construct constructs.IConstruct) *bool

Check whether the given construct is a Resource. Experimental.

func Authorizer_IsAuthorizer

func Authorizer_IsAuthorizer(x interface{}) *bool

Return whether the given object is an Authorizer. Experimental.

func Authorizer_IsConstruct

func Authorizer_IsConstruct(x interface{}) *bool

Checks if `x` is a construct.

Returns: true if `x` is an object created from a class which extends `Construct`. Deprecated: use `x instanceof Construct` instead

func Authorizer_IsResource

func Authorizer_IsResource(construct constructs.IConstruct) *bool

Check whether the given construct is a Resource. Experimental.

func BasePathMapping_IsConstruct

func BasePathMapping_IsConstruct(x interface{}) *bool

Checks if `x` is a construct.

Returns: true if `x` is an object created from a class which extends `Construct`. Deprecated: use `x instanceof Construct` instead

func BasePathMapping_IsResource

func BasePathMapping_IsResource(construct constructs.IConstruct) *bool

Check whether the given construct is a Resource. Experimental.

func CfnAccount_CFN_RESOURCE_TYPE_NAME

func CfnAccount_CFN_RESOURCE_TYPE_NAME() *string

func CfnAccount_IsCfnElement

func CfnAccount_IsCfnElement(x interface{}) *bool

Returns `true` if a construct is a stack element (i.e. part of the synthesized cloudformation template).

Uses duck-typing instead of `instanceof` to allow stack elements from different versions of this library to be included in the same stack.

Returns: The construct as a stack element or undefined if it is not a stack element. Experimental.

func CfnAccount_IsCfnResource

func CfnAccount_IsCfnResource(construct constructs.IConstruct) *bool

Check whether the given construct is a CfnResource. Experimental.

func CfnAccount_IsConstruct

func CfnAccount_IsConstruct(x interface{}) *bool

Checks if `x` is a construct.

Returns: true if `x` is an object created from a class which extends `Construct`. Deprecated: use `x instanceof Construct` instead

func CfnApiKey_CFN_RESOURCE_TYPE_NAME

func CfnApiKey_CFN_RESOURCE_TYPE_NAME() *string

func CfnApiKey_IsCfnElement

func CfnApiKey_IsCfnElement(x interface{}) *bool

Returns `true` if a construct is a stack element (i.e. part of the synthesized cloudformation template).

Uses duck-typing instead of `instanceof` to allow stack elements from different versions of this library to be included in the same stack.

Returns: The construct as a stack element or undefined if it is not a stack element. Experimental.

func CfnApiKey_IsCfnResource

func CfnApiKey_IsCfnResource(construct constructs.IConstruct) *bool

Check whether the given construct is a CfnResource. Experimental.

func CfnApiKey_IsConstruct

func CfnApiKey_IsConstruct(x interface{}) *bool

Checks if `x` is a construct.

Returns: true if `x` is an object created from a class which extends `Construct`. Deprecated: use `x instanceof Construct` instead

func CfnAuthorizer_CFN_RESOURCE_TYPE_NAME

func CfnAuthorizer_CFN_RESOURCE_TYPE_NAME() *string

func CfnAuthorizer_IsCfnElement

func CfnAuthorizer_IsCfnElement(x interface{}) *bool

Returns `true` if a construct is a stack element (i.e. part of the synthesized cloudformation template).

Uses duck-typing instead of `instanceof` to allow stack elements from different versions of this library to be included in the same stack.

Returns: The construct as a stack element or undefined if it is not a stack element. Experimental.

func CfnAuthorizer_IsCfnResource

func CfnAuthorizer_IsCfnResource(construct constructs.IConstruct) *bool

Check whether the given construct is a CfnResource. Experimental.

func CfnAuthorizer_IsConstruct

func CfnAuthorizer_IsConstruct(x interface{}) *bool

Checks if `x` is a construct.

Returns: true if `x` is an object created from a class which extends `Construct`. Deprecated: use `x instanceof Construct` instead

func CfnBasePathMapping_CFN_RESOURCE_TYPE_NAME

func CfnBasePathMapping_CFN_RESOURCE_TYPE_NAME() *string

func CfnBasePathMapping_IsCfnElement

func CfnBasePathMapping_IsCfnElement(x interface{}) *bool

Returns `true` if a construct is a stack element (i.e. part of the synthesized cloudformation template).

Uses duck-typing instead of `instanceof` to allow stack elements from different versions of this library to be included in the same stack.

Returns: The construct as a stack element or undefined if it is not a stack element. Experimental.

func CfnBasePathMapping_IsCfnResource

func CfnBasePathMapping_IsCfnResource(construct constructs.IConstruct) *bool

Check whether the given construct is a CfnResource. Experimental.

func CfnBasePathMapping_IsConstruct

func CfnBasePathMapping_IsConstruct(x interface{}) *bool

Checks if `x` is a construct.

Returns: true if `x` is an object created from a class which extends `Construct`. Deprecated: use `x instanceof Construct` instead

func CfnClientCertificate_CFN_RESOURCE_TYPE_NAME

func CfnClientCertificate_CFN_RESOURCE_TYPE_NAME() *string

func CfnClientCertificate_IsCfnElement

func CfnClientCertificate_IsCfnElement(x interface{}) *bool

Returns `true` if a construct is a stack element (i.e. part of the synthesized cloudformation template).

Uses duck-typing instead of `instanceof` to allow stack elements from different versions of this library to be included in the same stack.

Returns: The construct as a stack element or undefined if it is not a stack element. Experimental.

func CfnClientCertificate_IsCfnResource

func CfnClientCertificate_IsCfnResource(construct constructs.IConstruct) *bool

Check whether the given construct is a CfnResource. Experimental.

func CfnClientCertificate_IsConstruct

func CfnClientCertificate_IsConstruct(x interface{}) *bool

Checks if `x` is a construct.

Returns: true if `x` is an object created from a class which extends `Construct`. Deprecated: use `x instanceof Construct` instead

func CfnDeployment_CFN_RESOURCE_TYPE_NAME

func CfnDeployment_CFN_RESOURCE_TYPE_NAME() *string

func CfnDeployment_IsCfnElement

func CfnDeployment_IsCfnElement(x interface{}) *bool

Returns `true` if a construct is a stack element (i.e. part of the synthesized cloudformation template).

Uses duck-typing instead of `instanceof` to allow stack elements from different versions of this library to be included in the same stack.

Returns: The construct as a stack element or undefined if it is not a stack element. Experimental.

func CfnDeployment_IsCfnResource

func CfnDeployment_IsCfnResource(construct constructs.IConstruct) *bool

Check whether the given construct is a CfnResource. Experimental.

func CfnDeployment_IsConstruct

func CfnDeployment_IsConstruct(x interface{}) *bool

Checks if `x` is a construct.

Returns: true if `x` is an object created from a class which extends `Construct`. Deprecated: use `x instanceof Construct` instead

func CfnDocumentationPart_CFN_RESOURCE_TYPE_NAME

func CfnDocumentationPart_CFN_RESOURCE_TYPE_NAME() *string

func CfnDocumentationPart_IsCfnElement

func CfnDocumentationPart_IsCfnElement(x interface{}) *bool

Returns `true` if a construct is a stack element (i.e. part of the synthesized cloudformation template).

Uses duck-typing instead of `instanceof` to allow stack elements from different versions of this library to be included in the same stack.

Returns: The construct as a stack element or undefined if it is not a stack element. Experimental.

func CfnDocumentationPart_IsCfnResource

func CfnDocumentationPart_IsCfnResource(construct constructs.IConstruct) *bool

Check whether the given construct is a CfnResource. Experimental.

func CfnDocumentationPart_IsConstruct

func CfnDocumentationPart_IsConstruct(x interface{}) *bool

Checks if `x` is a construct.

Returns: true if `x` is an object created from a class which extends `Construct`. Deprecated: use `x instanceof Construct` instead

func CfnDocumentationVersion_CFN_RESOURCE_TYPE_NAME

func CfnDocumentationVersion_CFN_RESOURCE_TYPE_NAME() *string

func CfnDocumentationVersion_IsCfnElement

func CfnDocumentationVersion_IsCfnElement(x interface{}) *bool

Returns `true` if a construct is a stack element (i.e. part of the synthesized cloudformation template).

Uses duck-typing instead of `instanceof` to allow stack elements from different versions of this library to be included in the same stack.

Returns: The construct as a stack element or undefined if it is not a stack element. Experimental.

func CfnDocumentationVersion_IsCfnResource

func CfnDocumentationVersion_IsCfnResource(construct constructs.IConstruct) *bool

Check whether the given construct is a CfnResource. Experimental.

func CfnDocumentationVersion_IsConstruct

func CfnDocumentationVersion_IsConstruct(x interface{}) *bool

Checks if `x` is a construct.

Returns: true if `x` is an object created from a class which extends `Construct`. Deprecated: use `x instanceof Construct` instead

func CfnDomainName_CFN_RESOURCE_TYPE_NAME

func CfnDomainName_CFN_RESOURCE_TYPE_NAME() *string

func CfnDomainName_IsCfnElement

func CfnDomainName_IsCfnElement(x interface{}) *bool

Returns `true` if a construct is a stack element (i.e. part of the synthesized cloudformation template).

Uses duck-typing instead of `instanceof` to allow stack elements from different versions of this library to be included in the same stack.

Returns: The construct as a stack element or undefined if it is not a stack element. Experimental.

func CfnDomainName_IsCfnResource

func CfnDomainName_IsCfnResource(construct constructs.IConstruct) *bool

Check whether the given construct is a CfnResource. Experimental.

func CfnDomainName_IsConstruct

func CfnDomainName_IsConstruct(x interface{}) *bool

Checks if `x` is a construct.

Returns: true if `x` is an object created from a class which extends `Construct`. Deprecated: use `x instanceof Construct` instead

func CfnGatewayResponse_CFN_RESOURCE_TYPE_NAME

func CfnGatewayResponse_CFN_RESOURCE_TYPE_NAME() *string

func CfnGatewayResponse_IsCfnElement

func CfnGatewayResponse_IsCfnElement(x interface{}) *bool

Returns `true` if a construct is a stack element (i.e. part of the synthesized cloudformation template).

Uses duck-typing instead of `instanceof` to allow stack elements from different versions of this library to be included in the same stack.

Returns: The construct as a stack element or undefined if it is not a stack element. Experimental.

func CfnGatewayResponse_IsCfnResource

func CfnGatewayResponse_IsCfnResource(construct constructs.IConstruct) *bool

Check whether the given construct is a CfnResource. Experimental.

func CfnGatewayResponse_IsConstruct

func CfnGatewayResponse_IsConstruct(x interface{}) *bool

Checks if `x` is a construct.

Returns: true if `x` is an object created from a class which extends `Construct`. Deprecated: use `x instanceof Construct` instead

func CfnMethod_CFN_RESOURCE_TYPE_NAME

func CfnMethod_CFN_RESOURCE_TYPE_NAME() *string

func CfnMethod_IsCfnElement

func CfnMethod_IsCfnElement(x interface{}) *bool

Returns `true` if a construct is a stack element (i.e. part of the synthesized cloudformation template).

Uses duck-typing instead of `instanceof` to allow stack elements from different versions of this library to be included in the same stack.

Returns: The construct as a stack element or undefined if it is not a stack element. Experimental.

func CfnMethod_IsCfnResource

func CfnMethod_IsCfnResource(construct constructs.IConstruct) *bool

Check whether the given construct is a CfnResource. Experimental.

func CfnMethod_IsConstruct

func CfnMethod_IsConstruct(x interface{}) *bool

Checks if `x` is a construct.

Returns: true if `x` is an object created from a class which extends `Construct`. Deprecated: use `x instanceof Construct` instead

func CfnModel_CFN_RESOURCE_TYPE_NAME

func CfnModel_CFN_RESOURCE_TYPE_NAME() *string

func CfnModel_IsCfnElement

func CfnModel_IsCfnElement(x interface{}) *bool

Returns `true` if a construct is a stack element (i.e. part of the synthesized cloudformation template).

Uses duck-typing instead of `instanceof` to allow stack elements from different versions of this library to be included in the same stack.

Returns: The construct as a stack element or undefined if it is not a stack element. Experimental.

func CfnModel_IsCfnResource

func CfnModel_IsCfnResource(construct constructs.IConstruct) *bool

Check whether the given construct is a CfnResource. Experimental.

func CfnModel_IsConstruct

func CfnModel_IsConstruct(x interface{}) *bool

Checks if `x` is a construct.

Returns: true if `x` is an object created from a class which extends `Construct`. Deprecated: use `x instanceof Construct` instead

func CfnRequestValidator_CFN_RESOURCE_TYPE_NAME

func CfnRequestValidator_CFN_RESOURCE_TYPE_NAME() *string

func CfnRequestValidator_IsCfnElement

func CfnRequestValidator_IsCfnElement(x interface{}) *bool

Returns `true` if a construct is a stack element (i.e. part of the synthesized cloudformation template).

Uses duck-typing instead of `instanceof` to allow stack elements from different versions of this library to be included in the same stack.

Returns: The construct as a stack element or undefined if it is not a stack element. Experimental.

func CfnRequestValidator_IsCfnResource

func CfnRequestValidator_IsCfnResource(construct constructs.IConstruct) *bool

Check whether the given construct is a CfnResource. Experimental.

func CfnRequestValidator_IsConstruct

func CfnRequestValidator_IsConstruct(x interface{}) *bool

Checks if `x` is a construct.

Returns: true if `x` is an object created from a class which extends `Construct`. Deprecated: use `x instanceof Construct` instead

func CfnResource_CFN_RESOURCE_TYPE_NAME

func CfnResource_CFN_RESOURCE_TYPE_NAME() *string

func CfnResource_IsCfnElement

func CfnResource_IsCfnElement(x interface{}) *bool

Returns `true` if a construct is a stack element (i.e. part of the synthesized cloudformation template).

Uses duck-typing instead of `instanceof` to allow stack elements from different versions of this library to be included in the same stack.

Returns: The construct as a stack element or undefined if it is not a stack element. Experimental.

func CfnResource_IsCfnResource

func CfnResource_IsCfnResource(construct constructs.IConstruct) *bool

Check whether the given construct is a CfnResource. Experimental.

func CfnResource_IsConstruct

func CfnResource_IsConstruct(x interface{}) *bool

Checks if `x` is a construct.

Returns: true if `x` is an object created from a class which extends `Construct`. Deprecated: use `x instanceof Construct` instead

func CfnRestApi_CFN_RESOURCE_TYPE_NAME

func CfnRestApi_CFN_RESOURCE_TYPE_NAME() *string

func CfnRestApi_IsCfnElement

func CfnRestApi_IsCfnElement(x interface{}) *bool

Returns `true` if a construct is a stack element (i.e. part of the synthesized cloudformation template).

Uses duck-typing instead of `instanceof` to allow stack elements from different versions of this library to be included in the same stack.

Returns: The construct as a stack element or undefined if it is not a stack element. Experimental.

func CfnRestApi_IsCfnResource

func CfnRestApi_IsCfnResource(construct constructs.IConstruct) *bool

Check whether the given construct is a CfnResource. Experimental.

func CfnRestApi_IsConstruct

func CfnRestApi_IsConstruct(x interface{}) *bool

Checks if `x` is a construct.

Returns: true if `x` is an object created from a class which extends `Construct`. Deprecated: use `x instanceof Construct` instead

func CfnStage_CFN_RESOURCE_TYPE_NAME

func CfnStage_CFN_RESOURCE_TYPE_NAME() *string

func CfnStage_IsCfnElement

func CfnStage_IsCfnElement(x interface{}) *bool

Returns `true` if a construct is a stack element (i.e. part of the synthesized cloudformation template).

Uses duck-typing instead of `instanceof` to allow stack elements from different versions of this library to be included in the same stack.

Returns: The construct as a stack element or undefined if it is not a stack element. Experimental.

func CfnStage_IsCfnResource

func CfnStage_IsCfnResource(construct constructs.IConstruct) *bool

Check whether the given construct is a CfnResource. Experimental.

func CfnStage_IsConstruct

func CfnStage_IsConstruct(x interface{}) *bool

Checks if `x` is a construct.

Returns: true if `x` is an object created from a class which extends `Construct`. Deprecated: use `x instanceof Construct` instead

func CfnUsagePlanKey_CFN_RESOURCE_TYPE_NAME

func CfnUsagePlanKey_CFN_RESOURCE_TYPE_NAME() *string

func CfnUsagePlanKey_IsCfnElement

func CfnUsagePlanKey_IsCfnElement(x interface{}) *bool

Returns `true` if a construct is a stack element (i.e. part of the synthesized cloudformation template).

Uses duck-typing instead of `instanceof` to allow stack elements from different versions of this library to be included in the same stack.

Returns: The construct as a stack element or undefined if it is not a stack element. Experimental.

func CfnUsagePlanKey_IsCfnResource

func CfnUsagePlanKey_IsCfnResource(construct constructs.IConstruct) *bool

Check whether the given construct is a CfnResource. Experimental.

func CfnUsagePlanKey_IsConstruct

func CfnUsagePlanKey_IsConstruct(x interface{}) *bool

Checks if `x` is a construct.

Returns: true if `x` is an object created from a class which extends `Construct`. Deprecated: use `x instanceof Construct` instead

func CfnUsagePlan_CFN_RESOURCE_TYPE_NAME

func CfnUsagePlan_CFN_RESOURCE_TYPE_NAME() *string

func CfnUsagePlan_IsCfnElement

func CfnUsagePlan_IsCfnElement(x interface{}) *bool

Returns `true` if a construct is a stack element (i.e. part of the synthesized cloudformation template).

Uses duck-typing instead of `instanceof` to allow stack elements from different versions of this library to be included in the same stack.

Returns: The construct as a stack element or undefined if it is not a stack element. Experimental.

func CfnUsagePlan_IsCfnResource

func CfnUsagePlan_IsCfnResource(construct constructs.IConstruct) *bool

Check whether the given construct is a CfnResource. Experimental.

func CfnUsagePlan_IsConstruct

func CfnUsagePlan_IsConstruct(x interface{}) *bool

Checks if `x` is a construct.

Returns: true if `x` is an object created from a class which extends `Construct`. Deprecated: use `x instanceof Construct` instead

func CfnVpcLink_CFN_RESOURCE_TYPE_NAME() *string
func CfnVpcLink_IsCfnElement(x interface{}) *bool

Returns `true` if a construct is a stack element (i.e. part of the synthesized cloudformation template).

Uses duck-typing instead of `instanceof` to allow stack elements from different versions of this library to be included in the same stack.

Returns: The construct as a stack element or undefined if it is not a stack element. Experimental.

func CfnVpcLink_IsCfnResource(construct constructs.IConstruct) *bool

Check whether the given construct is a CfnResource. Experimental.

func CfnVpcLink_IsConstruct(x interface{}) *bool

Checks if `x` is a construct.

Returns: true if `x` is an object created from a class which extends `Construct`. Deprecated: use `x instanceof Construct` instead

func CognitoUserPoolsAuthorizer_IsAuthorizer

func CognitoUserPoolsAuthorizer_IsAuthorizer(x interface{}) *bool

Return whether the given object is an Authorizer. Experimental.

func CognitoUserPoolsAuthorizer_IsConstruct

func CognitoUserPoolsAuthorizer_IsConstruct(x interface{}) *bool

Checks if `x` is a construct.

Returns: true if `x` is an object created from a class which extends `Construct`. Deprecated: use `x instanceof Construct` instead

func CognitoUserPoolsAuthorizer_IsResource

func CognitoUserPoolsAuthorizer_IsResource(construct constructs.IConstruct) *bool

Check whether the given construct is a Resource. Experimental.

func Cors_ALL_METHODS

func Cors_ALL_METHODS() *[]*string

func Cors_ALL_ORIGINS

func Cors_ALL_ORIGINS() *[]*string

func Cors_DEFAULT_HEADERS

func Cors_DEFAULT_HEADERS() *[]*string

func Deployment_IsConstruct

func Deployment_IsConstruct(x interface{}) *bool

Checks if `x` is a construct.

Returns: true if `x` is an object created from a class which extends `Construct`. Deprecated: use `x instanceof Construct` instead

func Deployment_IsResource

func Deployment_IsResource(construct constructs.IConstruct) *bool

Check whether the given construct is a Resource. Experimental.

func DomainName_IsConstruct

func DomainName_IsConstruct(x interface{}) *bool

Checks if `x` is a construct.

Returns: true if `x` is an object created from a class which extends `Construct`. Deprecated: use `x instanceof Construct` instead

func DomainName_IsResource

func DomainName_IsResource(construct constructs.IConstruct) *bool

Check whether the given construct is a Resource. Experimental.

func GatewayResponse_IsConstruct

func GatewayResponse_IsConstruct(x interface{}) *bool

Checks if `x` is a construct.

Returns: true if `x` is an object created from a class which extends `Construct`. Deprecated: use `x instanceof Construct` instead

func GatewayResponse_IsResource

func GatewayResponse_IsResource(construct constructs.IConstruct) *bool

Check whether the given construct is a Resource. Experimental.

func IdentitySource_Context

func IdentitySource_Context(context *string) *string

Provides a properly formatted request context identity source.

Returns: a request context identity source. Experimental.

func IdentitySource_Header

func IdentitySource_Header(headerName *string) *string

Provides a properly formatted header identity source.

Returns: a header identity source. Experimental.

func IdentitySource_QueryString

func IdentitySource_QueryString(queryString *string) *string

Provides a properly formatted query string identity source.

Returns: a query string identity source. Experimental.

func IdentitySource_StageVariable

func IdentitySource_StageVariable(stageVariable *string) *string

Provides a properly formatted API Gateway stage variable identity source.

Returns: an API Gateway stage variable identity source. Experimental.

func LambdaRestApi_IsConstruct

func LambdaRestApi_IsConstruct(x interface{}) *bool

Checks if `x` is a construct.

Returns: true if `x` is an object created from a class which extends `Construct`. Deprecated: use `x instanceof Construct` instead

func LambdaRestApi_IsResource

func LambdaRestApi_IsResource(construct constructs.IConstruct) *bool

Check whether the given construct is a Resource. Experimental.

func Method_IsConstruct

func Method_IsConstruct(x interface{}) *bool

Checks if `x` is a construct.

Returns: true if `x` is an object created from a class which extends `Construct`. Deprecated: use `x instanceof Construct` instead

func Method_IsResource

func Method_IsResource(construct constructs.IConstruct) *bool

Check whether the given construct is a Resource. Experimental.

func Model_IsConstruct

func Model_IsConstruct(x interface{}) *bool

Checks if `x` is a construct.

Returns: true if `x` is an object created from a class which extends `Construct`. Deprecated: use `x instanceof Construct` instead

func Model_IsResource

func Model_IsResource(construct constructs.IConstruct) *bool

Check whether the given construct is a Resource. Experimental.

func NewAccessLogField_Override

func NewAccessLogField_Override(a AccessLogField)

Experimental.

func NewApiDefinition_Override

func NewApiDefinition_Override(a ApiDefinition)

Experimental.

func NewApiKey_Override

func NewApiKey_Override(a ApiKey, scope constructs.Construct, id *string, props *ApiKeyProps)

Experimental.

func NewAssetApiDefinition_Override

func NewAssetApiDefinition_Override(a AssetApiDefinition, path *string, options *awss3assets.AssetOptions)

Experimental.

func NewAuthorizer_Override

func NewAuthorizer_Override(a Authorizer, scope constructs.Construct, id *string, props *awscdk.ResourceProps)

Experimental.

func NewAwsIntegration_Override

func NewAwsIntegration_Override(a AwsIntegration, props *AwsIntegrationProps)

Experimental.

func NewBasePathMapping_Override

func NewBasePathMapping_Override(b BasePathMapping, scope constructs.Construct, id *string, props *BasePathMappingProps)

Experimental.

func NewCfnAccount_Override

func NewCfnAccount_Override(c CfnAccount, scope constructs.Construct, id *string, props *CfnAccountProps)

Create a new `AWS::ApiGateway::Account`.

func NewCfnApiKey_Override

func NewCfnApiKey_Override(c CfnApiKey, scope constructs.Construct, id *string, props *CfnApiKeyProps)

Create a new `AWS::ApiGateway::ApiKey`.

func NewCfnAuthorizer_Override

func NewCfnAuthorizer_Override(c CfnAuthorizer, scope constructs.Construct, id *string, props *CfnAuthorizerProps)

Create a new `AWS::ApiGateway::Authorizer`.

func NewCfnBasePathMapping_Override

func NewCfnBasePathMapping_Override(c CfnBasePathMapping, scope constructs.Construct, id *string, props *CfnBasePathMappingProps)

Create a new `AWS::ApiGateway::BasePathMapping`.

func NewCfnClientCertificate_Override

func NewCfnClientCertificate_Override(c CfnClientCertificate, scope constructs.Construct, id *string, props *CfnClientCertificateProps)

Create a new `AWS::ApiGateway::ClientCertificate`.

func NewCfnDeployment_Override

func NewCfnDeployment_Override(c CfnDeployment, scope constructs.Construct, id *string, props *CfnDeploymentProps)

Create a new `AWS::ApiGateway::Deployment`.

func NewCfnDocumentationPart_Override

func NewCfnDocumentationPart_Override(c CfnDocumentationPart, scope constructs.Construct, id *string, props *CfnDocumentationPartProps)

Create a new `AWS::ApiGateway::DocumentationPart`.

func NewCfnDocumentationVersion_Override

func NewCfnDocumentationVersion_Override(c CfnDocumentationVersion, scope constructs.Construct, id *string, props *CfnDocumentationVersionProps)

Create a new `AWS::ApiGateway::DocumentationVersion`.

func NewCfnDomainName_Override

func NewCfnDomainName_Override(c CfnDomainName, scope constructs.Construct, id *string, props *CfnDomainNameProps)

Create a new `AWS::ApiGateway::DomainName`.

func NewCfnGatewayResponse_Override

func NewCfnGatewayResponse_Override(c CfnGatewayResponse, scope constructs.Construct, id *string, props *CfnGatewayResponseProps)

Create a new `AWS::ApiGateway::GatewayResponse`.

func NewCfnMethod_Override

func NewCfnMethod_Override(c CfnMethod, scope constructs.Construct, id *string, props *CfnMethodProps)

Create a new `AWS::ApiGateway::Method`.

func NewCfnModel_Override

func NewCfnModel_Override(c CfnModel, scope constructs.Construct, id *string, props *CfnModelProps)

Create a new `AWS::ApiGateway::Model`.

func NewCfnRequestValidator_Override

func NewCfnRequestValidator_Override(c CfnRequestValidator, scope constructs.Construct, id *string, props *CfnRequestValidatorProps)

Create a new `AWS::ApiGateway::RequestValidator`.

func NewCfnResource_Override

func NewCfnResource_Override(c CfnResource, scope constructs.Construct, id *string, props *CfnResourceProps)

Create a new `AWS::ApiGateway::Resource`.

func NewCfnRestApi_Override

func NewCfnRestApi_Override(c CfnRestApi, scope constructs.Construct, id *string, props *CfnRestApiProps)

Create a new `AWS::ApiGateway::RestApi`.

func NewCfnStage_Override

func NewCfnStage_Override(c CfnStage, scope constructs.Construct, id *string, props *CfnStageProps)

Create a new `AWS::ApiGateway::Stage`.

func NewCfnUsagePlanKey_Override

func NewCfnUsagePlanKey_Override(c CfnUsagePlanKey, scope constructs.Construct, id *string, props *CfnUsagePlanKeyProps)

Create a new `AWS::ApiGateway::UsagePlanKey`.

func NewCfnUsagePlan_Override

func NewCfnUsagePlan_Override(c CfnUsagePlan, scope constructs.Construct, id *string, props *CfnUsagePlanProps)

Create a new `AWS::ApiGateway::UsagePlan`.

func NewCfnVpcLink_Override(c CfnVpcLink, scope constructs.Construct, id *string, props *CfnVpcLinkProps)

Create a new `AWS::ApiGateway::VpcLink`.

func NewCognitoUserPoolsAuthorizer_Override

func NewCognitoUserPoolsAuthorizer_Override(c CognitoUserPoolsAuthorizer, scope constructs.Construct, id *string, props *CognitoUserPoolsAuthorizerProps)

Experimental.

func NewDeployment_Override

func NewDeployment_Override(d Deployment, scope constructs.Construct, id *string, props *DeploymentProps)

Experimental.

func NewDomainName_Override

func NewDomainName_Override(d DomainName, scope constructs.Construct, id *string, props *DomainNameProps)

Experimental.

func NewGatewayResponse_Override

func NewGatewayResponse_Override(g GatewayResponse, scope constructs.Construct, id *string, props *GatewayResponseProps)

Experimental.

func NewHttpIntegration_Override

func NewHttpIntegration_Override(h HttpIntegration, url *string, props *HttpIntegrationProps)

Experimental.

func NewIdentitySource_Override

func NewIdentitySource_Override(i IdentitySource)

Experimental.

func NewInlineApiDefinition_Override

func NewInlineApiDefinition_Override(i InlineApiDefinition, definition interface{})

Experimental.

func NewIntegration_Override

func NewIntegration_Override(i Integration, props *IntegrationProps)

Experimental.

func NewLambdaIntegration_Override

func NewLambdaIntegration_Override(l LambdaIntegration, handler awslambda.IFunction, options *LambdaIntegrationOptions)

Experimental.

func NewLambdaRestApi_Override

func NewLambdaRestApi_Override(l LambdaRestApi, scope constructs.Construct, id *string, props *LambdaRestApiProps)

Experimental.

func NewLogGroupLogDestination_Override

func NewLogGroupLogDestination_Override(l LogGroupLogDestination, logGroup awslogs.ILogGroup)

Experimental.

func NewMethod_Override

func NewMethod_Override(m Method, scope constructs.Construct, id *string, props *MethodProps)

Experimental.

func NewMockIntegration_Override

func NewMockIntegration_Override(m MockIntegration, options *IntegrationOptions)

Experimental.

func NewModel_Override

func NewModel_Override(m Model, scope constructs.Construct, id *string, props *ModelProps)

Experimental.

func NewProxyResource_Override

func NewProxyResource_Override(p ProxyResource, scope constructs.Construct, id *string, props *ProxyResourceProps)

Experimental.

func NewRateLimitedApiKey_Override

func NewRateLimitedApiKey_Override(r RateLimitedApiKey, scope constructs.Construct, id *string, props *RateLimitedApiKeyProps)

Experimental.

func NewRequestAuthorizer_Override

func NewRequestAuthorizer_Override(r RequestAuthorizer, scope constructs.Construct, id *string, props *RequestAuthorizerProps)

Experimental.

func NewRequestValidator_Override

func NewRequestValidator_Override(r RequestValidator, scope constructs.Construct, id *string, props *RequestValidatorProps)

Experimental.

func NewResourceBase_Override

func NewResourceBase_Override(r ResourceBase, scope constructs.Construct, id *string)

Experimental.

func NewResource_Override

func NewResource_Override(r Resource, scope constructs.Construct, id *string, props *ResourceProps)

Experimental.

func NewRestApiBase_Override

func NewRestApiBase_Override(r RestApiBase, scope constructs.Construct, id *string, props *RestApiBaseProps)

Experimental.

func NewRestApi_Override

func NewRestApi_Override(r RestApi, scope constructs.Construct, id *string, props *RestApiProps)

Experimental.

func NewS3ApiDefinition_Override

func NewS3ApiDefinition_Override(s S3ApiDefinition, bucket awss3.IBucket, key *string, objectVersion *string)

Experimental.

func NewSpecRestApi_Override

func NewSpecRestApi_Override(s SpecRestApi, scope constructs.Construct, id *string, props *SpecRestApiProps)

Experimental.

func NewStage_Override

func NewStage_Override(s Stage, scope constructs.Construct, id *string, props *StageProps)

Experimental.

func NewTokenAuthorizer_Override

func NewTokenAuthorizer_Override(t TokenAuthorizer, scope constructs.Construct, id *string, props *TokenAuthorizerProps)

Experimental.

func NewUsagePlan_Override

func NewUsagePlan_Override(u UsagePlan, scope constructs.Construct, id *string, props *UsagePlanProps)

Experimental.

func NewVpcLink_Override(v VpcLink, scope constructs.Construct, id *string, props *VpcLinkProps)

Experimental.

func ProxyResource_IsConstruct

func ProxyResource_IsConstruct(x interface{}) *bool

Checks if `x` is a construct.

Returns: true if `x` is an object created from a class which extends `Construct`. Deprecated: use `x instanceof Construct` instead

func ProxyResource_IsResource

func ProxyResource_IsResource(construct constructs.IConstruct) *bool

Check whether the given construct is a Resource. Experimental.

func RateLimitedApiKey_IsConstruct

func RateLimitedApiKey_IsConstruct(x interface{}) *bool

Checks if `x` is a construct.

Returns: true if `x` is an object created from a class which extends `Construct`. Deprecated: use `x instanceof Construct` instead

func RateLimitedApiKey_IsResource

func RateLimitedApiKey_IsResource(construct constructs.IConstruct) *bool

Check whether the given construct is a Resource. Experimental.

func RequestAuthorizer_IsAuthorizer

func RequestAuthorizer_IsAuthorizer(x interface{}) *bool

Return whether the given object is an Authorizer. Experimental.

func RequestAuthorizer_IsConstruct

func RequestAuthorizer_IsConstruct(x interface{}) *bool

Checks if `x` is a construct.

Returns: true if `x` is an object created from a class which extends `Construct`. Deprecated: use `x instanceof Construct` instead

func RequestAuthorizer_IsResource

func RequestAuthorizer_IsResource(construct constructs.IConstruct) *bool

Check whether the given construct is a Resource. Experimental.

func RequestValidator_IsConstruct

func RequestValidator_IsConstruct(x interface{}) *bool

Checks if `x` is a construct.

Returns: true if `x` is an object created from a class which extends `Construct`. Deprecated: use `x instanceof Construct` instead

func RequestValidator_IsResource

func RequestValidator_IsResource(construct constructs.IConstruct) *bool

Check whether the given construct is a Resource. Experimental.

func ResourceBase_IsConstruct

func ResourceBase_IsConstruct(x interface{}) *bool

Checks if `x` is a construct.

Returns: true if `x` is an object created from a class which extends `Construct`. Deprecated: use `x instanceof Construct` instead

func ResourceBase_IsResource

func ResourceBase_IsResource(construct constructs.IConstruct) *bool

Check whether the given construct is a Resource. Experimental.

func Resource_IsConstruct

func Resource_IsConstruct(x interface{}) *bool

Checks if `x` is a construct.

Returns: true if `x` is an object created from a class which extends `Construct`. Deprecated: use `x instanceof Construct` instead

func Resource_IsResource

func Resource_IsResource(construct constructs.IConstruct) *bool

Check whether the given construct is a Resource. Experimental.

func RestApiBase_IsConstruct

func RestApiBase_IsConstruct(x interface{}) *bool

Checks if `x` is a construct.

Returns: true if `x` is an object created from a class which extends `Construct`. Deprecated: use `x instanceof Construct` instead

func RestApiBase_IsResource

func RestApiBase_IsResource(construct constructs.IConstruct) *bool

Check whether the given construct is a Resource. Experimental.

func RestApi_IsConstruct

func RestApi_IsConstruct(x interface{}) *bool

Checks if `x` is a construct.

Returns: true if `x` is an object created from a class which extends `Construct`. Deprecated: use `x instanceof Construct` instead

func RestApi_IsResource

func RestApi_IsResource(construct constructs.IConstruct) *bool

Check whether the given construct is a Resource. Experimental.

func SpecRestApi_IsConstruct

func SpecRestApi_IsConstruct(x interface{}) *bool

Checks if `x` is a construct.

Returns: true if `x` is an object created from a class which extends `Construct`. Deprecated: use `x instanceof Construct` instead

func SpecRestApi_IsResource

func SpecRestApi_IsResource(construct constructs.IConstruct) *bool

Check whether the given construct is a Resource. Experimental.

func Stage_IsConstruct

func Stage_IsConstruct(x interface{}) *bool

Checks if `x` is a construct.

Returns: true if `x` is an object created from a class which extends `Construct`. Deprecated: use `x instanceof Construct` instead

func Stage_IsResource

func Stage_IsResource(construct constructs.IConstruct) *bool

Check whether the given construct is a Resource. Experimental.

func TokenAuthorizer_IsAuthorizer

func TokenAuthorizer_IsAuthorizer(x interface{}) *bool

Return whether the given object is an Authorizer. Experimental.

func TokenAuthorizer_IsConstruct

func TokenAuthorizer_IsConstruct(x interface{}) *bool

Checks if `x` is a construct.

Returns: true if `x` is an object created from a class which extends `Construct`. Deprecated: use `x instanceof Construct` instead

func TokenAuthorizer_IsResource

func TokenAuthorizer_IsResource(construct constructs.IConstruct) *bool

Check whether the given construct is a Resource. Experimental.

func UsagePlan_IsConstruct

func UsagePlan_IsConstruct(x interface{}) *bool

Checks if `x` is a construct.

Returns: true if `x` is an object created from a class which extends `Construct`. Deprecated: use `x instanceof Construct` instead

func UsagePlan_IsResource

func UsagePlan_IsResource(construct constructs.IConstruct) *bool

Check whether the given construct is a Resource. Experimental.

func VpcLink_IsConstruct(x interface{}) *bool

Checks if `x` is a construct.

Returns: true if `x` is an object created from a class which extends `Construct`. Deprecated: use `x instanceof Construct` instead

func VpcLink_IsResource(construct constructs.IConstruct) *bool

Check whether the given construct is a Resource. Experimental.

Types

type AccessLogDestinationConfig

type AccessLogDestinationConfig struct {
	// The Amazon Resource Name (ARN) of the destination resource.
	// Experimental.
	DestinationArn *string `json:"destinationArn"`
}

Options when binding a log destination to a RestApi Stage. Experimental.

type AccessLogField

type AccessLogField interface {
}

$context variables that can be used to customize access log pattern. Experimental.

func NewAccessLogField

func NewAccessLogField() AccessLogField

Experimental.

type AccessLogFormat

type AccessLogFormat interface {
	ToString() *string
}

factory methods for access log format. Experimental.

func AccessLogFormat_Clf

func AccessLogFormat_Clf() AccessLogFormat

Generate Common Log Format. Experimental.

func AccessLogFormat_Custom

func AccessLogFormat_Custom(format *string) AccessLogFormat

Custom log format.

You can create any log format string. You can easily get the $ context variable by using the methods of AccessLogField.

TODO: EXAMPLE

Experimental.

func AccessLogFormat_JsonWithStandardFields

func AccessLogFormat_JsonWithStandardFields(fields *JsonWithStandardFieldProps) AccessLogFormat

Access log will be produced in the JSON format with a set of fields most useful in the access log.

All fields are turned on by default with the option to turn off specific fields. Experimental.

type AddApiKeyOptions

type AddApiKeyOptions struct {
	// Override the CloudFormation logical id of the AWS::ApiGateway::UsagePlanKey resource.
	// Experimental.
	OverrideLogicalId *string `json:"overrideLogicalId"`
}

Options to the UsagePlan.addApiKey() method. Experimental.

type ApiDefinition

type ApiDefinition interface {
	Bind(scope constructs.Construct) *ApiDefinitionConfig
}

Represents an OpenAPI definition asset. Experimental.

type ApiDefinitionConfig

type ApiDefinitionConfig struct {
	// Inline specification (mutually exclusive with `s3Location`).
	// Experimental.
	InlineDefinition interface{} `json:"inlineDefinition"`
	// The location of the specification in S3 (mutually exclusive with `inlineDefinition`).
	// Experimental.
	S3Location *ApiDefinitionS3Location `json:"s3Location"`
}

Post-Binding Configuration for a CDK construct. Experimental.

type ApiDefinitionS3Location

type ApiDefinitionS3Location struct {
	// The S3 bucket.
	// Experimental.
	Bucket *string `json:"bucket"`
	// The S3 key.
	// Experimental.
	Key *string `json:"key"`
	// An optional version.
	// Experimental.
	Version *string `json:"version"`
}

S3 location of the API definition file. Experimental.

type ApiKey

type ApiKey interface {
	awscdk.Resource
	IApiKey
	Env() *awscdk.ResourceEnvironment
	KeyArn() *string
	KeyId() *string
	Node() constructs.Node
	PhysicalName() *string
	Stack() awscdk.Stack
	ApplyRemovalPolicy(policy awscdk.RemovalPolicy)
	GeneratePhysicalName() *string
	GetResourceArnAttribute(arnAttr *string, arnComponents *awscdk.ArnComponents) *string
	GetResourceNameAttribute(nameAttr *string) *string
	GrantRead(grantee awsiam.IGrantable) awsiam.Grant
	GrantReadWrite(grantee awsiam.IGrantable) awsiam.Grant
	GrantWrite(grantee awsiam.IGrantable) awsiam.Grant
	ToString() *string
}

An API Gateway ApiKey.

An ApiKey can be distributed to API clients that are executing requests for Method resources that require an Api Key. Experimental.

func NewApiKey

func NewApiKey(scope constructs.Construct, id *string, props *ApiKeyProps) ApiKey

Experimental.

type ApiKeyOptions

type ApiKeyOptions struct {
	// Adds a CORS preflight OPTIONS method to this resource and all child resources.
	//
	// You can add CORS at the resource-level using `addCorsPreflight`.
	// Experimental.
	DefaultCorsPreflightOptions *CorsOptions `json:"defaultCorsPreflightOptions"`
	// An integration to use as a default for all methods created within this API unless an integration is specified.
	// Experimental.
	DefaultIntegration Integration `json:"defaultIntegration"`
	// Method options to use as a default for all methods created within this API unless custom options are specified.
	// Experimental.
	DefaultMethodOptions *MethodOptions `json:"defaultMethodOptions"`
	// A name for the API key.
	//
	// If you don't specify a name, AWS CloudFormation generates a unique physical ID and uses that ID for the API key name.
	// Experimental.
	ApiKeyName *string `json:"apiKeyName"`
	// The value of the API key.
	//
	// Must be at least 20 characters long.
	// Experimental.
	Value *string `json:"value"`
}

The options for creating an API Key. Experimental.

type ApiKeyProps

type ApiKeyProps struct {
	// Adds a CORS preflight OPTIONS method to this resource and all child resources.
	//
	// You can add CORS at the resource-level using `addCorsPreflight`.
	// Experimental.
	DefaultCorsPreflightOptions *CorsOptions `json:"defaultCorsPreflightOptions"`
	// An integration to use as a default for all methods created within this API unless an integration is specified.
	// Experimental.
	DefaultIntegration Integration `json:"defaultIntegration"`
	// Method options to use as a default for all methods created within this API unless custom options are specified.
	// Experimental.
	DefaultMethodOptions *MethodOptions `json:"defaultMethodOptions"`
	// A name for the API key.
	//
	// If you don't specify a name, AWS CloudFormation generates a unique physical ID and uses that ID for the API key name.
	// Experimental.
	ApiKeyName *string `json:"apiKeyName"`
	// The value of the API key.
	//
	// Must be at least 20 characters long.
	// Experimental.
	Value *string `json:"value"`
	// An AWS Marketplace customer identifier to use when integrating with the AWS SaaS Marketplace.
	// Experimental.
	CustomerId *string `json:"customerId"`
	// A description of the purpose of the API key.
	// Experimental.
	Description *string `json:"description"`
	// Indicates whether the API key can be used by clients.
	// Experimental.
	Enabled *bool `json:"enabled"`
	// Specifies whether the key identifier is distinct from the created API key value.
	// Experimental.
	GenerateDistinctId *bool `json:"generateDistinctId"`
	// A list of resources this api key is associated with.
	// Experimental.
	Resources *[]IRestApi `json:"resources"`
}

ApiKey Properties. Experimental.

type ApiKeySourceType

type ApiKeySourceType string

Experimental.

const (
	ApiKeySourceType_HEADER     ApiKeySourceType = "HEADER"
	ApiKeySourceType_AUTHORIZER ApiKeySourceType = "AUTHORIZER"
)

type AssetApiDefinition

type AssetApiDefinition interface {
	ApiDefinition
	Bind(scope constructs.Construct) *ApiDefinitionConfig
}

OpenAPI specification from a local file. Experimental.

func ApiDefinition_FromAsset

func ApiDefinition_FromAsset(file *string, options *awss3assets.AssetOptions) AssetApiDefinition

Loads the API specification from a local disk asset. Experimental.

func AssetApiDefinition_FromAsset

func AssetApiDefinition_FromAsset(file *string, options *awss3assets.AssetOptions) AssetApiDefinition

Loads the API specification from a local disk asset. Experimental.

func InlineApiDefinition_FromAsset

func InlineApiDefinition_FromAsset(file *string, options *awss3assets.AssetOptions) AssetApiDefinition

Loads the API specification from a local disk asset. Experimental.

func NewAssetApiDefinition

func NewAssetApiDefinition(path *string, options *awss3assets.AssetOptions) AssetApiDefinition

Experimental.

func S3ApiDefinition_FromAsset

func S3ApiDefinition_FromAsset(file *string, options *awss3assets.AssetOptions) AssetApiDefinition

Loads the API specification from a local disk asset. Experimental.

type AuthorizationType

type AuthorizationType string

Experimental.

const (
	AuthorizationType_NONE    AuthorizationType = "NONE"
	AuthorizationType_IAM     AuthorizationType = "IAM"
	AuthorizationType_CUSTOM  AuthorizationType = "CUSTOM"
	AuthorizationType_COGNITO AuthorizationType = "COGNITO"
)

type Authorizer

type Authorizer interface {
	awscdk.Resource
	IAuthorizer
	AuthorizationType() AuthorizationType
	AuthorizerId() *string
	Env() *awscdk.ResourceEnvironment
	Node() constructs.Node
	PhysicalName() *string
	Stack() awscdk.Stack
	ApplyRemovalPolicy(policy awscdk.RemovalPolicy)
	GeneratePhysicalName() *string
	GetResourceArnAttribute(arnAttr *string, arnComponents *awscdk.ArnComponents) *string
	GetResourceNameAttribute(nameAttr *string) *string
	ToString() *string
}

Base class for all custom authorizers. Experimental.

type AwsIntegration

type AwsIntegration interface {
	Integration
	Bind(method Method) *IntegrationConfig
}

This type of integration lets an API expose AWS service actions.

It is intended for calling all AWS service actions, but is not recommended for calling a Lambda function, because the Lambda custom integration is a legacy technology. Experimental.

func NewAwsIntegration

func NewAwsIntegration(props *AwsIntegrationProps) AwsIntegration

Experimental.

type AwsIntegrationProps

type AwsIntegrationProps struct {
	// The name of the integrated AWS service (e.g. `s3`).
	// Experimental.
	Service *string `json:"service"`
	// The AWS action to perform in the integration.
	//
	// Use `actionParams` to specify key-value params for the action.
	//
	// Mutually exclusive with `path`.
	// Experimental.
	Action *string `json:"action"`
	// Parameters for the action.
	//
	// `action` must be set, and `path` must be undefined.
	// The action params will be URL encoded.
	// Experimental.
	ActionParameters *map[string]*string `json:"actionParameters"`
	// The integration's HTTP method type.
	// Experimental.
	IntegrationHttpMethod *string `json:"integrationHttpMethod"`
	// Integration options, such as content handling, request/response mapping, etc.
	// Experimental.
	Options *IntegrationOptions `json:"options"`
	// The path to use for path-base APIs.
	//
	// For example, for S3 GET, you can set path to `bucket/key`.
	// For lambda, you can set path to `2015-03-31/functions/${function-arn}/invocations`
	//
	// Mutually exclusive with the `action` options.
	// Experimental.
	Path *string `json:"path"`
	// Use AWS_PROXY integration.
	// Experimental.
	Proxy *bool `json:"proxy"`
	// The region of the integrated AWS service.
	// Experimental.
	Region *string `json:"region"`
	// A designated subdomain supported by certain AWS service for fast host-name lookup.
	// Experimental.
	Subdomain *string `json:"subdomain"`
}

Experimental.

type BasePathMapping

type BasePathMapping interface {
	awscdk.Resource
	Env() *awscdk.ResourceEnvironment
	Node() constructs.Node
	PhysicalName() *string
	Stack() awscdk.Stack
	ApplyRemovalPolicy(policy awscdk.RemovalPolicy)
	GeneratePhysicalName() *string
	GetResourceArnAttribute(arnAttr *string, arnComponents *awscdk.ArnComponents) *string
	GetResourceNameAttribute(nameAttr *string) *string
	ToString() *string
}

This resource creates a base path that clients who call your API must use in the invocation URL.

Unless you're importing a domain with `DomainName.fromDomainNameAttributes()`, you can use `DomainName.addBasePathMapping()` to define mappings. Experimental.

func NewBasePathMapping

func NewBasePathMapping(scope constructs.Construct, id *string, props *BasePathMappingProps) BasePathMapping

Experimental.

type BasePathMappingOptions

type BasePathMappingOptions struct {
	// The base path name that callers of the API must provide in the URL after the domain name (e.g. `example.com/base-path`). If you specify this property, it can't be an empty string.
	// Experimental.
	BasePath *string `json:"basePath"`
	// The Deployment stage of API [disable-awslint:ref-via-interface].
	// Experimental.
	Stage Stage `json:"stage"`
}

Experimental.

type BasePathMappingProps

type BasePathMappingProps struct {
	// The base path name that callers of the API must provide in the URL after the domain name (e.g. `example.com/base-path`). If you specify this property, it can't be an empty string.
	// Experimental.
	BasePath *string `json:"basePath"`
	// The Deployment stage of API [disable-awslint:ref-via-interface].
	// Experimental.
	Stage Stage `json:"stage"`
	// The DomainName to associate with this base path mapping.
	// Experimental.
	DomainName IDomainName `json:"domainName"`
	// The RestApi resource to target.
	// Experimental.
	RestApi IRestApi `json:"restApi"`
}

Experimental.

type CfnAccount

type CfnAccount interface {
	awscdk.CfnResource
	awscdk.IInspectable
	AttrId() *string
	CfnOptions() awscdk.ICfnResourceOptions
	CfnProperties() *map[string]interface{}
	CfnResourceType() *string
	CloudWatchRoleArn() *string
	SetCloudWatchRoleArn(val *string)
	CreationStack() *[]*string
	LogicalId() *string
	Node() constructs.Node
	Ref() *string
	Stack() awscdk.Stack
	UpdatedProperites() *map[string]interface{}
	AddDeletionOverride(path *string)
	AddDependsOn(target awscdk.CfnResource)
	AddMetadata(key *string, value interface{})
	AddOverride(path *string, value interface{})
	AddPropertyDeletionOverride(propertyPath *string)
	AddPropertyOverride(propertyPath *string, value interface{})
	ApplyRemovalPolicy(policy awscdk.RemovalPolicy, options *awscdk.RemovalPolicyOptions)
	GetAtt(attributeName *string) awscdk.Reference
	GetMetadata(key *string) interface{}
	Inspect(inspector awscdk.TreeInspector)
	OverrideLogicalId(newLogicalId *string)
	RenderProperties(props *map[string]interface{}) *map[string]interface{}
	ShouldSynthesize() *bool
	ToString() *string
	ValidateProperties(_properties interface{})
}

A CloudFormation `AWS::ApiGateway::Account`.

func NewCfnAccount

func NewCfnAccount(scope constructs.Construct, id *string, props *CfnAccountProps) CfnAccount

Create a new `AWS::ApiGateway::Account`.

type CfnAccountProps

type CfnAccountProps struct {
	// `AWS::ApiGateway::Account.CloudWatchRoleArn`.
	CloudWatchRoleArn *string `json:"cloudWatchRoleArn"`
}

Properties for defining a `AWS::ApiGateway::Account`.

type CfnApiKey

type CfnApiKey interface {
	awscdk.CfnResource
	awscdk.IInspectable
	AttrApiKeyId() *string
	CfnOptions() awscdk.ICfnResourceOptions
	CfnProperties() *map[string]interface{}
	CfnResourceType() *string
	CreationStack() *[]*string
	CustomerId() *string
	SetCustomerId(val *string)
	Description() *string
	SetDescription(val *string)
	Enabled() interface{}
	SetEnabled(val interface{})
	GenerateDistinctId() interface{}
	SetGenerateDistinctId(val interface{})
	LogicalId() *string
	Name() *string
	SetName(val *string)
	Node() constructs.Node
	Ref() *string
	Stack() awscdk.Stack
	StageKeys() interface{}
	SetStageKeys(val interface{})
	Tags() awscdk.TagManager
	UpdatedProperites() *map[string]interface{}
	Value() *string
	SetValue(val *string)
	AddDeletionOverride(path *string)
	AddDependsOn(target awscdk.CfnResource)
	AddMetadata(key *string, value interface{})
	AddOverride(path *string, value interface{})
	AddPropertyDeletionOverride(propertyPath *string)
	AddPropertyOverride(propertyPath *string, value interface{})
	ApplyRemovalPolicy(policy awscdk.RemovalPolicy, options *awscdk.RemovalPolicyOptions)
	GetAtt(attributeName *string) awscdk.Reference
	GetMetadata(key *string) interface{}
	Inspect(inspector awscdk.TreeInspector)
	OverrideLogicalId(newLogicalId *string)
	RenderProperties(props *map[string]interface{}) *map[string]interface{}
	ShouldSynthesize() *bool
	ToString() *string
	ValidateProperties(_properties interface{})
}

A CloudFormation `AWS::ApiGateway::ApiKey`.

func NewCfnApiKey

func NewCfnApiKey(scope constructs.Construct, id *string, props *CfnApiKeyProps) CfnApiKey

Create a new `AWS::ApiGateway::ApiKey`.

type CfnApiKeyProps

type CfnApiKeyProps struct {
	// `AWS::ApiGateway::ApiKey.CustomerId`.
	CustomerId *string `json:"customerId"`
	// `AWS::ApiGateway::ApiKey.Description`.
	Description *string `json:"description"`
	// `AWS::ApiGateway::ApiKey.Enabled`.
	Enabled interface{} `json:"enabled"`
	// `AWS::ApiGateway::ApiKey.GenerateDistinctId`.
	GenerateDistinctId interface{} `json:"generateDistinctId"`
	// `AWS::ApiGateway::ApiKey.Name`.
	Name *string `json:"name"`
	// `AWS::ApiGateway::ApiKey.StageKeys`.
	StageKeys interface{} `json:"stageKeys"`
	// `AWS::ApiGateway::ApiKey.Tags`.
	Tags *[]*awscdk.CfnTag `json:"tags"`
	// `AWS::ApiGateway::ApiKey.Value`.
	Value *string `json:"value"`
}

Properties for defining a `AWS::ApiGateway::ApiKey`.

type CfnApiKey_StageKeyProperty

type CfnApiKey_StageKeyProperty struct {
	// `CfnApiKey.StageKeyProperty.RestApiId`.
	RestApiId *string `json:"restApiId"`
	// `CfnApiKey.StageKeyProperty.StageName`.
	StageName *string `json:"stageName"`
}

type CfnAuthorizer

type CfnAuthorizer interface {
	awscdk.CfnResource
	awscdk.IInspectable
	AuthorizerCredentials() *string
	SetAuthorizerCredentials(val *string)
	AuthorizerResultTtlInSeconds() *float64
	SetAuthorizerResultTtlInSeconds(val *float64)
	AuthorizerUri() *string
	SetAuthorizerUri(val *string)
	AuthType() *string
	SetAuthType(val *string)
	CfnOptions() awscdk.ICfnResourceOptions
	CfnProperties() *map[string]interface{}
	CfnResourceType() *string
	CreationStack() *[]*string
	IdentitySource() *string
	SetIdentitySource(val *string)
	IdentityValidationExpression() *string
	SetIdentityValidationExpression(val *string)
	LogicalId() *string
	Name() *string
	SetName(val *string)
	Node() constructs.Node
	ProviderArns() *[]*string
	SetProviderArns(val *[]*string)
	Ref() *string
	RestApiId() *string
	SetRestApiId(val *string)
	Stack() awscdk.Stack
	Type() *string
	SetType(val *string)
	UpdatedProperites() *map[string]interface{}
	AddDeletionOverride(path *string)
	AddDependsOn(target awscdk.CfnResource)
	AddMetadata(key *string, value interface{})
	AddOverride(path *string, value interface{})
	AddPropertyDeletionOverride(propertyPath *string)
	AddPropertyOverride(propertyPath *string, value interface{})
	ApplyRemovalPolicy(policy awscdk.RemovalPolicy, options *awscdk.RemovalPolicyOptions)
	GetAtt(attributeName *string) awscdk.Reference
	GetMetadata(key *string) interface{}
	Inspect(inspector awscdk.TreeInspector)
	OverrideLogicalId(newLogicalId *string)
	RenderProperties(props *map[string]interface{}) *map[string]interface{}
	ShouldSynthesize() *bool
	ToString() *string
	ValidateProperties(_properties interface{})
}

A CloudFormation `AWS::ApiGateway::Authorizer`.

func NewCfnAuthorizer

func NewCfnAuthorizer(scope constructs.Construct, id *string, props *CfnAuthorizerProps) CfnAuthorizer

Create a new `AWS::ApiGateway::Authorizer`.

type CfnAuthorizerProps

type CfnAuthorizerProps struct {
	// `AWS::ApiGateway::Authorizer.RestApiId`.
	RestApiId *string `json:"restApiId"`
	// `AWS::ApiGateway::Authorizer.Type`.
	Type *string `json:"type"`
	// `AWS::ApiGateway::Authorizer.AuthorizerCredentials`.
	AuthorizerCredentials *string `json:"authorizerCredentials"`
	// `AWS::ApiGateway::Authorizer.AuthorizerResultTtlInSeconds`.
	AuthorizerResultTtlInSeconds *float64 `json:"authorizerResultTtlInSeconds"`
	// `AWS::ApiGateway::Authorizer.AuthorizerUri`.
	AuthorizerUri *string `json:"authorizerUri"`
	// `AWS::ApiGateway::Authorizer.AuthType`.
	AuthType *string `json:"authType"`
	// `AWS::ApiGateway::Authorizer.IdentitySource`.
	IdentitySource *string `json:"identitySource"`
	// `AWS::ApiGateway::Authorizer.IdentityValidationExpression`.
	IdentityValidationExpression *string `json:"identityValidationExpression"`
	// `AWS::ApiGateway::Authorizer.Name`.
	Name *string `json:"name"`
	// `AWS::ApiGateway::Authorizer.ProviderARNs`.
	ProviderArns *[]*string `json:"providerArns"`
}

Properties for defining a `AWS::ApiGateway::Authorizer`.

type CfnBasePathMapping

type CfnBasePathMapping interface {
	awscdk.CfnResource
	awscdk.IInspectable
	BasePath() *string
	SetBasePath(val *string)
	CfnOptions() awscdk.ICfnResourceOptions
	CfnProperties() *map[string]interface{}
	CfnResourceType() *string
	CreationStack() *[]*string
	DomainName() *string
	SetDomainName(val *string)
	LogicalId() *string
	Node() constructs.Node
	Ref() *string
	RestApiId() *string
	SetRestApiId(val *string)
	Stack() awscdk.Stack
	Stage() *string
	SetStage(val *string)
	UpdatedProperites() *map[string]interface{}
	AddDeletionOverride(path *string)
	AddDependsOn(target awscdk.CfnResource)
	AddMetadata(key *string, value interface{})
	AddOverride(path *string, value interface{})
	AddPropertyDeletionOverride(propertyPath *string)
	AddPropertyOverride(propertyPath *string, value interface{})
	ApplyRemovalPolicy(policy awscdk.RemovalPolicy, options *awscdk.RemovalPolicyOptions)
	GetAtt(attributeName *string) awscdk.Reference
	GetMetadata(key *string) interface{}
	Inspect(inspector awscdk.TreeInspector)
	OverrideLogicalId(newLogicalId *string)
	RenderProperties(props *map[string]interface{}) *map[string]interface{}
	ShouldSynthesize() *bool
	ToString() *string
	ValidateProperties(_properties interface{})
}

A CloudFormation `AWS::ApiGateway::BasePathMapping`.

func NewCfnBasePathMapping

func NewCfnBasePathMapping(scope constructs.Construct, id *string, props *CfnBasePathMappingProps) CfnBasePathMapping

Create a new `AWS::ApiGateway::BasePathMapping`.

type CfnBasePathMappingProps

type CfnBasePathMappingProps struct {
	// `AWS::ApiGateway::BasePathMapping.DomainName`.
	DomainName *string `json:"domainName"`
	// `AWS::ApiGateway::BasePathMapping.BasePath`.
	BasePath *string `json:"basePath"`
	// `AWS::ApiGateway::BasePathMapping.RestApiId`.
	RestApiId *string `json:"restApiId"`
	// `AWS::ApiGateway::BasePathMapping.Stage`.
	Stage *string `json:"stage"`
}

Properties for defining a `AWS::ApiGateway::BasePathMapping`.

type CfnClientCertificate

type CfnClientCertificate interface {
	awscdk.CfnResource
	awscdk.IInspectable
	AttrClientCertificateId() *string
	CfnOptions() awscdk.ICfnResourceOptions
	CfnProperties() *map[string]interface{}
	CfnResourceType() *string
	CreationStack() *[]*string
	Description() *string
	SetDescription(val *string)
	LogicalId() *string
	Node() constructs.Node
	Ref() *string
	Stack() awscdk.Stack
	Tags() awscdk.TagManager
	UpdatedProperites() *map[string]interface{}
	AddDeletionOverride(path *string)
	AddDependsOn(target awscdk.CfnResource)
	AddMetadata(key *string, value interface{})
	AddOverride(path *string, value interface{})
	AddPropertyDeletionOverride(propertyPath *string)
	AddPropertyOverride(propertyPath *string, value interface{})
	ApplyRemovalPolicy(policy awscdk.RemovalPolicy, options *awscdk.RemovalPolicyOptions)
	GetAtt(attributeName *string) awscdk.Reference
	GetMetadata(key *string) interface{}
	Inspect(inspector awscdk.TreeInspector)
	OverrideLogicalId(newLogicalId *string)
	RenderProperties(props *map[string]interface{}) *map[string]interface{}
	ShouldSynthesize() *bool
	ToString() *string
	ValidateProperties(_properties interface{})
}

A CloudFormation `AWS::ApiGateway::ClientCertificate`.

func NewCfnClientCertificate

func NewCfnClientCertificate(scope constructs.Construct, id *string, props *CfnClientCertificateProps) CfnClientCertificate

Create a new `AWS::ApiGateway::ClientCertificate`.

type CfnClientCertificateProps

type CfnClientCertificateProps struct {
	// `AWS::ApiGateway::ClientCertificate.Description`.
	Description *string `json:"description"`
	// `AWS::ApiGateway::ClientCertificate.Tags`.
	Tags *[]*awscdk.CfnTag `json:"tags"`
}

Properties for defining a `AWS::ApiGateway::ClientCertificate`.

type CfnDeployment

type CfnDeployment interface {
	awscdk.CfnResource
	awscdk.IInspectable
	CfnOptions() awscdk.ICfnResourceOptions
	CfnProperties() *map[string]interface{}
	CfnResourceType() *string
	CreationStack() *[]*string
	DeploymentCanarySettings() interface{}
	SetDeploymentCanarySettings(val interface{})
	Description() *string
	SetDescription(val *string)
	LogicalId() *string
	Node() constructs.Node
	Ref() *string
	RestApiId() *string
	SetRestApiId(val *string)
	Stack() awscdk.Stack
	StageDescription() interface{}
	SetStageDescription(val interface{})
	StageName() *string
	SetStageName(val *string)
	UpdatedProperites() *map[string]interface{}
	AddDeletionOverride(path *string)
	AddDependsOn(target awscdk.CfnResource)
	AddMetadata(key *string, value interface{})
	AddOverride(path *string, value interface{})
	AddPropertyDeletionOverride(propertyPath *string)
	AddPropertyOverride(propertyPath *string, value interface{})
	ApplyRemovalPolicy(policy awscdk.RemovalPolicy, options *awscdk.RemovalPolicyOptions)
	GetAtt(attributeName *string) awscdk.Reference
	GetMetadata(key *string) interface{}
	Inspect(inspector awscdk.TreeInspector)
	OverrideLogicalId(newLogicalId *string)
	RenderProperties(props *map[string]interface{}) *map[string]interface{}
	ShouldSynthesize() *bool
	ToString() *string
	ValidateProperties(_properties interface{})
}

A CloudFormation `AWS::ApiGateway::Deployment`.

func NewCfnDeployment

func NewCfnDeployment(scope constructs.Construct, id *string, props *CfnDeploymentProps) CfnDeployment

Create a new `AWS::ApiGateway::Deployment`.

type CfnDeploymentProps

type CfnDeploymentProps struct {
	// `AWS::ApiGateway::Deployment.RestApiId`.
	RestApiId *string `json:"restApiId"`
	// `AWS::ApiGateway::Deployment.DeploymentCanarySettings`.
	DeploymentCanarySettings interface{} `json:"deploymentCanarySettings"`
	// `AWS::ApiGateway::Deployment.Description`.
	Description *string `json:"description"`
	// `AWS::ApiGateway::Deployment.StageDescription`.
	StageDescription interface{} `json:"stageDescription"`
	// `AWS::ApiGateway::Deployment.StageName`.
	StageName *string `json:"stageName"`
}

Properties for defining a `AWS::ApiGateway::Deployment`.

type CfnDeployment_AccessLogSettingProperty

type CfnDeployment_AccessLogSettingProperty struct {
	// `CfnDeployment.AccessLogSettingProperty.DestinationArn`.
	DestinationArn *string `json:"destinationArn"`
	// `CfnDeployment.AccessLogSettingProperty.Format`.
	Format *string `json:"format"`
}

type CfnDeployment_CanarySettingProperty

type CfnDeployment_CanarySettingProperty struct {
	// `CfnDeployment.CanarySettingProperty.PercentTraffic`.
	PercentTraffic *float64 `json:"percentTraffic"`
	// `CfnDeployment.CanarySettingProperty.StageVariableOverrides`.
	StageVariableOverrides interface{} `json:"stageVariableOverrides"`
	// `CfnDeployment.CanarySettingProperty.UseStageCache`.
	UseStageCache interface{} `json:"useStageCache"`
}

type CfnDeployment_DeploymentCanarySettingsProperty

type CfnDeployment_DeploymentCanarySettingsProperty struct {
	// `CfnDeployment.DeploymentCanarySettingsProperty.PercentTraffic`.
	PercentTraffic *float64 `json:"percentTraffic"`
	// `CfnDeployment.DeploymentCanarySettingsProperty.StageVariableOverrides`.
	StageVariableOverrides interface{} `json:"stageVariableOverrides"`
	// `CfnDeployment.DeploymentCanarySettingsProperty.UseStageCache`.
	UseStageCache interface{} `json:"useStageCache"`
}

type CfnDeployment_MethodSettingProperty

type CfnDeployment_MethodSettingProperty struct {
	// `CfnDeployment.MethodSettingProperty.CacheDataEncrypted`.
	CacheDataEncrypted interface{} `json:"cacheDataEncrypted"`
	// `CfnDeployment.MethodSettingProperty.CacheTtlInSeconds`.
	CacheTtlInSeconds *float64 `json:"cacheTtlInSeconds"`
	// `CfnDeployment.MethodSettingProperty.CachingEnabled`.
	CachingEnabled interface{} `json:"cachingEnabled"`
	// `CfnDeployment.MethodSettingProperty.DataTraceEnabled`.
	DataTraceEnabled interface{} `json:"dataTraceEnabled"`
	// `CfnDeployment.MethodSettingProperty.HttpMethod`.
	HttpMethod *string `json:"httpMethod"`
	// `CfnDeployment.MethodSettingProperty.LoggingLevel`.
	LoggingLevel *string `json:"loggingLevel"`
	// `CfnDeployment.MethodSettingProperty.MetricsEnabled`.
	MetricsEnabled interface{} `json:"metricsEnabled"`
	// `CfnDeployment.MethodSettingProperty.ResourcePath`.
	ResourcePath *string `json:"resourcePath"`
	// `CfnDeployment.MethodSettingProperty.ThrottlingBurstLimit`.
	ThrottlingBurstLimit *float64 `json:"throttlingBurstLimit"`
	// `CfnDeployment.MethodSettingProperty.ThrottlingRateLimit`.
	ThrottlingRateLimit *float64 `json:"throttlingRateLimit"`
}

type CfnDeployment_StageDescriptionProperty

type CfnDeployment_StageDescriptionProperty struct {
	// `CfnDeployment.StageDescriptionProperty.AccessLogSetting`.
	AccessLogSetting interface{} `json:"accessLogSetting"`
	// `CfnDeployment.StageDescriptionProperty.CacheClusterEnabled`.
	CacheClusterEnabled interface{} `json:"cacheClusterEnabled"`
	// `CfnDeployment.StageDescriptionProperty.CacheClusterSize`.
	CacheClusterSize *string `json:"cacheClusterSize"`
	// `CfnDeployment.StageDescriptionProperty.CacheDataEncrypted`.
	CacheDataEncrypted interface{} `json:"cacheDataEncrypted"`
	// `CfnDeployment.StageDescriptionProperty.CacheTtlInSeconds`.
	CacheTtlInSeconds *float64 `json:"cacheTtlInSeconds"`
	// `CfnDeployment.StageDescriptionProperty.CachingEnabled`.
	CachingEnabled interface{} `json:"cachingEnabled"`
	// `CfnDeployment.StageDescriptionProperty.CanarySetting`.
	CanarySetting interface{} `json:"canarySetting"`
	// `CfnDeployment.StageDescriptionProperty.ClientCertificateId`.
	ClientCertificateId *string `json:"clientCertificateId"`
	// `CfnDeployment.StageDescriptionProperty.DataTraceEnabled`.
	DataTraceEnabled interface{} `json:"dataTraceEnabled"`
	// `CfnDeployment.StageDescriptionProperty.Description`.
	Description *string `json:"description"`
	// `CfnDeployment.StageDescriptionProperty.DocumentationVersion`.
	DocumentationVersion *string `json:"documentationVersion"`
	// `CfnDeployment.StageDescriptionProperty.LoggingLevel`.
	LoggingLevel *string `json:"loggingLevel"`
	// `CfnDeployment.StageDescriptionProperty.MethodSettings`.
	MethodSettings interface{} `json:"methodSettings"`
	// `CfnDeployment.StageDescriptionProperty.MetricsEnabled`.
	MetricsEnabled interface{} `json:"metricsEnabled"`
	// `CfnDeployment.StageDescriptionProperty.Tags`.
	Tags *[]*awscdk.CfnTag `json:"tags"`
	// `CfnDeployment.StageDescriptionProperty.ThrottlingBurstLimit`.
	ThrottlingBurstLimit *float64 `json:"throttlingBurstLimit"`
	// `CfnDeployment.StageDescriptionProperty.ThrottlingRateLimit`.
	ThrottlingRateLimit *float64 `json:"throttlingRateLimit"`
	// `CfnDeployment.StageDescriptionProperty.TracingEnabled`.
	TracingEnabled interface{} `json:"tracingEnabled"`
	// `CfnDeployment.StageDescriptionProperty.Variables`.
	Variables interface{} `json:"variables"`
}

type CfnDocumentationPart

type CfnDocumentationPart interface {
	awscdk.CfnResource
	awscdk.IInspectable
	CfnOptions() awscdk.ICfnResourceOptions
	CfnProperties() *map[string]interface{}
	CfnResourceType() *string
	CreationStack() *[]*string
	Location() interface{}
	SetLocation(val interface{})
	LogicalId() *string
	Node() constructs.Node
	Properties() *string
	SetProperties(val *string)
	Ref() *string
	RestApiId() *string
	SetRestApiId(val *string)
	Stack() awscdk.Stack
	UpdatedProperites() *map[string]interface{}
	AddDeletionOverride(path *string)
	AddDependsOn(target awscdk.CfnResource)
	AddMetadata(key *string, value interface{})
	AddOverride(path *string, value interface{})
	AddPropertyDeletionOverride(propertyPath *string)
	AddPropertyOverride(propertyPath *string, value interface{})
	ApplyRemovalPolicy(policy awscdk.RemovalPolicy, options *awscdk.RemovalPolicyOptions)
	GetAtt(attributeName *string) awscdk.Reference
	GetMetadata(key *string) interface{}
	Inspect(inspector awscdk.TreeInspector)
	OverrideLogicalId(newLogicalId *string)
	RenderProperties(props *map[string]interface{}) *map[string]interface{}
	ShouldSynthesize() *bool
	ToString() *string
	ValidateProperties(_properties interface{})
}

A CloudFormation `AWS::ApiGateway::DocumentationPart`.

func NewCfnDocumentationPart

func NewCfnDocumentationPart(scope constructs.Construct, id *string, props *CfnDocumentationPartProps) CfnDocumentationPart

Create a new `AWS::ApiGateway::DocumentationPart`.

type CfnDocumentationPartProps

type CfnDocumentationPartProps struct {
	// `AWS::ApiGateway::DocumentationPart.Location`.
	Location interface{} `json:"location"`
	// `AWS::ApiGateway::DocumentationPart.Properties`.
	Properties *string `json:"properties"`
	// `AWS::ApiGateway::DocumentationPart.RestApiId`.
	RestApiId *string `json:"restApiId"`
}

Properties for defining a `AWS::ApiGateway::DocumentationPart`.

type CfnDocumentationPart_LocationProperty

type CfnDocumentationPart_LocationProperty struct {
	// `CfnDocumentationPart.LocationProperty.Method`.
	Method *string `json:"method"`
	// `CfnDocumentationPart.LocationProperty.Name`.
	Name *string `json:"name"`
	// `CfnDocumentationPart.LocationProperty.Path`.
	Path *string `json:"path"`
	// `CfnDocumentationPart.LocationProperty.StatusCode`.
	StatusCode *string `json:"statusCode"`
	// `CfnDocumentationPart.LocationProperty.Type`.
	Type *string `json:"type"`
}

type CfnDocumentationVersion

type CfnDocumentationVersion interface {
	awscdk.CfnResource
	awscdk.IInspectable
	CfnOptions() awscdk.ICfnResourceOptions
	CfnProperties() *map[string]interface{}
	CfnResourceType() *string
	CreationStack() *[]*string
	Description() *string
	SetDescription(val *string)
	DocumentationVersion() *string
	SetDocumentationVersion(val *string)
	LogicalId() *string
	Node() constructs.Node
	Ref() *string
	RestApiId() *string
	SetRestApiId(val *string)
	Stack() awscdk.Stack
	UpdatedProperites() *map[string]interface{}
	AddDeletionOverride(path *string)
	AddDependsOn(target awscdk.CfnResource)
	AddMetadata(key *string, value interface{})
	AddOverride(path *string, value interface{})
	AddPropertyDeletionOverride(propertyPath *string)
	AddPropertyOverride(propertyPath *string, value interface{})
	ApplyRemovalPolicy(policy awscdk.RemovalPolicy, options *awscdk.RemovalPolicyOptions)
	GetAtt(attributeName *string) awscdk.Reference
	GetMetadata(key *string) interface{}
	Inspect(inspector awscdk.TreeInspector)
	OverrideLogicalId(newLogicalId *string)
	RenderProperties(props *map[string]interface{}) *map[string]interface{}
	ShouldSynthesize() *bool
	ToString() *string
	ValidateProperties(_properties interface{})
}

A CloudFormation `AWS::ApiGateway::DocumentationVersion`.

func NewCfnDocumentationVersion

func NewCfnDocumentationVersion(scope constructs.Construct, id *string, props *CfnDocumentationVersionProps) CfnDocumentationVersion

Create a new `AWS::ApiGateway::DocumentationVersion`.

type CfnDocumentationVersionProps

type CfnDocumentationVersionProps struct {
	// `AWS::ApiGateway::DocumentationVersion.DocumentationVersion`.
	DocumentationVersion *string `json:"documentationVersion"`
	// `AWS::ApiGateway::DocumentationVersion.RestApiId`.
	RestApiId *string `json:"restApiId"`
	// `AWS::ApiGateway::DocumentationVersion.Description`.
	Description *string `json:"description"`
}

Properties for defining a `AWS::ApiGateway::DocumentationVersion`.

type CfnDomainName

type CfnDomainName interface {
	awscdk.CfnResource
	awscdk.IInspectable
	AttrDistributionDomainName() *string
	AttrDistributionHostedZoneId() *string
	AttrRegionalDomainName() *string
	AttrRegionalHostedZoneId() *string
	CertificateArn() *string
	SetCertificateArn(val *string)
	CfnOptions() awscdk.ICfnResourceOptions
	CfnProperties() *map[string]interface{}
	CfnResourceType() *string
	CreationStack() *[]*string
	DomainName() *string
	SetDomainName(val *string)
	EndpointConfiguration() interface{}
	SetEndpointConfiguration(val interface{})
	LogicalId() *string
	MutualTlsAuthentication() interface{}
	SetMutualTlsAuthentication(val interface{})
	Node() constructs.Node
	OwnershipVerificationCertificateArn() *string
	SetOwnershipVerificationCertificateArn(val *string)
	Ref() *string
	RegionalCertificateArn() *string
	SetRegionalCertificateArn(val *string)
	SecurityPolicy() *string
	SetSecurityPolicy(val *string)
	Stack() awscdk.Stack
	Tags() awscdk.TagManager
	UpdatedProperites() *map[string]interface{}
	AddDeletionOverride(path *string)
	AddDependsOn(target awscdk.CfnResource)
	AddMetadata(key *string, value interface{})
	AddOverride(path *string, value interface{})
	AddPropertyDeletionOverride(propertyPath *string)
	AddPropertyOverride(propertyPath *string, value interface{})
	ApplyRemovalPolicy(policy awscdk.RemovalPolicy, options *awscdk.RemovalPolicyOptions)
	GetAtt(attributeName *string) awscdk.Reference
	GetMetadata(key *string) interface{}
	Inspect(inspector awscdk.TreeInspector)
	OverrideLogicalId(newLogicalId *string)
	RenderProperties(props *map[string]interface{}) *map[string]interface{}
	ShouldSynthesize() *bool
	ToString() *string
	ValidateProperties(_properties interface{})
}

A CloudFormation `AWS::ApiGateway::DomainName`.

func NewCfnDomainName

func NewCfnDomainName(scope constructs.Construct, id *string, props *CfnDomainNameProps) CfnDomainName

Create a new `AWS::ApiGateway::DomainName`.

type CfnDomainNameProps

type CfnDomainNameProps struct {
	// `AWS::ApiGateway::DomainName.CertificateArn`.
	CertificateArn *string `json:"certificateArn"`
	// `AWS::ApiGateway::DomainName.DomainName`.
	DomainName *string `json:"domainName"`
	// `AWS::ApiGateway::DomainName.EndpointConfiguration`.
	EndpointConfiguration interface{} `json:"endpointConfiguration"`
	// `AWS::ApiGateway::DomainName.MutualTlsAuthentication`.
	MutualTlsAuthentication interface{} `json:"mutualTlsAuthentication"`
	// `AWS::ApiGateway::DomainName.OwnershipVerificationCertificateArn`.
	OwnershipVerificationCertificateArn *string `json:"ownershipVerificationCertificateArn"`
	// `AWS::ApiGateway::DomainName.RegionalCertificateArn`.
	RegionalCertificateArn *string `json:"regionalCertificateArn"`
	// `AWS::ApiGateway::DomainName.SecurityPolicy`.
	SecurityPolicy *string `json:"securityPolicy"`
	// `AWS::ApiGateway::DomainName.Tags`.
	Tags *[]*awscdk.CfnTag `json:"tags"`
}

Properties for defining a `AWS::ApiGateway::DomainName`.

type CfnDomainName_EndpointConfigurationProperty

type CfnDomainName_EndpointConfigurationProperty struct {
	// `CfnDomainName.EndpointConfigurationProperty.Types`.
	Types *[]*string `json:"types"`
}

type CfnDomainName_MutualTlsAuthenticationProperty

type CfnDomainName_MutualTlsAuthenticationProperty struct {
	// `CfnDomainName.MutualTlsAuthenticationProperty.TruststoreUri`.
	TruststoreUri *string `json:"truststoreUri"`
	// `CfnDomainName.MutualTlsAuthenticationProperty.TruststoreVersion`.
	TruststoreVersion *string `json:"truststoreVersion"`
}

type CfnGatewayResponse

type CfnGatewayResponse interface {
	awscdk.CfnResource
	awscdk.IInspectable
	AttrId() *string
	CfnOptions() awscdk.ICfnResourceOptions
	CfnProperties() *map[string]interface{}
	CfnResourceType() *string
	CreationStack() *[]*string
	LogicalId() *string
	Node() constructs.Node
	Ref() *string
	ResponseParameters() interface{}
	SetResponseParameters(val interface{})
	ResponseTemplates() interface{}
	SetResponseTemplates(val interface{})
	ResponseType() *string
	SetResponseType(val *string)
	RestApiId() *string
	SetRestApiId(val *string)
	Stack() awscdk.Stack
	StatusCode() *string
	SetStatusCode(val *string)
	UpdatedProperites() *map[string]interface{}
	AddDeletionOverride(path *string)
	AddDependsOn(target awscdk.CfnResource)
	AddMetadata(key *string, value interface{})
	AddOverride(path *string, value interface{})
	AddPropertyDeletionOverride(propertyPath *string)
	AddPropertyOverride(propertyPath *string, value interface{})
	ApplyRemovalPolicy(policy awscdk.RemovalPolicy, options *awscdk.RemovalPolicyOptions)
	GetAtt(attributeName *string) awscdk.Reference
	GetMetadata(key *string) interface{}
	Inspect(inspector awscdk.TreeInspector)
	OverrideLogicalId(newLogicalId *string)
	RenderProperties(props *map[string]interface{}) *map[string]interface{}
	ShouldSynthesize() *bool
	ToString() *string
	ValidateProperties(_properties interface{})
}

A CloudFormation `AWS::ApiGateway::GatewayResponse`.

func NewCfnGatewayResponse

func NewCfnGatewayResponse(scope constructs.Construct, id *string, props *CfnGatewayResponseProps) CfnGatewayResponse

Create a new `AWS::ApiGateway::GatewayResponse`.

type CfnGatewayResponseProps

type CfnGatewayResponseProps struct {
	// `AWS::ApiGateway::GatewayResponse.ResponseType`.
	ResponseType *string `json:"responseType"`
	// `AWS::ApiGateway::GatewayResponse.RestApiId`.
	RestApiId *string `json:"restApiId"`
	// `AWS::ApiGateway::GatewayResponse.ResponseParameters`.
	ResponseParameters interface{} `json:"responseParameters"`
	// `AWS::ApiGateway::GatewayResponse.ResponseTemplates`.
	ResponseTemplates interface{} `json:"responseTemplates"`
	// `AWS::ApiGateway::GatewayResponse.StatusCode`.
	StatusCode *string `json:"statusCode"`
}

Properties for defining a `AWS::ApiGateway::GatewayResponse`.

type CfnMethod

type CfnMethod interface {
	awscdk.CfnResource
	awscdk.IInspectable
	ApiKeyRequired() interface{}
	SetApiKeyRequired(val interface{})
	AuthorizationScopes() *[]*string
	SetAuthorizationScopes(val *[]*string)
	AuthorizationType() *string
	SetAuthorizationType(val *string)
	AuthorizerId() *string
	SetAuthorizerId(val *string)
	CfnOptions() awscdk.ICfnResourceOptions
	CfnProperties() *map[string]interface{}
	CfnResourceType() *string
	CreationStack() *[]*string
	HttpMethod() *string
	SetHttpMethod(val *string)
	Integration() interface{}
	SetIntegration(val interface{})
	LogicalId() *string
	MethodResponses() interface{}
	SetMethodResponses(val interface{})
	Node() constructs.Node
	OperationName() *string
	SetOperationName(val *string)
	Ref() *string
	RequestModels() interface{}
	SetRequestModels(val interface{})
	RequestParameters() interface{}
	SetRequestParameters(val interface{})
	RequestValidatorId() *string
	SetRequestValidatorId(val *string)
	ResourceId() *string
	SetResourceId(val *string)
	RestApiId() *string
	SetRestApiId(val *string)
	Stack() awscdk.Stack
	UpdatedProperites() *map[string]interface{}
	AddDeletionOverride(path *string)
	AddDependsOn(target awscdk.CfnResource)
	AddMetadata(key *string, value interface{})
	AddOverride(path *string, value interface{})
	AddPropertyDeletionOverride(propertyPath *string)
	AddPropertyOverride(propertyPath *string, value interface{})
	ApplyRemovalPolicy(policy awscdk.RemovalPolicy, options *awscdk.RemovalPolicyOptions)
	GetAtt(attributeName *string) awscdk.Reference
	GetMetadata(key *string) interface{}
	Inspect(inspector awscdk.TreeInspector)
	OverrideLogicalId(newLogicalId *string)
	RenderProperties(props *map[string]interface{}) *map[string]interface{}
	ShouldSynthesize() *bool
	ToString() *string
	ValidateProperties(_properties interface{})
}

A CloudFormation `AWS::ApiGateway::Method`.

func NewCfnMethod

func NewCfnMethod(scope constructs.Construct, id *string, props *CfnMethodProps) CfnMethod

Create a new `AWS::ApiGateway::Method`.

type CfnMethodProps

type CfnMethodProps struct {
	// `AWS::ApiGateway::Method.HttpMethod`.
	HttpMethod *string `json:"httpMethod"`
	// `AWS::ApiGateway::Method.ResourceId`.
	ResourceId *string `json:"resourceId"`
	// `AWS::ApiGateway::Method.RestApiId`.
	RestApiId *string `json:"restApiId"`
	// `AWS::ApiGateway::Method.ApiKeyRequired`.
	ApiKeyRequired interface{} `json:"apiKeyRequired"`
	// `AWS::ApiGateway::Method.AuthorizationScopes`.
	AuthorizationScopes *[]*string `json:"authorizationScopes"`
	// `AWS::ApiGateway::Method.AuthorizationType`.
	AuthorizationType *string `json:"authorizationType"`
	// `AWS::ApiGateway::Method.AuthorizerId`.
	AuthorizerId *string `json:"authorizerId"`
	// `AWS::ApiGateway::Method.Integration`.
	Integration interface{} `json:"integration"`
	// `AWS::ApiGateway::Method.MethodResponses`.
	MethodResponses interface{} `json:"methodResponses"`
	// `AWS::ApiGateway::Method.OperationName`.
	OperationName *string `json:"operationName"`
	// `AWS::ApiGateway::Method.RequestModels`.
	RequestModels interface{} `json:"requestModels"`
	// `AWS::ApiGateway::Method.RequestParameters`.
	RequestParameters interface{} `json:"requestParameters"`
	// `AWS::ApiGateway::Method.RequestValidatorId`.
	RequestValidatorId *string `json:"requestValidatorId"`
}

Properties for defining a `AWS::ApiGateway::Method`.

type CfnMethod_IntegrationProperty

type CfnMethod_IntegrationProperty struct {
	// `CfnMethod.IntegrationProperty.CacheKeyParameters`.
	CacheKeyParameters *[]*string `json:"cacheKeyParameters"`
	// `CfnMethod.IntegrationProperty.CacheNamespace`.
	CacheNamespace *string `json:"cacheNamespace"`
	// `CfnMethod.IntegrationProperty.ConnectionId`.
	ConnectionId *string `json:"connectionId"`
	// `CfnMethod.IntegrationProperty.ConnectionType`.
	ConnectionType *string `json:"connectionType"`
	// `CfnMethod.IntegrationProperty.ContentHandling`.
	ContentHandling *string `json:"contentHandling"`
	// `CfnMethod.IntegrationProperty.Credentials`.
	Credentials *string `json:"credentials"`
	// `CfnMethod.IntegrationProperty.IntegrationHttpMethod`.
	IntegrationHttpMethod *string `json:"integrationHttpMethod"`
	// `CfnMethod.IntegrationProperty.IntegrationResponses`.
	IntegrationResponses interface{} `json:"integrationResponses"`
	// `CfnMethod.IntegrationProperty.PassthroughBehavior`.
	PassthroughBehavior *string `json:"passthroughBehavior"`
	// `CfnMethod.IntegrationProperty.RequestParameters`.
	RequestParameters interface{} `json:"requestParameters"`
	// `CfnMethod.IntegrationProperty.RequestTemplates`.
	RequestTemplates interface{} `json:"requestTemplates"`
	// `CfnMethod.IntegrationProperty.TimeoutInMillis`.
	TimeoutInMillis *float64 `json:"timeoutInMillis"`
	// `CfnMethod.IntegrationProperty.Type`.
	Type *string `json:"type"`
	// `CfnMethod.IntegrationProperty.Uri`.
	Uri *string `json:"uri"`
}

type CfnMethod_IntegrationResponseProperty

type CfnMethod_IntegrationResponseProperty struct {
	// `CfnMethod.IntegrationResponseProperty.StatusCode`.
	StatusCode *string `json:"statusCode"`
	// `CfnMethod.IntegrationResponseProperty.ContentHandling`.
	ContentHandling *string `json:"contentHandling"`
	// `CfnMethod.IntegrationResponseProperty.ResponseParameters`.
	ResponseParameters interface{} `json:"responseParameters"`
	// `CfnMethod.IntegrationResponseProperty.ResponseTemplates`.
	ResponseTemplates interface{} `json:"responseTemplates"`
	// `CfnMethod.IntegrationResponseProperty.SelectionPattern`.
	SelectionPattern *string `json:"selectionPattern"`
}

type CfnMethod_MethodResponseProperty

type CfnMethod_MethodResponseProperty struct {
	// `CfnMethod.MethodResponseProperty.StatusCode`.
	StatusCode *string `json:"statusCode"`
	// `CfnMethod.MethodResponseProperty.ResponseModels`.
	ResponseModels interface{} `json:"responseModels"`
	// `CfnMethod.MethodResponseProperty.ResponseParameters`.
	ResponseParameters interface{} `json:"responseParameters"`
}

type CfnModel

type CfnModel interface {
	awscdk.CfnResource
	awscdk.IInspectable
	CfnOptions() awscdk.ICfnResourceOptions
	CfnProperties() *map[string]interface{}
	CfnResourceType() *string
	ContentType() *string
	SetContentType(val *string)
	CreationStack() *[]*string
	Description() *string
	SetDescription(val *string)
	LogicalId() *string
	Name() *string
	SetName(val *string)
	Node() constructs.Node
	Ref() *string
	RestApiId() *string
	SetRestApiId(val *string)
	Schema() interface{}
	SetSchema(val interface{})
	Stack() awscdk.Stack
	UpdatedProperites() *map[string]interface{}
	AddDeletionOverride(path *string)
	AddDependsOn(target awscdk.CfnResource)
	AddMetadata(key *string, value interface{})
	AddOverride(path *string, value interface{})
	AddPropertyDeletionOverride(propertyPath *string)
	AddPropertyOverride(propertyPath *string, value interface{})
	ApplyRemovalPolicy(policy awscdk.RemovalPolicy, options *awscdk.RemovalPolicyOptions)
	GetAtt(attributeName *string) awscdk.Reference
	GetMetadata(key *string) interface{}
	Inspect(inspector awscdk.TreeInspector)
	OverrideLogicalId(newLogicalId *string)
	RenderProperties(props *map[string]interface{}) *map[string]interface{}
	ShouldSynthesize() *bool
	ToString() *string
	ValidateProperties(_properties interface{})
}

A CloudFormation `AWS::ApiGateway::Model`.

func NewCfnModel

func NewCfnModel(scope constructs.Construct, id *string, props *CfnModelProps) CfnModel

Create a new `AWS::ApiGateway::Model`.

type CfnModelProps

type CfnModelProps struct {
	// `AWS::ApiGateway::Model.RestApiId`.
	RestApiId *string `json:"restApiId"`
	// `AWS::ApiGateway::Model.ContentType`.
	ContentType *string `json:"contentType"`
	// `AWS::ApiGateway::Model.Description`.
	Description *string `json:"description"`
	// `AWS::ApiGateway::Model.Name`.
	Name *string `json:"name"`
	// `AWS::ApiGateway::Model.Schema`.
	Schema interface{} `json:"schema"`
}

Properties for defining a `AWS::ApiGateway::Model`.

type CfnRequestValidator

type CfnRequestValidator interface {
	awscdk.CfnResource
	awscdk.IInspectable
	AttrRequestValidatorId() *string
	CfnOptions() awscdk.ICfnResourceOptions
	CfnProperties() *map[string]interface{}
	CfnResourceType() *string
	CreationStack() *[]*string
	LogicalId() *string
	Name() *string
	SetName(val *string)
	Node() constructs.Node
	Ref() *string
	RestApiId() *string
	SetRestApiId(val *string)
	Stack() awscdk.Stack
	UpdatedProperites() *map[string]interface{}
	ValidateRequestBody() interface{}
	SetValidateRequestBody(val interface{})
	ValidateRequestParameters() interface{}
	SetValidateRequestParameters(val interface{})
	AddDeletionOverride(path *string)
	AddDependsOn(target awscdk.CfnResource)
	AddMetadata(key *string, value interface{})
	AddOverride(path *string, value interface{})
	AddPropertyDeletionOverride(propertyPath *string)
	AddPropertyOverride(propertyPath *string, value interface{})
	ApplyRemovalPolicy(policy awscdk.RemovalPolicy, options *awscdk.RemovalPolicyOptions)
	GetAtt(attributeName *string) awscdk.Reference
	GetMetadata(key *string) interface{}
	Inspect(inspector awscdk.TreeInspector)
	OverrideLogicalId(newLogicalId *string)
	RenderProperties(props *map[string]interface{}) *map[string]interface{}
	ShouldSynthesize() *bool
	ToString() *string
	ValidateProperties(_properties interface{})
}

A CloudFormation `AWS::ApiGateway::RequestValidator`.

func NewCfnRequestValidator

func NewCfnRequestValidator(scope constructs.Construct, id *string, props *CfnRequestValidatorProps) CfnRequestValidator

Create a new `AWS::ApiGateway::RequestValidator`.

type CfnRequestValidatorProps

type CfnRequestValidatorProps struct {
	// `AWS::ApiGateway::RequestValidator.RestApiId`.
	RestApiId *string `json:"restApiId"`
	// `AWS::ApiGateway::RequestValidator.Name`.
	Name *string `json:"name"`
	// `AWS::ApiGateway::RequestValidator.ValidateRequestBody`.
	ValidateRequestBody interface{} `json:"validateRequestBody"`
	// `AWS::ApiGateway::RequestValidator.ValidateRequestParameters`.
	ValidateRequestParameters interface{} `json:"validateRequestParameters"`
}

Properties for defining a `AWS::ApiGateway::RequestValidator`.

type CfnResource

type CfnResource interface {
	awscdk.CfnResource
	awscdk.IInspectable
	AttrResourceId() *string
	CfnOptions() awscdk.ICfnResourceOptions
	CfnProperties() *map[string]interface{}
	CfnResourceType() *string
	CreationStack() *[]*string
	LogicalId() *string
	Node() constructs.Node
	ParentId() *string
	SetParentId(val *string)
	PathPart() *string
	SetPathPart(val *string)
	Ref() *string
	RestApiId() *string
	SetRestApiId(val *string)
	Stack() awscdk.Stack
	UpdatedProperites() *map[string]interface{}
	AddDeletionOverride(path *string)
	AddDependsOn(target awscdk.CfnResource)
	AddMetadata(key *string, value interface{})
	AddOverride(path *string, value interface{})
	AddPropertyDeletionOverride(propertyPath *string)
	AddPropertyOverride(propertyPath *string, value interface{})
	ApplyRemovalPolicy(policy awscdk.RemovalPolicy, options *awscdk.RemovalPolicyOptions)
	GetAtt(attributeName *string) awscdk.Reference
	GetMetadata(key *string) interface{}
	Inspect(inspector awscdk.TreeInspector)
	OverrideLogicalId(newLogicalId *string)
	RenderProperties(props *map[string]interface{}) *map[string]interface{}
	ShouldSynthesize() *bool
	ToString() *string
	ValidateProperties(_properties interface{})
}

A CloudFormation `AWS::ApiGateway::Resource`.

func NewCfnResource

func NewCfnResource(scope constructs.Construct, id *string, props *CfnResourceProps) CfnResource

Create a new `AWS::ApiGateway::Resource`.

type CfnResourceProps

type CfnResourceProps struct {
	// `AWS::ApiGateway::Resource.ParentId`.
	ParentId *string `json:"parentId"`
	// `AWS::ApiGateway::Resource.PathPart`.
	PathPart *string `json:"pathPart"`
	// `AWS::ApiGateway::Resource.RestApiId`.
	RestApiId *string `json:"restApiId"`
}

Properties for defining a `AWS::ApiGateway::Resource`.

type CfnRestApi

type CfnRestApi interface {
	awscdk.CfnResource
	awscdk.IInspectable
	ApiKeySourceType() *string
	SetApiKeySourceType(val *string)
	AttrRootResourceId() *string
	BinaryMediaTypes() *[]*string
	SetBinaryMediaTypes(val *[]*string)
	Body() interface{}
	SetBody(val interface{})
	BodyS3Location() interface{}
	SetBodyS3Location(val interface{})
	CfnOptions() awscdk.ICfnResourceOptions
	CfnProperties() *map[string]interface{}
	CfnResourceType() *string
	CloneFrom() *string
	SetCloneFrom(val *string)
	CreationStack() *[]*string
	Description() *string
	SetDescription(val *string)
	DisableExecuteApiEndpoint() interface{}
	SetDisableExecuteApiEndpoint(val interface{})
	EndpointConfiguration() interface{}
	SetEndpointConfiguration(val interface{})
	FailOnWarnings() interface{}
	SetFailOnWarnings(val interface{})
	LogicalId() *string
	MinimumCompressionSize() *float64
	SetMinimumCompressionSize(val *float64)
	Mode() *string
	SetMode(val *string)
	Name() *string
	SetName(val *string)
	Node() constructs.Node
	Parameters() interface{}
	SetParameters(val interface{})
	Policy() interface{}
	SetPolicy(val interface{})
	Ref() *string
	Stack() awscdk.Stack
	Tags() awscdk.TagManager
	UpdatedProperites() *map[string]interface{}
	AddDeletionOverride(path *string)
	AddDependsOn(target awscdk.CfnResource)
	AddMetadata(key *string, value interface{})
	AddOverride(path *string, value interface{})
	AddPropertyDeletionOverride(propertyPath *string)
	AddPropertyOverride(propertyPath *string, value interface{})
	ApplyRemovalPolicy(policy awscdk.RemovalPolicy, options *awscdk.RemovalPolicyOptions)
	GetAtt(attributeName *string) awscdk.Reference
	GetMetadata(key *string) interface{}
	Inspect(inspector awscdk.TreeInspector)
	OverrideLogicalId(newLogicalId *string)
	RenderProperties(props *map[string]interface{}) *map[string]interface{}
	ShouldSynthesize() *bool
	ToString() *string
	ValidateProperties(_properties interface{})
}

A CloudFormation `AWS::ApiGateway::RestApi`.

func NewCfnRestApi

func NewCfnRestApi(scope constructs.Construct, id *string, props *CfnRestApiProps) CfnRestApi

Create a new `AWS::ApiGateway::RestApi`.

type CfnRestApiProps

type CfnRestApiProps struct {
	// `AWS::ApiGateway::RestApi.ApiKeySourceType`.
	ApiKeySourceType *string `json:"apiKeySourceType"`
	// `AWS::ApiGateway::RestApi.BinaryMediaTypes`.
	BinaryMediaTypes *[]*string `json:"binaryMediaTypes"`
	// `AWS::ApiGateway::RestApi.Body`.
	Body interface{} `json:"body"`
	// `AWS::ApiGateway::RestApi.BodyS3Location`.
	BodyS3Location interface{} `json:"bodyS3Location"`
	// `AWS::ApiGateway::RestApi.CloneFrom`.
	CloneFrom *string `json:"cloneFrom"`
	// `AWS::ApiGateway::RestApi.Description`.
	Description *string `json:"description"`
	// `AWS::ApiGateway::RestApi.DisableExecuteApiEndpoint`.
	DisableExecuteApiEndpoint interface{} `json:"disableExecuteApiEndpoint"`
	// `AWS::ApiGateway::RestApi.EndpointConfiguration`.
	EndpointConfiguration interface{} `json:"endpointConfiguration"`
	// `AWS::ApiGateway::RestApi.FailOnWarnings`.
	FailOnWarnings interface{} `json:"failOnWarnings"`
	// `AWS::ApiGateway::RestApi.MinimumCompressionSize`.
	MinimumCompressionSize *float64 `json:"minimumCompressionSize"`
	// `AWS::ApiGateway::RestApi.Mode`.
	Mode *string `json:"mode"`
	// `AWS::ApiGateway::RestApi.Name`.
	Name *string `json:"name"`
	// `AWS::ApiGateway::RestApi.Parameters`.
	Parameters interface{} `json:"parameters"`
	// `AWS::ApiGateway::RestApi.Policy`.
	Policy interface{} `json:"policy"`
	// `AWS::ApiGateway::RestApi.Tags`.
	Tags *[]*awscdk.CfnTag `json:"tags"`
}

Properties for defining a `AWS::ApiGateway::RestApi`.

type CfnRestApi_EndpointConfigurationProperty

type CfnRestApi_EndpointConfigurationProperty struct {
	// `CfnRestApi.EndpointConfigurationProperty.Types`.
	Types *[]*string `json:"types"`
	// `CfnRestApi.EndpointConfigurationProperty.VpcEndpointIds`.
	VpcEndpointIds *[]*string `json:"vpcEndpointIds"`
}

type CfnRestApi_S3LocationProperty

type CfnRestApi_S3LocationProperty struct {
	// `CfnRestApi.S3LocationProperty.Bucket`.
	Bucket *string `json:"bucket"`
	// `CfnRestApi.S3LocationProperty.ETag`.
	ETag *string `json:"eTag"`
	// `CfnRestApi.S3LocationProperty.Key`.
	Key *string `json:"key"`
	// `CfnRestApi.S3LocationProperty.Version`.
	Version *string `json:"version"`
}

type CfnStage

type CfnStage interface {
	awscdk.CfnResource
	awscdk.IInspectable
	AccessLogSetting() interface{}
	SetAccessLogSetting(val interface{})
	CacheClusterEnabled() interface{}
	SetCacheClusterEnabled(val interface{})
	CacheClusterSize() *string
	SetCacheClusterSize(val *string)
	CanarySetting() interface{}
	SetCanarySetting(val interface{})
	CfnOptions() awscdk.ICfnResourceOptions
	CfnProperties() *map[string]interface{}
	CfnResourceType() *string
	ClientCertificateId() *string
	SetClientCertificateId(val *string)
	CreationStack() *[]*string
	DeploymentId() *string
	SetDeploymentId(val *string)
	Description() *string
	SetDescription(val *string)
	DocumentationVersion() *string
	SetDocumentationVersion(val *string)
	LogicalId() *string
	MethodSettings() interface{}
	SetMethodSettings(val interface{})
	Node() constructs.Node
	Ref() *string
	RestApiId() *string
	SetRestApiId(val *string)
	Stack() awscdk.Stack
	StageName() *string
	SetStageName(val *string)
	Tags() awscdk.TagManager
	TracingEnabled() interface{}
	SetTracingEnabled(val interface{})
	UpdatedProperites() *map[string]interface{}
	Variables() interface{}
	SetVariables(val interface{})
	AddDeletionOverride(path *string)
	AddDependsOn(target awscdk.CfnResource)
	AddMetadata(key *string, value interface{})
	AddOverride(path *string, value interface{})
	AddPropertyDeletionOverride(propertyPath *string)
	AddPropertyOverride(propertyPath *string, value interface{})
	ApplyRemovalPolicy(policy awscdk.RemovalPolicy, options *awscdk.RemovalPolicyOptions)
	GetAtt(attributeName *string) awscdk.Reference
	GetMetadata(key *string) interface{}
	Inspect(inspector awscdk.TreeInspector)
	OverrideLogicalId(newLogicalId *string)
	RenderProperties(props *map[string]interface{}) *map[string]interface{}
	ShouldSynthesize() *bool
	ToString() *string
	ValidateProperties(_properties interface{})
}

A CloudFormation `AWS::ApiGateway::Stage`.

func NewCfnStage

func NewCfnStage(scope constructs.Construct, id *string, props *CfnStageProps) CfnStage

Create a new `AWS::ApiGateway::Stage`.

type CfnStageProps

type CfnStageProps struct {
	// `AWS::ApiGateway::Stage.RestApiId`.
	RestApiId *string `json:"restApiId"`
	// `AWS::ApiGateway::Stage.AccessLogSetting`.
	AccessLogSetting interface{} `json:"accessLogSetting"`
	// `AWS::ApiGateway::Stage.CacheClusterEnabled`.
	CacheClusterEnabled interface{} `json:"cacheClusterEnabled"`
	// `AWS::ApiGateway::Stage.CacheClusterSize`.
	CacheClusterSize *string `json:"cacheClusterSize"`
	// `AWS::ApiGateway::Stage.CanarySetting`.
	CanarySetting interface{} `json:"canarySetting"`
	// `AWS::ApiGateway::Stage.ClientCertificateId`.
	ClientCertificateId *string `json:"clientCertificateId"`
	// `AWS::ApiGateway::Stage.DeploymentId`.
	DeploymentId *string `json:"deploymentId"`
	// `AWS::ApiGateway::Stage.Description`.
	Description *string `json:"description"`
	// `AWS::ApiGateway::Stage.DocumentationVersion`.
	DocumentationVersion *string `json:"documentationVersion"`
	// `AWS::ApiGateway::Stage.MethodSettings`.
	MethodSettings interface{} `json:"methodSettings"`
	// `AWS::ApiGateway::Stage.StageName`.
	StageName *string `json:"stageName"`
	// `AWS::ApiGateway::Stage.Tags`.
	Tags *[]*awscdk.CfnTag `json:"tags"`
	// `AWS::ApiGateway::Stage.TracingEnabled`.
	TracingEnabled interface{} `json:"tracingEnabled"`
	// `AWS::ApiGateway::Stage.Variables`.
	Variables interface{} `json:"variables"`
}

Properties for defining a `AWS::ApiGateway::Stage`.

type CfnStage_AccessLogSettingProperty

type CfnStage_AccessLogSettingProperty struct {
	// `CfnStage.AccessLogSettingProperty.DestinationArn`.
	DestinationArn *string `json:"destinationArn"`
	// `CfnStage.AccessLogSettingProperty.Format`.
	Format *string `json:"format"`
}

type CfnStage_CanarySettingProperty

type CfnStage_CanarySettingProperty struct {
	// `CfnStage.CanarySettingProperty.DeploymentId`.
	DeploymentId *string `json:"deploymentId"`
	// `CfnStage.CanarySettingProperty.PercentTraffic`.
	PercentTraffic *float64 `json:"percentTraffic"`
	// `CfnStage.CanarySettingProperty.StageVariableOverrides`.
	StageVariableOverrides interface{} `json:"stageVariableOverrides"`
	// `CfnStage.CanarySettingProperty.UseStageCache`.
	UseStageCache interface{} `json:"useStageCache"`
}

type CfnStage_MethodSettingProperty

type CfnStage_MethodSettingProperty struct {
	// `CfnStage.MethodSettingProperty.CacheDataEncrypted`.
	CacheDataEncrypted interface{} `json:"cacheDataEncrypted"`
	// `CfnStage.MethodSettingProperty.CacheTtlInSeconds`.
	CacheTtlInSeconds *float64 `json:"cacheTtlInSeconds"`
	// `CfnStage.MethodSettingProperty.CachingEnabled`.
	CachingEnabled interface{} `json:"cachingEnabled"`
	// `CfnStage.MethodSettingProperty.DataTraceEnabled`.
	DataTraceEnabled interface{} `json:"dataTraceEnabled"`
	// `CfnStage.MethodSettingProperty.HttpMethod`.
	HttpMethod *string `json:"httpMethod"`
	// `CfnStage.MethodSettingProperty.LoggingLevel`.
	LoggingLevel *string `json:"loggingLevel"`
	// `CfnStage.MethodSettingProperty.MetricsEnabled`.
	MetricsEnabled interface{} `json:"metricsEnabled"`
	// `CfnStage.MethodSettingProperty.ResourcePath`.
	ResourcePath *string `json:"resourcePath"`
	// `CfnStage.MethodSettingProperty.ThrottlingBurstLimit`.
	ThrottlingBurstLimit *float64 `json:"throttlingBurstLimit"`
	// `CfnStage.MethodSettingProperty.ThrottlingRateLimit`.
	ThrottlingRateLimit *float64 `json:"throttlingRateLimit"`
}

type CfnUsagePlan

type CfnUsagePlan interface {
	awscdk.CfnResource
	awscdk.IInspectable
	ApiStages() interface{}
	SetApiStages(val interface{})
	AttrId() *string
	CfnOptions() awscdk.ICfnResourceOptions
	CfnProperties() *map[string]interface{}
	CfnResourceType() *string
	CreationStack() *[]*string
	Description() *string
	SetDescription(val *string)
	LogicalId() *string
	Node() constructs.Node
	Quota() interface{}
	SetQuota(val interface{})
	Ref() *string
	Stack() awscdk.Stack
	Tags() awscdk.TagManager
	Throttle() interface{}
	SetThrottle(val interface{})
	UpdatedProperites() *map[string]interface{}
	UsagePlanName() *string
	SetUsagePlanName(val *string)
	AddDeletionOverride(path *string)
	AddDependsOn(target awscdk.CfnResource)
	AddMetadata(key *string, value interface{})
	AddOverride(path *string, value interface{})
	AddPropertyDeletionOverride(propertyPath *string)
	AddPropertyOverride(propertyPath *string, value interface{})
	ApplyRemovalPolicy(policy awscdk.RemovalPolicy, options *awscdk.RemovalPolicyOptions)
	GetAtt(attributeName *string) awscdk.Reference
	GetMetadata(key *string) interface{}
	Inspect(inspector awscdk.TreeInspector)
	OverrideLogicalId(newLogicalId *string)
	RenderProperties(props *map[string]interface{}) *map[string]interface{}
	ShouldSynthesize() *bool
	ToString() *string
	ValidateProperties(_properties interface{})
}

A CloudFormation `AWS::ApiGateway::UsagePlan`.

func NewCfnUsagePlan

func NewCfnUsagePlan(scope constructs.Construct, id *string, props *CfnUsagePlanProps) CfnUsagePlan

Create a new `AWS::ApiGateway::UsagePlan`.

type CfnUsagePlanKey

type CfnUsagePlanKey interface {
	awscdk.CfnResource
	awscdk.IInspectable
	AttrId() *string
	CfnOptions() awscdk.ICfnResourceOptions
	CfnProperties() *map[string]interface{}
	CfnResourceType() *string
	CreationStack() *[]*string
	KeyId() *string
	SetKeyId(val *string)
	KeyType() *string
	SetKeyType(val *string)
	LogicalId() *string
	Node() constructs.Node
	Ref() *string
	Stack() awscdk.Stack
	UpdatedProperites() *map[string]interface{}
	UsagePlanId() *string
	SetUsagePlanId(val *string)
	AddDeletionOverride(path *string)
	AddDependsOn(target awscdk.CfnResource)
	AddMetadata(key *string, value interface{})
	AddOverride(path *string, value interface{})
	AddPropertyDeletionOverride(propertyPath *string)
	AddPropertyOverride(propertyPath *string, value interface{})
	ApplyRemovalPolicy(policy awscdk.RemovalPolicy, options *awscdk.RemovalPolicyOptions)
	GetAtt(attributeName *string) awscdk.Reference
	GetMetadata(key *string) interface{}
	Inspect(inspector awscdk.TreeInspector)
	OverrideLogicalId(newLogicalId *string)
	RenderProperties(props *map[string]interface{}) *map[string]interface{}
	ShouldSynthesize() *bool
	ToString() *string
	ValidateProperties(_properties interface{})
}

A CloudFormation `AWS::ApiGateway::UsagePlanKey`.

func NewCfnUsagePlanKey

func NewCfnUsagePlanKey(scope constructs.Construct, id *string, props *CfnUsagePlanKeyProps) CfnUsagePlanKey

Create a new `AWS::ApiGateway::UsagePlanKey`.

type CfnUsagePlanKeyProps

type CfnUsagePlanKeyProps struct {
	// `AWS::ApiGateway::UsagePlanKey.KeyId`.
	KeyId *string `json:"keyId"`
	// `AWS::ApiGateway::UsagePlanKey.KeyType`.
	KeyType *string `json:"keyType"`
	// `AWS::ApiGateway::UsagePlanKey.UsagePlanId`.
	UsagePlanId *string `json:"usagePlanId"`
}

Properties for defining a `AWS::ApiGateway::UsagePlanKey`.

type CfnUsagePlanProps

type CfnUsagePlanProps struct {
	// `AWS::ApiGateway::UsagePlan.ApiStages`.
	ApiStages interface{} `json:"apiStages"`
	// `AWS::ApiGateway::UsagePlan.Description`.
	Description *string `json:"description"`
	// `AWS::ApiGateway::UsagePlan.Quota`.
	Quota interface{} `json:"quota"`
	// `AWS::ApiGateway::UsagePlan.Tags`.
	Tags *[]*awscdk.CfnTag `json:"tags"`
	// `AWS::ApiGateway::UsagePlan.Throttle`.
	Throttle interface{} `json:"throttle"`
	// `AWS::ApiGateway::UsagePlan.UsagePlanName`.
	UsagePlanName *string `json:"usagePlanName"`
}

Properties for defining a `AWS::ApiGateway::UsagePlan`.

type CfnUsagePlan_ApiStageProperty

type CfnUsagePlan_ApiStageProperty struct {
	// `CfnUsagePlan.ApiStageProperty.ApiId`.
	ApiId *string `json:"apiId"`
	// `CfnUsagePlan.ApiStageProperty.Stage`.
	Stage *string `json:"stage"`
	// `CfnUsagePlan.ApiStageProperty.Throttle`.
	Throttle interface{} `json:"throttle"`
}

type CfnUsagePlan_QuotaSettingsProperty

type CfnUsagePlan_QuotaSettingsProperty struct {
	// `CfnUsagePlan.QuotaSettingsProperty.Limit`.
	Limit *float64 `json:"limit"`
	// `CfnUsagePlan.QuotaSettingsProperty.Offset`.
	Offset *float64 `json:"offset"`
	// `CfnUsagePlan.QuotaSettingsProperty.Period`.
	Period *string `json:"period"`
}

type CfnUsagePlan_ThrottleSettingsProperty

type CfnUsagePlan_ThrottleSettingsProperty struct {
	// `CfnUsagePlan.ThrottleSettingsProperty.BurstLimit`.
	BurstLimit *float64 `json:"burstLimit"`
	// `CfnUsagePlan.ThrottleSettingsProperty.RateLimit`.
	RateLimit *float64 `json:"rateLimit"`
}
type CfnVpcLink interface {
	awscdk.CfnResource
	awscdk.IInspectable
	CfnOptions() awscdk.ICfnResourceOptions
	CfnProperties() *map[string]interface{}
	CfnResourceType() *string
	CreationStack() *[]*string
	Description() *string
	SetDescription(val *string)
	LogicalId() *string
	Name() *string
	SetName(val *string)
	Node() constructs.Node
	Ref() *string
	Stack() awscdk.Stack
	TargetArns() *[]*string
	SetTargetArns(val *[]*string)
	UpdatedProperites() *map[string]interface{}
	AddDeletionOverride(path *string)
	AddDependsOn(target awscdk.CfnResource)
	AddMetadata(key *string, value interface{})
	AddOverride(path *string, value interface{})
	AddPropertyDeletionOverride(propertyPath *string)
	AddPropertyOverride(propertyPath *string, value interface{})
	ApplyRemovalPolicy(policy awscdk.RemovalPolicy, options *awscdk.RemovalPolicyOptions)
	GetAtt(attributeName *string) awscdk.Reference
	GetMetadata(key *string) interface{}
	Inspect(inspector awscdk.TreeInspector)
	OverrideLogicalId(newLogicalId *string)
	RenderProperties(props *map[string]interface{}) *map[string]interface{}
	ShouldSynthesize() *bool
	ToString() *string
	ValidateProperties(_properties interface{})
}

A CloudFormation `AWS::ApiGateway::VpcLink`.

func NewCfnVpcLink(scope constructs.Construct, id *string, props *CfnVpcLinkProps) CfnVpcLink

Create a new `AWS::ApiGateway::VpcLink`.

type CfnVpcLinkProps

type CfnVpcLinkProps struct {
	// `AWS::ApiGateway::VpcLink.Name`.
	Name *string `json:"name"`
	// `AWS::ApiGateway::VpcLink.TargetArns`.
	TargetArns *[]*string `json:"targetArns"`
	// `AWS::ApiGateway::VpcLink.Description`.
	Description *string `json:"description"`
}

Properties for defining a `AWS::ApiGateway::VpcLink`.

type CognitoUserPoolsAuthorizer

type CognitoUserPoolsAuthorizer interface {
	Authorizer
	IAuthorizer
	AuthorizationType() AuthorizationType
	AuthorizerArn() *string
	AuthorizerId() *string
	Env() *awscdk.ResourceEnvironment
	Node() constructs.Node
	PhysicalName() *string
	Stack() awscdk.Stack
	ApplyRemovalPolicy(policy awscdk.RemovalPolicy)
	GeneratePhysicalName() *string
	GetResourceArnAttribute(arnAttr *string, arnComponents *awscdk.ArnComponents) *string
	GetResourceNameAttribute(nameAttr *string) *string
	ToString() *string
}

Cognito user pools based custom authorizer. Experimental.

func NewCognitoUserPoolsAuthorizer

func NewCognitoUserPoolsAuthorizer(scope constructs.Construct, id *string, props *CognitoUserPoolsAuthorizerProps) CognitoUserPoolsAuthorizer

Experimental.

type CognitoUserPoolsAuthorizerProps

type CognitoUserPoolsAuthorizerProps struct {
	// The user pools to associate with this authorizer.
	// Experimental.
	CognitoUserPools *[]awscognito.IUserPool `json:"cognitoUserPools"`
	// An optional human friendly name for the authorizer.
	//
	// Note that, this is not the primary identifier of the authorizer.
	// Experimental.
	AuthorizerName *string `json:"authorizerName"`
	// The request header mapping expression for the bearer token.
	//
	// This is typically passed as part of the header, in which case
	// this should be `method.request.header.Authorizer` where Authorizer is the header containing the bearer token.
	// See: https://docs.aws.amazon.com/apigateway/api-reference/link-relation/authorizer-create/#identitySource
	//
	// Experimental.
	IdentitySource *string `json:"identitySource"`
	// How long APIGateway should cache the results.
	//
	// Max 1 hour.
	// Disable caching by setting this to 0.
	// Experimental.
	ResultsCacheTtl awscdk.Duration `json:"resultsCacheTtl"`
}

Properties for CognitoUserPoolsAuthorizer. Experimental.

type ConnectionType

type ConnectionType string

Experimental.

const (
	ConnectionType_INTERNET ConnectionType = "INTERNET"
	ConnectionType_VPC_LINK ConnectionType = "VPC_LINK"
)

type ContentHandling

type ContentHandling string

Experimental.

const (
	ContentHandling_CONVERT_TO_BINARY ContentHandling = "CONVERT_TO_BINARY"
	ContentHandling_CONVERT_TO_TEXT   ContentHandling = "CONVERT_TO_TEXT"
)

type Cors

type Cors interface {
}

Experimental.

type CorsOptions

type CorsOptions struct {
	// Specifies the list of origins that are allowed to make requests to this resource.
	//
	// If you wish to allow all origins, specify `Cors.ALL_ORIGINS` or
	// `[ * ]`.
	//
	// Responses will include the `Access-Control-Allow-Origin` response header.
	// If `Cors.ALL_ORIGINS` is specified, the `Vary: Origin` response header will
	// also be included.
	// See: https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/Access-Control-Allow-Origin
	//
	// Experimental.
	AllowOrigins *[]*string `json:"allowOrigins"`
	// The Access-Control-Allow-Credentials response header tells browsers whether to expose the response to frontend JavaScript code when the request's credentials mode (Request.credentials) is "include".
	//
	// When a request's credentials mode (Request.credentials) is "include",
	// browsers will only expose the response to frontend JavaScript code if the
	// Access-Control-Allow-Credentials value is true.
	//
	// Credentials are cookies, authorization headers or TLS client certificates.
	// See: https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/Access-Control-Allow-Credentials
	//
	// Experimental.
	AllowCredentials *bool `json:"allowCredentials"`
	// The Access-Control-Allow-Headers response header is used in response to a preflight request which includes the Access-Control-Request-Headers to indicate which HTTP headers can be used during the actual request.
	// See: https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/Access-Control-Allow-Headers
	//
	// Experimental.
	AllowHeaders *[]*string `json:"allowHeaders"`
	// The Access-Control-Allow-Methods response header specifies the method or methods allowed when accessing the resource in response to a preflight request.
	//
	// If `ANY` is specified, it will be expanded to `Cors.ALL_METHODS`.
	// See: https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/Access-Control-Allow-Methods
	//
	// Experimental.
	AllowMethods *[]*string `json:"allowMethods"`
	// Sets Access-Control-Max-Age to -1, which means that caching is disabled.
	//
	// This option cannot be used with `maxAge`.
	// Experimental.
	DisableCache *bool `json:"disableCache"`
	// The Access-Control-Expose-Headers response header indicates which headers can be exposed as part of the response by listing their names.
	//
	// If you want clients to be able to access other headers, you have to list
	// them using the Access-Control-Expose-Headers header.
	// See: https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/Access-Control-Expose-Headers
	//
	// Experimental.
	ExposeHeaders *[]*string `json:"exposeHeaders"`
	// The Access-Control-Max-Age response header indicates how long the results of a preflight request (that is the information contained in the Access-Control-Allow-Methods and Access-Control-Allow-Headers headers) can be cached.
	//
	// To disable caching altogether use `disableCache: true`.
	// See: https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/Access-Control-Max-Age
	//
	// Experimental.
	MaxAge awscdk.Duration `json:"maxAge"`
	// Specifies the response status code returned from the OPTIONS method.
	// Experimental.
	StatusCode *float64 `json:"statusCode"`
}

Experimental.

type Deployment

type Deployment interface {
	awscdk.Resource
	Api() IRestApi
	DeploymentId() *string
	Env() *awscdk.ResourceEnvironment
	Node() constructs.Node
	PhysicalName() *string
	Stack() awscdk.Stack
	AddToLogicalId(data interface{})
	ApplyRemovalPolicy(policy awscdk.RemovalPolicy)
	GeneratePhysicalName() *string
	GetResourceArnAttribute(arnAttr *string, arnComponents *awscdk.ArnComponents) *string
	GetResourceNameAttribute(nameAttr *string) *string
	ToString() *string
}

A Deployment of a REST API.

An immutable representation of a RestApi resource that can be called by users using Stages. A deployment must be associated with a Stage for it to be callable over the Internet.

Normally, you don't need to define deployments manually. The RestApi construct manages a Deployment resource that represents the latest model. It can be accessed through `restApi.latestDeployment` (unless `deploy: false` is set when defining the `RestApi`).

If you manually define this resource, you will need to know that since deployments are immutable, as long as the resource's logical ID doesn't change, the deployment will represent the snapshot in time in which the resource was created. This means that if you modify the RestApi model (i.e. add methods or resources), these changes will not be reflected unless a new deployment resource is created.

To achieve this behavior, the method `addToLogicalId(data)` can be used to augment the logical ID generated for the deployment resource such that it will include arbitrary data. This is done automatically for the `restApi.latestDeployment` deployment.

Furthermore, since a deployment does not reference any of the REST API resources and methods, CloudFormation will likely provision it before these resources are created, which means that it will represent a "half-baked" model. Use the `node.addDependency(dep)` method to circumvent that. This is done automatically for the `restApi.latestDeployment` deployment. Experimental.

func NewDeployment

func NewDeployment(scope constructs.Construct, id *string, props *DeploymentProps) Deployment

Experimental.

type DeploymentProps

type DeploymentProps struct {
	// The Rest API to deploy.
	// Experimental.
	Api IRestApi `json:"api"`
	// A description of the purpose of the API Gateway deployment.
	// Experimental.
	Description *string `json:"description"`
	// When an API Gateway model is updated, a new deployment will automatically be created.
	//
	// If this is true, the old API Gateway Deployment resource will not be deleted.
	// This will allow manually reverting back to a previous deployment in case for example
	// Experimental.
	RetainDeployments *bool `json:"retainDeployments"`
}

Experimental.

type DomainName

type DomainName interface {
	awscdk.Resource
	IDomainName
	DomainName() *string
	DomainNameAliasDomainName() *string
	DomainNameAliasHostedZoneId() *string
	Env() *awscdk.ResourceEnvironment
	Node() constructs.Node
	PhysicalName() *string
	Stack() awscdk.Stack
	AddBasePathMapping(targetApi IRestApi, options *BasePathMappingOptions) BasePathMapping
	ApplyRemovalPolicy(policy awscdk.RemovalPolicy)
	GeneratePhysicalName() *string
	GetResourceArnAttribute(arnAttr *string, arnComponents *awscdk.ArnComponents) *string
	GetResourceNameAttribute(nameAttr *string) *string
	ToString() *string
}

Experimental.

func NewDomainName

func NewDomainName(scope constructs.Construct, id *string, props *DomainNameProps) DomainName

Experimental.

type DomainNameAttributes

type DomainNameAttributes struct {
	// The domain name (e.g. `example.com`).
	// Experimental.
	DomainName *string `json:"domainName"`
	// The Route53 hosted zone ID to use in order to connect a record set to this domain through an alias.
	// Experimental.
	DomainNameAliasHostedZoneId *string `json:"domainNameAliasHostedZoneId"`
	// The Route53 alias target to use in order to connect a record set to this domain through an alias.
	// Experimental.
	DomainNameAliasTarget *string `json:"domainNameAliasTarget"`
}

Experimental.

type DomainNameOptions

type DomainNameOptions struct {
	// The reference to an AWS-managed certificate for use by the edge-optimized endpoint for the domain name.
	//
	// For "EDGE" domain names, the certificate
	// needs to be in the US East (N. Virginia) region.
	// Experimental.
	Certificate awscertificatemanager.ICertificate `json:"certificate"`
	// The custom domain name for your API.
	//
	// Uppercase letters are not supported.
	// Experimental.
	DomainName *string `json:"domainName"`
	// The type of endpoint for this DomainName.
	// Experimental.
	EndpointType EndpointType `json:"endpointType"`
	// The mutual TLS authentication configuration for a custom domain name.
	// Experimental.
	Mtls *MTLSConfig `json:"mtls"`
	// The Transport Layer Security (TLS) version + cipher suite for this domain name.
	// See: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-domainname.html
	//
	// Experimental.
	SecurityPolicy SecurityPolicy `json:"securityPolicy"`
}

Experimental.

type DomainNameProps

type DomainNameProps struct {
	// The reference to an AWS-managed certificate for use by the edge-optimized endpoint for the domain name.
	//
	// For "EDGE" domain names, the certificate
	// needs to be in the US East (N. Virginia) region.
	// Experimental.
	Certificate awscertificatemanager.ICertificate `json:"certificate"`
	// The custom domain name for your API.
	//
	// Uppercase letters are not supported.
	// Experimental.
	DomainName *string `json:"domainName"`
	// The type of endpoint for this DomainName.
	// Experimental.
	EndpointType EndpointType `json:"endpointType"`
	// The mutual TLS authentication configuration for a custom domain name.
	// Experimental.
	Mtls *MTLSConfig `json:"mtls"`
	// The Transport Layer Security (TLS) version + cipher suite for this domain name.
	// See: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-domainname.html
	//
	// Experimental.
	SecurityPolicy SecurityPolicy `json:"securityPolicy"`
	// If specified, all requests to this domain will be mapped to the production deployment of this API.
	//
	// If you wish to map this domain to multiple APIs
	// with different base paths, don't specify this option and use
	// `addBasePathMapping`.
	// Experimental.
	Mapping IRestApi `json:"mapping"`
}

Experimental.

type EndpointConfiguration

type EndpointConfiguration struct {
	// A list of endpoint types of an API or its custom domain name.
	// Experimental.
	Types *[]EndpointType `json:"types"`
	// A list of VPC Endpoints against which to create Route53 ALIASes.
	// Experimental.
	VpcEndpoints *[]awsec2.IVpcEndpoint `json:"vpcEndpoints"`
}

The endpoint configuration of a REST API, including VPCs and endpoint types.

EndpointConfiguration is a property of the AWS::ApiGateway::RestApi resource. Experimental.

type EndpointType

type EndpointType string

Experimental.

const (
	EndpointType_EDGE     EndpointType = "EDGE"
	EndpointType_REGIONAL EndpointType = "REGIONAL"
	EndpointType_PRIVATE  EndpointType = "PRIVATE"
)

type GatewayResponse

type GatewayResponse interface {
	awscdk.Resource
	IGatewayResponse
	Env() *awscdk.ResourceEnvironment
	Node() constructs.Node
	PhysicalName() *string
	Stack() awscdk.Stack
	ApplyRemovalPolicy(policy awscdk.RemovalPolicy)
	GeneratePhysicalName() *string
	GetResourceArnAttribute(arnAttr *string, arnComponents *awscdk.ArnComponents) *string
	GetResourceNameAttribute(nameAttr *string) *string
	ToString() *string
}

Configure the response received by clients, produced from the API Gateway backend. Experimental.

func NewGatewayResponse

func NewGatewayResponse(scope constructs.Construct, id *string, props *GatewayResponseProps) GatewayResponse

Experimental.

type GatewayResponseOptions

type GatewayResponseOptions struct {
	// Response type to associate with gateway response.
	// See: https://docs.aws.amazon.com/apigateway/latest/developerguide/supported-gateway-response-types.html
	//
	// Experimental.
	Type ResponseType `json:"type"`
	// Custom headers parameters for response.
	// Experimental.
	ResponseHeaders *map[string]*string `json:"responseHeaders"`
	// Http status code for response.
	// Experimental.
	StatusCode *string `json:"statusCode"`
	// Custom templates to get mapped as response.
	// Experimental.
	Templates *map[string]*string `json:"templates"`
}

Options to add gateway response. Experimental.

type GatewayResponseProps

type GatewayResponseProps struct {
	// Response type to associate with gateway response.
	// See: https://docs.aws.amazon.com/apigateway/latest/developerguide/supported-gateway-response-types.html
	//
	// Experimental.
	Type ResponseType `json:"type"`
	// Custom headers parameters for response.
	// Experimental.
	ResponseHeaders *map[string]*string `json:"responseHeaders"`
	// Http status code for response.
	// Experimental.
	StatusCode *string `json:"statusCode"`
	// Custom templates to get mapped as response.
	// Experimental.
	Templates *map[string]*string `json:"templates"`
	// Rest api resource to target.
	// Experimental.
	RestApi IRestApi `json:"restApi"`
}

Properties for a new gateway response. Experimental.

type HttpIntegration

type HttpIntegration interface {
	Integration
	Bind(_method Method) *IntegrationConfig
}

You can integrate an API method with an HTTP endpoint using the HTTP proxy integration or the HTTP custom integration,.

With the proxy integration, the setup is simple. You only need to set the HTTP method and the HTTP endpoint URI, according to the backend requirements, if you are not concerned with content encoding or caching.

With the custom integration, the setup is more involved. In addition to the proxy integration setup steps, you need to specify how the incoming request data is mapped to the integration request and how the resulting integration response data is mapped to the method response. Experimental.

func NewHttpIntegration

func NewHttpIntegration(url *string, props *HttpIntegrationProps) HttpIntegration

Experimental.

type HttpIntegrationProps

type HttpIntegrationProps struct {
	// HTTP method to use when invoking the backend URL.
	// Experimental.
	HttpMethod *string `json:"httpMethod"`
	// Integration options, such as request/resopnse mapping, content handling, etc.
	// Experimental.
	Options *IntegrationOptions `json:"options"`
	// Determines whether to use proxy integration or custom integration.
	// Experimental.
	Proxy *bool `json:"proxy"`
}

Experimental.

type IAccessLogDestination

type IAccessLogDestination interface {
	// Binds this destination to the RestApi Stage.
	// Experimental.
	Bind(stage IStage) *AccessLogDestinationConfig
}

Access log destination for a RestApi Stage. Experimental.

type IApiKey

type IApiKey interface {
	awscdk.IResource
	// The API key ARN.
	// Experimental.
	KeyArn() *string
	// The API key ID.
	// Experimental.
	KeyId() *string
}

API keys are alphanumeric string values that you distribute to app developer customers to grant access to your API. Experimental.

func ApiKey_FromApiKeyId

func ApiKey_FromApiKeyId(scope constructs.Construct, id *string, apiKeyId *string) IApiKey

Import an ApiKey by its Id. Experimental.

type IAuthorizer

type IAuthorizer interface {
	// The authorization type of this authorizer.
	// Experimental.
	AuthorizationType() AuthorizationType
	// The authorizer ID.
	// Experimental.
	AuthorizerId() *string
}

Represents an API Gateway authorizer. Experimental.

type IDomainName

type IDomainName interface {
	awscdk.IResource
	// The domain name (e.g. `example.com`).
	// Experimental.
	DomainName() *string
	// The Route53 alias target to use in order to connect a record set to this domain through an alias.
	// Experimental.
	DomainNameAliasDomainName() *string
	// The Route53 hosted zone ID to use in order to connect a record set to this domain through an alias.
	// Experimental.
	DomainNameAliasHostedZoneId() *string
}

Experimental.

func DomainName_FromDomainNameAttributes

func DomainName_FromDomainNameAttributes(scope constructs.Construct, id *string, attrs *DomainNameAttributes) IDomainName

Imports an existing domain name. Experimental.

type IGatewayResponse

type IGatewayResponse interface {
	awscdk.IResource
}

Represents gateway response resource. Experimental.

type IModel

type IModel interface {
	// Returns the model name, such as 'myModel'.
	// Experimental.
	ModelId() *string
}

Experimental.

func Model_EMPTY_MODEL

func Model_EMPTY_MODEL() IModel

func Model_ERROR_MODEL

func Model_ERROR_MODEL() IModel

func Model_FromModelName

func Model_FromModelName(scope constructs.Construct, id *string, modelName *string) IModel

Experimental.

type IRequestValidator

type IRequestValidator interface {
	awscdk.IResource
	// ID of the request validator, such as abc123.
	// Experimental.
	RequestValidatorId() *string
}

Experimental.

func RequestValidator_FromRequestValidatorId

func RequestValidator_FromRequestValidatorId(scope constructs.Construct, id *string, requestValidatorId *string) IRequestValidator

Experimental.

type IResource

type IResource interface {
	awscdk.IResource
	// Adds an OPTIONS method to this resource which responds to Cross-Origin Resource Sharing (CORS) preflight requests.
	//
	// Cross-Origin Resource Sharing (CORS) is a mechanism that uses additional
	// HTTP headers to tell browsers to give a web application running at one
	// origin, access to selected resources from a different origin. A web
	// application executes a cross-origin HTTP request when it requests a
	// resource that has a different origin (domain, protocol, or port) from its
	// own.
	//
	// Returns: a `Method` object
	// See: https://developer.mozilla.org/en-US/docs/Web/HTTP/CORS
	//
	// Experimental.
	AddCorsPreflight(options *CorsOptions) Method
	// Defines a new method for this resource.
	//
	// Returns: The newly created `Method` object.
	// Experimental.
	AddMethod(httpMethod *string, target Integration, options *MethodOptions) Method
	// Adds a greedy proxy resource ("{proxy+}") and an ANY method to this route.
	// Experimental.
	AddProxy(options *ProxyResourceOptions) ProxyResource
	// Defines a new child resource where this resource is the parent.
	//
	// Returns: A Resource object
	// Experimental.
	AddResource(pathPart *string, options *ResourceOptions) Resource
	// Retrieves a child resource by path part.
	//
	// Returns: the child resource or undefined if not found
	// Experimental.
	GetResource(pathPart *string) IResource
	// Gets or create all resources leading up to the specified path.
	//
	// - Path may only start with "/" if this method is called on the root resource.
	// - All resources are created using default options.
	//
	// Returns: a new or existing resource.
	// Experimental.
	ResourceForPath(path *string) Resource
	// The rest API that this resource is part of.
	//
	// The reason we need the RestApi object itself and not just the ID is because the model
	// is being tracked by the top-level RestApi object for the purpose of calculating it's
	// hash to determine the ID of the deployment. This allows us to automatically update
	// the deployment when the model of the REST API changes.
	// Experimental.
	Api() IRestApi
	// Default options for CORS preflight OPTIONS method.
	// Experimental.
	DefaultCorsPreflightOptions() *CorsOptions
	// An integration to use as a default for all methods created within this API unless an integration is specified.
	// Experimental.
	DefaultIntegration() Integration
	// Method options to use as a default for all methods created within this API unless custom options are specified.
	// Experimental.
	DefaultMethodOptions() *MethodOptions
	// The parent of this resource or undefined for the root resource.
	// Experimental.
	ParentResource() IResource
	// The full path of this resource.
	// Experimental.
	Path() *string
	// The ID of the resource.
	// Experimental.
	ResourceId() *string
}

Experimental.

func ProxyResource_FromResourceAttributes

func ProxyResource_FromResourceAttributes(scope constructs.Construct, id *string, attrs *ResourceAttributes) IResource

Import an existing resource. Experimental.

func Resource_FromResourceAttributes

func Resource_FromResourceAttributes(scope constructs.Construct, id *string, attrs *ResourceAttributes) IResource

Import an existing resource. Experimental.

type IRestApi

type IRestApi interface {
	awscdk.IResource
	// Gets the "execute-api" ARN.
	//
	// Returns: The "execute-api" ARN.
	// Experimental.
	ArnForExecuteApi(method *string, path *string, stage *string) *string
	// API Gateway stage that points to the latest deployment (if defined).
	// Experimental.
	DeploymentStage() Stage
	// API Gateway stage that points to the latest deployment (if defined).
	// Experimental.
	SetDeploymentStage(d Stage)
	// API Gateway deployment that represents the latest changes of the API.
	//
	// This resource will be automatically updated every time the REST API model changes.
	// `undefined` when no deployment is configured.
	// Experimental.
	LatestDeployment() Deployment
	// The ID of this API Gateway RestApi.
	// Experimental.
	RestApiId() *string
	// The resource ID of the root resource.
	// Experimental.
	RestApiRootResourceId() *string
	// Represents the root resource ("/") of this API. Use it to define the API model:.
	//
	// api.root.addMethod('ANY', redirectToHomePage); // "ANY /"
	//     api.root.addResource('friends').addMethod('GET', getFriendsHandler); // "GET /friends"
	// Experimental.
	Root() IResource
}

Experimental.

func LambdaRestApi_FromRestApiAttributes

func LambdaRestApi_FromRestApiAttributes(scope constructs.Construct, id *string, attrs *RestApiAttributes) IRestApi

Import an existing RestApi that can be configured with additional Methods and Resources. Experimental.

func LambdaRestApi_FromRestApiId

func LambdaRestApi_FromRestApiId(scope constructs.Construct, id *string, restApiId *string) IRestApi

Import an existing RestApi. Experimental.

func RestApi_FromRestApiAttributes

func RestApi_FromRestApiAttributes(scope constructs.Construct, id *string, attrs *RestApiAttributes) IRestApi

Import an existing RestApi that can be configured with additional Methods and Resources. Experimental.

func RestApi_FromRestApiId

func RestApi_FromRestApiId(scope constructs.Construct, id *string, restApiId *string) IRestApi

Import an existing RestApi. Experimental.

type IStage

type IStage interface {
	awscdk.IResource
	// RestApi to which this stage is associated.
	// Experimental.
	RestApi() IRestApi
	// Name of this stage.
	// Experimental.
	StageName() *string
}

Represents an APIGateway Stage. Experimental.

type IUsagePlan

type IUsagePlan interface {
	awscdk.IResource
	// Adds an ApiKey.
	// Experimental.
	AddApiKey(apiKey IApiKey, options *AddApiKeyOptions)
	// Id of the usage plan.
	// Experimental.
	UsagePlanId() *string
}

A UsagePlan, either managed by this CDK app, or imported. Experimental.

func UsagePlan_FromUsagePlanId

func UsagePlan_FromUsagePlanId(scope constructs.Construct, id *string, usagePlanId *string) IUsagePlan

Import an externally defined usage plan using its ARN. Experimental.

type IVpcLink interface {
	awscdk.IResource
	// Physical ID of the VpcLink resource.
	// Experimental.
	VpcLinkId() *string
}

Represents an API Gateway VpcLink. Experimental.

func VpcLink_FromVpcLinkId(scope constructs.Construct, id *string, vpcLinkId *string) IVpcLink

Import a VPC Link by its Id. Experimental.

type IdentitySource

type IdentitySource interface {
}

Represents an identity source.

The source can be specified either as a literal value (e.g: `Auth`) which cannot be blank, or as an unresolved string token. Experimental.

func NewIdentitySource

func NewIdentitySource() IdentitySource

Experimental.

type InlineApiDefinition

type InlineApiDefinition interface {
	ApiDefinition
	Bind(_scope constructs.Construct) *ApiDefinitionConfig
}

OpenAPI specification from an inline JSON object. Experimental.

func ApiDefinition_FromInline

func ApiDefinition_FromInline(definition interface{}) InlineApiDefinition

Create an API definition from an inline object.

The inline object must follow the schema of OpenAPI 2.0 or OpenAPI 3.0

TODO: EXAMPLE

Experimental.

func AssetApiDefinition_FromInline

func AssetApiDefinition_FromInline(definition interface{}) InlineApiDefinition

Create an API definition from an inline object.

The inline object must follow the schema of OpenAPI 2.0 or OpenAPI 3.0

TODO: EXAMPLE

Experimental.

func InlineApiDefinition_FromInline

func InlineApiDefinition_FromInline(definition interface{}) InlineApiDefinition

Create an API definition from an inline object.

The inline object must follow the schema of OpenAPI 2.0 or OpenAPI 3.0

TODO: EXAMPLE

Experimental.

func NewInlineApiDefinition

func NewInlineApiDefinition(definition interface{}) InlineApiDefinition

Experimental.

func S3ApiDefinition_FromInline

func S3ApiDefinition_FromInline(definition interface{}) InlineApiDefinition

Create an API definition from an inline object.

The inline object must follow the schema of OpenAPI 2.0 or OpenAPI 3.0

TODO: EXAMPLE

Experimental.

type Integration

type Integration interface {
	Bind(_method Method) *IntegrationConfig
}

Base class for backend integrations for an API Gateway method.

Use one of the concrete classes such as `MockIntegration`, `AwsIntegration`, `LambdaIntegration` or implement on your own by specifying the set of props. Experimental.

func NewIntegration

func NewIntegration(props *IntegrationProps) Integration

Experimental.

type IntegrationConfig

type IntegrationConfig struct {
	// Specifies an API method integration type.
	// Experimental.
	Type IntegrationType `json:"type"`
	// This value is included in computing the Deployment's fingerprint.
	//
	// When the fingerprint
	// changes, a new deployment is triggered.
	// This property should contain values associated with the Integration that upon changing
	// should trigger a fresh the Deployment needs to be refreshed.
	// Experimental.
	DeploymentToken *string `json:"deploymentToken"`
	// The integration's HTTP method type.
	// Experimental.
	IntegrationHttpMethod *string `json:"integrationHttpMethod"`
	// Integration options.
	// Experimental.
	Options *IntegrationOptions `json:"options"`
	// The Uniform Resource Identifier (URI) for the integration.
	// See: https://docs.aws.amazon.com/apigateway/api-reference/resource/integration/#uri
	//
	// Experimental.
	Uri *string `json:"uri"`
}

Result of binding an Integration to a Method. Experimental.

type IntegrationOptions

type IntegrationOptions struct {
	// A list of request parameters whose values are to be cached.
	//
	// It determines
	// request parameters that will make it into the cache key.
	// Experimental.
	CacheKeyParameters *[]*string `json:"cacheKeyParameters"`
	// An API-specific tag group of related cached parameters.
	// Experimental.
	CacheNamespace *string `json:"cacheNamespace"`
	// The type of network connection to the integration endpoint.
	// Experimental.
	ConnectionType ConnectionType `json:"connectionType"`
	// Specifies how to handle request payload content type conversions.
	// Experimental.
	ContentHandling ContentHandling `json:"contentHandling"`
	// Requires that the caller's identity be passed through from the request.
	// Experimental.
	CredentialsPassthrough *bool `json:"credentialsPassthrough"`
	// An IAM role that API Gateway assumes.
	//
	// Mutually exclusive with `credentialsPassThrough`.
	// Experimental.
	CredentialsRole awsiam.IRole `json:"credentialsRole"`
	// The response that API Gateway provides after a method's backend completes processing a request.
	//
	// API Gateway intercepts the response from the
	// backend so that you can control how API Gateway surfaces backend
	// responses. For example, you can map the backend status codes to codes
	// that you define.
	// Experimental.
	IntegrationResponses *[]*IntegrationResponse `json:"integrationResponses"`
	// Specifies the pass-through behavior for incoming requests based on the Content-Type header in the request, and the available mapping templates specified as the requestTemplates property on the Integration resource.
	//
	// There are three valid values: WHEN_NO_MATCH, WHEN_NO_TEMPLATES, and
	// NEVER.
	// Experimental.
	PassthroughBehavior PassthroughBehavior `json:"passthroughBehavior"`
	// The request parameters that API Gateway sends with the backend request.
	//
	// Specify request parameters as key-value pairs (string-to-string
	// mappings), with a destination as the key and a source as the value.
	//
	// Specify the destination by using the following pattern
	// integration.request.location.name, where location is querystring, path,
	// or header, and name is a valid, unique parameter name.
	//
	// The source must be an existing method request parameter or a static
	// value. You must enclose static values in single quotation marks and
	// pre-encode these values based on their destination in the request.
	// Experimental.
	RequestParameters *map[string]*string `json:"requestParameters"`
	// A map of Apache Velocity templates that are applied on the request payload.
	//
	// The template that API Gateway uses is based on the value of the
	// Content-Type header that's sent by the client. The content type value is
	// the key, and the template is the value (specified as a string), such as
	// the following snippet:
	//
	// “`
	//    { "application/json": "{ \"statusCode\": 200 }" }
	// “`
	// See: http://docs.aws.amazon.com/apigateway/latest/developerguide/api-gateway-mapping-template-reference.html
	//
	// Experimental.
	RequestTemplates *map[string]*string `json:"requestTemplates"`
	// The maximum amount of time an integration will run before it returns without a response.
	//
	// Must be between 50 milliseconds and 29 seconds.
	// Experimental.
	Timeout awscdk.Duration `json:"timeout"`
	// The VpcLink used for the integration.
	//
	// Required if connectionType is VPC_LINK
	// Experimental.
	VpcLink IVpcLink `json:"vpcLink"`
}

Experimental.

type IntegrationProps

type IntegrationProps struct {
	// Specifies an API method integration type.
	// Experimental.
	Type IntegrationType `json:"type"`
	// The integration's HTTP method type.
	//
	// Required unless you use a MOCK integration.
	// Experimental.
	IntegrationHttpMethod *string `json:"integrationHttpMethod"`
	// Integration options.
	// Experimental.
	Options *IntegrationOptions `json:"options"`
	// The Uniform Resource Identifier (URI) for the integration.
	//
	// - If you specify HTTP for the `type` property, specify the API endpoint URL.
	// - If you specify MOCK for the `type` property, don't specify this property.
	// - If you specify AWS for the `type` property, specify an AWS service that
	//    follows this form: `arn:partition:apigateway:region:subdomain.service|service:path|action/service_api.`
	//    For example, a Lambda function URI follows this form:
	//    arn:partition:apigateway:region:lambda:path/path. The path is usually in the
	//    form /2015-03-31/functions/LambdaFunctionARN/invocations.
	// See: https://docs.aws.amazon.com/apigateway/api-reference/resource/integration/#uri
	//
	// Experimental.
	Uri interface{} `json:"uri"`
}

Experimental.

type IntegrationResponse

type IntegrationResponse struct {
	// The status code that API Gateway uses to map the integration response to a MethodResponse status code.
	// Experimental.
	StatusCode *string `json:"statusCode"`
	// Specifies how to handle request payload content type conversions.
	// Experimental.
	ContentHandling ContentHandling `json:"contentHandling"`
	// The response parameters from the backend response that API Gateway sends to the method response.
	//
	// Use the destination as the key and the source as the value:
	//
	// - The destination must be an existing response parameter in the
	//    MethodResponse property.
	// - The source must be an existing method request parameter or a static
	//    value. You must enclose static values in single quotation marks and
	//    pre-encode these values based on the destination specified in the
	//    request.
	// See: http://docs.aws.amazon.com/apigateway/latest/developerguide/request-response-data-mappings.html
	//
	// Experimental.
	ResponseParameters *map[string]*string `json:"responseParameters"`
	// The templates that are used to transform the integration response body.
	//
	// Specify templates as key-value pairs, with a content type as the key and
	// a template as the value.
	// See: http://docs.aws.amazon.com/apigateway/latest/developerguide/api-gateway-mapping-template-reference.html
	//
	// Experimental.
	ResponseTemplates *map[string]*string `json:"responseTemplates"`
	// Specifies the regular expression (regex) pattern used to choose an integration response based on the response from the back end.
	//
	// For example, if the success response returns nothing and the error response returns some string, you
	// could use the “.+“ regex to match error response. However, make sure that the error response does not contain any
	// newline (“\n“) character in such cases. If the back end is an AWS Lambda function, the AWS Lambda function error
	// header is matched. For all other HTTP and AWS back ends, the HTTP status code is matched.
	// See: https://docs.aws.amazon.com/apigateway/latest/developerguide/api-gateway-integration-settings-integration-response.html
	//
	// Experimental.
	SelectionPattern *string `json:"selectionPattern"`
}

Experimental.

type IntegrationType

type IntegrationType string

Experimental.

const (
	IntegrationType_AWS        IntegrationType = "AWS"
	IntegrationType_AWS_PROXY  IntegrationType = "AWS_PROXY"
	IntegrationType_HTTP       IntegrationType = "HTTP"
	IntegrationType_HTTP_PROXY IntegrationType = "HTTP_PROXY"
	IntegrationType_MOCK       IntegrationType = "MOCK"
)

type JsonSchema

type JsonSchema struct {
	// Experimental.
	AdditionalItems *[]*JsonSchema `json:"additionalItems"`
	// Experimental.
	AdditionalProperties interface{} `json:"additionalProperties"`
	// Experimental.
	AllOf *[]*JsonSchema `json:"allOf"`
	// Experimental.
	AnyOf *[]*JsonSchema `json:"anyOf"`
	// Experimental.
	Contains interface{} `json:"contains"`
	// The default value if you use an enum.
	// Experimental.
	Default interface{} `json:"default"`
	// Experimental.
	Definitions *map[string]*JsonSchema `json:"definitions"`
	// Experimental.
	Dependencies *map[string]interface{} `json:"dependencies"`
	// Experimental.
	Description *string `json:"description"`
	// Experimental.
	Enum *[]interface{} `json:"enum"`
	// Experimental.
	ExclusiveMaximum *bool `json:"exclusiveMaximum"`
	// Experimental.
	ExclusiveMinimum *bool `json:"exclusiveMinimum"`
	// Experimental.
	Format *string `json:"format"`
	// Experimental.
	Id *string `json:"id"`
	// Experimental.
	Items interface{} `json:"items"`
	// Experimental.
	Maximum *float64 `json:"maximum"`
	// Experimental.
	MaxItems *float64 `json:"maxItems"`
	// Experimental.
	MaxLength *float64 `json:"maxLength"`
	// Experimental.
	MaxProperties *float64 `json:"maxProperties"`
	// Experimental.
	Minimum *float64 `json:"minimum"`
	// Experimental.
	MinItems *float64 `json:"minItems"`
	// Experimental.
	MinLength *float64 `json:"minLength"`
	// Experimental.
	MinProperties *float64 `json:"minProperties"`
	// Experimental.
	MultipleOf *float64 `json:"multipleOf"`
	// Experimental.
	Not **JsonSchema `json:"not"`
	// Experimental.
	OneOf *[]*JsonSchema `json:"oneOf"`
	// Experimental.
	Pattern *string `json:"pattern"`
	// Experimental.
	PatternProperties *map[string]*JsonSchema `json:"patternProperties"`
	// Experimental.
	Properties *map[string]*JsonSchema `json:"properties"`
	// Experimental.
	PropertyNames **JsonSchema `json:"propertyNames"`
	// Experimental.
	Ref *string `json:"ref"`
	// Experimental.
	Required *[]*string `json:"required"`
	// Experimental.
	Schema JsonSchemaVersion `json:"schema"`
	// Experimental.
	Title *string `json:"title"`
	// Experimental.
	Type interface{} `json:"type"`
	// Experimental.
	UniqueItems *bool `json:"uniqueItems"`
}

Represents a JSON schema definition of the structure of a REST API model.

Copied from npm module jsonschema. See: https://github.com/tdegrunt/jsonschema

Experimental.

type JsonSchemaType

type JsonSchemaType string

Experimental.

const (
	JsonSchemaType_NULL    JsonSchemaType = "NULL"
	JsonSchemaType_BOOLEAN JsonSchemaType = "BOOLEAN"
	JsonSchemaType_OBJECT  JsonSchemaType = "OBJECT"
	JsonSchemaType_ARRAY   JsonSchemaType = "ARRAY"
	JsonSchemaType_NUMBER  JsonSchemaType = "NUMBER"
	JsonSchemaType_INTEGER JsonSchemaType = "INTEGER"
	JsonSchemaType_STRING  JsonSchemaType = "STRING"
)

type JsonSchemaVersion

type JsonSchemaVersion string

Experimental.

const (
	JsonSchemaVersion_DRAFT4 JsonSchemaVersion = "DRAFT4"
	JsonSchemaVersion_DRAFT7 JsonSchemaVersion = "DRAFT7"
)

type JsonWithStandardFieldProps

type JsonWithStandardFieldProps struct {
	// If this flag is enabled, the principal identifier of the caller will be output to the log.
	// Experimental.
	Caller *bool `json:"caller"`
	// If this flag is enabled, the http method will be output to the log.
	// Experimental.
	HttpMethod *bool `json:"httpMethod"`
	// If this flag is enabled, the source IP of request will be output to the log.
	// Experimental.
	Ip *bool `json:"ip"`
	// If this flag is enabled, the request protocol will be output to the log.
	// Experimental.
	Protocol *bool `json:"protocol"`
	// If this flag is enabled, the CLF-formatted request time((dd/MMM/yyyy:HH:mm:ss +-hhmm) will be output to the log.
	// Experimental.
	RequestTime *bool `json:"requestTime"`
	// If this flag is enabled, the path to your resource will be output to the log.
	// Experimental.
	ResourcePath *bool `json:"resourcePath"`
	// If this flag is enabled, the response payload length will be output to the log.
	// Experimental.
	ResponseLength *bool `json:"responseLength"`
	// If this flag is enabled, the method response status will be output to the log.
	// Experimental.
	Status *bool `json:"status"`
	// If this flag is enabled, the principal identifier of the user will be output to the log.
	// Experimental.
	User *bool `json:"user"`
}

Properties for controlling items output in JSON standard format. Experimental.

type LambdaAuthorizerProps

type LambdaAuthorizerProps struct {
	// The handler for the authorizer lambda function.
	//
	// The handler must follow a very specific protocol on the input it receives and the output it needs to produce.
	// API Gateway has documented the handler's input specification
	// {@link https://docs.aws.amazon.com/apigateway/latest/developerguide/api-gateway-lambda-authorizer-input.html | here} and output specification
	// {@link https://docs.aws.amazon.com/apigateway/latest/developerguide/api-gateway-lambda-authorizer-output.html | here}.
	// Experimental.
	Handler awslambda.IFunction `json:"handler"`
	// An optional IAM role for APIGateway to assume before calling the Lambda-based authorizer.
	//
	// The IAM role must be
	// assumable by 'apigateway.amazonaws.com'.
	// Experimental.
	AssumeRole awsiam.IRole `json:"assumeRole"`
	// An optional human friendly name for the authorizer.
	//
	// Note that, this is not the primary identifier of the authorizer.
	// Experimental.
	AuthorizerName *string `json:"authorizerName"`
	// How long APIGateway should cache the results.
	//
	// Max 1 hour.
	// Disable caching by setting this to 0.
	// Experimental.
	ResultsCacheTtl awscdk.Duration `json:"resultsCacheTtl"`
}

Base properties for all lambda authorizers. Experimental.

type LambdaIntegration

type LambdaIntegration interface {
	AwsIntegration
	Bind(method Method) *IntegrationConfig
}

Integrates an AWS Lambda function to an API Gateway method.

TODO: EXAMPLE

Experimental.

func NewLambdaIntegration

func NewLambdaIntegration(handler awslambda.IFunction, options *LambdaIntegrationOptions) LambdaIntegration

Experimental.

type LambdaIntegrationOptions

type LambdaIntegrationOptions struct {
	// A list of request parameters whose values are to be cached.
	//
	// It determines
	// request parameters that will make it into the cache key.
	// Experimental.
	CacheKeyParameters *[]*string `json:"cacheKeyParameters"`
	// An API-specific tag group of related cached parameters.
	// Experimental.
	CacheNamespace *string `json:"cacheNamespace"`
	// The type of network connection to the integration endpoint.
	// Experimental.
	ConnectionType ConnectionType `json:"connectionType"`
	// Specifies how to handle request payload content type conversions.
	// Experimental.
	ContentHandling ContentHandling `json:"contentHandling"`
	// Requires that the caller's identity be passed through from the request.
	// Experimental.
	CredentialsPassthrough *bool `json:"credentialsPassthrough"`
	// An IAM role that API Gateway assumes.
	//
	// Mutually exclusive with `credentialsPassThrough`.
	// Experimental.
	CredentialsRole awsiam.IRole `json:"credentialsRole"`
	// The response that API Gateway provides after a method's backend completes processing a request.
	//
	// API Gateway intercepts the response from the
	// backend so that you can control how API Gateway surfaces backend
	// responses. For example, you can map the backend status codes to codes
	// that you define.
	// Experimental.
	IntegrationResponses *[]*IntegrationResponse `json:"integrationResponses"`
	// Specifies the pass-through behavior for incoming requests based on the Content-Type header in the request, and the available mapping templates specified as the requestTemplates property on the Integration resource.
	//
	// There are three valid values: WHEN_NO_MATCH, WHEN_NO_TEMPLATES, and
	// NEVER.
	// Experimental.
	PassthroughBehavior PassthroughBehavior `json:"passthroughBehavior"`
	// The request parameters that API Gateway sends with the backend request.
	//
	// Specify request parameters as key-value pairs (string-to-string
	// mappings), with a destination as the key and a source as the value.
	//
	// Specify the destination by using the following pattern
	// integration.request.location.name, where location is querystring, path,
	// or header, and name is a valid, unique parameter name.
	//
	// The source must be an existing method request parameter or a static
	// value. You must enclose static values in single quotation marks and
	// pre-encode these values based on their destination in the request.
	// Experimental.
	RequestParameters *map[string]*string `json:"requestParameters"`
	// A map of Apache Velocity templates that are applied on the request payload.
	//
	// The template that API Gateway uses is based on the value of the
	// Content-Type header that's sent by the client. The content type value is
	// the key, and the template is the value (specified as a string), such as
	// the following snippet:
	//
	// “`
	//    { "application/json": "{ \"statusCode\": 200 }" }
	// “`
	// See: http://docs.aws.amazon.com/apigateway/latest/developerguide/api-gateway-mapping-template-reference.html
	//
	// Experimental.
	RequestTemplates *map[string]*string `json:"requestTemplates"`
	// The maximum amount of time an integration will run before it returns without a response.
	//
	// Must be between 50 milliseconds and 29 seconds.
	// Experimental.
	Timeout awscdk.Duration `json:"timeout"`
	// The VpcLink used for the integration.
	//
	// Required if connectionType is VPC_LINK
	// Experimental.
	VpcLink IVpcLink `json:"vpcLink"`
	// Allow invoking method from AWS Console UI (for testing purposes).
	//
	// This will add another permission to the AWS Lambda resource policy which
	// will allow the `test-invoke-stage` stage to invoke this handler. If this
	// is set to `false`, the function will only be usable from the deployment
	// endpoint.
	// Experimental.
	AllowTestInvoke *bool `json:"allowTestInvoke"`
	// Use proxy integration or normal (request/response mapping) integration.
	// See: https://docs.aws.amazon.com/apigateway/latest/developerguide/set-up-lambda-proxy-integrations.html#api-gateway-simple-proxy-for-lambda-output-format
	//
	// Experimental.
	Proxy *bool `json:"proxy"`
}

Experimental.

type LambdaRestApi

type LambdaRestApi interface {
	RestApi
	DeploymentStage() Stage
	SetDeploymentStage(val Stage)
	DomainName() DomainName
	Env() *awscdk.ResourceEnvironment
	LatestDeployment() Deployment
	Methods() *[]Method
	Node() constructs.Node
	PhysicalName() *string
	RestApiId() *string
	RestApiName() *string
	RestApiRootResourceId() *string
	Root() IResource
	Stack() awscdk.Stack
	Url() *string
	AddApiKey(id *string, options *ApiKeyOptions) IApiKey
	AddDomainName(id *string, options *DomainNameOptions) DomainName
	AddGatewayResponse(id *string, options *GatewayResponseOptions) GatewayResponse
	AddModel(id *string, props *ModelOptions) Model
	AddRequestValidator(id *string, props *RequestValidatorOptions) RequestValidator
	AddUsagePlan(id *string, props *UsagePlanProps) UsagePlan
	ApplyRemovalPolicy(policy awscdk.RemovalPolicy)
	ArnForExecuteApi(method *string, path *string, stage *string) *string
	GeneratePhysicalName() *string
	GetResourceArnAttribute(arnAttr *string, arnComponents *awscdk.ArnComponents) *string
	GetResourceNameAttribute(nameAttr *string) *string
	Metric(metricName *string, props *awscloudwatch.MetricOptions) awscloudwatch.Metric
	MetricCacheHitCount(props *awscloudwatch.MetricOptions) awscloudwatch.Metric
	MetricCacheMissCount(props *awscloudwatch.MetricOptions) awscloudwatch.Metric
	MetricClientError(props *awscloudwatch.MetricOptions) awscloudwatch.Metric
	MetricCount(props *awscloudwatch.MetricOptions) awscloudwatch.Metric
	MetricIntegrationLatency(props *awscloudwatch.MetricOptions) awscloudwatch.Metric
	MetricLatency(props *awscloudwatch.MetricOptions) awscloudwatch.Metric
	MetricServerError(props *awscloudwatch.MetricOptions) awscloudwatch.Metric
	ToString() *string
	UrlForPath(path *string) *string
}

Defines an API Gateway REST API with AWS Lambda proxy integration.

Use the `proxy` property to define a greedy proxy ("{proxy+}") and "ANY" method from the specified path. If not defined, you will need to explicity add resources and methods to the API. Experimental.

func NewLambdaRestApi

func NewLambdaRestApi(scope constructs.Construct, id *string, props *LambdaRestApiProps) LambdaRestApi

Experimental.

type LambdaRestApiProps

type LambdaRestApiProps struct {
	// Adds a CORS preflight OPTIONS method to this resource and all child resources.
	//
	// You can add CORS at the resource-level using `addCorsPreflight`.
	// Experimental.
	DefaultCorsPreflightOptions *CorsOptions `json:"defaultCorsPreflightOptions"`
	// An integration to use as a default for all methods created within this API unless an integration is specified.
	// Experimental.
	DefaultIntegration Integration `json:"defaultIntegration"`
	// Method options to use as a default for all methods created within this API unless custom options are specified.
	// Experimental.
	DefaultMethodOptions *MethodOptions `json:"defaultMethodOptions"`
	// Automatically configure an AWS CloudWatch role for API Gateway.
	// Experimental.
	CloudWatchRole *bool `json:"cloudWatchRole"`
	// Indicates if a Deployment should be automatically created for this API, and recreated when the API model (resources, methods) changes.
	//
	// 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.
	// Experimental.
	Deploy *bool `json:"deploy"`
	// Options for the API Gateway stage that will always point to the latest deployment when `deploy` is enabled.
	//
	// If `deploy` is disabled,
	// this value cannot be set.
	// Experimental.
	DeployOptions *StageOptions `json:"deployOptions"`
	// Specifies whether clients can invoke the API using the default execute-api endpoint.
	//
	// To require that clients use a custom domain name to invoke the
	// API, disable the default endpoint.
	// See: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-restapi.html
	//
	// Experimental.
	DisableExecuteApiEndpoint *bool `json:"disableExecuteApiEndpoint"`
	// Configure a custom domain name and map it to this API.
	// Experimental.
	DomainName *DomainNameOptions `json:"domainName"`
	// Export name for the CfnOutput containing the API endpoint.
	// Experimental.
	EndpointExportName *string `json:"endpointExportName"`
	// A list of the endpoint types of the API.
	//
	// Use this property when creating
	// an API.
	// Experimental.
	EndpointTypes *[]EndpointType `json:"endpointTypes"`
	// Indicates whether to roll back the resource if a warning occurs while API Gateway is creating the RestApi resource.
	// Experimental.
	FailOnWarnings *bool `json:"failOnWarnings"`
	// Custom header parameters for the request.
	// See: https://docs.aws.amazon.com/cli/latest/reference/apigateway/import-rest-api.html
	//
	// Experimental.
	Parameters *map[string]*string `json:"parameters"`
	// A policy document that contains the permissions for this RestApi.
	// Experimental.
	Policy awsiam.PolicyDocument `json:"policy"`
	// A name for the API Gateway RestApi resource.
	// Experimental.
	RestApiName *string `json:"restApiName"`
	// Retains old deployment resources when the API changes.
	//
	// This allows
	// manually reverting stages to point to old deployments via the AWS
	// Console.
	// Experimental.
	RetainDeployments *bool `json:"retainDeployments"`
	// The source of the API key for metering requests according to a usage plan.
	// Experimental.
	ApiKeySourceType ApiKeySourceType `json:"apiKeySourceType"`
	// The list of binary media mime-types that are supported by the RestApi resource, such as "image/png" or "application/octet-stream".
	// Experimental.
	BinaryMediaTypes *[]*string `json:"binaryMediaTypes"`
	// The ID of the API Gateway RestApi resource that you want to clone.
	// Experimental.
	CloneFrom IRestApi `json:"cloneFrom"`
	// A description of the purpose of this API Gateway RestApi resource.
	// Experimental.
	Description *string `json:"description"`
	// The EndpointConfiguration property type specifies the endpoint types of a REST API.
	// See: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-apigateway-restapi-endpointconfiguration.html
	//
	// Experimental.
	EndpointConfiguration *EndpointConfiguration `json:"endpointConfiguration"`
	// A nullable integer that is used to enable compression (with non-negative between 0 and 10485760 (10M) bytes, inclusive) or disable compression (when undefined) on an API.
	//
	// When compression is enabled, compression or
	// decompression is not applied on the payload if the payload size is
	// smaller than this value. Setting it to zero allows compression for any
	// payload size.
	// Experimental.
	MinimumCompressionSize *float64 `json:"minimumCompressionSize"`
	// The default Lambda function that handles all requests from this API.
	//
	// This handler will be used as a the default integration for all methods in
	// this API, unless specified otherwise in `addMethod`.
	// Experimental.
	Handler awslambda.IFunction `json:"handler"`
	// If true, route all requests to the Lambda Function.
	//
	// If set to false, you will need to explicitly define the API model using
	// `addResource` and `addMethod` (or `addProxy`).
	// Experimental.
	Proxy *bool `json:"proxy"`
}

Experimental.

type LogGroupLogDestination

type LogGroupLogDestination interface {
	IAccessLogDestination
	Bind(_stage IStage) *AccessLogDestinationConfig
}

Use CloudWatch Logs as a custom access log destination for API Gateway. Experimental.

func NewLogGroupLogDestination

func NewLogGroupLogDestination(logGroup awslogs.ILogGroup) LogGroupLogDestination

Experimental.

type MTLSConfig

type MTLSConfig struct {
	// The bucket that the trust store is hosted in.
	// Experimental.
	Bucket awss3.IBucket `json:"bucket"`
	// The key in S3 to look at for the trust store.
	// Experimental.
	Key *string `json:"key"`
	// The version of the S3 object that contains your truststore.
	//
	// To specify a version, you must have versioning enabled for the S3 bucket.
	// Experimental.
	Version *string `json:"version"`
}

The mTLS authentication configuration for a custom domain name. Experimental.

type Method

type Method interface {
	awscdk.Resource
	Api() IRestApi
	Env() *awscdk.ResourceEnvironment
	HttpMethod() *string
	MethodArn() *string
	MethodId() *string
	Node() constructs.Node
	PhysicalName() *string
	Resource() IResource
	Stack() awscdk.Stack
	TestMethodArn() *string
	ApplyRemovalPolicy(policy awscdk.RemovalPolicy)
	GeneratePhysicalName() *string
	GetResourceArnAttribute(arnAttr *string, arnComponents *awscdk.ArnComponents) *string
	GetResourceNameAttribute(nameAttr *string) *string
	ToString() *string
}

Experimental.

func NewMethod

func NewMethod(scope constructs.Construct, id *string, props *MethodProps) Method

Experimental.

type MethodDeploymentOptions

type MethodDeploymentOptions struct {
	// Indicates whether the cached responses are encrypted.
	// Experimental.
	CacheDataEncrypted *bool `json:"cacheDataEncrypted"`
	// Specifies the time to live (TTL), in seconds, for cached responses.
	//
	// The
	// higher the TTL, the longer the response will be cached.
	// See: https://docs.aws.amazon.com/apigateway/latest/developerguide/api-gateway-caching.html
	//
	// Experimental.
	CacheTtl awscdk.Duration `json:"cacheTtl"`
	// Specifies whether responses should be cached and returned for requests.
	//
	// A
	// cache cluster must be enabled on the stage for responses to be cached.
	// Experimental.
	CachingEnabled *bool `json:"cachingEnabled"`
	// Specifies whether data trace logging is enabled for this method, which effects the log entries pushed to Amazon CloudWatch Logs.
	// Experimental.
	DataTraceEnabled *bool `json:"dataTraceEnabled"`
	// Specifies the logging level for this method, which effects the log entries pushed to Amazon CloudWatch Logs.
	// Experimental.
	LoggingLevel MethodLoggingLevel `json:"loggingLevel"`
	// Specifies whether Amazon CloudWatch metrics are enabled for this method.
	// Experimental.
	MetricsEnabled *bool `json:"metricsEnabled"`
	// Specifies the throttling burst limit.
	//
	// The total rate of all requests in your AWS account is limited to 5,000 requests.
	// See: https://docs.aws.amazon.com/apigateway/latest/developerguide/api-gateway-request-throttling.html
	//
	// Experimental.
	ThrottlingBurstLimit *float64 `json:"throttlingBurstLimit"`
	// Specifies the throttling rate limit.
	//
	// The total rate of all requests in your AWS account is limited to 10,000 requests per second (rps).
	// See: https://docs.aws.amazon.com/apigateway/latest/developerguide/api-gateway-request-throttling.html
	//
	// Experimental.
	ThrottlingRateLimit *float64 `json:"throttlingRateLimit"`
}

Experimental.

type MethodLoggingLevel

type MethodLoggingLevel string

Experimental.

const (
	MethodLoggingLevel_OFF   MethodLoggingLevel = "OFF"
	MethodLoggingLevel_ERROR MethodLoggingLevel = "ERROR"
	MethodLoggingLevel_INFO  MethodLoggingLevel = "INFO"
)

type MethodOptions

type MethodOptions struct {
	// Indicates whether the method requires clients to submit a valid API key.
	// Experimental.
	ApiKeyRequired *bool `json:"apiKeyRequired"`
	// A list of authorization scopes configured on the method.
	//
	// The scopes are used with
	// a COGNITO_USER_POOLS authorizer to authorize the method invocation.
	// See: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-method.html#cfn-apigateway-method-authorizationscopes
	//
	// Experimental.
	AuthorizationScopes *[]*string `json:"authorizationScopes"`
	// Method authorization. If the value is set of `Custom`, an `authorizer` must also be specified.
	//
	// If you're using one of the authorizers that are available via the {@link Authorizer} class, such as {@link Authorizer#token()},
	// it is recommended that this option not be specified. The authorizer will take care of setting the correct authorization type.
	// However, specifying an authorization type using this property that conflicts with what is expected by the {@link Authorizer}
	// will result in an error.
	// Experimental.
	AuthorizationType AuthorizationType `json:"authorizationType"`
	// If `authorizationType` is `Custom`, this specifies the ID of the method authorizer resource.
	//
	// If specified, the value of `authorizationType` must be set to `Custom`
	// Experimental.
	Authorizer IAuthorizer `json:"authorizer"`
	// The responses that can be sent to the client who calls the method.
	// See: https://docs.aws.amazon.com/apigateway/latest/developerguide/api-gateway-method-settings-method-response.html
	//
	// Experimental.
	MethodResponses *[]*MethodResponse `json:"methodResponses"`
	// A friendly operation name for the method.
	//
	// For example, you can assign the
	// OperationName of ListPets for the GET /pets method.
	// Experimental.
	OperationName *string `json:"operationName"`
	// The models which describe data structure of request payload.
	//
	// When
	// combined with `requestValidator` or `requestValidatorOptions`, the service
	// will validate the API request payload before it reaches the API's Integration (including proxies).
	// Specify `requestModels` as key-value pairs, with a content type
	// (e.g. `'application/json'`) as the key and an API Gateway Model as the value.
	//
	// TODO: EXAMPLE
	//
	// See: https://docs.aws.amazon.com/apigateway/latest/developerguide/api-gateway-method-settings-method-request.html#setup-method-request-model
	//
	// Experimental.
	RequestModels *map[string]IModel `json:"requestModels"`
	// The request parameters that API Gateway accepts.
	//
	// Specify request parameters
	// as key-value pairs (string-to-Boolean mapping), with a source as the key and
	// a Boolean as the value. The Boolean specifies whether a parameter is required.
	// A source must match the format method.request.location.name, where the location
	// is querystring, path, or header, and name is a valid, unique parameter name.
	// Experimental.
	RequestParameters *map[string]*bool `json:"requestParameters"`
	// The ID of the associated request validator.
	//
	// Only one of `requestValidator` or `requestValidatorOptions` must be specified.
	// Works together with `requestModels` or `requestParameters` to validate
	// the request before it reaches integration like Lambda Proxy Integration.
	// Experimental.
	RequestValidator IRequestValidator `json:"requestValidator"`
	// Request validator options to create new validator Only one of `requestValidator` or `requestValidatorOptions` must be specified.
	//
	// Works together with `requestModels` or `requestParameters` to validate
	// the request before it reaches integration like Lambda Proxy Integration.
	// Experimental.
	RequestValidatorOptions *RequestValidatorOptions `json:"requestValidatorOptions"`
}

Experimental.

type MethodProps

type MethodProps struct {
	// The HTTP method ("GET", "POST", "PUT", ...) that clients use to call this method.
	// Experimental.
	HttpMethod *string `json:"httpMethod"`
	// The resource this method is associated with.
	//
	// For root resource methods,
	// specify the `RestApi` object.
	// Experimental.
	Resource IResource `json:"resource"`
	// The backend system that the method calls when it receives a request.
	// Experimental.
	Integration Integration `json:"integration"`
	// Method options.
	// Experimental.
	Options *MethodOptions `json:"options"`
}

Experimental.

type MethodResponse

type MethodResponse struct {
	// The method response's status code, which you map to an IntegrationResponse.
	//
	// Required.
	// Experimental.
	StatusCode *string `json:"statusCode"`
	// The resources used for the response's content type.
	//
	// Specify response models as
	// key-value pairs (string-to-string maps), with a content type as the key and a Model
	// resource name as the value.
	// Experimental.
	ResponseModels *map[string]IModel `json:"responseModels"`
	// Response parameters that API Gateway sends to the client that called a method.
	//
	// Specify response parameters as key-value pairs (string-to-Boolean maps), with
	// a destination as the key and a Boolean as the value. Specify the destination
	// using the following pattern: method.response.header.name, where the name is a
	// valid, unique header name. The Boolean specifies whether a parameter is required.
	// Experimental.
	ResponseParameters *map[string]*bool `json:"responseParameters"`
}

Experimental.

type MockIntegration

type MockIntegration interface {
	Integration
	Bind(_method Method) *IntegrationConfig
}

This type of integration lets API Gateway return a response without sending the request further to the backend.

This is useful for API testing because it can be used to test the integration set up without incurring charges for using the backend and to enable collaborative development of an API. In collaborative development, a team can isolate their development effort by setting up simulations of API components owned by other teams by using the MOCK integrations. It is also used to return CORS-related headers to ensure that the API method permits CORS access. In fact, the API Gateway console integrates the OPTIONS method to support CORS with a mock integration. Gateway responses are other examples of mock integrations. Experimental.

func NewMockIntegration

func NewMockIntegration(options *IntegrationOptions) MockIntegration

Experimental.

type Model

type Model interface {
	awscdk.Resource
	IModel
	Env() *awscdk.ResourceEnvironment
	ModelId() *string
	Node() constructs.Node
	PhysicalName() *string
	Stack() awscdk.Stack
	ApplyRemovalPolicy(policy awscdk.RemovalPolicy)
	GeneratePhysicalName() *string
	GetResourceArnAttribute(arnAttr *string, arnComponents *awscdk.ArnComponents) *string
	GetResourceNameAttribute(nameAttr *string) *string
	ToString() *string
}

Experimental.

func NewModel

func NewModel(scope constructs.Construct, id *string, props *ModelProps) Model

Experimental.

type ModelOptions

type ModelOptions struct {
	// The schema to use to transform data to one or more output formats.
	//
	// Specify null ({}) if you don't want to specify a schema.
	// Experimental.
	Schema *JsonSchema `json:"schema"`
	// The content type for the model.
	//
	// You can also force a
	// content type in the request or response model mapping.
	// Experimental.
	ContentType *string `json:"contentType"`
	// A description that identifies this model.
	// Experimental.
	Description *string `json:"description"`
	// A name for the model.
	//
	// Important
	//   If you specify a name, you cannot perform updates that
	//   require replacement of this resource. You can perform
	//   updates that require no or some interruption. If you
	//   must replace the resource, specify a new name.
	// Experimental.
	ModelName *string `json:"modelName"`
}

Experimental.

type ModelProps

type ModelProps struct {
	// The schema to use to transform data to one or more output formats.
	//
	// Specify null ({}) if you don't want to specify a schema.
	// Experimental.
	Schema *JsonSchema `json:"schema"`
	// The content type for the model.
	//
	// You can also force a
	// content type in the request or response model mapping.
	// Experimental.
	ContentType *string `json:"contentType"`
	// A description that identifies this model.
	// Experimental.
	Description *string `json:"description"`
	// A name for the model.
	//
	// Important
	//   If you specify a name, you cannot perform updates that
	//   require replacement of this resource. You can perform
	//   updates that require no or some interruption. If you
	//   must replace the resource, specify a new name.
	// Experimental.
	ModelName *string `json:"modelName"`
	// The rest API that this model is part of.
	//
	// The reason we need the RestApi object itself and not just the ID is because the model
	// is being tracked by the top-level RestApi object for the purpose of calculating it's
	// hash to determine the ID of the deployment. This allows us to automatically update
	// the deployment when the model of the REST API changes.
	// Experimental.
	RestApi IRestApi `json:"restApi"`
}

Experimental.

type PassthroughBehavior

type PassthroughBehavior string

Experimental.

const (
	PassthroughBehavior_WHEN_NO_MATCH     PassthroughBehavior = "WHEN_NO_MATCH"
	PassthroughBehavior_NEVER             PassthroughBehavior = "NEVER"
	PassthroughBehavior_WHEN_NO_TEMPLATES PassthroughBehavior = "WHEN_NO_TEMPLATES"
)

type Period

type Period string

Time period for which quota settings apply. Experimental.

const (
	Period_DAY   Period = "DAY"
	Period_WEEK  Period = "WEEK"
	Period_MONTH Period = "MONTH"
)

type ProxyResource

type ProxyResource interface {
	Resource
	AnyMethod() Method
	Api() IRestApi
	DefaultCorsPreflightOptions() *CorsOptions
	DefaultIntegration() Integration
	DefaultMethodOptions() *MethodOptions
	Env() *awscdk.ResourceEnvironment
	Node() constructs.Node
	ParentResource() IResource
	Path() *string
	PhysicalName() *string
	ResourceId() *string
	Stack() awscdk.Stack
	AddCorsPreflight(options *CorsOptions) Method
	AddMethod(httpMethod *string, integration Integration, options *MethodOptions) Method
	AddProxy(options *ProxyResourceOptions) ProxyResource
	AddResource(pathPart *string, options *ResourceOptions) Resource
	ApplyRemovalPolicy(policy awscdk.RemovalPolicy)
	GeneratePhysicalName() *string
	GetResource(pathPart *string) IResource
	GetResourceArnAttribute(arnAttr *string, arnComponents *awscdk.ArnComponents) *string
	GetResourceNameAttribute(nameAttr *string) *string
	ResourceForPath(path *string) Resource
	ToString() *string
}

Defines a {proxy+} greedy resource and an ANY method on a route. See: https://docs.aws.amazon.com/apigateway/latest/developerguide/api-gateway-set-up-simple-proxy.html

Experimental.

func NewProxyResource

func NewProxyResource(scope constructs.Construct, id *string, props *ProxyResourceProps) ProxyResource

Experimental.

type ProxyResourceOptions

type ProxyResourceOptions struct {
	// Adds a CORS preflight OPTIONS method to this resource and all child resources.
	//
	// You can add CORS at the resource-level using `addCorsPreflight`.
	// Experimental.
	DefaultCorsPreflightOptions *CorsOptions `json:"defaultCorsPreflightOptions"`
	// An integration to use as a default for all methods created within this API unless an integration is specified.
	// Experimental.
	DefaultIntegration Integration `json:"defaultIntegration"`
	// Method options to use as a default for all methods created within this API unless custom options are specified.
	// Experimental.
	DefaultMethodOptions *MethodOptions `json:"defaultMethodOptions"`
	// Adds an "ANY" method to this resource.
	//
	// If set to `false`, you will have to explicitly
	// add methods to this resource after it's created.
	// Experimental.
	AnyMethod *bool `json:"anyMethod"`
}

Experimental.

type ProxyResourceProps

type ProxyResourceProps struct {
	// Adds a CORS preflight OPTIONS method to this resource and all child resources.
	//
	// You can add CORS at the resource-level using `addCorsPreflight`.
	// Experimental.
	DefaultCorsPreflightOptions *CorsOptions `json:"defaultCorsPreflightOptions"`
	// An integration to use as a default for all methods created within this API unless an integration is specified.
	// Experimental.
	DefaultIntegration Integration `json:"defaultIntegration"`
	// Method options to use as a default for all methods created within this API unless custom options are specified.
	// Experimental.
	DefaultMethodOptions *MethodOptions `json:"defaultMethodOptions"`
	// Adds an "ANY" method to this resource.
	//
	// If set to `false`, you will have to explicitly
	// add methods to this resource after it's created.
	// Experimental.
	AnyMethod *bool `json:"anyMethod"`
	// The parent resource of this resource.
	//
	// You can either pass another
	// `Resource` object or a `RestApi` object here.
	// Experimental.
	Parent IResource `json:"parent"`
}

Experimental.

type QuotaSettings

type QuotaSettings struct {
	// The maximum number of requests that users can make within the specified time period.
	// Experimental.
	Limit *float64 `json:"limit"`
	// For the initial time period, the number of requests to subtract from the specified limit.
	// Experimental.
	Offset *float64 `json:"offset"`
	// The time period for which the maximum limit of requests applies.
	// Experimental.
	Period Period `json:"period"`
}

Specifies the maximum number of requests that clients can make to API Gateway APIs. Experimental.

type RateLimitedApiKey

type RateLimitedApiKey interface {
	awscdk.Resource
	IApiKey
	Env() *awscdk.ResourceEnvironment
	KeyArn() *string
	KeyId() *string
	Node() constructs.Node
	PhysicalName() *string
	Stack() awscdk.Stack
	ApplyRemovalPolicy(policy awscdk.RemovalPolicy)
	GeneratePhysicalName() *string
	GetResourceArnAttribute(arnAttr *string, arnComponents *awscdk.ArnComponents) *string
	GetResourceNameAttribute(nameAttr *string) *string
	GrantRead(grantee awsiam.IGrantable) awsiam.Grant
	GrantReadWrite(grantee awsiam.IGrantable) awsiam.Grant
	GrantWrite(grantee awsiam.IGrantable) awsiam.Grant
	ToString() *string
}

An API Gateway ApiKey, for which a rate limiting configuration can be specified. Experimental.

func NewRateLimitedApiKey

func NewRateLimitedApiKey(scope constructs.Construct, id *string, props *RateLimitedApiKeyProps) RateLimitedApiKey

Experimental.

type RateLimitedApiKeyProps

type RateLimitedApiKeyProps struct {
	// Adds a CORS preflight OPTIONS method to this resource and all child resources.
	//
	// You can add CORS at the resource-level using `addCorsPreflight`.
	// Experimental.
	DefaultCorsPreflightOptions *CorsOptions `json:"defaultCorsPreflightOptions"`
	// An integration to use as a default for all methods created within this API unless an integration is specified.
	// Experimental.
	DefaultIntegration Integration `json:"defaultIntegration"`
	// Method options to use as a default for all methods created within this API unless custom options are specified.
	// Experimental.
	DefaultMethodOptions *MethodOptions `json:"defaultMethodOptions"`
	// A name for the API key.
	//
	// If you don't specify a name, AWS CloudFormation generates a unique physical ID and uses that ID for the API key name.
	// Experimental.
	ApiKeyName *string `json:"apiKeyName"`
	// The value of the API key.
	//
	// Must be at least 20 characters long.
	// Experimental.
	Value *string `json:"value"`
	// An AWS Marketplace customer identifier to use when integrating with the AWS SaaS Marketplace.
	// Experimental.
	CustomerId *string `json:"customerId"`
	// A description of the purpose of the API key.
	// Experimental.
	Description *string `json:"description"`
	// Indicates whether the API key can be used by clients.
	// Experimental.
	Enabled *bool `json:"enabled"`
	// Specifies whether the key identifier is distinct from the created API key value.
	// Experimental.
	GenerateDistinctId *bool `json:"generateDistinctId"`
	// A list of resources this api key is associated with.
	// Experimental.
	Resources *[]IRestApi `json:"resources"`
	// API Stages to be associated with the RateLimitedApiKey.
	// Experimental.
	ApiStages *[]*UsagePlanPerApiStage `json:"apiStages"`
	// Number of requests clients can make in a given time period.
	// Experimental.
	Quota *QuotaSettings `json:"quota"`
	// Overall throttle settings for the API.
	// Experimental.
	Throttle *ThrottleSettings `json:"throttle"`
}

RateLimitedApiKey properties. Experimental.

type RequestAuthorizer

type RequestAuthorizer interface {
	Authorizer
	IAuthorizer
	AuthorizationType() AuthorizationType
	AuthorizerArn() *string
	AuthorizerId() *string
	Env() *awscdk.ResourceEnvironment
	Handler() awslambda.IFunction
	Node() constructs.Node
	PhysicalName() *string
	RestApiId() *string
	SetRestApiId(val *string)
	Role() awsiam.IRole
	Stack() awscdk.Stack
	ApplyRemovalPolicy(policy awscdk.RemovalPolicy)
	GeneratePhysicalName() *string
	GetResourceArnAttribute(arnAttr *string, arnComponents *awscdk.ArnComponents) *string
	GetResourceNameAttribute(nameAttr *string) *string
	LazyRestApiId() *string
	SetupPermissions()
	ToString() *string
}

Request-based lambda authorizer that recognizes the caller's identity via request parameters, such as headers, paths, query strings, stage variables, or context variables.

Based on the request, authorization is performed by a lambda function. Experimental.

func NewRequestAuthorizer

func NewRequestAuthorizer(scope constructs.Construct, id *string, props *RequestAuthorizerProps) RequestAuthorizer

Experimental.

type RequestAuthorizerProps

type RequestAuthorizerProps struct {
	// The handler for the authorizer lambda function.
	//
	// The handler must follow a very specific protocol on the input it receives and the output it needs to produce.
	// API Gateway has documented the handler's input specification
	// {@link https://docs.aws.amazon.com/apigateway/latest/developerguide/api-gateway-lambda-authorizer-input.html | here} and output specification
	// {@link https://docs.aws.amazon.com/apigateway/latest/developerguide/api-gateway-lambda-authorizer-output.html | here}.
	// Experimental.
	Handler awslambda.IFunction `json:"handler"`
	// An optional IAM role for APIGateway to assume before calling the Lambda-based authorizer.
	//
	// The IAM role must be
	// assumable by 'apigateway.amazonaws.com'.
	// Experimental.
	AssumeRole awsiam.IRole `json:"assumeRole"`
	// An optional human friendly name for the authorizer.
	//
	// Note that, this is not the primary identifier of the authorizer.
	// Experimental.
	AuthorizerName *string `json:"authorizerName"`
	// How long APIGateway should cache the results.
	//
	// Max 1 hour.
	// Disable caching by setting this to 0.
	// Experimental.
	ResultsCacheTtl awscdk.Duration `json:"resultsCacheTtl"`
	// An array of request header mapping expressions for identities.
	//
	// Supported parameter types are
	// Header, Query String, Stage Variable, and Context. For instance, extracting an authorization
	// token from a header would use the identity source `IdentitySource.header('Authorizer')`.
	//
	// Note: API Gateway uses the specified identity sources as the request authorizer caching key. When caching is
	// enabled, API Gateway calls the authorizer's Lambda function only after successfully verifying that all the
	// specified identity sources are present at runtime. If a specified identify source is missing, null, or empty,
	// API Gateway returns a 401 Unauthorized response without calling the authorizer Lambda function.
	// See: https://docs.aws.amazon.com/apigateway/api-reference/link-relation/authorizer-create/#identitySource
	//
	// Experimental.
	IdentitySources *[]*string `json:"identitySources"`
}

Properties for RequestAuthorizer. Experimental.

type RequestValidator

type RequestValidator interface {
	awscdk.Resource
	IRequestValidator
	Env() *awscdk.ResourceEnvironment
	Node() constructs.Node
	PhysicalName() *string
	RequestValidatorId() *string
	Stack() awscdk.Stack
	ApplyRemovalPolicy(policy awscdk.RemovalPolicy)
	GeneratePhysicalName() *string
	GetResourceArnAttribute(arnAttr *string, arnComponents *awscdk.ArnComponents) *string
	GetResourceNameAttribute(nameAttr *string) *string
	ToString() *string
}

Experimental.

func NewRequestValidator

func NewRequestValidator(scope constructs.Construct, id *string, props *RequestValidatorProps) RequestValidator

Experimental.

type RequestValidatorOptions

type RequestValidatorOptions struct {
	// The name of this request validator.
	// Experimental.
	RequestValidatorName *string `json:"requestValidatorName"`
	// Indicates whether to validate the request body according to the configured schema for the targeted API and method.
	// Experimental.
	ValidateRequestBody *bool `json:"validateRequestBody"`
	// Indicates whether to validate request parameters.
	// Experimental.
	ValidateRequestParameters *bool `json:"validateRequestParameters"`
}

Experimental.

type RequestValidatorProps

type RequestValidatorProps struct {
	// The name of this request validator.
	// Experimental.
	RequestValidatorName *string `json:"requestValidatorName"`
	// Indicates whether to validate the request body according to the configured schema for the targeted API and method.
	// Experimental.
	ValidateRequestBody *bool `json:"validateRequestBody"`
	// Indicates whether to validate request parameters.
	// Experimental.
	ValidateRequestParameters *bool `json:"validateRequestParameters"`
	// The rest API that this model is part of.
	//
	// The reason we need the RestApi object itself and not just the ID is because the model
	// is being tracked by the top-level RestApi object for the purpose of calculating it's
	// hash to determine the ID of the deployment. This allows us to automatically update
	// the deployment when the model of the REST API changes.
	// Experimental.
	RestApi IRestApi `json:"restApi"`
}

Experimental.

type Resource

type Resource interface {
	ResourceBase
	Api() IRestApi
	DefaultCorsPreflightOptions() *CorsOptions
	DefaultIntegration() Integration
	DefaultMethodOptions() *MethodOptions
	Env() *awscdk.ResourceEnvironment
	Node() constructs.Node
	ParentResource() IResource
	Path() *string
	PhysicalName() *string
	ResourceId() *string
	Stack() awscdk.Stack
	AddCorsPreflight(options *CorsOptions) Method
	AddMethod(httpMethod *string, integration Integration, options *MethodOptions) Method
	AddProxy(options *ProxyResourceOptions) ProxyResource
	AddResource(pathPart *string, options *ResourceOptions) Resource
	ApplyRemovalPolicy(policy awscdk.RemovalPolicy)
	GeneratePhysicalName() *string
	GetResource(pathPart *string) IResource
	GetResourceArnAttribute(arnAttr *string, arnComponents *awscdk.ArnComponents) *string
	GetResourceNameAttribute(nameAttr *string) *string
	ResourceForPath(path *string) Resource
	ToString() *string
}

Experimental.

func NewResource

func NewResource(scope constructs.Construct, id *string, props *ResourceProps) Resource

Experimental.

type ResourceAttributes

type ResourceAttributes struct {
	// The full path of this resource.
	// Experimental.
	Path *string `json:"path"`
	// The ID of the resource.
	// Experimental.
	ResourceId *string `json:"resourceId"`
	// The rest API that this resource is part of.
	// Experimental.
	RestApi IRestApi `json:"restApi"`
}

Attributes that can be specified when importing a Resource. Experimental.

type ResourceBase

type ResourceBase interface {
	awscdk.Resource
	IResource
	Api() IRestApi
	DefaultCorsPreflightOptions() *CorsOptions
	DefaultIntegration() Integration
	DefaultMethodOptions() *MethodOptions
	Env() *awscdk.ResourceEnvironment
	Node() constructs.Node
	ParentResource() IResource
	Path() *string
	PhysicalName() *string
	ResourceId() *string
	Stack() awscdk.Stack
	AddCorsPreflight(options *CorsOptions) Method
	AddMethod(httpMethod *string, integration Integration, options *MethodOptions) Method
	AddProxy(options *ProxyResourceOptions) ProxyResource
	AddResource(pathPart *string, options *ResourceOptions) Resource
	ApplyRemovalPolicy(policy awscdk.RemovalPolicy)
	GeneratePhysicalName() *string
	GetResource(pathPart *string) IResource
	GetResourceArnAttribute(arnAttr *string, arnComponents *awscdk.ArnComponents) *string
	GetResourceNameAttribute(nameAttr *string) *string
	ResourceForPath(path *string) Resource
	ToString() *string
}

Experimental.

type ResourceOptions

type ResourceOptions struct {
	// Adds a CORS preflight OPTIONS method to this resource and all child resources.
	//
	// You can add CORS at the resource-level using `addCorsPreflight`.
	// Experimental.
	DefaultCorsPreflightOptions *CorsOptions `json:"defaultCorsPreflightOptions"`
	// An integration to use as a default for all methods created within this API unless an integration is specified.
	// Experimental.
	DefaultIntegration Integration `json:"defaultIntegration"`
	// Method options to use as a default for all methods created within this API unless custom options are specified.
	// Experimental.
	DefaultMethodOptions *MethodOptions `json:"defaultMethodOptions"`
}

Experimental.

type ResourceProps

type ResourceProps struct {
	// Adds a CORS preflight OPTIONS method to this resource and all child resources.
	//
	// You can add CORS at the resource-level using `addCorsPreflight`.
	// Experimental.
	DefaultCorsPreflightOptions *CorsOptions `json:"defaultCorsPreflightOptions"`
	// An integration to use as a default for all methods created within this API unless an integration is specified.
	// Experimental.
	DefaultIntegration Integration `json:"defaultIntegration"`
	// Method options to use as a default for all methods created within this API unless custom options are specified.
	// Experimental.
	DefaultMethodOptions *MethodOptions `json:"defaultMethodOptions"`
	// The parent resource of this resource.
	//
	// You can either pass another
	// `Resource` object or a `RestApi` object here.
	// Experimental.
	Parent IResource `json:"parent"`
	// A path name for the resource.
	// Experimental.
	PathPart *string `json:"pathPart"`
}

Experimental.

type ResponseType

type ResponseType interface {
	ResponseType() *string
}

Supported types of gateway responses. See: https://docs.aws.amazon.com/apigateway/latest/developerguide/supported-gateway-response-types.html

Experimental.

func ResponseType_ACCESS_DENIED

func ResponseType_ACCESS_DENIED() ResponseType

func ResponseType_API_CONFIGURATION_ERROR

func ResponseType_API_CONFIGURATION_ERROR() ResponseType

func ResponseType_AUTHORIZER_CONFIGURATION_ERROR

func ResponseType_AUTHORIZER_CONFIGURATION_ERROR() ResponseType

func ResponseType_AUTHORIZER_FAILURE

func ResponseType_AUTHORIZER_FAILURE() ResponseType

func ResponseType_BAD_REQUEST_BODY

func ResponseType_BAD_REQUEST_BODY() ResponseType

func ResponseType_BAD_REQUEST_PARAMETERS

func ResponseType_BAD_REQUEST_PARAMETERS() ResponseType

func ResponseType_DEFAULT_4XX

func ResponseType_DEFAULT_4XX() ResponseType

func ResponseType_DEFAULT_5XX

func ResponseType_DEFAULT_5XX() ResponseType

func ResponseType_EXPIRED_TOKEN

func ResponseType_EXPIRED_TOKEN() ResponseType

func ResponseType_INTEGRATION_FAILURE

func ResponseType_INTEGRATION_FAILURE() ResponseType

func ResponseType_INTEGRATION_TIMEOUT

func ResponseType_INTEGRATION_TIMEOUT() ResponseType

func ResponseType_INVALID_API_KEY

func ResponseType_INVALID_API_KEY() ResponseType

func ResponseType_INVALID_SIGNATURE

func ResponseType_INVALID_SIGNATURE() ResponseType

func ResponseType_MISSING_AUTHENTICATION_TOKEN

func ResponseType_MISSING_AUTHENTICATION_TOKEN() ResponseType

func ResponseType_Of

func ResponseType_Of(type_ *string) ResponseType

A custom response type to support future cases. Experimental.

func ResponseType_QUOTA_EXCEEDED

func ResponseType_QUOTA_EXCEEDED() ResponseType

func ResponseType_REQUEST_TOO_LARGE

func ResponseType_REQUEST_TOO_LARGE() ResponseType

func ResponseType_RESOURCE_NOT_FOUND

func ResponseType_RESOURCE_NOT_FOUND() ResponseType

func ResponseType_THROTTLED

func ResponseType_THROTTLED() ResponseType

func ResponseType_UNAUTHORIZED

func ResponseType_UNAUTHORIZED() ResponseType

func ResponseType_UNSUPPORTED_MEDIA_TYPE

func ResponseType_UNSUPPORTED_MEDIA_TYPE() ResponseType

func ResponseType_WAF_FILTERED

func ResponseType_WAF_FILTERED() ResponseType

type RestApi

type RestApi interface {
	RestApiBase
	DeploymentStage() Stage
	SetDeploymentStage(val Stage)
	DomainName() DomainName
	Env() *awscdk.ResourceEnvironment
	LatestDeployment() Deployment
	Methods() *[]Method
	Node() constructs.Node
	PhysicalName() *string
	RestApiId() *string
	RestApiName() *string
	RestApiRootResourceId() *string
	Root() IResource
	Stack() awscdk.Stack
	Url() *string
	AddApiKey(id *string, options *ApiKeyOptions) IApiKey
	AddDomainName(id *string, options *DomainNameOptions) DomainName
	AddGatewayResponse(id *string, options *GatewayResponseOptions) GatewayResponse
	AddModel(id *string, props *ModelOptions) Model
	AddRequestValidator(id *string, props *RequestValidatorOptions) RequestValidator
	AddUsagePlan(id *string, props *UsagePlanProps) UsagePlan
	ApplyRemovalPolicy(policy awscdk.RemovalPolicy)
	ArnForExecuteApi(method *string, path *string, stage *string) *string
	GeneratePhysicalName() *string
	GetResourceArnAttribute(arnAttr *string, arnComponents *awscdk.ArnComponents) *string
	GetResourceNameAttribute(nameAttr *string) *string
	Metric(metricName *string, props *awscloudwatch.MetricOptions) awscloudwatch.Metric
	MetricCacheHitCount(props *awscloudwatch.MetricOptions) awscloudwatch.Metric
	MetricCacheMissCount(props *awscloudwatch.MetricOptions) awscloudwatch.Metric
	MetricClientError(props *awscloudwatch.MetricOptions) awscloudwatch.Metric
	MetricCount(props *awscloudwatch.MetricOptions) awscloudwatch.Metric
	MetricIntegrationLatency(props *awscloudwatch.MetricOptions) awscloudwatch.Metric
	MetricLatency(props *awscloudwatch.MetricOptions) awscloudwatch.Metric
	MetricServerError(props *awscloudwatch.MetricOptions) awscloudwatch.Metric
	ToString() *string
	UrlForPath(path *string) *string
}

Represents a REST API in Amazon API Gateway.

Use `addResource` and `addMethod` to configure the API model.

By default, the API will automatically be deployed and accessible from a public endpoint. Experimental.

func NewRestApi

func NewRestApi(scope constructs.Construct, id *string, props *RestApiProps) RestApi

Experimental.

type RestApiAttributes

type RestApiAttributes struct {
	// The ID of the API Gateway RestApi.
	// Experimental.
	RestApiId *string `json:"restApiId"`
	// The resource ID of the root resource.
	// Experimental.
	RootResourceId *string `json:"rootResourceId"`
}

Attributes that can be specified when importing a RestApi. Experimental.

type RestApiBase

type RestApiBase interface {
	awscdk.Resource
	IRestApi
	DeploymentStage() Stage
	SetDeploymentStage(val Stage)
	DomainName() DomainName
	Env() *awscdk.ResourceEnvironment
	LatestDeployment() Deployment
	Node() constructs.Node
	PhysicalName() *string
	RestApiId() *string
	RestApiName() *string
	RestApiRootResourceId() *string
	Root() IResource
	Stack() awscdk.Stack
	AddApiKey(id *string, options *ApiKeyOptions) IApiKey
	AddDomainName(id *string, options *DomainNameOptions) DomainName
	AddGatewayResponse(id *string, options *GatewayResponseOptions) GatewayResponse
	AddUsagePlan(id *string, props *UsagePlanProps) UsagePlan
	ApplyRemovalPolicy(policy awscdk.RemovalPolicy)
	ArnForExecuteApi(method *string, path *string, stage *string) *string
	GeneratePhysicalName() *string
	GetResourceArnAttribute(arnAttr *string, arnComponents *awscdk.ArnComponents) *string
	GetResourceNameAttribute(nameAttr *string) *string
	Metric(metricName *string, props *awscloudwatch.MetricOptions) awscloudwatch.Metric
	MetricCacheHitCount(props *awscloudwatch.MetricOptions) awscloudwatch.Metric
	MetricCacheMissCount(props *awscloudwatch.MetricOptions) awscloudwatch.Metric
	MetricClientError(props *awscloudwatch.MetricOptions) awscloudwatch.Metric
	MetricCount(props *awscloudwatch.MetricOptions) awscloudwatch.Metric
	MetricIntegrationLatency(props *awscloudwatch.MetricOptions) awscloudwatch.Metric
	MetricLatency(props *awscloudwatch.MetricOptions) awscloudwatch.Metric
	MetricServerError(props *awscloudwatch.MetricOptions) awscloudwatch.Metric
	ToString() *string
	UrlForPath(path *string) *string
}

Base implementation that are common to various implementations of IRestApi. Experimental.

type RestApiBaseProps

type RestApiBaseProps struct {
	// Automatically configure an AWS CloudWatch role for API Gateway.
	// Experimental.
	CloudWatchRole *bool `json:"cloudWatchRole"`
	// Indicates if a Deployment should be automatically created for this API, and recreated when the API model (resources, methods) changes.
	//
	// 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.
	// Experimental.
	Deploy *bool `json:"deploy"`
	// Options for the API Gateway stage that will always point to the latest deployment when `deploy` is enabled.
	//
	// If `deploy` is disabled,
	// this value cannot be set.
	// Experimental.
	DeployOptions *StageOptions `json:"deployOptions"`
	// Specifies whether clients can invoke the API using the default execute-api endpoint.
	//
	// To require that clients use a custom domain name to invoke the
	// API, disable the default endpoint.
	// See: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-restapi.html
	//
	// Experimental.
	DisableExecuteApiEndpoint *bool `json:"disableExecuteApiEndpoint"`
	// Configure a custom domain name and map it to this API.
	// Experimental.
	DomainName *DomainNameOptions `json:"domainName"`
	// Export name for the CfnOutput containing the API endpoint.
	// Experimental.
	EndpointExportName *string `json:"endpointExportName"`
	// A list of the endpoint types of the API.
	//
	// Use this property when creating
	// an API.
	// Experimental.
	EndpointTypes *[]EndpointType `json:"endpointTypes"`
	// Indicates whether to roll back the resource if a warning occurs while API Gateway is creating the RestApi resource.
	// Experimental.
	FailOnWarnings *bool `json:"failOnWarnings"`
	// Custom header parameters for the request.
	// See: https://docs.aws.amazon.com/cli/latest/reference/apigateway/import-rest-api.html
	//
	// Experimental.
	Parameters *map[string]*string `json:"parameters"`
	// A policy document that contains the permissions for this RestApi.
	// Experimental.
	Policy awsiam.PolicyDocument `json:"policy"`
	// A name for the API Gateway RestApi resource.
	// Experimental.
	RestApiName *string `json:"restApiName"`
	// Retains old deployment resources when the API changes.
	//
	// This allows
	// manually reverting stages to point to old deployments via the AWS
	// Console.
	// Experimental.
	RetainDeployments *bool `json:"retainDeployments"`
}

Represents the props that all Rest APIs share. Experimental.

type RestApiProps

type RestApiProps struct {
	// Adds a CORS preflight OPTIONS method to this resource and all child resources.
	//
	// You can add CORS at the resource-level using `addCorsPreflight`.
	// Experimental.
	DefaultCorsPreflightOptions *CorsOptions `json:"defaultCorsPreflightOptions"`
	// An integration to use as a default for all methods created within this API unless an integration is specified.
	// Experimental.
	DefaultIntegration Integration `json:"defaultIntegration"`
	// Method options to use as a default for all methods created within this API unless custom options are specified.
	// Experimental.
	DefaultMethodOptions *MethodOptions `json:"defaultMethodOptions"`
	// Automatically configure an AWS CloudWatch role for API Gateway.
	// Experimental.
	CloudWatchRole *bool `json:"cloudWatchRole"`
	// Indicates if a Deployment should be automatically created for this API, and recreated when the API model (resources, methods) changes.
	//
	// 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.
	// Experimental.
	Deploy *bool `json:"deploy"`
	// Options for the API Gateway stage that will always point to the latest deployment when `deploy` is enabled.
	//
	// If `deploy` is disabled,
	// this value cannot be set.
	// Experimental.
	DeployOptions *StageOptions `json:"deployOptions"`
	// Specifies whether clients can invoke the API using the default execute-api endpoint.
	//
	// To require that clients use a custom domain name to invoke the
	// API, disable the default endpoint.
	// See: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-restapi.html
	//
	// Experimental.
	DisableExecuteApiEndpoint *bool `json:"disableExecuteApiEndpoint"`
	// Configure a custom domain name and map it to this API.
	// Experimental.
	DomainName *DomainNameOptions `json:"domainName"`
	// Export name for the CfnOutput containing the API endpoint.
	// Experimental.
	EndpointExportName *string `json:"endpointExportName"`
	// A list of the endpoint types of the API.
	//
	// Use this property when creating
	// an API.
	// Experimental.
	EndpointTypes *[]EndpointType `json:"endpointTypes"`
	// Indicates whether to roll back the resource if a warning occurs while API Gateway is creating the RestApi resource.
	// Experimental.
	FailOnWarnings *bool `json:"failOnWarnings"`
	// Custom header parameters for the request.
	// See: https://docs.aws.amazon.com/cli/latest/reference/apigateway/import-rest-api.html
	//
	// Experimental.
	Parameters *map[string]*string `json:"parameters"`
	// A policy document that contains the permissions for this RestApi.
	// Experimental.
	Policy awsiam.PolicyDocument `json:"policy"`
	// A name for the API Gateway RestApi resource.
	// Experimental.
	RestApiName *string `json:"restApiName"`
	// Retains old deployment resources when the API changes.
	//
	// This allows
	// manually reverting stages to point to old deployments via the AWS
	// Console.
	// Experimental.
	RetainDeployments *bool `json:"retainDeployments"`
	// The source of the API key for metering requests according to a usage plan.
	// Experimental.
	ApiKeySourceType ApiKeySourceType `json:"apiKeySourceType"`
	// The list of binary media mime-types that are supported by the RestApi resource, such as "image/png" or "application/octet-stream".
	// Experimental.
	BinaryMediaTypes *[]*string `json:"binaryMediaTypes"`
	// The ID of the API Gateway RestApi resource that you want to clone.
	// Experimental.
	CloneFrom IRestApi `json:"cloneFrom"`
	// A description of the purpose of this API Gateway RestApi resource.
	// Experimental.
	Description *string `json:"description"`
	// The EndpointConfiguration property type specifies the endpoint types of a REST API.
	// See: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-apigateway-restapi-endpointconfiguration.html
	//
	// Experimental.
	EndpointConfiguration *EndpointConfiguration `json:"endpointConfiguration"`
	// A nullable integer that is used to enable compression (with non-negative between 0 and 10485760 (10M) bytes, inclusive) or disable compression (when undefined) on an API.
	//
	// When compression is enabled, compression or
	// decompression is not applied on the payload if the payload size is
	// smaller than this value. Setting it to zero allows compression for any
	// payload size.
	// Experimental.
	MinimumCompressionSize *float64 `json:"minimumCompressionSize"`
}

Props to create a new instance of RestApi. Experimental.

type S3ApiDefinition

type S3ApiDefinition interface {
	ApiDefinition
	Bind(_scope constructs.Construct) *ApiDefinitionConfig
}

OpenAPI specification from an S3 archive. Experimental.

func ApiDefinition_FromBucket

func ApiDefinition_FromBucket(bucket awss3.IBucket, key *string, objectVersion *string) S3ApiDefinition

Creates an API definition from a specification file in an S3 bucket. Experimental.

func AssetApiDefinition_FromBucket

func AssetApiDefinition_FromBucket(bucket awss3.IBucket, key *string, objectVersion *string) S3ApiDefinition

Creates an API definition from a specification file in an S3 bucket. Experimental.

func InlineApiDefinition_FromBucket

func InlineApiDefinition_FromBucket(bucket awss3.IBucket, key *string, objectVersion *string) S3ApiDefinition

Creates an API definition from a specification file in an S3 bucket. Experimental.

func NewS3ApiDefinition

func NewS3ApiDefinition(bucket awss3.IBucket, key *string, objectVersion *string) S3ApiDefinition

Experimental.

func S3ApiDefinition_FromBucket

func S3ApiDefinition_FromBucket(bucket awss3.IBucket, key *string, objectVersion *string) S3ApiDefinition

Creates an API definition from a specification file in an S3 bucket. Experimental.

type SecurityPolicy

type SecurityPolicy string

The minimum version of the SSL protocol that you want API Gateway to use for HTTPS connections. Experimental.

const (
	SecurityPolicy_TLS_1_0 SecurityPolicy = "TLS_1_0"
	SecurityPolicy_TLS_1_2 SecurityPolicy = "TLS_1_2"
)

type SpecRestApi

type SpecRestApi interface {
	RestApiBase
	DeploymentStage() Stage
	SetDeploymentStage(val Stage)
	DomainName() DomainName
	Env() *awscdk.ResourceEnvironment
	LatestDeployment() Deployment
	Node() constructs.Node
	PhysicalName() *string
	RestApiId() *string
	RestApiName() *string
	RestApiRootResourceId() *string
	Root() IResource
	Stack() awscdk.Stack
	AddApiKey(id *string, options *ApiKeyOptions) IApiKey
	AddDomainName(id *string, options *DomainNameOptions) DomainName
	AddGatewayResponse(id *string, options *GatewayResponseOptions) GatewayResponse
	AddUsagePlan(id *string, props *UsagePlanProps) UsagePlan
	ApplyRemovalPolicy(policy awscdk.RemovalPolicy)
	ArnForExecuteApi(method *string, path *string, stage *string) *string
	GeneratePhysicalName() *string
	GetResourceArnAttribute(arnAttr *string, arnComponents *awscdk.ArnComponents) *string
	GetResourceNameAttribute(nameAttr *string) *string
	Metric(metricName *string, props *awscloudwatch.MetricOptions) awscloudwatch.Metric
	MetricCacheHitCount(props *awscloudwatch.MetricOptions) awscloudwatch.Metric
	MetricCacheMissCount(props *awscloudwatch.MetricOptions) awscloudwatch.Metric
	MetricClientError(props *awscloudwatch.MetricOptions) awscloudwatch.Metric
	MetricCount(props *awscloudwatch.MetricOptions) awscloudwatch.Metric
	MetricIntegrationLatency(props *awscloudwatch.MetricOptions) awscloudwatch.Metric
	MetricLatency(props *awscloudwatch.MetricOptions) awscloudwatch.Metric
	MetricServerError(props *awscloudwatch.MetricOptions) awscloudwatch.Metric
	ToString() *string
	UrlForPath(path *string) *string
}

Represents a REST API in Amazon API Gateway, created with an OpenAPI specification.

Some properties normally accessible on @see {@link RestApi} - such as the description - must be declared in the specification. All Resources and Methods need to be defined as part of the OpenAPI specification file, and cannot be added via the CDK.

By default, the API will automatically be deployed and accessible from a public endpoint. Experimental.

func NewSpecRestApi

func NewSpecRestApi(scope constructs.Construct, id *string, props *SpecRestApiProps) SpecRestApi

Experimental.

type SpecRestApiProps

type SpecRestApiProps struct {
	// Automatically configure an AWS CloudWatch role for API Gateway.
	// Experimental.
	CloudWatchRole *bool `json:"cloudWatchRole"`
	// Indicates if a Deployment should be automatically created for this API, and recreated when the API model (resources, methods) changes.
	//
	// 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.
	// Experimental.
	Deploy *bool `json:"deploy"`
	// Options for the API Gateway stage that will always point to the latest deployment when `deploy` is enabled.
	//
	// If `deploy` is disabled,
	// this value cannot be set.
	// Experimental.
	DeployOptions *StageOptions `json:"deployOptions"`
	// Specifies whether clients can invoke the API using the default execute-api endpoint.
	//
	// To require that clients use a custom domain name to invoke the
	// API, disable the default endpoint.
	// See: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-restapi.html
	//
	// Experimental.
	DisableExecuteApiEndpoint *bool `json:"disableExecuteApiEndpoint"`
	// Configure a custom domain name and map it to this API.
	// Experimental.
	DomainName *DomainNameOptions `json:"domainName"`
	// Export name for the CfnOutput containing the API endpoint.
	// Experimental.
	EndpointExportName *string `json:"endpointExportName"`
	// A list of the endpoint types of the API.
	//
	// Use this property when creating
	// an API.
	// Experimental.
	EndpointTypes *[]EndpointType `json:"endpointTypes"`
	// Indicates whether to roll back the resource if a warning occurs while API Gateway is creating the RestApi resource.
	// Experimental.
	FailOnWarnings *bool `json:"failOnWarnings"`
	// Custom header parameters for the request.
	// See: https://docs.aws.amazon.com/cli/latest/reference/apigateway/import-rest-api.html
	//
	// Experimental.
	Parameters *map[string]*string `json:"parameters"`
	// A policy document that contains the permissions for this RestApi.
	// Experimental.
	Policy awsiam.PolicyDocument `json:"policy"`
	// A name for the API Gateway RestApi resource.
	// Experimental.
	RestApiName *string `json:"restApiName"`
	// Retains old deployment resources when the API changes.
	//
	// This allows
	// manually reverting stages to point to old deployments via the AWS
	// Console.
	// Experimental.
	RetainDeployments *bool `json:"retainDeployments"`
	// An OpenAPI definition compatible with API Gateway.
	// See: https://docs.aws.amazon.com/apigateway/latest/developerguide/api-gateway-import-api.html
	//
	// Experimental.
	ApiDefinition ApiDefinition `json:"apiDefinition"`
}

Props to instantiate a new SpecRestApi. Experimental.

type Stage

type Stage interface {
	awscdk.Resource
	IStage
	Env() *awscdk.ResourceEnvironment
	Node() constructs.Node
	PhysicalName() *string
	RestApi() IRestApi
	Stack() awscdk.Stack
	StageName() *string
	ApplyRemovalPolicy(policy awscdk.RemovalPolicy)
	GeneratePhysicalName() *string
	GetResourceArnAttribute(arnAttr *string, arnComponents *awscdk.ArnComponents) *string
	GetResourceNameAttribute(nameAttr *string) *string
	ToString() *string
	UrlForPath(path *string) *string
}

Experimental.

func NewStage

func NewStage(scope constructs.Construct, id *string, props *StageProps) Stage

Experimental.

type StageOptions

type StageOptions struct {
	// Indicates whether the cached responses are encrypted.
	// Experimental.
	CacheDataEncrypted *bool `json:"cacheDataEncrypted"`
	// Specifies the time to live (TTL), in seconds, for cached responses.
	//
	// The
	// higher the TTL, the longer the response will be cached.
	// See: https://docs.aws.amazon.com/apigateway/latest/developerguide/api-gateway-caching.html
	//
	// Experimental.
	CacheTtl awscdk.Duration `json:"cacheTtl"`
	// Specifies whether responses should be cached and returned for requests.
	//
	// A
	// cache cluster must be enabled on the stage for responses to be cached.
	// Experimental.
	CachingEnabled *bool `json:"cachingEnabled"`
	// Specifies whether data trace logging is enabled for this method, which effects the log entries pushed to Amazon CloudWatch Logs.
	// Experimental.
	DataTraceEnabled *bool `json:"dataTraceEnabled"`
	// Specifies the logging level for this method, which effects the log entries pushed to Amazon CloudWatch Logs.
	// Experimental.
	LoggingLevel MethodLoggingLevel `json:"loggingLevel"`
	// Specifies whether Amazon CloudWatch metrics are enabled for this method.
	// Experimental.
	MetricsEnabled *bool `json:"metricsEnabled"`
	// Specifies the throttling burst limit.
	//
	// The total rate of all requests in your AWS account is limited to 5,000 requests.
	// See: https://docs.aws.amazon.com/apigateway/latest/developerguide/api-gateway-request-throttling.html
	//
	// Experimental.
	ThrottlingBurstLimit *float64 `json:"throttlingBurstLimit"`
	// Specifies the throttling rate limit.
	//
	// The total rate of all requests in your AWS account is limited to 10,000 requests per second (rps).
	// See: https://docs.aws.amazon.com/apigateway/latest/developerguide/api-gateway-request-throttling.html
	//
	// Experimental.
	ThrottlingRateLimit *float64 `json:"throttlingRateLimit"`
	// The CloudWatch Logs log group.
	// Experimental.
	AccessLogDestination IAccessLogDestination `json:"accessLogDestination"`
	// A single line format of access logs of data, as specified by selected $content variables.
	//
	// The format must include at least `AccessLogFormat.contextRequestId()`.
	// See: https://docs.aws.amazon.com/apigateway/latest/developerguide/api-gateway-mapping-template-reference.html#context-variable-reference
	//
	// Experimental.
	AccessLogFormat AccessLogFormat `json:"accessLogFormat"`
	// Indicates whether cache clustering is enabled for the stage.
	// Experimental.
	CacheClusterEnabled *bool `json:"cacheClusterEnabled"`
	// The stage's cache cluster size.
	// Experimental.
	CacheClusterSize *string `json:"cacheClusterSize"`
	// The identifier of the client certificate that API Gateway uses to call your integration endpoints in the stage.
	// Experimental.
	ClientCertificateId *string `json:"clientCertificateId"`
	// A description of the purpose of the stage.
	// Experimental.
	Description *string `json:"description"`
	// The version identifier of the API documentation snapshot.
	// Experimental.
	DocumentationVersion *string `json:"documentationVersion"`
	// Method deployment options for specific resources/methods.
	//
	// These will
	// override common options defined in `StageOptions#methodOptions`.
	// Experimental.
	MethodOptions *map[string]*MethodDeploymentOptions `json:"methodOptions"`
	// The name of the stage, which API Gateway uses as the first path segment in the invoked Uniform Resource Identifier (URI).
	// Experimental.
	StageName *string `json:"stageName"`
	// Specifies whether Amazon X-Ray tracing is enabled for this method.
	// Experimental.
	TracingEnabled *bool `json:"tracingEnabled"`
	// A map that defines the stage variables.
	//
	// Variable names must consist of
	// alphanumeric characters, and the values must match the following regular
	// expression: [A-Za-z0-9-._~:/?#&=,]+.
	// Experimental.
	Variables *map[string]*string `json:"variables"`
}

Experimental.

type StageProps

type StageProps struct {
	// Indicates whether the cached responses are encrypted.
	// Experimental.
	CacheDataEncrypted *bool `json:"cacheDataEncrypted"`
	// Specifies the time to live (TTL), in seconds, for cached responses.
	//
	// The
	// higher the TTL, the longer the response will be cached.
	// See: https://docs.aws.amazon.com/apigateway/latest/developerguide/api-gateway-caching.html
	//
	// Experimental.
	CacheTtl awscdk.Duration `json:"cacheTtl"`
	// Specifies whether responses should be cached and returned for requests.
	//
	// A
	// cache cluster must be enabled on the stage for responses to be cached.
	// Experimental.
	CachingEnabled *bool `json:"cachingEnabled"`
	// Specifies whether data trace logging is enabled for this method, which effects the log entries pushed to Amazon CloudWatch Logs.
	// Experimental.
	DataTraceEnabled *bool `json:"dataTraceEnabled"`
	// Specifies the logging level for this method, which effects the log entries pushed to Amazon CloudWatch Logs.
	// Experimental.
	LoggingLevel MethodLoggingLevel `json:"loggingLevel"`
	// Specifies whether Amazon CloudWatch metrics are enabled for this method.
	// Experimental.
	MetricsEnabled *bool `json:"metricsEnabled"`
	// Specifies the throttling burst limit.
	//
	// The total rate of all requests in your AWS account is limited to 5,000 requests.
	// See: https://docs.aws.amazon.com/apigateway/latest/developerguide/api-gateway-request-throttling.html
	//
	// Experimental.
	ThrottlingBurstLimit *float64 `json:"throttlingBurstLimit"`
	// Specifies the throttling rate limit.
	//
	// The total rate of all requests in your AWS account is limited to 10,000 requests per second (rps).
	// See: https://docs.aws.amazon.com/apigateway/latest/developerguide/api-gateway-request-throttling.html
	//
	// Experimental.
	ThrottlingRateLimit *float64 `json:"throttlingRateLimit"`
	// The CloudWatch Logs log group.
	// Experimental.
	AccessLogDestination IAccessLogDestination `json:"accessLogDestination"`
	// A single line format of access logs of data, as specified by selected $content variables.
	//
	// The format must include at least `AccessLogFormat.contextRequestId()`.
	// See: https://docs.aws.amazon.com/apigateway/latest/developerguide/api-gateway-mapping-template-reference.html#context-variable-reference
	//
	// Experimental.
	AccessLogFormat AccessLogFormat `json:"accessLogFormat"`
	// Indicates whether cache clustering is enabled for the stage.
	// Experimental.
	CacheClusterEnabled *bool `json:"cacheClusterEnabled"`
	// The stage's cache cluster size.
	// Experimental.
	CacheClusterSize *string `json:"cacheClusterSize"`
	// The identifier of the client certificate that API Gateway uses to call your integration endpoints in the stage.
	// Experimental.
	ClientCertificateId *string `json:"clientCertificateId"`
	// A description of the purpose of the stage.
	// Experimental.
	Description *string `json:"description"`
	// The version identifier of the API documentation snapshot.
	// Experimental.
	DocumentationVersion *string `json:"documentationVersion"`
	// Method deployment options for specific resources/methods.
	//
	// These will
	// override common options defined in `StageOptions#methodOptions`.
	// Experimental.
	MethodOptions *map[string]*MethodDeploymentOptions `json:"methodOptions"`
	// The name of the stage, which API Gateway uses as the first path segment in the invoked Uniform Resource Identifier (URI).
	// Experimental.
	StageName *string `json:"stageName"`
	// Specifies whether Amazon X-Ray tracing is enabled for this method.
	// Experimental.
	TracingEnabled *bool `json:"tracingEnabled"`
	// A map that defines the stage variables.
	//
	// Variable names must consist of
	// alphanumeric characters, and the values must match the following regular
	// expression: [A-Za-z0-9-._~:/?#&=,]+.
	// Experimental.
	Variables *map[string]*string `json:"variables"`
	// The deployment that this stage points to [disable-awslint:ref-via-interface].
	// Experimental.
	Deployment Deployment `json:"deployment"`
}

Experimental.

type ThrottleSettings

type ThrottleSettings struct {
	// The maximum API request rate limit over a time ranging from one to a few seconds.
	// Experimental.
	BurstLimit *float64 `json:"burstLimit"`
	// The API request steady-state rate limit (average requests per second over an extended period of time).
	// Experimental.
	RateLimit *float64 `json:"rateLimit"`
}

Container for defining throttling parameters to API stages or methods. Experimental.

type ThrottlingPerMethod

type ThrottlingPerMethod struct {
	// [disable-awslint:ref-via-interface] The method for which you specify the throttling settings.
	// Experimental.
	Method Method `json:"method"`
	// Specifies the overall request rate (average requests per second) and burst capacity.
	// Experimental.
	Throttle *ThrottleSettings `json:"throttle"`
}

Represents per-method throttling for a resource. Experimental.

type TokenAuthorizer

type TokenAuthorizer interface {
	Authorizer
	IAuthorizer
	AuthorizationType() AuthorizationType
	AuthorizerArn() *string
	AuthorizerId() *string
	Env() *awscdk.ResourceEnvironment
	Handler() awslambda.IFunction
	Node() constructs.Node
	PhysicalName() *string
	RestApiId() *string
	SetRestApiId(val *string)
	Role() awsiam.IRole
	Stack() awscdk.Stack
	ApplyRemovalPolicy(policy awscdk.RemovalPolicy)
	GeneratePhysicalName() *string
	GetResourceArnAttribute(arnAttr *string, arnComponents *awscdk.ArnComponents) *string
	GetResourceNameAttribute(nameAttr *string) *string
	LazyRestApiId() *string
	SetupPermissions()
	ToString() *string
}

Token based lambda authorizer that recognizes the caller's identity as a bearer token, such as a JSON Web Token (JWT) or an OAuth token.

Based on the token, authorization is performed by a lambda function. Experimental.

func NewTokenAuthorizer

func NewTokenAuthorizer(scope constructs.Construct, id *string, props *TokenAuthorizerProps) TokenAuthorizer

Experimental.

type TokenAuthorizerProps

type TokenAuthorizerProps struct {
	// The handler for the authorizer lambda function.
	//
	// The handler must follow a very specific protocol on the input it receives and the output it needs to produce.
	// API Gateway has documented the handler's input specification
	// {@link https://docs.aws.amazon.com/apigateway/latest/developerguide/api-gateway-lambda-authorizer-input.html | here} and output specification
	// {@link https://docs.aws.amazon.com/apigateway/latest/developerguide/api-gateway-lambda-authorizer-output.html | here}.
	// Experimental.
	Handler awslambda.IFunction `json:"handler"`
	// An optional IAM role for APIGateway to assume before calling the Lambda-based authorizer.
	//
	// The IAM role must be
	// assumable by 'apigateway.amazonaws.com'.
	// Experimental.
	AssumeRole awsiam.IRole `json:"assumeRole"`
	// An optional human friendly name for the authorizer.
	//
	// Note that, this is not the primary identifier of the authorizer.
	// Experimental.
	AuthorizerName *string `json:"authorizerName"`
	// How long APIGateway should cache the results.
	//
	// Max 1 hour.
	// Disable caching by setting this to 0.
	// Experimental.
	ResultsCacheTtl awscdk.Duration `json:"resultsCacheTtl"`
	// The request header mapping expression for the bearer token.
	//
	// This is typically passed as part of the header, in which case
	// this should be `method.request.header.Authorizer` where Authorizer is the header containing the bearer token.
	// See: https://docs.aws.amazon.com/apigateway/api-reference/link-relation/authorizer-create/#identitySource
	//
	// Experimental.
	IdentitySource *string `json:"identitySource"`
	// An optional regex to be matched against the authorization token.
	//
	// When matched the authorizer lambda is invoked,
	// otherwise a 401 Unauthorized is returned to the client.
	// Experimental.
	ValidationRegex *string `json:"validationRegex"`
}

Properties for TokenAuthorizer. Experimental.

type UsagePlan

type UsagePlan interface {
	awscdk.Resource
	IUsagePlan
	Env() *awscdk.ResourceEnvironment
	Node() constructs.Node
	PhysicalName() *string
	Stack() awscdk.Stack
	UsagePlanId() *string
	AddApiKey(apiKey IApiKey, options *AddApiKeyOptions)
	AddApiStage(apiStage *UsagePlanPerApiStage)
	ApplyRemovalPolicy(policy awscdk.RemovalPolicy)
	GeneratePhysicalName() *string
	GetResourceArnAttribute(arnAttr *string, arnComponents *awscdk.ArnComponents) *string
	GetResourceNameAttribute(nameAttr *string) *string
	ToString() *string
}

Experimental.

func NewUsagePlan

func NewUsagePlan(scope constructs.Construct, id *string, props *UsagePlanProps) UsagePlan

Experimental.

type UsagePlanPerApiStage

type UsagePlanPerApiStage struct {
	// Experimental.
	Api IRestApi `json:"api"`
	// [disable-awslint:ref-via-interface].
	// Experimental.
	Stage Stage `json:"stage"`
	// Experimental.
	Throttle *[]*ThrottlingPerMethod `json:"throttle"`
}

Represents the API stages that a usage plan applies to. Experimental.

type UsagePlanProps

type UsagePlanProps struct {
	// API Stages to be associated with the usage plan.
	// Experimental.
	ApiStages *[]*UsagePlanPerApiStage `json:"apiStages"`
	// Represents usage plan purpose.
	// Experimental.
	Description *string `json:"description"`
	// Name for this usage plan.
	// Experimental.
	Name *string `json:"name"`
	// Number of requests clients can make in a given time period.
	// Experimental.
	Quota *QuotaSettings `json:"quota"`
	// Overall throttle settings for the API.
	// Experimental.
	Throttle *ThrottleSettings `json:"throttle"`
}

Experimental.

type VpcLink interface {
	awscdk.Resource
	IVpcLink
	Env() *awscdk.ResourceEnvironment
	Node() constructs.Node
	PhysicalName() *string
	Stack() awscdk.Stack
	VpcLinkId() *string
	AddTargets(targets ...awselasticloadbalancingv2.INetworkLoadBalancer)
	ApplyRemovalPolicy(policy awscdk.RemovalPolicy)
	GeneratePhysicalName() *string
	GetResourceArnAttribute(arnAttr *string, arnComponents *awscdk.ArnComponents) *string
	GetResourceNameAttribute(nameAttr *string) *string
	ToString() *string
}

Define a new VPC Link Specifies an API Gateway VPC link for a RestApi to access resources in an Amazon Virtual Private Cloud (VPC). Experimental.

func NewVpcLink(scope constructs.Construct, id *string, props *VpcLinkProps) VpcLink

Experimental.

type VpcLinkProps

type VpcLinkProps struct {
	// The description of the VPC link.
	// Experimental.
	Description *string `json:"description"`
	// The network load balancers of the VPC targeted by the VPC link.
	//
	// The network load balancers must be owned by the same AWS account of the API owner.
	// Experimental.
	Targets *[]awselasticloadbalancingv2.INetworkLoadBalancer `json:"targets"`
	// The name used to label and identify the VPC link.
	// Experimental.
	VpcLinkName *string `json:"vpcLinkName"`
}

Properties for a VpcLink. Experimental.

Directories

Path Synopsis

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL