aws-sdk-apigateway 1.6.0 → 1.7.0

Sign up to get free protection for your applications and to get access to all the features.
@@ -32,6 +32,7 @@ module Aws::APIGateway
32
32
  ClientCertificate = Shapes::StructureShape.new(name: 'ClientCertificate')
33
33
  ClientCertificates = Shapes::StructureShape.new(name: 'ClientCertificates')
34
34
  ConflictException = Shapes::StructureShape.new(name: 'ConflictException')
35
+ ConnectionType = Shapes::StringShape.new(name: 'ConnectionType')
35
36
  ContentHandlingStrategy = Shapes::StringShape.new(name: 'ContentHandlingStrategy')
36
37
  CreateApiKeyRequest = Shapes::StructureShape.new(name: 'CreateApiKeyRequest')
37
38
  CreateAuthorizerRequest = Shapes::StructureShape.new(name: 'CreateAuthorizerRequest')
@@ -47,6 +48,7 @@ module Aws::APIGateway
47
48
  CreateStageRequest = Shapes::StructureShape.new(name: 'CreateStageRequest')
48
49
  CreateUsagePlanKeyRequest = Shapes::StructureShape.new(name: 'CreateUsagePlanKeyRequest')
49
50
  CreateUsagePlanRequest = Shapes::StructureShape.new(name: 'CreateUsagePlanRequest')
51
+ CreateVpcLinkRequest = Shapes::StructureShape.new(name: 'CreateVpcLinkRequest')
50
52
  DeleteApiKeyRequest = Shapes::StructureShape.new(name: 'DeleteApiKeyRequest')
51
53
  DeleteAuthorizerRequest = Shapes::StructureShape.new(name: 'DeleteAuthorizerRequest')
52
54
  DeleteBasePathMappingRequest = Shapes::StructureShape.new(name: 'DeleteBasePathMappingRequest')
@@ -67,6 +69,7 @@ module Aws::APIGateway
67
69
  DeleteStageRequest = Shapes::StructureShape.new(name: 'DeleteStageRequest')
68
70
  DeleteUsagePlanKeyRequest = Shapes::StructureShape.new(name: 'DeleteUsagePlanKeyRequest')
69
71
  DeleteUsagePlanRequest = Shapes::StructureShape.new(name: 'DeleteUsagePlanRequest')
72
+ DeleteVpcLinkRequest = Shapes::StructureShape.new(name: 'DeleteVpcLinkRequest')
70
73
  Deployment = Shapes::StructureShape.new(name: 'Deployment')
71
74
  DeploymentCanarySettings = Shapes::StructureShape.new(name: 'DeploymentCanarySettings')
72
75
  Deployments = Shapes::StructureShape.new(name: 'Deployments')
@@ -133,6 +136,8 @@ module Aws::APIGateway
133
136
  GetUsagePlanRequest = Shapes::StructureShape.new(name: 'GetUsagePlanRequest')
134
137
  GetUsagePlansRequest = Shapes::StructureShape.new(name: 'GetUsagePlansRequest')
135
138
  GetUsageRequest = Shapes::StructureShape.new(name: 'GetUsageRequest')
139
+ GetVpcLinkRequest = Shapes::StructureShape.new(name: 'GetVpcLinkRequest')
140
+ GetVpcLinksRequest = Shapes::StructureShape.new(name: 'GetVpcLinksRequest')
136
141
  ImportApiKeysRequest = Shapes::StructureShape.new(name: 'ImportApiKeysRequest')
137
142
  ImportDocumentationPartsRequest = Shapes::StructureShape.new(name: 'ImportDocumentationPartsRequest')
138
143
  ImportRestApiRequest = Shapes::StructureShape.new(name: 'ImportRestApiRequest')
@@ -167,6 +172,7 @@ module Aws::APIGateway
167
172
  ListOfUsage = Shapes::ListShape.new(name: 'ListOfUsage')
168
173
  ListOfUsagePlan = Shapes::ListShape.new(name: 'ListOfUsagePlan')
169
174
  ListOfUsagePlanKey = Shapes::ListShape.new(name: 'ListOfUsagePlanKey')
175
+ ListOfVpcLink = Shapes::ListShape.new(name: 'ListOfVpcLink')
170
176
  LocationStatusType = Shapes::StringShape.new(name: 'LocationStatusType')
171
177
  Long = Shapes::IntegerShape.new(name: 'Long')
172
178
  MapOfHeaderValues = Shapes::MapShape.new(name: 'MapOfHeaderValues')
@@ -248,11 +254,15 @@ module Aws::APIGateway
248
254
  UpdateStageRequest = Shapes::StructureShape.new(name: 'UpdateStageRequest')
249
255
  UpdateUsagePlanRequest = Shapes::StructureShape.new(name: 'UpdateUsagePlanRequest')
250
256
  UpdateUsageRequest = Shapes::StructureShape.new(name: 'UpdateUsageRequest')
257
+ UpdateVpcLinkRequest = Shapes::StructureShape.new(name: 'UpdateVpcLinkRequest')
251
258
  Usage = Shapes::StructureShape.new(name: 'Usage')
252
259
  UsagePlan = Shapes::StructureShape.new(name: 'UsagePlan')
253
260
  UsagePlanKey = Shapes::StructureShape.new(name: 'UsagePlanKey')
254
261
  UsagePlanKeys = Shapes::StructureShape.new(name: 'UsagePlanKeys')
255
262
  UsagePlans = Shapes::StructureShape.new(name: 'UsagePlans')
263
+ VpcLink = Shapes::StructureShape.new(name: 'VpcLink')
264
+ VpcLinkStatus = Shapes::StringShape.new(name: 'VpcLinkStatus')
265
+ VpcLinks = Shapes::StructureShape.new(name: 'VpcLinks')
256
266
 
257
267
  AccessLogSettings.add_member(:format, Shapes::ShapeRef.new(shape: String, location_name: "format"))
258
268
  AccessLogSettings.add_member(:destination_arn, Shapes::ShapeRef.new(shape: String, location_name: "destinationArn"))
@@ -438,6 +448,11 @@ module Aws::APIGateway
438
448
  CreateUsagePlanRequest.add_member(:quota, Shapes::ShapeRef.new(shape: QuotaSettings, location_name: "quota"))
439
449
  CreateUsagePlanRequest.struct_class = Types::CreateUsagePlanRequest
440
450
 
451
+ CreateVpcLinkRequest.add_member(:name, Shapes::ShapeRef.new(shape: String, required: true, location_name: "name"))
452
+ CreateVpcLinkRequest.add_member(:description, Shapes::ShapeRef.new(shape: String, location_name: "description"))
453
+ CreateVpcLinkRequest.add_member(:target_arns, Shapes::ShapeRef.new(shape: ListOfString, required: true, location_name: "targetArns"))
454
+ CreateVpcLinkRequest.struct_class = Types::CreateVpcLinkRequest
455
+
441
456
  DeleteApiKeyRequest.add_member(:api_key, Shapes::ShapeRef.new(shape: String, required: true, location: "uri", location_name: "api_Key"))
442
457
  DeleteApiKeyRequest.struct_class = Types::DeleteApiKeyRequest
443
458
 
@@ -519,6 +534,9 @@ module Aws::APIGateway
519
534
  DeleteUsagePlanRequest.add_member(:usage_plan_id, Shapes::ShapeRef.new(shape: String, required: true, location: "uri", location_name: "usageplanId"))
520
535
  DeleteUsagePlanRequest.struct_class = Types::DeleteUsagePlanRequest
521
536
 
537
+ DeleteVpcLinkRequest.add_member(:vpc_link_id, Shapes::ShapeRef.new(shape: String, required: true, location: "uri", location_name: "vpclink_id"))
538
+ DeleteVpcLinkRequest.struct_class = Types::DeleteVpcLinkRequest
539
+
522
540
  Deployment.add_member(:id, Shapes::ShapeRef.new(shape: String, location_name: "id"))
523
541
  Deployment.add_member(:description, Shapes::ShapeRef.new(shape: String, location_name: "description"))
524
542
  Deployment.add_member(:created_date, Shapes::ShapeRef.new(shape: Timestamp, location_name: "createdDate"))
@@ -815,6 +833,13 @@ module Aws::APIGateway
815
833
  GetUsageRequest.add_member(:limit, Shapes::ShapeRef.new(shape: NullableInteger, location: "querystring", location_name: "limit"))
816
834
  GetUsageRequest.struct_class = Types::GetUsageRequest
817
835
 
836
+ GetVpcLinkRequest.add_member(:vpc_link_id, Shapes::ShapeRef.new(shape: String, required: true, location: "uri", location_name: "vpclink_id"))
837
+ GetVpcLinkRequest.struct_class = Types::GetVpcLinkRequest
838
+
839
+ GetVpcLinksRequest.add_member(:position, Shapes::ShapeRef.new(shape: String, location: "querystring", location_name: "position"))
840
+ GetVpcLinksRequest.add_member(:limit, Shapes::ShapeRef.new(shape: NullableInteger, location: "querystring", location_name: "limit"))
841
+ GetVpcLinksRequest.struct_class = Types::GetVpcLinksRequest
842
+
818
843
  ImportApiKeysRequest.add_member(:body, Shapes::ShapeRef.new(shape: Blob, required: true, location_name: "body"))
819
844
  ImportApiKeysRequest.add_member(:format, Shapes::ShapeRef.new(shape: ApiKeysFormat, required: true, location: "querystring", location_name: "format"))
820
845
  ImportApiKeysRequest.add_member(:fail_on_warnings, Shapes::ShapeRef.new(shape: Boolean, location: "querystring", location_name: "failonwarnings"))
@@ -840,6 +865,8 @@ module Aws::APIGateway
840
865
  Integration.add_member(:type, Shapes::ShapeRef.new(shape: IntegrationType, location_name: "type"))
841
866
  Integration.add_member(:http_method, Shapes::ShapeRef.new(shape: String, location_name: "httpMethod"))
842
867
  Integration.add_member(:uri, Shapes::ShapeRef.new(shape: String, location_name: "uri"))
868
+ Integration.add_member(:connection_type, Shapes::ShapeRef.new(shape: ConnectionType, location_name: "connectionType"))
869
+ Integration.add_member(:connection_id, Shapes::ShapeRef.new(shape: String, location_name: "connectionId"))
843
870
  Integration.add_member(:credentials, Shapes::ShapeRef.new(shape: String, location_name: "credentials"))
844
871
  Integration.add_member(:request_parameters, Shapes::ShapeRef.new(shape: MapOfStringToString, location_name: "requestParameters"))
845
872
  Integration.add_member(:request_templates, Shapes::ShapeRef.new(shape: MapOfStringToString, location_name: "requestTemplates"))
@@ -910,6 +937,8 @@ module Aws::APIGateway
910
937
 
911
938
  ListOfUsagePlanKey.member = Shapes::ShapeRef.new(shape: UsagePlanKey)
912
939
 
940
+ ListOfVpcLink.member = Shapes::ShapeRef.new(shape: VpcLink)
941
+
913
942
  MapOfHeaderValues.key = Shapes::ShapeRef.new(shape: String)
914
943
  MapOfHeaderValues.value = Shapes::ShapeRef.new(shape: String)
915
944
 
@@ -1006,6 +1035,8 @@ module Aws::APIGateway
1006
1035
  PutIntegrationRequest.add_member(:type, Shapes::ShapeRef.new(shape: IntegrationType, required: true, location_name: "type"))
1007
1036
  PutIntegrationRequest.add_member(:integration_http_method, Shapes::ShapeRef.new(shape: String, location_name: "httpMethod"))
1008
1037
  PutIntegrationRequest.add_member(:uri, Shapes::ShapeRef.new(shape: String, location_name: "uri"))
1038
+ PutIntegrationRequest.add_member(:connection_type, Shapes::ShapeRef.new(shape: ConnectionType, location_name: "connectionType"))
1039
+ PutIntegrationRequest.add_member(:connection_id, Shapes::ShapeRef.new(shape: String, location_name: "connectionId"))
1009
1040
  PutIntegrationRequest.add_member(:credentials, Shapes::ShapeRef.new(shape: String, location_name: "credentials"))
1010
1041
  PutIntegrationRequest.add_member(:request_parameters, Shapes::ShapeRef.new(shape: MapOfStringToString, location_name: "requestParameters"))
1011
1042
  PutIntegrationRequest.add_member(:request_templates, Shapes::ShapeRef.new(shape: MapOfStringToString, location_name: "requestTemplates"))
@@ -1288,6 +1319,10 @@ module Aws::APIGateway
1288
1319
  UpdateUsageRequest.add_member(:patch_operations, Shapes::ShapeRef.new(shape: ListOfPatchOperation, location_name: "patchOperations"))
1289
1320
  UpdateUsageRequest.struct_class = Types::UpdateUsageRequest
1290
1321
 
1322
+ UpdateVpcLinkRequest.add_member(:vpc_link_id, Shapes::ShapeRef.new(shape: String, required: true, location: "uri", location_name: "vpclink_id"))
1323
+ UpdateVpcLinkRequest.add_member(:patch_operations, Shapes::ShapeRef.new(shape: ListOfPatchOperation, location_name: "patchOperations"))
1324
+ UpdateVpcLinkRequest.struct_class = Types::UpdateVpcLinkRequest
1325
+
1291
1326
  Usage.add_member(:usage_plan_id, Shapes::ShapeRef.new(shape: String, location_name: "usagePlanId"))
1292
1327
  Usage.add_member(:start_date, Shapes::ShapeRef.new(shape: String, location_name: "startDate"))
1293
1328
  Usage.add_member(:end_date, Shapes::ShapeRef.new(shape: String, location_name: "endDate"))
@@ -1318,6 +1353,18 @@ module Aws::APIGateway
1318
1353
  UsagePlans.add_member(:items, Shapes::ShapeRef.new(shape: ListOfUsagePlan, location_name: "item"))
1319
1354
  UsagePlans.struct_class = Types::UsagePlans
1320
1355
 
1356
+ VpcLink.add_member(:id, Shapes::ShapeRef.new(shape: String, location_name: "id"))
1357
+ VpcLink.add_member(:name, Shapes::ShapeRef.new(shape: String, location_name: "name"))
1358
+ VpcLink.add_member(:description, Shapes::ShapeRef.new(shape: String, location_name: "description"))
1359
+ VpcLink.add_member(:target_arns, Shapes::ShapeRef.new(shape: ListOfString, location_name: "targetArns"))
1360
+ VpcLink.add_member(:status, Shapes::ShapeRef.new(shape: VpcLinkStatus, location_name: "status"))
1361
+ VpcLink.add_member(:status_message, Shapes::ShapeRef.new(shape: String, location_name: "statusMessage"))
1362
+ VpcLink.struct_class = Types::VpcLink
1363
+
1364
+ VpcLinks.add_member(:position, Shapes::ShapeRef.new(shape: String, location_name: "position"))
1365
+ VpcLinks.add_member(:items, Shapes::ShapeRef.new(shape: ListOfVpcLink, location_name: "item"))
1366
+ VpcLinks.struct_class = Types::VpcLinks
1367
+
1321
1368
 
1322
1369
  # @api private
1323
1370
  API = Seahorse::Model::Api.new.tap do |api|
@@ -1520,6 +1567,17 @@ module Aws::APIGateway
1520
1567
  o.errors << Shapes::ShapeRef.new(shape: TooManyRequestsException)
1521
1568
  end)
1522
1569
 
1570
+ api.add_operation(:create_vpc_link, Seahorse::Model::Operation.new.tap do |o|
1571
+ o.name = "CreateVpcLink"
1572
+ o.http_method = "POST"
1573
+ o.http_request_uri = "/vpclinks"
1574
+ o.input = Shapes::ShapeRef.new(shape: CreateVpcLinkRequest)
1575
+ o.output = Shapes::ShapeRef.new(shape: VpcLink)
1576
+ o.errors << Shapes::ShapeRef.new(shape: UnauthorizedException)
1577
+ o.errors << Shapes::ShapeRef.new(shape: BadRequestException)
1578
+ o.errors << Shapes::ShapeRef.new(shape: TooManyRequestsException)
1579
+ end)
1580
+
1523
1581
  api.add_operation(:delete_api_key, Seahorse::Model::Operation.new.tap do |o|
1524
1582
  o.name = "DeleteApiKey"
1525
1583
  o.http_method = "DELETE"
@@ -1769,6 +1827,18 @@ module Aws::APIGateway
1769
1827
  o.errors << Shapes::ShapeRef.new(shape: TooManyRequestsException)
1770
1828
  end)
1771
1829
 
1830
+ api.add_operation(:delete_vpc_link, Seahorse::Model::Operation.new.tap do |o|
1831
+ o.name = "DeleteVpcLink"
1832
+ o.http_method = "DELETE"
1833
+ o.http_request_uri = "/vpclinks/{vpclink_id}"
1834
+ o.input = Shapes::ShapeRef.new(shape: DeleteVpcLinkRequest)
1835
+ o.output = Shapes::ShapeRef.new(shape: Shapes::StructureShape.new(struct_class: Aws::EmptyStructure))
1836
+ o.errors << Shapes::ShapeRef.new(shape: UnauthorizedException)
1837
+ o.errors << Shapes::ShapeRef.new(shape: NotFoundException)
1838
+ o.errors << Shapes::ShapeRef.new(shape: TooManyRequestsException)
1839
+ o.errors << Shapes::ShapeRef.new(shape: BadRequestException)
1840
+ end)
1841
+
1772
1842
  api.add_operation(:flush_stage_authorizers_cache, Seahorse::Model::Operation.new.tap do |o|
1773
1843
  o.name = "FlushStageAuthorizersCache"
1774
1844
  o.http_method = "DELETE"
@@ -2363,6 +2433,34 @@ module Aws::APIGateway
2363
2433
  )
2364
2434
  end)
2365
2435
 
2436
+ api.add_operation(:get_vpc_link, Seahorse::Model::Operation.new.tap do |o|
2437
+ o.name = "GetVpcLink"
2438
+ o.http_method = "GET"
2439
+ o.http_request_uri = "/vpclinks/{vpclink_id}"
2440
+ o.input = Shapes::ShapeRef.new(shape: GetVpcLinkRequest)
2441
+ o.output = Shapes::ShapeRef.new(shape: VpcLink)
2442
+ o.errors << Shapes::ShapeRef.new(shape: UnauthorizedException)
2443
+ o.errors << Shapes::ShapeRef.new(shape: NotFoundException)
2444
+ o.errors << Shapes::ShapeRef.new(shape: TooManyRequestsException)
2445
+ end)
2446
+
2447
+ api.add_operation(:get_vpc_links, Seahorse::Model::Operation.new.tap do |o|
2448
+ o.name = "GetVpcLinks"
2449
+ o.http_method = "GET"
2450
+ o.http_request_uri = "/vpclinks"
2451
+ o.input = Shapes::ShapeRef.new(shape: GetVpcLinksRequest)
2452
+ o.output = Shapes::ShapeRef.new(shape: VpcLinks)
2453
+ o.errors << Shapes::ShapeRef.new(shape: BadRequestException)
2454
+ o.errors << Shapes::ShapeRef.new(shape: UnauthorizedException)
2455
+ o.errors << Shapes::ShapeRef.new(shape: TooManyRequestsException)
2456
+ o[:pager] = Aws::Pager.new(
2457
+ limit_key: "limit",
2458
+ tokens: {
2459
+ "position" => "position"
2460
+ }
2461
+ )
2462
+ end)
2463
+
2366
2464
  api.add_operation(:import_api_keys, Seahorse::Model::Operation.new.tap do |o|
2367
2465
  o.name = "ImportApiKeys"
2368
2466
  o.http_method = "POST"
@@ -2777,6 +2875,19 @@ module Aws::APIGateway
2777
2875
  o.errors << Shapes::ShapeRef.new(shape: NotFoundException)
2778
2876
  o.errors << Shapes::ShapeRef.new(shape: ConflictException)
2779
2877
  end)
2878
+
2879
+ api.add_operation(:update_vpc_link, Seahorse::Model::Operation.new.tap do |o|
2880
+ o.name = "UpdateVpcLink"
2881
+ o.http_method = "PATCH"
2882
+ o.http_request_uri = "/vpclinks/{vpclink_id}"
2883
+ o.input = Shapes::ShapeRef.new(shape: UpdateVpcLinkRequest)
2884
+ o.output = Shapes::ShapeRef.new(shape: VpcLink)
2885
+ o.errors << Shapes::ShapeRef.new(shape: UnauthorizedException)
2886
+ o.errors << Shapes::ShapeRef.new(shape: NotFoundException)
2887
+ o.errors << Shapes::ShapeRef.new(shape: BadRequestException)
2888
+ o.errors << Shapes::ShapeRef.new(shape: ConflictException)
2889
+ o.errors << Shapes::ShapeRef.new(shape: TooManyRequestsException)
2890
+ end)
2780
2891
  end
2781
2892
 
2782
2893
  end
@@ -31,7 +31,7 @@ module Aws::APIGateway
31
31
  include Aws::Structure
32
32
  end
33
33
 
34
- # Represents an AWS account that is associated with Amazon API Gateway.
34
+ # Represents an AWS account that is associated with API Gateway.
35
35
  #
36
36
  # <div class="remarks" markdown="1">
37
37
  # To view the account info, call `GET` on this resource.
@@ -290,11 +290,10 @@ module Aws::APIGateway
290
290
  # @return [String]
291
291
  #
292
292
  # @!attribute [rw] authorizer_credentials
293
- # Specifies the required credentials as an IAM role for Amazon API
294
- # Gateway to invoke the authorizer. To specify an IAM role for Amazon
295
- # API Gateway to assume, use the role's Amazon Resource Name (ARN).
296
- # To use resource-based permissions on the Lambda function, specify
297
- # null.
293
+ # Specifies the required credentials as an IAM role for API Gateway to
294
+ # invoke the authorizer. To specify an IAM role for API Gateway to
295
+ # assume, use the role's Amazon Resource Name (ARN). To use
296
+ # resource-based permissions on the Lambda function, specify null.
298
297
  # @return [String]
299
298
  #
300
299
  # @!attribute [rw] identity_source
@@ -324,8 +323,8 @@ module Aws::APIGateway
324
323
  #
325
324
  # @!attribute [rw] identity_validation_expression
326
325
  # A validation expression for the incoming identity token. For `TOKEN`
327
- # authorizers, this value is a regular expression. Amazon API Gateway
328
- # will match the incoming token from the client against the specified
326
+ # authorizers, this value is a regular expression. API Gateway will
327
+ # match the incoming token from the client against the specified
329
328
  # regular expression. It will invoke the authorizer's Lambda function
330
329
  # there is a match. Otherwise, it will return a 401 Unauthorized
331
330
  # response without calling the Lambda function. The validation
@@ -671,11 +670,10 @@ module Aws::APIGateway
671
670
  # @return [String]
672
671
  #
673
672
  # @!attribute [rw] authorizer_credentials
674
- # Specifies the required credentials as an IAM role for Amazon API
675
- # Gateway to invoke the authorizer. To specify an IAM role for Amazon
676
- # API Gateway to assume, use the role's Amazon Resource Name (ARN).
677
- # To use resource-based permissions on the Lambda function, specify
678
- # null.
673
+ # Specifies the required credentials as an IAM role for API Gateway to
674
+ # invoke the authorizer. To specify an IAM role for API Gateway to
675
+ # assume, use the role's Amazon Resource Name (ARN). To use
676
+ # resource-based permissions on the Lambda function, specify null.
679
677
  # @return [String]
680
678
  #
681
679
  # @!attribute [rw] identity_source
@@ -705,8 +703,8 @@ module Aws::APIGateway
705
703
  #
706
704
  # @!attribute [rw] identity_validation_expression
707
705
  # A validation expression for the incoming identity token. For `TOKEN`
708
- # authorizers, this value is a regular expression. Amazon API Gateway
709
- # will match the incoming token from the client against the specified
706
+ # authorizers, this value is a regular expression. API Gateway will
707
+ # match the incoming token from the client against the specified
710
708
  # regular expression. It will invoke the authorizer's Lambda function
711
709
  # there is a match. Otherwise, it will return a 401 Unauthorized
712
710
  # response without calling the Lambda function. The validation
@@ -734,7 +732,7 @@ module Aws::APIGateway
734
732
  include Aws::Structure
735
733
  end
736
734
 
737
- # Requests Amazon API Gateway to create a new BasePathMapping resource.
735
+ # Requests API Gateway to create a new BasePathMapping resource.
738
736
  #
739
737
  # @note When making an API call, you may pass CreateBasePathMappingRequest
740
738
  # data as a hash:
@@ -775,7 +773,7 @@ module Aws::APIGateway
775
773
  include Aws::Structure
776
774
  end
777
775
 
778
- # Requests Amazon API Gateway to create a Deployment resource.
776
+ # Requests API Gateway to create a Deployment resource.
779
777
  #
780
778
  # @note When making an API call, you may pass CreateDeploymentRequest
781
779
  # data as a hash:
@@ -1098,7 +1096,7 @@ module Aws::APIGateway
1098
1096
  include Aws::Structure
1099
1097
  end
1100
1098
 
1101
- # Requests Amazon API Gateway to create a Resource resource.
1099
+ # Requests API Gateway to create a Resource resource.
1102
1100
  #
1103
1101
  # @note When making an API call, you may pass CreateResourceRequest
1104
1102
  # data as a hash:
@@ -1180,7 +1178,7 @@ module Aws::APIGateway
1180
1178
  include Aws::Structure
1181
1179
  end
1182
1180
 
1183
- # Requests Amazon API Gateway to create a Stage resource.
1181
+ # Requests API Gateway to create a Stage resource.
1184
1182
  #
1185
1183
  # @note When making an API call, you may pass CreateStageRequest
1186
1184
  # data as a hash:
@@ -1211,7 +1209,7 @@ module Aws::APIGateway
1211
1209
  # @return [String]
1212
1210
  #
1213
1211
  # @!attribute [rw] stage_name
1214
- # \\\{Required\] The name for the Stage resource.
1212
+ # \[Required\] The name for the Stage resource.
1215
1213
  # @return [String]
1216
1214
  #
1217
1215
  # @!attribute [rw] deployment_id
@@ -1347,6 +1345,41 @@ module Aws::APIGateway
1347
1345
  include Aws::Structure
1348
1346
  end
1349
1347
 
1348
+ # Creates a VPC link, under the caller's account in a selected region,
1349
+ # in an asynchronous operation that typically takes 2-4 minutes to
1350
+ # complete and become operational. The caller must have permissions to
1351
+ # create and update VPC Endpoint services.
1352
+ #
1353
+ # @note When making an API call, you may pass CreateVpcLinkRequest
1354
+ # data as a hash:
1355
+ #
1356
+ # {
1357
+ # name: "String", # required
1358
+ # description: "String",
1359
+ # target_arns: ["String"], # required
1360
+ # }
1361
+ #
1362
+ # @!attribute [rw] name
1363
+ # \[Required\] The name used to label and identify the VPC link.
1364
+ # @return [String]
1365
+ #
1366
+ # @!attribute [rw] description
1367
+ # The description of the VPC link.
1368
+ # @return [String]
1369
+ #
1370
+ # @!attribute [rw] target_arns
1371
+ # \[Required\] The ARNs of network load balancers of the VPC targeted
1372
+ # by the VPC link. The network load balancers must be owned by the
1373
+ # same AWS account of the API owner.
1374
+ # @return [Array<String>]
1375
+ #
1376
+ class CreateVpcLinkRequest < Struct.new(
1377
+ :name,
1378
+ :description,
1379
+ :target_arns)
1380
+ include Aws::Structure
1381
+ end
1382
+
1350
1383
  # A request to delete the ApiKey resource.
1351
1384
  #
1352
1385
  # @note When making an API call, you may pass DeleteApiKeyRequest
@@ -1431,7 +1464,7 @@ module Aws::APIGateway
1431
1464
  include Aws::Structure
1432
1465
  end
1433
1466
 
1434
- # Requests Amazon API Gateway to delete a Deployment resource.
1467
+ # Requests API Gateway to delete a Deployment resource.
1435
1468
  #
1436
1469
  # @note When making an API call, you may pass DeleteDeploymentRequest
1437
1470
  # data as a hash:
@@ -1790,7 +1823,7 @@ module Aws::APIGateway
1790
1823
  include Aws::Structure
1791
1824
  end
1792
1825
 
1793
- # Requests Amazon API Gateway to delete a Stage resource.
1826
+ # Requests API Gateway to delete a Stage resource.
1794
1827
  #
1795
1828
  # @note When making an API call, you may pass DeleteStageRequest
1796
1829
  # data as a hash:
@@ -1859,6 +1892,25 @@ module Aws::APIGateway
1859
1892
  include Aws::Structure
1860
1893
  end
1861
1894
 
1895
+ # Deletes an existing VpcLink of a specified identifier.
1896
+ #
1897
+ # @note When making an API call, you may pass DeleteVpcLinkRequest
1898
+ # data as a hash:
1899
+ #
1900
+ # {
1901
+ # vpc_link_id: "String", # required
1902
+ # }
1903
+ #
1904
+ # @!attribute [rw] vpc_link_id
1905
+ # \[Required\] The identifier of the VpcLink. It is used in an
1906
+ # Integration to reference this VpcLink.
1907
+ # @return [String]
1908
+ #
1909
+ class DeleteVpcLinkRequest < Struct.new(
1910
+ :vpc_link_id)
1911
+ include Aws::Structure
1912
+ end
1913
+
1862
1914
  # An immutable representation of a RestApi resource that can be called
1863
1915
  # by users using Stages. A deployment must be associated with a Stage
1864
1916
  # for it to be callable over the Internet.
@@ -2005,8 +2057,8 @@ module Aws::APIGateway
2005
2057
  # [1]: http://docs.aws.amazon.com/apigateway/latest/developerguide/api-gateway-documenting-api.html
2006
2058
  #
2007
2059
  # @!attribute [rw] id
2008
- # The DocumentationPart identifier, generated by Amazon API Gateway
2009
- # when the `DocumentationPart` is created.
2060
+ # The DocumentationPart identifier, generated by API Gateway when the
2061
+ # `DocumentationPart` is created.
2010
2062
  # @return [String]
2011
2063
  #
2012
2064
  # @!attribute [rw] location
@@ -2041,7 +2093,7 @@ module Aws::APIGateway
2041
2093
  #
2042
2094
  # <div class="remarks">
2043
2095
  # This is used to return the result when documentation parts in an
2044
- # external (e.g., Swagger) file are imported into Amazon API Gateway
2096
+ # external (e.g., Swagger) file are imported into API Gateway
2045
2097
  # </div>
2046
2098
  #
2047
2099
  # <div class="seeAlso">
@@ -2235,8 +2287,8 @@ module Aws::APIGateway
2235
2287
  # (RestApi).
2236
2288
  #
2237
2289
  # <div class="Remarks" markdown="1">
2238
- # When you deploy an API, Amazon API Gateway creates a default host name
2239
- # for the API. This default API host name is of the
2290
+ # When you deploy an API, API Gateway creates a default host name for
2291
+ # the API. This default API host name is of the
2240
2292
  # `\{restapi-id\}.execute-api.\{region\}.amazonaws.com` format. With the
2241
2293
  # default host name, you can access the API's root resource with the
2242
2294
  # URL of
@@ -2280,8 +2332,8 @@ module Aws::APIGateway
2280
2332
  # The domain name associated with the regional endpoint for this
2281
2333
  # custom domain name. You set up this association by adding a DNS
2282
2334
  # record that points the custom domain name to this regional domain
2283
- # name. The regional domain name is returned by Amazon API Gateway
2284
- # when you create a regional endpoint.
2335
+ # name. The regional domain name is returned by API Gateway when you
2336
+ # create a regional endpoint.
2285
2337
  # @return [String]
2286
2338
  #
2287
2339
  # @!attribute [rw] regional_hosted_zone_id
@@ -2443,7 +2495,7 @@ module Aws::APIGateway
2443
2495
  include Aws::Structure
2444
2496
  end
2445
2497
 
2446
- # Requests Amazon API Gateway to flush a stage's cache.
2498
+ # Requests API Gateway to flush a stage's cache.
2447
2499
  #
2448
2500
  # @note When making an API call, you may pass FlushStageCacheRequest
2449
2501
  # data as a hash:
@@ -2472,7 +2524,7 @@ module Aws::APIGateway
2472
2524
  #
2473
2525
  # <div class="remarks">
2474
2526
  # For more information about valid gateway response types, see [Gateway
2475
- # Response Types Supported by Amazon API Gateway][1]
2527
+ # Response Types Supported by API Gateway][1]
2476
2528
  # <div class="example" markdown="1">
2477
2529
  # #### Example: Get a Gateway Response of a given response type
2478
2530
  #
@@ -2547,7 +2599,7 @@ module Aws::APIGateway
2547
2599
  # @!attribute [rw] default_response
2548
2600
  # A Boolean flag to indicate whether this GatewayResponse is the
2549
2601
  # default gateway response (`true`) or not (`false`). A default
2550
- # gateway response is one generated by Amazon API Gateway without any
2602
+ # gateway response is one generated by API Gateway without any
2551
2603
  # customization by an API developer.
2552
2604
  # @return [Boolean]
2553
2605
  #
@@ -2566,7 +2618,7 @@ module Aws::APIGateway
2566
2618
  #
2567
2619
  # <div class="remarks">
2568
2620
  # For more information about valid gateway response types, see [Gateway
2569
- # Response Types Supported by Amazon API Gateway][1]
2621
+ # Response Types Supported by API Gateway][1]
2570
2622
  # <div class="example" markdown="1">
2571
2623
  # #### Example: Get the collection of gateway responses of an API
2572
2624
  #
@@ -2631,8 +2683,8 @@ module Aws::APIGateway
2631
2683
  include Aws::Structure
2632
2684
  end
2633
2685
 
2634
- # Requests Amazon API Gateway to get information about the current
2635
- # Account resource.
2686
+ # Requests API Gateway to get information about the current Account
2687
+ # resource.
2636
2688
  #
2637
2689
  # @api private
2638
2690
  #
@@ -2865,8 +2917,7 @@ module Aws::APIGateway
2865
2917
  include Aws::Structure
2866
2918
  end
2867
2919
 
2868
- # Requests Amazon API Gateway to get information about a Deployment
2869
- # resource.
2920
+ # Requests API Gateway to get information about a Deployment resource.
2870
2921
  #
2871
2922
  # @note When making an API call, you may pass GetDeploymentRequest
2872
2923
  # data as a hash:
@@ -2906,7 +2957,7 @@ module Aws::APIGateway
2906
2957
  include Aws::Structure
2907
2958
  end
2908
2959
 
2909
- # Requests Amazon API Gateway to get information about a Deployments
2960
+ # Requests API Gateway to get information about a Deployments
2910
2961
  # collection.
2911
2962
  #
2912
2963
  # @note When making an API call, you may pass GetDeploymentsRequest
@@ -3219,8 +3270,8 @@ module Aws::APIGateway
3219
3270
 
3220
3271
  # Gets the GatewayResponses collection on the given RestApi. If an API
3221
3272
  # developer has not added any definitions for gateway responses, the
3222
- # result will be the Amazon API Gateway-generated default
3223
- # GatewayResponses collection for the supported response types.
3273
+ # result will be the API Gateway-generated default GatewayResponses
3274
+ # collection for the supported response types.
3224
3275
  #
3225
3276
  # @note When making an API call, you may pass GetGatewayResponsesRequest
3226
3277
  # data as a hash:
@@ -3740,7 +3791,7 @@ module Aws::APIGateway
3740
3791
  include Aws::Structure
3741
3792
  end
3742
3793
 
3743
- # Requests Amazon API Gateway to get information about a Stage resource.
3794
+ # Requests API Gateway to get information about a Stage resource.
3744
3795
  #
3745
3796
  # @note When making an API call, you may pass GetStageRequest
3746
3797
  # data as a hash:
@@ -3764,7 +3815,7 @@ module Aws::APIGateway
3764
3815
  include Aws::Structure
3765
3816
  end
3766
3817
 
3767
- # Requests Amazon API Gateway to get information about one or more Stage
3818
+ # Requests API Gateway to get information about one or more Stage
3768
3819
  # resources.
3769
3820
  #
3770
3821
  # @note When making an API call, you may pass GetStagesRequest
@@ -3953,6 +4004,50 @@ module Aws::APIGateway
3953
4004
  include Aws::Structure
3954
4005
  end
3955
4006
 
4007
+ # Gets a specified VPC link under the caller's account in a region.
4008
+ #
4009
+ # @note When making an API call, you may pass GetVpcLinkRequest
4010
+ # data as a hash:
4011
+ #
4012
+ # {
4013
+ # vpc_link_id: "String", # required
4014
+ # }
4015
+ #
4016
+ # @!attribute [rw] vpc_link_id
4017
+ # \[Required\] The identifier of the VpcLink. It is used in an
4018
+ # Integration to reference this VpcLink.
4019
+ # @return [String]
4020
+ #
4021
+ class GetVpcLinkRequest < Struct.new(
4022
+ :vpc_link_id)
4023
+ include Aws::Structure
4024
+ end
4025
+
4026
+ # Gets the VpcLinks collection under the caller's account in a selected
4027
+ # region.
4028
+ #
4029
+ # @note When making an API call, you may pass GetVpcLinksRequest
4030
+ # data as a hash:
4031
+ #
4032
+ # {
4033
+ # position: "String",
4034
+ # limit: 1,
4035
+ # }
4036
+ #
4037
+ # @!attribute [rw] position
4038
+ # The current pagination position in the paged result set.
4039
+ # @return [String]
4040
+ #
4041
+ # @!attribute [rw] limit
4042
+ # The maximum number of returned results per page.
4043
+ # @return [Integer]
4044
+ #
4045
+ class GetVpcLinksRequest < Struct.new(
4046
+ :position,
4047
+ :limit)
4048
+ include Aws::Structure
4049
+ end
4050
+
3956
4051
  # The POST request to import API keys from an external source, such as a
3957
4052
  # CSV-formatted file.
3958
4053
  #
@@ -4034,8 +4129,8 @@ module Aws::APIGateway
4034
4129
  include Aws::Structure
4035
4130
  end
4036
4131
 
4037
- # A POST request to import an API to Amazon API Gateway using an input
4038
- # of an API definition file.
4132
+ # A POST request to import an API to API Gateway using an input of an
4133
+ # API definition file.
4039
4134
  #
4040
4135
  # @note When making an API call, you may pass ImportRestApiRequest
4041
4136
  # data as a hash:
@@ -4111,12 +4206,34 @@ module Aws::APIGateway
4111
4206
  # [1]: http://docs.aws.amazon.com/apigateway/latest/developerguide/how-to-create-api.html
4112
4207
  #
4113
4208
  # @!attribute [rw] type
4114
- # Specifies the integration's type. The valid value is `HTTP` for
4115
- # integrating with an HTTP back end, `AWS` for any AWS service
4116
- # endpoints, `MOCK` for testing without actually invoking the back
4117
- # end, `HTTP_PROXY` for integrating with the HTTP proxy integration,
4118
- # or `AWS_PROXY` for integrating with the Lambda proxy integration
4119
- # type.
4209
+ # Specifies an API method integration type. The valid value is one of
4210
+ # the following:
4211
+ #
4212
+ # * `AWS`\: for integrating the API method request with an AWS service
4213
+ # action, including the Lambda function-invoking action. With the
4214
+ # Lambda function-invoking action, this is referred to as the Lambda
4215
+ # custom integration. With any other AWS service action, this is
4216
+ # known as AWS integration.
4217
+ # * `AWS_PROXY`\: for integrating the API method request with the
4218
+ # Lambda function-invoking action with the client request passed
4219
+ # through as-is. This integration is also referred to as the Lambda
4220
+ # proxy integration.
4221
+ # * `HTTP`\: for integrating the API method request with an HTTP
4222
+ # endpoint, including a private HTTP endpoint within a VPC. This
4223
+ # integration is also referred to as the HTTP custom integration.
4224
+ # * `HTTP_PROXY`\: for integrating the API method request with an HTTP
4225
+ # endpoint, including a private HTTP endpoint within a VPC, with the
4226
+ # client request passed through as-is. This is also referred to as
4227
+ # the HTTP proxy integration.
4228
+ # * `MOCK`\: for integrating the API method request with API Gateway
4229
+ # as a "loop-back" endpoint without invoking any backend.
4230
+ #
4231
+ # For the HTTP and HTTP proxy integrations, each integration can
4232
+ # specify a protocol (`http/https`), port and path. Standard 80 and
4233
+ # 443 ports are supported as well as custom ports above 1024. An HTTP
4234
+ # or HTTP proxy integration with a `connectionType` of `VPC_LINK` is
4235
+ # referred to as a private integration and uses a VpcLink to connect
4236
+ # API Gateway to a network load balancer of a VPC.
4120
4237
  # @return [String]
4121
4238
  #
4122
4239
  # @!attribute [rw] http_method
@@ -4124,31 +4241,63 @@ module Aws::APIGateway
4124
4241
  # @return [String]
4125
4242
  #
4126
4243
  # @!attribute [rw] uri
4127
- # Specifies the integration's Uniform Resource Identifier (URI). For
4128
- # HTTP integrations, the URI must be a fully formed, encoded HTTP(S)
4129
- # URL according to the [RFC-3986 specification][1]. For AWS
4130
- # integrations, the URI should be of the form
4131
- # `arn:aws:apigateway:\{region\}:\{subdomain.service|service\}:\{path|action\}/\{service_api\}`.
4132
- # `Region`, `subdomain` and `service` are used to determine the right
4133
- # endpoint. For AWS services that use the `Action=` query string
4134
- # parameter, `service_api` should be a valid action for the desired
4135
- # service. For RESTful AWS service APIs, `path` is used to indicate
4136
- # that the remaining substring in the URI should be treated as the
4137
- # path to the resource, including the initial `/`.
4244
+ # Specifies Uniform Resource Identifier (URI) of the integration
4245
+ # endpoint.
4246
+ #
4247
+ # * For `HTTP` or `HTTP_PROXY` integrations, the URI must be a fully
4248
+ # formed, encoded HTTP(S) URL according to the [RFC-3986
4249
+ # specification][1], for either standard integration, where
4250
+ # `connectionType` is not `VPC_LINK`, or private integration, where
4251
+ # `connectionType` is `VPC_LINK`. For a private HTTP integration,
4252
+ # the URI is not used for routing.
4253
+ #
4254
+ # * For `AWS` or `AWS_PROXY` integrations, the URI is of the form
4255
+ # `arn:aws:apigateway:\{region\}:\{subdomain.service|service\}:path|action/\{service_api\}`.
4256
+ # Here, `\{Region\}` is the API Gateway region (e.g., `us-east-1`);
4257
+ # `\{service\}` is the name of the integrated AWS service (e.g.,
4258
+ # `s3`); and `\{subdomain\}` is a designated subdomain supported by
4259
+ # certain AWS service for fast host-name lookup. `action` can be
4260
+ # used for an AWS service action-based API, using an
4261
+ # `Action=\{name\}&\{p1\}=\{v1\}&p2=\{v2\}...` query string. The
4262
+ # ensuing `\{service_api\}` refers to a supported action `\{name\}`
4263
+ # plus any required input parameters. Alternatively, `path` can be
4264
+ # used for an AWS service path-based API. The ensuing `service_api`
4265
+ # refers to the path to an AWS service resource, including the
4266
+ # region of the integrated AWS service, if applicable. For example,
4267
+ # for integration with the S3 API of `GetObject`, the `uri` can be
4268
+ # either
4269
+ # `arn:aws:apigateway:us-west-2:s3:action/GetObject&Bucket=\{bucket\}&Key=\{key\}`
4270
+ # or `arn:aws:apigateway:us-west-2:s3:path/\{bucket\}/\{key\}`
4138
4271
  #
4139
4272
  #
4140
4273
  #
4141
4274
  # [1]: https://en.wikipedia.org/wiki/Uniform_Resource_Identifier
4142
4275
  # @return [String]
4143
4276
  #
4277
+ # @!attribute [rw] connection_type
4278
+ # The type of the network connection to the integration endpoint. The
4279
+ # valid value is `INTERNET` for connections through the public
4280
+ # routable internet or `VPC_LINK` for private connections between API
4281
+ # Gateway and an network load balancer in a VPC. The default value is
4282
+ # `INTERNET`.
4283
+ # @return [String]
4284
+ #
4285
+ # @!attribute [rw] connection_id
4286
+ # The ([`id`][1]) of the VpcLink used for the integration when
4287
+ # `connectionType=VPC_LINK` and undefined, otherwise.
4288
+ #
4289
+ #
4290
+ #
4291
+ # [1]: http://docs.aws.amazon.com/apigateway/api-reference/resource/vpc-link/#id
4292
+ # @return [String]
4293
+ #
4144
4294
  # @!attribute [rw] credentials
4145
4295
  # Specifies the credentials required for the integration, if any. For
4146
4296
  # AWS integrations, three options are available. To specify an IAM
4147
- # Role for Amazon API Gateway to assume, use the role's Amazon
4148
- # Resource Name (ARN). To require that the caller's identity be
4149
- # passed through from the request, specify the string
4150
- # `arn:aws:iam::*:user/*`. To use resource-based permissions on
4151
- # supported AWS services, specify null.
4297
+ # Role for API Gateway to assume, use the role's Amazon Resource Name
4298
+ # (ARN). To require that the caller's identity be passed through from
4299
+ # the request, specify the string `arn:aws:iam::*:user/*`. To use
4300
+ # resource-based permissions on supported AWS services, specify null.
4152
4301
  # @return [String]
4153
4302
  #
4154
4303
  # @!attribute [rw] request_parameters
@@ -4177,21 +4326,20 @@ module Aws::APIGateway
4177
4326
  # without transformation. A content type is unmapped if no mapping
4178
4327
  # template is defined in the integration or the content type does not
4179
4328
  # match any of the mapped content types, as specified in
4180
- # `requestTemplates`. There are three valid values: `WHEN_NO_MATCH`,
4181
- # `WHEN_NO_TEMPLATES`, and `NEVER`.
4329
+ # `requestTemplates`. The valid value is one of the following:
4182
4330
  #
4183
- # * `WHEN_NO_MATCH` passes the method request body through the
4331
+ # * `WHEN_NO_MATCH`\: passes the method request body through the
4184
4332
  # integration request to the back end without transformation when
4185
4333
  # the method request content type does not match any content type
4186
4334
  # associated with the mapping templates defined in the integration
4187
4335
  # request.
4188
- # * `WHEN_NO_TEMPLATES` passes the method request body through the
4336
+ # * `WHEN_NO_TEMPLATES`\: passes the method request body through the
4189
4337
  # integration request to the back end without transformation when no
4190
4338
  # mapping template is defined in the integration request. If a
4191
4339
  # template is defined when this option is selected, the method
4192
4340
  # request of an unmapped content-type will be rejected with an HTTP
4193
4341
  # `415 Unsupported Media Type` response.
4194
- # * `NEVER` rejects the method request with an HTTP `415 Unsupported
4342
+ # * `NEVER`\: rejects the method request with an HTTP `415 Unsupported
4195
4343
  # Media Type` response when either the method request content type
4196
4344
  # does not match any content type associated with the mapping
4197
4345
  # templates defined in the integration request or no mapping
@@ -4268,6 +4416,8 @@ module Aws::APIGateway
4268
4416
  :type,
4269
4417
  :http_method,
4270
4418
  :uri,
4419
+ :connection_type,
4420
+ :connection_id,
4271
4421
  :credentials,
4272
4422
  :request_parameters,
4273
4423
  :request_templates,
@@ -4442,8 +4592,8 @@ module Aws::APIGateway
4442
4592
  #
4443
4593
  # @!attribute [rw] request_parameters
4444
4594
  # A key-value map defining required or optional method request
4445
- # parameters that can be accepted by Amazon API Gateway. A key is a
4446
- # method request parameter name matching the pattern of
4595
+ # parameters that can be accepted by API Gateway. A key is a method
4596
+ # request parameter name matching the pattern of
4447
4597
  # `method.request.\{location\}.\{name\}`, where `location` is
4448
4598
  # `querystring`, `path`, or `header` and `name` is a valid and unique
4449
4599
  # parameter name. The value associated with the key is a Boolean flag
@@ -4588,15 +4738,15 @@ module Aws::APIGateway
4588
4738
  #
4589
4739
  # @!attribute [rw] response_parameters
4590
4740
  # A key-value map specifying required or optional response parameters
4591
- # that Amazon API Gateway can send back to the caller. A key defines a
4592
- # method response header and the value specifies whether the
4593
- # associated method response header is required or not. The expression
4594
- # of the key must match the pattern `method.response.header.\{name\}`,
4595
- # where `name` is a valid and unique header name. Amazon API Gateway
4596
- # passes certain integration response data to the method response
4597
- # headers specified here according to the mapping you prescribe in the
4598
- # API's IntegrationResponse. The integration response data that can
4599
- # be mapped include an integration response header expressed in
4741
+ # that API Gateway can send back to the caller. A key defines a method
4742
+ # response header and the value specifies whether the associated
4743
+ # method response header is required or not. The expression of the key
4744
+ # must match the pattern `method.response.header.\{name\}`, where
4745
+ # `name` is a valid and unique header name. API Gateway passes certain
4746
+ # integration response data to the method response headers specified
4747
+ # here according to the mapping you prescribe in the API's
4748
+ # IntegrationResponse. The integration response data that can be
4749
+ # mapped include an integration response header expressed in
4600
4750
  # `integration.response.header.\{name\}`, a static value enclosed
4601
4751
  # within a pair of single quotes (e.g., `'application/json'`), or a
4602
4752
  # JSON expression from the back-end response payload in the form of
@@ -4960,6 +5110,8 @@ module Aws::APIGateway
4960
5110
  # type: "HTTP", # required, accepts HTTP, AWS, MOCK, HTTP_PROXY, AWS_PROXY
4961
5111
  # integration_http_method: "String",
4962
5112
  # uri: "String",
5113
+ # connection_type: "INTERNET", # accepts INTERNET, VPC_LINK
5114
+ # connection_id: "String",
4963
5115
  # credentials: "String",
4964
5116
  # request_parameters: {
4965
5117
  # "String" => "String",
@@ -4996,23 +5148,56 @@ module Aws::APIGateway
4996
5148
  # @return [String]
4997
5149
  #
4998
5150
  # @!attribute [rw] uri
4999
- # Specifies the integration's Uniform Resource Identifier (URI). For
5000
- # HTTP integrations, the URI must be a fully formed, encoded HTTP(S)
5001
- # URL according to the [RFC-3986 specification][1]. For AWS
5002
- # integrations, the URI should be of the form
5003
- # `arn:aws:apigateway:\{region\}:\{subdomain.service|service\}:\{path|action\}/\{service_api\}`.
5004
- # `Region`, `subdomain` and `service` are used to determine the right
5005
- # endpoint. For AWS services that use the `Action=` query string
5006
- # parameter, `service_api` should be a valid action for the desired
5007
- # service. For RESTful AWS service APIs, `path` is used to indicate
5008
- # that the remaining substring in the URI should be treated as the
5009
- # path to the resource, including the initial `/`.
5151
+ # Specifies Uniform Resource Identifier (URI) of the integration
5152
+ # endpoint.
5153
+ #
5154
+ # * For `HTTP` or `HTTP_PROXY` integrations, the URI must be a fully
5155
+ # formed, encoded HTTP(S) URL according to the [RFC-3986
5156
+ # specification][1], for either standard integration, where
5157
+ # `connectionType` is not `VPC_LINK`, or private integration, where
5158
+ # `connectionType` is `VPC_LINK`. For a private HTTP integration,
5159
+ # the URI is not used for routing.
5160
+ #
5161
+ # * For `AWS` or `AWS_PROXY` integrations, the URI is of the form
5162
+ # `arn:aws:apigateway:\{region\}:\{subdomain.service|service\}:path|action/\{service_api\}`.
5163
+ # Here, `\{Region\}` is the API Gateway region (e.g., `us-east-1`);
5164
+ # `\{service\}` is the name of the integrated AWS service (e.g.,
5165
+ # `s3`); and `\{subdomain\}` is a designated subdomain supported by
5166
+ # certain AWS service for fast host-name lookup. `action` can be
5167
+ # used for an AWS service action-based API, using an
5168
+ # `Action=\{name\}&\{p1\}=\{v1\}&p2=\{v2\}...` query string. The
5169
+ # ensuing `\{service_api\}` refers to a supported action `\{name\}`
5170
+ # plus any required input parameters. Alternatively, `path` can be
5171
+ # used for an AWS service path-based API. The ensuing `service_api`
5172
+ # refers to the path to an AWS service resource, including the
5173
+ # region of the integrated AWS service, if applicable. For example,
5174
+ # for integration with the S3 API of `GetObject`, the `uri` can be
5175
+ # either
5176
+ # `arn:aws:apigateway:us-west-2:s3:action/GetObject&Bucket=\{bucket\}&Key=\{key\}`
5177
+ # or `arn:aws:apigateway:us-west-2:s3:path/\{bucket\}/\{key\}`
5010
5178
  #
5011
5179
  #
5012
5180
  #
5013
5181
  # [1]: https://en.wikipedia.org/wiki/Uniform_Resource_Identifier
5014
5182
  # @return [String]
5015
5183
  #
5184
+ # @!attribute [rw] connection_type
5185
+ # The type of the network connection to the integration endpoint. The
5186
+ # valid value is `INTERNET` for connections through the public
5187
+ # routable internet or `VPC_LINK` for private connections between API
5188
+ # Gateway and an network load balancer in a VPC. The default value is
5189
+ # `INTERNET`.
5190
+ # @return [String]
5191
+ #
5192
+ # @!attribute [rw] connection_id
5193
+ # The ([`id`][1]) of the VpcLink used for the integration when
5194
+ # `connectionType=VPC_LINK` and undefined, otherwise.
5195
+ #
5196
+ #
5197
+ #
5198
+ # [1]: http://docs.aws.amazon.com/apigateway/api-reference/resource/vpc-link/#id
5199
+ # @return [String]
5200
+ #
5016
5201
  # @!attribute [rw] credentials
5017
5202
  # Specifies whether credentials are required for a put integration.
5018
5203
  # @return [String]
@@ -5092,6 +5277,8 @@ module Aws::APIGateway
5092
5277
  :type,
5093
5278
  :integration_http_method,
5094
5279
  :uri,
5280
+ :connection_type,
5281
+ :connection_id,
5095
5282
  :credentials,
5096
5283
  :request_parameters,
5097
5284
  :request_templates,
@@ -5253,8 +5440,8 @@ module Aws::APIGateway
5253
5440
  #
5254
5441
  # @!attribute [rw] request_parameters
5255
5442
  # A key-value map defining required or optional method request
5256
- # parameters that can be accepted by Amazon API Gateway. A key defines
5257
- # a method request parameter name matching the pattern of
5443
+ # parameters that can be accepted by API Gateway. A key defines a
5444
+ # method request parameter name matching the pattern of
5258
5445
  # `method.request.\{location\}.\{name\}`, where `location` is
5259
5446
  # `querystring`, `path`, or `header` and `name` is a valid and unique
5260
5447
  # parameter name. The value associated with the key is a Boolean flag
@@ -5325,10 +5512,10 @@ module Aws::APIGateway
5325
5512
  #
5326
5513
  # @!attribute [rw] response_parameters
5327
5514
  # A key-value map specifying required or optional response parameters
5328
- # that Amazon API Gateway can send back to the caller. A key defines a
5329
- # method response header name and the associated value is a Boolean
5330
- # flag indicating whether the method response parameter is required or
5331
- # not. The method response header names must match the pattern of
5515
+ # that API Gateway can send back to the caller. A key defines a method
5516
+ # response header name and the associated value is a Boolean flag
5517
+ # indicating whether the method response parameter is required or not.
5518
+ # The method response header names must match the pattern of
5332
5519
  # `method.response.header.\{name\}`, where `name` is a valid and
5333
5520
  # unique header name. The response parameter names defined here are
5334
5521
  # available in the integration response to be mapped from an
@@ -5622,7 +5809,7 @@ module Aws::APIGateway
5622
5809
  #
5623
5810
  # @!attribute [rw] id
5624
5811
  # The API's identifier. This identifier is unique across all of your
5625
- # APIs in Amazon API Gateway.
5812
+ # APIs in API Gateway.
5626
5813
  # @return [String]
5627
5814
  #
5628
5815
  # @!attribute [rw] name
@@ -5810,7 +5997,7 @@ module Aws::APIGateway
5810
5997
  #
5811
5998
  # @!attribute [rw] stage_name
5812
5999
  # The name of the stage is the first path segment in the Uniform
5813
- # Resource Identifier (URI) of a call to Amazon API Gateway.
6000
+ # Resource Identifier (URI) of a call to API Gateway.
5814
6001
  # @return [String]
5815
6002
  #
5816
6003
  # @!attribute [rw] description
@@ -6025,8 +6212,7 @@ module Aws::APIGateway
6025
6212
  # @return [Integer]
6026
6213
  #
6027
6214
  # @!attribute [rw] log
6028
- # The Amazon API Gateway execution log for the test authorizer
6029
- # request.
6215
+ # The API Gateway execution log for the test authorizer request.
6030
6216
  # @return [String]
6031
6217
  #
6032
6218
  # @!attribute [rw] latency
@@ -6157,7 +6343,7 @@ module Aws::APIGateway
6157
6343
  # @return [Hash<String,String>]
6158
6344
  #
6159
6345
  # @!attribute [rw] log
6160
- # The Amazon API Gateway execution log for the test invoke request.
6346
+ # The API Gateway execution log for the test invoke request.
6161
6347
  # @return [String]
6162
6348
  #
6163
6349
  # @!attribute [rw] latency
@@ -6199,8 +6385,8 @@ module Aws::APIGateway
6199
6385
  include Aws::Structure
6200
6386
  end
6201
6387
 
6202
- # Requests Amazon API Gateway to change information about the current
6203
- # Account resource.
6388
+ # Requests API Gateway to change information about the current Account
6389
+ # resource.
6204
6390
  #
6205
6391
  # @note When making an API call, you may pass UpdateAccountRequest
6206
6392
  # data as a hash:
@@ -6366,7 +6552,7 @@ module Aws::APIGateway
6366
6552
  include Aws::Structure
6367
6553
  end
6368
6554
 
6369
- # Requests Amazon API Gateway to change information about a Deployment
6555
+ # Requests API Gateway to change information about a Deployment
6370
6556
  # resource.
6371
6557
  #
6372
6558
  # @note When making an API call, you may pass UpdateDeploymentRequest
@@ -6909,8 +7095,7 @@ module Aws::APIGateway
6909
7095
  include Aws::Structure
6910
7096
  end
6911
7097
 
6912
- # Requests Amazon API Gateway to change information about a Stage
6913
- # resource.
7098
+ # Requests API Gateway to change information about a Stage resource.
6914
7099
  #
6915
7100
  # @note When making an API call, you may pass UpdateStageRequest
6916
7101
  # data as a hash:
@@ -7020,6 +7205,39 @@ module Aws::APIGateway
7020
7205
  include Aws::Structure
7021
7206
  end
7022
7207
 
7208
+ # Updates an existing VpcLink of a specified identifier.
7209
+ #
7210
+ # @note When making an API call, you may pass UpdateVpcLinkRequest
7211
+ # data as a hash:
7212
+ #
7213
+ # {
7214
+ # vpc_link_id: "String", # required
7215
+ # patch_operations: [
7216
+ # {
7217
+ # op: "add", # accepts add, remove, replace, move, copy, test
7218
+ # path: "String",
7219
+ # value: "String",
7220
+ # from: "String",
7221
+ # },
7222
+ # ],
7223
+ # }
7224
+ #
7225
+ # @!attribute [rw] vpc_link_id
7226
+ # \[Required\] The identifier of the VpcLink. It is used in an
7227
+ # Integration to reference this VpcLink.
7228
+ # @return [String]
7229
+ #
7230
+ # @!attribute [rw] patch_operations
7231
+ # A list of update operations to be applied to the specified resource
7232
+ # and in the order specified in this list.
7233
+ # @return [Array<Types::PatchOperation>]
7234
+ #
7235
+ class UpdateVpcLinkRequest < Struct.new(
7236
+ :vpc_link_id,
7237
+ :patch_operations)
7238
+ include Aws::Structure
7239
+ end
7240
+
7023
7241
  # Represents the usage data of a usage plan.
7024
7242
  #
7025
7243
  # <div class="remarks"></div>
@@ -7213,5 +7431,84 @@ module Aws::APIGateway
7213
7431
  include Aws::Structure
7214
7432
  end
7215
7433
 
7434
+ # A API Gateway VPC link for a RestApi to access resources in an Amazon
7435
+ # Virtual Private Cloud (VPC).
7436
+ #
7437
+ # <div class="remarks" markdown="1">
7438
+ # To enable access to a resource in an Amazon Virtual Private Cloud
7439
+ # through Amazon API Gateway, you, as an API developer, create a VpcLink
7440
+ # resource targeted for one or more network load balancers of the VPC
7441
+ # and then integrate an API method with a private integration that uses
7442
+ # the VpcLink. The private integraiton has an integration type of `HTTP`
7443
+ # or `HTTP_PROXY` and has a connection type of `VPC_LINK`. The
7444
+ # integration uses the `connectionId` property to identify the VpcLink
7445
+ # used.
7446
+ #
7447
+ # </div>
7448
+ #
7449
+ # @!attribute [rw] id
7450
+ # The identifier of the VpcLink. It is used in an Integration to
7451
+ # reference this VpcLink.
7452
+ # @return [String]
7453
+ #
7454
+ # @!attribute [rw] name
7455
+ # The name used to label and identify the VPC link.
7456
+ # @return [String]
7457
+ #
7458
+ # @!attribute [rw] description
7459
+ # The description of the VPC link.
7460
+ # @return [String]
7461
+ #
7462
+ # @!attribute [rw] target_arns
7463
+ # The ARNs of network load balancers of the VPC targeted by the VPC
7464
+ # link. The network load balancers must be owned by the same AWS
7465
+ # account of the API owner.
7466
+ # @return [Array<String>]
7467
+ #
7468
+ # @!attribute [rw] status
7469
+ # The status of the VPC link. The valid values are `AVAILABLE`,
7470
+ # `PENDING`, `DELETING`, or `FAILED`. Deploying an API will wait if
7471
+ # the status is `PENDING` and will fail if the status is `DELETING`.
7472
+ # @return [String]
7473
+ #
7474
+ # @!attribute [rw] status_message
7475
+ # A description about the VPC link status.
7476
+ # @return [String]
7477
+ #
7478
+ class VpcLink < Struct.new(
7479
+ :id,
7480
+ :name,
7481
+ :description,
7482
+ :target_arns,
7483
+ :status,
7484
+ :status_message)
7485
+ include Aws::Structure
7486
+ end
7487
+
7488
+ # The collection of VPC links under the caller's account in a region.
7489
+ #
7490
+ # <div class="seeAlso">
7491
+ # [Getting Started with Private Integrations][1], [Set up Private
7492
+ # Integrations][2]
7493
+ # </div>
7494
+ #
7495
+ #
7496
+ #
7497
+ # [1]: http://docs.aws.amazon.com/apigateway/latest/developerguide/getting-started-with-private-integration.html
7498
+ # [2]: http://docs.aws.amazon.com/apigateway/latest/developerguide/set-up-private-integration.html
7499
+ #
7500
+ # @!attribute [rw] position
7501
+ # @return [String]
7502
+ #
7503
+ # @!attribute [rw] items
7504
+ # The current page of elements from this collection.
7505
+ # @return [Array<Types::VpcLink>]
7506
+ #
7507
+ class VpcLinks < Struct.new(
7508
+ :position,
7509
+ :items)
7510
+ include Aws::Structure
7511
+ end
7512
+
7216
7513
  end
7217
7514
  end