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.
@@ -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')
@@ -3034,7 +3048,7 @@ module Aws::EC2
3034
3048
  AcceptVpcEndpointConnectionsResult.struct_class = Types::AcceptVpcEndpointConnectionsResult
3035
3049
 
3036
3050
  AcceptVpcPeeringConnectionRequest.add_member(:dry_run, Shapes::ShapeRef.new(shape: Boolean, location_name: "dryRun"))
3037
- AcceptVpcPeeringConnectionRequest.add_member(:vpc_peering_connection_id, Shapes::ShapeRef.new(shape: VpcPeeringConnectionIdWithResolver, location_name: "vpcPeeringConnectionId"))
3051
+ AcceptVpcPeeringConnectionRequest.add_member(:vpc_peering_connection_id, Shapes::ShapeRef.new(shape: VpcPeeringConnectionIdWithResolver, required: true, location_name: "vpcPeeringConnectionId"))
3038
3052
  AcceptVpcPeeringConnectionRequest.struct_class = Types::AcceptVpcPeeringConnectionRequest
3039
3053
 
3040
3054
  AcceptVpcPeeringConnectionResult.add_member(:vpc_peering_connection, Shapes::ShapeRef.new(shape: VpcPeeringConnection, location_name: "vpcPeeringConnection"))
@@ -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
 
@@ -3343,8 +3367,8 @@ module Aws::EC2
3343
3367
  AssociateDhcpOptionsRequest.add_member(:dry_run, Shapes::ShapeRef.new(shape: Boolean, location_name: "dryRun"))
3344
3368
  AssociateDhcpOptionsRequest.struct_class = Types::AssociateDhcpOptionsRequest
3345
3369
 
3346
- AssociateEnclaveCertificateIamRoleRequest.add_member(:certificate_arn, Shapes::ShapeRef.new(shape: CertificateId, location_name: "CertificateArn"))
3347
- AssociateEnclaveCertificateIamRoleRequest.add_member(:role_arn, Shapes::ShapeRef.new(shape: RoleId, location_name: "RoleArn"))
3370
+ AssociateEnclaveCertificateIamRoleRequest.add_member(:certificate_arn, Shapes::ShapeRef.new(shape: CertificateId, required: true, location_name: "CertificateArn"))
3371
+ AssociateEnclaveCertificateIamRoleRequest.add_member(:role_arn, Shapes::ShapeRef.new(shape: RoleId, required: true, location_name: "RoleArn"))
3348
3372
  AssociateEnclaveCertificateIamRoleRequest.add_member(:dry_run, Shapes::ShapeRef.new(shape: Boolean, location_name: "DryRun"))
3349
3373
  AssociateEnclaveCertificateIamRoleRequest.struct_class = Types::AssociateEnclaveCertificateIamRoleRequest
3350
3374
 
@@ -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"))
@@ -3396,9 +3430,9 @@ module Aws::EC2
3396
3430
  AssociateSubnetCidrBlockResult.add_member(:subnet_id, Shapes::ShapeRef.new(shape: String, location_name: "subnetId"))
3397
3431
  AssociateSubnetCidrBlockResult.struct_class = Types::AssociateSubnetCidrBlockResult
3398
3432
 
3399
- AssociateTransitGatewayMulticastDomainRequest.add_member(:transit_gateway_multicast_domain_id, Shapes::ShapeRef.new(shape: TransitGatewayMulticastDomainId, location_name: "TransitGatewayMulticastDomainId"))
3400
- AssociateTransitGatewayMulticastDomainRequest.add_member(:transit_gateway_attachment_id, Shapes::ShapeRef.new(shape: TransitGatewayAttachmentId, location_name: "TransitGatewayAttachmentId"))
3401
- AssociateTransitGatewayMulticastDomainRequest.add_member(:subnet_ids, Shapes::ShapeRef.new(shape: TransitGatewaySubnetIdList, location_name: "SubnetIds"))
3433
+ AssociateTransitGatewayMulticastDomainRequest.add_member(:transit_gateway_multicast_domain_id, Shapes::ShapeRef.new(shape: TransitGatewayMulticastDomainId, required: true, location_name: "TransitGatewayMulticastDomainId"))
3434
+ AssociateTransitGatewayMulticastDomainRequest.add_member(:transit_gateway_attachment_id, Shapes::ShapeRef.new(shape: TransitGatewayAttachmentId, required: true, location_name: "TransitGatewayAttachmentId"))
3435
+ AssociateTransitGatewayMulticastDomainRequest.add_member(:subnet_ids, Shapes::ShapeRef.new(shape: TransitGatewaySubnetIdList, required: true, location_name: "SubnetIds"))
3402
3436
  AssociateTransitGatewayMulticastDomainRequest.add_member(:dry_run, Shapes::ShapeRef.new(shape: Boolean, location_name: "DryRun"))
3403
3437
  AssociateTransitGatewayMulticastDomainRequest.struct_class = Types::AssociateTransitGatewayMulticastDomainRequest
3404
3438
 
@@ -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"))
@@ -5139,7 +5176,7 @@ module Aws::EC2
5139
5176
  CreateVpcPeeringConnectionRequest.add_member(:dry_run, Shapes::ShapeRef.new(shape: Boolean, location_name: "dryRun"))
5140
5177
  CreateVpcPeeringConnectionRequest.add_member(:peer_owner_id, Shapes::ShapeRef.new(shape: String, location_name: "peerOwnerId"))
5141
5178
  CreateVpcPeeringConnectionRequest.add_member(:peer_vpc_id, Shapes::ShapeRef.new(shape: String, location_name: "peerVpcId"))
5142
- CreateVpcPeeringConnectionRequest.add_member(:vpc_id, Shapes::ShapeRef.new(shape: VpcId, location_name: "vpcId"))
5179
+ CreateVpcPeeringConnectionRequest.add_member(:vpc_id, Shapes::ShapeRef.new(shape: VpcId, required: true, location_name: "vpcId"))
5143
5180
  CreateVpcPeeringConnectionRequest.add_member(:peer_region, Shapes::ShapeRef.new(shape: String, location_name: "PeerRegion"))
5144
5181
  CreateVpcPeeringConnectionRequest.add_member(:tag_specifications, Shapes::ShapeRef.new(shape: TagSpecificationList, location_name: "TagSpecification"))
5145
5182
  CreateVpcPeeringConnectionRequest.struct_class = Types::CreateVpcPeeringConnectionRequest
@@ -7609,8 +7646,8 @@ module Aws::EC2
7609
7646
  DisassociateClientVpnTargetNetworkResult.add_member(:status, Shapes::ShapeRef.new(shape: AssociationStatus, location_name: "status"))
7610
7647
  DisassociateClientVpnTargetNetworkResult.struct_class = Types::DisassociateClientVpnTargetNetworkResult
7611
7648
 
7612
- DisassociateEnclaveCertificateIamRoleRequest.add_member(:certificate_arn, Shapes::ShapeRef.new(shape: CertificateId, location_name: "CertificateArn"))
7613
- DisassociateEnclaveCertificateIamRoleRequest.add_member(:role_arn, Shapes::ShapeRef.new(shape: RoleId, location_name: "RoleArn"))
7649
+ DisassociateEnclaveCertificateIamRoleRequest.add_member(:certificate_arn, Shapes::ShapeRef.new(shape: CertificateId, required: true, location_name: "CertificateArn"))
7650
+ DisassociateEnclaveCertificateIamRoleRequest.add_member(:role_arn, Shapes::ShapeRef.new(shape: RoleId, required: true, location_name: "RoleArn"))
7614
7651
  DisassociateEnclaveCertificateIamRoleRequest.add_member(:dry_run, Shapes::ShapeRef.new(shape: Boolean, location_name: "DryRun"))
7615
7652
  DisassociateEnclaveCertificateIamRoleRequest.struct_class = Types::DisassociateEnclaveCertificateIamRoleRequest
7616
7653
 
@@ -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
@@ -7649,9 +7696,9 @@ module Aws::EC2
7649
7696
  DisassociateSubnetCidrBlockResult.add_member(:subnet_id, Shapes::ShapeRef.new(shape: String, location_name: "subnetId"))
7650
7697
  DisassociateSubnetCidrBlockResult.struct_class = Types::DisassociateSubnetCidrBlockResult
7651
7698
 
7652
- DisassociateTransitGatewayMulticastDomainRequest.add_member(:transit_gateway_multicast_domain_id, Shapes::ShapeRef.new(shape: TransitGatewayMulticastDomainId, location_name: "TransitGatewayMulticastDomainId"))
7653
- DisassociateTransitGatewayMulticastDomainRequest.add_member(:transit_gateway_attachment_id, Shapes::ShapeRef.new(shape: TransitGatewayAttachmentId, location_name: "TransitGatewayAttachmentId"))
7654
- DisassociateTransitGatewayMulticastDomainRequest.add_member(:subnet_ids, Shapes::ShapeRef.new(shape: TransitGatewaySubnetIdList, location_name: "SubnetIds"))
7699
+ DisassociateTransitGatewayMulticastDomainRequest.add_member(:transit_gateway_multicast_domain_id, Shapes::ShapeRef.new(shape: TransitGatewayMulticastDomainId, required: true, location_name: "TransitGatewayMulticastDomainId"))
7700
+ DisassociateTransitGatewayMulticastDomainRequest.add_member(:transit_gateway_attachment_id, Shapes::ShapeRef.new(shape: TransitGatewayAttachmentId, required: true, location_name: "TransitGatewayAttachmentId"))
7701
+ DisassociateTransitGatewayMulticastDomainRequest.add_member(:subnet_ids, Shapes::ShapeRef.new(shape: TransitGatewaySubnetIdList, required: true, location_name: "SubnetIds"))
7655
7702
  DisassociateTransitGatewayMulticastDomainRequest.add_member(:dry_run, Shapes::ShapeRef.new(shape: Boolean, location_name: "DryRun"))
7656
7703
  DisassociateTransitGatewayMulticastDomainRequest.struct_class = Types::DisassociateTransitGatewayMulticastDomainRequest
7657
7704
 
@@ -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"))
@@ -8368,7 +8417,7 @@ module Aws::EC2
8368
8417
  FpgaInfo.add_member(:total_fpga_memory_in_mi_b, Shapes::ShapeRef.new(shape: totalFpgaMemory, location_name: "totalFpgaMemoryInMiB"))
8369
8418
  FpgaInfo.struct_class = Types::FpgaInfo
8370
8419
 
8371
- GetAssociatedEnclaveCertificateIamRolesRequest.add_member(:certificate_arn, Shapes::ShapeRef.new(shape: CertificateId, location_name: "CertificateArn"))
8420
+ GetAssociatedEnclaveCertificateIamRolesRequest.add_member(:certificate_arn, Shapes::ShapeRef.new(shape: CertificateId, required: true, location_name: "CertificateArn"))
8372
8421
  GetAssociatedEnclaveCertificateIamRolesRequest.add_member(:dry_run, Shapes::ShapeRef.new(shape: Boolean, location_name: "DryRun"))
8373
8422
  GetAssociatedEnclaveCertificateIamRolesRequest.struct_class = Types::GetAssociatedEnclaveCertificateIamRolesRequest
8374
8423
 
@@ -8704,7 +8753,7 @@ module Aws::EC2
8704
8753
  GetTransitGatewayAttachmentPropagationsResult.add_member(:next_token, Shapes::ShapeRef.new(shape: String, location_name: "nextToken"))
8705
8754
  GetTransitGatewayAttachmentPropagationsResult.struct_class = Types::GetTransitGatewayAttachmentPropagationsResult
8706
8755
 
8707
- GetTransitGatewayMulticastDomainAssociationsRequest.add_member(:transit_gateway_multicast_domain_id, Shapes::ShapeRef.new(shape: TransitGatewayMulticastDomainId, location_name: "TransitGatewayMulticastDomainId"))
8756
+ GetTransitGatewayMulticastDomainAssociationsRequest.add_member(:transit_gateway_multicast_domain_id, Shapes::ShapeRef.new(shape: TransitGatewayMulticastDomainId, required: true, location_name: "TransitGatewayMulticastDomainId"))
8708
8757
  GetTransitGatewayMulticastDomainAssociationsRequest.add_member(:filters, Shapes::ShapeRef.new(shape: FilterList, location_name: "Filter"))
8709
8758
  GetTransitGatewayMulticastDomainAssociationsRequest.add_member(:max_results, Shapes::ShapeRef.new(shape: TransitGatewayMaxResults, location_name: "MaxResults"))
8710
8759
  GetTransitGatewayMulticastDomainAssociationsRequest.add_member(:next_token, Shapes::ShapeRef.new(shape: String, location_name: "NextToken"))
@@ -9324,7 +9373,7 @@ module Aws::EC2
9324
9373
 
9325
9374
  InstanceCreditSpecificationListRequest.member = Shapes::ShapeRef.new(shape: InstanceCreditSpecificationRequest, location_name: "item")
9326
9375
 
9327
- InstanceCreditSpecificationRequest.add_member(:instance_id, Shapes::ShapeRef.new(shape: InstanceId, location_name: "InstanceId"))
9376
+ InstanceCreditSpecificationRequest.add_member(:instance_id, Shapes::ShapeRef.new(shape: InstanceId, required: true, location_name: "InstanceId"))
9328
9377
  InstanceCreditSpecificationRequest.add_member(:cpu_credits, Shapes::ShapeRef.new(shape: String, location_name: "CpuCredits"))
9329
9378
  InstanceCreditSpecificationRequest.struct_class = Types::InstanceCreditSpecificationRequest
9330
9379
 
@@ -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"))
@@ -10824,7 +10875,7 @@ module Aws::EC2
10824
10875
  ModifyNetworkInterfaceAttributeRequest.struct_class = Types::ModifyNetworkInterfaceAttributeRequest
10825
10876
 
10826
10877
  ModifyPrivateDnsNameOptionsRequest.add_member(:dry_run, Shapes::ShapeRef.new(shape: Boolean, location_name: "DryRun"))
10827
- ModifyPrivateDnsNameOptionsRequest.add_member(:instance_id, Shapes::ShapeRef.new(shape: InstanceId, location_name: "InstanceId"))
10878
+ ModifyPrivateDnsNameOptionsRequest.add_member(:instance_id, Shapes::ShapeRef.new(shape: InstanceId, required: true, location_name: "InstanceId"))
10828
10879
  ModifyPrivateDnsNameOptionsRequest.add_member(:private_dns_hostname_type, Shapes::ShapeRef.new(shape: HostnameType, location_name: "PrivateDnsHostnameType"))
10829
10880
  ModifyPrivateDnsNameOptionsRequest.add_member(:enable_resource_name_dns_a_record, Shapes::ShapeRef.new(shape: Boolean, location_name: "EnableResourceNameDnsARecord"))
10830
10881
  ModifyPrivateDnsNameOptionsRequest.add_member(:enable_resource_name_dns_aaaa_record, Shapes::ShapeRef.new(shape: Boolean, location_name: "EnableResourceNameDnsAAAARecord"))
@@ -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")
@@ -12028,18 +12083,18 @@ module Aws::EC2
12028
12083
  RegisterInstanceTagAttributeRequest.add_member(:instance_tag_keys, Shapes::ShapeRef.new(shape: InstanceTagKeySet, location_name: "InstanceTagKey"))
12029
12084
  RegisterInstanceTagAttributeRequest.struct_class = Types::RegisterInstanceTagAttributeRequest
12030
12085
 
12031
- RegisterTransitGatewayMulticastGroupMembersRequest.add_member(:transit_gateway_multicast_domain_id, Shapes::ShapeRef.new(shape: TransitGatewayMulticastDomainId, location_name: "TransitGatewayMulticastDomainId"))
12086
+ RegisterTransitGatewayMulticastGroupMembersRequest.add_member(:transit_gateway_multicast_domain_id, Shapes::ShapeRef.new(shape: TransitGatewayMulticastDomainId, required: true, location_name: "TransitGatewayMulticastDomainId"))
12032
12087
  RegisterTransitGatewayMulticastGroupMembersRequest.add_member(:group_ip_address, Shapes::ShapeRef.new(shape: String, location_name: "GroupIpAddress"))
12033
- RegisterTransitGatewayMulticastGroupMembersRequest.add_member(:network_interface_ids, Shapes::ShapeRef.new(shape: TransitGatewayNetworkInterfaceIdList, location_name: "NetworkInterfaceIds"))
12088
+ RegisterTransitGatewayMulticastGroupMembersRequest.add_member(:network_interface_ids, Shapes::ShapeRef.new(shape: TransitGatewayNetworkInterfaceIdList, required: true, location_name: "NetworkInterfaceIds"))
12034
12089
  RegisterTransitGatewayMulticastGroupMembersRequest.add_member(:dry_run, Shapes::ShapeRef.new(shape: Boolean, location_name: "DryRun"))
12035
12090
  RegisterTransitGatewayMulticastGroupMembersRequest.struct_class = Types::RegisterTransitGatewayMulticastGroupMembersRequest
12036
12091
 
12037
12092
  RegisterTransitGatewayMulticastGroupMembersResult.add_member(:registered_multicast_group_members, Shapes::ShapeRef.new(shape: TransitGatewayMulticastRegisteredGroupMembers, location_name: "registeredMulticastGroupMembers"))
12038
12093
  RegisterTransitGatewayMulticastGroupMembersResult.struct_class = Types::RegisterTransitGatewayMulticastGroupMembersResult
12039
12094
 
12040
- RegisterTransitGatewayMulticastGroupSourcesRequest.add_member(:transit_gateway_multicast_domain_id, Shapes::ShapeRef.new(shape: TransitGatewayMulticastDomainId, location_name: "TransitGatewayMulticastDomainId"))
12095
+ RegisterTransitGatewayMulticastGroupSourcesRequest.add_member(:transit_gateway_multicast_domain_id, Shapes::ShapeRef.new(shape: TransitGatewayMulticastDomainId, required: true, location_name: "TransitGatewayMulticastDomainId"))
12041
12096
  RegisterTransitGatewayMulticastGroupSourcesRequest.add_member(:group_ip_address, Shapes::ShapeRef.new(shape: String, location_name: "GroupIpAddress"))
12042
- RegisterTransitGatewayMulticastGroupSourcesRequest.add_member(:network_interface_ids, Shapes::ShapeRef.new(shape: TransitGatewayNetworkInterfaceIdList, location_name: "NetworkInterfaceIds"))
12097
+ RegisterTransitGatewayMulticastGroupSourcesRequest.add_member(:network_interface_ids, Shapes::ShapeRef.new(shape: TransitGatewayNetworkInterfaceIdList, required: true, location_name: "NetworkInterfaceIds"))
12043
12098
  RegisterTransitGatewayMulticastGroupSourcesRequest.add_member(:dry_run, Shapes::ShapeRef.new(shape: Boolean, location_name: "DryRun"))
12044
12099
  RegisterTransitGatewayMulticastGroupSourcesRequest.struct_class = Types::RegisterTransitGatewayMulticastGroupSourcesRequest
12045
12100
 
@@ -12870,7 +12925,7 @@ module Aws::EC2
12870
12925
  SearchLocalGatewayRoutesResult.add_member(:next_token, Shapes::ShapeRef.new(shape: String, location_name: "nextToken"))
12871
12926
  SearchLocalGatewayRoutesResult.struct_class = Types::SearchLocalGatewayRoutesResult
12872
12927
 
12873
- SearchTransitGatewayMulticastGroupsRequest.add_member(:transit_gateway_multicast_domain_id, Shapes::ShapeRef.new(shape: TransitGatewayMulticastDomainId, location_name: "TransitGatewayMulticastDomainId"))
12928
+ SearchTransitGatewayMulticastGroupsRequest.add_member(:transit_gateway_multicast_domain_id, Shapes::ShapeRef.new(shape: TransitGatewayMulticastDomainId, required: true, location_name: "TransitGatewayMulticastDomainId"))
12874
12929
  SearchTransitGatewayMulticastGroupsRequest.add_member(:filters, Shapes::ShapeRef.new(shape: FilterList, location_name: "Filter"))
12875
12930
  SearchTransitGatewayMulticastGroupsRequest.add_member(:max_results, Shapes::ShapeRef.new(shape: TransitGatewayMaxResults, location_name: "MaxResults"))
12876
12931
  SearchTransitGatewayMulticastGroupsRequest.add_member(:next_token, Shapes::ShapeRef.new(shape: String, location_name: "NextToken"))
@@ -12953,7 +13008,7 @@ module Aws::EC2
12953
13008
  SecurityGroupRuleRequest.add_member(:description, Shapes::ShapeRef.new(shape: String, location_name: "Description"))
12954
13009
  SecurityGroupRuleRequest.struct_class = Types::SecurityGroupRuleRequest
12955
13010
 
12956
- SecurityGroupRuleUpdate.add_member(:security_group_rule_id, Shapes::ShapeRef.new(shape: SecurityGroupRuleId, location_name: "SecurityGroupRuleId"))
13011
+ SecurityGroupRuleUpdate.add_member(:security_group_rule_id, Shapes::ShapeRef.new(shape: SecurityGroupRuleId, required: true, location_name: "SecurityGroupRuleId"))
12957
13012
  SecurityGroupRuleUpdate.add_member(:security_group_rule, Shapes::ShapeRef.new(shape: SecurityGroupRuleRequest, location_name: "SecurityGroupRule"))
12958
13013
  SecurityGroupRuleUpdate.struct_class = Types::SecurityGroupRuleUpdate
12959
13014
 
@@ -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)
@@ -1423,6 +1451,9 @@ module Aws::EC2
1423
1451
  #
1424
1452
  # * Magnetic: `standard`
1425
1453
  #
1454
+ # Throughput Optimized HDD (`st1`) and Cold HDD (`sc1`) volumes can't
1455
+ # be used as boot volumes.
1456
+ #
1426
1457
  # For more information, see [Amazon EBS volume types][1] in the *Amazon
1427
1458
  # Elastic Compute Cloud User Guide*.
1428
1459
  #
@@ -1598,7 +1629,7 @@ module Aws::EC2
1598
1629
  # dry_run: false,
1599
1630
  # peer_owner_id: "String",
1600
1631
  # peer_vpc_id: "String",
1601
- # vpc_id: "VpcId",
1632
+ # vpc_id: "VpcId", # required
1602
1633
  # peer_region: "String",
1603
1634
  # tag_specifications: [
1604
1635
  # {
@@ -1625,7 +1656,7 @@ module Aws::EC2
1625
1656
  # @option options [String] :peer_vpc_id
1626
1657
  # The ID of the VPC with which you are creating the VPC peering
1627
1658
  # connection. You must specify this parameter in the request.
1628
- # @option options [String] :vpc_id
1659
+ # @option options [required, String] :vpc_id
1629
1660
  # The ID of the requester VPC. You must specify this parameter in the
1630
1661
  # request.
1631
1662
  # @option options [String] :peer_region
@@ -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
  # {