aws-sdk-ec2 1.170.0 → 1.175.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.
@@ -300,6 +300,35 @@ module Aws::EC2
300
300
  include Aws::Structure
301
301
  end
302
302
 
303
+ # An entry for a prefix list.
304
+ #
305
+ # @note When making an API call, you may pass AddPrefixListEntry
306
+ # data as a hash:
307
+ #
308
+ # {
309
+ # cidr: "String", # required
310
+ # description: "String",
311
+ # }
312
+ #
313
+ # @!attribute [rw] cidr
314
+ # The CIDR block.
315
+ # @return [String]
316
+ #
317
+ # @!attribute [rw] description
318
+ # A description for the entry.
319
+ #
320
+ # Constraints: Up to 255 characters in length.
321
+ # @return [String]
322
+ #
323
+ # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/AddPrefixListEntry AWS API Documentation
324
+ #
325
+ class AddPrefixListEntry < Struct.new(
326
+ :cidr,
327
+ :description)
328
+ SENSITIVE = []
329
+ include Aws::Structure
330
+ end
331
+
303
332
  # Describes an Elastic IP address.
304
333
  #
305
334
  # @!attribute [rw] instance_id
@@ -2101,10 +2130,10 @@ module Aws::EC2
2101
2130
  include Aws::Structure
2102
2131
  end
2103
2132
 
2104
- # Describes an Availability Zone or Local Zone.
2133
+ # Describes a Zone.
2105
2134
  #
2106
2135
  # @!attribute [rw] state
2107
- # The state of the Availability Zone or Local Zone.
2136
+ # The state of the Zone.
2108
2137
  # @return [String]
2109
2138
  #
2110
2139
  # @!attribute [rw] opt_in_status
@@ -2116,7 +2145,7 @@ module Aws::EC2
2116
2145
  # @return [String]
2117
2146
  #
2118
2147
  # @!attribute [rw] messages
2119
- # Any messages about the Availability Zone or Local Zone.
2148
+ # Any messages about the Zone.
2120
2149
  # @return [Array<Types::AvailabilityZoneMessage>]
2121
2150
  #
2122
2151
  # @!attribute [rw] region_name
@@ -2124,11 +2153,11 @@ module Aws::EC2
2124
2153
  # @return [String]
2125
2154
  #
2126
2155
  # @!attribute [rw] zone_name
2127
- # The name of the Availability Zone or Local Zone.
2156
+ # The name of the Zone.
2128
2157
  # @return [String]
2129
2158
  #
2130
2159
  # @!attribute [rw] zone_id
2131
- # The ID of the Availability Zone or Local Zone.
2160
+ # The ID of the Zone.
2132
2161
  # @return [String]
2133
2162
  #
2134
2163
  # @!attribute [rw] group_name
@@ -2143,6 +2172,21 @@ module Aws::EC2
2143
2172
  # The name of the location from which the address is advertised.
2144
2173
  # @return [String]
2145
2174
  #
2175
+ # @!attribute [rw] zone_type
2176
+ # The type of zone. The valid values are `availability-zone` and
2177
+ # `local-zone`.
2178
+ # @return [String]
2179
+ #
2180
+ # @!attribute [rw] parent_zone_name
2181
+ # The name of the zone that handles some of the Local Zone control
2182
+ # plane operations, such as API calls.
2183
+ # @return [String]
2184
+ #
2185
+ # @!attribute [rw] parent_zone_id
2186
+ # The ID of the zone that handles some of the Local Zone control plane
2187
+ # operations, such as API calls.
2188
+ # @return [String]
2189
+ #
2146
2190
  # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/AvailabilityZone AWS API Documentation
2147
2191
  #
2148
2192
  class AvailabilityZone < Struct.new(
@@ -2153,15 +2197,18 @@ module Aws::EC2
2153
2197
  :zone_name,
2154
2198
  :zone_id,
2155
2199
  :group_name,
2156
- :network_border_group)
2200
+ :network_border_group,
2201
+ :zone_type,
2202
+ :parent_zone_name,
2203
+ :parent_zone_id)
2157
2204
  SENSITIVE = []
2158
2205
  include Aws::Structure
2159
2206
  end
2160
2207
 
2161
- # Describes a message about an Availability Zone or Local Zone.
2208
+ # Describes a message about a Zone.
2162
2209
  #
2163
2210
  # @!attribute [rw] message
2164
- # The message about the Availability Zone or Local Zone.
2211
+ # The message about the Zone.
2165
2212
  # @return [String]
2166
2213
  #
2167
2214
  # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/AvailabilityZoneMessage AWS API Documentation
@@ -5197,6 +5244,17 @@ module Aws::EC2
5197
5244
  # values: ["String"],
5198
5245
  # },
5199
5246
  # ],
5247
+ # tag_specifications: [
5248
+ # {
5249
+ # resource_type: "client-vpn-endpoint", # accepts client-vpn-endpoint, customer-gateway, dedicated-host, dhcp-options, elastic-ip, elastic-gpu, export-image-task, export-instance-task, fleet, fpga-image, host-reservation, image, import-image-task, import-snapshot-task, instance, internet-gateway, key-pair, launch-template, local-gateway-route-table-vpc-association, natgateway, network-acl, network-interface, placement-group, reserved-instances, route-table, security-group, snapshot, spot-fleet-request, spot-instances-request, subnet, traffic-mirror-filter, traffic-mirror-session, traffic-mirror-target, transit-gateway, transit-gateway-attachment, transit-gateway-multicast-domain, transit-gateway-route-table, volume, vpc, vpc-peering-connection, vpn-connection, vpn-gateway, vpc-flow-log
5250
+ # tags: [
5251
+ # {
5252
+ # key: "String",
5253
+ # value: "String",
5254
+ # },
5255
+ # ],
5256
+ # },
5257
+ # ],
5200
5258
  # dry_run: false,
5201
5259
  # }
5202
5260
  #
@@ -5204,6 +5262,10 @@ module Aws::EC2
5204
5262
  # A DHCP configuration option.
5205
5263
  # @return [Array<Types::NewDhcpConfiguration>]
5206
5264
  #
5265
+ # @!attribute [rw] tag_specifications
5266
+ # The tags to assign to the DHCP option.
5267
+ # @return [Array<Types::TagSpecification>]
5268
+ #
5207
5269
  # @!attribute [rw] dry_run
5208
5270
  # Checks whether you have the required permissions for the action,
5209
5271
  # without actually making the request, and provides an error response.
@@ -5215,6 +5277,7 @@ module Aws::EC2
5215
5277
  #
5216
5278
  class CreateDhcpOptionsRequest < Struct.new(
5217
5279
  :dhcp_configurations,
5280
+ :tag_specifications,
5218
5281
  :dry_run)
5219
5282
  SENSITIVE = []
5220
5283
  include Aws::Structure
@@ -5239,6 +5302,17 @@ module Aws::EC2
5239
5302
  # client_token: "String",
5240
5303
  # dry_run: false,
5241
5304
  # vpc_id: "VpcId", # required
5305
+ # tag_specifications: [
5306
+ # {
5307
+ # resource_type: "client-vpn-endpoint", # accepts client-vpn-endpoint, customer-gateway, dedicated-host, dhcp-options, elastic-ip, elastic-gpu, export-image-task, export-instance-task, fleet, fpga-image, host-reservation, image, import-image-task, import-snapshot-task, instance, internet-gateway, key-pair, launch-template, local-gateway-route-table-vpc-association, natgateway, network-acl, network-interface, placement-group, reserved-instances, route-table, security-group, snapshot, spot-fleet-request, spot-instances-request, subnet, traffic-mirror-filter, traffic-mirror-session, traffic-mirror-target, transit-gateway, transit-gateway-attachment, transit-gateway-multicast-domain, transit-gateway-route-table, volume, vpc, vpc-peering-connection, vpn-connection, vpn-gateway, vpc-flow-log
5308
+ # tags: [
5309
+ # {
5310
+ # key: "String",
5311
+ # value: "String",
5312
+ # },
5313
+ # ],
5314
+ # },
5315
+ # ],
5242
5316
  # }
5243
5317
  #
5244
5318
  # @!attribute [rw] client_token
@@ -5263,12 +5337,17 @@ module Aws::EC2
5263
5337
  # gateway.
5264
5338
  # @return [String]
5265
5339
  #
5340
+ # @!attribute [rw] tag_specifications
5341
+ # The tags to assign to the egress-only internet gateway.
5342
+ # @return [Array<Types::TagSpecification>]
5343
+ #
5266
5344
  # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/CreateEgressOnlyInternetGatewayRequest AWS API Documentation
5267
5345
  #
5268
5346
  class CreateEgressOnlyInternetGatewayRequest < Struct.new(
5269
5347
  :client_token,
5270
5348
  :dry_run,
5271
- :vpc_id)
5349
+ :vpc_id,
5350
+ :tag_specifications)
5272
5351
  SENSITIVE = []
5273
5352
  include Aws::Structure
5274
5353
  end
@@ -6040,9 +6119,24 @@ module Aws::EC2
6040
6119
  # data as a hash:
6041
6120
  #
6042
6121
  # {
6122
+ # tag_specifications: [
6123
+ # {
6124
+ # resource_type: "client-vpn-endpoint", # accepts client-vpn-endpoint, customer-gateway, dedicated-host, dhcp-options, elastic-ip, elastic-gpu, export-image-task, export-instance-task, fleet, fpga-image, host-reservation, image, import-image-task, import-snapshot-task, instance, internet-gateway, key-pair, launch-template, local-gateway-route-table-vpc-association, natgateway, network-acl, network-interface, placement-group, reserved-instances, route-table, security-group, snapshot, spot-fleet-request, spot-instances-request, subnet, traffic-mirror-filter, traffic-mirror-session, traffic-mirror-target, transit-gateway, transit-gateway-attachment, transit-gateway-multicast-domain, transit-gateway-route-table, volume, vpc, vpc-peering-connection, vpn-connection, vpn-gateway, vpc-flow-log
6125
+ # tags: [
6126
+ # {
6127
+ # key: "String",
6128
+ # value: "String",
6129
+ # },
6130
+ # ],
6131
+ # },
6132
+ # ],
6043
6133
  # dry_run: false,
6044
6134
  # }
6045
6135
  #
6136
+ # @!attribute [rw] tag_specifications
6137
+ # The tags to assign to the internet gateway.
6138
+ # @return [Array<Types::TagSpecification>]
6139
+ #
6046
6140
  # @!attribute [rw] dry_run
6047
6141
  # Checks whether you have the required permissions for the action,
6048
6142
  # without actually making the request, and provides an error response.
@@ -6053,6 +6147,7 @@ module Aws::EC2
6053
6147
  # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/CreateInternetGatewayRequest AWS API Documentation
6054
6148
  #
6055
6149
  class CreateInternetGatewayRequest < Struct.new(
6150
+ :tag_specifications,
6056
6151
  :dry_run)
6057
6152
  SENSITIVE = []
6058
6153
  include Aws::Structure
@@ -6670,6 +6765,107 @@ module Aws::EC2
6670
6765
  include Aws::Structure
6671
6766
  end
6672
6767
 
6768
+ # @note When making an API call, you may pass CreateManagedPrefixListRequest
6769
+ # data as a hash:
6770
+ #
6771
+ # {
6772
+ # dry_run: false,
6773
+ # prefix_list_name: "String", # required
6774
+ # entries: [
6775
+ # {
6776
+ # cidr: "String", # required
6777
+ # description: "String",
6778
+ # },
6779
+ # ],
6780
+ # max_entries: 1, # required
6781
+ # tag_specifications: [
6782
+ # {
6783
+ # resource_type: "client-vpn-endpoint", # accepts client-vpn-endpoint, customer-gateway, dedicated-host, dhcp-options, elastic-ip, elastic-gpu, export-image-task, export-instance-task, fleet, fpga-image, host-reservation, image, import-image-task, import-snapshot-task, instance, internet-gateway, key-pair, launch-template, local-gateway-route-table-vpc-association, natgateway, network-acl, network-interface, placement-group, reserved-instances, route-table, security-group, snapshot, spot-fleet-request, spot-instances-request, subnet, traffic-mirror-filter, traffic-mirror-session, traffic-mirror-target, transit-gateway, transit-gateway-attachment, transit-gateway-multicast-domain, transit-gateway-route-table, volume, vpc, vpc-peering-connection, vpn-connection, vpn-gateway, vpc-flow-log
6784
+ # tags: [
6785
+ # {
6786
+ # key: "String",
6787
+ # value: "String",
6788
+ # },
6789
+ # ],
6790
+ # },
6791
+ # ],
6792
+ # address_family: "String", # required
6793
+ # client_token: "String",
6794
+ # }
6795
+ #
6796
+ # @!attribute [rw] dry_run
6797
+ # Checks whether you have the required permissions for the action,
6798
+ # without actually making the request, and provides an error response.
6799
+ # If you have the required permissions, the error response is
6800
+ # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`.
6801
+ # @return [Boolean]
6802
+ #
6803
+ # @!attribute [rw] prefix_list_name
6804
+ # A name for the prefix list.
6805
+ #
6806
+ # Constraints: Up to 255 characters in length. The name cannot start
6807
+ # with `com.amazonaws`.
6808
+ # @return [String]
6809
+ #
6810
+ # @!attribute [rw] entries
6811
+ # One or more entries for the prefix list.
6812
+ # @return [Array<Types::AddPrefixListEntry>]
6813
+ #
6814
+ # @!attribute [rw] max_entries
6815
+ # The maximum number of entries for the prefix list.
6816
+ # @return [Integer]
6817
+ #
6818
+ # @!attribute [rw] tag_specifications
6819
+ # The tags to apply to the prefix list during creation.
6820
+ # @return [Array<Types::TagSpecification>]
6821
+ #
6822
+ # @!attribute [rw] address_family
6823
+ # The IP address type.
6824
+ #
6825
+ # Valid Values: `IPv4` \| `IPv6`
6826
+ # @return [String]
6827
+ #
6828
+ # @!attribute [rw] client_token
6829
+ # Unique, case-sensitive identifier you provide to ensure the
6830
+ # idempotency of the request. For more information, see [Ensuring
6831
+ # Idempotency][1].
6832
+ #
6833
+ # Constraints: Up to 255 UTF-8 characters in length.
6834
+ #
6835
+ # **A suitable default value is auto-generated.** You should normally
6836
+ # not need to pass this option.
6837
+ #
6838
+ #
6839
+ #
6840
+ # [1]: https://docs.aws.amazon.com/AWSEC2/latest/APIReference/Run_Instance_Idempotency.html
6841
+ # @return [String]
6842
+ #
6843
+ # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/CreateManagedPrefixListRequest AWS API Documentation
6844
+ #
6845
+ class CreateManagedPrefixListRequest < Struct.new(
6846
+ :dry_run,
6847
+ :prefix_list_name,
6848
+ :entries,
6849
+ :max_entries,
6850
+ :tag_specifications,
6851
+ :address_family,
6852
+ :client_token)
6853
+ SENSITIVE = []
6854
+ include Aws::Structure
6855
+ end
6856
+
6857
+ # @!attribute [rw] prefix_list
6858
+ # Information about the prefix list.
6859
+ # @return [Types::ManagedPrefixList]
6860
+ #
6861
+ # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/CreateManagedPrefixListResult AWS API Documentation
6862
+ #
6863
+ class CreateManagedPrefixListResult < Struct.new(
6864
+ :prefix_list)
6865
+ SENSITIVE = []
6866
+ include Aws::Structure
6867
+ end
6868
+
6673
6869
  # @note When making an API call, you may pass CreateNatGatewayRequest
6674
6870
  # data as a hash:
6675
6871
  #
@@ -6782,7 +6978,9 @@ module Aws::EC2
6782
6978
  #
6783
6979
  # @!attribute [rw] cidr_block
6784
6980
  # The IPv4 network range to allow or deny, in CIDR notation (for
6785
- # example `172.16.0.0/24`).
6981
+ # example `172.16.0.0/24`). We modify the specified CIDR block to its
6982
+ # canonical form; for example, if you specify `100.68.0.18/18`, we
6983
+ # modify it to `100.68.0.0/18`.
6786
6984
  # @return [String]
6787
6985
  #
6788
6986
  # @!attribute [rw] dry_run
@@ -6864,6 +7062,17 @@ module Aws::EC2
6864
7062
  # {
6865
7063
  # dry_run: false,
6866
7064
  # vpc_id: "VpcId", # required
7065
+ # tag_specifications: [
7066
+ # {
7067
+ # resource_type: "client-vpn-endpoint", # accepts client-vpn-endpoint, customer-gateway, dedicated-host, dhcp-options, elastic-ip, elastic-gpu, export-image-task, export-instance-task, fleet, fpga-image, host-reservation, image, import-image-task, import-snapshot-task, instance, internet-gateway, key-pair, launch-template, local-gateway-route-table-vpc-association, natgateway, network-acl, network-interface, placement-group, reserved-instances, route-table, security-group, snapshot, spot-fleet-request, spot-instances-request, subnet, traffic-mirror-filter, traffic-mirror-session, traffic-mirror-target, transit-gateway, transit-gateway-attachment, transit-gateway-multicast-domain, transit-gateway-route-table, volume, vpc, vpc-peering-connection, vpn-connection, vpn-gateway, vpc-flow-log
7068
+ # tags: [
7069
+ # {
7070
+ # key: "String",
7071
+ # value: "String",
7072
+ # },
7073
+ # ],
7074
+ # },
7075
+ # ],
6867
7076
  # }
6868
7077
  #
6869
7078
  # @!attribute [rw] dry_run
@@ -6877,11 +7086,16 @@ module Aws::EC2
6877
7086
  # The ID of the VPC.
6878
7087
  # @return [String]
6879
7088
  #
7089
+ # @!attribute [rw] tag_specifications
7090
+ # The tags to assign to the network ACL.
7091
+ # @return [Array<Types::TagSpecification>]
7092
+ #
6880
7093
  # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/CreateNetworkAclRequest AWS API Documentation
6881
7094
  #
6882
7095
  class CreateNetworkAclRequest < Struct.new(
6883
7096
  :dry_run,
6884
- :vpc_id)
7097
+ :vpc_id,
7098
+ :tag_specifications)
6885
7099
  SENSITIVE = []
6886
7100
  include Aws::Structure
6887
7101
  end
@@ -6985,6 +7199,17 @@ module Aws::EC2
6985
7199
  # secondary_private_ip_address_count: 1,
6986
7200
  # interface_type: "efa", # accepts efa
6987
7201
  # subnet_id: "SubnetId", # required
7202
+ # tag_specifications: [
7203
+ # {
7204
+ # resource_type: "client-vpn-endpoint", # accepts client-vpn-endpoint, customer-gateway, dedicated-host, dhcp-options, elastic-ip, elastic-gpu, export-image-task, export-instance-task, fleet, fpga-image, host-reservation, image, import-image-task, import-snapshot-task, instance, internet-gateway, key-pair, launch-template, local-gateway-route-table-vpc-association, natgateway, network-acl, network-interface, placement-group, reserved-instances, route-table, security-group, snapshot, spot-fleet-request, spot-instances-request, subnet, traffic-mirror-filter, traffic-mirror-session, traffic-mirror-target, transit-gateway, transit-gateway-attachment, transit-gateway-multicast-domain, transit-gateway-route-table, volume, vpc, vpc-peering-connection, vpn-connection, vpn-gateway, vpc-flow-log
7205
+ # tags: [
7206
+ # {
7207
+ # key: "String",
7208
+ # value: "String",
7209
+ # },
7210
+ # ],
7211
+ # },
7212
+ # ],
6988
7213
  # }
6989
7214
  #
6990
7215
  # @!attribute [rw] description
@@ -7060,6 +7285,10 @@ module Aws::EC2
7060
7285
  # The ID of the subnet to associate with the network interface.
7061
7286
  # @return [String]
7062
7287
  #
7288
+ # @!attribute [rw] tag_specifications
7289
+ # The tags to apply to the new network interface.
7290
+ # @return [Array<Types::TagSpecification>]
7291
+ #
7063
7292
  # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/CreateNetworkInterfaceRequest AWS API Documentation
7064
7293
  #
7065
7294
  class CreateNetworkInterfaceRequest < Struct.new(
@@ -7072,7 +7301,8 @@ module Aws::EC2
7072
7301
  :private_ip_addresses,
7073
7302
  :secondary_private_ip_address_count,
7074
7303
  :interface_type,
7075
- :subnet_id)
7304
+ :subnet_id,
7305
+ :tag_specifications)
7076
7306
  SENSITIVE = []
7077
7307
  include Aws::Structure
7078
7308
  end
@@ -7238,6 +7468,7 @@ module Aws::EC2
7238
7468
  # {
7239
7469
  # destination_cidr_block: "String",
7240
7470
  # destination_ipv_6_cidr_block: "String",
7471
+ # destination_prefix_list_id: "PrefixListResourceId",
7241
7472
  # dry_run: false,
7242
7473
  # egress_only_internet_gateway_id: "EgressOnlyInternetGatewayId",
7243
7474
  # gateway_id: "RouteGatewayId",
@@ -7252,7 +7483,9 @@ module Aws::EC2
7252
7483
  #
7253
7484
  # @!attribute [rw] destination_cidr_block
7254
7485
  # The IPv4 CIDR address block used for the destination match. Routing
7255
- # decisions are based on the most specific match.
7486
+ # decisions are based on the most specific match. We modify the
7487
+ # specified CIDR block to its canonical form; for example, if you
7488
+ # specify `100.68.0.18/18`, we modify it to `100.68.0.0/18`.
7256
7489
  # @return [String]
7257
7490
  #
7258
7491
  # @!attribute [rw] destination_ipv_6_cidr_block
@@ -7260,6 +7493,10 @@ module Aws::EC2
7260
7493
  # decisions are based on the most specific match.
7261
7494
  # @return [String]
7262
7495
  #
7496
+ # @!attribute [rw] destination_prefix_list_id
7497
+ # The ID of a prefix list used for the destination match.
7498
+ # @return [String]
7499
+ #
7263
7500
  # @!attribute [rw] dry_run
7264
7501
  # Checks whether you have the required permissions for the action,
7265
7502
  # without actually making the request, and provides an error response.
@@ -7311,6 +7548,7 @@ module Aws::EC2
7311
7548
  class CreateRouteRequest < Struct.new(
7312
7549
  :destination_cidr_block,
7313
7550
  :destination_ipv_6_cidr_block,
7551
+ :destination_prefix_list_id,
7314
7552
  :dry_run,
7315
7553
  :egress_only_internet_gateway_id,
7316
7554
  :gateway_id,
@@ -7385,6 +7623,17 @@ module Aws::EC2
7385
7623
  # description: "String", # required
7386
7624
  # group_name: "String", # required
7387
7625
  # vpc_id: "VpcId",
7626
+ # tag_specifications: [
7627
+ # {
7628
+ # resource_type: "client-vpn-endpoint", # accepts client-vpn-endpoint, customer-gateway, dedicated-host, dhcp-options, elastic-ip, elastic-gpu, export-image-task, export-instance-task, fleet, fpga-image, host-reservation, image, import-image-task, import-snapshot-task, instance, internet-gateway, key-pair, launch-template, local-gateway-route-table-vpc-association, natgateway, network-acl, network-interface, placement-group, reserved-instances, route-table, security-group, snapshot, spot-fleet-request, spot-instances-request, subnet, traffic-mirror-filter, traffic-mirror-session, traffic-mirror-target, transit-gateway, transit-gateway-attachment, transit-gateway-multicast-domain, transit-gateway-route-table, volume, vpc, vpc-peering-connection, vpn-connection, vpn-gateway, vpc-flow-log
7629
+ # tags: [
7630
+ # {
7631
+ # key: "String",
7632
+ # value: "String",
7633
+ # },
7634
+ # ],
7635
+ # },
7636
+ # ],
7388
7637
  # dry_run: false,
7389
7638
  # }
7390
7639
  #
@@ -7415,6 +7664,10 @@ module Aws::EC2
7415
7664
  # \[EC2-VPC\] The ID of the VPC. Required for EC2-VPC.
7416
7665
  # @return [String]
7417
7666
  #
7667
+ # @!attribute [rw] tag_specifications
7668
+ # The tags to assign to the security group.
7669
+ # @return [Array<Types::TagSpecification>]
7670
+ #
7418
7671
  # @!attribute [rw] dry_run
7419
7672
  # Checks whether you have the required permissions for the action,
7420
7673
  # without actually making the request, and provides an error response.
@@ -7428,6 +7681,7 @@ module Aws::EC2
7428
7681
  :description,
7429
7682
  :group_name,
7430
7683
  :vpc_id,
7684
+ :tag_specifications,
7431
7685
  :dry_run)
7432
7686
  SENSITIVE = []
7433
7687
  include Aws::Structure
@@ -7437,10 +7691,15 @@ module Aws::EC2
7437
7691
  # The ID of the security group.
7438
7692
  # @return [String]
7439
7693
  #
7694
+ # @!attribute [rw] tags
7695
+ # The tags assigned to the security group.
7696
+ # @return [Array<Types::Tag>]
7697
+ #
7440
7698
  # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/CreateSecurityGroupResult AWS API Documentation
7441
7699
  #
7442
7700
  class CreateSecurityGroupResult < Struct.new(
7443
- :group_id)
7701
+ :group_id,
7702
+ :tags)
7444
7703
  SENSITIVE = []
7445
7704
  include Aws::Structure
7446
7705
  end
@@ -7622,6 +7881,17 @@ module Aws::EC2
7622
7881
  # data as a hash:
7623
7882
  #
7624
7883
  # {
7884
+ # tag_specifications: [
7885
+ # {
7886
+ # resource_type: "client-vpn-endpoint", # accepts client-vpn-endpoint, customer-gateway, dedicated-host, dhcp-options, elastic-ip, elastic-gpu, export-image-task, export-instance-task, fleet, fpga-image, host-reservation, image, import-image-task, import-snapshot-task, instance, internet-gateway, key-pair, launch-template, local-gateway-route-table-vpc-association, natgateway, network-acl, network-interface, placement-group, reserved-instances, route-table, security-group, snapshot, spot-fleet-request, spot-instances-request, subnet, traffic-mirror-filter, traffic-mirror-session, traffic-mirror-target, transit-gateway, transit-gateway-attachment, transit-gateway-multicast-domain, transit-gateway-route-table, volume, vpc, vpc-peering-connection, vpn-connection, vpn-gateway, vpc-flow-log
7887
+ # tags: [
7888
+ # {
7889
+ # key: "String",
7890
+ # value: "String",
7891
+ # },
7892
+ # ],
7893
+ # },
7894
+ # ],
7625
7895
  # availability_zone: "String",
7626
7896
  # availability_zone_id: "String",
7627
7897
  # cidr_block: "String", # required
@@ -7631,6 +7901,10 @@ module Aws::EC2
7631
7901
  # dry_run: false,
7632
7902
  # }
7633
7903
  #
7904
+ # @!attribute [rw] tag_specifications
7905
+ # The tags to assign to the subnet.
7906
+ # @return [Array<Types::TagSpecification>]
7907
+ #
7634
7908
  # @!attribute [rw] availability_zone
7635
7909
  # The Availability Zone or Local Zone for the subnet.
7636
7910
  #
@@ -7657,7 +7931,9 @@ module Aws::EC2
7657
7931
  #
7658
7932
  # @!attribute [rw] cidr_block
7659
7933
  # The IPv4 network range for the subnet, in CIDR notation. For
7660
- # example, `10.0.0.0/24`.
7934
+ # example, `10.0.0.0/24`. We modify the specified CIDR block to its
7935
+ # canonical form; for example, if you specify `100.68.0.18/18`, we
7936
+ # modify it to `100.68.0.0/18`.
7661
7937
  # @return [String]
7662
7938
  #
7663
7939
  # @!attribute [rw] ipv_6_cidr_block
@@ -7685,6 +7961,7 @@ module Aws::EC2
7685
7961
  # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/CreateSubnetRequest AWS API Documentation
7686
7962
  #
7687
7963
  class CreateSubnetRequest < Struct.new(
7964
+ :tag_specifications,
7688
7965
  :availability_zone,
7689
7966
  :availability_zone_id,
7690
7967
  :cidr_block,
@@ -9235,11 +9512,24 @@ module Aws::EC2
9235
9512
  # dry_run: false,
9236
9513
  # instance_tenancy: "default", # accepts default, dedicated, host
9237
9514
  # ipv_6_cidr_block_network_border_group: "String",
9515
+ # tag_specifications: [
9516
+ # {
9517
+ # resource_type: "client-vpn-endpoint", # accepts client-vpn-endpoint, customer-gateway, dedicated-host, dhcp-options, elastic-ip, elastic-gpu, export-image-task, export-instance-task, fleet, fpga-image, host-reservation, image, import-image-task, import-snapshot-task, instance, internet-gateway, key-pair, launch-template, local-gateway-route-table-vpc-association, natgateway, network-acl, network-interface, placement-group, reserved-instances, route-table, security-group, snapshot, spot-fleet-request, spot-instances-request, subnet, traffic-mirror-filter, traffic-mirror-session, traffic-mirror-target, transit-gateway, transit-gateway-attachment, transit-gateway-multicast-domain, transit-gateway-route-table, volume, vpc, vpc-peering-connection, vpn-connection, vpn-gateway, vpc-flow-log
9518
+ # tags: [
9519
+ # {
9520
+ # key: "String",
9521
+ # value: "String",
9522
+ # },
9523
+ # ],
9524
+ # },
9525
+ # ],
9238
9526
  # }
9239
9527
  #
9240
9528
  # @!attribute [rw] cidr_block
9241
9529
  # The IPv4 network range for the VPC, in CIDR notation. For example,
9242
- # `10.0.0.0/16`.
9530
+ # `10.0.0.0/16`. We modify the specified CIDR block to its canonical
9531
+ # form; for example, if you specify `100.68.0.18/18`, we modify it to
9532
+ # `100.68.0.0/18`.
9243
9533
  # @return [String]
9244
9534
  #
9245
9535
  # @!attribute [rw] amazon_provided_ipv_6_cidr_block
@@ -9290,6 +9580,10 @@ module Aws::EC2
9290
9580
  # parameter.
9291
9581
  # @return [String]
9292
9582
  #
9583
+ # @!attribute [rw] tag_specifications
9584
+ # The tags to assign to the VPC.
9585
+ # @return [Array<Types::TagSpecification>]
9586
+ #
9293
9587
  # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/CreateVpcRequest AWS API Documentation
9294
9588
  #
9295
9589
  class CreateVpcRequest < Struct.new(
@@ -9299,7 +9593,8 @@ module Aws::EC2
9299
9593
  :ipv_6_cidr_block,
9300
9594
  :dry_run,
9301
9595
  :instance_tenancy,
9302
- :ipv_6_cidr_block_network_border_group)
9596
+ :ipv_6_cidr_block_network_border_group,
9597
+ :tag_specifications)
9303
9598
  SENSITIVE = []
9304
9599
  include Aws::Structure
9305
9600
  end
@@ -10317,6 +10612,46 @@ module Aws::EC2
10317
10612
  include Aws::Structure
10318
10613
  end
10319
10614
 
10615
+ # @note When making an API call, you may pass DeleteManagedPrefixListRequest
10616
+ # data as a hash:
10617
+ #
10618
+ # {
10619
+ # dry_run: false,
10620
+ # prefix_list_id: "PrefixListResourceId", # required
10621
+ # }
10622
+ #
10623
+ # @!attribute [rw] dry_run
10624
+ # Checks whether you have the required permissions for the action,
10625
+ # without actually making the request, and provides an error response.
10626
+ # If you have the required permissions, the error response is
10627
+ # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`.
10628
+ # @return [Boolean]
10629
+ #
10630
+ # @!attribute [rw] prefix_list_id
10631
+ # The ID of the prefix list.
10632
+ # @return [String]
10633
+ #
10634
+ # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/DeleteManagedPrefixListRequest AWS API Documentation
10635
+ #
10636
+ class DeleteManagedPrefixListRequest < Struct.new(
10637
+ :dry_run,
10638
+ :prefix_list_id)
10639
+ SENSITIVE = []
10640
+ include Aws::Structure
10641
+ end
10642
+
10643
+ # @!attribute [rw] prefix_list
10644
+ # Information about the prefix list.
10645
+ # @return [Types::ManagedPrefixList]
10646
+ #
10647
+ # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/DeleteManagedPrefixListResult AWS API Documentation
10648
+ #
10649
+ class DeleteManagedPrefixListResult < Struct.new(
10650
+ :prefix_list)
10651
+ SENSITIVE = []
10652
+ include Aws::Structure
10653
+ end
10654
+
10320
10655
  # @note When making an API call, you may pass DeleteNatGatewayRequest
10321
10656
  # data as a hash:
10322
10657
  #
@@ -10606,6 +10941,7 @@ module Aws::EC2
10606
10941
  # {
10607
10942
  # destination_cidr_block: "String",
10608
10943
  # destination_ipv_6_cidr_block: "String",
10944
+ # destination_prefix_list_id: "PrefixListResourceId",
10609
10945
  # dry_run: false,
10610
10946
  # route_table_id: "RouteTableId", # required
10611
10947
  # }
@@ -10620,6 +10956,10 @@ module Aws::EC2
10620
10956
  # the CIDR for the route exactly.
10621
10957
  # @return [String]
10622
10958
  #
10959
+ # @!attribute [rw] destination_prefix_list_id
10960
+ # The ID of the prefix list for the route.
10961
+ # @return [String]
10962
+ #
10623
10963
  # @!attribute [rw] dry_run
10624
10964
  # Checks whether you have the required permissions for the action,
10625
10965
  # without actually making the request, and provides an error response.
@@ -10636,6 +10976,7 @@ module Aws::EC2
10636
10976
  class DeleteRouteRequest < Struct.new(
10637
10977
  :destination_cidr_block,
10638
10978
  :destination_ipv_6_cidr_block,
10979
+ :destination_prefix_list_id,
10639
10980
  :dry_run,
10640
10981
  :route_table_id)
10641
10982
  SENSITIVE = []
@@ -11999,13 +12340,13 @@ module Aws::EC2
11999
12340
  # Local Zones, use the name of the group associated with the Local
12000
12341
  # Zone (for example, `us-west-2-lax-1`).
12001
12342
  #
12002
- # * `message` - The Availability Zone or Local Zone message.
12343
+ # * `message` - The Zone message.
12003
12344
  #
12004
12345
  # * `opt-in-status` - The opt in status (`opted-in`, and
12005
12346
  # `not-opted-in` \| `opt-in-not-required`).
12006
12347
  #
12007
- # * `region-name` - The name of the Region for the Availability Zone
12008
- # or Local Zone (for example, `us-east-1`).
12348
+ # * `region-name` - The name of the Region for the Zone (for example,
12349
+ # `us-east-1`).
12009
12350
  #
12010
12351
  # * `state` - The state of the Availability Zone or Local Zone
12011
12352
  # (`available` \| `information` \| `impaired` \| `unavailable`).
@@ -12019,11 +12360,11 @@ module Aws::EC2
12019
12360
  # @return [Array<Types::Filter>]
12020
12361
  #
12021
12362
  # @!attribute [rw] zone_names
12022
- # The names of the Availability Zones and Local Zones.
12363
+ # The names of the Zones.
12023
12364
  # @return [Array<String>]
12024
12365
  #
12025
12366
  # @!attribute [rw] zone_ids
12026
- # The IDs of the Availability Zones and Local Zones.
12367
+ # The IDs of the Zones.
12027
12368
  # @return [Array<String>]
12028
12369
  #
12029
12370
  # @!attribute [rw] all_availability_zones
@@ -12054,7 +12395,7 @@ module Aws::EC2
12054
12395
  end
12055
12396
 
12056
12397
  # @!attribute [rw] availability_zones
12057
- # Information about the Availability Zones and Local Zones.
12398
+ # Information about the Zones.
12058
12399
  # @return [Array<Types::AvailabilityZone>]
12059
12400
  #
12060
12401
  # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/DescribeAvailabilityZonesResult AWS API Documentation
@@ -16771,6 +17112,83 @@ module Aws::EC2
16771
17112
  include Aws::Structure
16772
17113
  end
16773
17114
 
17115
+ # @note When making an API call, you may pass DescribeManagedPrefixListsRequest
17116
+ # data as a hash:
17117
+ #
17118
+ # {
17119
+ # dry_run: false,
17120
+ # filters: [
17121
+ # {
17122
+ # name: "String",
17123
+ # values: ["String"],
17124
+ # },
17125
+ # ],
17126
+ # max_results: 1,
17127
+ # next_token: "NextToken",
17128
+ # prefix_list_ids: ["String"],
17129
+ # }
17130
+ #
17131
+ # @!attribute [rw] dry_run
17132
+ # Checks whether you have the required permissions for the action,
17133
+ # without actually making the request, and provides an error response.
17134
+ # If you have the required permissions, the error response is
17135
+ # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`.
17136
+ # @return [Boolean]
17137
+ #
17138
+ # @!attribute [rw] filters
17139
+ # One or more filters.
17140
+ #
17141
+ # * `owner-id` - The ID of the prefix list owner.
17142
+ #
17143
+ # * `prefix-list-id` - The ID of the prefix list.
17144
+ #
17145
+ # * `prefix-list-name` - The name of the prefix list.
17146
+ # @return [Array<Types::Filter>]
17147
+ #
17148
+ # @!attribute [rw] max_results
17149
+ # The maximum number of results to return with a single call. To
17150
+ # retrieve the remaining results, make another call with the returned
17151
+ # `nextToken` value.
17152
+ # @return [Integer]
17153
+ #
17154
+ # @!attribute [rw] next_token
17155
+ # The token for the next page of results.
17156
+ # @return [String]
17157
+ #
17158
+ # @!attribute [rw] prefix_list_ids
17159
+ # One or more prefix list IDs.
17160
+ # @return [Array<String>]
17161
+ #
17162
+ # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/DescribeManagedPrefixListsRequest AWS API Documentation
17163
+ #
17164
+ class DescribeManagedPrefixListsRequest < Struct.new(
17165
+ :dry_run,
17166
+ :filters,
17167
+ :max_results,
17168
+ :next_token,
17169
+ :prefix_list_ids)
17170
+ SENSITIVE = []
17171
+ include Aws::Structure
17172
+ end
17173
+
17174
+ # @!attribute [rw] next_token
17175
+ # The token to use to retrieve the next page of results. This value is
17176
+ # `null` when there are no more results to return.
17177
+ # @return [String]
17178
+ #
17179
+ # @!attribute [rw] prefix_lists
17180
+ # Information about the prefix lists.
17181
+ # @return [Array<Types::ManagedPrefixList>]
17182
+ #
17183
+ # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/DescribeManagedPrefixListsResult AWS API Documentation
17184
+ #
17185
+ class DescribeManagedPrefixListsResult < Struct.new(
17186
+ :next_token,
17187
+ :prefix_lists)
17188
+ SENSITIVE = []
17189
+ include Aws::Structure
17190
+ end
17191
+
16774
17192
  # @note When making an API call, you may pass DescribeMovingAddressesRequest
16775
17193
  # data as a hash:
16776
17194
  #
@@ -17283,9 +17701,6 @@ module Aws::EC2
17283
17701
  # * `attachment.instance-owner-id` - The owner ID of the instance to
17284
17702
  # which the network interface is attached.
17285
17703
  #
17286
- # * `attachment.nat-gateway-id` - The ID of the NAT gateway to which
17287
- # the network interface is attached.
17288
- #
17289
17704
  # * `attachment.status` - The status of the attachment (`attaching` \|
17290
17705
  # `attached` \| `detaching` \| `detached`).
17291
17706
  #
@@ -18689,8 +19104,8 @@ module Aws::EC2
18689
19104
  # * `egress.ip-permission.ipv6-cidr` - An IPv6 CIDR block for an
18690
19105
  # outbound security group rule.
18691
19106
  #
18692
- # * `egress.ip-permission.prefix-list-id` - The ID (prefix) of the AWS
18693
- # service to which a security group rule allows outbound access.
19107
+ # * `egress.ip-permission.prefix-list-id` - The ID of a prefix list to
19108
+ # which a security group rule allows outbound access.
18694
19109
  #
18695
19110
  # * `egress.ip-permission.protocol` - The IP protocol for an outbound
18696
19111
  # security group rule (`tcp` \| `udp` \| `icmp` or a protocol
@@ -18721,8 +19136,8 @@ module Aws::EC2
18721
19136
  # * `ip-permission.ipv6-cidr` - An IPv6 CIDR block for an inbound
18722
19137
  # security group rule.
18723
19138
  #
18724
- # * `ip-permission.prefix-list-id` - The ID (prefix) of the AWS
18725
- # service from which a security group rule allows inbound access.
19139
+ # * `ip-permission.prefix-list-id` - The ID of a prefix list from
19140
+ # which a security group rule allows inbound access.
18726
19141
  #
18727
19142
  # * `ip-permission.protocol` - The IP protocol for an inbound security
18728
19143
  # group rule (`tcp` \| `udp` \| `icmp` or a protocol number).
@@ -23438,8 +23853,8 @@ module Aws::EC2
23438
23853
  #
23439
23854
  # @!attribute [rw] delete_on_termination
23440
23855
  # Indicates whether the EBS volume is deleted on instance termination.
23441
- # For more information, see [Preserving Amazon EBS Volumes on Instance
23442
- # Termination][1] in the Amazon Elastic Compute Cloud User Guide.
23856
+ # For more information, see [Preserving Amazon EBS volumes on instance
23857
+ # termination][1] in the Amazon Elastic Compute Cloud User Guide.
23443
23858
  #
23444
23859
  #
23445
23860
  #
@@ -23452,7 +23867,7 @@ module Aws::EC2
23452
23867
  # are provisioned for the volume. For `gp2` volumes, this represents
23453
23868
  # the baseline performance of the volume and the rate at which the
23454
23869
  # volume accumulates I/O credits for bursting. For more information,
23455
- # see [Amazon EBS Volume Types][1] in the *Amazon Elastic Compute
23870
+ # see [Amazon EBS volume types][1] in the *Amazon Elastic Compute
23456
23871
  # Cloud User Guide*.
23457
23872
  #
23458
23873
  # Constraints: Range is 100-16,000 IOPS for `gp2` volumes and 100 to
@@ -23523,8 +23938,8 @@ module Aws::EC2
23523
23938
  # In no case can you remove encryption from an encrypted volume.
23524
23939
  #
23525
23940
  # Encrypted volumes can only be attached to instances that support
23526
- # Amazon EBS encryption. For more information, see [Supported Instance
23527
- # Types][2].
23941
+ # Amazon EBS encryption. For more information, see [Supported instance
23942
+ # types][2].
23528
23943
  #
23529
23944
  # This parameter is not returned by .
23530
23945
  #
@@ -26389,6 +26804,133 @@ module Aws::EC2
26389
26804
  include Aws::Structure
26390
26805
  end
26391
26806
 
26807
+ # @note When making an API call, you may pass GetManagedPrefixListAssociationsRequest
26808
+ # data as a hash:
26809
+ #
26810
+ # {
26811
+ # dry_run: false,
26812
+ # prefix_list_id: "PrefixListResourceId", # required
26813
+ # max_results: 1,
26814
+ # next_token: "NextToken",
26815
+ # }
26816
+ #
26817
+ # @!attribute [rw] dry_run
26818
+ # Checks whether you have the required permissions for the action,
26819
+ # without actually making the request, and provides an error response.
26820
+ # If you have the required permissions, the error response is
26821
+ # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`.
26822
+ # @return [Boolean]
26823
+ #
26824
+ # @!attribute [rw] prefix_list_id
26825
+ # The ID of the prefix list.
26826
+ # @return [String]
26827
+ #
26828
+ # @!attribute [rw] max_results
26829
+ # The maximum number of results to return with a single call. To
26830
+ # retrieve the remaining results, make another call with the returned
26831
+ # `nextToken` value.
26832
+ # @return [Integer]
26833
+ #
26834
+ # @!attribute [rw] next_token
26835
+ # The token for the next page of results.
26836
+ # @return [String]
26837
+ #
26838
+ # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/GetManagedPrefixListAssociationsRequest AWS API Documentation
26839
+ #
26840
+ class GetManagedPrefixListAssociationsRequest < Struct.new(
26841
+ :dry_run,
26842
+ :prefix_list_id,
26843
+ :max_results,
26844
+ :next_token)
26845
+ SENSITIVE = []
26846
+ include Aws::Structure
26847
+ end
26848
+
26849
+ # @!attribute [rw] prefix_list_associations
26850
+ # Information about the associations.
26851
+ # @return [Array<Types::PrefixListAssociation>]
26852
+ #
26853
+ # @!attribute [rw] next_token
26854
+ # The token to use to retrieve the next page of results. This value is
26855
+ # `null` when there are no more results to return.
26856
+ # @return [String]
26857
+ #
26858
+ # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/GetManagedPrefixListAssociationsResult AWS API Documentation
26859
+ #
26860
+ class GetManagedPrefixListAssociationsResult < Struct.new(
26861
+ :prefix_list_associations,
26862
+ :next_token)
26863
+ SENSITIVE = []
26864
+ include Aws::Structure
26865
+ end
26866
+
26867
+ # @note When making an API call, you may pass GetManagedPrefixListEntriesRequest
26868
+ # data as a hash:
26869
+ #
26870
+ # {
26871
+ # dry_run: false,
26872
+ # prefix_list_id: "PrefixListResourceId", # required
26873
+ # target_version: 1,
26874
+ # max_results: 1,
26875
+ # next_token: "NextToken",
26876
+ # }
26877
+ #
26878
+ # @!attribute [rw] dry_run
26879
+ # Checks whether you have the required permissions for the action,
26880
+ # without actually making the request, and provides an error response.
26881
+ # If you have the required permissions, the error response is
26882
+ # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`.
26883
+ # @return [Boolean]
26884
+ #
26885
+ # @!attribute [rw] prefix_list_id
26886
+ # The ID of the prefix list.
26887
+ # @return [String]
26888
+ #
26889
+ # @!attribute [rw] target_version
26890
+ # The version of the prefix list for which to return the entries. The
26891
+ # default is the current version.
26892
+ # @return [Integer]
26893
+ #
26894
+ # @!attribute [rw] max_results
26895
+ # The maximum number of results to return with a single call. To
26896
+ # retrieve the remaining results, make another call with the returned
26897
+ # `nextToken` value.
26898
+ # @return [Integer]
26899
+ #
26900
+ # @!attribute [rw] next_token
26901
+ # The token for the next page of results.
26902
+ # @return [String]
26903
+ #
26904
+ # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/GetManagedPrefixListEntriesRequest AWS API Documentation
26905
+ #
26906
+ class GetManagedPrefixListEntriesRequest < Struct.new(
26907
+ :dry_run,
26908
+ :prefix_list_id,
26909
+ :target_version,
26910
+ :max_results,
26911
+ :next_token)
26912
+ SENSITIVE = []
26913
+ include Aws::Structure
26914
+ end
26915
+
26916
+ # @!attribute [rw] entries
26917
+ # Information about the prefix list entries.
26918
+ # @return [Array<Types::PrefixListEntry>]
26919
+ #
26920
+ # @!attribute [rw] next_token
26921
+ # The token to use to retrieve the next page of results. This value is
26922
+ # `null` when there are no more results to return.
26923
+ # @return [String]
26924
+ #
26925
+ # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/GetManagedPrefixListEntriesResult AWS API Documentation
26926
+ #
26927
+ class GetManagedPrefixListEntriesResult < Struct.new(
26928
+ :entries,
26929
+ :next_token)
26930
+ SENSITIVE = []
26931
+ include Aws::Structure
26932
+ end
26933
+
26392
26934
  # @note When making an API call, you may pass GetPasswordDataRequest
26393
26935
  # data as a hash:
26394
26936
  #
@@ -26943,8 +27485,8 @@ module Aws::EC2
26943
27485
 
26944
27486
  # Indicates whether your instance is configured for hibernation. This
26945
27487
  # parameter is valid only if the instance meets the [hibernation
26946
- # prerequisites][1]. For more information, see [Hibernate Your
26947
- # Instance][2] in the *Amazon Elastic Compute Cloud User Guide*.
27488
+ # prerequisites][1]. For more information, see [Hibernate your
27489
+ # instance][2] in the *Amazon Elastic Compute Cloud User Guide*.
26948
27490
  #
26949
27491
  #
26950
27492
  #
@@ -26966,8 +27508,8 @@ module Aws::EC2
26966
27508
 
26967
27509
  # Indicates whether your instance is configured for hibernation. This
26968
27510
  # parameter is valid only if the instance meets the [hibernation
26969
- # prerequisites][1]. For more information, see [Hibernate Your
26970
- # Instance][2] in the *Amazon Elastic Compute Cloud User Guide*.
27511
+ # prerequisites][1]. For more information, see [Hibernate your
27512
+ # instance][2] in the *Amazon Elastic Compute Cloud User Guide*.
26971
27513
  #
26972
27514
  #
26973
27515
  #
@@ -30646,9 +31188,7 @@ module Aws::EC2
30646
31188
  # @return [Array<Types::Ipv6Range>]
30647
31189
  #
30648
31190
  # @!attribute [rw] prefix_list_ids
30649
- # \[VPC only\] The prefix list IDs for an AWS service. With outbound
30650
- # rules, this is the AWS service to access through a VPC endpoint from
30651
- # instances associated with the security group.
31191
+ # \[VPC only\] The prefix list IDs.
30652
31192
  # @return [Array<Types::PrefixListId>]
30653
31193
  #
30654
31194
  # @!attribute [rw] to_port
@@ -32917,6 +33457,65 @@ module Aws::EC2
32917
33457
  include Aws::Structure
32918
33458
  end
32919
33459
 
33460
+ # Describes a managed prefix list.
33461
+ #
33462
+ # @!attribute [rw] prefix_list_id
33463
+ # The ID of the prefix list.
33464
+ # @return [String]
33465
+ #
33466
+ # @!attribute [rw] address_family
33467
+ # The IP address version.
33468
+ # @return [String]
33469
+ #
33470
+ # @!attribute [rw] state
33471
+ # The state of the prefix list.
33472
+ # @return [String]
33473
+ #
33474
+ # @!attribute [rw] state_message
33475
+ # The state message.
33476
+ # @return [String]
33477
+ #
33478
+ # @!attribute [rw] prefix_list_arn
33479
+ # The Amazon Resource Name (ARN) for the prefix list.
33480
+ # @return [String]
33481
+ #
33482
+ # @!attribute [rw] prefix_list_name
33483
+ # The name of the prefix list.
33484
+ # @return [String]
33485
+ #
33486
+ # @!attribute [rw] max_entries
33487
+ # The maximum number of entries for the prefix list.
33488
+ # @return [Integer]
33489
+ #
33490
+ # @!attribute [rw] version
33491
+ # The version of the prefix list.
33492
+ # @return [Integer]
33493
+ #
33494
+ # @!attribute [rw] tags
33495
+ # The tags for the prefix list.
33496
+ # @return [Array<Types::Tag>]
33497
+ #
33498
+ # @!attribute [rw] owner_id
33499
+ # The ID of the owner of the prefix list.
33500
+ # @return [String]
33501
+ #
33502
+ # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/ManagedPrefixList AWS API Documentation
33503
+ #
33504
+ class ManagedPrefixList < Struct.new(
33505
+ :prefix_list_id,
33506
+ :address_family,
33507
+ :state,
33508
+ :state_message,
33509
+ :prefix_list_arn,
33510
+ :prefix_list_name,
33511
+ :max_entries,
33512
+ :version,
33513
+ :tags,
33514
+ :owner_id)
33515
+ SENSITIVE = []
33516
+ include Aws::Structure
33517
+ end
33518
+
32920
33519
  # Describes the memory for the instance type.
32921
33520
  #
32922
33521
  # @!attribute [rw] size_in_mi_b
@@ -33785,8 +34384,8 @@ module Aws::EC2
33785
34384
  #
33786
34385
  # To add instance store volumes to an Amazon EBS-backed instance, you
33787
34386
  # must add them when you launch the instance. For more information,
33788
- # see [Updating the Block Device Mapping when Launching an
33789
- # Instance][1] in the *Amazon Elastic Compute Cloud User Guide*.
34387
+ # see [Updating the block device mapping when launching an
34388
+ # instance][1] in the *Amazon Elastic Compute Cloud User Guide*.
33790
34389
  #
33791
34390
  #
33792
34391
  #
@@ -33842,7 +34441,7 @@ module Aws::EC2
33842
34441
  #
33843
34442
  # @!attribute [rw] instance_type
33844
34443
  # Changes the instance type to the specified value. For more
33845
- # information, see [Instance Types][1]. If the instance type is not
34444
+ # information, see [Instance types][1]. If the instance type is not
33846
34445
  # valid, the error returned is `InvalidInstanceAttributeValue`.
33847
34446
  #
33848
34447
  #
@@ -34316,6 +34915,79 @@ module Aws::EC2
34316
34915
  include Aws::Structure
34317
34916
  end
34318
34917
 
34918
+ # @note When making an API call, you may pass ModifyManagedPrefixListRequest
34919
+ # data as a hash:
34920
+ #
34921
+ # {
34922
+ # dry_run: false,
34923
+ # prefix_list_id: "PrefixListResourceId", # required
34924
+ # current_version: 1,
34925
+ # prefix_list_name: "String",
34926
+ # add_entries: [
34927
+ # {
34928
+ # cidr: "String", # required
34929
+ # description: "String",
34930
+ # },
34931
+ # ],
34932
+ # remove_entries: [
34933
+ # {
34934
+ # cidr: "String", # required
34935
+ # },
34936
+ # ],
34937
+ # }
34938
+ #
34939
+ # @!attribute [rw] dry_run
34940
+ # Checks whether you have the required permissions for the action,
34941
+ # without actually making the request, and provides an error response.
34942
+ # If you have the required permissions, the error response is
34943
+ # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`.
34944
+ # @return [Boolean]
34945
+ #
34946
+ # @!attribute [rw] prefix_list_id
34947
+ # The ID of the prefix list.
34948
+ # @return [String]
34949
+ #
34950
+ # @!attribute [rw] current_version
34951
+ # The current version of the prefix list.
34952
+ # @return [Integer]
34953
+ #
34954
+ # @!attribute [rw] prefix_list_name
34955
+ # A name for the prefix list.
34956
+ # @return [String]
34957
+ #
34958
+ # @!attribute [rw] add_entries
34959
+ # One or more entries to add to the prefix list.
34960
+ # @return [Array<Types::AddPrefixListEntry>]
34961
+ #
34962
+ # @!attribute [rw] remove_entries
34963
+ # One or more entries to remove from the prefix list.
34964
+ # @return [Array<Types::RemovePrefixListEntry>]
34965
+ #
34966
+ # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/ModifyManagedPrefixListRequest AWS API Documentation
34967
+ #
34968
+ class ModifyManagedPrefixListRequest < Struct.new(
34969
+ :dry_run,
34970
+ :prefix_list_id,
34971
+ :current_version,
34972
+ :prefix_list_name,
34973
+ :add_entries,
34974
+ :remove_entries)
34975
+ SENSITIVE = []
34976
+ include Aws::Structure
34977
+ end
34978
+
34979
+ # @!attribute [rw] prefix_list
34980
+ # Information about the prefix list.
34981
+ # @return [Types::ManagedPrefixList]
34982
+ #
34983
+ # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/ModifyManagedPrefixListResult AWS API Documentation
34984
+ #
34985
+ class ModifyManagedPrefixListResult < Struct.new(
34986
+ :prefix_list)
34987
+ SENSITIVE = []
34988
+ include Aws::Structure
34989
+ end
34990
+
34319
34991
  # Contains the parameters for ModifyNetworkInterfaceAttribute.
34320
34992
  #
34321
34993
  # @note When making an API call, you may pass ModifyNetworkInterfaceAttributeRequest
@@ -37486,6 +38158,44 @@ module Aws::EC2
37486
38158
  include Aws::Structure
37487
38159
  end
37488
38160
 
38161
+ # Describes the resource with which a prefix list is associated.
38162
+ #
38163
+ # @!attribute [rw] resource_id
38164
+ # The ID of the resource.
38165
+ # @return [String]
38166
+ #
38167
+ # @!attribute [rw] resource_owner
38168
+ # The owner of the resource.
38169
+ # @return [String]
38170
+ #
38171
+ # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/PrefixListAssociation AWS API Documentation
38172
+ #
38173
+ class PrefixListAssociation < Struct.new(
38174
+ :resource_id,
38175
+ :resource_owner)
38176
+ SENSITIVE = []
38177
+ include Aws::Structure
38178
+ end
38179
+
38180
+ # Describes a prefix list entry.
38181
+ #
38182
+ # @!attribute [rw] cidr
38183
+ # The CIDR block.
38184
+ # @return [String]
38185
+ #
38186
+ # @!attribute [rw] description
38187
+ # The description.
38188
+ # @return [String]
38189
+ #
38190
+ # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/PrefixListEntry AWS API Documentation
38191
+ #
38192
+ class PrefixListEntry < Struct.new(
38193
+ :cidr,
38194
+ :description)
38195
+ SENSITIVE = []
38196
+ include Aws::Structure
38197
+ end
38198
+
37489
38199
  # Describes a prefix list ID.
37490
38200
  #
37491
38201
  # @note When making an API call, you may pass PrefixListId
@@ -38044,6 +38754,17 @@ module Aws::EC2
38044
38754
  # host_id_set: ["DedicatedHostId"], # required
38045
38755
  # limit_price: "String",
38046
38756
  # offering_id: "OfferingId", # required
38757
+ # tag_specifications: [
38758
+ # {
38759
+ # resource_type: "client-vpn-endpoint", # accepts client-vpn-endpoint, customer-gateway, dedicated-host, dhcp-options, elastic-ip, elastic-gpu, export-image-task, export-instance-task, fleet, fpga-image, host-reservation, image, import-image-task, import-snapshot-task, instance, internet-gateway, key-pair, launch-template, local-gateway-route-table-vpc-association, natgateway, network-acl, network-interface, placement-group, reserved-instances, route-table, security-group, snapshot, spot-fleet-request, spot-instances-request, subnet, traffic-mirror-filter, traffic-mirror-session, traffic-mirror-target, transit-gateway, transit-gateway-attachment, transit-gateway-multicast-domain, transit-gateway-route-table, volume, vpc, vpc-peering-connection, vpn-connection, vpn-gateway, vpc-flow-log
38760
+ # tags: [
38761
+ # {
38762
+ # key: "String",
38763
+ # value: "String",
38764
+ # },
38765
+ # ],
38766
+ # },
38767
+ # ],
38047
38768
  # }
38048
38769
  #
38049
38770
  # @!attribute [rw] client_token
@@ -38081,6 +38802,10 @@ module Aws::EC2
38081
38802
  # The ID of the offering.
38082
38803
  # @return [String]
38083
38804
  #
38805
+ # @!attribute [rw] tag_specifications
38806
+ # The tags to apply to the Dedicated Host Reservation during purchase.
38807
+ # @return [Array<Types::TagSpecification>]
38808
+ #
38084
38809
  # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/PurchaseHostReservationRequest AWS API Documentation
38085
38810
  #
38086
38811
  class PurchaseHostReservationRequest < Struct.new(
@@ -38088,7 +38813,8 @@ module Aws::EC2
38088
38813
  :currency_code,
38089
38814
  :host_id_set,
38090
38815
  :limit_price,
38091
- :offering_id)
38816
+ :offering_id,
38817
+ :tag_specifications)
38092
38818
  SENSITIVE = []
38093
38819
  include Aws::Structure
38094
38820
  end
@@ -38961,6 +39687,27 @@ module Aws::EC2
38961
39687
  include Aws::Structure
38962
39688
  end
38963
39689
 
39690
+ # An entry for a prefix list.
39691
+ #
39692
+ # @note When making an API call, you may pass RemovePrefixListEntry
39693
+ # data as a hash:
39694
+ #
39695
+ # {
39696
+ # cidr: "String", # required
39697
+ # }
39698
+ #
39699
+ # @!attribute [rw] cidr
39700
+ # The CIDR block.
39701
+ # @return [String]
39702
+ #
39703
+ # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/RemovePrefixListEntry AWS API Documentation
39704
+ #
39705
+ class RemovePrefixListEntry < Struct.new(
39706
+ :cidr)
39707
+ SENSITIVE = []
39708
+ include Aws::Structure
39709
+ end
39710
+
38964
39711
  # @note When making an API call, you may pass ReplaceIamInstanceProfileAssociationRequest
38965
39712
  # data as a hash:
38966
39713
  #
@@ -39151,6 +39898,7 @@ module Aws::EC2
39151
39898
  # {
39152
39899
  # destination_cidr_block: "String",
39153
39900
  # destination_ipv_6_cidr_block: "String",
39901
+ # destination_prefix_list_id: "PrefixListResourceId",
39154
39902
  # dry_run: false,
39155
39903
  # egress_only_internet_gateway_id: "EgressOnlyInternetGatewayId",
39156
39904
  # gateway_id: "RouteGatewayId",
@@ -39176,6 +39924,10 @@ module Aws::EC2
39176
39924
  # the table.
39177
39925
  # @return [String]
39178
39926
  #
39927
+ # @!attribute [rw] destination_prefix_list_id
39928
+ # The ID of the prefix list for the route.
39929
+ # @return [String]
39930
+ #
39179
39931
  # @!attribute [rw] dry_run
39180
39932
  # Checks whether you have the required permissions for the action,
39181
39933
  # without actually making the request, and provides an error response.
@@ -39229,6 +39981,7 @@ module Aws::EC2
39229
39981
  class ReplaceRouteRequest < Struct.new(
39230
39982
  :destination_cidr_block,
39231
39983
  :destination_ipv_6_cidr_block,
39984
+ :destination_prefix_list_id,
39232
39985
  :dry_run,
39233
39986
  :egress_only_internet_gateway_id,
39234
39987
  :gateway_id,
@@ -41389,6 +42142,58 @@ module Aws::EC2
41389
42142
  include Aws::Structure
41390
42143
  end
41391
42144
 
42145
+ # @note When making an API call, you may pass RestoreManagedPrefixListVersionRequest
42146
+ # data as a hash:
42147
+ #
42148
+ # {
42149
+ # dry_run: false,
42150
+ # prefix_list_id: "PrefixListResourceId", # required
42151
+ # previous_version: 1, # required
42152
+ # current_version: 1, # required
42153
+ # }
42154
+ #
42155
+ # @!attribute [rw] dry_run
42156
+ # Checks whether you have the required permissions for the action,
42157
+ # without actually making the request, and provides an error response.
42158
+ # If you have the required permissions, the error response is
42159
+ # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`.
42160
+ # @return [Boolean]
42161
+ #
42162
+ # @!attribute [rw] prefix_list_id
42163
+ # The ID of the prefix list.
42164
+ # @return [String]
42165
+ #
42166
+ # @!attribute [rw] previous_version
42167
+ # The version to restore.
42168
+ # @return [Integer]
42169
+ #
42170
+ # @!attribute [rw] current_version
42171
+ # The current version number for the prefix list.
42172
+ # @return [Integer]
42173
+ #
42174
+ # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/RestoreManagedPrefixListVersionRequest AWS API Documentation
42175
+ #
42176
+ class RestoreManagedPrefixListVersionRequest < Struct.new(
42177
+ :dry_run,
42178
+ :prefix_list_id,
42179
+ :previous_version,
42180
+ :current_version)
42181
+ SENSITIVE = []
42182
+ include Aws::Structure
42183
+ end
42184
+
42185
+ # @!attribute [rw] prefix_list
42186
+ # Information about the prefix list.
42187
+ # @return [Types::ManagedPrefixList]
42188
+ #
42189
+ # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/RestoreManagedPrefixListVersionResult AWS API Documentation
42190
+ #
42191
+ class RestoreManagedPrefixListVersionResult < Struct.new(
42192
+ :prefix_list)
42193
+ SENSITIVE = []
42194
+ include Aws::Structure
42195
+ end
42196
+
41392
42197
  # @note When making an API call, you may pass RevokeClientVpnIngressRequest
41393
42198
  # data as a hash:
41394
42199
  #
@@ -42076,7 +42881,7 @@ module Aws::EC2
42076
42881
  # @return [String]
42077
42882
  #
42078
42883
  # @!attribute [rw] instance_type
42079
- # The instance type. For more information, see [Instance Types][1] in
42884
+ # The instance type. For more information, see [Instance types][1] in
42080
42885
  # the *Amazon Elastic Compute Cloud User Guide*.
42081
42886
  #
42082
42887
  # Default: `m1.small`
@@ -42221,8 +43026,8 @@ module Aws::EC2
42221
43026
  #
42222
43027
  # @!attribute [rw] user_data
42223
43028
  # The user data to make available to the instance. For more
42224
- # information, see [Running Commands on Your Linux Instance at
42225
- # Launch][1] (Linux) and [Adding User Data][2] (Windows). If you are
43029
+ # information, see [Running commands on your Linux instance at
43030
+ # launch][1] (Linux) and [Adding User Data][2] (Windows). If you are
42226
43031
  # using a command line tool, base64-encoding is performed for you, and
42227
43032
  # you can load the text from a file. Otherwise, you must provide
42228
43033
  # base64-encoded text. User data is limited to 16 KB.
@@ -42374,7 +43179,7 @@ module Aws::EC2
42374
43179
  # instance. Valid values are `standard` and `unlimited`. To change
42375
43180
  # this attribute after launch, use [
42376
43181
  # ModifyInstanceCreditSpecification][1]. For more information, see
42377
- # [Burstable Performance Instances][2] in the *Amazon Elastic Compute
43182
+ # [Burstable performance instances][2] in the *Amazon Elastic Compute
42378
43183
  # Cloud User Guide*.
42379
43184
  #
42380
43185
  # Default: `standard` (T2 instances) or `unlimited` (T3/T3a instances)
@@ -42387,7 +43192,7 @@ module Aws::EC2
42387
43192
  #
42388
43193
  # @!attribute [rw] cpu_options
42389
43194
  # The CPU options for the instance. For more information, see
42390
- # [Optimizing CPU Options][1] in the *Amazon Elastic Compute Cloud
43195
+ # [Optimizing CPU options][1] in the *Amazon Elastic Compute Cloud
42391
43196
  # User Guide*.
42392
43197
  #
42393
43198
  #
@@ -42405,7 +43210,7 @@ module Aws::EC2
42405
43210
  #
42406
43211
  # @!attribute [rw] hibernation_options
42407
43212
  # Indicates whether an instance is enabled for hibernation. For more
42408
- # information, see [Hibernate Your Instance][1] in the *Amazon Elastic
43213
+ # information, see [Hibernate your instance][1] in the *Amazon Elastic
42409
43214
  # Compute Cloud User Guide*.
42410
43215
  #
42411
43216
  #
@@ -42419,7 +43224,7 @@ module Aws::EC2
42419
43224
  #
42420
43225
  # @!attribute [rw] metadata_options
42421
43226
  # The metadata options for the instance. For more information, see
42422
- # [Instance Metadata and User Data][1].
43227
+ # [Instance metadata and user data][1].
42423
43228
  #
42424
43229
  #
42425
43230
  #
@@ -45601,8 +46406,7 @@ module Aws::EC2
45601
46406
  # @return [Array<String>]
45602
46407
  #
45603
46408
  # @!attribute [rw] prefix_list_ids
45604
- # The prefix list IDs for an AWS service. Not applicable for stale
45605
- # security group rules.
46409
+ # The prefix list IDs. Not applicable for stale security group rules.
45606
46410
  # @return [Array<String>]
45607
46411
  #
45608
46412
  # @!attribute [rw] to_port
@@ -45832,8 +46636,8 @@ module Aws::EC2
45832
46636
  # @!attribute [rw] hibernate
45833
46637
  # Hibernates the instance if the instance was enabled for hibernation
45834
46638
  # at launch. If the instance cannot hibernate successfully, a normal
45835
- # shutdown occurs. For more information, see [Hibernate Your
45836
- # Instance][1] in the *Amazon Elastic Compute Cloud User Guide*.
46639
+ # shutdown occurs. For more information, see [Hibernate your
46640
+ # instance][1] in the *Amazon Elastic Compute Cloud User Guide*.
45837
46641
  #
45838
46642
  # Default: `false`
45839
46643
  #
@@ -46209,15 +47013,20 @@ module Aws::EC2
46209
47013
  # @!attribute [rw] resource_type
46210
47014
  # The type of resource to tag. Currently, the resource types that
46211
47015
  # support tagging on creation are: `capacity-reservation` \|
46212
- # `client-vpn-endpoint` \| `dedicated-host` \| `fleet` \| `fpga-image`
46213
- # \| `instance` \| `ipv4pool-ec2` \| `ipv6pool-ec2` \| `key-pair` \|
46214
- # `launch-template` \| `natgateway` \| `spot-fleet-request` \|
46215
- # `placement-group` \| `snapshot` \| `traffic-mirror-filter` \|
46216
- # `traffic-mirror-session` \| `traffic-mirror-target` \|
46217
- # `transit-gateway` \| `transit-gateway-attachment` \|
46218
- # `transit-gateway-route-table` \| `vpc-endpoint` (for interface VPC
46219
- # endpoints)\| `vpc-endpoint-service` (for gateway VPC endpoints) \|
46220
- # `volume` \| `vpc-flow-log`.
47016
+ # `client-vpn-endpoint` \| `dedicated-host` \| `dhcp-options` \|
47017
+ # `export-image-task` \| `export-instance-task` \| `fleet` \|
47018
+ # `fpga-image` \| `host-reservation` \| `import-image-task` \|
47019
+ # `import-snapshot-task` \| `instance` \| `internet-gateway` \|
47020
+ # `ipv4pool-ec2` \| `ipv6pool-ec2` \| `key-pair` \| `launch-template`
47021
+ # \| `placement-group` \| `prefix-list` \| `launch-template` \|
47022
+ # `natgateway` \| `network-acl` \| `security-group` \|
47023
+ # `spot-fleet-request` \| `snapshot` \| `subnet` \|
47024
+ # `traffic-mirror-filter` \| `traffic-mirror-session` \|
47025
+ # `traffic-mirror-target` \| `transit-gateway` \|
47026
+ # `transit-gateway-attachment` \| `transit-gateway-route-table` \|
47027
+ # `volume` \|`vpc` \| `vpc-endpoint` (for interface and gateway
47028
+ # endpoints) \| `vpc-endpoint-service` (for AWS PrivateLink) \|
47029
+ # `vpc-flow-log`.
46221
47030
  #
46222
47031
  # To tag a resource after it has been created, see [CreateTags][1].
46223
47032
  #