aws-sdk-ec2 1.178.0 → 1.183.0

Sign up to get free protection for your applications and to get access to all the features.
@@ -161,6 +161,8 @@ module Aws::EC2
161
161
  CancelledSpotInstanceRequest = Shapes::StructureShape.new(name: 'CancelledSpotInstanceRequest')
162
162
  CancelledSpotInstanceRequestList = Shapes::ListShape.new(name: 'CancelledSpotInstanceRequestList')
163
163
  CapacityReservation = Shapes::StructureShape.new(name: 'CapacityReservation')
164
+ CapacityReservationGroup = Shapes::StructureShape.new(name: 'CapacityReservationGroup')
165
+ CapacityReservationGroupSet = Shapes::ListShape.new(name: 'CapacityReservationGroupSet')
164
166
  CapacityReservationId = Shapes::StringShape.new(name: 'CapacityReservationId')
165
167
  CapacityReservationIdSet = Shapes::ListShape.new(name: 'CapacityReservationIdSet')
166
168
  CapacityReservationInstancePlatform = Shapes::StringShape.new(name: 'CapacityReservationInstancePlatform')
@@ -174,6 +176,12 @@ module Aws::EC2
174
176
  CapacityReservationTarget = Shapes::StructureShape.new(name: 'CapacityReservationTarget')
175
177
  CapacityReservationTargetResponse = Shapes::StructureShape.new(name: 'CapacityReservationTargetResponse')
176
178
  CapacityReservationTenancy = Shapes::StringShape.new(name: 'CapacityReservationTenancy')
179
+ CarrierGateway = Shapes::StructureShape.new(name: 'CarrierGateway')
180
+ CarrierGatewayId = Shapes::StringShape.new(name: 'CarrierGatewayId')
181
+ CarrierGatewayIdSet = Shapes::ListShape.new(name: 'CarrierGatewayIdSet')
182
+ CarrierGatewayMaxResults = Shapes::IntegerShape.new(name: 'CarrierGatewayMaxResults')
183
+ CarrierGatewaySet = Shapes::ListShape.new(name: 'CarrierGatewaySet')
184
+ CarrierGatewayState = Shapes::StringShape.new(name: 'CarrierGatewayState')
177
185
  CertificateAuthentication = Shapes::StructureShape.new(name: 'CertificateAuthentication')
178
186
  CertificateAuthenticationRequest = Shapes::StructureShape.new(name: 'CertificateAuthenticationRequest')
179
187
  CidrAuthorizationContext = Shapes::StructureShape.new(name: 'CidrAuthorizationContext')
@@ -246,6 +254,8 @@ module Aws::EC2
246
254
  CpuOptionsRequest = Shapes::StructureShape.new(name: 'CpuOptionsRequest')
247
255
  CreateCapacityReservationRequest = Shapes::StructureShape.new(name: 'CreateCapacityReservationRequest')
248
256
  CreateCapacityReservationResult = Shapes::StructureShape.new(name: 'CreateCapacityReservationResult')
257
+ CreateCarrierGatewayRequest = Shapes::StructureShape.new(name: 'CreateCarrierGatewayRequest')
258
+ CreateCarrierGatewayResult = Shapes::StructureShape.new(name: 'CreateCarrierGatewayResult')
249
259
  CreateClientVpnEndpointRequest = Shapes::StructureShape.new(name: 'CreateClientVpnEndpointRequest')
250
260
  CreateClientVpnEndpointResult = Shapes::StructureShape.new(name: 'CreateClientVpnEndpointResult')
251
261
  CreateClientVpnRouteRequest = Shapes::StructureShape.new(name: 'CreateClientVpnRouteRequest')
@@ -372,6 +382,8 @@ module Aws::EC2
372
382
  DefaultRouteTablePropagationValue = Shapes::StringShape.new(name: 'DefaultRouteTablePropagationValue')
373
383
  DefaultTargetCapacityType = Shapes::StringShape.new(name: 'DefaultTargetCapacityType')
374
384
  DefaultingDhcpOptionsId = Shapes::StringShape.new(name: 'DefaultingDhcpOptionsId')
385
+ DeleteCarrierGatewayRequest = Shapes::StructureShape.new(name: 'DeleteCarrierGatewayRequest')
386
+ DeleteCarrierGatewayResult = Shapes::StructureShape.new(name: 'DeleteCarrierGatewayResult')
375
387
  DeleteClientVpnEndpointRequest = Shapes::StructureShape.new(name: 'DeleteClientVpnEndpointRequest')
376
388
  DeleteClientVpnEndpointResult = Shapes::StructureShape.new(name: 'DeleteClientVpnEndpointResult')
377
389
  DeleteClientVpnRouteRequest = Shapes::StructureShape.new(name: 'DeleteClientVpnRouteRequest')
@@ -487,6 +499,8 @@ module Aws::EC2
487
499
  DescribeCapacityReservationsMaxResults = Shapes::IntegerShape.new(name: 'DescribeCapacityReservationsMaxResults')
488
500
  DescribeCapacityReservationsRequest = Shapes::StructureShape.new(name: 'DescribeCapacityReservationsRequest')
489
501
  DescribeCapacityReservationsResult = Shapes::StructureShape.new(name: 'DescribeCapacityReservationsResult')
502
+ DescribeCarrierGatewaysRequest = Shapes::StructureShape.new(name: 'DescribeCarrierGatewaysRequest')
503
+ DescribeCarrierGatewaysResult = Shapes::StructureShape.new(name: 'DescribeCarrierGatewaysResult')
490
504
  DescribeClassicLinkInstancesMaxResults = Shapes::IntegerShape.new(name: 'DescribeClassicLinkInstancesMaxResults')
491
505
  DescribeClassicLinkInstancesRequest = Shapes::StructureShape.new(name: 'DescribeClassicLinkInstancesRequest')
492
506
  DescribeClassicLinkInstancesResult = Shapes::StructureShape.new(name: 'DescribeClassicLinkInstancesResult')
@@ -961,6 +975,9 @@ module Aws::EC2
961
975
  GetEbsDefaultKmsKeyIdResult = Shapes::StructureShape.new(name: 'GetEbsDefaultKmsKeyIdResult')
962
976
  GetEbsEncryptionByDefaultRequest = Shapes::StructureShape.new(name: 'GetEbsEncryptionByDefaultRequest')
963
977
  GetEbsEncryptionByDefaultResult = Shapes::StructureShape.new(name: 'GetEbsEncryptionByDefaultResult')
978
+ GetGroupsForCapacityReservationRequest = Shapes::StructureShape.new(name: 'GetGroupsForCapacityReservationRequest')
979
+ GetGroupsForCapacityReservationRequestMaxResults = Shapes::IntegerShape.new(name: 'GetGroupsForCapacityReservationRequestMaxResults')
980
+ GetGroupsForCapacityReservationResult = Shapes::StructureShape.new(name: 'GetGroupsForCapacityReservationResult')
964
981
  GetHostReservationPurchasePreviewRequest = Shapes::StructureShape.new(name: 'GetHostReservationPurchasePreviewRequest')
965
982
  GetHostReservationPurchasePreviewResult = Shapes::StructureShape.new(name: 'GetHostReservationPurchasePreviewResult')
966
983
  GetLaunchTemplateDataRequest = Shapes::StructureShape.new(name: 'GetLaunchTemplateDataRequest')
@@ -2138,6 +2155,7 @@ module Aws::EC2
2138
2155
  Address.add_member(:network_border_group, Shapes::ShapeRef.new(shape: String, location_name: "networkBorderGroup"))
2139
2156
  Address.add_member(:customer_owned_ip, Shapes::ShapeRef.new(shape: String, location_name: "customerOwnedIp"))
2140
2157
  Address.add_member(:customer_owned_ipv_4_pool, Shapes::ShapeRef.new(shape: String, location_name: "customerOwnedIpv4Pool"))
2158
+ Address.add_member(:carrier_ip, Shapes::ShapeRef.new(shape: String, location_name: "carrierIp"))
2141
2159
  Address.struct_class = Types::Address
2142
2160
 
2143
2161
  AddressList.member = Shapes::ShapeRef.new(shape: Address, location_name: "item")
@@ -2164,6 +2182,7 @@ module Aws::EC2
2164
2182
  AllocateAddressResult.add_member(:domain, Shapes::ShapeRef.new(shape: DomainType, location_name: "domain"))
2165
2183
  AllocateAddressResult.add_member(:customer_owned_ip, Shapes::ShapeRef.new(shape: String, location_name: "customerOwnedIp"))
2166
2184
  AllocateAddressResult.add_member(:customer_owned_ipv_4_pool, Shapes::ShapeRef.new(shape: String, location_name: "customerOwnedIpv4Pool"))
2185
+ AllocateAddressResult.add_member(:carrier_ip, Shapes::ShapeRef.new(shape: String, location_name: "carrierIp"))
2167
2186
  AllocateAddressResult.struct_class = Types::AllocateAddressResult
2168
2187
 
2169
2188
  AllocateHostsRequest.add_member(:auto_placement, Shapes::ShapeRef.new(shape: AutoPlacement, location_name: "autoPlacement"))
@@ -2578,6 +2597,12 @@ module Aws::EC2
2578
2597
  CapacityReservation.add_member(:tags, Shapes::ShapeRef.new(shape: TagList, location_name: "tagSet"))
2579
2598
  CapacityReservation.struct_class = Types::CapacityReservation
2580
2599
 
2600
+ CapacityReservationGroup.add_member(:group_arn, Shapes::ShapeRef.new(shape: String, location_name: "groupArn"))
2601
+ CapacityReservationGroup.add_member(:owner_id, Shapes::ShapeRef.new(shape: String, location_name: "ownerId"))
2602
+ CapacityReservationGroup.struct_class = Types::CapacityReservationGroup
2603
+
2604
+ CapacityReservationGroupSet.member = Shapes::ShapeRef.new(shape: CapacityReservationGroup, location_name: "item")
2605
+
2581
2606
  CapacityReservationIdSet.member = Shapes::ShapeRef.new(shape: CapacityReservationId, location_name: "item")
2582
2607
 
2583
2608
  CapacityReservationOptions.add_member(:usage_strategy, Shapes::ShapeRef.new(shape: FleetCapacityReservationUsageStrategy, location_name: "usageStrategy"))
@@ -2597,11 +2622,24 @@ module Aws::EC2
2597
2622
  CapacityReservationSpecificationResponse.struct_class = Types::CapacityReservationSpecificationResponse
2598
2623
 
2599
2624
  CapacityReservationTarget.add_member(:capacity_reservation_id, Shapes::ShapeRef.new(shape: CapacityReservationId, location_name: "CapacityReservationId"))
2625
+ CapacityReservationTarget.add_member(:capacity_reservation_resource_group_arn, Shapes::ShapeRef.new(shape: String, location_name: "CapacityReservationResourceGroupArn"))
2600
2626
  CapacityReservationTarget.struct_class = Types::CapacityReservationTarget
2601
2627
 
2602
2628
  CapacityReservationTargetResponse.add_member(:capacity_reservation_id, Shapes::ShapeRef.new(shape: String, location_name: "capacityReservationId"))
2629
+ CapacityReservationTargetResponse.add_member(:capacity_reservation_resource_group_arn, Shapes::ShapeRef.new(shape: String, location_name: "capacityReservationResourceGroupArn"))
2603
2630
  CapacityReservationTargetResponse.struct_class = Types::CapacityReservationTargetResponse
2604
2631
 
2632
+ CarrierGateway.add_member(:carrier_gateway_id, Shapes::ShapeRef.new(shape: CarrierGatewayId, location_name: "carrierGatewayId"))
2633
+ CarrierGateway.add_member(:vpc_id, Shapes::ShapeRef.new(shape: VpcId, location_name: "vpcId"))
2634
+ CarrierGateway.add_member(:state, Shapes::ShapeRef.new(shape: CarrierGatewayState, location_name: "state"))
2635
+ CarrierGateway.add_member(:owner_id, Shapes::ShapeRef.new(shape: String, location_name: "ownerId"))
2636
+ CarrierGateway.add_member(:tags, Shapes::ShapeRef.new(shape: TagList, location_name: "tagSet"))
2637
+ CarrierGateway.struct_class = Types::CarrierGateway
2638
+
2639
+ CarrierGatewayIdSet.member = Shapes::ShapeRef.new(shape: CarrierGatewayId)
2640
+
2641
+ CarrierGatewaySet.member = Shapes::ShapeRef.new(shape: CarrierGateway, location_name: "item")
2642
+
2605
2643
  CertificateAuthentication.add_member(:client_root_certificate_chain, Shapes::ShapeRef.new(shape: String, location_name: "clientRootCertificateChain"))
2606
2644
  CertificateAuthentication.struct_class = Types::CertificateAuthentication
2607
2645
 
@@ -2864,6 +2902,15 @@ module Aws::EC2
2864
2902
  CreateCapacityReservationResult.add_member(:capacity_reservation, Shapes::ShapeRef.new(shape: CapacityReservation, location_name: "capacityReservation"))
2865
2903
  CreateCapacityReservationResult.struct_class = Types::CreateCapacityReservationResult
2866
2904
 
2905
+ CreateCarrierGatewayRequest.add_member(:vpc_id, Shapes::ShapeRef.new(shape: VpcId, required: true, location_name: "VpcId"))
2906
+ CreateCarrierGatewayRequest.add_member(:tag_specifications, Shapes::ShapeRef.new(shape: TagSpecificationList, location_name: "TagSpecification"))
2907
+ CreateCarrierGatewayRequest.add_member(:dry_run, Shapes::ShapeRef.new(shape: Boolean, location_name: "DryRun"))
2908
+ CreateCarrierGatewayRequest.add_member(:client_token, Shapes::ShapeRef.new(shape: String, location_name: "ClientToken", metadata: {"idempotencyToken"=>true}))
2909
+ CreateCarrierGatewayRequest.struct_class = Types::CreateCarrierGatewayRequest
2910
+
2911
+ CreateCarrierGatewayResult.add_member(:carrier_gateway, Shapes::ShapeRef.new(shape: CarrierGateway, location_name: "carrierGateway"))
2912
+ CreateCarrierGatewayResult.struct_class = Types::CreateCarrierGatewayResult
2913
+
2867
2914
  CreateClientVpnEndpointRequest.add_member(:client_cidr_block, Shapes::ShapeRef.new(shape: String, required: true, location_name: "ClientCidrBlock"))
2868
2915
  CreateClientVpnEndpointRequest.add_member(:server_certificate_arn, Shapes::ShapeRef.new(shape: String, required: true, location_name: "ServerCertificateArn"))
2869
2916
  CreateClientVpnEndpointRequest.add_member(:authentication_options, Shapes::ShapeRef.new(shape: ClientVpnAuthenticationRequestList, required: true, location_name: "Authentication"))
@@ -2900,6 +2947,7 @@ module Aws::EC2
2900
2947
  CreateCustomerGatewayRequest.add_member(:public_ip, Shapes::ShapeRef.new(shape: String, location_name: "IpAddress"))
2901
2948
  CreateCustomerGatewayRequest.add_member(:certificate_arn, Shapes::ShapeRef.new(shape: String, location_name: "CertificateArn"))
2902
2949
  CreateCustomerGatewayRequest.add_member(:type, Shapes::ShapeRef.new(shape: GatewayType, required: true, location_name: "Type"))
2950
+ CreateCustomerGatewayRequest.add_member(:tag_specifications, Shapes::ShapeRef.new(shape: TagSpecificationList, location_name: "TagSpecification"))
2903
2951
  CreateCustomerGatewayRequest.add_member(:device_name, Shapes::ShapeRef.new(shape: String, location_name: "DeviceName"))
2904
2952
  CreateCustomerGatewayRequest.add_member(:dry_run, Shapes::ShapeRef.new(shape: Boolean, location_name: "dryRun"))
2905
2953
  CreateCustomerGatewayRequest.struct_class = Types::CreateCustomerGatewayRequest
@@ -3181,6 +3229,7 @@ module Aws::EC2
3181
3229
  CreateRouteRequest.add_member(:nat_gateway_id, Shapes::ShapeRef.new(shape: NatGatewayId, location_name: "natGatewayId"))
3182
3230
  CreateRouteRequest.add_member(:transit_gateway_id, Shapes::ShapeRef.new(shape: TransitGatewayId, location_name: "TransitGatewayId"))
3183
3231
  CreateRouteRequest.add_member(:local_gateway_id, Shapes::ShapeRef.new(shape: LocalGatewayId, location_name: "LocalGatewayId"))
3232
+ CreateRouteRequest.add_member(:carrier_gateway_id, Shapes::ShapeRef.new(shape: CarrierGatewayId, location_name: "CarrierGatewayId"))
3184
3233
  CreateRouteRequest.add_member(:network_interface_id, Shapes::ShapeRef.new(shape: NetworkInterfaceId, location_name: "networkInterfaceId"))
3185
3234
  CreateRouteRequest.add_member(:route_table_id, Shapes::ShapeRef.new(shape: RouteTableId, required: true, location_name: "routeTableId"))
3186
3235
  CreateRouteRequest.add_member(:vpc_peering_connection_id, Shapes::ShapeRef.new(shape: VpcPeeringConnectionId, location_name: "vpcPeeringConnectionId"))
@@ -3461,6 +3510,7 @@ module Aws::EC2
3461
3510
  CreateVpnConnectionRequest.add_member(:transit_gateway_id, Shapes::ShapeRef.new(shape: TransitGatewayId, location_name: "TransitGatewayId"))
3462
3511
  CreateVpnConnectionRequest.add_member(:dry_run, Shapes::ShapeRef.new(shape: Boolean, location_name: "dryRun"))
3463
3512
  CreateVpnConnectionRequest.add_member(:options, Shapes::ShapeRef.new(shape: VpnConnectionOptionsSpecification, location_name: "options"))
3513
+ CreateVpnConnectionRequest.add_member(:tag_specifications, Shapes::ShapeRef.new(shape: TagSpecificationList, location_name: "TagSpecification"))
3464
3514
  CreateVpnConnectionRequest.struct_class = Types::CreateVpnConnectionRequest
3465
3515
 
3466
3516
  CreateVpnConnectionResult.add_member(:vpn_connection, Shapes::ShapeRef.new(shape: VpnConnection, location_name: "vpnConnection"))
@@ -3472,6 +3522,7 @@ module Aws::EC2
3472
3522
 
3473
3523
  CreateVpnGatewayRequest.add_member(:availability_zone, Shapes::ShapeRef.new(shape: String, location_name: "AvailabilityZone"))
3474
3524
  CreateVpnGatewayRequest.add_member(:type, Shapes::ShapeRef.new(shape: GatewayType, required: true, location_name: "Type"))
3525
+ CreateVpnGatewayRequest.add_member(:tag_specifications, Shapes::ShapeRef.new(shape: TagSpecificationList, location_name: "TagSpecification"))
3475
3526
  CreateVpnGatewayRequest.add_member(:amazon_side_asn, Shapes::ShapeRef.new(shape: Long, location_name: "AmazonSideAsn"))
3476
3527
  CreateVpnGatewayRequest.add_member(:dry_run, Shapes::ShapeRef.new(shape: Boolean, location_name: "dryRun"))
3477
3528
  CreateVpnGatewayRequest.struct_class = Types::CreateVpnGatewayRequest
@@ -3499,6 +3550,13 @@ module Aws::EC2
3499
3550
 
3500
3551
  CustomerGatewayList.member = Shapes::ShapeRef.new(shape: CustomerGateway, location_name: "item")
3501
3552
 
3553
+ DeleteCarrierGatewayRequest.add_member(:carrier_gateway_id, Shapes::ShapeRef.new(shape: CarrierGatewayId, required: true, location_name: "CarrierGatewayId"))
3554
+ DeleteCarrierGatewayRequest.add_member(:dry_run, Shapes::ShapeRef.new(shape: Boolean, location_name: "DryRun"))
3555
+ DeleteCarrierGatewayRequest.struct_class = Types::DeleteCarrierGatewayRequest
3556
+
3557
+ DeleteCarrierGatewayResult.add_member(:carrier_gateway, Shapes::ShapeRef.new(shape: CarrierGateway, location_name: "carrierGateway"))
3558
+ DeleteCarrierGatewayResult.struct_class = Types::DeleteCarrierGatewayResult
3559
+
3502
3560
  DeleteClientVpnEndpointRequest.add_member(:client_vpn_endpoint_id, Shapes::ShapeRef.new(shape: ClientVpnEndpointId, required: true, location_name: "ClientVpnEndpointId"))
3503
3561
  DeleteClientVpnEndpointRequest.add_member(:dry_run, Shapes::ShapeRef.new(shape: Boolean, location_name: "DryRun"))
3504
3562
  DeleteClientVpnEndpointRequest.struct_class = Types::DeleteClientVpnEndpointRequest
@@ -3933,6 +3991,17 @@ module Aws::EC2
3933
3991
  DescribeCapacityReservationsResult.add_member(:capacity_reservations, Shapes::ShapeRef.new(shape: CapacityReservationSet, location_name: "capacityReservationSet"))
3934
3992
  DescribeCapacityReservationsResult.struct_class = Types::DescribeCapacityReservationsResult
3935
3993
 
3994
+ DescribeCarrierGatewaysRequest.add_member(:carrier_gateway_ids, Shapes::ShapeRef.new(shape: CarrierGatewayIdSet, location_name: "CarrierGatewayId"))
3995
+ DescribeCarrierGatewaysRequest.add_member(:filters, Shapes::ShapeRef.new(shape: FilterList, location_name: "Filter"))
3996
+ DescribeCarrierGatewaysRequest.add_member(:max_results, Shapes::ShapeRef.new(shape: CarrierGatewayMaxResults, location_name: "MaxResults"))
3997
+ DescribeCarrierGatewaysRequest.add_member(:next_token, Shapes::ShapeRef.new(shape: String, location_name: "NextToken"))
3998
+ DescribeCarrierGatewaysRequest.add_member(:dry_run, Shapes::ShapeRef.new(shape: Boolean, location_name: "DryRun"))
3999
+ DescribeCarrierGatewaysRequest.struct_class = Types::DescribeCarrierGatewaysRequest
4000
+
4001
+ DescribeCarrierGatewaysResult.add_member(:carrier_gateways, Shapes::ShapeRef.new(shape: CarrierGatewaySet, location_name: "carrierGatewaySet"))
4002
+ DescribeCarrierGatewaysResult.add_member(:next_token, Shapes::ShapeRef.new(shape: String, location_name: "nextToken"))
4003
+ DescribeCarrierGatewaysResult.struct_class = Types::DescribeCarrierGatewaysResult
4004
+
3936
4005
  DescribeClassicLinkInstancesRequest.add_member(:filters, Shapes::ShapeRef.new(shape: FilterList, location_name: "Filter"))
3937
4006
  DescribeClassicLinkInstancesRequest.add_member(:dry_run, Shapes::ShapeRef.new(shape: Boolean, location_name: "dryRun"))
3938
4007
  DescribeClassicLinkInstancesRequest.add_member(:instance_ids, Shapes::ShapeRef.new(shape: InstanceIdStringList, location_name: "InstanceId"))
@@ -5824,6 +5893,16 @@ module Aws::EC2
5824
5893
  GetEbsEncryptionByDefaultResult.add_member(:ebs_encryption_by_default, Shapes::ShapeRef.new(shape: Boolean, location_name: "ebsEncryptionByDefault"))
5825
5894
  GetEbsEncryptionByDefaultResult.struct_class = Types::GetEbsEncryptionByDefaultResult
5826
5895
 
5896
+ GetGroupsForCapacityReservationRequest.add_member(:capacity_reservation_id, Shapes::ShapeRef.new(shape: CapacityReservationId, required: true, location_name: "CapacityReservationId"))
5897
+ GetGroupsForCapacityReservationRequest.add_member(:next_token, Shapes::ShapeRef.new(shape: String, location_name: "NextToken"))
5898
+ GetGroupsForCapacityReservationRequest.add_member(:max_results, Shapes::ShapeRef.new(shape: GetGroupsForCapacityReservationRequestMaxResults, location_name: "MaxResults"))
5899
+ GetGroupsForCapacityReservationRequest.add_member(:dry_run, Shapes::ShapeRef.new(shape: Boolean, location_name: "DryRun"))
5900
+ GetGroupsForCapacityReservationRequest.struct_class = Types::GetGroupsForCapacityReservationRequest
5901
+
5902
+ GetGroupsForCapacityReservationResult.add_member(:next_token, Shapes::ShapeRef.new(shape: String, location_name: "nextToken"))
5903
+ GetGroupsForCapacityReservationResult.add_member(:capacity_reservation_groups, Shapes::ShapeRef.new(shape: CapacityReservationGroupSet, location_name: "capacityReservationGroupSet"))
5904
+ GetGroupsForCapacityReservationResult.struct_class = Types::GetGroupsForCapacityReservationResult
5905
+
5827
5906
  GetHostReservationPurchasePreviewRequest.add_member(:host_id_set, Shapes::ShapeRef.new(shape: RequestHostIdSet, required: true, location_name: "HostIdSet"))
5828
5907
  GetHostReservationPurchasePreviewRequest.add_member(:offering_id, Shapes::ShapeRef.new(shape: OfferingId, required: true, location_name: "OfferingId"))
5829
5908
  GetHostReservationPurchasePreviewRequest.struct_class = Types::GetHostReservationPurchasePreviewRequest
@@ -6482,6 +6561,7 @@ module Aws::EC2
6482
6561
  InstanceNetworkInterface.add_member(:interface_type, Shapes::ShapeRef.new(shape: String, location_name: "interfaceType"))
6483
6562
  InstanceNetworkInterface.struct_class = Types::InstanceNetworkInterface
6484
6563
 
6564
+ InstanceNetworkInterfaceAssociation.add_member(:carrier_ip, Shapes::ShapeRef.new(shape: String, location_name: "carrierIp"))
6485
6565
  InstanceNetworkInterfaceAssociation.add_member(:ip_owner_id, Shapes::ShapeRef.new(shape: String, location_name: "ipOwnerId"))
6486
6566
  InstanceNetworkInterfaceAssociation.add_member(:public_dns_name, Shapes::ShapeRef.new(shape: String, location_name: "publicDnsName"))
6487
6567
  InstanceNetworkInterfaceAssociation.add_member(:public_ip, Shapes::ShapeRef.new(shape: String, location_name: "publicIp"))
@@ -6508,6 +6588,7 @@ module Aws::EC2
6508
6588
  InstanceNetworkInterfaceSpecification.add_member(:private_ip_addresses, Shapes::ShapeRef.new(shape: PrivateIpAddressSpecificationList, location_name: "privateIpAddressesSet", metadata: {"queryName"=>"PrivateIpAddresses"}))
6509
6589
  InstanceNetworkInterfaceSpecification.add_member(:secondary_private_ip_address_count, Shapes::ShapeRef.new(shape: Integer, location_name: "secondaryPrivateIpAddressCount"))
6510
6590
  InstanceNetworkInterfaceSpecification.add_member(:subnet_id, Shapes::ShapeRef.new(shape: String, location_name: "subnetId"))
6591
+ InstanceNetworkInterfaceSpecification.add_member(:associate_carrier_ip_address, Shapes::ShapeRef.new(shape: Boolean, location_name: "AssociateCarrierIpAddress"))
6511
6592
  InstanceNetworkInterfaceSpecification.add_member(:interface_type, Shapes::ShapeRef.new(shape: String, location_name: "InterfaceType"))
6512
6593
  InstanceNetworkInterfaceSpecification.struct_class = Types::InstanceNetworkInterfaceSpecification
6513
6594
 
@@ -6852,6 +6933,7 @@ module Aws::EC2
6852
6933
  LaunchTemplateInstanceMetadataOptionsRequest.add_member(:http_endpoint, Shapes::ShapeRef.new(shape: LaunchTemplateInstanceMetadataEndpointState, location_name: "HttpEndpoint"))
6853
6934
  LaunchTemplateInstanceMetadataOptionsRequest.struct_class = Types::LaunchTemplateInstanceMetadataOptionsRequest
6854
6935
 
6936
+ LaunchTemplateInstanceNetworkInterfaceSpecification.add_member(:associate_carrier_ip_address, Shapes::ShapeRef.new(shape: Boolean, location_name: "associateCarrierIpAddress"))
6855
6937
  LaunchTemplateInstanceNetworkInterfaceSpecification.add_member(:associate_public_ip_address, Shapes::ShapeRef.new(shape: Boolean, location_name: "associatePublicIpAddress"))
6856
6938
  LaunchTemplateInstanceNetworkInterfaceSpecification.add_member(:delete_on_termination, Shapes::ShapeRef.new(shape: Boolean, location_name: "deleteOnTermination"))
6857
6939
  LaunchTemplateInstanceNetworkInterfaceSpecification.add_member(:description, Shapes::ShapeRef.new(shape: String, location_name: "description"))
@@ -6869,6 +6951,7 @@ module Aws::EC2
6869
6951
 
6870
6952
  LaunchTemplateInstanceNetworkInterfaceSpecificationList.member = Shapes::ShapeRef.new(shape: LaunchTemplateInstanceNetworkInterfaceSpecification, location_name: "item")
6871
6953
 
6954
+ LaunchTemplateInstanceNetworkInterfaceSpecificationRequest.add_member(:associate_carrier_ip_address, Shapes::ShapeRef.new(shape: Boolean, location_name: "AssociateCarrierIpAddress"))
6872
6955
  LaunchTemplateInstanceNetworkInterfaceSpecificationRequest.add_member(:associate_public_ip_address, Shapes::ShapeRef.new(shape: Boolean, location_name: "AssociatePublicIpAddress"))
6873
6956
  LaunchTemplateInstanceNetworkInterfaceSpecificationRequest.add_member(:delete_on_termination, Shapes::ShapeRef.new(shape: Boolean, location_name: "DeleteOnTermination"))
6874
6957
  LaunchTemplateInstanceNetworkInterfaceSpecificationRequest.add_member(:description, Shapes::ShapeRef.new(shape: String, location_name: "Description"))
@@ -7638,6 +7721,7 @@ module Aws::EC2
7638
7721
  NetworkInterfaceAssociation.add_member(:ip_owner_id, Shapes::ShapeRef.new(shape: String, location_name: "ipOwnerId"))
7639
7722
  NetworkInterfaceAssociation.add_member(:public_dns_name, Shapes::ShapeRef.new(shape: String, location_name: "publicDnsName"))
7640
7723
  NetworkInterfaceAssociation.add_member(:public_ip, Shapes::ShapeRef.new(shape: String, location_name: "publicIp"))
7724
+ NetworkInterfaceAssociation.add_member(:carrier_ip, Shapes::ShapeRef.new(shape: String, location_name: "carrierIp"))
7641
7725
  NetworkInterfaceAssociation.struct_class = Types::NetworkInterfaceAssociation
7642
7726
 
7643
7727
  NetworkInterfaceAttachment.add_member(:attach_time, Shapes::ShapeRef.new(shape: DateTime, location_name: "attachTime"))
@@ -8178,6 +8262,7 @@ module Aws::EC2
8178
8262
  ReplaceRouteRequest.add_member(:nat_gateway_id, Shapes::ShapeRef.new(shape: NatGatewayId, location_name: "natGatewayId"))
8179
8263
  ReplaceRouteRequest.add_member(:transit_gateway_id, Shapes::ShapeRef.new(shape: TransitGatewayId, location_name: "TransitGatewayId"))
8180
8264
  ReplaceRouteRequest.add_member(:local_gateway_id, Shapes::ShapeRef.new(shape: LocalGatewayId, location_name: "LocalGatewayId"))
8265
+ ReplaceRouteRequest.add_member(:carrier_gateway_id, Shapes::ShapeRef.new(shape: CarrierGatewayId, location_name: "CarrierGatewayId"))
8181
8266
  ReplaceRouteRequest.add_member(:network_interface_id, Shapes::ShapeRef.new(shape: NetworkInterfaceId, location_name: "networkInterfaceId"))
8182
8267
  ReplaceRouteRequest.add_member(:route_table_id, Shapes::ShapeRef.new(shape: RouteTableId, required: true, location_name: "routeTableId"))
8183
8268
  ReplaceRouteRequest.add_member(:vpc_peering_connection_id, Shapes::ShapeRef.new(shape: VpcPeeringConnectionId, location_name: "vpcPeeringConnectionId"))
@@ -8550,6 +8635,7 @@ module Aws::EC2
8550
8635
  Route.add_member(:nat_gateway_id, Shapes::ShapeRef.new(shape: String, location_name: "natGatewayId"))
8551
8636
  Route.add_member(:transit_gateway_id, Shapes::ShapeRef.new(shape: String, location_name: "transitGatewayId"))
8552
8637
  Route.add_member(:local_gateway_id, Shapes::ShapeRef.new(shape: String, location_name: "localGatewayId"))
8638
+ Route.add_member(:carrier_gateway_id, Shapes::ShapeRef.new(shape: CarrierGatewayId, location_name: "carrierGatewayId"))
8553
8639
  Route.add_member(:network_interface_id, Shapes::ShapeRef.new(shape: String, location_name: "networkInterfaceId"))
8554
8640
  Route.add_member(:origin, Shapes::ShapeRef.new(shape: RouteOrigin, location_name: "origin"))
8555
8641
  Route.add_member(:state, Shapes::ShapeRef.new(shape: RouteState, location_name: "state"))
@@ -10353,6 +10439,14 @@ module Aws::EC2
10353
10439
  o.output = Shapes::ShapeRef.new(shape: CreateCapacityReservationResult)
10354
10440
  end)
10355
10441
 
10442
+ api.add_operation(:create_carrier_gateway, Seahorse::Model::Operation.new.tap do |o|
10443
+ o.name = "CreateCarrierGateway"
10444
+ o.http_method = "POST"
10445
+ o.http_request_uri = "/"
10446
+ o.input = Shapes::ShapeRef.new(shape: CreateCarrierGatewayRequest)
10447
+ o.output = Shapes::ShapeRef.new(shape: CreateCarrierGatewayResult)
10448
+ end)
10449
+
10356
10450
  api.add_operation(:create_client_vpn_endpoint, Seahorse::Model::Operation.new.tap do |o|
10357
10451
  o.name = "CreateClientVpnEndpoint"
10358
10452
  o.http_method = "POST"
@@ -10777,6 +10871,14 @@ module Aws::EC2
10777
10871
  o.output = Shapes::ShapeRef.new(shape: CreateVpnGatewayResult)
10778
10872
  end)
10779
10873
 
10874
+ api.add_operation(:delete_carrier_gateway, Seahorse::Model::Operation.new.tap do |o|
10875
+ o.name = "DeleteCarrierGateway"
10876
+ o.http_method = "POST"
10877
+ o.http_request_uri = "/"
10878
+ o.input = Shapes::ShapeRef.new(shape: DeleteCarrierGatewayRequest)
10879
+ o.output = Shapes::ShapeRef.new(shape: DeleteCarrierGatewayResult)
10880
+ end)
10881
+
10780
10882
  api.add_operation(:delete_client_vpn_endpoint, Seahorse::Model::Operation.new.tap do |o|
10781
10883
  o.name = "DeleteClientVpnEndpoint"
10782
10884
  o.http_method = "POST"
@@ -11269,6 +11371,20 @@ module Aws::EC2
11269
11371
  )
11270
11372
  end)
11271
11373
 
11374
+ api.add_operation(:describe_carrier_gateways, Seahorse::Model::Operation.new.tap do |o|
11375
+ o.name = "DescribeCarrierGateways"
11376
+ o.http_method = "POST"
11377
+ o.http_request_uri = "/"
11378
+ o.input = Shapes::ShapeRef.new(shape: DescribeCarrierGatewaysRequest)
11379
+ o.output = Shapes::ShapeRef.new(shape: DescribeCarrierGatewaysResult)
11380
+ o[:pager] = Aws::Pager.new(
11381
+ limit_key: "max_results",
11382
+ tokens: {
11383
+ "next_token" => "next_token"
11384
+ }
11385
+ )
11386
+ end)
11387
+
11272
11388
  api.add_operation(:describe_classic_link_instances, Seahorse::Model::Operation.new.tap do |o|
11273
11389
  o.name = "DescribeClassicLinkInstances"
11274
11390
  o.http_method = "POST"
@@ -12896,6 +13012,20 @@ module Aws::EC2
12896
13012
  o.output = Shapes::ShapeRef.new(shape: GetEbsEncryptionByDefaultResult)
12897
13013
  end)
12898
13014
 
13015
+ api.add_operation(:get_groups_for_capacity_reservation, Seahorse::Model::Operation.new.tap do |o|
13016
+ o.name = "GetGroupsForCapacityReservation"
13017
+ o.http_method = "POST"
13018
+ o.http_request_uri = "/"
13019
+ o.input = Shapes::ShapeRef.new(shape: GetGroupsForCapacityReservationRequest)
13020
+ o.output = Shapes::ShapeRef.new(shape: GetGroupsForCapacityReservationResult)
13021
+ o[:pager] = Aws::Pager.new(
13022
+ limit_key: "max_results",
13023
+ tokens: {
13024
+ "next_token" => "next_token"
13025
+ }
13026
+ )
13027
+ end)
13028
+
12899
13029
  api.add_operation(:get_host_reservation_purchase_preview, Seahorse::Model::Operation.new.tap do |o|
12900
13030
  o.name = "GetHostReservationPurchasePreview"
12901
13031
  o.http_method = "POST"
@@ -126,7 +126,11 @@ module Aws::EC2
126
126
  data[:public_dns_name]
127
127
  end
128
128
 
129
- # The public IPv4 address assigned to the instance, if applicable.
129
+ # The public IPv4 address, or the Carrier IP address assigned to the
130
+ # instance, if applicable.
131
+ #
132
+ # A Carrier IP address only applies to an instance launched in a subnet
133
+ # associated with a Wavelength Zone.
130
134
  # @return [String]
131
135
  def public_ip_address
132
136
  data[:public_ip_address]
@@ -1492,8 +1496,8 @@ module Aws::EC2
1492
1496
  # * `instance-id` - The ID of the instance the address is associated
1493
1497
  # with, if any.
1494
1498
  #
1495
- # * `network-border-group` - The location from where the IP address is
1496
- # advertised.
1499
+ # * `network-border-group` - A unique set of Availability Zones, Local
1500
+ # Zones, or Wavelength Zones from where AWS advertises IP addresses.
1497
1501
  #
1498
1502
  # * `network-interface-id` - \[EC2-VPC\] The ID of the network interface
1499
1503
  # that the address is associated with, if any.
@@ -1503,7 +1507,7 @@ module Aws::EC2
1503
1507
  # * `private-ip-address` - \[EC2-VPC\] The private IP address associated
1504
1508
  # with the Elastic IP address.
1505
1509
  #
1506
- # * `public-ip` - The Elastic IP address.
1510
+ # * `public-ip` - The Elastic IP address, or the carrier IP address.
1507
1511
  #
1508
1512
  # * `tag`\:<key> - The key/value combination of a tag assigned to
1509
1513
  # the resource. Use the tag key in the filter name and the tag value
@@ -34,6 +34,12 @@ module Aws::EC2
34
34
  @id
35
35
  end
36
36
 
37
+ # The carrier IP address associated with the network interface.
38
+ # @return [String]
39
+ def carrier_ip
40
+ data[:carrier_ip]
41
+ end
42
+
37
43
  # The ID of the owner of the Elastic IP address.
38
44
  # @return [String]
39
45
  def ip_owner_id
@@ -97,7 +97,7 @@ module Aws::EC2
97
97
  # },
98
98
  # ],
99
99
  # image_id: "ImageId",
100
- # instance_type: "t1.micro", # accepts t1.micro, t2.nano, t2.micro, t2.small, t2.medium, t2.large, t2.xlarge, t2.2xlarge, t3.nano, t3.micro, t3.small, t3.medium, t3.large, t3.xlarge, t3.2xlarge, t3a.nano, t3a.micro, t3a.small, t3a.medium, t3a.large, t3a.xlarge, t3a.2xlarge, m1.small, m1.medium, m1.large, m1.xlarge, m3.medium, m3.large, m3.xlarge, m3.2xlarge, m4.large, m4.xlarge, m4.2xlarge, m4.4xlarge, m4.10xlarge, m4.16xlarge, m2.xlarge, m2.2xlarge, m2.4xlarge, cr1.8xlarge, r3.large, r3.xlarge, r3.2xlarge, r3.4xlarge, r3.8xlarge, r4.large, r4.xlarge, r4.2xlarge, r4.4xlarge, r4.8xlarge, r4.16xlarge, r5.large, r5.xlarge, r5.2xlarge, r5.4xlarge, r5.8xlarge, r5.12xlarge, r5.16xlarge, r5.24xlarge, r5.metal, r5a.large, r5a.xlarge, r5a.2xlarge, r5a.4xlarge, r5a.8xlarge, r5a.12xlarge, r5a.16xlarge, r5a.24xlarge, r5d.large, r5d.xlarge, r5d.2xlarge, r5d.4xlarge, r5d.8xlarge, r5d.12xlarge, r5d.16xlarge, r5d.24xlarge, r5d.metal, r5ad.large, r5ad.xlarge, r5ad.2xlarge, r5ad.4xlarge, r5ad.8xlarge, r5ad.12xlarge, r5ad.16xlarge, r5ad.24xlarge, r6g.metal, r6g.medium, r6g.large, r6g.xlarge, r6g.2xlarge, r6g.4xlarge, r6g.8xlarge, r6g.12xlarge, r6g.16xlarge, x1.16xlarge, x1.32xlarge, x1e.xlarge, x1e.2xlarge, x1e.4xlarge, x1e.8xlarge, x1e.16xlarge, x1e.32xlarge, i2.xlarge, i2.2xlarge, i2.4xlarge, i2.8xlarge, i3.large, i3.xlarge, i3.2xlarge, i3.4xlarge, i3.8xlarge, i3.16xlarge, i3.metal, i3en.large, i3en.xlarge, i3en.2xlarge, i3en.3xlarge, i3en.6xlarge, i3en.12xlarge, i3en.24xlarge, i3en.metal, hi1.4xlarge, hs1.8xlarge, c1.medium, c1.xlarge, c3.large, c3.xlarge, c3.2xlarge, c3.4xlarge, c3.8xlarge, c4.large, c4.xlarge, c4.2xlarge, c4.4xlarge, c4.8xlarge, c5.large, c5.xlarge, c5.2xlarge, c5.4xlarge, c5.9xlarge, c5.12xlarge, c5.18xlarge, c5.24xlarge, c5.metal, c5a.large, c5a.xlarge, c5a.2xlarge, c5a.4xlarge, c5a.8xlarge, c5a.12xlarge, c5a.16xlarge, c5a.24xlarge, c5d.large, c5d.xlarge, c5d.2xlarge, c5d.4xlarge, c5d.9xlarge, c5d.12xlarge, c5d.18xlarge, c5d.24xlarge, c5d.metal, c5n.large, c5n.xlarge, c5n.2xlarge, c5n.4xlarge, c5n.9xlarge, c5n.18xlarge, c6g.metal, c6g.medium, c6g.large, c6g.xlarge, c6g.2xlarge, c6g.4xlarge, c6g.8xlarge, c6g.12xlarge, c6g.16xlarge, cc1.4xlarge, cc2.8xlarge, g2.2xlarge, g2.8xlarge, g3.4xlarge, g3.8xlarge, g3.16xlarge, g3s.xlarge, g4dn.xlarge, g4dn.2xlarge, g4dn.4xlarge, g4dn.8xlarge, g4dn.12xlarge, g4dn.16xlarge, g4dn.metal, cg1.4xlarge, p2.xlarge, p2.8xlarge, p2.16xlarge, p3.2xlarge, p3.8xlarge, p3.16xlarge, p3dn.24xlarge, d2.xlarge, d2.2xlarge, d2.4xlarge, d2.8xlarge, f1.2xlarge, f1.4xlarge, f1.16xlarge, m5.large, m5.xlarge, m5.2xlarge, m5.4xlarge, m5.8xlarge, m5.12xlarge, m5.16xlarge, m5.24xlarge, m5.metal, m5a.large, m5a.xlarge, m5a.2xlarge, m5a.4xlarge, m5a.8xlarge, m5a.12xlarge, m5a.16xlarge, m5a.24xlarge, m5d.large, m5d.xlarge, m5d.2xlarge, m5d.4xlarge, m5d.8xlarge, m5d.12xlarge, m5d.16xlarge, m5d.24xlarge, m5d.metal, m5ad.large, m5ad.xlarge, m5ad.2xlarge, m5ad.4xlarge, m5ad.8xlarge, m5ad.12xlarge, m5ad.16xlarge, m5ad.24xlarge, h1.2xlarge, h1.4xlarge, h1.8xlarge, h1.16xlarge, z1d.large, z1d.xlarge, z1d.2xlarge, z1d.3xlarge, z1d.6xlarge, z1d.12xlarge, z1d.metal, u-6tb1.metal, u-9tb1.metal, u-12tb1.metal, u-18tb1.metal, u-24tb1.metal, a1.medium, a1.large, a1.xlarge, a1.2xlarge, a1.4xlarge, a1.metal, m5dn.large, m5dn.xlarge, m5dn.2xlarge, m5dn.4xlarge, m5dn.8xlarge, m5dn.12xlarge, m5dn.16xlarge, m5dn.24xlarge, m5n.large, m5n.xlarge, m5n.2xlarge, m5n.4xlarge, m5n.8xlarge, m5n.12xlarge, m5n.16xlarge, m5n.24xlarge, r5dn.large, r5dn.xlarge, r5dn.2xlarge, r5dn.4xlarge, r5dn.8xlarge, r5dn.12xlarge, r5dn.16xlarge, r5dn.24xlarge, r5n.large, r5n.xlarge, r5n.2xlarge, r5n.4xlarge, r5n.8xlarge, r5n.12xlarge, r5n.16xlarge, r5n.24xlarge, inf1.xlarge, inf1.2xlarge, inf1.6xlarge, inf1.24xlarge, m6g.metal, m6g.medium, m6g.large, m6g.xlarge, m6g.2xlarge, m6g.4xlarge, m6g.8xlarge, m6g.12xlarge, m6g.16xlarge
100
+ # instance_type: "t1.micro", # accepts t1.micro, t2.nano, t2.micro, t2.small, t2.medium, t2.large, t2.xlarge, t2.2xlarge, t3.nano, t3.micro, t3.small, t3.medium, t3.large, t3.xlarge, t3.2xlarge, t3a.nano, t3a.micro, t3a.small, t3a.medium, t3a.large, t3a.xlarge, t3a.2xlarge, m1.small, m1.medium, m1.large, m1.xlarge, m3.medium, m3.large, m3.xlarge, m3.2xlarge, m4.large, m4.xlarge, m4.2xlarge, m4.4xlarge, m4.10xlarge, m4.16xlarge, m2.xlarge, m2.2xlarge, m2.4xlarge, cr1.8xlarge, r3.large, r3.xlarge, r3.2xlarge, r3.4xlarge, r3.8xlarge, r4.large, r4.xlarge, r4.2xlarge, r4.4xlarge, r4.8xlarge, r4.16xlarge, r5.large, r5.xlarge, r5.2xlarge, r5.4xlarge, r5.8xlarge, r5.12xlarge, r5.16xlarge, r5.24xlarge, r5.metal, r5a.large, r5a.xlarge, r5a.2xlarge, r5a.4xlarge, r5a.8xlarge, r5a.12xlarge, r5a.16xlarge, r5a.24xlarge, r5d.large, r5d.xlarge, r5d.2xlarge, r5d.4xlarge, r5d.8xlarge, r5d.12xlarge, r5d.16xlarge, r5d.24xlarge, r5d.metal, r5ad.large, r5ad.xlarge, r5ad.2xlarge, r5ad.4xlarge, r5ad.8xlarge, r5ad.12xlarge, r5ad.16xlarge, r5ad.24xlarge, r6g.metal, r6g.medium, r6g.large, r6g.xlarge, r6g.2xlarge, r6g.4xlarge, r6g.8xlarge, r6g.12xlarge, r6g.16xlarge, r6gd.metal, r6gd.medium, r6gd.large, r6gd.xlarge, r6gd.2xlarge, r6gd.4xlarge, r6gd.8xlarge, r6gd.12xlarge, r6gd.16xlarge, x1.16xlarge, x1.32xlarge, x1e.xlarge, x1e.2xlarge, x1e.4xlarge, x1e.8xlarge, x1e.16xlarge, x1e.32xlarge, i2.xlarge, i2.2xlarge, i2.4xlarge, i2.8xlarge, i3.large, i3.xlarge, i3.2xlarge, i3.4xlarge, i3.8xlarge, i3.16xlarge, i3.metal, i3en.large, i3en.xlarge, i3en.2xlarge, i3en.3xlarge, i3en.6xlarge, i3en.12xlarge, i3en.24xlarge, i3en.metal, hi1.4xlarge, hs1.8xlarge, c1.medium, c1.xlarge, c3.large, c3.xlarge, c3.2xlarge, c3.4xlarge, c3.8xlarge, c4.large, c4.xlarge, c4.2xlarge, c4.4xlarge, c4.8xlarge, c5.large, c5.xlarge, c5.2xlarge, c5.4xlarge, c5.9xlarge, c5.12xlarge, c5.18xlarge, c5.24xlarge, c5.metal, c5a.large, c5a.xlarge, c5a.2xlarge, c5a.4xlarge, c5a.8xlarge, c5a.12xlarge, c5a.16xlarge, c5a.24xlarge, c5d.large, c5d.xlarge, c5d.2xlarge, c5d.4xlarge, c5d.9xlarge, c5d.12xlarge, c5d.18xlarge, c5d.24xlarge, c5d.metal, c5n.large, c5n.xlarge, c5n.2xlarge, c5n.4xlarge, c5n.9xlarge, c5n.18xlarge, c6g.metal, c6g.medium, c6g.large, c6g.xlarge, c6g.2xlarge, c6g.4xlarge, c6g.8xlarge, c6g.12xlarge, c6g.16xlarge, c6gd.metal, c6gd.medium, c6gd.large, c6gd.xlarge, c6gd.2xlarge, c6gd.4xlarge, c6gd.8xlarge, c6gd.12xlarge, c6gd.16xlarge, cc1.4xlarge, cc2.8xlarge, g2.2xlarge, g2.8xlarge, g3.4xlarge, g3.8xlarge, g3.16xlarge, g3s.xlarge, g4dn.xlarge, g4dn.2xlarge, g4dn.4xlarge, g4dn.8xlarge, g4dn.12xlarge, g4dn.16xlarge, g4dn.metal, cg1.4xlarge, p2.xlarge, p2.8xlarge, p2.16xlarge, p3.2xlarge, p3.8xlarge, p3.16xlarge, p3dn.24xlarge, d2.xlarge, d2.2xlarge, d2.4xlarge, d2.8xlarge, f1.2xlarge, f1.4xlarge, f1.16xlarge, m5.large, m5.xlarge, m5.2xlarge, m5.4xlarge, m5.8xlarge, m5.12xlarge, m5.16xlarge, m5.24xlarge, m5.metal, m5a.large, m5a.xlarge, m5a.2xlarge, m5a.4xlarge, m5a.8xlarge, m5a.12xlarge, m5a.16xlarge, m5a.24xlarge, m5d.large, m5d.xlarge, m5d.2xlarge, m5d.4xlarge, m5d.8xlarge, m5d.12xlarge, m5d.16xlarge, m5d.24xlarge, m5d.metal, m5ad.large, m5ad.xlarge, m5ad.2xlarge, m5ad.4xlarge, m5ad.8xlarge, m5ad.12xlarge, m5ad.16xlarge, m5ad.24xlarge, h1.2xlarge, h1.4xlarge, h1.8xlarge, h1.16xlarge, z1d.large, z1d.xlarge, z1d.2xlarge, z1d.3xlarge, z1d.6xlarge, z1d.12xlarge, z1d.metal, u-6tb1.metal, u-9tb1.metal, u-12tb1.metal, u-18tb1.metal, u-24tb1.metal, a1.medium, a1.large, a1.xlarge, a1.2xlarge, a1.4xlarge, a1.metal, m5dn.large, m5dn.xlarge, m5dn.2xlarge, m5dn.4xlarge, m5dn.8xlarge, m5dn.12xlarge, m5dn.16xlarge, m5dn.24xlarge, m5n.large, m5n.xlarge, m5n.2xlarge, m5n.4xlarge, m5n.8xlarge, m5n.12xlarge, m5n.16xlarge, m5n.24xlarge, r5dn.large, r5dn.xlarge, r5dn.2xlarge, r5dn.4xlarge, r5dn.8xlarge, r5dn.12xlarge, r5dn.16xlarge, r5dn.24xlarge, r5n.large, r5n.xlarge, r5n.2xlarge, r5n.4xlarge, r5n.8xlarge, r5n.12xlarge, r5n.16xlarge, r5n.24xlarge, inf1.xlarge, inf1.2xlarge, inf1.6xlarge, inf1.24xlarge, m6g.metal, m6g.medium, m6g.large, m6g.xlarge, m6g.2xlarge, m6g.4xlarge, m6g.8xlarge, m6g.12xlarge, m6g.16xlarge, m6gd.metal, m6gd.medium, m6gd.large, m6gd.xlarge, m6gd.2xlarge, m6gd.4xlarge, m6gd.8xlarge, m6gd.12xlarge, m6gd.16xlarge
101
101
  # ipv_6_address_count: 1,
102
102
  # ipv_6_addresses: [
103
103
  # {
@@ -159,6 +159,7 @@ module Aws::EC2
159
159
  # ],
160
160
  # secondary_private_ip_address_count: 1,
161
161
  # subnet_id: "String",
162
+ # associate_carrier_ip_address: false,
162
163
  # interface_type: "String",
163
164
  # },
164
165
  # ],
@@ -211,6 +212,7 @@ module Aws::EC2
211
212
  # capacity_reservation_preference: "open", # accepts open, none
212
213
  # capacity_reservation_target: {
213
214
  # capacity_reservation_id: "CapacityReservationId",
215
+ # capacity_reservation_resource_group_arn: "String",
214
216
  # },
215
217
  # },
216
218
  # hibernation_options: {
@@ -1415,7 +1417,7 @@ module Aws::EC2
1415
1417
  # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`.
1416
1418
  # @option options [required, String] :key_name
1417
1419
  # A unique name for the key pair.
1418
- # @option options [required, String, IO] :public_key_material
1420
+ # @option options [required, String, StringIO, File] :public_key_material
1419
1421
  # The public key. For API calls, the text must be base64-encoded. For
1420
1422
  # command line tools, base64 encoding is performed for you.
1421
1423
  # @option options [Array<Types::TagSpecification>] :tag_specifications
@@ -1558,8 +1560,8 @@ module Aws::EC2
1558
1560
  # * `instance-id` - The ID of the instance the address is associated
1559
1561
  # with, if any.
1560
1562
  #
1561
- # * `network-border-group` - The location from where the IP address is
1562
- # advertised.
1563
+ # * `network-border-group` - A unique set of Availability Zones, Local
1564
+ # Zones, or Wavelength Zones from where AWS advertises IP addresses.
1563
1565
  #
1564
1566
  # * `network-interface-id` - \[EC2-VPC\] The ID of the network interface
1565
1567
  # that the address is associated with, if any.
@@ -1569,7 +1571,7 @@ module Aws::EC2
1569
1571
  # * `private-ip-address` - \[EC2-VPC\] The private IP address associated
1570
1572
  # with the Elastic IP address.
1571
1573
  #
1572
- # * `public-ip` - The Elastic IP address.
1574
+ # * `public-ip` - The Elastic IP address, or the carrier IP address.
1573
1575
  #
1574
1576
  # * `tag`\:&lt;key&gt; - The key/value combination of a tag assigned to
1575
1577
  # the resource. Use the tag key in the filter name and the tag value
@@ -3306,8 +3308,8 @@ module Aws::EC2
3306
3308
  # * `instance-id` - The ID of the instance the address is associated
3307
3309
  # with, if any.
3308
3310
  #
3309
- # * `network-border-group` - The location from where the IP address is
3310
- # advertised.
3311
+ # * `network-border-group` - A unique set of Availability Zones, Local
3312
+ # Zones, or Wavelength Zones from where AWS advertises IP addresses.
3311
3313
  #
3312
3314
  # * `network-interface-id` - \[EC2-VPC\] The ID of the network interface
3313
3315
  # that the address is associated with, if any.
@@ -3317,7 +3319,7 @@ module Aws::EC2
3317
3319
  # * `private-ip-address` - \[EC2-VPC\] The private IP address associated
3318
3320
  # with the Elastic IP address.
3319
3321
  #
3320
- # * `public-ip` - The Elastic IP address.
3322
+ # * `public-ip` - The Elastic IP address, or the carrier IP address.
3321
3323
  #
3322
3324
  # * `tag`\:&lt;key&gt; - The key/value combination of a tag assigned to
3323
3325
  # the resource. Use the tag key in the filter name and the tag value
@@ -96,6 +96,12 @@ module Aws::EC2
96
96
  data[:local_gateway_id]
97
97
  end
98
98
 
99
+ # The ID of the carrier gateway.
100
+ # @return [String]
101
+ def carrier_gateway_id
102
+ data[:carrier_gateway_id]
103
+ end
104
+
99
105
  # The ID of the network interface.
100
106
  # @return [String]
101
107
  def network_interface_id
@@ -301,6 +307,7 @@ module Aws::EC2
301
307
  # nat_gateway_id: "NatGatewayId",
302
308
  # transit_gateway_id: "TransitGatewayId",
303
309
  # local_gateway_id: "LocalGatewayId",
310
+ # carrier_gateway_id: "CarrierGatewayId",
304
311
  # network_interface_id: "NetworkInterfaceId",
305
312
  # vpc_peering_connection_id: "VpcPeeringConnectionId",
306
313
  # })
@@ -331,6 +338,8 @@ module Aws::EC2
331
338
  # The ID of a transit gateway.
332
339
  # @option options [String] :local_gateway_id
333
340
  # The ID of the local gateway.
341
+ # @option options [String] :carrier_gateway_id
342
+ # \[IPv4 traffic only\] The ID of a carrier gateway.
334
343
  # @option options [String] :network_interface_id
335
344
  # The ID of a network interface.
336
345
  # @option options [String] :vpc_peering_connection_id