aws-sdk-apigatewayv2 1.23.0 → 1.29.0

Sign up to get free protection for your applications and to get access to all the features.
@@ -169,6 +169,8 @@ module Aws::ApiGatewayV2
169
169
  LoggingLevel = Shapes::StringShape.new(name: 'LoggingLevel')
170
170
  Model = Shapes::StructureShape.new(name: 'Model')
171
171
  Models = Shapes::StructureShape.new(name: 'Models')
172
+ MutualTlsAuthentication = Shapes::StructureShape.new(name: 'MutualTlsAuthentication')
173
+ MutualTlsAuthenticationInput = Shapes::StructureShape.new(name: 'MutualTlsAuthenticationInput')
172
174
  NextToken = Shapes::StringShape.new(name: 'NextToken')
173
175
  NotFoundException = Shapes::StructureShape.new(name: 'NotFoundException')
174
176
  ParameterConstraints = Shapes::StructureShape.new(name: 'ParameterConstraints')
@@ -177,6 +179,7 @@ module Aws::ApiGatewayV2
177
179
  ReimportApiInput = Shapes::StructureShape.new(name: 'ReimportApiInput')
178
180
  ReimportApiRequest = Shapes::StructureShape.new(name: 'ReimportApiRequest')
179
181
  ReimportApiResponse = Shapes::StructureShape.new(name: 'ReimportApiResponse')
182
+ ResetAuthorizersCacheRequest = Shapes::StructureShape.new(name: 'ResetAuthorizersCacheRequest')
180
183
  Route = Shapes::StructureShape.new(name: 'Route')
181
184
  RouteModels = Shapes::MapShape.new(name: 'RouteModels')
182
185
  RouteParameters = Shapes::MapShape.new(name: 'RouteParameters')
@@ -282,12 +285,14 @@ module Aws::ApiGatewayV2
282
285
  AccessLogSettings.struct_class = Types::AccessLogSettings
283
286
 
284
287
  Api.add_member(:api_endpoint, Shapes::ShapeRef.new(shape: __string, location_name: "apiEndpoint"))
288
+ Api.add_member(:api_gateway_managed, Shapes::ShapeRef.new(shape: __boolean, location_name: "apiGatewayManaged"))
285
289
  Api.add_member(:api_id, Shapes::ShapeRef.new(shape: Id, location_name: "apiId"))
286
290
  Api.add_member(:api_key_selection_expression, Shapes::ShapeRef.new(shape: SelectionExpression, location_name: "apiKeySelectionExpression"))
287
291
  Api.add_member(:cors_configuration, Shapes::ShapeRef.new(shape: Cors, location_name: "corsConfiguration"))
288
292
  Api.add_member(:created_date, Shapes::ShapeRef.new(shape: __timestampIso8601, location_name: "createdDate"))
289
293
  Api.add_member(:description, Shapes::ShapeRef.new(shape: StringWithLengthBetween0And1024, location_name: "description"))
290
294
  Api.add_member(:disable_schema_validation, Shapes::ShapeRef.new(shape: __boolean, location_name: "disableSchemaValidation"))
295
+ Api.add_member(:disable_execute_api_endpoint, Shapes::ShapeRef.new(shape: __boolean, location_name: "disableExecuteApiEndpoint"))
291
296
  Api.add_member(:import_info, Shapes::ShapeRef.new(shape: __listOf__string, location_name: "importInfo"))
292
297
  Api.add_member(:name, Shapes::ShapeRef.new(shape: StringWithLengthBetween1And128, required: true, location_name: "name"))
293
298
  Api.add_member(:protocol_type, Shapes::ShapeRef.new(shape: ProtocolType, required: true, location_name: "protocolType"))
@@ -322,6 +327,8 @@ module Aws::ApiGatewayV2
322
327
  Authorizer.add_member(:identity_validation_expression, Shapes::ShapeRef.new(shape: StringWithLengthBetween0And1024, location_name: "identityValidationExpression"))
323
328
  Authorizer.add_member(:jwt_configuration, Shapes::ShapeRef.new(shape: JWTConfiguration, location_name: "jwtConfiguration"))
324
329
  Authorizer.add_member(:name, Shapes::ShapeRef.new(shape: StringWithLengthBetween1And128, required: true, location_name: "name"))
330
+ Authorizer.add_member(:authorizer_payload_format_version, Shapes::ShapeRef.new(shape: StringWithLengthBetween1And64, location_name: "authorizerPayloadFormatVersion"))
331
+ Authorizer.add_member(:enable_simple_responses, Shapes::ShapeRef.new(shape: __boolean, location_name: "enableSimpleResponses"))
325
332
  Authorizer.struct_class = Types::Authorizer
326
333
 
327
334
  Authorizers.add_member(:items, Shapes::ShapeRef.new(shape: __listOfAuthorizer, location_name: "items"))
@@ -353,6 +360,7 @@ module Aws::ApiGatewayV2
353
360
  CreateApiInput.add_member(:credentials_arn, Shapes::ShapeRef.new(shape: Arn, location_name: "credentialsArn"))
354
361
  CreateApiInput.add_member(:description, Shapes::ShapeRef.new(shape: StringWithLengthBetween0And1024, location_name: "description"))
355
362
  CreateApiInput.add_member(:disable_schema_validation, Shapes::ShapeRef.new(shape: __boolean, location_name: "disableSchemaValidation"))
363
+ CreateApiInput.add_member(:disable_execute_api_endpoint, Shapes::ShapeRef.new(shape: __boolean, location_name: "disableExecuteApiEndpoint"))
356
364
  CreateApiInput.add_member(:name, Shapes::ShapeRef.new(shape: StringWithLengthBetween1And128, required: true, location_name: "name"))
357
365
  CreateApiInput.add_member(:protocol_type, Shapes::ShapeRef.new(shape: ProtocolType, required: true, location_name: "protocolType"))
358
366
  CreateApiInput.add_member(:route_key, Shapes::ShapeRef.new(shape: SelectionKey, location_name: "routeKey"))
@@ -384,6 +392,7 @@ module Aws::ApiGatewayV2
384
392
  CreateApiRequest.add_member(:credentials_arn, Shapes::ShapeRef.new(shape: Arn, location_name: "credentialsArn"))
385
393
  CreateApiRequest.add_member(:description, Shapes::ShapeRef.new(shape: StringWithLengthBetween0And1024, location_name: "description"))
386
394
  CreateApiRequest.add_member(:disable_schema_validation, Shapes::ShapeRef.new(shape: __boolean, location_name: "disableSchemaValidation"))
395
+ CreateApiRequest.add_member(:disable_execute_api_endpoint, Shapes::ShapeRef.new(shape: __boolean, location_name: "disableExecuteApiEndpoint"))
387
396
  CreateApiRequest.add_member(:name, Shapes::ShapeRef.new(shape: StringWithLengthBetween1And128, required: true, location_name: "name"))
388
397
  CreateApiRequest.add_member(:protocol_type, Shapes::ShapeRef.new(shape: ProtocolType, required: true, location_name: "protocolType"))
389
398
  CreateApiRequest.add_member(:route_key, Shapes::ShapeRef.new(shape: SelectionKey, location_name: "routeKey"))
@@ -394,12 +403,14 @@ module Aws::ApiGatewayV2
394
403
  CreateApiRequest.struct_class = Types::CreateApiRequest
395
404
 
396
405
  CreateApiResponse.add_member(:api_endpoint, Shapes::ShapeRef.new(shape: __string, location_name: "apiEndpoint"))
406
+ CreateApiResponse.add_member(:api_gateway_managed, Shapes::ShapeRef.new(shape: __boolean, location_name: "apiGatewayManaged"))
397
407
  CreateApiResponse.add_member(:api_id, Shapes::ShapeRef.new(shape: Id, location_name: "apiId"))
398
408
  CreateApiResponse.add_member(:api_key_selection_expression, Shapes::ShapeRef.new(shape: SelectionExpression, location_name: "apiKeySelectionExpression"))
399
409
  CreateApiResponse.add_member(:cors_configuration, Shapes::ShapeRef.new(shape: Cors, location_name: "corsConfiguration"))
400
410
  CreateApiResponse.add_member(:created_date, Shapes::ShapeRef.new(shape: __timestampIso8601, location_name: "createdDate"))
401
411
  CreateApiResponse.add_member(:description, Shapes::ShapeRef.new(shape: StringWithLengthBetween0And1024, location_name: "description"))
402
412
  CreateApiResponse.add_member(:disable_schema_validation, Shapes::ShapeRef.new(shape: __boolean, location_name: "disableSchemaValidation"))
413
+ CreateApiResponse.add_member(:disable_execute_api_endpoint, Shapes::ShapeRef.new(shape: __boolean, location_name: "disableExecuteApiEndpoint"))
403
414
  CreateApiResponse.add_member(:import_info, Shapes::ShapeRef.new(shape: __listOf__string, location_name: "importInfo"))
404
415
  CreateApiResponse.add_member(:name, Shapes::ShapeRef.new(shape: StringWithLengthBetween1And128, location_name: "name"))
405
416
  CreateApiResponse.add_member(:protocol_type, Shapes::ShapeRef.new(shape: ProtocolType, location_name: "protocolType"))
@@ -417,6 +428,8 @@ module Aws::ApiGatewayV2
417
428
  CreateAuthorizerInput.add_member(:identity_validation_expression, Shapes::ShapeRef.new(shape: StringWithLengthBetween0And1024, location_name: "identityValidationExpression"))
418
429
  CreateAuthorizerInput.add_member(:jwt_configuration, Shapes::ShapeRef.new(shape: JWTConfiguration, location_name: "jwtConfiguration"))
419
430
  CreateAuthorizerInput.add_member(:name, Shapes::ShapeRef.new(shape: StringWithLengthBetween1And128, required: true, location_name: "name"))
431
+ CreateAuthorizerInput.add_member(:authorizer_payload_format_version, Shapes::ShapeRef.new(shape: StringWithLengthBetween1And64, location_name: "authorizerPayloadFormatVersion"))
432
+ CreateAuthorizerInput.add_member(:enable_simple_responses, Shapes::ShapeRef.new(shape: __boolean, location_name: "enableSimpleResponses"))
420
433
  CreateAuthorizerInput.struct_class = Types::CreateAuthorizerInput
421
434
 
422
435
  CreateAuthorizerRequest.add_member(:api_id, Shapes::ShapeRef.new(shape: __string, required: true, location: "uri", location_name: "apiId"))
@@ -428,6 +441,8 @@ module Aws::ApiGatewayV2
428
441
  CreateAuthorizerRequest.add_member(:identity_validation_expression, Shapes::ShapeRef.new(shape: StringWithLengthBetween0And1024, location_name: "identityValidationExpression"))
429
442
  CreateAuthorizerRequest.add_member(:jwt_configuration, Shapes::ShapeRef.new(shape: JWTConfiguration, location_name: "jwtConfiguration"))
430
443
  CreateAuthorizerRequest.add_member(:name, Shapes::ShapeRef.new(shape: StringWithLengthBetween1And128, required: true, location_name: "name"))
444
+ CreateAuthorizerRequest.add_member(:authorizer_payload_format_version, Shapes::ShapeRef.new(shape: StringWithLengthBetween1And64, location_name: "authorizerPayloadFormatVersion"))
445
+ CreateAuthorizerRequest.add_member(:enable_simple_responses, Shapes::ShapeRef.new(shape: __boolean, location_name: "enableSimpleResponses"))
431
446
  CreateAuthorizerRequest.struct_class = Types::CreateAuthorizerRequest
432
447
 
433
448
  CreateAuthorizerResponse.add_member(:authorizer_credentials_arn, Shapes::ShapeRef.new(shape: Arn, location_name: "authorizerCredentialsArn"))
@@ -439,6 +454,8 @@ module Aws::ApiGatewayV2
439
454
  CreateAuthorizerResponse.add_member(:identity_validation_expression, Shapes::ShapeRef.new(shape: StringWithLengthBetween0And1024, location_name: "identityValidationExpression"))
440
455
  CreateAuthorizerResponse.add_member(:jwt_configuration, Shapes::ShapeRef.new(shape: JWTConfiguration, location_name: "jwtConfiguration"))
441
456
  CreateAuthorizerResponse.add_member(:name, Shapes::ShapeRef.new(shape: StringWithLengthBetween1And128, location_name: "name"))
457
+ CreateAuthorizerResponse.add_member(:authorizer_payload_format_version, Shapes::ShapeRef.new(shape: StringWithLengthBetween1And64, location_name: "authorizerPayloadFormatVersion"))
458
+ CreateAuthorizerResponse.add_member(:enable_simple_responses, Shapes::ShapeRef.new(shape: __boolean, location_name: "enableSimpleResponses"))
442
459
  CreateAuthorizerResponse.struct_class = Types::CreateAuthorizerResponse
443
460
 
444
461
  CreateDeploymentInput.add_member(:description, Shapes::ShapeRef.new(shape: StringWithLengthBetween0And1024, location_name: "description"))
@@ -460,17 +477,20 @@ module Aws::ApiGatewayV2
460
477
 
461
478
  CreateDomainNameInput.add_member(:domain_name, Shapes::ShapeRef.new(shape: StringWithLengthBetween1And512, required: true, location_name: "domainName"))
462
479
  CreateDomainNameInput.add_member(:domain_name_configurations, Shapes::ShapeRef.new(shape: DomainNameConfigurations, location_name: "domainNameConfigurations"))
480
+ CreateDomainNameInput.add_member(:mutual_tls_authentication, Shapes::ShapeRef.new(shape: MutualTlsAuthenticationInput, location_name: "mutualTlsAuthentication"))
463
481
  CreateDomainNameInput.add_member(:tags, Shapes::ShapeRef.new(shape: Tags, location_name: "tags"))
464
482
  CreateDomainNameInput.struct_class = Types::CreateDomainNameInput
465
483
 
466
484
  CreateDomainNameRequest.add_member(:domain_name, Shapes::ShapeRef.new(shape: StringWithLengthBetween1And512, required: true, location_name: "domainName"))
467
485
  CreateDomainNameRequest.add_member(:domain_name_configurations, Shapes::ShapeRef.new(shape: DomainNameConfigurations, location_name: "domainNameConfigurations"))
486
+ CreateDomainNameRequest.add_member(:mutual_tls_authentication, Shapes::ShapeRef.new(shape: MutualTlsAuthenticationInput, location_name: "mutualTlsAuthentication"))
468
487
  CreateDomainNameRequest.add_member(:tags, Shapes::ShapeRef.new(shape: Tags, location_name: "tags"))
469
488
  CreateDomainNameRequest.struct_class = Types::CreateDomainNameRequest
470
489
 
471
490
  CreateDomainNameResponse.add_member(:api_mapping_selection_expression, Shapes::ShapeRef.new(shape: SelectionExpression, location_name: "apiMappingSelectionExpression"))
472
491
  CreateDomainNameResponse.add_member(:domain_name, Shapes::ShapeRef.new(shape: StringWithLengthBetween1And512, location_name: "domainName"))
473
492
  CreateDomainNameResponse.add_member(:domain_name_configurations, Shapes::ShapeRef.new(shape: DomainNameConfigurations, location_name: "domainNameConfigurations"))
493
+ CreateDomainNameResponse.add_member(:mutual_tls_authentication, Shapes::ShapeRef.new(shape: MutualTlsAuthentication, location_name: "mutualTlsAuthentication"))
474
494
  CreateDomainNameResponse.add_member(:tags, Shapes::ShapeRef.new(shape: Tags, location_name: "tags"))
475
495
  CreateDomainNameResponse.struct_class = Types::CreateDomainNameResponse
476
496
 
@@ -480,6 +500,7 @@ module Aws::ApiGatewayV2
480
500
  CreateIntegrationInput.add_member(:credentials_arn, Shapes::ShapeRef.new(shape: Arn, location_name: "credentialsArn"))
481
501
  CreateIntegrationInput.add_member(:description, Shapes::ShapeRef.new(shape: StringWithLengthBetween0And1024, location_name: "description"))
482
502
  CreateIntegrationInput.add_member(:integration_method, Shapes::ShapeRef.new(shape: StringWithLengthBetween1And64, location_name: "integrationMethod"))
503
+ CreateIntegrationInput.add_member(:integration_subtype, Shapes::ShapeRef.new(shape: StringWithLengthBetween1And128, location_name: "integrationSubtype"))
483
504
  CreateIntegrationInput.add_member(:integration_type, Shapes::ShapeRef.new(shape: IntegrationType, required: true, location_name: "integrationType"))
484
505
  CreateIntegrationInput.add_member(:integration_uri, Shapes::ShapeRef.new(shape: UriWithLengthBetween1And2048, location_name: "integrationUri"))
485
506
  CreateIntegrationInput.add_member(:passthrough_behavior, Shapes::ShapeRef.new(shape: PassthroughBehavior, location_name: "passthroughBehavior"))
@@ -498,6 +519,7 @@ module Aws::ApiGatewayV2
498
519
  CreateIntegrationRequest.add_member(:credentials_arn, Shapes::ShapeRef.new(shape: Arn, location_name: "credentialsArn"))
499
520
  CreateIntegrationRequest.add_member(:description, Shapes::ShapeRef.new(shape: StringWithLengthBetween0And1024, location_name: "description"))
500
521
  CreateIntegrationRequest.add_member(:integration_method, Shapes::ShapeRef.new(shape: StringWithLengthBetween1And64, location_name: "integrationMethod"))
522
+ CreateIntegrationRequest.add_member(:integration_subtype, Shapes::ShapeRef.new(shape: StringWithLengthBetween1And128, location_name: "integrationSubtype"))
501
523
  CreateIntegrationRequest.add_member(:integration_type, Shapes::ShapeRef.new(shape: IntegrationType, required: true, location_name: "integrationType"))
502
524
  CreateIntegrationRequest.add_member(:integration_uri, Shapes::ShapeRef.new(shape: UriWithLengthBetween1And2048, location_name: "integrationUri"))
503
525
  CreateIntegrationRequest.add_member(:passthrough_behavior, Shapes::ShapeRef.new(shape: PassthroughBehavior, location_name: "passthroughBehavior"))
@@ -542,6 +564,7 @@ module Aws::ApiGatewayV2
542
564
  CreateIntegrationResult.add_member(:integration_id, Shapes::ShapeRef.new(shape: Id, location_name: "integrationId"))
543
565
  CreateIntegrationResult.add_member(:integration_method, Shapes::ShapeRef.new(shape: StringWithLengthBetween1And64, location_name: "integrationMethod"))
544
566
  CreateIntegrationResult.add_member(:integration_response_selection_expression, Shapes::ShapeRef.new(shape: SelectionExpression, location_name: "integrationResponseSelectionExpression"))
567
+ CreateIntegrationResult.add_member(:integration_subtype, Shapes::ShapeRef.new(shape: StringWithLengthBetween1And128, location_name: "integrationSubtype"))
545
568
  CreateIntegrationResult.add_member(:integration_type, Shapes::ShapeRef.new(shape: IntegrationType, location_name: "integrationType"))
546
569
  CreateIntegrationResult.add_member(:integration_uri, Shapes::ShapeRef.new(shape: UriWithLengthBetween1And2048, location_name: "integrationUri"))
547
570
  CreateIntegrationResult.add_member(:passthrough_behavior, Shapes::ShapeRef.new(shape: PassthroughBehavior, location_name: "passthroughBehavior"))
@@ -781,6 +804,7 @@ module Aws::ApiGatewayV2
781
804
  DomainName.add_member(:api_mapping_selection_expression, Shapes::ShapeRef.new(shape: SelectionExpression, location_name: "apiMappingSelectionExpression"))
782
805
  DomainName.add_member(:domain_name, Shapes::ShapeRef.new(shape: StringWithLengthBetween1And512, required: true, location_name: "domainName"))
783
806
  DomainName.add_member(:domain_name_configurations, Shapes::ShapeRef.new(shape: DomainNameConfigurations, location_name: "domainNameConfigurations"))
807
+ DomainName.add_member(:mutual_tls_authentication, Shapes::ShapeRef.new(shape: MutualTlsAuthentication, location_name: "mutualTlsAuthentication"))
784
808
  DomainName.add_member(:tags, Shapes::ShapeRef.new(shape: Tags, location_name: "tags"))
785
809
  DomainName.struct_class = Types::DomainName
786
810
 
@@ -837,12 +861,14 @@ module Aws::ApiGatewayV2
837
861
  GetApiRequest.struct_class = Types::GetApiRequest
838
862
 
839
863
  GetApiResponse.add_member(:api_endpoint, Shapes::ShapeRef.new(shape: __string, location_name: "apiEndpoint"))
864
+ GetApiResponse.add_member(:api_gateway_managed, Shapes::ShapeRef.new(shape: __boolean, location_name: "apiGatewayManaged"))
840
865
  GetApiResponse.add_member(:api_id, Shapes::ShapeRef.new(shape: Id, location_name: "apiId"))
841
866
  GetApiResponse.add_member(:api_key_selection_expression, Shapes::ShapeRef.new(shape: SelectionExpression, location_name: "apiKeySelectionExpression"))
842
867
  GetApiResponse.add_member(:cors_configuration, Shapes::ShapeRef.new(shape: Cors, location_name: "corsConfiguration"))
843
868
  GetApiResponse.add_member(:created_date, Shapes::ShapeRef.new(shape: __timestampIso8601, location_name: "createdDate"))
844
869
  GetApiResponse.add_member(:description, Shapes::ShapeRef.new(shape: StringWithLengthBetween0And1024, location_name: "description"))
845
870
  GetApiResponse.add_member(:disable_schema_validation, Shapes::ShapeRef.new(shape: __boolean, location_name: "disableSchemaValidation"))
871
+ GetApiResponse.add_member(:disable_execute_api_endpoint, Shapes::ShapeRef.new(shape: __boolean, location_name: "disableExecuteApiEndpoint"))
846
872
  GetApiResponse.add_member(:import_info, Shapes::ShapeRef.new(shape: __listOf__string, location_name: "importInfo"))
847
873
  GetApiResponse.add_member(:name, Shapes::ShapeRef.new(shape: StringWithLengthBetween1And128, location_name: "name"))
848
874
  GetApiResponse.add_member(:protocol_type, Shapes::ShapeRef.new(shape: ProtocolType, location_name: "protocolType"))
@@ -873,6 +899,8 @@ module Aws::ApiGatewayV2
873
899
  GetAuthorizerResponse.add_member(:identity_validation_expression, Shapes::ShapeRef.new(shape: StringWithLengthBetween0And1024, location_name: "identityValidationExpression"))
874
900
  GetAuthorizerResponse.add_member(:jwt_configuration, Shapes::ShapeRef.new(shape: JWTConfiguration, location_name: "jwtConfiguration"))
875
901
  GetAuthorizerResponse.add_member(:name, Shapes::ShapeRef.new(shape: StringWithLengthBetween1And128, location_name: "name"))
902
+ GetAuthorizerResponse.add_member(:authorizer_payload_format_version, Shapes::ShapeRef.new(shape: StringWithLengthBetween1And64, location_name: "authorizerPayloadFormatVersion"))
903
+ GetAuthorizerResponse.add_member(:enable_simple_responses, Shapes::ShapeRef.new(shape: __boolean, location_name: "enableSimpleResponses"))
876
904
  GetAuthorizerResponse.struct_class = Types::GetAuthorizerResponse
877
905
 
878
906
  GetAuthorizersRequest.add_member(:api_id, Shapes::ShapeRef.new(shape: __string, required: true, location: "uri", location_name: "apiId"))
@@ -911,6 +939,7 @@ module Aws::ApiGatewayV2
911
939
  GetDomainNameResponse.add_member(:api_mapping_selection_expression, Shapes::ShapeRef.new(shape: SelectionExpression, location_name: "apiMappingSelectionExpression"))
912
940
  GetDomainNameResponse.add_member(:domain_name, Shapes::ShapeRef.new(shape: StringWithLengthBetween1And512, location_name: "domainName"))
913
941
  GetDomainNameResponse.add_member(:domain_name_configurations, Shapes::ShapeRef.new(shape: DomainNameConfigurations, location_name: "domainNameConfigurations"))
942
+ GetDomainNameResponse.add_member(:mutual_tls_authentication, Shapes::ShapeRef.new(shape: MutualTlsAuthentication, location_name: "mutualTlsAuthentication"))
914
943
  GetDomainNameResponse.add_member(:tags, Shapes::ShapeRef.new(shape: Tags, location_name: "tags"))
915
944
  GetDomainNameResponse.struct_class = Types::GetDomainNameResponse
916
945
 
@@ -958,6 +987,7 @@ module Aws::ApiGatewayV2
958
987
  GetIntegrationResult.add_member(:integration_id, Shapes::ShapeRef.new(shape: Id, location_name: "integrationId"))
959
988
  GetIntegrationResult.add_member(:integration_method, Shapes::ShapeRef.new(shape: StringWithLengthBetween1And64, location_name: "integrationMethod"))
960
989
  GetIntegrationResult.add_member(:integration_response_selection_expression, Shapes::ShapeRef.new(shape: SelectionExpression, location_name: "integrationResponseSelectionExpression"))
990
+ GetIntegrationResult.add_member(:integration_subtype, Shapes::ShapeRef.new(shape: StringWithLengthBetween1And128, location_name: "integrationSubtype"))
961
991
  GetIntegrationResult.add_member(:integration_type, Shapes::ShapeRef.new(shape: IntegrationType, location_name: "integrationType"))
962
992
  GetIntegrationResult.add_member(:integration_uri, Shapes::ShapeRef.new(shape: UriWithLengthBetween1And2048, location_name: "integrationUri"))
963
993
  GetIntegrationResult.add_member(:passthrough_behavior, Shapes::ShapeRef.new(shape: PassthroughBehavior, location_name: "passthroughBehavior"))
@@ -1123,12 +1153,14 @@ module Aws::ApiGatewayV2
1123
1153
  ImportApiRequest.struct_class = Types::ImportApiRequest
1124
1154
 
1125
1155
  ImportApiResponse.add_member(:api_endpoint, Shapes::ShapeRef.new(shape: __string, location_name: "apiEndpoint"))
1156
+ ImportApiResponse.add_member(:api_gateway_managed, Shapes::ShapeRef.new(shape: __boolean, location_name: "apiGatewayManaged"))
1126
1157
  ImportApiResponse.add_member(:api_id, Shapes::ShapeRef.new(shape: Id, location_name: "apiId"))
1127
1158
  ImportApiResponse.add_member(:api_key_selection_expression, Shapes::ShapeRef.new(shape: SelectionExpression, location_name: "apiKeySelectionExpression"))
1128
1159
  ImportApiResponse.add_member(:cors_configuration, Shapes::ShapeRef.new(shape: Cors, location_name: "corsConfiguration"))
1129
1160
  ImportApiResponse.add_member(:created_date, Shapes::ShapeRef.new(shape: __timestampIso8601, location_name: "createdDate"))
1130
1161
  ImportApiResponse.add_member(:description, Shapes::ShapeRef.new(shape: StringWithLengthBetween0And1024, location_name: "description"))
1131
1162
  ImportApiResponse.add_member(:disable_schema_validation, Shapes::ShapeRef.new(shape: __boolean, location_name: "disableSchemaValidation"))
1163
+ ImportApiResponse.add_member(:disable_execute_api_endpoint, Shapes::ShapeRef.new(shape: __boolean, location_name: "disableExecuteApiEndpoint"))
1132
1164
  ImportApiResponse.add_member(:import_info, Shapes::ShapeRef.new(shape: __listOf__string, location_name: "importInfo"))
1133
1165
  ImportApiResponse.add_member(:name, Shapes::ShapeRef.new(shape: StringWithLengthBetween1And128, location_name: "name"))
1134
1166
  ImportApiResponse.add_member(:protocol_type, Shapes::ShapeRef.new(shape: ProtocolType, location_name: "protocolType"))
@@ -1147,6 +1179,7 @@ module Aws::ApiGatewayV2
1147
1179
  Integration.add_member(:integration_id, Shapes::ShapeRef.new(shape: Id, location_name: "integrationId"))
1148
1180
  Integration.add_member(:integration_method, Shapes::ShapeRef.new(shape: StringWithLengthBetween1And64, location_name: "integrationMethod"))
1149
1181
  Integration.add_member(:integration_response_selection_expression, Shapes::ShapeRef.new(shape: SelectionExpression, location_name: "integrationResponseSelectionExpression"))
1182
+ Integration.add_member(:integration_subtype, Shapes::ShapeRef.new(shape: StringWithLengthBetween1And128, location_name: "integrationSubtype"))
1150
1183
  Integration.add_member(:integration_type, Shapes::ShapeRef.new(shape: IntegrationType, location_name: "integrationType"))
1151
1184
  Integration.add_member(:integration_uri, Shapes::ShapeRef.new(shape: UriWithLengthBetween1And2048, location_name: "integrationUri"))
1152
1185
  Integration.add_member(:passthrough_behavior, Shapes::ShapeRef.new(shape: PassthroughBehavior, location_name: "passthroughBehavior"))
@@ -1196,6 +1229,15 @@ module Aws::ApiGatewayV2
1196
1229
  Models.add_member(:next_token, Shapes::ShapeRef.new(shape: NextToken, location_name: "nextToken"))
1197
1230
  Models.struct_class = Types::Models
1198
1231
 
1232
+ MutualTlsAuthentication.add_member(:truststore_uri, Shapes::ShapeRef.new(shape: UriWithLengthBetween1And2048, location_name: "truststoreUri"))
1233
+ MutualTlsAuthentication.add_member(:truststore_version, Shapes::ShapeRef.new(shape: StringWithLengthBetween1And64, location_name: "truststoreVersion"))
1234
+ MutualTlsAuthentication.add_member(:truststore_warnings, Shapes::ShapeRef.new(shape: __listOf__string, location_name: "truststoreWarnings"))
1235
+ MutualTlsAuthentication.struct_class = Types::MutualTlsAuthentication
1236
+
1237
+ MutualTlsAuthenticationInput.add_member(:truststore_uri, Shapes::ShapeRef.new(shape: UriWithLengthBetween1And2048, location_name: "truststoreUri"))
1238
+ MutualTlsAuthenticationInput.add_member(:truststore_version, Shapes::ShapeRef.new(shape: StringWithLengthBetween1And64, location_name: "truststoreVersion"))
1239
+ MutualTlsAuthenticationInput.struct_class = Types::MutualTlsAuthenticationInput
1240
+
1199
1241
  NotFoundException.add_member(:message, Shapes::ShapeRef.new(shape: __string, location_name: "message"))
1200
1242
  NotFoundException.add_member(:resource_type, Shapes::ShapeRef.new(shape: __string, location_name: "resourceType"))
1201
1243
  NotFoundException.struct_class = Types::NotFoundException
@@ -1213,12 +1255,14 @@ module Aws::ApiGatewayV2
1213
1255
  ReimportApiRequest.struct_class = Types::ReimportApiRequest
1214
1256
 
1215
1257
  ReimportApiResponse.add_member(:api_endpoint, Shapes::ShapeRef.new(shape: __string, location_name: "apiEndpoint"))
1258
+ ReimportApiResponse.add_member(:api_gateway_managed, Shapes::ShapeRef.new(shape: __boolean, location_name: "apiGatewayManaged"))
1216
1259
  ReimportApiResponse.add_member(:api_id, Shapes::ShapeRef.new(shape: Id, location_name: "apiId"))
1217
1260
  ReimportApiResponse.add_member(:api_key_selection_expression, Shapes::ShapeRef.new(shape: SelectionExpression, location_name: "apiKeySelectionExpression"))
1218
1261
  ReimportApiResponse.add_member(:cors_configuration, Shapes::ShapeRef.new(shape: Cors, location_name: "corsConfiguration"))
1219
1262
  ReimportApiResponse.add_member(:created_date, Shapes::ShapeRef.new(shape: __timestampIso8601, location_name: "createdDate"))
1220
1263
  ReimportApiResponse.add_member(:description, Shapes::ShapeRef.new(shape: StringWithLengthBetween0And1024, location_name: "description"))
1221
1264
  ReimportApiResponse.add_member(:disable_schema_validation, Shapes::ShapeRef.new(shape: __boolean, location_name: "disableSchemaValidation"))
1265
+ ReimportApiResponse.add_member(:disable_execute_api_endpoint, Shapes::ShapeRef.new(shape: __boolean, location_name: "disableExecuteApiEndpoint"))
1222
1266
  ReimportApiResponse.add_member(:import_info, Shapes::ShapeRef.new(shape: __listOf__string, location_name: "importInfo"))
1223
1267
  ReimportApiResponse.add_member(:name, Shapes::ShapeRef.new(shape: StringWithLengthBetween1And128, location_name: "name"))
1224
1268
  ReimportApiResponse.add_member(:protocol_type, Shapes::ShapeRef.new(shape: ProtocolType, location_name: "protocolType"))
@@ -1228,6 +1272,10 @@ module Aws::ApiGatewayV2
1228
1272
  ReimportApiResponse.add_member(:warnings, Shapes::ShapeRef.new(shape: __listOf__string, location_name: "warnings"))
1229
1273
  ReimportApiResponse.struct_class = Types::ReimportApiResponse
1230
1274
 
1275
+ ResetAuthorizersCacheRequest.add_member(:api_id, Shapes::ShapeRef.new(shape: __string, required: true, location: "uri", location_name: "apiId"))
1276
+ ResetAuthorizersCacheRequest.add_member(:stage_name, Shapes::ShapeRef.new(shape: __string, required: true, location: "uri", location_name: "stageName"))
1277
+ ResetAuthorizersCacheRequest.struct_class = Types::ResetAuthorizersCacheRequest
1278
+
1231
1279
  Route.add_member(:api_gateway_managed, Shapes::ShapeRef.new(shape: __boolean, location_name: "apiGatewayManaged"))
1232
1280
  Route.add_member(:api_key_required, Shapes::ShapeRef.new(shape: __boolean, location_name: "apiKeyRequired"))
1233
1281
  Route.add_member(:authorization_scopes, Shapes::ShapeRef.new(shape: AuthorizationScopes, location_name: "authorizationScopes"))
@@ -1338,6 +1386,7 @@ module Aws::ApiGatewayV2
1338
1386
  UpdateApiInput.add_member(:credentials_arn, Shapes::ShapeRef.new(shape: Arn, location_name: "credentialsArn"))
1339
1387
  UpdateApiInput.add_member(:description, Shapes::ShapeRef.new(shape: StringWithLengthBetween0And1024, location_name: "description"))
1340
1388
  UpdateApiInput.add_member(:disable_schema_validation, Shapes::ShapeRef.new(shape: __boolean, location_name: "disableSchemaValidation"))
1389
+ UpdateApiInput.add_member(:disable_execute_api_endpoint, Shapes::ShapeRef.new(shape: __boolean, location_name: "disableExecuteApiEndpoint"))
1341
1390
  UpdateApiInput.add_member(:name, Shapes::ShapeRef.new(shape: StringWithLengthBetween1And128, location_name: "name"))
1342
1391
  UpdateApiInput.add_member(:route_key, Shapes::ShapeRef.new(shape: SelectionKey, location_name: "routeKey"))
1343
1392
  UpdateApiInput.add_member(:route_selection_expression, Shapes::ShapeRef.new(shape: SelectionExpression, location_name: "routeSelectionExpression"))
@@ -1369,6 +1418,7 @@ module Aws::ApiGatewayV2
1369
1418
  UpdateApiRequest.add_member(:credentials_arn, Shapes::ShapeRef.new(shape: Arn, location_name: "credentialsArn"))
1370
1419
  UpdateApiRequest.add_member(:description, Shapes::ShapeRef.new(shape: StringWithLengthBetween0And1024, location_name: "description"))
1371
1420
  UpdateApiRequest.add_member(:disable_schema_validation, Shapes::ShapeRef.new(shape: __boolean, location_name: "disableSchemaValidation"))
1421
+ UpdateApiRequest.add_member(:disable_execute_api_endpoint, Shapes::ShapeRef.new(shape: __boolean, location_name: "disableExecuteApiEndpoint"))
1372
1422
  UpdateApiRequest.add_member(:name, Shapes::ShapeRef.new(shape: StringWithLengthBetween1And128, location_name: "name"))
1373
1423
  UpdateApiRequest.add_member(:route_key, Shapes::ShapeRef.new(shape: SelectionKey, location_name: "routeKey"))
1374
1424
  UpdateApiRequest.add_member(:route_selection_expression, Shapes::ShapeRef.new(shape: SelectionExpression, location_name: "routeSelectionExpression"))
@@ -1377,12 +1427,14 @@ module Aws::ApiGatewayV2
1377
1427
  UpdateApiRequest.struct_class = Types::UpdateApiRequest
1378
1428
 
1379
1429
  UpdateApiResponse.add_member(:api_endpoint, Shapes::ShapeRef.new(shape: __string, location_name: "apiEndpoint"))
1430
+ UpdateApiResponse.add_member(:api_gateway_managed, Shapes::ShapeRef.new(shape: __boolean, location_name: "apiGatewayManaged"))
1380
1431
  UpdateApiResponse.add_member(:api_id, Shapes::ShapeRef.new(shape: Id, location_name: "apiId"))
1381
1432
  UpdateApiResponse.add_member(:api_key_selection_expression, Shapes::ShapeRef.new(shape: SelectionExpression, location_name: "apiKeySelectionExpression"))
1382
1433
  UpdateApiResponse.add_member(:cors_configuration, Shapes::ShapeRef.new(shape: Cors, location_name: "corsConfiguration"))
1383
1434
  UpdateApiResponse.add_member(:created_date, Shapes::ShapeRef.new(shape: __timestampIso8601, location_name: "createdDate"))
1384
1435
  UpdateApiResponse.add_member(:description, Shapes::ShapeRef.new(shape: StringWithLengthBetween0And1024, location_name: "description"))
1385
1436
  UpdateApiResponse.add_member(:disable_schema_validation, Shapes::ShapeRef.new(shape: __boolean, location_name: "disableSchemaValidation"))
1437
+ UpdateApiResponse.add_member(:disable_execute_api_endpoint, Shapes::ShapeRef.new(shape: __boolean, location_name: "disableExecuteApiEndpoint"))
1386
1438
  UpdateApiResponse.add_member(:import_info, Shapes::ShapeRef.new(shape: __listOf__string, location_name: "importInfo"))
1387
1439
  UpdateApiResponse.add_member(:name, Shapes::ShapeRef.new(shape: StringWithLengthBetween1And128, location_name: "name"))
1388
1440
  UpdateApiResponse.add_member(:protocol_type, Shapes::ShapeRef.new(shape: ProtocolType, location_name: "protocolType"))
@@ -1400,6 +1452,8 @@ module Aws::ApiGatewayV2
1400
1452
  UpdateAuthorizerInput.add_member(:identity_validation_expression, Shapes::ShapeRef.new(shape: StringWithLengthBetween0And1024, location_name: "identityValidationExpression"))
1401
1453
  UpdateAuthorizerInput.add_member(:jwt_configuration, Shapes::ShapeRef.new(shape: JWTConfiguration, location_name: "jwtConfiguration"))
1402
1454
  UpdateAuthorizerInput.add_member(:name, Shapes::ShapeRef.new(shape: StringWithLengthBetween1And128, location_name: "name"))
1455
+ UpdateAuthorizerInput.add_member(:authorizer_payload_format_version, Shapes::ShapeRef.new(shape: StringWithLengthBetween1And64, location_name: "authorizerPayloadFormatVersion"))
1456
+ UpdateAuthorizerInput.add_member(:enable_simple_responses, Shapes::ShapeRef.new(shape: __boolean, location_name: "enableSimpleResponses"))
1403
1457
  UpdateAuthorizerInput.struct_class = Types::UpdateAuthorizerInput
1404
1458
 
1405
1459
  UpdateAuthorizerRequest.add_member(:api_id, Shapes::ShapeRef.new(shape: __string, required: true, location: "uri", location_name: "apiId"))
@@ -1412,6 +1466,8 @@ module Aws::ApiGatewayV2
1412
1466
  UpdateAuthorizerRequest.add_member(:identity_validation_expression, Shapes::ShapeRef.new(shape: StringWithLengthBetween0And1024, location_name: "identityValidationExpression"))
1413
1467
  UpdateAuthorizerRequest.add_member(:jwt_configuration, Shapes::ShapeRef.new(shape: JWTConfiguration, location_name: "jwtConfiguration"))
1414
1468
  UpdateAuthorizerRequest.add_member(:name, Shapes::ShapeRef.new(shape: StringWithLengthBetween1And128, location_name: "name"))
1469
+ UpdateAuthorizerRequest.add_member(:authorizer_payload_format_version, Shapes::ShapeRef.new(shape: StringWithLengthBetween1And64, location_name: "authorizerPayloadFormatVersion"))
1470
+ UpdateAuthorizerRequest.add_member(:enable_simple_responses, Shapes::ShapeRef.new(shape: __boolean, location_name: "enableSimpleResponses"))
1415
1471
  UpdateAuthorizerRequest.struct_class = Types::UpdateAuthorizerRequest
1416
1472
 
1417
1473
  UpdateAuthorizerResponse.add_member(:authorizer_credentials_arn, Shapes::ShapeRef.new(shape: Arn, location_name: "authorizerCredentialsArn"))
@@ -1423,6 +1479,8 @@ module Aws::ApiGatewayV2
1423
1479
  UpdateAuthorizerResponse.add_member(:identity_validation_expression, Shapes::ShapeRef.new(shape: StringWithLengthBetween0And1024, location_name: "identityValidationExpression"))
1424
1480
  UpdateAuthorizerResponse.add_member(:jwt_configuration, Shapes::ShapeRef.new(shape: JWTConfiguration, location_name: "jwtConfiguration"))
1425
1481
  UpdateAuthorizerResponse.add_member(:name, Shapes::ShapeRef.new(shape: StringWithLengthBetween1And128, location_name: "name"))
1482
+ UpdateAuthorizerResponse.add_member(:authorizer_payload_format_version, Shapes::ShapeRef.new(shape: StringWithLengthBetween1And64, location_name: "authorizerPayloadFormatVersion"))
1483
+ UpdateAuthorizerResponse.add_member(:enable_simple_responses, Shapes::ShapeRef.new(shape: __boolean, location_name: "enableSimpleResponses"))
1426
1484
  UpdateAuthorizerResponse.struct_class = Types::UpdateAuthorizerResponse
1427
1485
 
1428
1486
  UpdateDeploymentInput.add_member(:description, Shapes::ShapeRef.new(shape: StringWithLengthBetween0And1024, location_name: "description"))
@@ -1442,15 +1500,18 @@ module Aws::ApiGatewayV2
1442
1500
  UpdateDeploymentResponse.struct_class = Types::UpdateDeploymentResponse
1443
1501
 
1444
1502
  UpdateDomainNameInput.add_member(:domain_name_configurations, Shapes::ShapeRef.new(shape: DomainNameConfigurations, location_name: "domainNameConfigurations"))
1503
+ UpdateDomainNameInput.add_member(:mutual_tls_authentication, Shapes::ShapeRef.new(shape: MutualTlsAuthenticationInput, location_name: "mutualTlsAuthentication"))
1445
1504
  UpdateDomainNameInput.struct_class = Types::UpdateDomainNameInput
1446
1505
 
1447
1506
  UpdateDomainNameRequest.add_member(:domain_name, Shapes::ShapeRef.new(shape: __string, required: true, location: "uri", location_name: "domainName"))
1448
1507
  UpdateDomainNameRequest.add_member(:domain_name_configurations, Shapes::ShapeRef.new(shape: DomainNameConfigurations, location_name: "domainNameConfigurations"))
1508
+ UpdateDomainNameRequest.add_member(:mutual_tls_authentication, Shapes::ShapeRef.new(shape: MutualTlsAuthenticationInput, location_name: "mutualTlsAuthentication"))
1449
1509
  UpdateDomainNameRequest.struct_class = Types::UpdateDomainNameRequest
1450
1510
 
1451
1511
  UpdateDomainNameResponse.add_member(:api_mapping_selection_expression, Shapes::ShapeRef.new(shape: SelectionExpression, location_name: "apiMappingSelectionExpression"))
1452
1512
  UpdateDomainNameResponse.add_member(:domain_name, Shapes::ShapeRef.new(shape: StringWithLengthBetween1And512, location_name: "domainName"))
1453
1513
  UpdateDomainNameResponse.add_member(:domain_name_configurations, Shapes::ShapeRef.new(shape: DomainNameConfigurations, location_name: "domainNameConfigurations"))
1514
+ UpdateDomainNameResponse.add_member(:mutual_tls_authentication, Shapes::ShapeRef.new(shape: MutualTlsAuthentication, location_name: "mutualTlsAuthentication"))
1454
1515
  UpdateDomainNameResponse.add_member(:tags, Shapes::ShapeRef.new(shape: Tags, location_name: "tags"))
1455
1516
  UpdateDomainNameResponse.struct_class = Types::UpdateDomainNameResponse
1456
1517
 
@@ -1460,6 +1521,7 @@ module Aws::ApiGatewayV2
1460
1521
  UpdateIntegrationInput.add_member(:credentials_arn, Shapes::ShapeRef.new(shape: Arn, location_name: "credentialsArn"))
1461
1522
  UpdateIntegrationInput.add_member(:description, Shapes::ShapeRef.new(shape: StringWithLengthBetween0And1024, location_name: "description"))
1462
1523
  UpdateIntegrationInput.add_member(:integration_method, Shapes::ShapeRef.new(shape: StringWithLengthBetween1And64, location_name: "integrationMethod"))
1524
+ UpdateIntegrationInput.add_member(:integration_subtype, Shapes::ShapeRef.new(shape: StringWithLengthBetween1And128, location_name: "integrationSubtype"))
1463
1525
  UpdateIntegrationInput.add_member(:integration_type, Shapes::ShapeRef.new(shape: IntegrationType, location_name: "integrationType"))
1464
1526
  UpdateIntegrationInput.add_member(:integration_uri, Shapes::ShapeRef.new(shape: UriWithLengthBetween1And2048, location_name: "integrationUri"))
1465
1527
  UpdateIntegrationInput.add_member(:passthrough_behavior, Shapes::ShapeRef.new(shape: PassthroughBehavior, location_name: "passthroughBehavior"))
@@ -1479,6 +1541,7 @@ module Aws::ApiGatewayV2
1479
1541
  UpdateIntegrationRequest.add_member(:description, Shapes::ShapeRef.new(shape: StringWithLengthBetween0And1024, location_name: "description"))
1480
1542
  UpdateIntegrationRequest.add_member(:integration_id, Shapes::ShapeRef.new(shape: __string, required: true, location: "uri", location_name: "integrationId"))
1481
1543
  UpdateIntegrationRequest.add_member(:integration_method, Shapes::ShapeRef.new(shape: StringWithLengthBetween1And64, location_name: "integrationMethod"))
1544
+ UpdateIntegrationRequest.add_member(:integration_subtype, Shapes::ShapeRef.new(shape: StringWithLengthBetween1And128, location_name: "integrationSubtype"))
1482
1545
  UpdateIntegrationRequest.add_member(:integration_type, Shapes::ShapeRef.new(shape: IntegrationType, location_name: "integrationType"))
1483
1546
  UpdateIntegrationRequest.add_member(:integration_uri, Shapes::ShapeRef.new(shape: UriWithLengthBetween1And2048, location_name: "integrationUri"))
1484
1547
  UpdateIntegrationRequest.add_member(:passthrough_behavior, Shapes::ShapeRef.new(shape: PassthroughBehavior, location_name: "passthroughBehavior"))
@@ -1524,6 +1587,7 @@ module Aws::ApiGatewayV2
1524
1587
  UpdateIntegrationResult.add_member(:integration_id, Shapes::ShapeRef.new(shape: Id, location_name: "integrationId"))
1525
1588
  UpdateIntegrationResult.add_member(:integration_method, Shapes::ShapeRef.new(shape: StringWithLengthBetween1And64, location_name: "integrationMethod"))
1526
1589
  UpdateIntegrationResult.add_member(:integration_response_selection_expression, Shapes::ShapeRef.new(shape: SelectionExpression, location_name: "integrationResponseSelectionExpression"))
1590
+ UpdateIntegrationResult.add_member(:integration_subtype, Shapes::ShapeRef.new(shape: StringWithLengthBetween1And128, location_name: "integrationSubtype"))
1527
1591
  UpdateIntegrationResult.add_member(:integration_type, Shapes::ShapeRef.new(shape: IntegrationType, location_name: "integrationType"))
1528
1592
  UpdateIntegrationResult.add_member(:integration_uri, Shapes::ShapeRef.new(shape: UriWithLengthBetween1And2048, location_name: "integrationUri"))
1529
1593
  UpdateIntegrationResult.add_member(:passthrough_behavior, Shapes::ShapeRef.new(shape: PassthroughBehavior, location_name: "passthroughBehavior"))
@@ -2051,6 +2115,16 @@ module Aws::ApiGatewayV2
2051
2115
  o.errors << Shapes::ShapeRef.new(shape: BadRequestException)
2052
2116
  end)
2053
2117
 
2118
+ api.add_operation(:reset_authorizers_cache, Seahorse::Model::Operation.new.tap do |o|
2119
+ o.name = "ResetAuthorizersCache"
2120
+ o.http_method = "DELETE"
2121
+ o.http_request_uri = "/v2/apis/{apiId}/stages/{stageName}/cache/authorizers"
2122
+ o.input = Shapes::ShapeRef.new(shape: ResetAuthorizersCacheRequest)
2123
+ o.output = Shapes::ShapeRef.new(shape: Shapes::StructureShape.new(struct_class: Aws::EmptyStructure))
2124
+ o.errors << Shapes::ShapeRef.new(shape: NotFoundException)
2125
+ o.errors << Shapes::ShapeRef.new(shape: TooManyRequestsException)
2126
+ end)
2127
+
2054
2128
  api.add_operation(:get_api, Seahorse::Model::Operation.new.tap do |o|
2055
2129
  o.name = "GetApi"
2056
2130
  o.http_method = "GET"
@@ -55,6 +55,12 @@ module Aws::ApiGatewayV2
55
55
  # deployed API stage.
56
56
  # @return [String]
57
57
  #
58
+ # @!attribute [rw] api_gateway_managed
59
+ # Specifies whether an API is managed by API Gateway. You can't
60
+ # update or delete a managed API by using API Gateway. A managed API
61
+ # can be deleted only through the tooling or service that created it.
62
+ # @return [Boolean]
63
+ #
58
64
  # @!attribute [rw] api_id
59
65
  # The API ID.
60
66
  # @return [String]
@@ -85,6 +91,15 @@ module Aws::ApiGatewayV2
85
91
  # for WebSocket APIs.
86
92
  # @return [Boolean]
87
93
  #
94
+ # @!attribute [rw] disable_execute_api_endpoint
95
+ # Specifies whether clients can invoke your API by using the default
96
+ # execute-api endpoint. By default, clients can invoke your API with
97
+ # the default
98
+ # https://\\\{api\_id\\}.execute-api.\\\{region\\}.amazonaws.com
99
+ # endpoint. To require that clients use a custom domain name to invoke
100
+ # your API, disable the default endpoint.
101
+ # @return [Boolean]
102
+ #
88
103
  # @!attribute [rw] import_info
89
104
  # The validation information during API import. This may include
90
105
  # particular properties of your OpenAPI definition which are ignored
@@ -121,12 +136,14 @@ module Aws::ApiGatewayV2
121
136
  #
122
137
  class Api < Struct.new(
123
138
  :api_endpoint,
139
+ :api_gateway_managed,
124
140
  :api_id,
125
141
  :api_key_selection_expression,
126
142
  :cors_configuration,
127
143
  :created_date,
128
144
  :description,
129
145
  :disable_schema_validation,
146
+ :disable_execute_api_endpoint,
130
147
  :import_info,
131
148
  :name,
132
149
  :protocol_type,
@@ -207,8 +224,8 @@ module Aws::ApiGatewayV2
207
224
  # Specifies the required credentials as an IAM role for API Gateway to
208
225
  # invoke the authorizer. To specify an IAM role for API Gateway to
209
226
  # assume, use the role's Amazon Resource Name (ARN). To use
210
- # resource-based permissions on the Lambda function, specify null.
211
- # Supported only for REQUEST authorizers.
227
+ # resource-based permissions on the Lambda function, don't specify
228
+ # this parameter. Supported only for REQUEST authorizers.
212
229
  # @return [String]
213
230
  #
214
231
  # @!attribute [rw] authorizer_id
@@ -216,18 +233,20 @@ module Aws::ApiGatewayV2
216
233
  # @return [String]
217
234
  #
218
235
  # @!attribute [rw] authorizer_result_ttl_in_seconds
219
- # Authorizer caching is not currently supported. Don't specify this
220
- # value for authorizers.
236
+ # The time to live (TTL) for cached authorizer results, in seconds. If
237
+ # it equals 0, authorization caching is disabled. If it is greater
238
+ # than 0, API Gateway caches authorizer responses. The maximum value
239
+ # is 3600, or 1 hour. Supported only for HTTP API Lambda authorizers.
221
240
  # @return [Integer]
222
241
  #
223
242
  # @!attribute [rw] authorizer_type
224
- # The authorizer type. For WebSocket APIs, specify REQUEST for a
225
- # Lambda function using incoming request parameters. For HTTP APIs,
226
- # specify JWT to use JSON Web Tokens.
243
+ # The authorizer type. Specify REQUEST for a Lambda function using
244
+ # incoming request parameters. Specify JWT to use JSON Web Tokens
245
+ # (supported only for HTTP APIs).
227
246
  # @return [String]
228
247
  #
229
248
  # @!attribute [rw] authorizer_uri
230
- # The authorizer's Uniform Resource Identifier (URI). ForREQUEST
249
+ # The authorizer's Uniform Resource Identifier (URI). For REQUEST
231
250
  # authorizers, this must be a well-formed Lambda function URI, for
232
251
  # example,
233
252
  # arn:aws:apigateway:us-west-2:lambda:path/2015-03-31/functions/arn:aws:lambda:us-west-2:*\\\{account\_id\\}*\:function:*\\\{lambda\_function\_name\\}*/invocations.
@@ -248,22 +267,30 @@ module Aws::ApiGatewayV2
248
267
  #
249
268
  # For a REQUEST authorizer, this is optional. The value is a set of
250
269
  # one or more mapping expressions of the specified request parameters.
251
- # Currently, the identity source can be headers, query string
252
- # parameters, stage variables, and context parameters. For example, if
253
- # an Auth header and a Name query string parameter are defined as
254
- # identity sources, this value is route.request.header.Auth,
255
- # route.request.querystring.Name. These parameters will be used to
256
- # perform runtime validation for Lambda-based authorizers by verifying
257
- # all of the identity-related request parameters are present in the
258
- # request, not null, and non-empty. Only when this is true does the
259
- # authorizer invoke the authorizer Lambda function. Otherwise, it
260
- # returns a 401 Unauthorized response without calling the Lambda
261
- # function.
270
+ # The identity source can be headers, query string parameters, stage
271
+ # variables, and context parameters. For example, if an Auth header
272
+ # and a Name query string parameter are defined as identity sources,
273
+ # this value is route.request.header.Auth,
274
+ # route.request.querystring.Name for WebSocket APIs. For HTTP APIs,
275
+ # use selection expressions prefixed with $, for example,
276
+ # $request.header.Auth, $request.querystring.Name. These parameters
277
+ # are used to perform runtime validation for Lambda-based authorizers
278
+ # by verifying all of the identity-related request parameters are
279
+ # present in the request, not null, and non-empty. Only when this is
280
+ # true does the authorizer invoke the authorizer Lambda function.
281
+ # Otherwise, it returns a 401 Unauthorized response without calling
282
+ # the Lambda function. For HTTP APIs, identity sources are also used
283
+ # as the cache key when caching is enabled. To learn more, see
284
+ # [Working with AWS Lambda authorizers for HTTP APIs][1].
262
285
  #
263
286
  # For JWT, a single entry that specifies where to extract the JSON Web
264
287
  # Token (JWT) from inbound requests. Currently only header-based and
265
288
  # query parameter-based selections are supported, for example
266
- # "$request.header.Authorization".
289
+ # $request.header.Authorization.
290
+ #
291
+ #
292
+ #
293
+ # [1]: https://docs.aws.amazon.com/apigateway/latest/developerguide/http-api-lambda-authorizer.html
267
294
  # @return [Array<String>]
268
295
  #
269
296
  # @!attribute [rw] identity_validation_expression
@@ -279,6 +306,28 @@ module Aws::ApiGatewayV2
279
306
  # The name of the authorizer.
280
307
  # @return [String]
281
308
  #
309
+ # @!attribute [rw] authorizer_payload_format_version
310
+ # Specifies the format of the payload sent to an HTTP API Lambda
311
+ # authorizer. Required for HTTP API Lambda authorizers. Supported
312
+ # values are 1.0 and 2.0. To learn more, see [Working with AWS Lambda
313
+ # authorizers for HTTP APIs][1].
314
+ #
315
+ #
316
+ #
317
+ # [1]: https://docs.aws.amazon.com/apigateway/latest/developerguide/http-api-lambda-authorizer.html
318
+ # @return [String]
319
+ #
320
+ # @!attribute [rw] enable_simple_responses
321
+ # Specifies whether a Lambda authorizer returns a response in a simple
322
+ # format. If enabled, the Lambda authorizer can return a boolean value
323
+ # instead of an IAM policy. Supported only for HTTP APIs. To learn
324
+ # more, see [Working with AWS Lambda authorizers for HTTP APIs][1]
325
+ #
326
+ #
327
+ #
328
+ # [1]: https://docs.aws.amazon.com/apigateway/latest/developerguide/http-api-lambda-authorizer.html
329
+ # @return [Boolean]
330
+ #
282
331
  class Authorizer < Struct.new(
283
332
  :authorizer_credentials_arn,
284
333
  :authorizer_id,
@@ -288,7 +337,9 @@ module Aws::ApiGatewayV2
288
337
  :identity_source,
289
338
  :identity_validation_expression,
290
339
  :jwt_configuration,
291
- :name)
340
+ :name,
341
+ :authorizer_payload_format_version,
342
+ :enable_simple_responses)
292
343
  SENSITIVE = []
293
344
  include Aws::Structure
294
345
  end
@@ -439,6 +490,9 @@ module Aws::ApiGatewayV2
439
490
  # for WebSocket APIs.
440
491
  # @return [Boolean]
441
492
  #
493
+ # @!attribute [rw] disable_execute_api_endpoint
494
+ # @return [Boolean]
495
+ #
442
496
  # @!attribute [rw] name
443
497
  # The name of the API.
444
498
  # @return [String]
@@ -488,6 +542,7 @@ module Aws::ApiGatewayV2
488
542
  :credentials_arn,
489
543
  :description,
490
544
  :disable_schema_validation,
545
+ :disable_execute_api_endpoint,
491
546
  :name,
492
547
  :protocol_type,
493
548
  :route_key,
@@ -610,6 +665,7 @@ module Aws::ApiGatewayV2
610
665
  # credentials_arn: "Arn",
611
666
  # description: "StringWithLengthBetween0And1024",
612
667
  # disable_schema_validation: false,
668
+ # disable_execute_api_endpoint: false,
613
669
  # name: "StringWithLengthBetween1And128", # required
614
670
  # protocol_type: "WEBSOCKET", # required, accepts WEBSOCKET, HTTP
615
671
  # route_key: "SelectionKey",
@@ -650,6 +706,9 @@ module Aws::ApiGatewayV2
650
706
  # @!attribute [rw] disable_schema_validation
651
707
  # @return [Boolean]
652
708
  #
709
+ # @!attribute [rw] disable_execute_api_endpoint
710
+ # @return [Boolean]
711
+ #
653
712
  # @!attribute [rw] name
654
713
  # A string with a length between \[1-128\].
655
714
  # @return [String]
@@ -696,6 +755,7 @@ module Aws::ApiGatewayV2
696
755
  :credentials_arn,
697
756
  :description,
698
757
  :disable_schema_validation,
758
+ :disable_execute_api_endpoint,
699
759
  :name,
700
760
  :protocol_type,
701
761
  :route_key,
@@ -710,6 +770,9 @@ module Aws::ApiGatewayV2
710
770
  # @!attribute [rw] api_endpoint
711
771
  # @return [String]
712
772
  #
773
+ # @!attribute [rw] api_gateway_managed
774
+ # @return [Boolean]
775
+ #
713
776
  # @!attribute [rw] api_id
714
777
  # The identifier.
715
778
  # @return [String]
@@ -742,6 +805,9 @@ module Aws::ApiGatewayV2
742
805
  # @!attribute [rw] disable_schema_validation
743
806
  # @return [Boolean]
744
807
  #
808
+ # @!attribute [rw] disable_execute_api_endpoint
809
+ # @return [Boolean]
810
+ #
745
811
  # @!attribute [rw] import_info
746
812
  # @return [Array<String>]
747
813
  #
@@ -775,12 +841,14 @@ module Aws::ApiGatewayV2
775
841
  #
776
842
  class CreateApiResponse < Struct.new(
777
843
  :api_endpoint,
844
+ :api_gateway_managed,
778
845
  :api_id,
779
846
  :api_key_selection_expression,
780
847
  :cors_configuration,
781
848
  :created_date,
782
849
  :description,
783
850
  :disable_schema_validation,
851
+ :disable_execute_api_endpoint,
784
852
  :import_info,
785
853
  :name,
786
854
  :protocol_type,
@@ -798,19 +866,21 @@ module Aws::ApiGatewayV2
798
866
  # Specifies the required credentials as an IAM role for API Gateway to
799
867
  # invoke the authorizer. To specify an IAM role for API Gateway to
800
868
  # assume, use the role's Amazon Resource Name (ARN). To use
801
- # resource-based permissions on the Lambda function, specify null.
802
- # Supported only for REQUEST authorizers.
869
+ # resource-based permissions on the Lambda function, don't specify
870
+ # this parameter. Supported only for REQUEST authorizers.
803
871
  # @return [String]
804
872
  #
805
873
  # @!attribute [rw] authorizer_result_ttl_in_seconds
806
- # Authorizer caching is not currently supported. Don't specify this
807
- # value for authorizers.
874
+ # The time to live (TTL) for cached authorizer results, in seconds. If
875
+ # it equals 0, authorization caching is disabled. If it is greater
876
+ # than 0, API Gateway caches authorizer responses. The maximum value
877
+ # is 3600, or 1 hour. Supported only for HTTP API Lambda authorizers.
808
878
  # @return [Integer]
809
879
  #
810
880
  # @!attribute [rw] authorizer_type
811
- # The authorizer type. For WebSocket APIs, specify REQUEST for a
812
- # Lambda function using incoming request parameters. For HTTP APIs,
813
- # specify JWT to use JSON Web Tokens.
881
+ # The authorizer type. Specify REQUEST for a Lambda function using
882
+ # incoming request parameters. Specify JWT to use JSON Web Tokens
883
+ # (supported only for HTTP APIs).
814
884
  # @return [String]
815
885
  #
816
886
  # @!attribute [rw] authorizer_uri
@@ -835,22 +905,30 @@ module Aws::ApiGatewayV2
835
905
  #
836
906
  # For a REQUEST authorizer, this is optional. The value is a set of
837
907
  # one or more mapping expressions of the specified request parameters.
838
- # Currently, the identity source can be headers, query string
839
- # parameters, stage variables, and context parameters. For example, if
840
- # an Auth header and a Name query string parameter are defined as
841
- # identity sources, this value is route.request.header.Auth,
842
- # route.request.querystring.Name. These parameters will be used to
843
- # perform runtime validation for Lambda-based authorizers by verifying
844
- # all of the identity-related request parameters are present in the
845
- # request, not null, and non-empty. Only when this is true does the
846
- # authorizer invoke the authorizer Lambda function. Otherwise, it
847
- # returns a 401 Unauthorized response without calling the Lambda
848
- # function.
908
+ # The identity source can be headers, query string parameters, stage
909
+ # variables, and context parameters. For example, if an Auth header
910
+ # and a Name query string parameter are defined as identity sources,
911
+ # this value is route.request.header.Auth,
912
+ # route.request.querystring.Name for WebSocket APIs. For HTTP APIs,
913
+ # use selection expressions prefixed with $, for example,
914
+ # $request.header.Auth, $request.querystring.Name. These parameters
915
+ # are used to perform runtime validation for Lambda-based authorizers
916
+ # by verifying all of the identity-related request parameters are
917
+ # present in the request, not null, and non-empty. Only when this is
918
+ # true does the authorizer invoke the authorizer Lambda function.
919
+ # Otherwise, it returns a 401 Unauthorized response without calling
920
+ # the Lambda function. For HTTP APIs, identity sources are also used
921
+ # as the cache key when caching is enabled. To learn more, see
922
+ # [Working with AWS Lambda authorizers for HTTP APIs][1].
849
923
  #
850
924
  # For JWT, a single entry that specifies where to extract the JSON Web
851
- # Token (JWT )from inbound requests. Currently only header-based and
925
+ # Token (JWT) from inbound requests. Currently only header-based and
852
926
  # query parameter-based selections are supported, for example
853
- # "$request.header.Authorization".
927
+ # $request.header.Authorization.
928
+ #
929
+ #
930
+ #
931
+ # [1]: https://docs.aws.amazon.com/apigateway/latest/developerguide/http-api-lambda-authorizer.html
854
932
  # @return [Array<String>]
855
933
  #
856
934
  # @!attribute [rw] identity_validation_expression
@@ -866,6 +944,29 @@ module Aws::ApiGatewayV2
866
944
  # The name of the authorizer.
867
945
  # @return [String]
868
946
  #
947
+ # @!attribute [rw] authorizer_payload_format_version
948
+ # Specifies the format of the payload sent to an HTTP API Lambda
949
+ # authorizer. Required for HTTP API Lambda authorizers. Supported
950
+ # values are 1.0 and 2.0. To learn more, see [Working with AWS Lambda
951
+ # authorizers for HTTP APIs][1].
952
+ #
953
+ #
954
+ #
955
+ # [1]: https://docs.aws.amazon.com/apigateway/latest/developerguide/http-api-lambda-authorizer.html
956
+ # @return [String]
957
+ #
958
+ # @!attribute [rw] enable_simple_responses
959
+ # Specifies whether a Lambda authorizer returns a response in a simple
960
+ # format. By default, a Lambda authorizer must return an IAM policy.
961
+ # If enabled, the Lambda authorizer can return a boolean value instead
962
+ # of an IAM policy. Supported only for HTTP APIs. To learn more, see
963
+ # [Working with AWS Lambda authorizers for HTTP APIs][1]
964
+ #
965
+ #
966
+ #
967
+ # [1]: https://docs.aws.amazon.com/apigateway/latest/developerguide/http-api-lambda-authorizer.html
968
+ # @return [Boolean]
969
+ #
869
970
  class CreateAuthorizerInput < Struct.new(
870
971
  :authorizer_credentials_arn,
871
972
  :authorizer_result_ttl_in_seconds,
@@ -874,7 +975,9 @@ module Aws::ApiGatewayV2
874
975
  :identity_source,
875
976
  :identity_validation_expression,
876
977
  :jwt_configuration,
877
- :name)
978
+ :name,
979
+ :authorizer_payload_format_version,
980
+ :enable_simple_responses)
878
981
  SENSITIVE = []
879
982
  include Aws::Structure
880
983
  end
@@ -895,6 +998,8 @@ module Aws::ApiGatewayV2
895
998
  # issuer: "UriWithLengthBetween1And2048",
896
999
  # },
897
1000
  # name: "StringWithLengthBetween1And128", # required
1001
+ # authorizer_payload_format_version: "StringWithLengthBetween1And64",
1002
+ # enable_simple_responses: false,
898
1003
  # }
899
1004
  #
900
1005
  # @!attribute [rw] api_id
@@ -909,9 +1014,9 @@ module Aws::ApiGatewayV2
909
1014
  # @return [Integer]
910
1015
  #
911
1016
  # @!attribute [rw] authorizer_type
912
- # The authorizer type. For WebSocket APIs, specify REQUEST for a
913
- # Lambda function using incoming request parameters. For HTTP APIs,
914
- # specify JWT to use JSON Web Tokens.
1017
+ # The authorizer type. Specify REQUEST for a Lambda function using
1018
+ # incoming request parameters. Specify JWT to use JSON Web Tokens
1019
+ # (supported only for HTTP APIs).
915
1020
  # @return [String]
916
1021
  #
917
1022
  # @!attribute [rw] authorizer_uri
@@ -950,6 +1055,13 @@ module Aws::ApiGatewayV2
950
1055
  # A string with a length between \[1-128\].
951
1056
  # @return [String]
952
1057
  #
1058
+ # @!attribute [rw] authorizer_payload_format_version
1059
+ # A string with a length between \[1-64\].
1060
+ # @return [String]
1061
+ #
1062
+ # @!attribute [rw] enable_simple_responses
1063
+ # @return [Boolean]
1064
+ #
953
1065
  class CreateAuthorizerRequest < Struct.new(
954
1066
  :api_id,
955
1067
  :authorizer_credentials_arn,
@@ -959,7 +1071,9 @@ module Aws::ApiGatewayV2
959
1071
  :identity_source,
960
1072
  :identity_validation_expression,
961
1073
  :jwt_configuration,
962
- :name)
1074
+ :name,
1075
+ :authorizer_payload_format_version,
1076
+ :enable_simple_responses)
963
1077
  SENSITIVE = []
964
1078
  include Aws::Structure
965
1079
  end
@@ -977,9 +1091,9 @@ module Aws::ApiGatewayV2
977
1091
  # @return [Integer]
978
1092
  #
979
1093
  # @!attribute [rw] authorizer_type
980
- # The authorizer type. For WebSocket APIs, specify REQUEST for a
981
- # Lambda function using incoming request parameters. For HTTP APIs,
982
- # specify JWT to use JSON Web Tokens.
1094
+ # The authorizer type. Specify REQUEST for a Lambda function using
1095
+ # incoming request parameters. Specify JWT to use JSON Web Tokens
1096
+ # (supported only for HTTP APIs).
983
1097
  # @return [String]
984
1098
  #
985
1099
  # @!attribute [rw] authorizer_uri
@@ -1018,6 +1132,13 @@ module Aws::ApiGatewayV2
1018
1132
  # A string with a length between \[1-128\].
1019
1133
  # @return [String]
1020
1134
  #
1135
+ # @!attribute [rw] authorizer_payload_format_version
1136
+ # A string with a length between \[1-64\].
1137
+ # @return [String]
1138
+ #
1139
+ # @!attribute [rw] enable_simple_responses
1140
+ # @return [Boolean]
1141
+ #
1021
1142
  class CreateAuthorizerResponse < Struct.new(
1022
1143
  :authorizer_credentials_arn,
1023
1144
  :authorizer_id,
@@ -1027,7 +1148,9 @@ module Aws::ApiGatewayV2
1027
1148
  :identity_source,
1028
1149
  :identity_validation_expression,
1029
1150
  :jwt_configuration,
1030
- :name)
1151
+ :name,
1152
+ :authorizer_payload_format_version,
1153
+ :enable_simple_responses)
1031
1154
  SENSITIVE = []
1032
1155
  include Aws::Structure
1033
1156
  end
@@ -1120,6 +1243,11 @@ module Aws::ApiGatewayV2
1120
1243
  # The domain name configurations.
1121
1244
  # @return [Array<Types::DomainNameConfiguration>]
1122
1245
  #
1246
+ # @!attribute [rw] mutual_tls_authentication
1247
+ # The mutual TLS authentication configuration for a custom domain
1248
+ # name.
1249
+ # @return [Types::MutualTlsAuthenticationInput]
1250
+ #
1123
1251
  # @!attribute [rw] tags
1124
1252
  # The collection of tags associated with a domain name.
1125
1253
  # @return [Hash<String,String>]
@@ -1127,6 +1255,7 @@ module Aws::ApiGatewayV2
1127
1255
  class CreateDomainNameInput < Struct.new(
1128
1256
  :domain_name,
1129
1257
  :domain_name_configurations,
1258
+ :mutual_tls_authentication,
1130
1259
  :tags)
1131
1260
  SENSITIVE = []
1132
1261
  include Aws::Structure
@@ -1150,6 +1279,10 @@ module Aws::ApiGatewayV2
1150
1279
  # security_policy: "TLS_1_0", # accepts TLS_1_0, TLS_1_2
1151
1280
  # },
1152
1281
  # ],
1282
+ # mutual_tls_authentication: {
1283
+ # truststore_uri: "UriWithLengthBetween1And2048",
1284
+ # truststore_version: "StringWithLengthBetween1And64",
1285
+ # },
1153
1286
  # tags: {
1154
1287
  # "__string" => "StringWithLengthBetween1And1600",
1155
1288
  # },
@@ -1163,6 +1296,12 @@ module Aws::ApiGatewayV2
1163
1296
  # The domain name configurations.
1164
1297
  # @return [Array<Types::DomainNameConfiguration>]
1165
1298
  #
1299
+ # @!attribute [rw] mutual_tls_authentication
1300
+ # If specified, API Gateway performs two-way authentication between
1301
+ # the client and the server. Clients must present a trusted
1302
+ # certificate to access your API.
1303
+ # @return [Types::MutualTlsAuthenticationInput]
1304
+ #
1166
1305
  # @!attribute [rw] tags
1167
1306
  # Represents a collection of tags associated with the resource.
1168
1307
  # @return [Hash<String,String>]
@@ -1170,6 +1309,7 @@ module Aws::ApiGatewayV2
1170
1309
  class CreateDomainNameRequest < Struct.new(
1171
1310
  :domain_name,
1172
1311
  :domain_name_configurations,
1312
+ :mutual_tls_authentication,
1173
1313
  :tags)
1174
1314
  SENSITIVE = []
1175
1315
  include Aws::Structure
@@ -1192,6 +1332,12 @@ module Aws::ApiGatewayV2
1192
1332
  # The domain name configurations.
1193
1333
  # @return [Array<Types::DomainNameConfiguration>]
1194
1334
  #
1335
+ # @!attribute [rw] mutual_tls_authentication
1336
+ # If specified, API Gateway performs two-way authentication between
1337
+ # the client and the server. Clients must present a trusted
1338
+ # certificate to access your API.
1339
+ # @return [Types::MutualTlsAuthentication]
1340
+ #
1195
1341
  # @!attribute [rw] tags
1196
1342
  # Represents a collection of tags associated with the resource.
1197
1343
  # @return [Hash<String,String>]
@@ -1200,6 +1346,7 @@ module Aws::ApiGatewayV2
1200
1346
  :api_mapping_selection_expression,
1201
1347
  :domain_name,
1202
1348
  :domain_name_configurations,
1349
+ :mutual_tls_authentication,
1203
1350
  :tags)
1204
1351
  SENSITIVE = []
1205
1352
  include Aws::Structure
@@ -1253,6 +1400,16 @@ module Aws::ApiGatewayV2
1253
1400
  # Specifies the integration's HTTP method type.
1254
1401
  # @return [String]
1255
1402
  #
1403
+ # @!attribute [rw] integration_subtype
1404
+ # Supported only for HTTP API AWS\_PROXY integrations. Specifies the
1405
+ # AWS service action to invoke. To learn more, see [Integration
1406
+ # subtype reference][1].
1407
+ #
1408
+ #
1409
+ #
1410
+ # [1]: https://docs.aws.amazon.com/apigateway/latest/developerguide/http-api-develop-integrations-aws-services-reference.html
1411
+ # @return [String]
1412
+ #
1256
1413
  # @!attribute [rw] integration_type
1257
1414
  # The integration type of an integration. One of the following:
1258
1415
  #
@@ -1262,10 +1419,9 @@ module Aws::ApiGatewayV2
1262
1419
  # custom integration. With any other AWS service action, this is known
1263
1420
  # as AWS integration. Supported only for WebSocket APIs.
1264
1421
  #
1265
- # AWS\_PROXY: for integrating the route or method request with the
1266
- # Lambda function-invoking action with the client request passed
1267
- # through as-is. This integration is also referred to as Lambda proxy
1268
- # integration.
1422
+ # AWS\_PROXY: for integrating the route or method request with a
1423
+ # Lambda function or other AWS service action. This integration is
1424
+ # also referred to as a Lambda proxy integration.
1269
1425
  #
1270
1426
  # HTTP: for integrating the route or method request with an HTTP
1271
1427
  # endpoint. This integration is also referred to as the HTTP custom
@@ -1324,16 +1480,26 @@ module Aws::ApiGatewayV2
1324
1480
  # @return [String]
1325
1481
  #
1326
1482
  # @!attribute [rw] request_parameters
1327
- # A key-value map specifying request parameters that are passed from
1328
- # the method request to the backend. The key is an integration request
1329
- # parameter name and the associated value is a method request
1330
- # parameter value or static value that must be enclosed within single
1331
- # quotes and pre-encoded as required by the backend. The method
1332
- # request parameter value must match the pattern of
1483
+ # For WebSocket APIs, a key-value map specifying request parameters
1484
+ # that are passed from the method request to the backend. The key is
1485
+ # an integration request parameter name and the associated value is a
1486
+ # method request parameter value or static value that must be enclosed
1487
+ # within single quotes and pre-encoded as required by the backend. The
1488
+ # method request parameter value must match the pattern of
1333
1489
  # method.request.*\\\{location\\}*.*\\\{name\\}* , where
1334
1490
  # *\\\{location\\}* is querystring, path, or header; and *\\\{name\\}*
1335
- # must be a valid and unique method request parameter name. Supported
1336
- # only for WebSocket APIs.
1491
+ # must be a valid and unique method request parameter name.
1492
+ #
1493
+ # For HTTP APIs, request parameters are a key-value map specifying
1494
+ # parameters that are passed to AWS\_PROXY integrations with a
1495
+ # specified integrationSubtype. You can provide static values, or map
1496
+ # request data, stage variables, or context variables that are
1497
+ # evaluated at runtime. To learn more, see [Working with AWS service
1498
+ # integrations for HTTP APIs][1].
1499
+ #
1500
+ #
1501
+ #
1502
+ # [1]: https://docs.aws.amazon.com/apigateway/latest/developerguide/http-api-develop-integrations-aws-services.html
1337
1503
  # @return [Hash<String,String>]
1338
1504
  #
1339
1505
  # @!attribute [rw] request_templates
@@ -1368,6 +1534,7 @@ module Aws::ApiGatewayV2
1368
1534
  :credentials_arn,
1369
1535
  :description,
1370
1536
  :integration_method,
1537
+ :integration_subtype,
1371
1538
  :integration_type,
1372
1539
  :integration_uri,
1373
1540
  :passthrough_behavior,
@@ -1392,6 +1559,7 @@ module Aws::ApiGatewayV2
1392
1559
  # credentials_arn: "Arn",
1393
1560
  # description: "StringWithLengthBetween0And1024",
1394
1561
  # integration_method: "StringWithLengthBetween1And64",
1562
+ # integration_subtype: "StringWithLengthBetween1And128",
1395
1563
  # integration_type: "AWS", # required, accepts AWS, HTTP, MOCK, HTTP_PROXY, AWS_PROXY
1396
1564
  # integration_uri: "UriWithLengthBetween1And2048",
1397
1565
  # passthrough_behavior: "WHEN_NO_MATCH", # accepts WHEN_NO_MATCH, NEVER, WHEN_NO_TEMPLATES
@@ -1437,6 +1605,10 @@ module Aws::ApiGatewayV2
1437
1605
  # A string with a length between \[1-64\].
1438
1606
  # @return [String]
1439
1607
  #
1608
+ # @!attribute [rw] integration_subtype
1609
+ # A string with a length between \[1-128\].
1610
+ # @return [String]
1611
+ #
1440
1612
  # @!attribute [rw] integration_type
1441
1613
  # Represents an API method integration type.
1442
1614
  # @return [String]
@@ -1502,6 +1674,7 @@ module Aws::ApiGatewayV2
1502
1674
  :credentials_arn,
1503
1675
  :description,
1504
1676
  :integration_method,
1677
+ :integration_subtype,
1505
1678
  :integration_type,
1506
1679
  :integration_uri,
1507
1680
  :passthrough_behavior,
@@ -1556,6 +1729,10 @@ module Aws::ApiGatewayV2
1556
1729
  # [1]: https://docs.aws.amazon.com/apigateway/latest/developerguide/apigateway-websocket-api-selection-expressions.html#apigateway-websocket-api-apikey-selection-expressions
1557
1730
  # @return [String]
1558
1731
  #
1732
+ # @!attribute [rw] integration_subtype
1733
+ # A string with a length between \[1-128\].
1734
+ # @return [String]
1735
+ #
1559
1736
  # @!attribute [rw] integration_type
1560
1737
  # Represents an API method integration type.
1561
1738
  # @return [String]
@@ -1623,6 +1800,7 @@ module Aws::ApiGatewayV2
1623
1800
  :integration_id,
1624
1801
  :integration_method,
1625
1802
  :integration_response_selection_expression,
1803
+ :integration_subtype,
1626
1804
  :integration_type,
1627
1805
  :integration_uri,
1628
1806
  :passthrough_behavior,
@@ -1952,8 +2130,9 @@ module Aws::ApiGatewayV2
1952
2130
  # The authorization type for the route. For WebSocket APIs, valid
1953
2131
  # values are NONE for open access, AWS\_IAM for using AWS IAM
1954
2132
  # permissions, and CUSTOM for using a Lambda authorizer For HTTP APIs,
1955
- # valid values are NONE for open access, or JWT for using JSON Web
1956
- # Tokens.
2133
+ # valid values are NONE for open access, JWT for using JSON Web
2134
+ # Tokens, AWS\_IAM for using AWS IAM permissions, and CUSTOM for using
2135
+ # a Lambda authorizer.
1957
2136
  # @return [String]
1958
2137
  #
1959
2138
  # @!attribute [rw] authorizer_id
@@ -2055,7 +2234,8 @@ module Aws::ApiGatewayV2
2055
2234
  # The authorization type. For WebSocket APIs, valid values are NONE
2056
2235
  # for open access, AWS\_IAM for using AWS IAM permissions, and CUSTOM
2057
2236
  # for using a Lambda authorizer. For HTTP APIs, valid values are NONE
2058
- # for open access, or JWT for using JSON Web Tokens.
2237
+ # for open access, JWT for using JSON Web Tokens, AWS\_IAM for using
2238
+ # AWS IAM permissions, and CUSTOM for using a Lambda authorizer.
2059
2239
  # @return [String]
2060
2240
  #
2061
2241
  # @!attribute [rw] authorizer_id
@@ -2146,7 +2326,8 @@ module Aws::ApiGatewayV2
2146
2326
  # The authorization type. For WebSocket APIs, valid values are NONE
2147
2327
  # for open access, AWS\_IAM for using AWS IAM permissions, and CUSTOM
2148
2328
  # for using a Lambda authorizer. For HTTP APIs, valid values are NONE
2149
- # for open access, or JWT for using JSON Web Tokens.
2329
+ # for open access, JWT for using JSON Web Tokens, AWS\_IAM for using
2330
+ # AWS IAM permissions, and CUSTOM for using a Lambda authorizer.
2150
2331
  # @return [String]
2151
2332
  #
2152
2333
  # @!attribute [rw] authorizer_id
@@ -3106,6 +3287,11 @@ module Aws::ApiGatewayV2
3106
3287
  # The domain name configurations.
3107
3288
  # @return [Array<Types::DomainNameConfiguration>]
3108
3289
  #
3290
+ # @!attribute [rw] mutual_tls_authentication
3291
+ # The mutual TLS authentication configuration for a custom domain
3292
+ # name.
3293
+ # @return [Types::MutualTlsAuthentication]
3294
+ #
3109
3295
  # @!attribute [rw] tags
3110
3296
  # The collection of tags associated with a domain name.
3111
3297
  # @return [Hash<String,String>]
@@ -3114,6 +3300,7 @@ module Aws::ApiGatewayV2
3114
3300
  :api_mapping_selection_expression,
3115
3301
  :domain_name,
3116
3302
  :domain_name_configurations,
3303
+ :mutual_tls_authentication,
3117
3304
  :tags)
3118
3305
  SENSITIVE = []
3119
3306
  include Aws::Structure
@@ -3266,6 +3453,27 @@ module Aws::ApiGatewayV2
3266
3453
  include Aws::Structure
3267
3454
  end
3268
3455
 
3456
+ # @note When making an API call, you may pass ResetAuthorizersCacheRequest
3457
+ # data as a hash:
3458
+ #
3459
+ # {
3460
+ # api_id: "__string", # required
3461
+ # stage_name: "__string", # required
3462
+ # }
3463
+ #
3464
+ # @!attribute [rw] api_id
3465
+ # @return [String]
3466
+ #
3467
+ # @!attribute [rw] stage_name
3468
+ # @return [String]
3469
+ #
3470
+ class ResetAuthorizersCacheRequest < Struct.new(
3471
+ :api_id,
3472
+ :stage_name)
3473
+ SENSITIVE = []
3474
+ include Aws::Structure
3475
+ end
3476
+
3269
3477
  # @note When making an API call, you may pass GetApiMappingRequest
3270
3478
  # data as a hash:
3271
3479
  #
@@ -3379,6 +3587,9 @@ module Aws::ApiGatewayV2
3379
3587
  # @!attribute [rw] api_endpoint
3380
3588
  # @return [String]
3381
3589
  #
3590
+ # @!attribute [rw] api_gateway_managed
3591
+ # @return [Boolean]
3592
+ #
3382
3593
  # @!attribute [rw] api_id
3383
3594
  # The identifier.
3384
3595
  # @return [String]
@@ -3411,6 +3622,9 @@ module Aws::ApiGatewayV2
3411
3622
  # @!attribute [rw] disable_schema_validation
3412
3623
  # @return [Boolean]
3413
3624
  #
3625
+ # @!attribute [rw] disable_execute_api_endpoint
3626
+ # @return [Boolean]
3627
+ #
3414
3628
  # @!attribute [rw] import_info
3415
3629
  # @return [Array<String>]
3416
3630
  #
@@ -3444,12 +3658,14 @@ module Aws::ApiGatewayV2
3444
3658
  #
3445
3659
  class GetApiResponse < Struct.new(
3446
3660
  :api_endpoint,
3661
+ :api_gateway_managed,
3447
3662
  :api_id,
3448
3663
  :api_key_selection_expression,
3449
3664
  :cors_configuration,
3450
3665
  :created_date,
3451
3666
  :description,
3452
3667
  :disable_schema_validation,
3668
+ :disable_execute_api_endpoint,
3453
3669
  :import_info,
3454
3670
  :name,
3455
3671
  :protocol_type,
@@ -3531,9 +3747,9 @@ module Aws::ApiGatewayV2
3531
3747
  # @return [Integer]
3532
3748
  #
3533
3749
  # @!attribute [rw] authorizer_type
3534
- # The authorizer type. For WebSocket APIs, specify REQUEST for a
3535
- # Lambda function using incoming request parameters. For HTTP APIs,
3536
- # specify JWT to use JSON Web Tokens.
3750
+ # The authorizer type. Specify REQUEST for a Lambda function using
3751
+ # incoming request parameters. Specify JWT to use JSON Web Tokens
3752
+ # (supported only for HTTP APIs).
3537
3753
  # @return [String]
3538
3754
  #
3539
3755
  # @!attribute [rw] authorizer_uri
@@ -3572,6 +3788,13 @@ module Aws::ApiGatewayV2
3572
3788
  # A string with a length between \[1-128\].
3573
3789
  # @return [String]
3574
3790
  #
3791
+ # @!attribute [rw] authorizer_payload_format_version
3792
+ # A string with a length between \[1-64\].
3793
+ # @return [String]
3794
+ #
3795
+ # @!attribute [rw] enable_simple_responses
3796
+ # @return [Boolean]
3797
+ #
3575
3798
  class GetAuthorizerResponse < Struct.new(
3576
3799
  :authorizer_credentials_arn,
3577
3800
  :authorizer_id,
@@ -3581,7 +3804,9 @@ module Aws::ApiGatewayV2
3581
3804
  :identity_source,
3582
3805
  :identity_validation_expression,
3583
3806
  :jwt_configuration,
3584
- :name)
3807
+ :name,
3808
+ :authorizer_payload_format_version,
3809
+ :enable_simple_responses)
3585
3810
  SENSITIVE = []
3586
3811
  include Aws::Structure
3587
3812
  end
@@ -3754,6 +3979,12 @@ module Aws::ApiGatewayV2
3754
3979
  # The domain name configurations.
3755
3980
  # @return [Array<Types::DomainNameConfiguration>]
3756
3981
  #
3982
+ # @!attribute [rw] mutual_tls_authentication
3983
+ # If specified, API Gateway performs two-way authentication between
3984
+ # the client and the server. Clients must present a trusted
3985
+ # certificate to access your API.
3986
+ # @return [Types::MutualTlsAuthentication]
3987
+ #
3757
3988
  # @!attribute [rw] tags
3758
3989
  # Represents a collection of tags associated with the resource.
3759
3990
  # @return [Hash<String,String>]
@@ -3762,6 +3993,7 @@ module Aws::ApiGatewayV2
3762
3993
  :api_mapping_selection_expression,
3763
3994
  :domain_name,
3764
3995
  :domain_name_configurations,
3996
+ :mutual_tls_authentication,
3765
3997
  :tags)
3766
3998
  SENSITIVE = []
3767
3999
  include Aws::Structure
@@ -3865,6 +4097,10 @@ module Aws::ApiGatewayV2
3865
4097
  # [1]: https://docs.aws.amazon.com/apigateway/latest/developerguide/apigateway-websocket-api-selection-expressions.html#apigateway-websocket-api-apikey-selection-expressions
3866
4098
  # @return [String]
3867
4099
  #
4100
+ # @!attribute [rw] integration_subtype
4101
+ # A string with a length between \[1-128\].
4102
+ # @return [String]
4103
+ #
3868
4104
  # @!attribute [rw] integration_type
3869
4105
  # Represents an API method integration type.
3870
4106
  # @return [String]
@@ -3932,6 +4168,7 @@ module Aws::ApiGatewayV2
3932
4168
  :integration_id,
3933
4169
  :integration_method,
3934
4170
  :integration_response_selection_expression,
4171
+ :integration_subtype,
3935
4172
  :integration_type,
3936
4173
  :integration_uri,
3937
4174
  :passthrough_behavior,
@@ -4284,7 +4521,8 @@ module Aws::ApiGatewayV2
4284
4521
  # The authorization type. For WebSocket APIs, valid values are NONE
4285
4522
  # for open access, AWS\_IAM for using AWS IAM permissions, and CUSTOM
4286
4523
  # for using a Lambda authorizer. For HTTP APIs, valid values are NONE
4287
- # for open access, or JWT for using JSON Web Tokens.
4524
+ # for open access, JWT for using JSON Web Tokens, AWS\_IAM for using
4525
+ # AWS IAM permissions, and CUSTOM for using a Lambda authorizer.
4288
4526
  # @return [String]
4289
4527
  #
4290
4528
  # @!attribute [rw] authorizer_id
@@ -4813,6 +5051,9 @@ module Aws::ApiGatewayV2
4813
5051
  # @!attribute [rw] api_endpoint
4814
5052
  # @return [String]
4815
5053
  #
5054
+ # @!attribute [rw] api_gateway_managed
5055
+ # @return [Boolean]
5056
+ #
4816
5057
  # @!attribute [rw] api_id
4817
5058
  # The identifier.
4818
5059
  # @return [String]
@@ -4845,6 +5086,9 @@ module Aws::ApiGatewayV2
4845
5086
  # @!attribute [rw] disable_schema_validation
4846
5087
  # @return [Boolean]
4847
5088
  #
5089
+ # @!attribute [rw] disable_execute_api_endpoint
5090
+ # @return [Boolean]
5091
+ #
4848
5092
  # @!attribute [rw] import_info
4849
5093
  # @return [Array<String>]
4850
5094
  #
@@ -4878,12 +5122,14 @@ module Aws::ApiGatewayV2
4878
5122
  #
4879
5123
  class ImportApiResponse < Struct.new(
4880
5124
  :api_endpoint,
5125
+ :api_gateway_managed,
4881
5126
  :api_id,
4882
5127
  :api_key_selection_expression,
4883
5128
  :cors_configuration,
4884
5129
  :created_date,
4885
5130
  :description,
4886
5131
  :disable_schema_validation,
5132
+ :disable_execute_api_endpoint,
4887
5133
  :import_info,
4888
5134
  :name,
4889
5135
  :protocol_type,
@@ -4964,6 +5210,16 @@ module Aws::ApiGatewayV2
4964
5210
  # [1]: https://docs.aws.amazon.com/apigateway/latest/developerguide/apigateway-websocket-api-selection-expressions.html#apigateway-websocket-api-integration-response-selection-expressions
4965
5211
  # @return [String]
4966
5212
  #
5213
+ # @!attribute [rw] integration_subtype
5214
+ # Supported only for HTTP API AWS\_PROXY integrations. Specifies the
5215
+ # AWS service action to invoke. To learn more, see [Integration
5216
+ # subtype reference][1].
5217
+ #
5218
+ #
5219
+ #
5220
+ # [1]: https://docs.aws.amazon.com/apigateway/latest/developerguide/http-api-develop-integrations-aws-services-reference.html
5221
+ # @return [String]
5222
+ #
4967
5223
  # @!attribute [rw] integration_type
4968
5224
  # The integration type of an integration. One of the following:
4969
5225
  #
@@ -4973,10 +5229,9 @@ module Aws::ApiGatewayV2
4973
5229
  # custom integration. With any other AWS service action, this is known
4974
5230
  # as AWS integration. Supported only for WebSocket APIs.
4975
5231
  #
4976
- # AWS\_PROXY: for integrating the route or method request with the
4977
- # Lambda function-invoking action with the client request passed
4978
- # through as-is. This integration is also referred to as Lambda proxy
4979
- # integration.
5232
+ # AWS\_PROXY: for integrating the route or method request with a
5233
+ # Lambda function or other AWS service action. This integration is
5234
+ # also referred to as a Lambda proxy integration.
4980
5235
  #
4981
5236
  # HTTP: for integrating the route or method request with an HTTP
4982
5237
  # endpoint. This integration is also referred to as the HTTP custom
@@ -5034,16 +5289,26 @@ module Aws::ApiGatewayV2
5034
5289
  # @return [String]
5035
5290
  #
5036
5291
  # @!attribute [rw] request_parameters
5037
- # A key-value map specifying request parameters that are passed from
5038
- # the method request to the backend. The key is an integration request
5039
- # parameter name and the associated value is a method request
5040
- # parameter value or static value that must be enclosed within single
5041
- # quotes and pre-encoded as required by the backend. The method
5042
- # request parameter value must match the pattern of
5292
+ # For WebSocket APIs, a key-value map specifying request parameters
5293
+ # that are passed from the method request to the backend. The key is
5294
+ # an integration request parameter name and the associated value is a
5295
+ # method request parameter value or static value that must be enclosed
5296
+ # within single quotes and pre-encoded as required by the backend. The
5297
+ # method request parameter value must match the pattern of
5043
5298
  # method.request.*\\\{location\\}*.*\\\{name\\}* , where
5044
5299
  # *\\\{location\\}* is querystring, path, or header; and *\\\{name\\}*
5045
- # must be a valid and unique method request parameter name. Supported
5046
- # only for WebSocket APIs.
5300
+ # must be a valid and unique method request parameter name.
5301
+ #
5302
+ # For HTTP APIs, request parameters are a key-value map specifying
5303
+ # parameters that are passed to AWS\_PROXY integrations with a
5304
+ # specified integrationSubtype. You can provide static values, or map
5305
+ # request data, stage variables, or context variables that are
5306
+ # evaluated at runtime. To learn more, see [Working with AWS service
5307
+ # integrations for HTTP APIs][1].
5308
+ #
5309
+ #
5310
+ #
5311
+ # [1]: https://docs.aws.amazon.com/apigateway/latest/developerguide/http-api-develop-integrations-aws-services.html
5047
5312
  # @return [Hash<String,String>]
5048
5313
  #
5049
5314
  # @!attribute [rw] request_templates
@@ -5082,6 +5347,7 @@ module Aws::ApiGatewayV2
5082
5347
  :integration_id,
5083
5348
  :integration_method,
5084
5349
  :integration_response_selection_expression,
5350
+ :integration_subtype,
5085
5351
  :integration_type,
5086
5352
  :integration_uri,
5087
5353
  :passthrough_behavior,
@@ -5312,6 +5578,77 @@ module Aws::ApiGatewayV2
5312
5578
  include Aws::Structure
5313
5579
  end
5314
5580
 
5581
+ # If specified, API Gateway performs two-way authentication between the
5582
+ # client and the server. Clients must present a trusted certificate to
5583
+ # access your API.
5584
+ #
5585
+ # @!attribute [rw] truststore_uri
5586
+ # An Amazon S3 URL that specifies the truststore for mutual TLS
5587
+ # authentication, for example, s3://*bucket-name*/*key-name*. The
5588
+ # truststore can contain certificates from public or private
5589
+ # certificate authorities. To update the truststore, upload a new
5590
+ # version to S3, and then update your custom domain name to use the
5591
+ # new version. To update the truststore, you must have permissions to
5592
+ # access the S3 object.
5593
+ # @return [String]
5594
+ #
5595
+ # @!attribute [rw] truststore_version
5596
+ # The version of the S3 object that contains your truststore. To
5597
+ # specify a version, you must have versioning enabled for the S3
5598
+ # bucket.
5599
+ # @return [String]
5600
+ #
5601
+ # @!attribute [rw] truststore_warnings
5602
+ # A list of warnings that API Gateway returns while processing your
5603
+ # truststore. Invalid certificates produce warnings. Mutual TLS is
5604
+ # still enabled, but some clients might not be able to access your
5605
+ # API. To resolve warnings, upload a new truststore to S3, and then
5606
+ # update you domain name to use the new version.
5607
+ # @return [Array<String>]
5608
+ #
5609
+ class MutualTlsAuthentication < Struct.new(
5610
+ :truststore_uri,
5611
+ :truststore_version,
5612
+ :truststore_warnings)
5613
+ SENSITIVE = []
5614
+ include Aws::Structure
5615
+ end
5616
+
5617
+ # If specified, API Gateway performs two-way authentication between the
5618
+ # client and the server. Clients must present a trusted certificate to
5619
+ # access your API.
5620
+ #
5621
+ # @note When making an API call, you may pass MutualTlsAuthenticationInput
5622
+ # data as a hash:
5623
+ #
5624
+ # {
5625
+ # truststore_uri: "UriWithLengthBetween1And2048",
5626
+ # truststore_version: "StringWithLengthBetween1And64",
5627
+ # }
5628
+ #
5629
+ # @!attribute [rw] truststore_uri
5630
+ # An Amazon S3 URL that specifies the truststore for mutual TLS
5631
+ # authentication, for example, s3://*bucket-name*/*key-name*. The
5632
+ # truststore can contain certificates from public or private
5633
+ # certificate authorities. To update the truststore, upload a new
5634
+ # version to S3, and then update your custom domain name to use the
5635
+ # new version. To update the truststore, you must have permissions to
5636
+ # access the S3 object.
5637
+ # @return [String]
5638
+ #
5639
+ # @!attribute [rw] truststore_version
5640
+ # The version of the S3 object that contains your truststore. To
5641
+ # specify a version, you must have versioning enabled for the S3
5642
+ # bucket.
5643
+ # @return [String]
5644
+ #
5645
+ class MutualTlsAuthenticationInput < Struct.new(
5646
+ :truststore_uri,
5647
+ :truststore_version)
5648
+ SENSITIVE = []
5649
+ include Aws::Structure
5650
+ end
5651
+
5315
5652
  # The resource specified in the request was not found. See the message
5316
5653
  # field for more information.
5317
5654
  #
@@ -5397,6 +5734,9 @@ module Aws::ApiGatewayV2
5397
5734
  # @!attribute [rw] api_endpoint
5398
5735
  # @return [String]
5399
5736
  #
5737
+ # @!attribute [rw] api_gateway_managed
5738
+ # @return [Boolean]
5739
+ #
5400
5740
  # @!attribute [rw] api_id
5401
5741
  # The identifier.
5402
5742
  # @return [String]
@@ -5429,6 +5769,9 @@ module Aws::ApiGatewayV2
5429
5769
  # @!attribute [rw] disable_schema_validation
5430
5770
  # @return [Boolean]
5431
5771
  #
5772
+ # @!attribute [rw] disable_execute_api_endpoint
5773
+ # @return [Boolean]
5774
+ #
5432
5775
  # @!attribute [rw] import_info
5433
5776
  # @return [Array<String>]
5434
5777
  #
@@ -5462,12 +5805,14 @@ module Aws::ApiGatewayV2
5462
5805
  #
5463
5806
  class ReimportApiResponse < Struct.new(
5464
5807
  :api_endpoint,
5808
+ :api_gateway_managed,
5465
5809
  :api_id,
5466
5810
  :api_key_selection_expression,
5467
5811
  :cors_configuration,
5468
5812
  :created_date,
5469
5813
  :description,
5470
5814
  :disable_schema_validation,
5815
+ :disable_execute_api_endpoint,
5471
5816
  :import_info,
5472
5817
  :name,
5473
5818
  :protocol_type,
@@ -5508,8 +5853,9 @@ module Aws::ApiGatewayV2
5508
5853
  # The authorization type for the route. For WebSocket APIs, valid
5509
5854
  # values are NONE for open access, AWS\_IAM for using AWS IAM
5510
5855
  # permissions, and CUSTOM for using a Lambda authorizer For HTTP APIs,
5511
- # valid values are NONE for open access, or JWT for using JSON Web
5512
- # Tokens.
5856
+ # valid values are NONE for open access, JWT for using JSON Web
5857
+ # Tokens, AWS\_IAM for using AWS IAM permissions, and CUSTOM for using
5858
+ # a Lambda authorizer.
5513
5859
  # @return [String]
5514
5860
  #
5515
5861
  # @!attribute [rw] authorizer_id
@@ -5958,6 +6304,9 @@ module Aws::ApiGatewayV2
5958
6304
  # for WebSocket APIs.
5959
6305
  # @return [Boolean]
5960
6306
  #
6307
+ # @!attribute [rw] disable_execute_api_endpoint
6308
+ # @return [Boolean]
6309
+ #
5961
6310
  # @!attribute [rw] name
5962
6311
  # The name of the API.
5963
6312
  # @return [String]
@@ -5995,6 +6344,7 @@ module Aws::ApiGatewayV2
5995
6344
  :credentials_arn,
5996
6345
  :description,
5997
6346
  :disable_schema_validation,
6347
+ :disable_execute_api_endpoint,
5998
6348
  :name,
5999
6349
  :route_key,
6000
6350
  :route_selection_expression,
@@ -6121,6 +6471,7 @@ module Aws::ApiGatewayV2
6121
6471
  # credentials_arn: "Arn",
6122
6472
  # description: "StringWithLengthBetween0And1024",
6123
6473
  # disable_schema_validation: false,
6474
+ # disable_execute_api_endpoint: false,
6124
6475
  # name: "StringWithLengthBetween1And128",
6125
6476
  # route_key: "SelectionKey",
6126
6477
  # route_selection_expression: "SelectionExpression",
@@ -6160,6 +6511,9 @@ module Aws::ApiGatewayV2
6160
6511
  # @!attribute [rw] disable_schema_validation
6161
6512
  # @return [Boolean]
6162
6513
  #
6514
+ # @!attribute [rw] disable_execute_api_endpoint
6515
+ # @return [Boolean]
6516
+ #
6163
6517
  # @!attribute [rw] name
6164
6518
  # A string with a length between \[1-128\].
6165
6519
  # @return [String]
@@ -6199,6 +6553,7 @@ module Aws::ApiGatewayV2
6199
6553
  :credentials_arn,
6200
6554
  :description,
6201
6555
  :disable_schema_validation,
6556
+ :disable_execute_api_endpoint,
6202
6557
  :name,
6203
6558
  :route_key,
6204
6559
  :route_selection_expression,
@@ -6211,6 +6566,9 @@ module Aws::ApiGatewayV2
6211
6566
  # @!attribute [rw] api_endpoint
6212
6567
  # @return [String]
6213
6568
  #
6569
+ # @!attribute [rw] api_gateway_managed
6570
+ # @return [Boolean]
6571
+ #
6214
6572
  # @!attribute [rw] api_id
6215
6573
  # The identifier.
6216
6574
  # @return [String]
@@ -6243,6 +6601,9 @@ module Aws::ApiGatewayV2
6243
6601
  # @!attribute [rw] disable_schema_validation
6244
6602
  # @return [Boolean]
6245
6603
  #
6604
+ # @!attribute [rw] disable_execute_api_endpoint
6605
+ # @return [Boolean]
6606
+ #
6246
6607
  # @!attribute [rw] import_info
6247
6608
  # @return [Array<String>]
6248
6609
  #
@@ -6276,12 +6637,14 @@ module Aws::ApiGatewayV2
6276
6637
  #
6277
6638
  class UpdateApiResponse < Struct.new(
6278
6639
  :api_endpoint,
6640
+ :api_gateway_managed,
6279
6641
  :api_id,
6280
6642
  :api_key_selection_expression,
6281
6643
  :cors_configuration,
6282
6644
  :created_date,
6283
6645
  :description,
6284
6646
  :disable_schema_validation,
6647
+ :disable_execute_api_endpoint,
6285
6648
  :import_info,
6286
6649
  :name,
6287
6650
  :protocol_type,
@@ -6303,14 +6666,16 @@ module Aws::ApiGatewayV2
6303
6666
  # @return [String]
6304
6667
  #
6305
6668
  # @!attribute [rw] authorizer_result_ttl_in_seconds
6306
- # Authorizer caching is not currently supported. Don't specify this
6307
- # value for authorizers.
6669
+ # The time to live (TTL) for cached authorizer results, in seconds. If
6670
+ # it equals 0, authorization caching is disabled. If it is greater
6671
+ # than 0, API Gateway caches authorizer responses. The maximum value
6672
+ # is 3600, or 1 hour. Supported only for HTTP API Lambda authorizers.
6308
6673
  # @return [Integer]
6309
6674
  #
6310
6675
  # @!attribute [rw] authorizer_type
6311
- # The authorizer type. For WebSocket APIs, specify REQUEST for a
6312
- # Lambda function using incoming request parameters. For HTTP APIs,
6313
- # specify JWT to use JSON Web Tokens.
6676
+ # The authorizer type. Specify REQUEST for a Lambda function using
6677
+ # incoming request parameters. Specify JWT to use JSON Web Tokens
6678
+ # (supported only for HTTP APIs).
6314
6679
  # @return [String]
6315
6680
  #
6316
6681
  # @!attribute [rw] authorizer_uri
@@ -6335,22 +6700,30 @@ module Aws::ApiGatewayV2
6335
6700
  #
6336
6701
  # For a REQUEST authorizer, this is optional. The value is a set of
6337
6702
  # one or more mapping expressions of the specified request parameters.
6338
- # Currently, the identity source can be headers, query string
6339
- # parameters, stage variables, and context parameters. For example, if
6340
- # an Auth header and a Name query string parameter are defined as
6341
- # identity sources, this value is route.request.header.Auth,
6342
- # route.request.querystring.Name. These parameters will be used to
6343
- # perform runtime validation for Lambda-based authorizers by verifying
6344
- # all of the identity-related request parameters are present in the
6345
- # request, not null, and non-empty. Only when this is true does the
6346
- # authorizer invoke the authorizer Lambda function. Otherwise, it
6347
- # returns a 401 Unauthorized response without calling the Lambda
6348
- # function.
6703
+ # The identity source can be headers, query string parameters, stage
6704
+ # variables, and context parameters. For example, if an Auth header
6705
+ # and a Name query string parameter are defined as identity sources,
6706
+ # this value is route.request.header.Auth,
6707
+ # route.request.querystring.Name for WebSocket APIs. For HTTP APIs,
6708
+ # use selection expressions prefixed with $, for example,
6709
+ # $request.header.Auth, $request.querystring.Name. These parameters
6710
+ # are used to perform runtime validation for Lambda-based authorizers
6711
+ # by verifying all of the identity-related request parameters are
6712
+ # present in the request, not null, and non-empty. Only when this is
6713
+ # true does the authorizer invoke the authorizer Lambda function.
6714
+ # Otherwise, it returns a 401 Unauthorized response without calling
6715
+ # the Lambda function. For HTTP APIs, identity sources are also used
6716
+ # as the cache key when caching is enabled. To learn more, see
6717
+ # [Working with AWS Lambda authorizers for HTTP APIs][1].
6349
6718
  #
6350
6719
  # For JWT, a single entry that specifies where to extract the JSON Web
6351
6720
  # Token (JWT) from inbound requests. Currently only header-based and
6352
6721
  # query parameter-based selections are supported, for example
6353
- # "$request.header.Authorization".
6722
+ # $request.header.Authorization.
6723
+ #
6724
+ #
6725
+ #
6726
+ # [1]: https://docs.aws.amazon.com/apigateway/latest/developerguide/http-api-lambda-authorizer.html
6354
6727
  # @return [Array<String>]
6355
6728
  #
6356
6729
  # @!attribute [rw] identity_validation_expression
@@ -6366,6 +6739,29 @@ module Aws::ApiGatewayV2
6366
6739
  # The name of the authorizer.
6367
6740
  # @return [String]
6368
6741
  #
6742
+ # @!attribute [rw] authorizer_payload_format_version
6743
+ # Specifies the format of the payload sent to an HTTP API Lambda
6744
+ # authorizer. Required for HTTP API Lambda authorizers. Supported
6745
+ # values are 1.0 and 2.0. To learn more, see [Working with AWS Lambda
6746
+ # authorizers for HTTP APIs][1].
6747
+ #
6748
+ #
6749
+ #
6750
+ # [1]: https://docs.aws.amazon.com/apigateway/latest/developerguide/http-api-lambda-authorizer.html
6751
+ # @return [String]
6752
+ #
6753
+ # @!attribute [rw] enable_simple_responses
6754
+ # Specifies whether a Lambda authorizer returns a response in a simple
6755
+ # format. By default, a Lambda authorizer must return an IAM policy.
6756
+ # If enabled, the Lambda authorizer can return a boolean value instead
6757
+ # of an IAM policy. Supported only for HTTP APIs. To learn more, see
6758
+ # [Working with AWS Lambda authorizers for HTTP APIs][1]
6759
+ #
6760
+ #
6761
+ #
6762
+ # [1]: https://docs.aws.amazon.com/apigateway/latest/developerguide/http-api-lambda-authorizer.html
6763
+ # @return [Boolean]
6764
+ #
6369
6765
  class UpdateAuthorizerInput < Struct.new(
6370
6766
  :authorizer_credentials_arn,
6371
6767
  :authorizer_result_ttl_in_seconds,
@@ -6374,7 +6770,9 @@ module Aws::ApiGatewayV2
6374
6770
  :identity_source,
6375
6771
  :identity_validation_expression,
6376
6772
  :jwt_configuration,
6377
- :name)
6773
+ :name,
6774
+ :authorizer_payload_format_version,
6775
+ :enable_simple_responses)
6378
6776
  SENSITIVE = []
6379
6777
  include Aws::Structure
6380
6778
  end
@@ -6396,6 +6794,8 @@ module Aws::ApiGatewayV2
6396
6794
  # issuer: "UriWithLengthBetween1And2048",
6397
6795
  # },
6398
6796
  # name: "StringWithLengthBetween1And128",
6797
+ # authorizer_payload_format_version: "StringWithLengthBetween1And64",
6798
+ # enable_simple_responses: false,
6399
6799
  # }
6400
6800
  #
6401
6801
  # @!attribute [rw] api_id
@@ -6413,9 +6813,9 @@ module Aws::ApiGatewayV2
6413
6813
  # @return [Integer]
6414
6814
  #
6415
6815
  # @!attribute [rw] authorizer_type
6416
- # The authorizer type. For WebSocket APIs, specify REQUEST for a
6417
- # Lambda function using incoming request parameters. For HTTP APIs,
6418
- # specify JWT to use JSON Web Tokens.
6816
+ # The authorizer type. Specify REQUEST for a Lambda function using
6817
+ # incoming request parameters. Specify JWT to use JSON Web Tokens
6818
+ # (supported only for HTTP APIs).
6419
6819
  # @return [String]
6420
6820
  #
6421
6821
  # @!attribute [rw] authorizer_uri
@@ -6454,6 +6854,13 @@ module Aws::ApiGatewayV2
6454
6854
  # A string with a length between \[1-128\].
6455
6855
  # @return [String]
6456
6856
  #
6857
+ # @!attribute [rw] authorizer_payload_format_version
6858
+ # A string with a length between \[1-64\].
6859
+ # @return [String]
6860
+ #
6861
+ # @!attribute [rw] enable_simple_responses
6862
+ # @return [Boolean]
6863
+ #
6457
6864
  class UpdateAuthorizerRequest < Struct.new(
6458
6865
  :api_id,
6459
6866
  :authorizer_credentials_arn,
@@ -6464,7 +6871,9 @@ module Aws::ApiGatewayV2
6464
6871
  :identity_source,
6465
6872
  :identity_validation_expression,
6466
6873
  :jwt_configuration,
6467
- :name)
6874
+ :name,
6875
+ :authorizer_payload_format_version,
6876
+ :enable_simple_responses)
6468
6877
  SENSITIVE = []
6469
6878
  include Aws::Structure
6470
6879
  end
@@ -6482,9 +6891,9 @@ module Aws::ApiGatewayV2
6482
6891
  # @return [Integer]
6483
6892
  #
6484
6893
  # @!attribute [rw] authorizer_type
6485
- # The authorizer type. For WebSocket APIs, specify REQUEST for a
6486
- # Lambda function using incoming request parameters. For HTTP APIs,
6487
- # specify JWT to use JSON Web Tokens.
6894
+ # The authorizer type. Specify REQUEST for a Lambda function using
6895
+ # incoming request parameters. Specify JWT to use JSON Web Tokens
6896
+ # (supported only for HTTP APIs).
6488
6897
  # @return [String]
6489
6898
  #
6490
6899
  # @!attribute [rw] authorizer_uri
@@ -6523,6 +6932,13 @@ module Aws::ApiGatewayV2
6523
6932
  # A string with a length between \[1-128\].
6524
6933
  # @return [String]
6525
6934
  #
6935
+ # @!attribute [rw] authorizer_payload_format_version
6936
+ # A string with a length between \[1-64\].
6937
+ # @return [String]
6938
+ #
6939
+ # @!attribute [rw] enable_simple_responses
6940
+ # @return [Boolean]
6941
+ #
6526
6942
  class UpdateAuthorizerResponse < Struct.new(
6527
6943
  :authorizer_credentials_arn,
6528
6944
  :authorizer_id,
@@ -6532,7 +6948,9 @@ module Aws::ApiGatewayV2
6532
6948
  :identity_source,
6533
6949
  :identity_validation_expression,
6534
6950
  :jwt_configuration,
6535
- :name)
6951
+ :name,
6952
+ :authorizer_payload_format_version,
6953
+ :enable_simple_responses)
6536
6954
  SENSITIVE = []
6537
6955
  include Aws::Structure
6538
6956
  end
@@ -6614,8 +7032,14 @@ module Aws::ApiGatewayV2
6614
7032
  # The domain name configurations.
6615
7033
  # @return [Array<Types::DomainNameConfiguration>]
6616
7034
  #
7035
+ # @!attribute [rw] mutual_tls_authentication
7036
+ # The mutual TLS authentication configuration for a custom domain
7037
+ # name.
7038
+ # @return [Types::MutualTlsAuthenticationInput]
7039
+ #
6617
7040
  class UpdateDomainNameInput < Struct.new(
6618
- :domain_name_configurations)
7041
+ :domain_name_configurations,
7042
+ :mutual_tls_authentication)
6619
7043
  SENSITIVE = []
6620
7044
  include Aws::Structure
6621
7045
  end
@@ -6638,6 +7062,10 @@ module Aws::ApiGatewayV2
6638
7062
  # security_policy: "TLS_1_0", # accepts TLS_1_0, TLS_1_2
6639
7063
  # },
6640
7064
  # ],
7065
+ # mutual_tls_authentication: {
7066
+ # truststore_uri: "UriWithLengthBetween1And2048",
7067
+ # truststore_version: "StringWithLengthBetween1And64",
7068
+ # },
6641
7069
  # }
6642
7070
  #
6643
7071
  # @!attribute [rw] domain_name
@@ -6647,9 +7075,16 @@ module Aws::ApiGatewayV2
6647
7075
  # The domain name configurations.
6648
7076
  # @return [Array<Types::DomainNameConfiguration>]
6649
7077
  #
7078
+ # @!attribute [rw] mutual_tls_authentication
7079
+ # If specified, API Gateway performs two-way authentication between
7080
+ # the client and the server. Clients must present a trusted
7081
+ # certificate to access your API.
7082
+ # @return [Types::MutualTlsAuthenticationInput]
7083
+ #
6650
7084
  class UpdateDomainNameRequest < Struct.new(
6651
7085
  :domain_name,
6652
- :domain_name_configurations)
7086
+ :domain_name_configurations,
7087
+ :mutual_tls_authentication)
6653
7088
  SENSITIVE = []
6654
7089
  include Aws::Structure
6655
7090
  end
@@ -6671,6 +7106,12 @@ module Aws::ApiGatewayV2
6671
7106
  # The domain name configurations.
6672
7107
  # @return [Array<Types::DomainNameConfiguration>]
6673
7108
  #
7109
+ # @!attribute [rw] mutual_tls_authentication
7110
+ # If specified, API Gateway performs two-way authentication between
7111
+ # the client and the server. Clients must present a trusted
7112
+ # certificate to access your API.
7113
+ # @return [Types::MutualTlsAuthentication]
7114
+ #
6674
7115
  # @!attribute [rw] tags
6675
7116
  # Represents a collection of tags associated with the resource.
6676
7117
  # @return [Hash<String,String>]
@@ -6679,6 +7120,7 @@ module Aws::ApiGatewayV2
6679
7120
  :api_mapping_selection_expression,
6680
7121
  :domain_name,
6681
7122
  :domain_name_configurations,
7123
+ :mutual_tls_authentication,
6682
7124
  :tags)
6683
7125
  SENSITIVE = []
6684
7126
  include Aws::Structure
@@ -6732,6 +7174,16 @@ module Aws::ApiGatewayV2
6732
7174
  # Specifies the integration's HTTP method type.
6733
7175
  # @return [String]
6734
7176
  #
7177
+ # @!attribute [rw] integration_subtype
7178
+ # Supported only for HTTP API AWS\_PROXY integrations. Specifies the
7179
+ # AWS service action to invoke. To learn more, see [Integration
7180
+ # subtype reference][1].
7181
+ #
7182
+ #
7183
+ #
7184
+ # [1]: https://docs.aws.amazon.com/apigateway/latest/developerguide/http-api-develop-integrations-aws-services-reference.html
7185
+ # @return [String]
7186
+ #
6735
7187
  # @!attribute [rw] integration_type
6736
7188
  # The integration type of an integration. One of the following:
6737
7189
  #
@@ -6741,10 +7193,9 @@ module Aws::ApiGatewayV2
6741
7193
  # custom integration. With any other AWS service action, this is known
6742
7194
  # as AWS integration. Supported only for WebSocket APIs.
6743
7195
  #
6744
- # AWS\_PROXY: for integrating the route or method request with the
6745
- # Lambda function-invoking action with the client request passed
6746
- # through as-is. This integration is also referred to as Lambda proxy
6747
- # integration.
7196
+ # AWS\_PROXY: for integrating the route or method request with a
7197
+ # Lambda function or other AWS service action. This integration is
7198
+ # also referred to as a Lambda proxy integration.
6748
7199
  #
6749
7200
  # HTTP: for integrating the route or method request with an HTTP
6750
7201
  # endpoint. This integration is also referred to as the HTTP custom
@@ -6803,16 +7254,26 @@ module Aws::ApiGatewayV2
6803
7254
  # @return [String]
6804
7255
  #
6805
7256
  # @!attribute [rw] request_parameters
6806
- # A key-value map specifying request parameters that are passed from
6807
- # the method request to the backend. The key is an integration request
6808
- # parameter name and the associated value is a method request
6809
- # parameter value or static value that must be enclosed within single
6810
- # quotes and pre-encoded as required by the backend. The method
6811
- # request parameter value must match the pattern of
7257
+ # For WebSocket APIs, a key-value map specifying request parameters
7258
+ # that are passed from the method request to the backend. The key is
7259
+ # an integration request parameter name and the associated value is a
7260
+ # method request parameter value or static value that must be enclosed
7261
+ # within single quotes and pre-encoded as required by the backend. The
7262
+ # method request parameter value must match the pattern of
6812
7263
  # method.request.*\\\{location\\}*.*\\\{name\\}* , where
6813
7264
  # *\\\{location\\}* is querystring, path, or header; and *\\\{name\\}*
6814
- # must be a valid and unique method request parameter name. Supported
6815
- # only for WebSocket APIs.
7265
+ # must be a valid and unique method request parameter name.
7266
+ #
7267
+ # For HTTP APIs, request parameters are a key-value map specifying
7268
+ # parameters that are passed to AWS\_PROXY integrations with a
7269
+ # specified integrationSubtype. You can provide static values, or map
7270
+ # request data, stage variables, or context variables that are
7271
+ # evaluated at runtime. To learn more, see [Working with AWS service
7272
+ # integrations for HTTP APIs][1].
7273
+ #
7274
+ #
7275
+ #
7276
+ # [1]: https://docs.aws.amazon.com/apigateway/latest/developerguide/http-api-develop-integrations-aws-services.html
6816
7277
  # @return [Hash<String,String>]
6817
7278
  #
6818
7279
  # @!attribute [rw] request_templates
@@ -6847,6 +7308,7 @@ module Aws::ApiGatewayV2
6847
7308
  :credentials_arn,
6848
7309
  :description,
6849
7310
  :integration_method,
7311
+ :integration_subtype,
6850
7312
  :integration_type,
6851
7313
  :integration_uri,
6852
7314
  :passthrough_behavior,
@@ -6872,6 +7334,7 @@ module Aws::ApiGatewayV2
6872
7334
  # description: "StringWithLengthBetween0And1024",
6873
7335
  # integration_id: "__string", # required
6874
7336
  # integration_method: "StringWithLengthBetween1And64",
7337
+ # integration_subtype: "StringWithLengthBetween1And128",
6875
7338
  # integration_type: "AWS", # accepts AWS, HTTP, MOCK, HTTP_PROXY, AWS_PROXY
6876
7339
  # integration_uri: "UriWithLengthBetween1And2048",
6877
7340
  # passthrough_behavior: "WHEN_NO_MATCH", # accepts WHEN_NO_MATCH, NEVER, WHEN_NO_TEMPLATES
@@ -6920,6 +7383,10 @@ module Aws::ApiGatewayV2
6920
7383
  # A string with a length between \[1-64\].
6921
7384
  # @return [String]
6922
7385
  #
7386
+ # @!attribute [rw] integration_subtype
7387
+ # A string with a length between \[1-128\].
7388
+ # @return [String]
7389
+ #
6923
7390
  # @!attribute [rw] integration_type
6924
7391
  # Represents an API method integration type.
6925
7392
  # @return [String]
@@ -6986,6 +7453,7 @@ module Aws::ApiGatewayV2
6986
7453
  :description,
6987
7454
  :integration_id,
6988
7455
  :integration_method,
7456
+ :integration_subtype,
6989
7457
  :integration_type,
6990
7458
  :integration_uri,
6991
7459
  :passthrough_behavior,
@@ -7040,6 +7508,10 @@ module Aws::ApiGatewayV2
7040
7508
  # [1]: https://docs.aws.amazon.com/apigateway/latest/developerguide/apigateway-websocket-api-selection-expressions.html#apigateway-websocket-api-apikey-selection-expressions
7041
7509
  # @return [String]
7042
7510
  #
7511
+ # @!attribute [rw] integration_subtype
7512
+ # A string with a length between \[1-128\].
7513
+ # @return [String]
7514
+ #
7043
7515
  # @!attribute [rw] integration_type
7044
7516
  # Represents an API method integration type.
7045
7517
  # @return [String]
@@ -7107,6 +7579,7 @@ module Aws::ApiGatewayV2
7107
7579
  :integration_id,
7108
7580
  :integration_method,
7109
7581
  :integration_response_selection_expression,
7582
+ :integration_subtype,
7110
7583
  :integration_type,
7111
7584
  :integration_uri,
7112
7585
  :passthrough_behavior,
@@ -7448,8 +7921,9 @@ module Aws::ApiGatewayV2
7448
7921
  # The authorization type for the route. For WebSocket APIs, valid
7449
7922
  # values are NONE for open access, AWS\_IAM for using AWS IAM
7450
7923
  # permissions, and CUSTOM for using a Lambda authorizer For HTTP APIs,
7451
- # valid values are NONE for open access, or JWT for using JSON Web
7452
- # Tokens.
7924
+ # valid values are NONE for open access, JWT for using JSON Web
7925
+ # Tokens, AWS\_IAM for using AWS IAM permissions, and CUSTOM for using
7926
+ # a Lambda authorizer.
7453
7927
  # @return [String]
7454
7928
  #
7455
7929
  # @!attribute [rw] authorizer_id
@@ -7552,7 +8026,8 @@ module Aws::ApiGatewayV2
7552
8026
  # The authorization type. For WebSocket APIs, valid values are NONE
7553
8027
  # for open access, AWS\_IAM for using AWS IAM permissions, and CUSTOM
7554
8028
  # for using a Lambda authorizer. For HTTP APIs, valid values are NONE
7555
- # for open access, or JWT for using JSON Web Tokens.
8029
+ # for open access, JWT for using JSON Web Tokens, AWS\_IAM for using
8030
+ # AWS IAM permissions, and CUSTOM for using a Lambda authorizer.
7556
8031
  # @return [String]
7557
8032
  #
7558
8033
  # @!attribute [rw] authorizer_id
@@ -7647,7 +8122,8 @@ module Aws::ApiGatewayV2
7647
8122
  # The authorization type. For WebSocket APIs, valid values are NONE
7648
8123
  # for open access, AWS\_IAM for using AWS IAM permissions, and CUSTOM
7649
8124
  # for using a Lambda authorizer. For HTTP APIs, valid values are NONE
7650
- # for open access, or JWT for using JSON Web Tokens.
8125
+ # for open access, JWT for using JSON Web Tokens, AWS\_IAM for using
8126
+ # AWS IAM permissions, and CUSTOM for using a Lambda authorizer.
7651
8127
  # @return [String]
7652
8128
  #
7653
8129
  # @!attribute [rw] authorizer_id