aws-sdk-ec2 1.362.0 → 1.363.0

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 48cb75880216429c79c2002d92efd523dbd1f173d887b5ed2e98d5d3d23f5543
4
- data.tar.gz: 48451658ef09b098fcc10ff057fde9808b0603b3aa63800a2913ff7988cf2363
3
+ metadata.gz: 2c6d7966f5a839dc24c4376d9c59be0b502b1b412e303211f12cb59170796ece
4
+ data.tar.gz: a759478baa4552820e95b29f3976ec901549c2aae4eb2cc4b52b5e28f1851de6
5
5
  SHA512:
6
- metadata.gz: cd6533072a7fd8c41c145de0758128568ac3ffeb2576397747865c59806c2877f0718993640369c713e4ee2d826a9f05b1f1853ae97766ddc2236efe19b6ef27
7
- data.tar.gz: 68b4369f8a42ccfe0690572c8c91c1128f483ad9404572028cb0c466c4b44065f8c4a473f73d065d4916179c0bce222a6e23cbc67bd66ecbb03ef49cb4c173da
6
+ metadata.gz: 88826f34af08185fc9cd18d7c8bea568e8730c5efdcfcc57eaca650c524cd790ca8d6a4cb283e509b3557f7731d394ea53caf522f71f2e1f541f595f03233437
7
+ data.tar.gz: 5f477ba73bbe5e19f27a6e62c872866da2c18fb09f2c0a0cdfa3357f2a8d1b84fb1111f0c63712d9976953d31c23d596772ffc0acfc853e581d9f798c3d3d1e7
data/CHANGELOG.md CHANGED
@@ -1,6 +1,11 @@
1
1
  Unreleased Changes
2
2
  ------------------
3
3
 
4
+ 1.363.0 (2023-01-31)
5
+ ------------------
6
+
7
+ * Feature - This launch allows customers to associate up to 8 IP addresses to their NAT Gateways to increase the limit on concurrent connections to a single destination by eight times from 55K to 440K.
8
+
4
9
  1.362.0 (2023-01-30)
5
10
  ------------------
6
11
 
data/VERSION CHANGED
@@ -1 +1 @@
1
- 1.362.0
1
+ 1.363.0
@@ -1454,6 +1454,68 @@ module Aws::EC2
1454
1454
  req.send_request(options)
1455
1455
  end
1456
1456
 
1457
+ # Assigns one or more private IPv4 addresses to a private NAT gateway.
1458
+ # For more information, see [Work with NAT gateways][1] in the *Amazon
1459
+ # Virtual Private Cloud User Guide*.
1460
+ #
1461
+ #
1462
+ #
1463
+ # [1]: https://docs.aws.amazon.com/vpc/latest/userguide/vpc-nat-gateway.html#nat-gateway-working-with
1464
+ #
1465
+ # @option params [required, String] :nat_gateway_id
1466
+ # The NAT gateway ID.
1467
+ #
1468
+ # @option params [Array<String>] :private_ip_addresses
1469
+ # The private IPv4 addresses you want to assign to the private NAT
1470
+ # gateway.
1471
+ #
1472
+ # @option params [Integer] :private_ip_address_count
1473
+ # The number of private IP addresses to assign to the NAT gateway. You
1474
+ # can't specify this parameter when also specifying private IP
1475
+ # addresses.
1476
+ #
1477
+ # @option params [Boolean] :dry_run
1478
+ # Checks whether you have the required permissions for the action,
1479
+ # without actually making the request, and provides an error response.
1480
+ # If you have the required permissions, the error response is
1481
+ # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`.
1482
+ #
1483
+ # @return [Types::AssignPrivateNatGatewayAddressResult] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
1484
+ #
1485
+ # * {Types::AssignPrivateNatGatewayAddressResult#nat_gateway_id #nat_gateway_id} => String
1486
+ # * {Types::AssignPrivateNatGatewayAddressResult#nat_gateway_addresses #nat_gateway_addresses} => Array&lt;Types::NatGatewayAddress&gt;
1487
+ #
1488
+ # @example Request syntax with placeholder values
1489
+ #
1490
+ # resp = client.assign_private_nat_gateway_address({
1491
+ # nat_gateway_id: "NatGatewayId", # required
1492
+ # private_ip_addresses: ["String"],
1493
+ # private_ip_address_count: 1,
1494
+ # dry_run: false,
1495
+ # })
1496
+ #
1497
+ # @example Response structure
1498
+ #
1499
+ # resp.nat_gateway_id #=> String
1500
+ # resp.nat_gateway_addresses #=> Array
1501
+ # resp.nat_gateway_addresses[0].allocation_id #=> String
1502
+ # resp.nat_gateway_addresses[0].network_interface_id #=> String
1503
+ # resp.nat_gateway_addresses[0].private_ip #=> String
1504
+ # resp.nat_gateway_addresses[0].public_ip #=> String
1505
+ # resp.nat_gateway_addresses[0].association_id #=> String
1506
+ # resp.nat_gateway_addresses[0].is_primary #=> Boolean
1507
+ # resp.nat_gateway_addresses[0].failure_message #=> String
1508
+ # resp.nat_gateway_addresses[0].status #=> String, one of "assigning", "unassigning", "associating", "disassociating", "succeeded", "failed"
1509
+ #
1510
+ # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/AssignPrivateNatGatewayAddress AWS API Documentation
1511
+ #
1512
+ # @overload assign_private_nat_gateway_address(params = {})
1513
+ # @param [Hash] params ({})
1514
+ def assign_private_nat_gateway_address(params = {}, options = {})
1515
+ req = build_request(:assign_private_nat_gateway_address, params)
1516
+ req.send_request(options)
1517
+ end
1518
+
1457
1519
  # Associates an Elastic IP address, or carrier IP address (for instances
1458
1520
  # that are in subnets in Wavelength Zones) with an instance or a network
1459
1521
  # interface. Before you can use an Elastic IP address, you must allocate
@@ -2029,6 +2091,72 @@ module Aws::EC2
2029
2091
  req.send_request(options)
2030
2092
  end
2031
2093
 
2094
+ # Associates Elastic IP addresses (EIPs) and private IPv4 addresses with
2095
+ # a public NAT gateway. For more information, see [Work with NAT
2096
+ # gateways][1] in the *Amazon Virtual Private Cloud User Guide*.
2097
+ #
2098
+ # By default, you can associate up to 2 Elastic IP addresses per public
2099
+ # NAT gateway. You can increase the limit by requesting a quota
2100
+ # adjustment. For more information, see [Elastic IP address quotas][2]
2101
+ # in the *Amazon Virtual Private Cloud User Guide*.
2102
+ #
2103
+ #
2104
+ #
2105
+ # [1]: https://docs.aws.amazon.com/vpc/latest/userguide/vpc-nat-gateway.html#nat-gateway-working-with
2106
+ # [2]: https://docs.aws.amazon.com/vpc/latest/userguide/amazon-vpc-limits.html#vpc-limits-eips
2107
+ #
2108
+ # @option params [required, String] :nat_gateway_id
2109
+ # The NAT gateway ID.
2110
+ #
2111
+ # @option params [required, Array<String>] :allocation_ids
2112
+ # The allocation IDs of EIPs that you want to associate with your NAT
2113
+ # gateway.
2114
+ #
2115
+ # @option params [Array<String>] :private_ip_addresses
2116
+ # The private IPv4 addresses that you want to assign to the NAT gateway.
2117
+ #
2118
+ # @option params [Boolean] :dry_run
2119
+ # Checks whether you have the required permissions for the action,
2120
+ # without actually making the request, and provides an error response.
2121
+ # If you have the required permissions, the error response is
2122
+ # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`.
2123
+ #
2124
+ # @return [Types::AssociateNatGatewayAddressResult] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
2125
+ #
2126
+ # * {Types::AssociateNatGatewayAddressResult#nat_gateway_id #nat_gateway_id} => String
2127
+ # * {Types::AssociateNatGatewayAddressResult#nat_gateway_addresses #nat_gateway_addresses} => Array&lt;Types::NatGatewayAddress&gt;
2128
+ #
2129
+ # @example Request syntax with placeholder values
2130
+ #
2131
+ # resp = client.associate_nat_gateway_address({
2132
+ # nat_gateway_id: "NatGatewayId", # required
2133
+ # allocation_ids: ["AllocationId"], # required
2134
+ # private_ip_addresses: ["String"],
2135
+ # dry_run: false,
2136
+ # })
2137
+ #
2138
+ # @example Response structure
2139
+ #
2140
+ # resp.nat_gateway_id #=> String
2141
+ # resp.nat_gateway_addresses #=> Array
2142
+ # resp.nat_gateway_addresses[0].allocation_id #=> String
2143
+ # resp.nat_gateway_addresses[0].network_interface_id #=> String
2144
+ # resp.nat_gateway_addresses[0].private_ip #=> String
2145
+ # resp.nat_gateway_addresses[0].public_ip #=> String
2146
+ # resp.nat_gateway_addresses[0].association_id #=> String
2147
+ # resp.nat_gateway_addresses[0].is_primary #=> Boolean
2148
+ # resp.nat_gateway_addresses[0].failure_message #=> String
2149
+ # resp.nat_gateway_addresses[0].status #=> String, one of "assigning", "unassigning", "associating", "disassociating", "succeeded", "failed"
2150
+ #
2151
+ # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/AssociateNatGatewayAddress AWS API Documentation
2152
+ #
2153
+ # @overload associate_nat_gateway_address(params = {})
2154
+ # @param [Hash] params ({})
2155
+ def associate_nat_gateway_address(params = {}, options = {})
2156
+ req = build_request(:associate_nat_gateway_address, params)
2157
+ req.send_request(options)
2158
+ end
2159
+
2032
2160
  # Associates a subnet in your VPC or an internet gateway or virtual
2033
2161
  # private gateway attached to your VPC with a route table in your VPC.
2034
2162
  # This association causes traffic from the subnet or gateway to be
@@ -4595,7 +4723,7 @@ module Aws::EC2
4595
4723
  # destination_region: "String",
4596
4724
  # encrypted: false,
4597
4725
  # kms_key_id: "KmsKeyId",
4598
- # presigned_url: "String",
4726
+ # presigned_url: "CopySnapshotRequestPSU",
4599
4727
  # source_region: "String", # required
4600
4728
  # source_snapshot_id: "String", # required
4601
4729
  # tag_specifications: [
@@ -9019,7 +9147,7 @@ module Aws::EC2
9019
9147
  # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`.
9020
9148
  #
9021
9149
  # @option params [required, String] :subnet_id
9022
- # The subnet in which to create the NAT gateway.
9150
+ # The ID of the subnet in which to create the NAT gateway.
9023
9151
  #
9024
9152
  # @option params [Array<Types::TagSpecification>] :tag_specifications
9025
9153
  # The tags to assign to the NAT gateway.
@@ -9033,6 +9161,34 @@ module Aws::EC2
9033
9161
  # provide an address, a private IPv4 address will be automatically
9034
9162
  # assigned.
9035
9163
  #
9164
+ # @option params [Array<String>] :secondary_allocation_ids
9165
+ # Secondary EIP allocation IDs. For more information about secondary
9166
+ # addresses, see [Create a NAT gateway][1] in the *Amazon Virtual
9167
+ # Private Cloud User Guide*.
9168
+ #
9169
+ #
9170
+ #
9171
+ # [1]: https://docs.aws.amazon.com/vpc/latest/userguide/vpc-nat-gateway.html#nat-gateway-creating
9172
+ #
9173
+ # @option params [Array<String>] :secondary_private_ip_addresses
9174
+ # Secondary private IPv4 addresses. For more information about secondary
9175
+ # addresses, see [Create a NAT gateway][1] in the *Amazon Virtual
9176
+ # Private Cloud User Guide*.
9177
+ #
9178
+ #
9179
+ #
9180
+ # [1]: https://docs.aws.amazon.com/vpc/latest/userguide/vpc-nat-gateway.html#nat-gateway-creating
9181
+ #
9182
+ # @option params [Integer] :secondary_private_ip_address_count
9183
+ # \[Private NAT gateway only\] The number of secondary private IPv4
9184
+ # addresses you want to assign to the NAT gateway. For more information
9185
+ # about secondary addresses, see [Create a NAT gateway][1] in the
9186
+ # *Amazon Virtual Private Cloud User Guide*.
9187
+ #
9188
+ #
9189
+ #
9190
+ # [1]: https://docs.aws.amazon.com/vpc/latest/userguide/vpc-nat-gateway.html#nat-gateway-creating
9191
+ #
9036
9192
  # @return [Types::CreateNatGatewayResult] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
9037
9193
  #
9038
9194
  # * {Types::CreateNatGatewayResult#client_token #client_token} => String
@@ -9085,6 +9241,9 @@ module Aws::EC2
9085
9241
  # ],
9086
9242
  # connectivity_type: "private", # accepts private, public
9087
9243
  # private_ip_address: "String",
9244
+ # secondary_allocation_ids: ["AllocationId"],
9245
+ # secondary_private_ip_addresses: ["String"],
9246
+ # secondary_private_ip_address_count: 1,
9088
9247
  # })
9089
9248
  #
9090
9249
  # @example Response structure
@@ -9099,6 +9258,10 @@ module Aws::EC2
9099
9258
  # resp.nat_gateway.nat_gateway_addresses[0].network_interface_id #=> String
9100
9259
  # resp.nat_gateway.nat_gateway_addresses[0].private_ip #=> String
9101
9260
  # resp.nat_gateway.nat_gateway_addresses[0].public_ip #=> String
9261
+ # resp.nat_gateway.nat_gateway_addresses[0].association_id #=> String
9262
+ # resp.nat_gateway.nat_gateway_addresses[0].is_primary #=> Boolean
9263
+ # resp.nat_gateway.nat_gateway_addresses[0].failure_message #=> String
9264
+ # resp.nat_gateway.nat_gateway_addresses[0].status #=> String, one of "assigning", "unassigning", "associating", "disassociating", "succeeded", "failed"
9102
9265
  # resp.nat_gateway.nat_gateway_id #=> String
9103
9266
  # resp.nat_gateway.provisioned_bandwidth.provision_time #=> Time
9104
9267
  # resp.nat_gateway.provisioned_bandwidth.provisioned #=> String
@@ -26542,6 +26705,10 @@ module Aws::EC2
26542
26705
  # resp.nat_gateways[0].nat_gateway_addresses[0].network_interface_id #=> String
26543
26706
  # resp.nat_gateways[0].nat_gateway_addresses[0].private_ip #=> String
26544
26707
  # resp.nat_gateways[0].nat_gateway_addresses[0].public_ip #=> String
26708
+ # resp.nat_gateways[0].nat_gateway_addresses[0].association_id #=> String
26709
+ # resp.nat_gateways[0].nat_gateway_addresses[0].is_primary #=> Boolean
26710
+ # resp.nat_gateways[0].nat_gateway_addresses[0].failure_message #=> String
26711
+ # resp.nat_gateways[0].nat_gateway_addresses[0].status #=> String, one of "assigning", "unassigning", "associating", "disassociating", "succeeded", "failed"
26545
26712
  # resp.nat_gateways[0].nat_gateway_id #=> String
26546
26713
  # resp.nat_gateways[0].provisioned_bandwidth.provision_time #=> Time
26547
26714
  # resp.nat_gateways[0].provisioned_bandwidth.provisioned #=> String
@@ -37153,6 +37320,80 @@ module Aws::EC2
37153
37320
  req.send_request(options)
37154
37321
  end
37155
37322
 
37323
+ # Disassociates secondary Elastic IP addresses (EIPs) from a public NAT
37324
+ # gateway. You cannot disassociate your primary EIP. For more
37325
+ # information, see [Edit secondary IP address associations][1] in the
37326
+ # *Amazon Virtual Private Cloud User Guide*.
37327
+ #
37328
+ # While disassociating is in progress, you cannot associate/disassociate
37329
+ # additional EIPs while the connections are being drained. You are,
37330
+ # however, allowed to delete the NAT gateway.
37331
+ #
37332
+ # An EIP will only be released at the end of MaxDrainDurationSeconds.
37333
+ # The EIPs stay associated and support the existing connections but do
37334
+ # not support any new connections (new connections are distributed
37335
+ # across the remaining associated EIPs). As the existing connections
37336
+ # drain out, the EIPs (and the corresponding private IPs mapped to them)
37337
+ # get released.
37338
+ #
37339
+ #
37340
+ #
37341
+ # [1]: https://docs.aws.amazon.com/vpc/latest/userguide/vpc-nat-gateway.html#nat-gateway-edit-secondary
37342
+ #
37343
+ # @option params [required, String] :nat_gateway_id
37344
+ # The NAT gateway ID.
37345
+ #
37346
+ # @option params [required, Array<String>] :association_ids
37347
+ # The association IDs of EIPs that have been associated with the NAT
37348
+ # gateway.
37349
+ #
37350
+ # @option params [Integer] :max_drain_duration_seconds
37351
+ # The maximum amount of time to wait (in seconds) before forcibly
37352
+ # releasing the IP addresses if connections are still in progress.
37353
+ # Default value is 350 seconds.
37354
+ #
37355
+ # @option params [Boolean] :dry_run
37356
+ # Checks whether you have the required permissions for the action,
37357
+ # without actually making the request, and provides an error response.
37358
+ # If you have the required permissions, the error response is
37359
+ # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`.
37360
+ #
37361
+ # @return [Types::DisassociateNatGatewayAddressResult] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
37362
+ #
37363
+ # * {Types::DisassociateNatGatewayAddressResult#nat_gateway_id #nat_gateway_id} => String
37364
+ # * {Types::DisassociateNatGatewayAddressResult#nat_gateway_addresses #nat_gateway_addresses} => Array&lt;Types::NatGatewayAddress&gt;
37365
+ #
37366
+ # @example Request syntax with placeholder values
37367
+ #
37368
+ # resp = client.disassociate_nat_gateway_address({
37369
+ # nat_gateway_id: "NatGatewayId", # required
37370
+ # association_ids: ["ElasticIpAssociationId"], # required
37371
+ # max_drain_duration_seconds: 1,
37372
+ # dry_run: false,
37373
+ # })
37374
+ #
37375
+ # @example Response structure
37376
+ #
37377
+ # resp.nat_gateway_id #=> String
37378
+ # resp.nat_gateway_addresses #=> Array
37379
+ # resp.nat_gateway_addresses[0].allocation_id #=> String
37380
+ # resp.nat_gateway_addresses[0].network_interface_id #=> String
37381
+ # resp.nat_gateway_addresses[0].private_ip #=> String
37382
+ # resp.nat_gateway_addresses[0].public_ip #=> String
37383
+ # resp.nat_gateway_addresses[0].association_id #=> String
37384
+ # resp.nat_gateway_addresses[0].is_primary #=> Boolean
37385
+ # resp.nat_gateway_addresses[0].failure_message #=> String
37386
+ # resp.nat_gateway_addresses[0].status #=> String, one of "assigning", "unassigning", "associating", "disassociating", "succeeded", "failed"
37387
+ #
37388
+ # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/DisassociateNatGatewayAddress AWS API Documentation
37389
+ #
37390
+ # @overload disassociate_nat_gateway_address(params = {})
37391
+ # @param [Hash] params ({})
37392
+ def disassociate_nat_gateway_address(params = {}, options = {})
37393
+ req = build_request(:disassociate_nat_gateway_address, params)
37394
+ req.send_request(options)
37395
+ end
37396
+
37156
37397
  # Disassociates a subnet or gateway from a route table.
37157
37398
  #
37158
37399
  # After you perform this action, the subnet no longer uses the routes in
@@ -55164,6 +55405,83 @@ module Aws::EC2
55164
55405
  req.send_request(options)
55165
55406
  end
55166
55407
 
55408
+ # Unassigns secondary private NAT gateway IPv4 addresses from a private
55409
+ # NAT gateway. You cannot unassign your primary private IP. For more
55410
+ # information, see [Edit secondary IP address associations][1] in the
55411
+ # *Amazon Virtual Private Cloud User Guide*.
55412
+ #
55413
+ # While unassigning is in progress, you cannot assign/unassign
55414
+ # additional IP addresses while the connections are being drained. You
55415
+ # are, however, allowed to delete the NAT gateway.
55416
+ #
55417
+ # A private IP address will only be released at the end of
55418
+ # MaxDrainDurationSeconds. The private IP addresses stay associated and
55419
+ # support the existing connections but do not support any new
55420
+ # connections (new connections are distributed across the remaining
55421
+ # assigned private IP address). After the existing connections drain
55422
+ # out, the private IP addresses get released.
55423
+ #
55424
+ #
55425
+ #
55426
+ #
55427
+ #
55428
+ #
55429
+ #
55430
+ # [1]: https://docs.aws.amazon.com/vpc/latest/userguide/vpc-nat-gateway.html#nat-gateway-edit-secondary
55431
+ #
55432
+ # @option params [required, String] :nat_gateway_id
55433
+ # The NAT gateway ID.
55434
+ #
55435
+ # @option params [required, Array<String>] :private_ip_addresses
55436
+ # The private IPv4 addresses you want to unassign.
55437
+ #
55438
+ # @option params [Integer] :max_drain_duration_seconds
55439
+ # The maximum amount of time to wait (in seconds) before forcibly
55440
+ # releasing the IP addresses if connections are still in progress.
55441
+ # Default value is 350 seconds.
55442
+ #
55443
+ # @option params [Boolean] :dry_run
55444
+ # Checks whether you have the required permissions for the action,
55445
+ # without actually making the request, and provides an error response.
55446
+ # If you have the required permissions, the error response is
55447
+ # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`.
55448
+ #
55449
+ # @return [Types::UnassignPrivateNatGatewayAddressResult] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
55450
+ #
55451
+ # * {Types::UnassignPrivateNatGatewayAddressResult#nat_gateway_id #nat_gateway_id} => String
55452
+ # * {Types::UnassignPrivateNatGatewayAddressResult#nat_gateway_addresses #nat_gateway_addresses} => Array&lt;Types::NatGatewayAddress&gt;
55453
+ #
55454
+ # @example Request syntax with placeholder values
55455
+ #
55456
+ # resp = client.unassign_private_nat_gateway_address({
55457
+ # nat_gateway_id: "NatGatewayId", # required
55458
+ # private_ip_addresses: ["String"], # required
55459
+ # max_drain_duration_seconds: 1,
55460
+ # dry_run: false,
55461
+ # })
55462
+ #
55463
+ # @example Response structure
55464
+ #
55465
+ # resp.nat_gateway_id #=> String
55466
+ # resp.nat_gateway_addresses #=> Array
55467
+ # resp.nat_gateway_addresses[0].allocation_id #=> String
55468
+ # resp.nat_gateway_addresses[0].network_interface_id #=> String
55469
+ # resp.nat_gateway_addresses[0].private_ip #=> String
55470
+ # resp.nat_gateway_addresses[0].public_ip #=> String
55471
+ # resp.nat_gateway_addresses[0].association_id #=> String
55472
+ # resp.nat_gateway_addresses[0].is_primary #=> Boolean
55473
+ # resp.nat_gateway_addresses[0].failure_message #=> String
55474
+ # resp.nat_gateway_addresses[0].status #=> String, one of "assigning", "unassigning", "associating", "disassociating", "succeeded", "failed"
55475
+ #
55476
+ # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/UnassignPrivateNatGatewayAddress AWS API Documentation
55477
+ #
55478
+ # @overload unassign_private_nat_gateway_address(params = {})
55479
+ # @param [Hash] params ({})
55480
+ def unassign_private_nat_gateway_address(params = {}, options = {})
55481
+ req = build_request(:unassign_private_nat_gateway_address, params)
55482
+ req.send_request(options)
55483
+ end
55484
+
55167
55485
  # Disables detailed monitoring for a running instance. For more
55168
55486
  # information, see [Monitoring your instances and volumes][1] in the
55169
55487
  # *Amazon EC2 User Guide*.
@@ -55513,7 +55831,7 @@ module Aws::EC2
55513
55831
  params: params,
55514
55832
  config: config)
55515
55833
  context[:gem_name] = 'aws-sdk-ec2'
55516
- context[:gem_version] = '1.362.0'
55834
+ context[:gem_version] = '1.363.0'
55517
55835
  Seahorse::Client::Request.new(handlers, context)
55518
55836
  end
55519
55837
 
@@ -113,6 +113,8 @@ module Aws::EC2
113
113
  AssignIpv6AddressesResult = Shapes::StructureShape.new(name: 'AssignIpv6AddressesResult')
114
114
  AssignPrivateIpAddressesRequest = Shapes::StructureShape.new(name: 'AssignPrivateIpAddressesRequest')
115
115
  AssignPrivateIpAddressesResult = Shapes::StructureShape.new(name: 'AssignPrivateIpAddressesResult')
116
+ AssignPrivateNatGatewayAddressRequest = Shapes::StructureShape.new(name: 'AssignPrivateNatGatewayAddressRequest')
117
+ AssignPrivateNatGatewayAddressResult = Shapes::StructureShape.new(name: 'AssignPrivateNatGatewayAddressResult')
116
118
  AssignedPrivateIpAddress = Shapes::StructureShape.new(name: 'AssignedPrivateIpAddress')
117
119
  AssignedPrivateIpAddressList = Shapes::ListShape.new(name: 'AssignedPrivateIpAddressList')
118
120
  AssociateAddressRequest = Shapes::StructureShape.new(name: 'AssociateAddressRequest')
@@ -128,6 +130,8 @@ module Aws::EC2
128
130
  AssociateInstanceEventWindowResult = Shapes::StructureShape.new(name: 'AssociateInstanceEventWindowResult')
129
131
  AssociateIpamResourceDiscoveryRequest = Shapes::StructureShape.new(name: 'AssociateIpamResourceDiscoveryRequest')
130
132
  AssociateIpamResourceDiscoveryResult = Shapes::StructureShape.new(name: 'AssociateIpamResourceDiscoveryResult')
133
+ AssociateNatGatewayAddressRequest = Shapes::StructureShape.new(name: 'AssociateNatGatewayAddressRequest')
134
+ AssociateNatGatewayAddressResult = Shapes::StructureShape.new(name: 'AssociateNatGatewayAddressResult')
131
135
  AssociateRouteTableRequest = Shapes::StructureShape.new(name: 'AssociateRouteTableRequest')
132
136
  AssociateRouteTableResult = Shapes::StructureShape.new(name: 'AssociateRouteTableResult')
133
137
  AssociateSubnetCidrBlockRequest = Shapes::StructureShape.new(name: 'AssociateSubnetCidrBlockRequest')
@@ -361,6 +365,7 @@ module Aws::EC2
361
365
  CopyImageRequest = Shapes::StructureShape.new(name: 'CopyImageRequest')
362
366
  CopyImageResult = Shapes::StructureShape.new(name: 'CopyImageResult')
363
367
  CopySnapshotRequest = Shapes::StructureShape.new(name: 'CopySnapshotRequest')
368
+ CopySnapshotRequestPSU = Shapes::StringShape.new(name: 'CopySnapshotRequestPSU')
364
369
  CopySnapshotResult = Shapes::StructureShape.new(name: 'CopySnapshotResult')
365
370
  CopyTagsFromSource = Shapes::StringShape.new(name: 'CopyTagsFromSource')
366
371
  CoreCount = Shapes::IntegerShape.new(name: 'CoreCount')
@@ -1129,6 +1134,8 @@ module Aws::EC2
1129
1134
  DisassociateInstanceEventWindowResult = Shapes::StructureShape.new(name: 'DisassociateInstanceEventWindowResult')
1130
1135
  DisassociateIpamResourceDiscoveryRequest = Shapes::StructureShape.new(name: 'DisassociateIpamResourceDiscoveryRequest')
1131
1136
  DisassociateIpamResourceDiscoveryResult = Shapes::StructureShape.new(name: 'DisassociateIpamResourceDiscoveryResult')
1137
+ DisassociateNatGatewayAddressRequest = Shapes::StructureShape.new(name: 'DisassociateNatGatewayAddressRequest')
1138
+ DisassociateNatGatewayAddressResult = Shapes::StructureShape.new(name: 'DisassociateNatGatewayAddressResult')
1132
1139
  DisassociateRouteTableRequest = Shapes::StructureShape.new(name: 'DisassociateRouteTableRequest')
1133
1140
  DisassociateSubnetCidrBlockRequest = Shapes::StructureShape.new(name: 'DisassociateSubnetCidrBlockRequest')
1134
1141
  DisassociateSubnetCidrBlockResult = Shapes::StructureShape.new(name: 'DisassociateSubnetCidrBlockResult')
@@ -1164,6 +1171,7 @@ module Aws::EC2
1164
1171
  DomainType = Shapes::StringShape.new(name: 'DomainType')
1165
1172
  Double = Shapes::FloatShape.new(name: 'Double')
1166
1173
  DoubleWithConstraints = Shapes::FloatShape.new(name: 'DoubleWithConstraints')
1174
+ DrainSeconds = Shapes::IntegerShape.new(name: 'DrainSeconds')
1167
1175
  DynamicRoutingValue = Shapes::StringShape.new(name: 'DynamicRoutingValue')
1168
1176
  EbsBlockDevice = Shapes::StructureShape.new(name: 'EbsBlockDevice')
1169
1177
  EbsEncryptionSupport = Shapes::StringShape.new(name: 'EbsEncryptionSupport')
@@ -1179,6 +1187,7 @@ module Aws::EC2
1179
1187
  EgressOnlyInternetGatewayId = Shapes::StringShape.new(name: 'EgressOnlyInternetGatewayId')
1180
1188
  EgressOnlyInternetGatewayIdList = Shapes::ListShape.new(name: 'EgressOnlyInternetGatewayIdList')
1181
1189
  EgressOnlyInternetGatewayList = Shapes::ListShape.new(name: 'EgressOnlyInternetGatewayList')
1190
+ EipAssociationIdList = Shapes::ListShape.new(name: 'EipAssociationIdList')
1182
1191
  ElasticGpuAssociation = Shapes::StructureShape.new(name: 'ElasticGpuAssociation')
1183
1192
  ElasticGpuAssociationList = Shapes::ListShape.new(name: 'ElasticGpuAssociationList')
1184
1193
  ElasticGpuHealth = Shapes::StructureShape.new(name: 'ElasticGpuHealth')
@@ -1662,6 +1671,7 @@ module Aws::EC2
1662
1671
  IpAddress = Shapes::StringShape.new(name: 'IpAddress')
1663
1672
  IpAddressList = Shapes::ListShape.new(name: 'IpAddressList')
1664
1673
  IpAddressType = Shapes::StringShape.new(name: 'IpAddressType')
1674
+ IpList = Shapes::ListShape.new(name: 'IpList')
1665
1675
  IpPermission = Shapes::StructureShape.new(name: 'IpPermission')
1666
1676
  IpPermissionList = Shapes::ListShape.new(name: 'IpPermissionList')
1667
1677
  IpPrefixList = Shapes::ListShape.new(name: 'IpPrefixList')
@@ -2062,6 +2072,7 @@ module Aws::EC2
2062
2072
  NatGateway = Shapes::StructureShape.new(name: 'NatGateway')
2063
2073
  NatGatewayAddress = Shapes::StructureShape.new(name: 'NatGatewayAddress')
2064
2074
  NatGatewayAddressList = Shapes::ListShape.new(name: 'NatGatewayAddressList')
2075
+ NatGatewayAddressStatus = Shapes::StringShape.new(name: 'NatGatewayAddressStatus')
2065
2076
  NatGatewayId = Shapes::StringShape.new(name: 'NatGatewayId')
2066
2077
  NatGatewayIdStringList = Shapes::ListShape.new(name: 'NatGatewayIdStringList')
2067
2078
  NatGatewayList = Shapes::ListShape.new(name: 'NatGatewayList')
@@ -2233,6 +2244,7 @@ module Aws::EC2
2233
2244
  PrivateDnsNameOptionsRequest = Shapes::StructureShape.new(name: 'PrivateDnsNameOptionsRequest')
2234
2245
  PrivateDnsNameOptionsResponse = Shapes::StructureShape.new(name: 'PrivateDnsNameOptionsResponse')
2235
2246
  PrivateIpAddressConfigSet = Shapes::ListShape.new(name: 'PrivateIpAddressConfigSet')
2247
+ PrivateIpAddressCount = Shapes::IntegerShape.new(name: 'PrivateIpAddressCount')
2236
2248
  PrivateIpAddressSpecification = Shapes::StructureShape.new(name: 'PrivateIpAddressSpecification')
2237
2249
  PrivateIpAddressSpecificationList = Shapes::ListShape.new(name: 'PrivateIpAddressSpecificationList')
2238
2250
  PrivateIpAddressStringList = Shapes::ListShape.new(name: 'PrivateIpAddressStringList')
@@ -2782,6 +2794,8 @@ module Aws::EC2
2782
2794
  UnassignIpv6AddressesRequest = Shapes::StructureShape.new(name: 'UnassignIpv6AddressesRequest')
2783
2795
  UnassignIpv6AddressesResult = Shapes::StructureShape.new(name: 'UnassignIpv6AddressesResult')
2784
2796
  UnassignPrivateIpAddressesRequest = Shapes::StructureShape.new(name: 'UnassignPrivateIpAddressesRequest')
2797
+ UnassignPrivateNatGatewayAddressRequest = Shapes::StructureShape.new(name: 'UnassignPrivateNatGatewayAddressRequest')
2798
+ UnassignPrivateNatGatewayAddressResult = Shapes::StructureShape.new(name: 'UnassignPrivateNatGatewayAddressResult')
2785
2799
  UnlimitedSupportedInstanceFamily = Shapes::StringShape.new(name: 'UnlimitedSupportedInstanceFamily')
2786
2800
  UnmonitorInstancesRequest = Shapes::StructureShape.new(name: 'UnmonitorInstancesRequest')
2787
2801
  UnmonitorInstancesResult = Shapes::StructureShape.new(name: 'UnmonitorInstancesResult')
@@ -3311,6 +3325,16 @@ module Aws::EC2
3311
3325
  AssignPrivateIpAddressesResult.add_member(:assigned_ipv_4_prefixes, Shapes::ShapeRef.new(shape: Ipv4PrefixesList, location_name: "assignedIpv4PrefixSet"))
3312
3326
  AssignPrivateIpAddressesResult.struct_class = Types::AssignPrivateIpAddressesResult
3313
3327
 
3328
+ AssignPrivateNatGatewayAddressRequest.add_member(:nat_gateway_id, Shapes::ShapeRef.new(shape: NatGatewayId, required: true, location_name: "NatGatewayId"))
3329
+ AssignPrivateNatGatewayAddressRequest.add_member(:private_ip_addresses, Shapes::ShapeRef.new(shape: IpList, location_name: "PrivateIpAddress"))
3330
+ AssignPrivateNatGatewayAddressRequest.add_member(:private_ip_address_count, Shapes::ShapeRef.new(shape: PrivateIpAddressCount, location_name: "PrivateIpAddressCount"))
3331
+ AssignPrivateNatGatewayAddressRequest.add_member(:dry_run, Shapes::ShapeRef.new(shape: Boolean, location_name: "DryRun"))
3332
+ AssignPrivateNatGatewayAddressRequest.struct_class = Types::AssignPrivateNatGatewayAddressRequest
3333
+
3334
+ AssignPrivateNatGatewayAddressResult.add_member(:nat_gateway_id, Shapes::ShapeRef.new(shape: NatGatewayId, location_name: "natGatewayId"))
3335
+ AssignPrivateNatGatewayAddressResult.add_member(:nat_gateway_addresses, Shapes::ShapeRef.new(shape: NatGatewayAddressList, location_name: "natGatewayAddressSet"))
3336
+ AssignPrivateNatGatewayAddressResult.struct_class = Types::AssignPrivateNatGatewayAddressResult
3337
+
3314
3338
  AssignedPrivateIpAddress.add_member(:private_ip_address, Shapes::ShapeRef.new(shape: String, location_name: "privateIpAddress"))
3315
3339
  AssignedPrivateIpAddress.struct_class = Types::AssignedPrivateIpAddress
3316
3340
 
@@ -3378,6 +3402,16 @@ module Aws::EC2
3378
3402
  AssociateIpamResourceDiscoveryResult.add_member(:ipam_resource_discovery_association, Shapes::ShapeRef.new(shape: IpamResourceDiscoveryAssociation, location_name: "ipamResourceDiscoveryAssociation"))
3379
3403
  AssociateIpamResourceDiscoveryResult.struct_class = Types::AssociateIpamResourceDiscoveryResult
3380
3404
 
3405
+ AssociateNatGatewayAddressRequest.add_member(:nat_gateway_id, Shapes::ShapeRef.new(shape: NatGatewayId, required: true, location_name: "NatGatewayId"))
3406
+ AssociateNatGatewayAddressRequest.add_member(:allocation_ids, Shapes::ShapeRef.new(shape: AllocationIdList, required: true, location_name: "AllocationId"))
3407
+ AssociateNatGatewayAddressRequest.add_member(:private_ip_addresses, Shapes::ShapeRef.new(shape: IpList, location_name: "PrivateIpAddress"))
3408
+ AssociateNatGatewayAddressRequest.add_member(:dry_run, Shapes::ShapeRef.new(shape: Boolean, location_name: "DryRun"))
3409
+ AssociateNatGatewayAddressRequest.struct_class = Types::AssociateNatGatewayAddressRequest
3410
+
3411
+ AssociateNatGatewayAddressResult.add_member(:nat_gateway_id, Shapes::ShapeRef.new(shape: NatGatewayId, location_name: "natGatewayId"))
3412
+ AssociateNatGatewayAddressResult.add_member(:nat_gateway_addresses, Shapes::ShapeRef.new(shape: NatGatewayAddressList, location_name: "natGatewayAddressSet"))
3413
+ AssociateNatGatewayAddressResult.struct_class = Types::AssociateNatGatewayAddressResult
3414
+
3381
3415
  AssociateRouteTableRequest.add_member(:dry_run, Shapes::ShapeRef.new(shape: Boolean, location_name: "dryRun"))
3382
3416
  AssociateRouteTableRequest.add_member(:route_table_id, Shapes::ShapeRef.new(shape: RouteTableId, required: true, location_name: "routeTableId"))
3383
3417
  AssociateRouteTableRequest.add_member(:subnet_id, Shapes::ShapeRef.new(shape: SubnetId, location_name: "subnetId"))
@@ -4144,7 +4178,7 @@ module Aws::EC2
4144
4178
  CopySnapshotRequest.add_member(:destination_region, Shapes::ShapeRef.new(shape: String, location_name: "destinationRegion"))
4145
4179
  CopySnapshotRequest.add_member(:encrypted, Shapes::ShapeRef.new(shape: Boolean, location_name: "encrypted"))
4146
4180
  CopySnapshotRequest.add_member(:kms_key_id, Shapes::ShapeRef.new(shape: KmsKeyId, location_name: "kmsKeyId"))
4147
- CopySnapshotRequest.add_member(:presigned_url, Shapes::ShapeRef.new(shape: String, location_name: "presignedUrl"))
4181
+ CopySnapshotRequest.add_member(:presigned_url, Shapes::ShapeRef.new(shape: CopySnapshotRequestPSU, location_name: "presignedUrl"))
4148
4182
  CopySnapshotRequest.add_member(:source_region, Shapes::ShapeRef.new(shape: String, required: true, location_name: "SourceRegion"))
4149
4183
  CopySnapshotRequest.add_member(:source_snapshot_id, Shapes::ShapeRef.new(shape: String, required: true, location_name: "SourceSnapshotId"))
4150
4184
  CopySnapshotRequest.add_member(:tag_specifications, Shapes::ShapeRef.new(shape: TagSpecificationList, location_name: "TagSpecification"))
@@ -4570,6 +4604,9 @@ module Aws::EC2
4570
4604
  CreateNatGatewayRequest.add_member(:tag_specifications, Shapes::ShapeRef.new(shape: TagSpecificationList, location_name: "TagSpecification"))
4571
4605
  CreateNatGatewayRequest.add_member(:connectivity_type, Shapes::ShapeRef.new(shape: ConnectivityType, location_name: "ConnectivityType"))
4572
4606
  CreateNatGatewayRequest.add_member(:private_ip_address, Shapes::ShapeRef.new(shape: String, location_name: "PrivateIpAddress"))
4607
+ CreateNatGatewayRequest.add_member(:secondary_allocation_ids, Shapes::ShapeRef.new(shape: AllocationIdList, location_name: "SecondaryAllocationId"))
4608
+ CreateNatGatewayRequest.add_member(:secondary_private_ip_addresses, Shapes::ShapeRef.new(shape: IpList, location_name: "SecondaryPrivateIpAddress"))
4609
+ CreateNatGatewayRequest.add_member(:secondary_private_ip_address_count, Shapes::ShapeRef.new(shape: PrivateIpAddressCount, location_name: "SecondaryPrivateIpAddressCount"))
4573
4610
  CreateNatGatewayRequest.struct_class = Types::CreateNatGatewayRequest
4574
4611
 
4575
4612
  CreateNatGatewayResult.add_member(:client_token, Shapes::ShapeRef.new(shape: String, location_name: "clientToken"))
@@ -7638,6 +7675,16 @@ module Aws::EC2
7638
7675
  DisassociateIpamResourceDiscoveryResult.add_member(:ipam_resource_discovery_association, Shapes::ShapeRef.new(shape: IpamResourceDiscoveryAssociation, location_name: "ipamResourceDiscoveryAssociation"))
7639
7676
  DisassociateIpamResourceDiscoveryResult.struct_class = Types::DisassociateIpamResourceDiscoveryResult
7640
7677
 
7678
+ DisassociateNatGatewayAddressRequest.add_member(:nat_gateway_id, Shapes::ShapeRef.new(shape: NatGatewayId, required: true, location_name: "NatGatewayId"))
7679
+ DisassociateNatGatewayAddressRequest.add_member(:association_ids, Shapes::ShapeRef.new(shape: EipAssociationIdList, required: true, location_name: "AssociationId"))
7680
+ DisassociateNatGatewayAddressRequest.add_member(:max_drain_duration_seconds, Shapes::ShapeRef.new(shape: DrainSeconds, location_name: "MaxDrainDurationSeconds"))
7681
+ DisassociateNatGatewayAddressRequest.add_member(:dry_run, Shapes::ShapeRef.new(shape: Boolean, location_name: "DryRun"))
7682
+ DisassociateNatGatewayAddressRequest.struct_class = Types::DisassociateNatGatewayAddressRequest
7683
+
7684
+ DisassociateNatGatewayAddressResult.add_member(:nat_gateway_id, Shapes::ShapeRef.new(shape: NatGatewayId, location_name: "natGatewayId"))
7685
+ DisassociateNatGatewayAddressResult.add_member(:nat_gateway_addresses, Shapes::ShapeRef.new(shape: NatGatewayAddressList, location_name: "natGatewayAddressSet"))
7686
+ DisassociateNatGatewayAddressResult.struct_class = Types::DisassociateNatGatewayAddressResult
7687
+
7641
7688
  DisassociateRouteTableRequest.add_member(:association_id, Shapes::ShapeRef.new(shape: RouteTableAssociationId, required: true, location_name: "associationId"))
7642
7689
  DisassociateRouteTableRequest.add_member(:dry_run, Shapes::ShapeRef.new(shape: Boolean, location_name: "dryRun"))
7643
7690
  DisassociateRouteTableRequest.struct_class = Types::DisassociateRouteTableRequest
@@ -7783,6 +7830,8 @@ module Aws::EC2
7783
7830
 
7784
7831
  EgressOnlyInternetGatewayList.member = Shapes::ShapeRef.new(shape: EgressOnlyInternetGateway, location_name: "item")
7785
7832
 
7833
+ EipAssociationIdList.member = Shapes::ShapeRef.new(shape: ElasticIpAssociationId, location_name: "item")
7834
+
7786
7835
  ElasticGpuAssociation.add_member(:elastic_gpu_id, Shapes::ShapeRef.new(shape: ElasticGpuId, location_name: "elasticGpuId"))
7787
7836
  ElasticGpuAssociation.add_member(:elastic_gpu_association_id, Shapes::ShapeRef.new(shape: String, location_name: "elasticGpuAssociationId"))
7788
7837
  ElasticGpuAssociation.add_member(:elastic_gpu_association_state, Shapes::ShapeRef.new(shape: String, location_name: "elasticGpuAssociationState"))
@@ -9703,6 +9752,8 @@ module Aws::EC2
9703
9752
 
9704
9753
  IpAddressList.member = Shapes::ShapeRef.new(shape: IpAddress, location_name: "item")
9705
9754
 
9755
+ IpList.member = Shapes::ShapeRef.new(shape: String, location_name: "item")
9756
+
9706
9757
  IpPermission.add_member(:from_port, Shapes::ShapeRef.new(shape: Integer, location_name: "fromPort"))
9707
9758
  IpPermission.add_member(:ip_protocol, Shapes::ShapeRef.new(shape: String, location_name: "ipProtocol"))
9708
9759
  IpPermission.add_member(:ip_ranges, Shapes::ShapeRef.new(shape: IpRangeList, location_name: "ipRanges"))
@@ -11275,6 +11326,10 @@ module Aws::EC2
11275
11326
  NatGatewayAddress.add_member(:network_interface_id, Shapes::ShapeRef.new(shape: String, location_name: "networkInterfaceId"))
11276
11327
  NatGatewayAddress.add_member(:private_ip, Shapes::ShapeRef.new(shape: String, location_name: "privateIp"))
11277
11328
  NatGatewayAddress.add_member(:public_ip, Shapes::ShapeRef.new(shape: String, location_name: "publicIp"))
11329
+ NatGatewayAddress.add_member(:association_id, Shapes::ShapeRef.new(shape: String, location_name: "associationId"))
11330
+ NatGatewayAddress.add_member(:is_primary, Shapes::ShapeRef.new(shape: Boolean, location_name: "isPrimary"))
11331
+ NatGatewayAddress.add_member(:failure_message, Shapes::ShapeRef.new(shape: String, location_name: "failureMessage"))
11332
+ NatGatewayAddress.add_member(:status, Shapes::ShapeRef.new(shape: NatGatewayAddressStatus, location_name: "status"))
11278
11333
  NatGatewayAddress.struct_class = Types::NatGatewayAddress
11279
11334
 
11280
11335
  NatGatewayAddressList.member = Shapes::ShapeRef.new(shape: NatGatewayAddress, location_name: "item")
@@ -14036,6 +14091,16 @@ module Aws::EC2
14036
14091
  UnassignPrivateIpAddressesRequest.add_member(:ipv_4_prefixes, Shapes::ShapeRef.new(shape: IpPrefixList, location_name: "Ipv4Prefix"))
14037
14092
  UnassignPrivateIpAddressesRequest.struct_class = Types::UnassignPrivateIpAddressesRequest
14038
14093
 
14094
+ UnassignPrivateNatGatewayAddressRequest.add_member(:nat_gateway_id, Shapes::ShapeRef.new(shape: NatGatewayId, required: true, location_name: "NatGatewayId"))
14095
+ UnassignPrivateNatGatewayAddressRequest.add_member(:private_ip_addresses, Shapes::ShapeRef.new(shape: IpList, required: true, location_name: "PrivateIpAddress"))
14096
+ UnassignPrivateNatGatewayAddressRequest.add_member(:max_drain_duration_seconds, Shapes::ShapeRef.new(shape: DrainSeconds, location_name: "MaxDrainDurationSeconds"))
14097
+ UnassignPrivateNatGatewayAddressRequest.add_member(:dry_run, Shapes::ShapeRef.new(shape: Boolean, location_name: "DryRun"))
14098
+ UnassignPrivateNatGatewayAddressRequest.struct_class = Types::UnassignPrivateNatGatewayAddressRequest
14099
+
14100
+ UnassignPrivateNatGatewayAddressResult.add_member(:nat_gateway_id, Shapes::ShapeRef.new(shape: NatGatewayId, location_name: "natGatewayId"))
14101
+ UnassignPrivateNatGatewayAddressResult.add_member(:nat_gateway_addresses, Shapes::ShapeRef.new(shape: NatGatewayAddressList, location_name: "natGatewayAddressSet"))
14102
+ UnassignPrivateNatGatewayAddressResult.struct_class = Types::UnassignPrivateNatGatewayAddressResult
14103
+
14039
14104
  UnmonitorInstancesRequest.add_member(:instance_ids, Shapes::ShapeRef.new(shape: InstanceIdStringList, required: true, location_name: "InstanceId"))
14040
14105
  UnmonitorInstancesRequest.add_member(:dry_run, Shapes::ShapeRef.new(shape: Boolean, location_name: "dryRun"))
14041
14106
  UnmonitorInstancesRequest.struct_class = Types::UnmonitorInstancesRequest
@@ -14774,6 +14839,14 @@ module Aws::EC2
14774
14839
  o.output = Shapes::ShapeRef.new(shape: AssignPrivateIpAddressesResult)
14775
14840
  end)
14776
14841
 
14842
+ api.add_operation(:assign_private_nat_gateway_address, Seahorse::Model::Operation.new.tap do |o|
14843
+ o.name = "AssignPrivateNatGatewayAddress"
14844
+ o.http_method = "POST"
14845
+ o.http_request_uri = "/"
14846
+ o.input = Shapes::ShapeRef.new(shape: AssignPrivateNatGatewayAddressRequest)
14847
+ o.output = Shapes::ShapeRef.new(shape: AssignPrivateNatGatewayAddressResult)
14848
+ end)
14849
+
14777
14850
  api.add_operation(:associate_address, Seahorse::Model::Operation.new.tap do |o|
14778
14851
  o.name = "AssociateAddress"
14779
14852
  o.http_method = "POST"
@@ -14830,6 +14903,14 @@ module Aws::EC2
14830
14903
  o.output = Shapes::ShapeRef.new(shape: AssociateIpamResourceDiscoveryResult)
14831
14904
  end)
14832
14905
 
14906
+ api.add_operation(:associate_nat_gateway_address, Seahorse::Model::Operation.new.tap do |o|
14907
+ o.name = "AssociateNatGatewayAddress"
14908
+ o.http_method = "POST"
14909
+ o.http_request_uri = "/"
14910
+ o.input = Shapes::ShapeRef.new(shape: AssociateNatGatewayAddressRequest)
14911
+ o.output = Shapes::ShapeRef.new(shape: AssociateNatGatewayAddressResult)
14912
+ end)
14913
+
14833
14914
  api.add_operation(:associate_route_table, Seahorse::Model::Operation.new.tap do |o|
14834
14915
  o.name = "AssociateRouteTable"
14835
14916
  o.http_method = "POST"
@@ -18369,6 +18450,14 @@ module Aws::EC2
18369
18450
  o.output = Shapes::ShapeRef.new(shape: DisassociateIpamResourceDiscoveryResult)
18370
18451
  end)
18371
18452
 
18453
+ api.add_operation(:disassociate_nat_gateway_address, Seahorse::Model::Operation.new.tap do |o|
18454
+ o.name = "DisassociateNatGatewayAddress"
18455
+ o.http_method = "POST"
18456
+ o.http_request_uri = "/"
18457
+ o.input = Shapes::ShapeRef.new(shape: DisassociateNatGatewayAddressRequest)
18458
+ o.output = Shapes::ShapeRef.new(shape: DisassociateNatGatewayAddressResult)
18459
+ end)
18460
+
18372
18461
  api.add_operation(:disassociate_route_table, Seahorse::Model::Operation.new.tap do |o|
18373
18462
  o.name = "DisassociateRouteTable"
18374
18463
  o.http_method = "POST"
@@ -20113,6 +20202,14 @@ module Aws::EC2
20113
20202
  o.output = Shapes::ShapeRef.new(shape: Shapes::StructureShape.new(struct_class: Aws::EmptyStructure))
20114
20203
  end)
20115
20204
 
20205
+ api.add_operation(:unassign_private_nat_gateway_address, Seahorse::Model::Operation.new.tap do |o|
20206
+ o.name = "UnassignPrivateNatGatewayAddress"
20207
+ o.http_method = "POST"
20208
+ o.http_request_uri = "/"
20209
+ o.input = Shapes::ShapeRef.new(shape: UnassignPrivateNatGatewayAddressRequest)
20210
+ o.output = Shapes::ShapeRef.new(shape: UnassignPrivateNatGatewayAddressResult)
20211
+ end)
20212
+
20116
20213
  api.add_operation(:unmonitor_instances, Seahorse::Model::Operation.new.tap do |o|
20117
20214
  o.name = "UnmonitorInstances"
20118
20215
  o.http_method = "POST"
@@ -207,6 +207,20 @@ module Aws::EC2
207
207
  end
208
208
  end
209
209
 
210
+ class AssignPrivateNatGatewayAddress
211
+ def self.build(context)
212
+ unless context.config.regional_endpoint
213
+ endpoint = context.config.endpoint.to_s
214
+ end
215
+ Aws::EC2::EndpointParameters.new(
216
+ region: context.config.region,
217
+ use_dual_stack: context.config.use_dualstack_endpoint,
218
+ use_fips: context.config.use_fips_endpoint,
219
+ endpoint: endpoint,
220
+ )
221
+ end
222
+ end
223
+
210
224
  class AssociateAddress
211
225
  def self.build(context)
212
226
  unless context.config.regional_endpoint
@@ -305,6 +319,20 @@ module Aws::EC2
305
319
  end
306
320
  end
307
321
 
322
+ class AssociateNatGatewayAddress
323
+ def self.build(context)
324
+ unless context.config.regional_endpoint
325
+ endpoint = context.config.endpoint.to_s
326
+ end
327
+ Aws::EC2::EndpointParameters.new(
328
+ region: context.config.region,
329
+ use_dual_stack: context.config.use_dualstack_endpoint,
330
+ use_fips: context.config.use_fips_endpoint,
331
+ endpoint: endpoint,
332
+ )
333
+ end
334
+ end
335
+
308
336
  class AssociateRouteTable
309
337
  def self.build(context)
310
338
  unless context.config.regional_endpoint
@@ -5345,6 +5373,20 @@ module Aws::EC2
5345
5373
  end
5346
5374
  end
5347
5375
 
5376
+ class DisassociateNatGatewayAddress
5377
+ def self.build(context)
5378
+ unless context.config.regional_endpoint
5379
+ endpoint = context.config.endpoint.to_s
5380
+ end
5381
+ Aws::EC2::EndpointParameters.new(
5382
+ region: context.config.region,
5383
+ use_dual_stack: context.config.use_dualstack_endpoint,
5384
+ use_fips: context.config.use_fips_endpoint,
5385
+ endpoint: endpoint,
5386
+ )
5387
+ end
5388
+ end
5389
+
5348
5390
  class DisassociateRouteTable
5349
5391
  def self.build(context)
5350
5392
  unless context.config.regional_endpoint
@@ -8145,6 +8187,20 @@ module Aws::EC2
8145
8187
  end
8146
8188
  end
8147
8189
 
8190
+ class UnassignPrivateNatGatewayAddress
8191
+ def self.build(context)
8192
+ unless context.config.regional_endpoint
8193
+ endpoint = context.config.endpoint.to_s
8194
+ end
8195
+ Aws::EC2::EndpointParameters.new(
8196
+ region: context.config.region,
8197
+ use_dual_stack: context.config.use_dualstack_endpoint,
8198
+ use_fips: context.config.use_fips_endpoint,
8199
+ endpoint: endpoint,
8200
+ )
8201
+ end
8202
+ end
8203
+
8148
8204
  class UnmonitorInstances
8149
8205
  def self.build(context)
8150
8206
  unless context.config.regional_endpoint
@@ -84,6 +84,8 @@ module Aws::EC2
84
84
  Aws::EC2::Endpoints::AssignIpv6Addresses.build(context)
85
85
  when :assign_private_ip_addresses
86
86
  Aws::EC2::Endpoints::AssignPrivateIpAddresses.build(context)
87
+ when :assign_private_nat_gateway_address
88
+ Aws::EC2::Endpoints::AssignPrivateNatGatewayAddress.build(context)
87
89
  when :associate_address
88
90
  Aws::EC2::Endpoints::AssociateAddress.build(context)
89
91
  when :associate_client_vpn_target_network
@@ -98,6 +100,8 @@ module Aws::EC2
98
100
  Aws::EC2::Endpoints::AssociateInstanceEventWindow.build(context)
99
101
  when :associate_ipam_resource_discovery
100
102
  Aws::EC2::Endpoints::AssociateIpamResourceDiscovery.build(context)
103
+ when :associate_nat_gateway_address
104
+ Aws::EC2::Endpoints::AssociateNatGatewayAddress.build(context)
101
105
  when :associate_route_table
102
106
  Aws::EC2::Endpoints::AssociateRouteTable.build(context)
103
107
  when :associate_subnet_cidr_block
@@ -818,6 +822,8 @@ module Aws::EC2
818
822
  Aws::EC2::Endpoints::DisassociateInstanceEventWindow.build(context)
819
823
  when :disassociate_ipam_resource_discovery
820
824
  Aws::EC2::Endpoints::DisassociateIpamResourceDiscovery.build(context)
825
+ when :disassociate_nat_gateway_address
826
+ Aws::EC2::Endpoints::DisassociateNatGatewayAddress.build(context)
821
827
  when :disassociate_route_table
822
828
  Aws::EC2::Endpoints::DisassociateRouteTable.build(context)
823
829
  when :disassociate_subnet_cidr_block
@@ -1218,6 +1224,8 @@ module Aws::EC2
1218
1224
  Aws::EC2::Endpoints::UnassignIpv6Addresses.build(context)
1219
1225
  when :unassign_private_ip_addresses
1220
1226
  Aws::EC2::Endpoints::UnassignPrivateIpAddresses.build(context)
1227
+ when :unassign_private_nat_gateway_address
1228
+ Aws::EC2::Endpoints::UnassignPrivateNatGatewayAddress.build(context)
1221
1229
  when :unmonitor_instances
1222
1230
  Aws::EC2::Endpoints::UnmonitorInstances.build(context)
1223
1231
  when :update_security_group_rule_descriptions_egress
@@ -705,6 +705,9 @@ module Aws::EC2
705
705
  # ],
706
706
  # connectivity_type: "private", # accepts private, public
707
707
  # private_ip_address: "String",
708
+ # secondary_allocation_ids: ["AllocationId"],
709
+ # secondary_private_ip_addresses: ["String"],
710
+ # secondary_private_ip_address_count: 1,
708
711
  # })
709
712
  # @param [Hash] options ({})
710
713
  # @option options [String] :allocation_id
@@ -729,7 +732,7 @@ module Aws::EC2
729
732
  # If you have the required permissions, the error response is
730
733
  # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`.
731
734
  # @option options [required, String] :subnet_id
732
- # The subnet in which to create the NAT gateway.
735
+ # The ID of the subnet in which to create the NAT gateway.
733
736
  # @option options [Array<Types::TagSpecification>] :tag_specifications
734
737
  # The tags to assign to the NAT gateway.
735
738
  # @option options [String] :connectivity_type
@@ -739,6 +742,31 @@ module Aws::EC2
739
742
  # The private IPv4 address to assign to the NAT gateway. If you don't
740
743
  # provide an address, a private IPv4 address will be automatically
741
744
  # assigned.
745
+ # @option options [Array<String>] :secondary_allocation_ids
746
+ # Secondary EIP allocation IDs. For more information about secondary
747
+ # addresses, see [Create a NAT gateway][1] in the *Amazon Virtual
748
+ # Private Cloud User Guide*.
749
+ #
750
+ #
751
+ #
752
+ # [1]: https://docs.aws.amazon.com/vpc/latest/userguide/vpc-nat-gateway.html#nat-gateway-creating
753
+ # @option options [Array<String>] :secondary_private_ip_addresses
754
+ # Secondary private IPv4 addresses. For more information about secondary
755
+ # addresses, see [Create a NAT gateway][1] in the *Amazon Virtual
756
+ # Private Cloud User Guide*.
757
+ #
758
+ #
759
+ #
760
+ # [1]: https://docs.aws.amazon.com/vpc/latest/userguide/vpc-nat-gateway.html#nat-gateway-creating
761
+ # @option options [Integer] :secondary_private_ip_address_count
762
+ # \[Private NAT gateway only\] The number of secondary private IPv4
763
+ # addresses you want to assign to the NAT gateway. For more information
764
+ # about secondary addresses, see [Create a NAT gateway][1] in the
765
+ # *Amazon Virtual Private Cloud User Guide*.
766
+ #
767
+ #
768
+ #
769
+ # [1]: https://docs.aws.amazon.com/vpc/latest/userguide/vpc-nat-gateway.html#nat-gateway-creating
742
770
  # @return [NatGateway]
743
771
  def create_nat_gateway(options = {})
744
772
  resp = @client.create_nat_gateway(options)
@@ -318,7 +318,7 @@ module Aws::EC2
318
318
  # destination_region: "String",
319
319
  # encrypted: false,
320
320
  # kms_key_id: "KmsKeyId",
321
- # presigned_url: "String",
321
+ # presigned_url: "CopySnapshotRequestPSU",
322
322
  # source_region: "String", # required
323
323
  # tag_specifications: [
324
324
  # {
@@ -1622,6 +1622,56 @@ module Aws::EC2
1622
1622
  include Aws::Structure
1623
1623
  end
1624
1624
 
1625
+ # @!attribute [rw] nat_gateway_id
1626
+ # The NAT gateway ID.
1627
+ # @return [String]
1628
+ #
1629
+ # @!attribute [rw] private_ip_addresses
1630
+ # The private IPv4 addresses you want to assign to the private NAT
1631
+ # gateway.
1632
+ # @return [Array<String>]
1633
+ #
1634
+ # @!attribute [rw] private_ip_address_count
1635
+ # The number of private IP addresses to assign to the NAT gateway. You
1636
+ # can't specify this parameter when also specifying private IP
1637
+ # addresses.
1638
+ # @return [Integer]
1639
+ #
1640
+ # @!attribute [rw] dry_run
1641
+ # Checks whether you have the required permissions for the action,
1642
+ # without actually making the request, and provides an error response.
1643
+ # If you have the required permissions, the error response is
1644
+ # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`.
1645
+ # @return [Boolean]
1646
+ #
1647
+ # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/AssignPrivateNatGatewayAddressRequest AWS API Documentation
1648
+ #
1649
+ class AssignPrivateNatGatewayAddressRequest < Struct.new(
1650
+ :nat_gateway_id,
1651
+ :private_ip_addresses,
1652
+ :private_ip_address_count,
1653
+ :dry_run)
1654
+ SENSITIVE = []
1655
+ include Aws::Structure
1656
+ end
1657
+
1658
+ # @!attribute [rw] nat_gateway_id
1659
+ # The NAT gateway ID.
1660
+ # @return [String]
1661
+ #
1662
+ # @!attribute [rw] nat_gateway_addresses
1663
+ # NAT gateway IP addresses.
1664
+ # @return [Array<Types::NatGatewayAddress>]
1665
+ #
1666
+ # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/AssignPrivateNatGatewayAddressResult AWS API Documentation
1667
+ #
1668
+ class AssignPrivateNatGatewayAddressResult < Struct.new(
1669
+ :nat_gateway_id,
1670
+ :nat_gateway_addresses)
1671
+ SENSITIVE = []
1672
+ include Aws::Structure
1673
+ end
1674
+
1625
1675
  # Describes the private IP addresses assigned to a network interface.
1626
1676
  #
1627
1677
  # @!attribute [rw] private_ip_address
@@ -1964,6 +2014,55 @@ module Aws::EC2
1964
2014
  include Aws::Structure
1965
2015
  end
1966
2016
 
2017
+ # @!attribute [rw] nat_gateway_id
2018
+ # The NAT gateway ID.
2019
+ # @return [String]
2020
+ #
2021
+ # @!attribute [rw] allocation_ids
2022
+ # The allocation IDs of EIPs that you want to associate with your NAT
2023
+ # gateway.
2024
+ # @return [Array<String>]
2025
+ #
2026
+ # @!attribute [rw] private_ip_addresses
2027
+ # The private IPv4 addresses that you want to assign to the NAT
2028
+ # gateway.
2029
+ # @return [Array<String>]
2030
+ #
2031
+ # @!attribute [rw] dry_run
2032
+ # Checks whether you have the required permissions for the action,
2033
+ # without actually making the request, and provides an error response.
2034
+ # If you have the required permissions, the error response is
2035
+ # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`.
2036
+ # @return [Boolean]
2037
+ #
2038
+ # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/AssociateNatGatewayAddressRequest AWS API Documentation
2039
+ #
2040
+ class AssociateNatGatewayAddressRequest < Struct.new(
2041
+ :nat_gateway_id,
2042
+ :allocation_ids,
2043
+ :private_ip_addresses,
2044
+ :dry_run)
2045
+ SENSITIVE = []
2046
+ include Aws::Structure
2047
+ end
2048
+
2049
+ # @!attribute [rw] nat_gateway_id
2050
+ # The NAT gateway ID.
2051
+ # @return [String]
2052
+ #
2053
+ # @!attribute [rw] nat_gateway_addresses
2054
+ # The IP addresses.
2055
+ # @return [Array<Types::NatGatewayAddress>]
2056
+ #
2057
+ # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/AssociateNatGatewayAddressResult AWS API Documentation
2058
+ #
2059
+ class AssociateNatGatewayAddressResult < Struct.new(
2060
+ :nat_gateway_id,
2061
+ :nat_gateway_addresses)
2062
+ SENSITIVE = []
2063
+ include Aws::Structure
2064
+ end
2065
+
1967
2066
  # @!attribute [rw] dry_run
1968
2067
  # Checks whether you have the required permissions for the action,
1969
2068
  # without actually making the request, and provides an error response.
@@ -6012,7 +6111,7 @@ module Aws::EC2
6012
6111
  :source_snapshot_id,
6013
6112
  :tag_specifications,
6014
6113
  :dry_run)
6015
- SENSITIVE = []
6114
+ SENSITIVE = [:presigned_url]
6016
6115
  include Aws::Structure
6017
6116
  end
6018
6117
 
@@ -8633,7 +8732,7 @@ module Aws::EC2
8633
8732
  # @return [Boolean]
8634
8733
  #
8635
8734
  # @!attribute [rw] subnet_id
8636
- # The subnet in which to create the NAT gateway.
8735
+ # The ID of the subnet in which to create the NAT gateway.
8637
8736
  # @return [String]
8638
8737
  #
8639
8738
  # @!attribute [rw] tag_specifications
@@ -8651,6 +8750,37 @@ module Aws::EC2
8651
8750
  # assigned.
8652
8751
  # @return [String]
8653
8752
  #
8753
+ # @!attribute [rw] secondary_allocation_ids
8754
+ # Secondary EIP allocation IDs. For more information about secondary
8755
+ # addresses, see [Create a NAT gateway][1] in the *Amazon Virtual
8756
+ # Private Cloud User Guide*.
8757
+ #
8758
+ #
8759
+ #
8760
+ # [1]: https://docs.aws.amazon.com/vpc/latest/userguide/vpc-nat-gateway.html#nat-gateway-creating
8761
+ # @return [Array<String>]
8762
+ #
8763
+ # @!attribute [rw] secondary_private_ip_addresses
8764
+ # Secondary private IPv4 addresses. For more information about
8765
+ # secondary addresses, see [Create a NAT gateway][1] in the *Amazon
8766
+ # Virtual Private Cloud User Guide*.
8767
+ #
8768
+ #
8769
+ #
8770
+ # [1]: https://docs.aws.amazon.com/vpc/latest/userguide/vpc-nat-gateway.html#nat-gateway-creating
8771
+ # @return [Array<String>]
8772
+ #
8773
+ # @!attribute [rw] secondary_private_ip_address_count
8774
+ # \[Private NAT gateway only\] The number of secondary private IPv4
8775
+ # addresses you want to assign to the NAT gateway. For more
8776
+ # information about secondary addresses, see [Create a NAT gateway][1]
8777
+ # in the *Amazon Virtual Private Cloud User Guide*.
8778
+ #
8779
+ #
8780
+ #
8781
+ # [1]: https://docs.aws.amazon.com/vpc/latest/userguide/vpc-nat-gateway.html#nat-gateway-creating
8782
+ # @return [Integer]
8783
+ #
8654
8784
  # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/CreateNatGatewayRequest AWS API Documentation
8655
8785
  #
8656
8786
  class CreateNatGatewayRequest < Struct.new(
@@ -8660,7 +8790,10 @@ module Aws::EC2
8660
8790
  :subnet_id,
8661
8791
  :tag_specifications,
8662
8792
  :connectivity_type,
8663
- :private_ip_address)
8793
+ :private_ip_address,
8794
+ :secondary_allocation_ids,
8795
+ :secondary_private_ip_addresses,
8796
+ :secondary_private_ip_address_count)
8664
8797
  SENSITIVE = []
8665
8798
  include Aws::Structure
8666
8799
  end
@@ -27459,6 +27592,56 @@ module Aws::EC2
27459
27592
  include Aws::Structure
27460
27593
  end
27461
27594
 
27595
+ # @!attribute [rw] nat_gateway_id
27596
+ # The NAT gateway ID.
27597
+ # @return [String]
27598
+ #
27599
+ # @!attribute [rw] association_ids
27600
+ # The association IDs of EIPs that have been associated with the NAT
27601
+ # gateway.
27602
+ # @return [Array<String>]
27603
+ #
27604
+ # @!attribute [rw] max_drain_duration_seconds
27605
+ # The maximum amount of time to wait (in seconds) before forcibly
27606
+ # releasing the IP addresses if connections are still in progress.
27607
+ # Default value is 350 seconds.
27608
+ # @return [Integer]
27609
+ #
27610
+ # @!attribute [rw] dry_run
27611
+ # Checks whether you have the required permissions for the action,
27612
+ # without actually making the request, and provides an error response.
27613
+ # If you have the required permissions, the error response is
27614
+ # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`.
27615
+ # @return [Boolean]
27616
+ #
27617
+ # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/DisassociateNatGatewayAddressRequest AWS API Documentation
27618
+ #
27619
+ class DisassociateNatGatewayAddressRequest < Struct.new(
27620
+ :nat_gateway_id,
27621
+ :association_ids,
27622
+ :max_drain_duration_seconds,
27623
+ :dry_run)
27624
+ SENSITIVE = []
27625
+ include Aws::Structure
27626
+ end
27627
+
27628
+ # @!attribute [rw] nat_gateway_id
27629
+ # The NAT gateway ID.
27630
+ # @return [String]
27631
+ #
27632
+ # @!attribute [rw] nat_gateway_addresses
27633
+ # Information about the NAT gateway IP addresses.
27634
+ # @return [Array<Types::NatGatewayAddress>]
27635
+ #
27636
+ # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/DisassociateNatGatewayAddressResult AWS API Documentation
27637
+ #
27638
+ class DisassociateNatGatewayAddressResult < Struct.new(
27639
+ :nat_gateway_id,
27640
+ :nat_gateway_addresses)
27641
+ SENSITIVE = []
27642
+ include Aws::Structure
27643
+ end
27644
+
27462
27645
  # @!attribute [rw] association_id
27463
27646
  # The association ID representing the current association between the
27464
27647
  # route table and subnet or gateway.
@@ -47048,13 +47231,34 @@ module Aws::EC2
47048
47231
  # the NAT gateway.
47049
47232
  # @return [String]
47050
47233
  #
47234
+ # @!attribute [rw] association_id
47235
+ # \[Public NAT gateway only\] The association ID of the Elastic IP
47236
+ # address that's associated with the NAT gateway.
47237
+ # @return [String]
47238
+ #
47239
+ # @!attribute [rw] is_primary
47240
+ # Defines if the IP address is the primary address.
47241
+ # @return [Boolean]
47242
+ #
47243
+ # @!attribute [rw] failure_message
47244
+ # The address failure message.
47245
+ # @return [String]
47246
+ #
47247
+ # @!attribute [rw] status
47248
+ # The address status.
47249
+ # @return [String]
47250
+ #
47051
47251
  # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/NatGatewayAddress AWS API Documentation
47052
47252
  #
47053
47253
  class NatGatewayAddress < Struct.new(
47054
47254
  :allocation_id,
47055
47255
  :network_interface_id,
47056
47256
  :private_ip,
47057
- :public_ip)
47257
+ :public_ip,
47258
+ :association_id,
47259
+ :is_primary,
47260
+ :failure_message,
47261
+ :status)
47058
47262
  SENSITIVE = []
47059
47263
  include Aws::Structure
47060
47264
  end
@@ -60807,6 +61011,55 @@ module Aws::EC2
60807
61011
  include Aws::Structure
60808
61012
  end
60809
61013
 
61014
+ # @!attribute [rw] nat_gateway_id
61015
+ # The NAT gateway ID.
61016
+ # @return [String]
61017
+ #
61018
+ # @!attribute [rw] private_ip_addresses
61019
+ # The private IPv4 addresses you want to unassign.
61020
+ # @return [Array<String>]
61021
+ #
61022
+ # @!attribute [rw] max_drain_duration_seconds
61023
+ # The maximum amount of time to wait (in seconds) before forcibly
61024
+ # releasing the IP addresses if connections are still in progress.
61025
+ # Default value is 350 seconds.
61026
+ # @return [Integer]
61027
+ #
61028
+ # @!attribute [rw] dry_run
61029
+ # Checks whether you have the required permissions for the action,
61030
+ # without actually making the request, and provides an error response.
61031
+ # If you have the required permissions, the error response is
61032
+ # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`.
61033
+ # @return [Boolean]
61034
+ #
61035
+ # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/UnassignPrivateNatGatewayAddressRequest AWS API Documentation
61036
+ #
61037
+ class UnassignPrivateNatGatewayAddressRequest < Struct.new(
61038
+ :nat_gateway_id,
61039
+ :private_ip_addresses,
61040
+ :max_drain_duration_seconds,
61041
+ :dry_run)
61042
+ SENSITIVE = []
61043
+ include Aws::Structure
61044
+ end
61045
+
61046
+ # @!attribute [rw] nat_gateway_id
61047
+ # The NAT gateway ID.
61048
+ # @return [String]
61049
+ #
61050
+ # @!attribute [rw] nat_gateway_addresses
61051
+ # Information about the NAT gateway IP addresses.
61052
+ # @return [Array<Types::NatGatewayAddress>]
61053
+ #
61054
+ # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/UnassignPrivateNatGatewayAddressResult AWS API Documentation
61055
+ #
61056
+ class UnassignPrivateNatGatewayAddressResult < Struct.new(
61057
+ :nat_gateway_id,
61058
+ :nat_gateway_addresses)
61059
+ SENSITIVE = []
61060
+ include Aws::Structure
61061
+ end
61062
+
60810
61063
  # @!attribute [rw] instance_ids
60811
61064
  # The IDs of the instances.
60812
61065
  # @return [Array<String>]
data/lib/aws-sdk-ec2.rb CHANGED
@@ -76,6 +76,6 @@ require_relative 'aws-sdk-ec2/customizations'
76
76
  # @!group service
77
77
  module Aws::EC2
78
78
 
79
- GEM_VERSION = '1.362.0'
79
+ GEM_VERSION = '1.363.0'
80
80
 
81
81
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: aws-sdk-ec2
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.362.0
4
+ version: 1.363.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Amazon Web Services
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2023-01-30 00:00:00.000000000 Z
11
+ date: 2023-01-31 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: aws-sigv4