aws-sdk-ec2 1.51.0 → 1.52.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -28,6 +28,8 @@ module Aws::EC2
28
28
  ActivityStatus = Shapes::StringShape.new(name: 'ActivityStatus')
29
29
  Address = Shapes::StructureShape.new(name: 'Address')
30
30
  AddressList = Shapes::ListShape.new(name: 'AddressList')
31
+ AdvertiseByoipCidrRequest = Shapes::StructureShape.new(name: 'AdvertiseByoipCidrRequest')
32
+ AdvertiseByoipCidrResult = Shapes::StructureShape.new(name: 'AdvertiseByoipCidrResult')
31
33
  Affinity = Shapes::StringShape.new(name: 'Affinity')
32
34
  AllocateAddressRequest = Shapes::StructureShape.new(name: 'AllocateAddressRequest')
33
35
  AllocateAddressResult = Shapes::StructureShape.new(name: 'AllocateAddressResult')
@@ -90,6 +92,9 @@ module Aws::EC2
90
92
  BundleTaskError = Shapes::StructureShape.new(name: 'BundleTaskError')
91
93
  BundleTaskList = Shapes::ListShape.new(name: 'BundleTaskList')
92
94
  BundleTaskState = Shapes::StringShape.new(name: 'BundleTaskState')
95
+ ByoipCidr = Shapes::StructureShape.new(name: 'ByoipCidr')
96
+ ByoipCidrSet = Shapes::ListShape.new(name: 'ByoipCidrSet')
97
+ ByoipCidrState = Shapes::StringShape.new(name: 'ByoipCidrState')
93
98
  CancelBatchErrorCode = Shapes::StringShape.new(name: 'CancelBatchErrorCode')
94
99
  CancelBundleTaskRequest = Shapes::StructureShape.new(name: 'CancelBundleTaskRequest')
95
100
  CancelBundleTaskResult = Shapes::StructureShape.new(name: 'CancelBundleTaskResult')
@@ -111,6 +116,7 @@ module Aws::EC2
111
116
  CancelSpotInstanceRequestsResult = Shapes::StructureShape.new(name: 'CancelSpotInstanceRequestsResult')
112
117
  CancelledSpotInstanceRequest = Shapes::StructureShape.new(name: 'CancelledSpotInstanceRequest')
113
118
  CancelledSpotInstanceRequestList = Shapes::ListShape.new(name: 'CancelledSpotInstanceRequestList')
119
+ CidrAuthorizationContext = Shapes::StructureShape.new(name: 'CidrAuthorizationContext')
114
120
  CidrBlock = Shapes::StructureShape.new(name: 'CidrBlock')
115
121
  CidrBlockSet = Shapes::ListShape.new(name: 'CidrBlockSet')
116
122
  ClassicLinkDnsSupport = Shapes::StructureShape.new(name: 'ClassicLinkDnsSupport')
@@ -272,6 +278,8 @@ module Aws::EC2
272
278
  DeleteVpnConnectionRequest = Shapes::StructureShape.new(name: 'DeleteVpnConnectionRequest')
273
279
  DeleteVpnConnectionRouteRequest = Shapes::StructureShape.new(name: 'DeleteVpnConnectionRouteRequest')
274
280
  DeleteVpnGatewayRequest = Shapes::StructureShape.new(name: 'DeleteVpnGatewayRequest')
281
+ DeprovisionByoipCidrRequest = Shapes::StructureShape.new(name: 'DeprovisionByoipCidrRequest')
282
+ DeprovisionByoipCidrResult = Shapes::StructureShape.new(name: 'DeprovisionByoipCidrResult')
275
283
  DeregisterImageRequest = Shapes::StructureShape.new(name: 'DeregisterImageRequest')
276
284
  DescribeAccountAttributesRequest = Shapes::StructureShape.new(name: 'DescribeAccountAttributesRequest')
277
285
  DescribeAccountAttributesResult = Shapes::StructureShape.new(name: 'DescribeAccountAttributesResult')
@@ -283,6 +291,8 @@ module Aws::EC2
283
291
  DescribeAvailabilityZonesResult = Shapes::StructureShape.new(name: 'DescribeAvailabilityZonesResult')
284
292
  DescribeBundleTasksRequest = Shapes::StructureShape.new(name: 'DescribeBundleTasksRequest')
285
293
  DescribeBundleTasksResult = Shapes::StructureShape.new(name: 'DescribeBundleTasksResult')
294
+ DescribeByoipCidrsRequest = Shapes::StructureShape.new(name: 'DescribeByoipCidrsRequest')
295
+ DescribeByoipCidrsResult = Shapes::StructureShape.new(name: 'DescribeByoipCidrsResult')
286
296
  DescribeClassicLinkInstancesRequest = Shapes::StructureShape.new(name: 'DescribeClassicLinkInstancesRequest')
287
297
  DescribeClassicLinkInstancesResult = Shapes::StructureShape.new(name: 'DescribeClassicLinkInstancesResult')
288
298
  DescribeConversionTaskList = Shapes::ListShape.new(name: 'DescribeConversionTaskList')
@@ -362,6 +372,8 @@ module Aws::EC2
362
372
  DescribePrefixListsResult = Shapes::StructureShape.new(name: 'DescribePrefixListsResult')
363
373
  DescribePrincipalIdFormatRequest = Shapes::StructureShape.new(name: 'DescribePrincipalIdFormatRequest')
364
374
  DescribePrincipalIdFormatResult = Shapes::StructureShape.new(name: 'DescribePrincipalIdFormatResult')
375
+ DescribePublicIpv4PoolsRequest = Shapes::StructureShape.new(name: 'DescribePublicIpv4PoolsRequest')
376
+ DescribePublicIpv4PoolsResult = Shapes::StructureShape.new(name: 'DescribePublicIpv4PoolsResult')
365
377
  DescribeRegionsRequest = Shapes::StructureShape.new(name: 'DescribeRegionsRequest')
366
378
  DescribeRegionsResult = Shapes::StructureShape.new(name: 'DescribeRegionsResult')
367
379
  DescribeReservedInstancesListingsRequest = Shapes::StructureShape.new(name: 'DescribeReservedInstancesListingsRequest')
@@ -843,6 +855,7 @@ module Aws::EC2
843
855
  PlacementGroupStringList = Shapes::ListShape.new(name: 'PlacementGroupStringList')
844
856
  PlacementStrategy = Shapes::StringShape.new(name: 'PlacementStrategy')
845
857
  PlatformValues = Shapes::StringShape.new(name: 'PlatformValues')
858
+ PoolMaxResults = Shapes::IntegerShape.new(name: 'PoolMaxResults')
846
859
  PortRange = Shapes::StructureShape.new(name: 'PortRange')
847
860
  PrefixList = Shapes::StructureShape.new(name: 'PrefixList')
848
861
  PrefixListId = Shapes::StructureShape.new(name: 'PrefixListId')
@@ -869,8 +882,14 @@ module Aws::EC2
869
882
  ProductDescriptionList = Shapes::ListShape.new(name: 'ProductDescriptionList')
870
883
  PropagatingVgw = Shapes::StructureShape.new(name: 'PropagatingVgw')
871
884
  PropagatingVgwList = Shapes::ListShape.new(name: 'PropagatingVgwList')
885
+ ProvisionByoipCidrRequest = Shapes::StructureShape.new(name: 'ProvisionByoipCidrRequest')
886
+ ProvisionByoipCidrResult = Shapes::StructureShape.new(name: 'ProvisionByoipCidrResult')
872
887
  ProvisionedBandwidth = Shapes::StructureShape.new(name: 'ProvisionedBandwidth')
873
888
  PublicIpStringList = Shapes::ListShape.new(name: 'PublicIpStringList')
889
+ PublicIpv4Pool = Shapes::StructureShape.new(name: 'PublicIpv4Pool')
890
+ PublicIpv4PoolRange = Shapes::StructureShape.new(name: 'PublicIpv4PoolRange')
891
+ PublicIpv4PoolRangeSet = Shapes::ListShape.new(name: 'PublicIpv4PoolRangeSet')
892
+ PublicIpv4PoolSet = Shapes::ListShape.new(name: 'PublicIpv4PoolSet')
874
893
  Purchase = Shapes::StructureShape.new(name: 'Purchase')
875
894
  PurchaseHostReservationRequest = Shapes::StructureShape.new(name: 'PurchaseHostReservationRequest')
876
895
  PurchaseHostReservationResult = Shapes::StructureShape.new(name: 'PurchaseHostReservationResult')
@@ -1194,6 +1213,8 @@ module Aws::EC2
1194
1213
  VpnStaticRouteList = Shapes::ListShape.new(name: 'VpnStaticRouteList')
1195
1214
  VpnStaticRouteSource = Shapes::StringShape.new(name: 'VpnStaticRouteSource')
1196
1215
  VpnTunnelOptionsSpecification = Shapes::StructureShape.new(name: 'VpnTunnelOptionsSpecification')
1216
+ WithdrawByoipCidrRequest = Shapes::StructureShape.new(name: 'WithdrawByoipCidrRequest')
1217
+ WithdrawByoipCidrResult = Shapes::StructureShape.new(name: 'WithdrawByoipCidrResult')
1197
1218
  ZoneNameStringList = Shapes::ListShape.new(name: 'ZoneNameStringList')
1198
1219
  scope = Shapes::StringShape.new(name: 'scope')
1199
1220
 
@@ -1250,17 +1271,27 @@ module Aws::EC2
1250
1271
  Address.add_member(:network_interface_owner_id, Shapes::ShapeRef.new(shape: String, location_name: "networkInterfaceOwnerId"))
1251
1272
  Address.add_member(:private_ip_address, Shapes::ShapeRef.new(shape: String, location_name: "privateIpAddress"))
1252
1273
  Address.add_member(:tags, Shapes::ShapeRef.new(shape: TagList, location_name: "tagSet"))
1274
+ Address.add_member(:public_ipv_4_pool, Shapes::ShapeRef.new(shape: String, location_name: "publicIpv4Pool"))
1253
1275
  Address.struct_class = Types::Address
1254
1276
 
1255
1277
  AddressList.member = Shapes::ShapeRef.new(shape: Address, location_name: "item")
1256
1278
 
1279
+ AdvertiseByoipCidrRequest.add_member(:cidr, Shapes::ShapeRef.new(shape: String, required: true, location_name: "Cidr"))
1280
+ AdvertiseByoipCidrRequest.add_member(:dry_run, Shapes::ShapeRef.new(shape: Boolean, location_name: "DryRun"))
1281
+ AdvertiseByoipCidrRequest.struct_class = Types::AdvertiseByoipCidrRequest
1282
+
1283
+ AdvertiseByoipCidrResult.add_member(:byoip_cidr, Shapes::ShapeRef.new(shape: ByoipCidr, location_name: "byoipCidr"))
1284
+ AdvertiseByoipCidrResult.struct_class = Types::AdvertiseByoipCidrResult
1285
+
1257
1286
  AllocateAddressRequest.add_member(:domain, Shapes::ShapeRef.new(shape: DomainType, location_name: "Domain"))
1258
1287
  AllocateAddressRequest.add_member(:address, Shapes::ShapeRef.new(shape: String, location_name: "Address"))
1288
+ AllocateAddressRequest.add_member(:public_ipv_4_pool, Shapes::ShapeRef.new(shape: String, location_name: "PublicIpv4Pool"))
1259
1289
  AllocateAddressRequest.add_member(:dry_run, Shapes::ShapeRef.new(shape: Boolean, location_name: "dryRun"))
1260
1290
  AllocateAddressRequest.struct_class = Types::AllocateAddressRequest
1261
1291
 
1262
1292
  AllocateAddressResult.add_member(:public_ip, Shapes::ShapeRef.new(shape: String, location_name: "publicIp"))
1263
1293
  AllocateAddressResult.add_member(:allocation_id, Shapes::ShapeRef.new(shape: String, location_name: "allocationId"))
1294
+ AllocateAddressResult.add_member(:public_ipv_4_pool, Shapes::ShapeRef.new(shape: String, location_name: "publicIpv4Pool"))
1264
1295
  AllocateAddressResult.add_member(:domain, Shapes::ShapeRef.new(shape: DomainType, location_name: "domain"))
1265
1296
  AllocateAddressResult.struct_class = Types::AllocateAddressResult
1266
1297
 
@@ -1476,6 +1507,14 @@ module Aws::EC2
1476
1507
 
1477
1508
  BundleTaskList.member = Shapes::ShapeRef.new(shape: BundleTask, location_name: "item")
1478
1509
 
1510
+ ByoipCidr.add_member(:cidr, Shapes::ShapeRef.new(shape: String, location_name: "cidr"))
1511
+ ByoipCidr.add_member(:description, Shapes::ShapeRef.new(shape: String, location_name: "description"))
1512
+ ByoipCidr.add_member(:status_message, Shapes::ShapeRef.new(shape: String, location_name: "statusMessage"))
1513
+ ByoipCidr.add_member(:state, Shapes::ShapeRef.new(shape: ByoipCidrState, location_name: "state"))
1514
+ ByoipCidr.struct_class = Types::ByoipCidr
1515
+
1516
+ ByoipCidrSet.member = Shapes::ShapeRef.new(shape: ByoipCidr, location_name: "item")
1517
+
1479
1518
  CancelBundleTaskRequest.add_member(:bundle_id, Shapes::ShapeRef.new(shape: String, required: true, location_name: "BundleId"))
1480
1519
  CancelBundleTaskRequest.add_member(:dry_run, Shapes::ShapeRef.new(shape: Boolean, location_name: "dryRun"))
1481
1520
  CancelBundleTaskRequest.struct_class = Types::CancelBundleTaskRequest
@@ -1546,6 +1585,10 @@ module Aws::EC2
1546
1585
 
1547
1586
  CancelledSpotInstanceRequestList.member = Shapes::ShapeRef.new(shape: CancelledSpotInstanceRequest, location_name: "item")
1548
1587
 
1588
+ CidrAuthorizationContext.add_member(:message, Shapes::ShapeRef.new(shape: String, required: true, location_name: "Message"))
1589
+ CidrAuthorizationContext.add_member(:signature, Shapes::ShapeRef.new(shape: String, required: true, location_name: "Signature"))
1590
+ CidrAuthorizationContext.struct_class = Types::CidrAuthorizationContext
1591
+
1549
1592
  CidrBlock.add_member(:cidr_block, Shapes::ShapeRef.new(shape: String, location_name: "cidrBlock"))
1550
1593
  CidrBlock.struct_class = Types::CidrBlock
1551
1594
 
@@ -2243,6 +2286,13 @@ module Aws::EC2
2243
2286
  DeleteVpnGatewayRequest.add_member(:dry_run, Shapes::ShapeRef.new(shape: Boolean, location_name: "dryRun"))
2244
2287
  DeleteVpnGatewayRequest.struct_class = Types::DeleteVpnGatewayRequest
2245
2288
 
2289
+ DeprovisionByoipCidrRequest.add_member(:cidr, Shapes::ShapeRef.new(shape: String, required: true, location_name: "Cidr"))
2290
+ DeprovisionByoipCidrRequest.add_member(:dry_run, Shapes::ShapeRef.new(shape: Boolean, location_name: "DryRun"))
2291
+ DeprovisionByoipCidrRequest.struct_class = Types::DeprovisionByoipCidrRequest
2292
+
2293
+ DeprovisionByoipCidrResult.add_member(:byoip_cidr, Shapes::ShapeRef.new(shape: ByoipCidr, location_name: "byoipCidr"))
2294
+ DeprovisionByoipCidrResult.struct_class = Types::DeprovisionByoipCidrResult
2295
+
2246
2296
  DeregisterImageRequest.add_member(:image_id, Shapes::ShapeRef.new(shape: String, required: true, location_name: "ImageId"))
2247
2297
  DeregisterImageRequest.add_member(:dry_run, Shapes::ShapeRef.new(shape: Boolean, location_name: "dryRun"))
2248
2298
  DeregisterImageRequest.struct_class = Types::DeregisterImageRequest
@@ -2286,6 +2336,15 @@ module Aws::EC2
2286
2336
  DescribeBundleTasksResult.add_member(:bundle_tasks, Shapes::ShapeRef.new(shape: BundleTaskList, location_name: "bundleInstanceTasksSet"))
2287
2337
  DescribeBundleTasksResult.struct_class = Types::DescribeBundleTasksResult
2288
2338
 
2339
+ DescribeByoipCidrsRequest.add_member(:dry_run, Shapes::ShapeRef.new(shape: Boolean, location_name: "DryRun"))
2340
+ DescribeByoipCidrsRequest.add_member(:max_results, Shapes::ShapeRef.new(shape: MaxResults, required: true, location_name: "MaxResults"))
2341
+ DescribeByoipCidrsRequest.add_member(:next_token, Shapes::ShapeRef.new(shape: NextToken, location_name: "NextToken"))
2342
+ DescribeByoipCidrsRequest.struct_class = Types::DescribeByoipCidrsRequest
2343
+
2344
+ DescribeByoipCidrsResult.add_member(:byoip_cidrs, Shapes::ShapeRef.new(shape: ByoipCidrSet, location_name: "byoipCidrSet"))
2345
+ DescribeByoipCidrsResult.add_member(:next_token, Shapes::ShapeRef.new(shape: String, location_name: "nextToken"))
2346
+ DescribeByoipCidrsResult.struct_class = Types::DescribeByoipCidrsResult
2347
+
2289
2348
  DescribeClassicLinkInstancesRequest.add_member(:filters, Shapes::ShapeRef.new(shape: FilterList, location_name: "Filter"))
2290
2349
  DescribeClassicLinkInstancesRequest.add_member(:dry_run, Shapes::ShapeRef.new(shape: Boolean, location_name: "dryRun"))
2291
2350
  DescribeClassicLinkInstancesRequest.add_member(:instance_ids, Shapes::ShapeRef.new(shape: InstanceIdStringList, location_name: "InstanceId"))
@@ -2684,6 +2743,15 @@ module Aws::EC2
2684
2743
  DescribePrincipalIdFormatResult.add_member(:next_token, Shapes::ShapeRef.new(shape: String, location_name: "nextToken"))
2685
2744
  DescribePrincipalIdFormatResult.struct_class = Types::DescribePrincipalIdFormatResult
2686
2745
 
2746
+ DescribePublicIpv4PoolsRequest.add_member(:pool_ids, Shapes::ShapeRef.new(shape: ValueStringList, location_name: "PoolId"))
2747
+ DescribePublicIpv4PoolsRequest.add_member(:next_token, Shapes::ShapeRef.new(shape: NextToken, location_name: "NextToken"))
2748
+ DescribePublicIpv4PoolsRequest.add_member(:max_results, Shapes::ShapeRef.new(shape: PoolMaxResults, location_name: "MaxResults"))
2749
+ DescribePublicIpv4PoolsRequest.struct_class = Types::DescribePublicIpv4PoolsRequest
2750
+
2751
+ DescribePublicIpv4PoolsResult.add_member(:public_ipv_4_pools, Shapes::ShapeRef.new(shape: PublicIpv4PoolSet, location_name: "publicIpv4PoolSet"))
2752
+ DescribePublicIpv4PoolsResult.add_member(:next_token, Shapes::ShapeRef.new(shape: String, location_name: "nextToken"))
2753
+ DescribePublicIpv4PoolsResult.struct_class = Types::DescribePublicIpv4PoolsResult
2754
+
2687
2755
  DescribeRegionsRequest.add_member(:filters, Shapes::ShapeRef.new(shape: FilterList, location_name: "Filter"))
2688
2756
  DescribeRegionsRequest.add_member(:region_names, Shapes::ShapeRef.new(shape: RegionNameStringList, location_name: "RegionName"))
2689
2757
  DescribeRegionsRequest.add_member(:dry_run, Shapes::ShapeRef.new(shape: Boolean, location_name: "dryRun"))
@@ -4794,6 +4862,15 @@ module Aws::EC2
4794
4862
 
4795
4863
  PropagatingVgwList.member = Shapes::ShapeRef.new(shape: PropagatingVgw, location_name: "item")
4796
4864
 
4865
+ ProvisionByoipCidrRequest.add_member(:cidr, Shapes::ShapeRef.new(shape: String, required: true, location_name: "Cidr"))
4866
+ ProvisionByoipCidrRequest.add_member(:cidr_authorization_context, Shapes::ShapeRef.new(shape: CidrAuthorizationContext, location_name: "CidrAuthorizationContext"))
4867
+ ProvisionByoipCidrRequest.add_member(:description, Shapes::ShapeRef.new(shape: String, location_name: "Description"))
4868
+ ProvisionByoipCidrRequest.add_member(:dry_run, Shapes::ShapeRef.new(shape: Boolean, location_name: "DryRun"))
4869
+ ProvisionByoipCidrRequest.struct_class = Types::ProvisionByoipCidrRequest
4870
+
4871
+ ProvisionByoipCidrResult.add_member(:byoip_cidr, Shapes::ShapeRef.new(shape: ByoipCidr, location_name: "byoipCidr"))
4872
+ ProvisionByoipCidrResult.struct_class = Types::ProvisionByoipCidrResult
4873
+
4797
4874
  ProvisionedBandwidth.add_member(:provision_time, Shapes::ShapeRef.new(shape: DateTime, location_name: "provisionTime"))
4798
4875
  ProvisionedBandwidth.add_member(:provisioned, Shapes::ShapeRef.new(shape: String, location_name: "provisioned"))
4799
4876
  ProvisionedBandwidth.add_member(:request_time, Shapes::ShapeRef.new(shape: DateTime, location_name: "requestTime"))
@@ -4803,6 +4880,23 @@ module Aws::EC2
4803
4880
 
4804
4881
  PublicIpStringList.member = Shapes::ShapeRef.new(shape: String, location_name: "PublicIp")
4805
4882
 
4883
+ PublicIpv4Pool.add_member(:pool_id, Shapes::ShapeRef.new(shape: String, location_name: "poolId"))
4884
+ PublicIpv4Pool.add_member(:description, Shapes::ShapeRef.new(shape: String, location_name: "description"))
4885
+ PublicIpv4Pool.add_member(:pool_address_ranges, Shapes::ShapeRef.new(shape: PublicIpv4PoolRangeSet, location_name: "poolAddressRangeSet"))
4886
+ PublicIpv4Pool.add_member(:total_address_count, Shapes::ShapeRef.new(shape: Integer, location_name: "totalAddressCount"))
4887
+ PublicIpv4Pool.add_member(:total_available_address_count, Shapes::ShapeRef.new(shape: Integer, location_name: "totalAvailableAddressCount"))
4888
+ PublicIpv4Pool.struct_class = Types::PublicIpv4Pool
4889
+
4890
+ PublicIpv4PoolRange.add_member(:first_address, Shapes::ShapeRef.new(shape: String, location_name: "firstAddress"))
4891
+ PublicIpv4PoolRange.add_member(:last_address, Shapes::ShapeRef.new(shape: String, location_name: "lastAddress"))
4892
+ PublicIpv4PoolRange.add_member(:address_count, Shapes::ShapeRef.new(shape: Integer, location_name: "addressCount"))
4893
+ PublicIpv4PoolRange.add_member(:available_address_count, Shapes::ShapeRef.new(shape: Integer, location_name: "availableAddressCount"))
4894
+ PublicIpv4PoolRange.struct_class = Types::PublicIpv4PoolRange
4895
+
4896
+ PublicIpv4PoolRangeSet.member = Shapes::ShapeRef.new(shape: PublicIpv4PoolRange, location_name: "item")
4897
+
4898
+ PublicIpv4PoolSet.member = Shapes::ShapeRef.new(shape: PublicIpv4Pool, location_name: "item")
4899
+
4806
4900
  Purchase.add_member(:currency_code, Shapes::ShapeRef.new(shape: CurrencyCodeValues, location_name: "currencyCode"))
4807
4901
  Purchase.add_member(:duration, Shapes::ShapeRef.new(shape: Integer, location_name: "duration"))
4808
4902
  Purchase.add_member(:host_id_set, Shapes::ShapeRef.new(shape: ResponseHostIdSet, location_name: "hostIdSet"))
@@ -6195,6 +6289,13 @@ module Aws::EC2
6195
6289
  VpnTunnelOptionsSpecification.add_member(:pre_shared_key, Shapes::ShapeRef.new(shape: String, location_name: "PreSharedKey"))
6196
6290
  VpnTunnelOptionsSpecification.struct_class = Types::VpnTunnelOptionsSpecification
6197
6291
 
6292
+ WithdrawByoipCidrRequest.add_member(:cidr, Shapes::ShapeRef.new(shape: String, required: true, location_name: "Cidr"))
6293
+ WithdrawByoipCidrRequest.add_member(:dry_run, Shapes::ShapeRef.new(shape: Boolean, location_name: "DryRun"))
6294
+ WithdrawByoipCidrRequest.struct_class = Types::WithdrawByoipCidrRequest
6295
+
6296
+ WithdrawByoipCidrResult.add_member(:byoip_cidr, Shapes::ShapeRef.new(shape: ByoipCidr, location_name: "byoipCidr"))
6297
+ WithdrawByoipCidrResult.struct_class = Types::WithdrawByoipCidrResult
6298
+
6198
6299
  ZoneNameStringList.member = Shapes::ShapeRef.new(shape: String, location_name: "ZoneName")
6199
6300
 
6200
6301
 
@@ -6239,6 +6340,14 @@ module Aws::EC2
6239
6340
  o.output = Shapes::ShapeRef.new(shape: AcceptVpcPeeringConnectionResult)
6240
6341
  end)
6241
6342
 
6343
+ api.add_operation(:advertise_byoip_cidr, Seahorse::Model::Operation.new.tap do |o|
6344
+ o.name = "AdvertiseByoipCidr"
6345
+ o.http_method = "POST"
6346
+ o.http_request_uri = "/"
6347
+ o.input = Shapes::ShapeRef.new(shape: AdvertiseByoipCidrRequest)
6348
+ o.output = Shapes::ShapeRef.new(shape: AdvertiseByoipCidrResult)
6349
+ end)
6350
+
6242
6351
  api.add_operation(:allocate_address, Seahorse::Model::Operation.new.tap do |o|
6243
6352
  o.name = "AllocateAddress"
6244
6353
  o.http_method = "POST"
@@ -7023,6 +7132,14 @@ module Aws::EC2
7023
7132
  o.output = Shapes::ShapeRef.new(shape: Shapes::StructureShape.new(struct_class: Aws::EmptyStructure))
7024
7133
  end)
7025
7134
 
7135
+ api.add_operation(:deprovision_byoip_cidr, Seahorse::Model::Operation.new.tap do |o|
7136
+ o.name = "DeprovisionByoipCidr"
7137
+ o.http_method = "POST"
7138
+ o.http_request_uri = "/"
7139
+ o.input = Shapes::ShapeRef.new(shape: DeprovisionByoipCidrRequest)
7140
+ o.output = Shapes::ShapeRef.new(shape: DeprovisionByoipCidrResult)
7141
+ end)
7142
+
7026
7143
  api.add_operation(:deregister_image, Seahorse::Model::Operation.new.tap do |o|
7027
7144
  o.name = "DeregisterImage"
7028
7145
  o.http_method = "POST"
@@ -7071,6 +7188,14 @@ module Aws::EC2
7071
7188
  o.output = Shapes::ShapeRef.new(shape: DescribeBundleTasksResult)
7072
7189
  end)
7073
7190
 
7191
+ api.add_operation(:describe_byoip_cidrs, Seahorse::Model::Operation.new.tap do |o|
7192
+ o.name = "DescribeByoipCidrs"
7193
+ o.http_method = "POST"
7194
+ o.http_request_uri = "/"
7195
+ o.input = Shapes::ShapeRef.new(shape: DescribeByoipCidrsRequest)
7196
+ o.output = Shapes::ShapeRef.new(shape: DescribeByoipCidrsResult)
7197
+ end)
7198
+
7074
7199
  api.add_operation(:describe_classic_link_instances, Seahorse::Model::Operation.new.tap do |o|
7075
7200
  o.name = "DescribeClassicLinkInstances"
7076
7201
  o.http_method = "POST"
@@ -7415,6 +7540,14 @@ module Aws::EC2
7415
7540
  o.output = Shapes::ShapeRef.new(shape: DescribePrincipalIdFormatResult)
7416
7541
  end)
7417
7542
 
7543
+ api.add_operation(:describe_public_ipv_4_pools, Seahorse::Model::Operation.new.tap do |o|
7544
+ o.name = "DescribePublicIpv4Pools"
7545
+ o.http_method = "POST"
7546
+ o.http_request_uri = "/"
7547
+ o.input = Shapes::ShapeRef.new(shape: DescribePublicIpv4PoolsRequest)
7548
+ o.output = Shapes::ShapeRef.new(shape: DescribePublicIpv4PoolsResult)
7549
+ end)
7550
+
7418
7551
  api.add_operation(:describe_regions, Seahorse::Model::Operation.new.tap do |o|
7419
7552
  o.name = "DescribeRegions"
7420
7553
  o.http_method = "POST"
@@ -8198,6 +8331,14 @@ module Aws::EC2
8198
8331
  o.output = Shapes::ShapeRef.new(shape: MoveAddressToVpcResult)
8199
8332
  end)
8200
8333
 
8334
+ api.add_operation(:provision_byoip_cidr, Seahorse::Model::Operation.new.tap do |o|
8335
+ o.name = "ProvisionByoipCidr"
8336
+ o.http_method = "POST"
8337
+ o.http_request_uri = "/"
8338
+ o.input = Shapes::ShapeRef.new(shape: ProvisionByoipCidrRequest)
8339
+ o.output = Shapes::ShapeRef.new(shape: ProvisionByoipCidrResult)
8340
+ end)
8341
+
8201
8342
  api.add_operation(:purchase_host_reservation, Seahorse::Model::Operation.new.tap do |o|
8202
8343
  o.name = "PurchaseHostReservation"
8203
8344
  o.http_method = "POST"
@@ -8477,6 +8618,14 @@ module Aws::EC2
8477
8618
  o.input = Shapes::ShapeRef.new(shape: UpdateSecurityGroupRuleDescriptionsIngressRequest)
8478
8619
  o.output = Shapes::ShapeRef.new(shape: UpdateSecurityGroupRuleDescriptionsIngressResult)
8479
8620
  end)
8621
+
8622
+ api.add_operation(:withdraw_byoip_cidr, Seahorse::Model::Operation.new.tap do |o|
8623
+ o.name = "WithdrawByoipCidr"
8624
+ o.http_method = "POST"
8625
+ o.http_request_uri = "/"
8626
+ o.input = Shapes::ShapeRef.new(shape: WithdrawByoipCidrRequest)
8627
+ o.output = Shapes::ShapeRef.new(shape: WithdrawByoipCidrResult)
8628
+ end)
8480
8629
  end
8481
8630
 
8482
8631
  end
@@ -226,22 +226,23 @@ module Aws::EC2
226
226
  # leaving the subnet).
227
227
  # @option options [Types::IcmpTypeCode] :icmp_type_code
228
228
  # ICMP protocol: The ICMP or ICMPv6 type and code. Required if
229
- # specifying the ICMP protocol, or protocol 58 (ICMPv6) with an IPv6
230
- # CIDR block.
229
+ # specifying protocol 1 (ICMP) or protocol 58 (ICMPv6) with an IPv6 CIDR
230
+ # block.
231
231
  # @option options [String] :ipv_6_cidr_block
232
232
  # The IPv6 network range to allow or deny, in CIDR notation (for example
233
233
  # `2001:db8:1234:1a00::/64`).
234
234
  # @option options [Types::PortRange] :port_range
235
- # TCP or UDP protocols: The range of ports the rule applies to.
235
+ # TCP or UDP protocols: The range of ports the rule applies to. Required
236
+ # if specifying protocol 6 (TCP) or 17 (UDP).
236
237
  # @option options [required, String] :protocol
237
- # The protocol. A value of `-1` or `all` means all protocols. If you
238
- # specify `all`, `-1`, or a protocol number other than `6` (tcp), `17`
239
- # (udp), or `1` (icmp), traffic on all ports is allowed, regardless of
238
+ # The protocol number. A value of "-1" means all protocols. If you
239
+ # specify "-1" or a protocol number other than "6" (TCP), "17"
240
+ # (UDP), or "1" (ICMP), traffic on all ports is allowed, regardless of
240
241
  # any ports or ICMP types or codes that you specify. If you specify
241
- # protocol `58` (ICMPv6) and specify an IPv4 CIDR block, traffic for all
242
- # ICMP types and codes allowed, regardless of any that you specify. If
243
- # you specify protocol `58` (ICMPv6) and specify an IPv6 CIDR block, you
244
- # must specify an ICMP type and code.
242
+ # protocol "58" (ICMPv6) and specify an IPv4 CIDR block, traffic for
243
+ # all ICMP types and codes allowed, regardless of any that you specify.
244
+ # If you specify protocol "58" (ICMPv6) and specify an IPv6 CIDR
245
+ # block, you must specify an ICMP type and code.
245
246
  # @option options [required, String] :rule_action
246
247
  # Indicates whether to allow or deny the traffic that matches the rule.
247
248
  # @option options [required, Integer] :rule_number
@@ -392,23 +393,23 @@ module Aws::EC2
392
393
  # Default: If no value is specified, we replace the ingress rule.
393
394
  # @option options [Types::IcmpTypeCode] :icmp_type_code
394
395
  # ICMP protocol: The ICMP or ICMPv6 type and code. Required if
395
- # specifying the ICMP (1) protocol, or protocol 58 (ICMPv6) with an IPv6
396
- # CIDR block.
396
+ # specifying protocol 1 (ICMP) or protocol 58 (ICMPv6) with an IPv6 CIDR
397
+ # block.
397
398
  # @option options [String] :ipv_6_cidr_block
398
399
  # The IPv6 network range to allow or deny, in CIDR notation (for example
399
400
  # `2001:bd8:1234:1a00::/64`).
400
401
  # @option options [Types::PortRange] :port_range
401
402
  # TCP or UDP protocols: The range of ports the rule applies to. Required
402
- # if specifying TCP (6) or UDP (17) for the protocol.
403
+ # if specifying protocol 6 (TCP) or 17 (UDP).
403
404
  # @option options [required, String] :protocol
404
- # The IP protocol. You can specify `all` or `-1` to mean all protocols.
405
- # If you specify `all`, `-1`, or a protocol number other than `tcp`,
406
- # `udp`, or `icmp`, traffic on all ports is allowed, regardless of any
407
- # ports or ICMP types or codes you that specify. If you specify protocol
408
- # `58` (ICMPv6) and specify an IPv4 CIDR block, traffic for all ICMP
409
- # types and codes allowed, regardless of any that you specify. If you
410
- # specify protocol `58` (ICMPv6) and specify an IPv6 CIDR block, you
411
- # must specify an ICMP type and code.
405
+ # The protocol number. A value of "-1" means all protocols. If you
406
+ # specify "-1" or a protocol number other than "6" (TCP), "17"
407
+ # (UDP), or "1" (ICMP), traffic on all ports is allowed, regardless of
408
+ # any ports or ICMP types or codes that you specify. If you specify
409
+ # protocol "58" (ICMPv6) and specify an IPv4 CIDR block, traffic for
410
+ # all ICMP types and codes allowed, regardless of any that you specify.
411
+ # If you specify protocol "58" (ICMPv6) and specify an IPv6 CIDR
412
+ # block, you must specify an ICMP type and code.
412
413
  # @option options [required, String] :rule_action
413
414
  # Indicates whether to allow or deny the traffic that matches the rule.
414
415
  # @option options [required, Integer] :rule_number
@@ -734,7 +734,7 @@ module Aws::EC2
734
734
  # If you have the required permissions, the error response is
735
735
  # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`.
736
736
  # @option options [required, Array<String>] :resources
737
- # The IDs of one or more resources to tag. For example, ami-1a2b3c4d.
737
+ # The IDs of one or more resources, separated by spaces.
738
738
  # @option options [required, Array<Types::Tag>] :tags
739
739
  # One or more tags. The `value` parameter is required, but if you don't
740
740
  # want the tag to have a value, specify the parameter with no value, and
@@ -250,6 +250,10 @@ module Aws::EC2
250
250
  # Any tags assigned to the Elastic IP address.
251
251
  # @return [Array<Types::Tag>]
252
252
  #
253
+ # @!attribute [rw] public_ipv_4_pool
254
+ # The ID of an address pool.
255
+ # @return [String]
256
+ #
253
257
  # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/Address AWS API Documentation
254
258
  #
255
259
  class Address < Struct.new(
@@ -261,18 +265,56 @@ module Aws::EC2
261
265
  :network_interface_id,
262
266
  :network_interface_owner_id,
263
267
  :private_ip_address,
264
- :tags)
268
+ :tags,
269
+ :public_ipv_4_pool)
270
+ include Aws::Structure
271
+ end
272
+
273
+ # @note When making an API call, you may pass AdvertiseByoipCidrRequest
274
+ # data as a hash:
275
+ #
276
+ # {
277
+ # cidr: "String", # required
278
+ # dry_run: false,
279
+ # }
280
+ #
281
+ # @!attribute [rw] cidr
282
+ # The IPv4 address range, in CIDR notation.
283
+ # @return [String]
284
+ #
285
+ # @!attribute [rw] dry_run
286
+ # Checks whether you have the required permissions for the action,
287
+ # without actually making the request, and provides an error response.
288
+ # If you have the required permissions, the error response is
289
+ # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`.
290
+ # @return [Boolean]
291
+ #
292
+ # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/AdvertiseByoipCidrRequest AWS API Documentation
293
+ #
294
+ class AdvertiseByoipCidrRequest < Struct.new(
295
+ :cidr,
296
+ :dry_run)
265
297
  include Aws::Structure
266
298
  end
267
299
 
268
- # Contains the parameters for AllocateAddress.
300
+ # @!attribute [rw] byoip_cidr
301
+ # Information about the address range.
302
+ # @return [Types::ByoipCidr]
269
303
  #
304
+ # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/AdvertiseByoipCidrResult AWS API Documentation
305
+ #
306
+ class AdvertiseByoipCidrResult < Struct.new(
307
+ :byoip_cidr)
308
+ include Aws::Structure
309
+ end
310
+
270
311
  # @note When making an API call, you may pass AllocateAddressRequest
271
312
  # data as a hash:
272
313
  #
273
314
  # {
274
315
  # domain: "vpc", # accepts vpc, standard
275
316
  # address: "String",
317
+ # public_ipv_4_pool: "String",
276
318
  # dry_run: false,
277
319
  # }
278
320
  #
@@ -284,7 +326,15 @@ module Aws::EC2
284
326
  # @return [String]
285
327
  #
286
328
  # @!attribute [rw] address
287
- # \[EC2-VPC\] The Elastic IP address to recover.
329
+ # \[EC2-VPC\] The Elastic IP address to recover or an IPv4 address
330
+ # from an address pool.
331
+ # @return [String]
332
+ #
333
+ # @!attribute [rw] public_ipv_4_pool
334
+ # The ID of an address pool that you own. Use this parameter to let
335
+ # Amazon EC2 select an address from the address pool. To specify a
336
+ # specific address from the address pool, use the `Address` parameter
337
+ # instead.
288
338
  # @return [String]
289
339
  #
290
340
  # @!attribute [rw] dry_run
@@ -299,12 +349,11 @@ module Aws::EC2
299
349
  class AllocateAddressRequest < Struct.new(
300
350
  :domain,
301
351
  :address,
352
+ :public_ipv_4_pool,
302
353
  :dry_run)
303
354
  include Aws::Structure
304
355
  end
305
356
 
306
- # Contains the output of AllocateAddress.
307
- #
308
357
  # @!attribute [rw] public_ip
309
358
  # The Elastic IP address.
310
359
  # @return [String]
@@ -314,6 +363,10 @@ module Aws::EC2
314
363
  # the Elastic IP address for use with instances in a VPC.
315
364
  # @return [String]
316
365
  #
366
+ # @!attribute [rw] public_ipv_4_pool
367
+ # The ID of an address pool.
368
+ # @return [String]
369
+ #
317
370
  # @!attribute [rw] domain
318
371
  # Indicates whether this Elastic IP address is for use with instances
319
372
  # in EC2-Classic (`standard`) or instances in a VPC (`vpc`).
@@ -324,6 +377,7 @@ module Aws::EC2
324
377
  class AllocateAddressResult < Struct.new(
325
378
  :public_ip,
326
379
  :allocation_id,
380
+ :public_ipv_4_pool,
327
381
  :domain)
328
382
  include Aws::Structure
329
383
  end
@@ -529,8 +583,6 @@ module Aws::EC2
529
583
  include Aws::Structure
530
584
  end
531
585
 
532
- # Contains the parameters for AssociateAddress.
533
- #
534
586
  # @note When making an API call, you may pass AssociateAddressRequest
535
587
  # data as a hash:
536
588
  #
@@ -602,8 +654,6 @@ module Aws::EC2
602
654
  include Aws::Structure
603
655
  end
604
656
 
605
- # Contains the output of AssociateAddress.
606
- #
607
657
  # @!attribute [rw] association_id
608
658
  # \[EC2-VPC\] The ID that represents the association of the Elastic IP
609
659
  # address with an instance.
@@ -1622,6 +1672,36 @@ module Aws::EC2
1622
1672
  include Aws::Structure
1623
1673
  end
1624
1674
 
1675
+ # Information about an address range that is provisioned for use with
1676
+ # your AWS resources through bring your own IP addresses (BYOIP).
1677
+ #
1678
+ # @!attribute [rw] cidr
1679
+ # The public IPv4 address range, in CIDR notation.
1680
+ # @return [String]
1681
+ #
1682
+ # @!attribute [rw] description
1683
+ # The description of the address range.
1684
+ # @return [String]
1685
+ #
1686
+ # @!attribute [rw] status_message
1687
+ # Upon success, contains the ID of the address pool. Otherwise,
1688
+ # contains an error message.
1689
+ # @return [String]
1690
+ #
1691
+ # @!attribute [rw] state
1692
+ # The state of the address pool.
1693
+ # @return [String]
1694
+ #
1695
+ # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/ByoipCidr AWS API Documentation
1696
+ #
1697
+ class ByoipCidr < Struct.new(
1698
+ :cidr,
1699
+ :description,
1700
+ :status_message,
1701
+ :state)
1702
+ include Aws::Structure
1703
+ end
1704
+
1625
1705
  # Contains the parameters for CancelBundleTask.
1626
1706
  #
1627
1707
  # @note When making an API call, you may pass CancelBundleTaskRequest
@@ -1986,6 +2066,33 @@ module Aws::EC2
1986
2066
  include Aws::Structure
1987
2067
  end
1988
2068
 
2069
+ # Provides authorization for Amazon to bring a specific IP address range
2070
+ # to a specific AWS account using bring your own IP addresses (BYOIP).
2071
+ #
2072
+ # @note When making an API call, you may pass CidrAuthorizationContext
2073
+ # data as a hash:
2074
+ #
2075
+ # {
2076
+ # message: "String", # required
2077
+ # signature: "String", # required
2078
+ # }
2079
+ #
2080
+ # @!attribute [rw] message
2081
+ # The plain-text authorization message for the prefix and account.
2082
+ # @return [String]
2083
+ #
2084
+ # @!attribute [rw] signature
2085
+ # The signed authorization message for the prefix and account.
2086
+ # @return [String]
2087
+ #
2088
+ # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/CidrAuthorizationContext AWS API Documentation
2089
+ #
2090
+ class CidrAuthorizationContext < Struct.new(
2091
+ :message,
2092
+ :signature)
2093
+ include Aws::Structure
2094
+ end
2095
+
1989
2096
  # Describes an IPv4 CIDR block.
1990
2097
  #
1991
2098
  # @!attribute [rw] cidr_block
@@ -3911,7 +4018,7 @@ module Aws::EC2
3911
4018
  #
3912
4019
  # @!attribute [rw] icmp_type_code
3913
4020
  # ICMP protocol: The ICMP or ICMPv6 type and code. Required if
3914
- # specifying the ICMP protocol, or protocol 58 (ICMPv6) with an IPv6
4021
+ # specifying protocol 1 (ICMP) or protocol 58 (ICMPv6) with an IPv6
3915
4022
  # CIDR block.
3916
4023
  # @return [Types::IcmpTypeCode]
3917
4024
  #
@@ -3926,16 +4033,17 @@ module Aws::EC2
3926
4033
  #
3927
4034
  # @!attribute [rw] port_range
3928
4035
  # TCP or UDP protocols: The range of ports the rule applies to.
4036
+ # Required if specifying protocol 6 (TCP) or 17 (UDP).
3929
4037
  # @return [Types::PortRange]
3930
4038
  #
3931
4039
  # @!attribute [rw] protocol
3932
- # The protocol. A value of `-1` or `all` means all protocols. If you
3933
- # specify `all`, `-1`, or a protocol number other than `6` (tcp), `17`
3934
- # (udp), or `1` (icmp), traffic on all ports is allowed, regardless of
3935
- # any ports or ICMP types or codes that you specify. If you specify
3936
- # protocol `58` (ICMPv6) and specify an IPv4 CIDR block, traffic for
4040
+ # The protocol number. A value of "-1" means all protocols. If you
4041
+ # specify "-1" or a protocol number other than "6" (TCP), "17"
4042
+ # (UDP), or "1" (ICMP), traffic on all ports is allowed, regardless
4043
+ # of any ports or ICMP types or codes that you specify. If you specify
4044
+ # protocol "58" (ICMPv6) and specify an IPv4 CIDR block, traffic for
3937
4045
  # all ICMP types and codes allowed, regardless of any that you
3938
- # specify. If you specify protocol `58` (ICMPv6) and specify an IPv6
4046
+ # specify. If you specify protocol "58" (ICMPv6) and specify an IPv6
3939
4047
  # CIDR block, you must specify an ICMP type and code.
3940
4048
  # @return [String]
3941
4049
  #
@@ -4666,7 +4774,7 @@ module Aws::EC2
4666
4774
  # @return [Boolean]
4667
4775
  #
4668
4776
  # @!attribute [rw] resources
4669
- # The IDs of one or more resources to tag. For example, ami-1a2b3c4d.
4777
+ # The IDs of one or more resources, separated by spaces.
4670
4778
  # @return [Array<String>]
4671
4779
  #
4672
4780
  # @!attribute [rw] tags
@@ -6413,7 +6521,7 @@ module Aws::EC2
6413
6521
  # @return [Boolean]
6414
6522
  #
6415
6523
  # @!attribute [rw] resources
6416
- # The IDs of one or more resources.
6524
+ # The IDs of one or more resources, separated by spaces.
6417
6525
  # @return [Array<String>]
6418
6526
  #
6419
6527
  # @!attribute [rw] tags
@@ -6738,6 +6846,46 @@ module Aws::EC2
6738
6846
  include Aws::Structure
6739
6847
  end
6740
6848
 
6849
+ # @note When making an API call, you may pass DeprovisionByoipCidrRequest
6850
+ # data as a hash:
6851
+ #
6852
+ # {
6853
+ # cidr: "String", # required
6854
+ # dry_run: false,
6855
+ # }
6856
+ #
6857
+ # @!attribute [rw] cidr
6858
+ # The public IPv4 address range, in CIDR notation. The prefix must be
6859
+ # the same prefix that you specified when you provisioned the address
6860
+ # range.
6861
+ # @return [String]
6862
+ #
6863
+ # @!attribute [rw] dry_run
6864
+ # Checks whether you have the required permissions for the action,
6865
+ # without actually making the request, and provides an error response.
6866
+ # If you have the required permissions, the error response is
6867
+ # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`.
6868
+ # @return [Boolean]
6869
+ #
6870
+ # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/DeprovisionByoipCidrRequest AWS API Documentation
6871
+ #
6872
+ class DeprovisionByoipCidrRequest < Struct.new(
6873
+ :cidr,
6874
+ :dry_run)
6875
+ include Aws::Structure
6876
+ end
6877
+
6878
+ # @!attribute [rw] byoip_cidr
6879
+ # Information about the address range.
6880
+ # @return [Types::ByoipCidr]
6881
+ #
6882
+ # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/DeprovisionByoipCidrResult AWS API Documentation
6883
+ #
6884
+ class DeprovisionByoipCidrResult < Struct.new(
6885
+ :byoip_cidr)
6886
+ include Aws::Structure
6887
+ end
6888
+
6741
6889
  # Contains the parameters for DeregisterImage.
6742
6890
  #
6743
6891
  # @note When making an API call, you may pass DeregisterImageRequest
@@ -6809,8 +6957,6 @@ module Aws::EC2
6809
6957
  include Aws::Structure
6810
6958
  end
6811
6959
 
6812
- # Contains the parameters for DescribeAddresses.
6813
- #
6814
6960
  # @note When making an API call, you may pass DescribeAddressesRequest
6815
6961
  # data as a hash:
6816
6962
  #
@@ -6889,8 +7035,6 @@ module Aws::EC2
6889
7035
  include Aws::Structure
6890
7036
  end
6891
7037
 
6892
- # Contains the output of DescribeAddresses.
6893
- #
6894
7038
  # @!attribute [rw] addresses
6895
7039
  # Information about one or more Elastic IP addresses.
6896
7040
  # @return [Array<Types::Address>]
@@ -7084,6 +7228,58 @@ module Aws::EC2
7084
7228
  include Aws::Structure
7085
7229
  end
7086
7230
 
7231
+ # @note When making an API call, you may pass DescribeByoipCidrsRequest
7232
+ # data as a hash:
7233
+ #
7234
+ # {
7235
+ # dry_run: false,
7236
+ # max_results: 1, # required
7237
+ # next_token: "NextToken",
7238
+ # }
7239
+ #
7240
+ # @!attribute [rw] dry_run
7241
+ # Checks whether you have the required permissions for the action,
7242
+ # without actually making the request, and provides an error response.
7243
+ # If you have the required permissions, the error response is
7244
+ # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`.
7245
+ # @return [Boolean]
7246
+ #
7247
+ # @!attribute [rw] max_results
7248
+ # The maximum number of results to return with a single call. To
7249
+ # retrieve the remaining results, make another call with the returned
7250
+ # `nextToken` value.
7251
+ # @return [Integer]
7252
+ #
7253
+ # @!attribute [rw] next_token
7254
+ # The token for the next page of results.
7255
+ # @return [String]
7256
+ #
7257
+ # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/DescribeByoipCidrsRequest AWS API Documentation
7258
+ #
7259
+ class DescribeByoipCidrsRequest < Struct.new(
7260
+ :dry_run,
7261
+ :max_results,
7262
+ :next_token)
7263
+ include Aws::Structure
7264
+ end
7265
+
7266
+ # @!attribute [rw] byoip_cidrs
7267
+ # Information about your address ranges.
7268
+ # @return [Array<Types::ByoipCidr>]
7269
+ #
7270
+ # @!attribute [rw] next_token
7271
+ # The token to use to retrieve the next page of results. This value is
7272
+ # `null` when there are no more results to return.
7273
+ # @return [String]
7274
+ #
7275
+ # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/DescribeByoipCidrsResult AWS API Documentation
7276
+ #
7277
+ class DescribeByoipCidrsResult < Struct.new(
7278
+ :byoip_cidrs,
7279
+ :next_token)
7280
+ include Aws::Structure
7281
+ end
7282
+
7087
7283
  # @note When making an API call, you may pass DescribeClassicLinkInstancesRequest
7088
7284
  # data as a hash:
7089
7285
  #
@@ -9703,8 +9899,6 @@ module Aws::EC2
9703
9899
  include Aws::Structure
9704
9900
  end
9705
9901
 
9706
- # Contains the parameters for DescribeMovingAddresses.
9707
- #
9708
9902
  # @note When making an API call, you may pass DescribeMovingAddressesRequest
9709
9903
  # data as a hash:
9710
9904
  #
@@ -9748,7 +9942,7 @@ module Aws::EC2
9748
9942
  # @return [Integer]
9749
9943
  #
9750
9944
  # @!attribute [rw] next_token
9751
- # The token to use to retrieve the next page of results.
9945
+ # The token for the next page of results.
9752
9946
  # @return [String]
9753
9947
  #
9754
9948
  # @!attribute [rw] public_ips
@@ -9766,8 +9960,6 @@ module Aws::EC2
9766
9960
  include Aws::Structure
9767
9961
  end
9768
9962
 
9769
- # Contains the output of DescribeMovingAddresses.
9770
- #
9771
9963
  # @!attribute [rw] moving_address_statuses
9772
9964
  # The status for each Elastic IP address.
9773
9965
  # @return [Array<Types::MovingAddressStatus>]
@@ -10508,6 +10700,55 @@ module Aws::EC2
10508
10700
  include Aws::Structure
10509
10701
  end
10510
10702
 
10703
+ # @note When making an API call, you may pass DescribePublicIpv4PoolsRequest
10704
+ # data as a hash:
10705
+ #
10706
+ # {
10707
+ # pool_ids: ["String"],
10708
+ # next_token: "NextToken",
10709
+ # max_results: 1,
10710
+ # }
10711
+ #
10712
+ # @!attribute [rw] pool_ids
10713
+ # The IDs of the address pools.
10714
+ # @return [Array<String>]
10715
+ #
10716
+ # @!attribute [rw] next_token
10717
+ # The token for the next page of results.
10718
+ # @return [String]
10719
+ #
10720
+ # @!attribute [rw] max_results
10721
+ # The maximum number of results to return with a single call. To
10722
+ # retrieve the remaining results, make another call with the returned
10723
+ # `nextToken` value.
10724
+ # @return [Integer]
10725
+ #
10726
+ # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/DescribePublicIpv4PoolsRequest AWS API Documentation
10727
+ #
10728
+ class DescribePublicIpv4PoolsRequest < Struct.new(
10729
+ :pool_ids,
10730
+ :next_token,
10731
+ :max_results)
10732
+ include Aws::Structure
10733
+ end
10734
+
10735
+ # @!attribute [rw] public_ipv_4_pools
10736
+ # Information about the address pools.
10737
+ # @return [Array<Types::PublicIpv4Pool>]
10738
+ #
10739
+ # @!attribute [rw] next_token
10740
+ # The token to use to retrieve the next page of results. This value is
10741
+ # `null` when there are no more results to return.
10742
+ # @return [String]
10743
+ #
10744
+ # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/DescribePublicIpv4PoolsResult AWS API Documentation
10745
+ #
10746
+ class DescribePublicIpv4PoolsResult < Struct.new(
10747
+ :public_ipv_4_pools,
10748
+ :next_token)
10749
+ include Aws::Structure
10750
+ end
10751
+
10511
10752
  # Contains the parameters for DescribeRegions.
10512
10753
  #
10513
10754
  # @note When making an API call, you may pass DescribeRegionsRequest
@@ -14313,8 +14554,6 @@ module Aws::EC2
14313
14554
  include Aws::Structure
14314
14555
  end
14315
14556
 
14316
- # Contains the parameters for DisassociateAddress.
14317
- #
14318
14557
  # @note When making an API call, you may pass DisassociateAddressRequest
14319
14558
  # data as a hash:
14320
14559
  #
@@ -21986,8 +22225,6 @@ module Aws::EC2
21986
22225
  include Aws::Structure
21987
22226
  end
21988
22227
 
21989
- # Contains the parameters for MoveAddressToVpc.
21990
- #
21991
22228
  # @note When making an API call, you may pass MoveAddressToVpcRequest
21992
22229
  # data as a hash:
21993
22230
  #
@@ -22015,8 +22252,6 @@ module Aws::EC2
22015
22252
  include Aws::Structure
22016
22253
  end
22017
22254
 
22018
- # Contains the output of MoveAddressToVpc.
22019
- #
22020
22255
  # @!attribute [rw] allocation_id
22021
22256
  # The allocation ID for the Elastic IP address.
22022
22257
  # @return [String]
@@ -22277,7 +22512,7 @@ module Aws::EC2
22277
22512
  # @return [Types::PortRange]
22278
22513
  #
22279
22514
  # @!attribute [rw] protocol
22280
- # The protocol. A value of `-1` means all protocols.
22515
+ # The protocol number. A value of "-1" means all protocols.
22281
22516
  # @return [String]
22282
22517
  #
22283
22518
  # @!attribute [rw] rule_action
@@ -23109,6 +23344,63 @@ module Aws::EC2
23109
23344
  include Aws::Structure
23110
23345
  end
23111
23346
 
23347
+ # @note When making an API call, you may pass ProvisionByoipCidrRequest
23348
+ # data as a hash:
23349
+ #
23350
+ # {
23351
+ # cidr: "String", # required
23352
+ # cidr_authorization_context: {
23353
+ # message: "String", # required
23354
+ # signature: "String", # required
23355
+ # },
23356
+ # description: "String",
23357
+ # dry_run: false,
23358
+ # }
23359
+ #
23360
+ # @!attribute [rw] cidr
23361
+ # The public IPv4 address range, in CIDR notation. The most specific
23362
+ # prefix that you can specify is /24. The address range cannot overlap
23363
+ # with another address range that you've brought to this or another
23364
+ # region.
23365
+ # @return [String]
23366
+ #
23367
+ # @!attribute [rw] cidr_authorization_context
23368
+ # A signed document that proves that you are authorized to bring the
23369
+ # specified IP address range to Amazon using BYOIP.
23370
+ # @return [Types::CidrAuthorizationContext]
23371
+ #
23372
+ # @!attribute [rw] description
23373
+ # A description for the address range and the address pool.
23374
+ # @return [String]
23375
+ #
23376
+ # @!attribute [rw] dry_run
23377
+ # Checks whether you have the required permissions for the action,
23378
+ # without actually making the request, and provides an error response.
23379
+ # If you have the required permissions, the error response is
23380
+ # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`.
23381
+ # @return [Boolean]
23382
+ #
23383
+ # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/ProvisionByoipCidrRequest AWS API Documentation
23384
+ #
23385
+ class ProvisionByoipCidrRequest < Struct.new(
23386
+ :cidr,
23387
+ :cidr_authorization_context,
23388
+ :description,
23389
+ :dry_run)
23390
+ include Aws::Structure
23391
+ end
23392
+
23393
+ # @!attribute [rw] byoip_cidr
23394
+ # Information about the address pool.
23395
+ # @return [Types::ByoipCidr]
23396
+ #
23397
+ # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/ProvisionByoipCidrResult AWS API Documentation
23398
+ #
23399
+ class ProvisionByoipCidrResult < Struct.new(
23400
+ :byoip_cidr)
23401
+ include Aws::Structure
23402
+ end
23403
+
23112
23404
  # Reserved. If you need to sustain traffic greater than the [documented
23113
23405
  # limits][1], contact us through the [Support Center][2].
23114
23406
  #
@@ -23178,6 +23470,67 @@ module Aws::EC2
23178
23470
  include Aws::Structure
23179
23471
  end
23180
23472
 
23473
+ # Describes an address pool.
23474
+ #
23475
+ # @!attribute [rw] pool_id
23476
+ # The ID of the IPv4 address pool.
23477
+ # @return [String]
23478
+ #
23479
+ # @!attribute [rw] description
23480
+ # A description of the address pool.
23481
+ # @return [String]
23482
+ #
23483
+ # @!attribute [rw] pool_address_ranges
23484
+ # The address ranges.
23485
+ # @return [Array<Types::PublicIpv4PoolRange>]
23486
+ #
23487
+ # @!attribute [rw] total_address_count
23488
+ # The total number of addresses.
23489
+ # @return [Integer]
23490
+ #
23491
+ # @!attribute [rw] total_available_address_count
23492
+ # The total number of available addresses.
23493
+ # @return [Integer]
23494
+ #
23495
+ # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/PublicIpv4Pool AWS API Documentation
23496
+ #
23497
+ class PublicIpv4Pool < Struct.new(
23498
+ :pool_id,
23499
+ :description,
23500
+ :pool_address_ranges,
23501
+ :total_address_count,
23502
+ :total_available_address_count)
23503
+ include Aws::Structure
23504
+ end
23505
+
23506
+ # Describes an address range of an IPv4 address pool.
23507
+ #
23508
+ # @!attribute [rw] first_address
23509
+ # The first IP address in the range.
23510
+ # @return [String]
23511
+ #
23512
+ # @!attribute [rw] last_address
23513
+ # The last IP address in the range.
23514
+ # @return [String]
23515
+ #
23516
+ # @!attribute [rw] address_count
23517
+ # The number of addresses in the range.
23518
+ # @return [Integer]
23519
+ #
23520
+ # @!attribute [rw] available_address_count
23521
+ # The number of available addresses in the range.
23522
+ # @return [Integer]
23523
+ #
23524
+ # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/PublicIpv4PoolRange AWS API Documentation
23525
+ #
23526
+ class PublicIpv4PoolRange < Struct.new(
23527
+ :first_address,
23528
+ :last_address,
23529
+ :address_count,
23530
+ :available_address_count)
23531
+ include Aws::Structure
23532
+ end
23533
+
23181
23534
  # Describes the result of the purchase.
23182
23535
  #
23183
23536
  # @!attribute [rw] currency_code
@@ -23766,8 +24119,6 @@ module Aws::EC2
23766
24119
  include Aws::Structure
23767
24120
  end
23768
24121
 
23769
- # Contains the parameters for ReleaseAddress.
23770
- #
23771
24122
  # @note When making an API call, you may pass ReleaseAddressRequest
23772
24123
  # data as a hash:
23773
24124
  #
@@ -23961,8 +24312,8 @@ module Aws::EC2
23961
24312
  #
23962
24313
  # @!attribute [rw] icmp_type_code
23963
24314
  # ICMP protocol: The ICMP or ICMPv6 type and code. Required if
23964
- # specifying the ICMP (1) protocol, or protocol 58 (ICMPv6) with an
23965
- # IPv6 CIDR block.
24315
+ # specifying protocol 1 (ICMP) or protocol 58 (ICMPv6) with an IPv6
24316
+ # CIDR block.
23966
24317
  # @return [Types::IcmpTypeCode]
23967
24318
  #
23968
24319
  # @!attribute [rw] ipv_6_cidr_block
@@ -23976,18 +24327,18 @@ module Aws::EC2
23976
24327
  #
23977
24328
  # @!attribute [rw] port_range
23978
24329
  # TCP or UDP protocols: The range of ports the rule applies to.
23979
- # Required if specifying TCP (6) or UDP (17) for the protocol.
24330
+ # Required if specifying protocol 6 (TCP) or 17 (UDP).
23980
24331
  # @return [Types::PortRange]
23981
24332
  #
23982
24333
  # @!attribute [rw] protocol
23983
- # The IP protocol. You can specify `all` or `-1` to mean all
23984
- # protocols. If you specify `all`, `-1`, or a protocol number other
23985
- # than `tcp`, `udp`, or `icmp`, traffic on all ports is allowed,
23986
- # regardless of any ports or ICMP types or codes you that specify. If
23987
- # you specify protocol `58` (ICMPv6) and specify an IPv4 CIDR block,
23988
- # traffic for all ICMP types and codes allowed, regardless of any that
23989
- # you specify. If you specify protocol `58` (ICMPv6) and specify an
23990
- # IPv6 CIDR block, you must specify an ICMP type and code.
24334
+ # The protocol number. A value of "-1" means all protocols. If you
24335
+ # specify "-1" or a protocol number other than "6" (TCP), "17"
24336
+ # (UDP), or "1" (ICMP), traffic on all ports is allowed, regardless
24337
+ # of any ports or ICMP types or codes that you specify. If you specify
24338
+ # protocol "58" (ICMPv6) and specify an IPv4 CIDR block, traffic for
24339
+ # all ICMP types and codes allowed, regardless of any that you
24340
+ # specify. If you specify protocol "58" (ICMPv6) and specify an IPv6
24341
+ # CIDR block, you must specify an ICMP type and code.
23991
24342
  # @return [String]
23992
24343
  #
23993
24344
  # @!attribute [rw] rule_action
@@ -25923,8 +26274,6 @@ module Aws::EC2
25923
26274
  include Aws::Structure
25924
26275
  end
25925
26276
 
25926
- # Contains the parameters for RestoreAddressToClassic.
25927
- #
25928
26277
  # @note When making an API call, you may pass RestoreAddressToClassicRequest
25929
26278
  # data as a hash:
25930
26279
  #
@@ -25952,8 +26301,6 @@ module Aws::EC2
25952
26301
  include Aws::Structure
25953
26302
  end
25954
26303
 
25955
- # Contains the output of RestoreAddressToClassic.
25956
- #
25957
26304
  # @!attribute [rw] public_ip
25958
26305
  # The Elastic IP address.
25959
26306
  # @return [String]
@@ -28764,7 +29111,7 @@ module Aws::EC2
28764
29111
  #
28765
29112
  # @!attribute [rw] fulfilled_capacity
28766
29113
  # The number of units fulfilled by this request compared to the set
28767
- # target capacity.
29114
+ # target capacity. You cannot set this value.
28768
29115
  # @return [Float]
28769
29116
  #
28770
29117
  # @!attribute [rw] on_demand_fulfilled_capacity
@@ -29750,7 +30097,7 @@ module Aws::EC2
29750
30097
  # @return [String]
29751
30098
  #
29752
30099
  # @!attribute [rw] resource_id
29753
- # The ID of the resource. For example, `ami-1a2b3c4d`.
30100
+ # The ID of the resource.
29754
30101
  # @return [String]
29755
30102
  #
29756
30103
  # @!attribute [rw] resource_type
@@ -31577,5 +31924,43 @@ module Aws::EC2
31577
31924
  include Aws::Structure
31578
31925
  end
31579
31926
 
31927
+ # @note When making an API call, you may pass WithdrawByoipCidrRequest
31928
+ # data as a hash:
31929
+ #
31930
+ # {
31931
+ # cidr: "String", # required
31932
+ # dry_run: false,
31933
+ # }
31934
+ #
31935
+ # @!attribute [rw] cidr
31936
+ # The public IPv4 address range, in CIDR notation.
31937
+ # @return [String]
31938
+ #
31939
+ # @!attribute [rw] dry_run
31940
+ # Checks whether you have the required permissions for the action,
31941
+ # without actually making the request, and provides an error response.
31942
+ # If you have the required permissions, the error response is
31943
+ # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`.
31944
+ # @return [Boolean]
31945
+ #
31946
+ # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/WithdrawByoipCidrRequest AWS API Documentation
31947
+ #
31948
+ class WithdrawByoipCidrRequest < Struct.new(
31949
+ :cidr,
31950
+ :dry_run)
31951
+ include Aws::Structure
31952
+ end
31953
+
31954
+ # @!attribute [rw] byoip_cidr
31955
+ # Information about the address pool.
31956
+ # @return [Types::ByoipCidr]
31957
+ #
31958
+ # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/WithdrawByoipCidrResult AWS API Documentation
31959
+ #
31960
+ class WithdrawByoipCidrResult < Struct.new(
31961
+ :byoip_cidr)
31962
+ include Aws::Structure
31963
+ end
31964
+
31580
31965
  end
31581
31966
  end