Interface RestApiOptions

All Superinterfaces:
software.amazon.jsii.JsiiSerializable, ResourceOptions, RestApiBaseProps
All Known Subinterfaces:
LambdaRestApiProps, RestApiProps, StepFunctionsRestApiProps
All Known Implementing Classes:
LambdaRestApiProps.Jsii$Proxy, RestApiOptions.Jsii$Proxy, RestApiProps.Jsii$Proxy, StepFunctionsRestApiProps.Jsii$Proxy

@Generated(value="jsii-pacmak/1.84.0 (build 5404dcf)", date="2023-06-19T16:30:45.084Z") @Stability(Deprecated) @Deprecated public interface RestApiOptions extends software.amazon.jsii.JsiiSerializable, RestApiBaseProps, ResourceOptions
Deprecated.
  • superseded by RestApiBaseProps
(deprecated) Represents the props that all Rest APIs share.

Example:

 // The code below shows an example of how to instantiate this type.
 // The values are placeholders you should change.
 import software.amazon.awscdk.services.apigateway.*;
 import software.amazon.awscdk.services.certificatemanager.*;
 import software.amazon.awscdk.services.iam.*;
 import software.amazon.awscdk.services.s3.*;
 import software.amazon.awscdk.core.*;
 IAccessLogDestination accessLogDestination;
 AccessLogFormat accessLogFormat;
 Authorizer authorizer;
 Bucket bucket;
 Certificate certificate;
 Integration integration;
 Model model;
 PolicyDocument policyDocument;
 RequestValidator requestValidator;
 RestApiOptions restApiOptions = RestApiOptions.builder()
         .cloudWatchRole(false)
         .defaultCorsPreflightOptions(CorsOptions.builder()
                 .allowOrigins(List.of("allowOrigins"))
                 // the properties below are optional
                 .allowCredentials(false)
                 .allowHeaders(List.of("allowHeaders"))
                 .allowMethods(List.of("allowMethods"))
                 .disableCache(false)
                 .exposeHeaders(List.of("exposeHeaders"))
                 .maxAge(Duration.minutes(30))
                 .statusCode(123)
                 .build())
         .defaultIntegration(integration)
         .defaultMethodOptions(MethodOptions.builder()
                 .apiKeyRequired(false)
                 .authorizationScopes(List.of("authorizationScopes"))
                 .authorizationType(AuthorizationType.NONE)
                 .authorizer(authorizer)
                 .methodResponses(List.of(MethodResponse.builder()
                         .statusCode("statusCode")
                         // the properties below are optional
                         .responseModels(Map.of(
                                 "responseModelsKey", model))
                         .responseParameters(Map.of(
                                 "responseParametersKey", false))
                         .build()))
                 .operationName("operationName")
                 .requestModels(Map.of(
                         "requestModelsKey", model))
                 .requestParameters(Map.of(
                         "requestParametersKey", false))
                 .requestValidator(requestValidator)
                 .requestValidatorOptions(RequestValidatorOptions.builder()
                         .requestValidatorName("requestValidatorName")
                         .validateRequestBody(false)
                         .validateRequestParameters(false)
                         .build())
                 .build())
         .deploy(false)
         .deployOptions(StageOptions.builder()
                 .accessLogDestination(accessLogDestination)
                 .accessLogFormat(accessLogFormat)
                 .cacheClusterEnabled(false)
                 .cacheClusterSize("cacheClusterSize")
                 .cacheDataEncrypted(false)
                 .cacheTtl(Duration.minutes(30))
                 .cachingEnabled(false)
                 .clientCertificateId("clientCertificateId")
                 .dataTraceEnabled(false)
                 .description("description")
                 .documentationVersion("documentationVersion")
                 .loggingLevel(MethodLoggingLevel.OFF)
                 .methodOptions(Map.of(
                         "methodOptionsKey", MethodDeploymentOptions.builder()
                                 .cacheDataEncrypted(false)
                                 .cacheTtl(Duration.minutes(30))
                                 .cachingEnabled(false)
                                 .dataTraceEnabled(false)
                                 .loggingLevel(MethodLoggingLevel.OFF)
                                 .metricsEnabled(false)
                                 .throttlingBurstLimit(123)
                                 .throttlingRateLimit(123)
                                 .build()))
                 .metricsEnabled(false)
                 .stageName("stageName")
                 .throttlingBurstLimit(123)
                 .throttlingRateLimit(123)
                 .tracingEnabled(false)
                 .variables(Map.of(
                         "variablesKey", "variables"))
                 .build())
         .disableExecuteApiEndpoint(false)
         .domainName(DomainNameOptions.builder()
                 .certificate(certificate)
                 .domainName("domainName")
                 // the properties below are optional
                 .basePath("basePath")
                 .endpointType(EndpointType.EDGE)
                 .mtls(MTLSConfig.builder()
                         .bucket(bucket)
                         .key("key")
                         // the properties below are optional
                         .version("version")
                         .build())
                 .securityPolicy(SecurityPolicy.TLS_1_0)
                 .build())
         .endpointExportName("endpointExportName")
         .endpointTypes(List.of(EndpointType.EDGE))
         .failOnWarnings(false)
         .parameters(Map.of(
                 "parametersKey", "parameters"))
         .policy(policyDocument)
         .restApiName("restApiName")
         .retainDeployments(false)
         .build();