aws-sdk-ec2 1.362.0 → 1.364.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.
@@ -697,7 +697,7 @@ module Aws::EC2
697
697
  # If you have the required permissions, the error response is
698
698
  # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`.
699
699
  #
700
- # @option params [String] :vpc_peering_connection_id
700
+ # @option params [required, String] :vpc_peering_connection_id
701
701
  # The ID of the VPC peering connection. You must specify this parameter
702
702
  # in the request.
703
703
  #
@@ -709,7 +709,7 @@ module Aws::EC2
709
709
  #
710
710
  # resp = client.accept_vpc_peering_connection({
711
711
  # dry_run: false,
712
- # vpc_peering_connection_id: "VpcPeeringConnectionIdWithResolver",
712
+ # vpc_peering_connection_id: "VpcPeeringConnectionIdWithResolver", # required
713
713
  # })
714
714
  #
715
715
  # @example Response structure
@@ -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
@@ -1771,10 +1833,10 @@ module Aws::EC2
1771
1833
  # [1]: https://docs.aws.amazon.com/enclaves/latest/user/nitro-enclave-refapp.html
1772
1834
  # [2]: https://docs.aws.amazon.com/enclaves/latest/user/nitro-enclave-refapp.html#add-policy
1773
1835
  #
1774
- # @option params [String] :certificate_arn
1836
+ # @option params [required, String] :certificate_arn
1775
1837
  # The ARN of the ACM certificate with which to associate the IAM role.
1776
1838
  #
1777
- # @option params [String] :role_arn
1839
+ # @option params [required, String] :role_arn
1778
1840
  # The ARN of the IAM role to associate with the ACM certificate. You can
1779
1841
  # associate up to 16 IAM roles with an ACM certificate.
1780
1842
  #
@@ -1793,8 +1855,8 @@ module Aws::EC2
1793
1855
  # @example Request syntax with placeholder values
1794
1856
  #
1795
1857
  # resp = client.associate_enclave_certificate_iam_role({
1796
- # certificate_arn: "CertificateId",
1797
- # role_arn: "RoleId",
1858
+ # certificate_arn: "CertificateId", # required
1859
+ # role_arn: "RoleId", # required
1798
1860
  # dry_run: false,
1799
1861
  # })
1800
1862
  #
@@ -1956,8 +2018,8 @@ module Aws::EC2
1956
2018
  end
1957
2019
 
1958
2020
  # Associates an IPAM resource discovery with an Amazon VPC IPAM. A
1959
- # resource discovery is an IPAM component that enables IPAM Service to
1960
- # manage and monitor resources that belong to the owning account.
2021
+ # resource discovery is an IPAM component that enables IPAM to manage
2022
+ # and monitor resources that belong to the owning account.
1961
2023
  #
1962
2024
  # @option params [Boolean] :dry_run
1963
2025
  # A check for whether you have the required permissions for the action
@@ -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
@@ -2153,14 +2281,14 @@ module Aws::EC2
2153
2281
  #
2154
2282
  # [1]: https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_DescribeTransitGatewayAttachments.html
2155
2283
  #
2156
- # @option params [String] :transit_gateway_multicast_domain_id
2284
+ # @option params [required, String] :transit_gateway_multicast_domain_id
2157
2285
  # The ID of the transit gateway multicast domain.
2158
2286
  #
2159
- # @option params [String] :transit_gateway_attachment_id
2287
+ # @option params [required, String] :transit_gateway_attachment_id
2160
2288
  # The ID of the transit gateway attachment to associate with the transit
2161
2289
  # gateway multicast domain.
2162
2290
  #
2163
- # @option params [Array<String>] :subnet_ids
2291
+ # @option params [required, Array<String>] :subnet_ids
2164
2292
  # The IDs of the subnets to associate with the transit gateway multicast
2165
2293
  # domain.
2166
2294
  #
@@ -2177,9 +2305,9 @@ module Aws::EC2
2177
2305
  # @example Request syntax with placeholder values
2178
2306
  #
2179
2307
  # resp = client.associate_transit_gateway_multicast_domain({
2180
- # transit_gateway_multicast_domain_id: "TransitGatewayMulticastDomainId",
2181
- # transit_gateway_attachment_id: "TransitGatewayAttachmentId",
2182
- # subnet_ids: ["SubnetId"],
2308
+ # transit_gateway_multicast_domain_id: "TransitGatewayMulticastDomainId", # required
2309
+ # transit_gateway_attachment_id: "TransitGatewayAttachmentId", # required
2310
+ # subnet_ids: ["SubnetId"], # required
2183
2311
  # dry_run: false,
2184
2312
  # })
2185
2313
  #
@@ -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: [
@@ -6027,6 +6155,8 @@ module Aws::EC2
6027
6155
  # target capacity of the EC2 Fleet is decreased below the current size
6028
6156
  # of the EC2 Fleet.
6029
6157
  #
6158
+ # Supported only for fleets of type `maintain`.
6159
+ #
6030
6160
  # @option params [required, Array<Types::FleetLaunchTemplateConfigRequest>] :launch_template_configs
6031
6161
  # The configuration for the EC2 Fleet.
6032
6162
  #
@@ -7454,8 +7584,8 @@ module Aws::EC2
7454
7584
  end
7455
7585
 
7456
7586
  # Creates an IPAM resource discovery. A resource discovery is an IPAM
7457
- # component that enables IPAM Service to manage and monitor resources
7458
- # that belong to the owning account.
7587
+ # component that enables IPAM to manage and monitor resources that
7588
+ # belong to the owning account.
7459
7589
  #
7460
7590
  # @option params [Boolean] :dry_run
7461
7591
  # A check for whether you have the required permissions for the action
@@ -9019,7 +9149,7 @@ module Aws::EC2
9019
9149
  # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`.
9020
9150
  #
9021
9151
  # @option params [required, String] :subnet_id
9022
- # The subnet in which to create the NAT gateway.
9152
+ # The ID of the subnet in which to create the NAT gateway.
9023
9153
  #
9024
9154
  # @option params [Array<Types::TagSpecification>] :tag_specifications
9025
9155
  # The tags to assign to the NAT gateway.
@@ -9033,6 +9163,34 @@ module Aws::EC2
9033
9163
  # provide an address, a private IPv4 address will be automatically
9034
9164
  # assigned.
9035
9165
  #
9166
+ # @option params [Array<String>] :secondary_allocation_ids
9167
+ # Secondary EIP allocation IDs. For more information about secondary
9168
+ # addresses, see [Create a NAT gateway][1] in the *Amazon Virtual
9169
+ # Private Cloud User Guide*.
9170
+ #
9171
+ #
9172
+ #
9173
+ # [1]: https://docs.aws.amazon.com/vpc/latest/userguide/vpc-nat-gateway.html#nat-gateway-creating
9174
+ #
9175
+ # @option params [Array<String>] :secondary_private_ip_addresses
9176
+ # Secondary private IPv4 addresses. For more information about secondary
9177
+ # addresses, see [Create a NAT gateway][1] in the *Amazon Virtual
9178
+ # Private Cloud User Guide*.
9179
+ #
9180
+ #
9181
+ #
9182
+ # [1]: https://docs.aws.amazon.com/vpc/latest/userguide/vpc-nat-gateway.html#nat-gateway-creating
9183
+ #
9184
+ # @option params [Integer] :secondary_private_ip_address_count
9185
+ # \[Private NAT gateway only\] The number of secondary private IPv4
9186
+ # addresses you want to assign to the NAT gateway. For more information
9187
+ # about secondary addresses, see [Create a NAT gateway][1] in the
9188
+ # *Amazon Virtual Private Cloud User Guide*.
9189
+ #
9190
+ #
9191
+ #
9192
+ # [1]: https://docs.aws.amazon.com/vpc/latest/userguide/vpc-nat-gateway.html#nat-gateway-creating
9193
+ #
9036
9194
  # @return [Types::CreateNatGatewayResult] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
9037
9195
  #
9038
9196
  # * {Types::CreateNatGatewayResult#client_token #client_token} => String
@@ -9085,6 +9243,9 @@ module Aws::EC2
9085
9243
  # ],
9086
9244
  # connectivity_type: "private", # accepts private, public
9087
9245
  # private_ip_address: "String",
9246
+ # secondary_allocation_ids: ["AllocationId"],
9247
+ # secondary_private_ip_addresses: ["String"],
9248
+ # secondary_private_ip_address_count: 1,
9088
9249
  # })
9089
9250
  #
9090
9251
  # @example Response structure
@@ -9099,6 +9260,10 @@ module Aws::EC2
9099
9260
  # resp.nat_gateway.nat_gateway_addresses[0].network_interface_id #=> String
9100
9261
  # resp.nat_gateway.nat_gateway_addresses[0].private_ip #=> String
9101
9262
  # resp.nat_gateway.nat_gateway_addresses[0].public_ip #=> String
9263
+ # resp.nat_gateway.nat_gateway_addresses[0].association_id #=> String
9264
+ # resp.nat_gateway.nat_gateway_addresses[0].is_primary #=> Boolean
9265
+ # resp.nat_gateway.nat_gateway_addresses[0].failure_message #=> String
9266
+ # resp.nat_gateway.nat_gateway_addresses[0].status #=> String, one of "assigning", "unassigning", "associating", "disassociating", "succeeded", "failed"
9102
9267
  # resp.nat_gateway.nat_gateway_id #=> String
9103
9268
  # resp.nat_gateway.provisioned_bandwidth.provision_time #=> Time
9104
9269
  # resp.nat_gateway.provisioned_bandwidth.provisioned #=> String
@@ -13554,6 +13719,9 @@ module Aws::EC2
13554
13719
  #
13555
13720
  # * Magnetic: `standard`
13556
13721
  #
13722
+ # Throughput Optimized HDD (`st1`) and Cold HDD (`sc1`) volumes can't
13723
+ # be used as boot volumes.
13724
+ #
13557
13725
  # For more information, see [Amazon EBS volume types][1] in the *Amazon
13558
13726
  # Elastic Compute Cloud User Guide*.
13559
13727
  #
@@ -14344,7 +14512,7 @@ module Aws::EC2
14344
14512
  # The ID of the VPC with which you are creating the VPC peering
14345
14513
  # connection. You must specify this parameter in the request.
14346
14514
  #
14347
- # @option params [String] :vpc_id
14515
+ # @option params [required, String] :vpc_id
14348
14516
  # The ID of the requester VPC. You must specify this parameter in the
14349
14517
  # request.
14350
14518
  #
@@ -14367,7 +14535,7 @@ module Aws::EC2
14367
14535
  # dry_run: false,
14368
14536
  # peer_owner_id: "String",
14369
14537
  # peer_vpc_id: "String",
14370
- # vpc_id: "VpcId",
14538
+ # vpc_id: "VpcId", # required
14371
14539
  # peer_region: "String",
14372
14540
  # tag_specifications: [
14373
14541
  # {
@@ -15502,8 +15670,8 @@ module Aws::EC2
15502
15670
  end
15503
15671
 
15504
15672
  # Deletes an IPAM resource discovery. A resource discovery is an IPAM
15505
- # component that enables IPAM Service to manage and monitor resources
15506
- # that belong to the owning account.
15673
+ # component that enables IPAM to manage and monitor resources that
15674
+ # belong to the owning account.
15507
15675
  #
15508
15676
  # @option params [Boolean] :dry_run
15509
15677
  # A check for whether you have the required permissions for the action
@@ -24794,8 +24962,8 @@ module Aws::EC2
24794
24962
  end
24795
24963
 
24796
24964
  # Describes IPAM resource discoveries. A resource discovery is an IPAM
24797
- # component that enables IPAM Service to manage and monitor resources
24798
- # that belong to the owning account.
24965
+ # component that enables IPAM to manage and monitor resources that
24966
+ # belong to the owning account.
24799
24967
  #
24800
24968
  # @option params [Boolean] :dry_run
24801
24969
  # A check for whether you have the required permissions for the action
@@ -26542,6 +26710,10 @@ module Aws::EC2
26542
26710
  # resp.nat_gateways[0].nat_gateway_addresses[0].network_interface_id #=> String
26543
26711
  # resp.nat_gateways[0].nat_gateway_addresses[0].private_ip #=> String
26544
26712
  # resp.nat_gateways[0].nat_gateway_addresses[0].public_ip #=> String
26713
+ # resp.nat_gateways[0].nat_gateway_addresses[0].association_id #=> String
26714
+ # resp.nat_gateways[0].nat_gateway_addresses[0].is_primary #=> Boolean
26715
+ # resp.nat_gateways[0].nat_gateway_addresses[0].failure_message #=> String
26716
+ # resp.nat_gateways[0].nat_gateway_addresses[0].status #=> String, one of "assigning", "unassigning", "associating", "disassociating", "succeeded", "failed"
26545
26717
  # resp.nat_gateways[0].nat_gateway_id #=> String
26546
26718
  # resp.nat_gateways[0].provisioned_bandwidth.provision_time #=> Time
26547
26719
  # resp.nat_gateways[0].provisioned_bandwidth.provisioned #=> String
@@ -36935,11 +37107,11 @@ module Aws::EC2
36935
37107
  # used to encrypt the private key. This effectively revokes the role's
36936
37108
  # permission to use the certificate.
36937
37109
  #
36938
- # @option params [String] :certificate_arn
37110
+ # @option params [required, String] :certificate_arn
36939
37111
  # The ARN of the ACM certificate from which to disassociate the IAM
36940
37112
  # role.
36941
37113
  #
36942
- # @option params [String] :role_arn
37114
+ # @option params [required, String] :role_arn
36943
37115
  # The ARN of the IAM role to disassociate.
36944
37116
  #
36945
37117
  # @option params [Boolean] :dry_run
@@ -36955,8 +37127,8 @@ module Aws::EC2
36955
37127
  # @example Request syntax with placeholder values
36956
37128
  #
36957
37129
  # resp = client.disassociate_enclave_certificate_iam_role({
36958
- # certificate_arn: "CertificateId",
36959
- # role_arn: "RoleId",
37130
+ # certificate_arn: "CertificateId", # required
37131
+ # role_arn: "RoleId", # required
36960
37132
  # dry_run: false,
36961
37133
  # })
36962
37134
  #
@@ -37105,8 +37277,8 @@ module Aws::EC2
37105
37277
  end
37106
37278
 
37107
37279
  # Disassociates a resource discovery from an Amazon VPC IPAM. A resource
37108
- # discovery is an IPAM component that enables IPAM Service to manage and
37109
- # monitor resources that belong to the owning account.
37280
+ # discovery is an IPAM component that enables IPAM to manage and monitor
37281
+ # resources that belong to the owning account.
37110
37282
  #
37111
37283
  # @option params [Boolean] :dry_run
37112
37284
  # A check for whether you have the required permissions for the action
@@ -37153,6 +37325,80 @@ module Aws::EC2
37153
37325
  req.send_request(options)
37154
37326
  end
37155
37327
 
37328
+ # Disassociates secondary Elastic IP addresses (EIPs) from a public NAT
37329
+ # gateway. You cannot disassociate your primary EIP. For more
37330
+ # information, see [Edit secondary IP address associations][1] in the
37331
+ # *Amazon Virtual Private Cloud User Guide*.
37332
+ #
37333
+ # While disassociating is in progress, you cannot associate/disassociate
37334
+ # additional EIPs while the connections are being drained. You are,
37335
+ # however, allowed to delete the NAT gateway.
37336
+ #
37337
+ # An EIP will only be released at the end of MaxDrainDurationSeconds.
37338
+ # The EIPs stay associated and support the existing connections but do
37339
+ # not support any new connections (new connections are distributed
37340
+ # across the remaining associated EIPs). As the existing connections
37341
+ # drain out, the EIPs (and the corresponding private IPs mapped to them)
37342
+ # get released.
37343
+ #
37344
+ #
37345
+ #
37346
+ # [1]: https://docs.aws.amazon.com/vpc/latest/userguide/vpc-nat-gateway.html#nat-gateway-edit-secondary
37347
+ #
37348
+ # @option params [required, String] :nat_gateway_id
37349
+ # The NAT gateway ID.
37350
+ #
37351
+ # @option params [required, Array<String>] :association_ids
37352
+ # The association IDs of EIPs that have been associated with the NAT
37353
+ # gateway.
37354
+ #
37355
+ # @option params [Integer] :max_drain_duration_seconds
37356
+ # The maximum amount of time to wait (in seconds) before forcibly
37357
+ # releasing the IP addresses if connections are still in progress.
37358
+ # Default value is 350 seconds.
37359
+ #
37360
+ # @option params [Boolean] :dry_run
37361
+ # Checks whether you have the required permissions for the action,
37362
+ # without actually making the request, and provides an error response.
37363
+ # If you have the required permissions, the error response is
37364
+ # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`.
37365
+ #
37366
+ # @return [Types::DisassociateNatGatewayAddressResult] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
37367
+ #
37368
+ # * {Types::DisassociateNatGatewayAddressResult#nat_gateway_id #nat_gateway_id} => String
37369
+ # * {Types::DisassociateNatGatewayAddressResult#nat_gateway_addresses #nat_gateway_addresses} => Array&lt;Types::NatGatewayAddress&gt;
37370
+ #
37371
+ # @example Request syntax with placeholder values
37372
+ #
37373
+ # resp = client.disassociate_nat_gateway_address({
37374
+ # nat_gateway_id: "NatGatewayId", # required
37375
+ # association_ids: ["ElasticIpAssociationId"], # required
37376
+ # max_drain_duration_seconds: 1,
37377
+ # dry_run: false,
37378
+ # })
37379
+ #
37380
+ # @example Response structure
37381
+ #
37382
+ # resp.nat_gateway_id #=> String
37383
+ # resp.nat_gateway_addresses #=> Array
37384
+ # resp.nat_gateway_addresses[0].allocation_id #=> String
37385
+ # resp.nat_gateway_addresses[0].network_interface_id #=> String
37386
+ # resp.nat_gateway_addresses[0].private_ip #=> String
37387
+ # resp.nat_gateway_addresses[0].public_ip #=> String
37388
+ # resp.nat_gateway_addresses[0].association_id #=> String
37389
+ # resp.nat_gateway_addresses[0].is_primary #=> Boolean
37390
+ # resp.nat_gateway_addresses[0].failure_message #=> String
37391
+ # resp.nat_gateway_addresses[0].status #=> String, one of "assigning", "unassigning", "associating", "disassociating", "succeeded", "failed"
37392
+ #
37393
+ # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/DisassociateNatGatewayAddress AWS API Documentation
37394
+ #
37395
+ # @overload disassociate_nat_gateway_address(params = {})
37396
+ # @param [Hash] params ({})
37397
+ def disassociate_nat_gateway_address(params = {}, options = {})
37398
+ req = build_request(:disassociate_nat_gateway_address, params)
37399
+ req.send_request(options)
37400
+ end
37401
+
37156
37402
  # Disassociates a subnet or gateway from a route table.
37157
37403
  #
37158
37404
  # After you perform this action, the subnet no longer uses the routes in
@@ -37240,13 +37486,13 @@ module Aws::EC2
37240
37486
  # Disassociates the specified subnets from the transit gateway multicast
37241
37487
  # domain.
37242
37488
  #
37243
- # @option params [String] :transit_gateway_multicast_domain_id
37489
+ # @option params [required, String] :transit_gateway_multicast_domain_id
37244
37490
  # The ID of the transit gateway multicast domain.
37245
37491
  #
37246
- # @option params [String] :transit_gateway_attachment_id
37492
+ # @option params [required, String] :transit_gateway_attachment_id
37247
37493
  # The ID of the attachment.
37248
37494
  #
37249
- # @option params [Array<String>] :subnet_ids
37495
+ # @option params [required, Array<String>] :subnet_ids
37250
37496
  # The IDs of the subnets;
37251
37497
  #
37252
37498
  # @option params [Boolean] :dry_run
@@ -37262,9 +37508,9 @@ module Aws::EC2
37262
37508
  # @example Request syntax with placeholder values
37263
37509
  #
37264
37510
  # resp = client.disassociate_transit_gateway_multicast_domain({
37265
- # transit_gateway_multicast_domain_id: "TransitGatewayMulticastDomainId",
37266
- # transit_gateway_attachment_id: "TransitGatewayAttachmentId",
37267
- # subnet_ids: ["SubnetId"],
37511
+ # transit_gateway_multicast_domain_id: "TransitGatewayMulticastDomainId", # required
37512
+ # transit_gateway_attachment_id: "TransitGatewayAttachmentId", # required
37513
+ # subnet_ids: ["SubnetId"], # required
37268
37514
  # dry_run: false,
37269
37515
  # })
37270
37516
  #
@@ -38479,7 +38725,7 @@ module Aws::EC2
38479
38725
  # encrypted private key bundle are stored, and the ARN of the KMS key
38480
38726
  # that's used to encrypt the private key.
38481
38727
  #
38482
- # @option params [String] :certificate_arn
38728
+ # @option params [required, String] :certificate_arn
38483
38729
  # The ARN of the ACM certificate for which to view the associated IAM
38484
38730
  # roles, encryption keys, and Amazon S3 object information.
38485
38731
  #
@@ -38496,7 +38742,7 @@ module Aws::EC2
38496
38742
  # @example Request syntax with placeholder values
38497
38743
  #
38498
38744
  # resp = client.get_associated_enclave_certificate_iam_roles({
38499
- # certificate_arn: "CertificateId",
38745
+ # certificate_arn: "CertificateId", # required
38500
38746
  # dry_run: false,
38501
38747
  # })
38502
38748
  #
@@ -39784,8 +40030,8 @@ module Aws::EC2
39784
40030
  # Returns resource CIDRs managed by IPAM in a given scope. If an IPAM is
39785
40031
  # associated with more than one resource discovery, the resource CIDRs
39786
40032
  # across all of the resource discoveries is returned. A resource
39787
- # discovery is an IPAM component that enables IPAM Service to manage and
39788
- # monitor resources that belong to the owning account.
40033
+ # discovery is an IPAM component that enables IPAM to manage and monitor
40034
+ # resources that belong to the owning account.
39789
40035
  #
39790
40036
  # @option params [Boolean] :dry_run
39791
40037
  # A check for whether you have the required permissions for the action
@@ -41154,7 +41400,7 @@ module Aws::EC2
41154
41400
  # Gets information about the associations for the transit gateway
41155
41401
  # multicast domain.
41156
41402
  #
41157
- # @option params [String] :transit_gateway_multicast_domain_id
41403
+ # @option params [required, String] :transit_gateway_multicast_domain_id
41158
41404
  # The ID of the transit gateway multicast domain.
41159
41405
  #
41160
41406
  # @option params [Array<Types::Filter>] :filters
@@ -41197,7 +41443,7 @@ module Aws::EC2
41197
41443
  # @example Request syntax with placeholder values
41198
41444
  #
41199
41445
  # resp = client.get_transit_gateway_multicast_domain_associations({
41200
- # transit_gateway_multicast_domain_id: "TransitGatewayMulticastDomainId",
41446
+ # transit_gateway_multicast_domain_id: "TransitGatewayMulticastDomainId", # required
41201
41447
  # filters: [
41202
41448
  # {
41203
41449
  # name: "String",
@@ -43245,6 +43491,8 @@ module Aws::EC2
43245
43491
  # target capacity of the EC2 Fleet is decreased below the current size
43246
43492
  # of the EC2 Fleet.
43247
43493
  #
43494
+ # Supported only for fleets of type `maintain`.
43495
+ #
43248
43496
  # @option params [Array<Types::FleetLaunchTemplateConfigRequest>] :launch_template_configs
43249
43497
  # The launch template and overrides.
43250
43498
  #
@@ -44161,7 +44409,7 @@ module Aws::EC2
44161
44409
  # client_token: "String",
44162
44410
  # instance_credit_specifications: [ # required
44163
44411
  # {
44164
- # instance_id: "InstanceId",
44412
+ # instance_id: "InstanceId", # required
44165
44413
  # cpu_credits: "String",
44166
44414
  # },
44167
44415
  # ],
@@ -44908,8 +45156,8 @@ module Aws::EC2
44908
45156
  end
44909
45157
 
44910
45158
  # Modifies a resource discovery. A resource discovery is an IPAM
44911
- # component that enables IPAM Service to manage and monitor resources
44912
- # that belong to the owning account.
45159
+ # component that enables IPAM to manage and monitor resources that
45160
+ # belong to the owning account.
44913
45161
  #
44914
45162
  # @option params [Boolean] :dry_run
44915
45163
  # A check for whether you have the required permissions for the action
@@ -45405,7 +45653,7 @@ module Aws::EC2
45405
45653
  # If you have the required permissions, the error response is
45406
45654
  # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`.
45407
45655
  #
45408
- # @option params [String] :instance_id
45656
+ # @option params [required, String] :instance_id
45409
45657
  # The ID of the instance.
45410
45658
  #
45411
45659
  # @option params [String] :private_dns_hostname_type
@@ -45431,7 +45679,7 @@ module Aws::EC2
45431
45679
  #
45432
45680
  # resp = client.modify_private_dns_name_options({
45433
45681
  # dry_run: false,
45434
- # instance_id: "InstanceId",
45682
+ # instance_id: "InstanceId", # required
45435
45683
  # private_dns_hostname_type: "ip-name", # accepts ip-name, resource-name
45436
45684
  # enable_resource_name_dns_a_record: false,
45437
45685
  # enable_resource_name_dns_aaaa_record: false,
@@ -45542,7 +45790,7 @@ module Aws::EC2
45542
45790
  # group_id: "SecurityGroupId", # required
45543
45791
  # security_group_rules: [ # required
45544
45792
  # {
45545
- # security_group_rule_id: "SecurityGroupRuleId",
45793
+ # security_group_rule_id: "SecurityGroupRuleId", # required
45546
45794
  # security_group_rule: {
45547
45795
  # ip_protocol: "String",
45548
45796
  # from_port: 1,
@@ -45772,9 +46020,11 @@ module Aws::EC2
45772
46020
  # again later, you can set the target capacity to 0.
45773
46021
  #
45774
46022
  # @option params [String] :excess_capacity_termination_policy
45775
- # Indicates whether running Spot Instances should be terminated if the
45776
- # target capacity of the Spot Fleet request is decreased below the
45777
- # current size of the Spot Fleet.
46023
+ # Indicates whether running instances should be terminated if the target
46024
+ # capacity of the Spot Fleet request is decreased below the current size
46025
+ # of the Spot Fleet.
46026
+ #
46027
+ # Supported only for fleets of type `maintain`.
45778
46028
  #
45779
46029
  # @option params [Array<Types::LaunchTemplateConfig>] :launch_template_configs
45780
46030
  # The launch template and overrides. You can only use this parameter if
@@ -49479,13 +49729,13 @@ module Aws::EC2
49479
49729
  # [1]: https://docs.aws.amazon.com/vpc/latest/tgw/transit-gateway-limits.html#multicast-limits
49480
49730
  # [2]: https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_SearchTransitGatewayMulticastGroups.html
49481
49731
  #
49482
- # @option params [String] :transit_gateway_multicast_domain_id
49732
+ # @option params [required, String] :transit_gateway_multicast_domain_id
49483
49733
  # The ID of the transit gateway multicast domain.
49484
49734
  #
49485
49735
  # @option params [String] :group_ip_address
49486
49736
  # The IP address assigned to the transit gateway multicast group.
49487
49737
  #
49488
- # @option params [Array<String>] :network_interface_ids
49738
+ # @option params [required, Array<String>] :network_interface_ids
49489
49739
  # The group members' network interface IDs to register with the transit
49490
49740
  # gateway multicast group.
49491
49741
  #
@@ -49502,9 +49752,9 @@ module Aws::EC2
49502
49752
  # @example Request syntax with placeholder values
49503
49753
  #
49504
49754
  # resp = client.register_transit_gateway_multicast_group_members({
49505
- # transit_gateway_multicast_domain_id: "TransitGatewayMulticastDomainId",
49755
+ # transit_gateway_multicast_domain_id: "TransitGatewayMulticastDomainId", # required
49506
49756
  # group_ip_address: "String",
49507
- # network_interface_ids: ["NetworkInterfaceId"],
49757
+ # network_interface_ids: ["NetworkInterfaceId"], # required
49508
49758
  # dry_run: false,
49509
49759
  # })
49510
49760
  #
@@ -49540,13 +49790,13 @@ module Aws::EC2
49540
49790
  # [1]: https://docs.aws.amazon.com/vpc/latest/tgw/transit-gateway-limits.html#multicast-limits
49541
49791
  # [2]: https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_SearchTransitGatewayMulticastGroups.html
49542
49792
  #
49543
- # @option params [String] :transit_gateway_multicast_domain_id
49793
+ # @option params [required, String] :transit_gateway_multicast_domain_id
49544
49794
  # The ID of the transit gateway multicast domain.
49545
49795
  #
49546
49796
  # @option params [String] :group_ip_address
49547
49797
  # The IP address assigned to the transit gateway multicast group.
49548
49798
  #
49549
- # @option params [Array<String>] :network_interface_ids
49799
+ # @option params [required, Array<String>] :network_interface_ids
49550
49800
  # The group sources' network interface IDs to register with the transit
49551
49801
  # gateway multicast group.
49552
49802
  #
@@ -49563,9 +49813,9 @@ module Aws::EC2
49563
49813
  # @example Request syntax with placeholder values
49564
49814
  #
49565
49815
  # resp = client.register_transit_gateway_multicast_group_sources({
49566
- # transit_gateway_multicast_domain_id: "TransitGatewayMulticastDomainId",
49816
+ # transit_gateway_multicast_domain_id: "TransitGatewayMulticastDomainId", # required
49567
49817
  # group_ip_address: "String",
49568
- # network_interface_ids: ["NetworkInterfaceId"],
49818
+ # network_interface_ids: ["NetworkInterfaceId"], # required
49569
49819
  # dry_run: false,
49570
49820
  # })
49571
49821
  #
@@ -53583,7 +53833,7 @@ module Aws::EC2
53583
53833
  # Searches one or more transit gateway multicast groups and returns the
53584
53834
  # group membership information.
53585
53835
  #
53586
- # @option params [String] :transit_gateway_multicast_domain_id
53836
+ # @option params [required, String] :transit_gateway_multicast_domain_id
53587
53837
  # The ID of the transit gateway multicast domain.
53588
53838
  #
53589
53839
  # @option params [Array<Types::Filter>] :filters
@@ -53638,7 +53888,7 @@ module Aws::EC2
53638
53888
  # @example Request syntax with placeholder values
53639
53889
  #
53640
53890
  # resp = client.search_transit_gateway_multicast_groups({
53641
- # transit_gateway_multicast_domain_id: "TransitGatewayMulticastDomainId",
53891
+ # transit_gateway_multicast_domain_id: "TransitGatewayMulticastDomainId", # required
53642
53892
  # filters: [
53643
53893
  # {
53644
53894
  # name: "String",
@@ -55164,6 +55414,83 @@ module Aws::EC2
55164
55414
  req.send_request(options)
55165
55415
  end
55166
55416
 
55417
+ # Unassigns secondary private NAT gateway IPv4 addresses from a private
55418
+ # NAT gateway. You cannot unassign your primary private IP. For more
55419
+ # information, see [Edit secondary IP address associations][1] in the
55420
+ # *Amazon Virtual Private Cloud User Guide*.
55421
+ #
55422
+ # While unassigning is in progress, you cannot assign/unassign
55423
+ # additional IP addresses while the connections are being drained. You
55424
+ # are, however, allowed to delete the NAT gateway.
55425
+ #
55426
+ # A private IP address will only be released at the end of
55427
+ # MaxDrainDurationSeconds. The private IP addresses stay associated and
55428
+ # support the existing connections but do not support any new
55429
+ # connections (new connections are distributed across the remaining
55430
+ # assigned private IP address). After the existing connections drain
55431
+ # out, the private IP addresses get released.
55432
+ #
55433
+ #
55434
+ #
55435
+ #
55436
+ #
55437
+ #
55438
+ #
55439
+ # [1]: https://docs.aws.amazon.com/vpc/latest/userguide/vpc-nat-gateway.html#nat-gateway-edit-secondary
55440
+ #
55441
+ # @option params [required, String] :nat_gateway_id
55442
+ # The NAT gateway ID.
55443
+ #
55444
+ # @option params [required, Array<String>] :private_ip_addresses
55445
+ # The private IPv4 addresses you want to unassign.
55446
+ #
55447
+ # @option params [Integer] :max_drain_duration_seconds
55448
+ # The maximum amount of time to wait (in seconds) before forcibly
55449
+ # releasing the IP addresses if connections are still in progress.
55450
+ # Default value is 350 seconds.
55451
+ #
55452
+ # @option params [Boolean] :dry_run
55453
+ # Checks whether you have the required permissions for the action,
55454
+ # without actually making the request, and provides an error response.
55455
+ # If you have the required permissions, the error response is
55456
+ # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`.
55457
+ #
55458
+ # @return [Types::UnassignPrivateNatGatewayAddressResult] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
55459
+ #
55460
+ # * {Types::UnassignPrivateNatGatewayAddressResult#nat_gateway_id #nat_gateway_id} => String
55461
+ # * {Types::UnassignPrivateNatGatewayAddressResult#nat_gateway_addresses #nat_gateway_addresses} => Array&lt;Types::NatGatewayAddress&gt;
55462
+ #
55463
+ # @example Request syntax with placeholder values
55464
+ #
55465
+ # resp = client.unassign_private_nat_gateway_address({
55466
+ # nat_gateway_id: "NatGatewayId", # required
55467
+ # private_ip_addresses: ["String"], # required
55468
+ # max_drain_duration_seconds: 1,
55469
+ # dry_run: false,
55470
+ # })
55471
+ #
55472
+ # @example Response structure
55473
+ #
55474
+ # resp.nat_gateway_id #=> String
55475
+ # resp.nat_gateway_addresses #=> Array
55476
+ # resp.nat_gateway_addresses[0].allocation_id #=> String
55477
+ # resp.nat_gateway_addresses[0].network_interface_id #=> String
55478
+ # resp.nat_gateway_addresses[0].private_ip #=> String
55479
+ # resp.nat_gateway_addresses[0].public_ip #=> String
55480
+ # resp.nat_gateway_addresses[0].association_id #=> String
55481
+ # resp.nat_gateway_addresses[0].is_primary #=> Boolean
55482
+ # resp.nat_gateway_addresses[0].failure_message #=> String
55483
+ # resp.nat_gateway_addresses[0].status #=> String, one of "assigning", "unassigning", "associating", "disassociating", "succeeded", "failed"
55484
+ #
55485
+ # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/UnassignPrivateNatGatewayAddress AWS API Documentation
55486
+ #
55487
+ # @overload unassign_private_nat_gateway_address(params = {})
55488
+ # @param [Hash] params ({})
55489
+ def unassign_private_nat_gateway_address(params = {}, options = {})
55490
+ req = build_request(:unassign_private_nat_gateway_address, params)
55491
+ req.send_request(options)
55492
+ end
55493
+
55167
55494
  # Disables detailed monitoring for a running instance. For more
55168
55495
  # information, see [Monitoring your instances and volumes][1] in the
55169
55496
  # *Amazon EC2 User Guide*.
@@ -55513,7 +55840,7 @@ module Aws::EC2
55513
55840
  params: params,
55514
55841
  config: config)
55515
55842
  context[:gem_name] = 'aws-sdk-ec2'
55516
- context[:gem_version] = '1.362.0'
55843
+ context[:gem_version] = '1.364.0'
55517
55844
  Seahorse::Client::Request.new(handlers, context)
55518
55845
  end
55519
55846