aws-sdk-ec2 1.171.0 → 1.172.0

Sign up to get free protection for your applications and to get access to all the features.
@@ -264,12 +264,15 @@ module Aws::EC2
264
264
  #
265
265
  # route.delete({
266
266
  # destination_ipv_6_cidr_block: "String",
267
+ # destination_prefix_list_id: "PrefixListResourceId",
267
268
  # dry_run: false,
268
269
  # })
269
270
  # @param [Hash] options ({})
270
271
  # @option options [String] :destination_ipv_6_cidr_block
271
272
  # The IPv6 CIDR range for the route. The value you specify must match
272
273
  # the CIDR for the route exactly.
274
+ # @option options [String] :destination_prefix_list_id
275
+ # The ID of the prefix list for the route.
273
276
  # @option options [Boolean] :dry_run
274
277
  # Checks whether you have the required permissions for the action,
275
278
  # without actually making the request, and provides an error response.
@@ -289,6 +292,7 @@ module Aws::EC2
289
292
  #
290
293
  # route.replace({
291
294
  # destination_ipv_6_cidr_block: "String",
295
+ # destination_prefix_list_id: "PrefixListResourceId",
292
296
  # dry_run: false,
293
297
  # egress_only_internet_gateway_id: "EgressOnlyInternetGatewayId",
294
298
  # gateway_id: "RouteGatewayId",
@@ -305,6 +309,8 @@ module Aws::EC2
305
309
  # The IPv6 CIDR address block used for the destination match. The value
306
310
  # that you provide must match the CIDR of an existing route in the
307
311
  # table.
312
+ # @option options [String] :destination_prefix_list_id
313
+ # The ID of the prefix list for the route.
308
314
  # @option options [Boolean] :dry_run
309
315
  # Checks whether you have the required permissions for the action,
310
316
  # without actually making the request, and provides an error response.
@@ -225,6 +225,7 @@ module Aws::EC2
225
225
  # route = route_table.create_route({
226
226
  # destination_cidr_block: "String",
227
227
  # destination_ipv_6_cidr_block: "String",
228
+ # destination_prefix_list_id: "PrefixListResourceId",
228
229
  # dry_run: false,
229
230
  # egress_only_internet_gateway_id: "EgressOnlyInternetGatewayId",
230
231
  # gateway_id: "RouteGatewayId",
@@ -238,10 +239,14 @@ module Aws::EC2
238
239
  # @param [Hash] options ({})
239
240
  # @option options [String] :destination_cidr_block
240
241
  # The IPv4 CIDR address block used for the destination match. Routing
241
- # decisions are based on the most specific match.
242
+ # decisions are based on the most specific match. We modify the
243
+ # specified CIDR block to its canonical form; for example, if you
244
+ # specify `100.68.0.18/18`, we modify it to `100.68.0.0/18`.
242
245
  # @option options [String] :destination_ipv_6_cidr_block
243
246
  # The IPv6 CIDR block used for the destination match. Routing decisions
244
247
  # are based on the most specific match.
248
+ # @option options [String] :destination_prefix_list_id
249
+ # The ID of a prefix list used for the destination match.
245
250
  # @option options [Boolean] :dry_run
246
251
  # Checks whether you have the required permissions for the action,
247
252
  # without actually making the request, and provides an error response.
@@ -1344,9 +1344,6 @@ module Aws::EC2
1344
1344
  # * `attachment.instance-owner-id` - The owner ID of the instance to
1345
1345
  # which the network interface is attached.
1346
1346
  #
1347
- # * `attachment.nat-gateway-id` - The ID of the NAT gateway to which the
1348
- # network interface is attached.
1349
- #
1350
1347
  # * `attachment.status` - The status of the attachment (`attaching` \|
1351
1348
  # `attached` \| `detaching` \| `detached`).
1352
1349
  #
@@ -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
@@ -6670,6 +6699,107 @@ module Aws::EC2
6670
6699
  include Aws::Structure
6671
6700
  end
6672
6701
 
6702
+ # @note When making an API call, you may pass CreateManagedPrefixListRequest
6703
+ # data as a hash:
6704
+ #
6705
+ # {
6706
+ # dry_run: false,
6707
+ # prefix_list_name: "String", # required
6708
+ # entries: [
6709
+ # {
6710
+ # cidr: "String", # required
6711
+ # description: "String",
6712
+ # },
6713
+ # ],
6714
+ # max_entries: 1, # required
6715
+ # tag_specifications: [
6716
+ # {
6717
+ # 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
6718
+ # tags: [
6719
+ # {
6720
+ # key: "String",
6721
+ # value: "String",
6722
+ # },
6723
+ # ],
6724
+ # },
6725
+ # ],
6726
+ # address_family: "String", # required
6727
+ # client_token: "String",
6728
+ # }
6729
+ #
6730
+ # @!attribute [rw] dry_run
6731
+ # Checks whether you have the required permissions for the action,
6732
+ # without actually making the request, and provides an error response.
6733
+ # If you have the required permissions, the error response is
6734
+ # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`.
6735
+ # @return [Boolean]
6736
+ #
6737
+ # @!attribute [rw] prefix_list_name
6738
+ # A name for the prefix list.
6739
+ #
6740
+ # Constraints: Up to 255 characters in length. The name cannot start
6741
+ # with `com.amazonaws`.
6742
+ # @return [String]
6743
+ #
6744
+ # @!attribute [rw] entries
6745
+ # One or more entries for the prefix list.
6746
+ # @return [Array<Types::AddPrefixListEntry>]
6747
+ #
6748
+ # @!attribute [rw] max_entries
6749
+ # The maximum number of entries for the prefix list.
6750
+ # @return [Integer]
6751
+ #
6752
+ # @!attribute [rw] tag_specifications
6753
+ # The tags to apply to the prefix list during creation.
6754
+ # @return [Array<Types::TagSpecification>]
6755
+ #
6756
+ # @!attribute [rw] address_family
6757
+ # The IP address type.
6758
+ #
6759
+ # Valid Values: `IPv4` \| `IPv6`
6760
+ # @return [String]
6761
+ #
6762
+ # @!attribute [rw] client_token
6763
+ # Unique, case-sensitive identifier you provide to ensure the
6764
+ # idempotency of the request. For more information, see [Ensuring
6765
+ # Idempotency][1].
6766
+ #
6767
+ # Constraints: Up to 255 UTF-8 characters in length.
6768
+ #
6769
+ # **A suitable default value is auto-generated.** You should normally
6770
+ # not need to pass this option.
6771
+ #
6772
+ #
6773
+ #
6774
+ # [1]: https://docs.aws.amazon.com/AWSEC2/latest/APIReference/Run_Instance_Idempotency.html
6775
+ # @return [String]
6776
+ #
6777
+ # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/CreateManagedPrefixListRequest AWS API Documentation
6778
+ #
6779
+ class CreateManagedPrefixListRequest < Struct.new(
6780
+ :dry_run,
6781
+ :prefix_list_name,
6782
+ :entries,
6783
+ :max_entries,
6784
+ :tag_specifications,
6785
+ :address_family,
6786
+ :client_token)
6787
+ SENSITIVE = []
6788
+ include Aws::Structure
6789
+ end
6790
+
6791
+ # @!attribute [rw] prefix_list
6792
+ # Information about the prefix list.
6793
+ # @return [Types::ManagedPrefixList]
6794
+ #
6795
+ # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/CreateManagedPrefixListResult AWS API Documentation
6796
+ #
6797
+ class CreateManagedPrefixListResult < Struct.new(
6798
+ :prefix_list)
6799
+ SENSITIVE = []
6800
+ include Aws::Structure
6801
+ end
6802
+
6673
6803
  # @note When making an API call, you may pass CreateNatGatewayRequest
6674
6804
  # data as a hash:
6675
6805
  #
@@ -6782,7 +6912,9 @@ module Aws::EC2
6782
6912
  #
6783
6913
  # @!attribute [rw] cidr_block
6784
6914
  # The IPv4 network range to allow or deny, in CIDR notation (for
6785
- # example `172.16.0.0/24`).
6915
+ # example `172.16.0.0/24`). We modify the specified CIDR block to its
6916
+ # canonical form; for example, if you specify `100.68.0.18/18`, we
6917
+ # modify it to `100.68.0.0/18`.
6786
6918
  # @return [String]
6787
6919
  #
6788
6920
  # @!attribute [rw] dry_run
@@ -7238,6 +7370,7 @@ module Aws::EC2
7238
7370
  # {
7239
7371
  # destination_cidr_block: "String",
7240
7372
  # destination_ipv_6_cidr_block: "String",
7373
+ # destination_prefix_list_id: "PrefixListResourceId",
7241
7374
  # dry_run: false,
7242
7375
  # egress_only_internet_gateway_id: "EgressOnlyInternetGatewayId",
7243
7376
  # gateway_id: "RouteGatewayId",
@@ -7252,7 +7385,9 @@ module Aws::EC2
7252
7385
  #
7253
7386
  # @!attribute [rw] destination_cidr_block
7254
7387
  # The IPv4 CIDR address block used for the destination match. Routing
7255
- # decisions are based on the most specific match.
7388
+ # decisions are based on the most specific match. We modify the
7389
+ # specified CIDR block to its canonical form; for example, if you
7390
+ # specify `100.68.0.18/18`, we modify it to `100.68.0.0/18`.
7256
7391
  # @return [String]
7257
7392
  #
7258
7393
  # @!attribute [rw] destination_ipv_6_cidr_block
@@ -7260,6 +7395,10 @@ module Aws::EC2
7260
7395
  # decisions are based on the most specific match.
7261
7396
  # @return [String]
7262
7397
  #
7398
+ # @!attribute [rw] destination_prefix_list_id
7399
+ # The ID of a prefix list used for the destination match.
7400
+ # @return [String]
7401
+ #
7263
7402
  # @!attribute [rw] dry_run
7264
7403
  # Checks whether you have the required permissions for the action,
7265
7404
  # without actually making the request, and provides an error response.
@@ -7311,6 +7450,7 @@ module Aws::EC2
7311
7450
  class CreateRouteRequest < Struct.new(
7312
7451
  :destination_cidr_block,
7313
7452
  :destination_ipv_6_cidr_block,
7453
+ :destination_prefix_list_id,
7314
7454
  :dry_run,
7315
7455
  :egress_only_internet_gateway_id,
7316
7456
  :gateway_id,
@@ -7657,7 +7797,9 @@ module Aws::EC2
7657
7797
  #
7658
7798
  # @!attribute [rw] cidr_block
7659
7799
  # The IPv4 network range for the subnet, in CIDR notation. For
7660
- # example, `10.0.0.0/24`.
7800
+ # example, `10.0.0.0/24`. We modify the specified CIDR block to its
7801
+ # canonical form; for example, if you specify `100.68.0.18/18`, we
7802
+ # modify it to `100.68.0.0/18`.
7661
7803
  # @return [String]
7662
7804
  #
7663
7805
  # @!attribute [rw] ipv_6_cidr_block
@@ -9239,7 +9381,9 @@ module Aws::EC2
9239
9381
  #
9240
9382
  # @!attribute [rw] cidr_block
9241
9383
  # The IPv4 network range for the VPC, in CIDR notation. For example,
9242
- # `10.0.0.0/16`.
9384
+ # `10.0.0.0/16`. We modify the specified CIDR block to its canonical
9385
+ # form; for example, if you specify `100.68.0.18/18`, we modify it to
9386
+ # `100.68.0.0/18`.
9243
9387
  # @return [String]
9244
9388
  #
9245
9389
  # @!attribute [rw] amazon_provided_ipv_6_cidr_block
@@ -10317,6 +10461,46 @@ module Aws::EC2
10317
10461
  include Aws::Structure
10318
10462
  end
10319
10463
 
10464
+ # @note When making an API call, you may pass DeleteManagedPrefixListRequest
10465
+ # data as a hash:
10466
+ #
10467
+ # {
10468
+ # dry_run: false,
10469
+ # prefix_list_id: "PrefixListResourceId", # required
10470
+ # }
10471
+ #
10472
+ # @!attribute [rw] dry_run
10473
+ # Checks whether you have the required permissions for the action,
10474
+ # without actually making the request, and provides an error response.
10475
+ # If you have the required permissions, the error response is
10476
+ # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`.
10477
+ # @return [Boolean]
10478
+ #
10479
+ # @!attribute [rw] prefix_list_id
10480
+ # The ID of the prefix list.
10481
+ # @return [String]
10482
+ #
10483
+ # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/DeleteManagedPrefixListRequest AWS API Documentation
10484
+ #
10485
+ class DeleteManagedPrefixListRequest < Struct.new(
10486
+ :dry_run,
10487
+ :prefix_list_id)
10488
+ SENSITIVE = []
10489
+ include Aws::Structure
10490
+ end
10491
+
10492
+ # @!attribute [rw] prefix_list
10493
+ # Information about the prefix list.
10494
+ # @return [Types::ManagedPrefixList]
10495
+ #
10496
+ # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/DeleteManagedPrefixListResult AWS API Documentation
10497
+ #
10498
+ class DeleteManagedPrefixListResult < Struct.new(
10499
+ :prefix_list)
10500
+ SENSITIVE = []
10501
+ include Aws::Structure
10502
+ end
10503
+
10320
10504
  # @note When making an API call, you may pass DeleteNatGatewayRequest
10321
10505
  # data as a hash:
10322
10506
  #
@@ -10606,6 +10790,7 @@ module Aws::EC2
10606
10790
  # {
10607
10791
  # destination_cidr_block: "String",
10608
10792
  # destination_ipv_6_cidr_block: "String",
10793
+ # destination_prefix_list_id: "PrefixListResourceId",
10609
10794
  # dry_run: false,
10610
10795
  # route_table_id: "RouteTableId", # required
10611
10796
  # }
@@ -10620,6 +10805,10 @@ module Aws::EC2
10620
10805
  # the CIDR for the route exactly.
10621
10806
  # @return [String]
10622
10807
  #
10808
+ # @!attribute [rw] destination_prefix_list_id
10809
+ # The ID of the prefix list for the route.
10810
+ # @return [String]
10811
+ #
10623
10812
  # @!attribute [rw] dry_run
10624
10813
  # Checks whether you have the required permissions for the action,
10625
10814
  # without actually making the request, and provides an error response.
@@ -10636,6 +10825,7 @@ module Aws::EC2
10636
10825
  class DeleteRouteRequest < Struct.new(
10637
10826
  :destination_cidr_block,
10638
10827
  :destination_ipv_6_cidr_block,
10828
+ :destination_prefix_list_id,
10639
10829
  :dry_run,
10640
10830
  :route_table_id)
10641
10831
  SENSITIVE = []
@@ -16771,6 +16961,83 @@ module Aws::EC2
16771
16961
  include Aws::Structure
16772
16962
  end
16773
16963
 
16964
+ # @note When making an API call, you may pass DescribeManagedPrefixListsRequest
16965
+ # data as a hash:
16966
+ #
16967
+ # {
16968
+ # dry_run: false,
16969
+ # filters: [
16970
+ # {
16971
+ # name: "String",
16972
+ # values: ["String"],
16973
+ # },
16974
+ # ],
16975
+ # max_results: 1,
16976
+ # next_token: "NextToken",
16977
+ # prefix_list_ids: ["String"],
16978
+ # }
16979
+ #
16980
+ # @!attribute [rw] dry_run
16981
+ # Checks whether you have the required permissions for the action,
16982
+ # without actually making the request, and provides an error response.
16983
+ # If you have the required permissions, the error response is
16984
+ # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`.
16985
+ # @return [Boolean]
16986
+ #
16987
+ # @!attribute [rw] filters
16988
+ # One or more filters.
16989
+ #
16990
+ # * `owner-id` - The ID of the prefix list owner.
16991
+ #
16992
+ # * `prefix-list-id` - The ID of the prefix list.
16993
+ #
16994
+ # * `prefix-list-name` - The name of the prefix list.
16995
+ # @return [Array<Types::Filter>]
16996
+ #
16997
+ # @!attribute [rw] max_results
16998
+ # The maximum number of results to return with a single call. To
16999
+ # retrieve the remaining results, make another call with the returned
17000
+ # `nextToken` value.
17001
+ # @return [Integer]
17002
+ #
17003
+ # @!attribute [rw] next_token
17004
+ # The token for the next page of results.
17005
+ # @return [String]
17006
+ #
17007
+ # @!attribute [rw] prefix_list_ids
17008
+ # One or more prefix list IDs.
17009
+ # @return [Array<String>]
17010
+ #
17011
+ # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/DescribeManagedPrefixListsRequest AWS API Documentation
17012
+ #
17013
+ class DescribeManagedPrefixListsRequest < Struct.new(
17014
+ :dry_run,
17015
+ :filters,
17016
+ :max_results,
17017
+ :next_token,
17018
+ :prefix_list_ids)
17019
+ SENSITIVE = []
17020
+ include Aws::Structure
17021
+ end
17022
+
17023
+ # @!attribute [rw] next_token
17024
+ # The token to use to retrieve the next page of results. This value is
17025
+ # `null` when there are no more results to return.
17026
+ # @return [String]
17027
+ #
17028
+ # @!attribute [rw] prefix_lists
17029
+ # Information about the prefix lists.
17030
+ # @return [Array<Types::ManagedPrefixList>]
17031
+ #
17032
+ # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/DescribeManagedPrefixListsResult AWS API Documentation
17033
+ #
17034
+ class DescribeManagedPrefixListsResult < Struct.new(
17035
+ :next_token,
17036
+ :prefix_lists)
17037
+ SENSITIVE = []
17038
+ include Aws::Structure
17039
+ end
17040
+
16774
17041
  # @note When making an API call, you may pass DescribeMovingAddressesRequest
16775
17042
  # data as a hash:
16776
17043
  #
@@ -17283,9 +17550,6 @@ module Aws::EC2
17283
17550
  # * `attachment.instance-owner-id` - The owner ID of the instance to
17284
17551
  # which the network interface is attached.
17285
17552
  #
17286
- # * `attachment.nat-gateway-id` - The ID of the NAT gateway to which
17287
- # the network interface is attached.
17288
- #
17289
17553
  # * `attachment.status` - The status of the attachment (`attaching` \|
17290
17554
  # `attached` \| `detaching` \| `detached`).
17291
17555
  #
@@ -18689,8 +18953,8 @@ module Aws::EC2
18689
18953
  # * `egress.ip-permission.ipv6-cidr` - An IPv6 CIDR block for an
18690
18954
  # outbound security group rule.
18691
18955
  #
18692
- # * `egress.ip-permission.prefix-list-id` - The ID (prefix) of the AWS
18693
- # service to which a security group rule allows outbound access.
18956
+ # * `egress.ip-permission.prefix-list-id` - The ID of a prefix list to
18957
+ # which a security group rule allows outbound access.
18694
18958
  #
18695
18959
  # * `egress.ip-permission.protocol` - The IP protocol for an outbound
18696
18960
  # security group rule (`tcp` \| `udp` \| `icmp` or a protocol
@@ -18721,8 +18985,8 @@ module Aws::EC2
18721
18985
  # * `ip-permission.ipv6-cidr` - An IPv6 CIDR block for an inbound
18722
18986
  # security group rule.
18723
18987
  #
18724
- # * `ip-permission.prefix-list-id` - The ID (prefix) of the AWS
18725
- # service from which a security group rule allows inbound access.
18988
+ # * `ip-permission.prefix-list-id` - The ID of a prefix list from
18989
+ # which a security group rule allows inbound access.
18726
18990
  #
18727
18991
  # * `ip-permission.protocol` - The IP protocol for an inbound security
18728
18992
  # group rule (`tcp` \| `udp` \| `icmp` or a protocol number).
@@ -26389,6 +26653,133 @@ module Aws::EC2
26389
26653
  include Aws::Structure
26390
26654
  end
26391
26655
 
26656
+ # @note When making an API call, you may pass GetManagedPrefixListAssociationsRequest
26657
+ # data as a hash:
26658
+ #
26659
+ # {
26660
+ # dry_run: false,
26661
+ # prefix_list_id: "PrefixListResourceId", # required
26662
+ # max_results: 1,
26663
+ # next_token: "NextToken",
26664
+ # }
26665
+ #
26666
+ # @!attribute [rw] dry_run
26667
+ # Checks whether you have the required permissions for the action,
26668
+ # without actually making the request, and provides an error response.
26669
+ # If you have the required permissions, the error response is
26670
+ # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`.
26671
+ # @return [Boolean]
26672
+ #
26673
+ # @!attribute [rw] prefix_list_id
26674
+ # The ID of the prefix list.
26675
+ # @return [String]
26676
+ #
26677
+ # @!attribute [rw] max_results
26678
+ # The maximum number of results to return with a single call. To
26679
+ # retrieve the remaining results, make another call with the returned
26680
+ # `nextToken` value.
26681
+ # @return [Integer]
26682
+ #
26683
+ # @!attribute [rw] next_token
26684
+ # The token for the next page of results.
26685
+ # @return [String]
26686
+ #
26687
+ # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/GetManagedPrefixListAssociationsRequest AWS API Documentation
26688
+ #
26689
+ class GetManagedPrefixListAssociationsRequest < Struct.new(
26690
+ :dry_run,
26691
+ :prefix_list_id,
26692
+ :max_results,
26693
+ :next_token)
26694
+ SENSITIVE = []
26695
+ include Aws::Structure
26696
+ end
26697
+
26698
+ # @!attribute [rw] prefix_list_associations
26699
+ # Information about the associations.
26700
+ # @return [Array<Types::PrefixListAssociation>]
26701
+ #
26702
+ # @!attribute [rw] next_token
26703
+ # The token to use to retrieve the next page of results. This value is
26704
+ # `null` when there are no more results to return.
26705
+ # @return [String]
26706
+ #
26707
+ # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/GetManagedPrefixListAssociationsResult AWS API Documentation
26708
+ #
26709
+ class GetManagedPrefixListAssociationsResult < Struct.new(
26710
+ :prefix_list_associations,
26711
+ :next_token)
26712
+ SENSITIVE = []
26713
+ include Aws::Structure
26714
+ end
26715
+
26716
+ # @note When making an API call, you may pass GetManagedPrefixListEntriesRequest
26717
+ # data as a hash:
26718
+ #
26719
+ # {
26720
+ # dry_run: false,
26721
+ # prefix_list_id: "PrefixListResourceId", # required
26722
+ # target_version: 1,
26723
+ # max_results: 1,
26724
+ # next_token: "NextToken",
26725
+ # }
26726
+ #
26727
+ # @!attribute [rw] dry_run
26728
+ # Checks whether you have the required permissions for the action,
26729
+ # without actually making the request, and provides an error response.
26730
+ # If you have the required permissions, the error response is
26731
+ # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`.
26732
+ # @return [Boolean]
26733
+ #
26734
+ # @!attribute [rw] prefix_list_id
26735
+ # The ID of the prefix list.
26736
+ # @return [String]
26737
+ #
26738
+ # @!attribute [rw] target_version
26739
+ # The version of the prefix list for which to return the entries. The
26740
+ # default is the current version.
26741
+ # @return [Integer]
26742
+ #
26743
+ # @!attribute [rw] max_results
26744
+ # The maximum number of results to return with a single call. To
26745
+ # retrieve the remaining results, make another call with the returned
26746
+ # `nextToken` value.
26747
+ # @return [Integer]
26748
+ #
26749
+ # @!attribute [rw] next_token
26750
+ # The token for the next page of results.
26751
+ # @return [String]
26752
+ #
26753
+ # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/GetManagedPrefixListEntriesRequest AWS API Documentation
26754
+ #
26755
+ class GetManagedPrefixListEntriesRequest < Struct.new(
26756
+ :dry_run,
26757
+ :prefix_list_id,
26758
+ :target_version,
26759
+ :max_results,
26760
+ :next_token)
26761
+ SENSITIVE = []
26762
+ include Aws::Structure
26763
+ end
26764
+
26765
+ # @!attribute [rw] entries
26766
+ # Information about the prefix list entries.
26767
+ # @return [Array<Types::PrefixListEntry>]
26768
+ #
26769
+ # @!attribute [rw] next_token
26770
+ # The token to use to retrieve the next page of results. This value is
26771
+ # `null` when there are no more results to return.
26772
+ # @return [String]
26773
+ #
26774
+ # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/GetManagedPrefixListEntriesResult AWS API Documentation
26775
+ #
26776
+ class GetManagedPrefixListEntriesResult < Struct.new(
26777
+ :entries,
26778
+ :next_token)
26779
+ SENSITIVE = []
26780
+ include Aws::Structure
26781
+ end
26782
+
26392
26783
  # @note When making an API call, you may pass GetPasswordDataRequest
26393
26784
  # data as a hash:
26394
26785
  #
@@ -30646,9 +31037,7 @@ module Aws::EC2
30646
31037
  # @return [Array<Types::Ipv6Range>]
30647
31038
  #
30648
31039
  # @!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.
31040
+ # \[VPC only\] The prefix list IDs.
30652
31041
  # @return [Array<Types::PrefixListId>]
30653
31042
  #
30654
31043
  # @!attribute [rw] to_port
@@ -32917,6 +33306,65 @@ module Aws::EC2
32917
33306
  include Aws::Structure
32918
33307
  end
32919
33308
 
33309
+ # Describes a managed prefix list.
33310
+ #
33311
+ # @!attribute [rw] prefix_list_id
33312
+ # The ID of the prefix list.
33313
+ # @return [String]
33314
+ #
33315
+ # @!attribute [rw] address_family
33316
+ # The IP address version.
33317
+ # @return [String]
33318
+ #
33319
+ # @!attribute [rw] state
33320
+ # The state of the prefix list.
33321
+ # @return [String]
33322
+ #
33323
+ # @!attribute [rw] state_message
33324
+ # The state message.
33325
+ # @return [String]
33326
+ #
33327
+ # @!attribute [rw] prefix_list_arn
33328
+ # The Amazon Resource Name (ARN) for the prefix list.
33329
+ # @return [String]
33330
+ #
33331
+ # @!attribute [rw] prefix_list_name
33332
+ # The name of the prefix list.
33333
+ # @return [String]
33334
+ #
33335
+ # @!attribute [rw] max_entries
33336
+ # The maximum number of entries for the prefix list.
33337
+ # @return [Integer]
33338
+ #
33339
+ # @!attribute [rw] version
33340
+ # The version of the prefix list.
33341
+ # @return [Integer]
33342
+ #
33343
+ # @!attribute [rw] tags
33344
+ # The tags for the prefix list.
33345
+ # @return [Array<Types::Tag>]
33346
+ #
33347
+ # @!attribute [rw] owner_id
33348
+ # The ID of the owner of the prefix list.
33349
+ # @return [String]
33350
+ #
33351
+ # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/ManagedPrefixList AWS API Documentation
33352
+ #
33353
+ class ManagedPrefixList < Struct.new(
33354
+ :prefix_list_id,
33355
+ :address_family,
33356
+ :state,
33357
+ :state_message,
33358
+ :prefix_list_arn,
33359
+ :prefix_list_name,
33360
+ :max_entries,
33361
+ :version,
33362
+ :tags,
33363
+ :owner_id)
33364
+ SENSITIVE = []
33365
+ include Aws::Structure
33366
+ end
33367
+
32920
33368
  # Describes the memory for the instance type.
32921
33369
  #
32922
33370
  # @!attribute [rw] size_in_mi_b
@@ -34316,6 +34764,79 @@ module Aws::EC2
34316
34764
  include Aws::Structure
34317
34765
  end
34318
34766
 
34767
+ # @note When making an API call, you may pass ModifyManagedPrefixListRequest
34768
+ # data as a hash:
34769
+ #
34770
+ # {
34771
+ # dry_run: false,
34772
+ # prefix_list_id: "PrefixListResourceId", # required
34773
+ # current_version: 1,
34774
+ # prefix_list_name: "String",
34775
+ # add_entries: [
34776
+ # {
34777
+ # cidr: "String", # required
34778
+ # description: "String",
34779
+ # },
34780
+ # ],
34781
+ # remove_entries: [
34782
+ # {
34783
+ # cidr: "String", # required
34784
+ # },
34785
+ # ],
34786
+ # }
34787
+ #
34788
+ # @!attribute [rw] dry_run
34789
+ # Checks whether you have the required permissions for the action,
34790
+ # without actually making the request, and provides an error response.
34791
+ # If you have the required permissions, the error response is
34792
+ # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`.
34793
+ # @return [Boolean]
34794
+ #
34795
+ # @!attribute [rw] prefix_list_id
34796
+ # The ID of the prefix list.
34797
+ # @return [String]
34798
+ #
34799
+ # @!attribute [rw] current_version
34800
+ # The current version of the prefix list.
34801
+ # @return [Integer]
34802
+ #
34803
+ # @!attribute [rw] prefix_list_name
34804
+ # A name for the prefix list.
34805
+ # @return [String]
34806
+ #
34807
+ # @!attribute [rw] add_entries
34808
+ # One or more entries to add to the prefix list.
34809
+ # @return [Array<Types::AddPrefixListEntry>]
34810
+ #
34811
+ # @!attribute [rw] remove_entries
34812
+ # One or more entries to remove from the prefix list.
34813
+ # @return [Array<Types::RemovePrefixListEntry>]
34814
+ #
34815
+ # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/ModifyManagedPrefixListRequest AWS API Documentation
34816
+ #
34817
+ class ModifyManagedPrefixListRequest < Struct.new(
34818
+ :dry_run,
34819
+ :prefix_list_id,
34820
+ :current_version,
34821
+ :prefix_list_name,
34822
+ :add_entries,
34823
+ :remove_entries)
34824
+ SENSITIVE = []
34825
+ include Aws::Structure
34826
+ end
34827
+
34828
+ # @!attribute [rw] prefix_list
34829
+ # Information about the prefix list.
34830
+ # @return [Types::ManagedPrefixList]
34831
+ #
34832
+ # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/ModifyManagedPrefixListResult AWS API Documentation
34833
+ #
34834
+ class ModifyManagedPrefixListResult < Struct.new(
34835
+ :prefix_list)
34836
+ SENSITIVE = []
34837
+ include Aws::Structure
34838
+ end
34839
+
34319
34840
  # Contains the parameters for ModifyNetworkInterfaceAttribute.
34320
34841
  #
34321
34842
  # @note When making an API call, you may pass ModifyNetworkInterfaceAttributeRequest
@@ -37486,6 +38007,44 @@ module Aws::EC2
37486
38007
  include Aws::Structure
37487
38008
  end
37488
38009
 
38010
+ # Describes the resource with which a prefix list is associated.
38011
+ #
38012
+ # @!attribute [rw] resource_id
38013
+ # The ID of the resource.
38014
+ # @return [String]
38015
+ #
38016
+ # @!attribute [rw] resource_owner
38017
+ # The owner of the resource.
38018
+ # @return [String]
38019
+ #
38020
+ # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/PrefixListAssociation AWS API Documentation
38021
+ #
38022
+ class PrefixListAssociation < Struct.new(
38023
+ :resource_id,
38024
+ :resource_owner)
38025
+ SENSITIVE = []
38026
+ include Aws::Structure
38027
+ end
38028
+
38029
+ # Describes a prefix list entry.
38030
+ #
38031
+ # @!attribute [rw] cidr
38032
+ # The CIDR block.
38033
+ # @return [String]
38034
+ #
38035
+ # @!attribute [rw] description
38036
+ # The description.
38037
+ # @return [String]
38038
+ #
38039
+ # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/PrefixListEntry AWS API Documentation
38040
+ #
38041
+ class PrefixListEntry < Struct.new(
38042
+ :cidr,
38043
+ :description)
38044
+ SENSITIVE = []
38045
+ include Aws::Structure
38046
+ end
38047
+
37489
38048
  # Describes a prefix list ID.
37490
38049
  #
37491
38050
  # @note When making an API call, you may pass PrefixListId
@@ -38977,6 +39536,27 @@ module Aws::EC2
38977
39536
  include Aws::Structure
38978
39537
  end
38979
39538
 
39539
+ # An entry for a prefix list.
39540
+ #
39541
+ # @note When making an API call, you may pass RemovePrefixListEntry
39542
+ # data as a hash:
39543
+ #
39544
+ # {
39545
+ # cidr: "String", # required
39546
+ # }
39547
+ #
39548
+ # @!attribute [rw] cidr
39549
+ # The CIDR block.
39550
+ # @return [String]
39551
+ #
39552
+ # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/RemovePrefixListEntry AWS API Documentation
39553
+ #
39554
+ class RemovePrefixListEntry < Struct.new(
39555
+ :cidr)
39556
+ SENSITIVE = []
39557
+ include Aws::Structure
39558
+ end
39559
+
38980
39560
  # @note When making an API call, you may pass ReplaceIamInstanceProfileAssociationRequest
38981
39561
  # data as a hash:
38982
39562
  #
@@ -39167,6 +39747,7 @@ module Aws::EC2
39167
39747
  # {
39168
39748
  # destination_cidr_block: "String",
39169
39749
  # destination_ipv_6_cidr_block: "String",
39750
+ # destination_prefix_list_id: "PrefixListResourceId",
39170
39751
  # dry_run: false,
39171
39752
  # egress_only_internet_gateway_id: "EgressOnlyInternetGatewayId",
39172
39753
  # gateway_id: "RouteGatewayId",
@@ -39192,6 +39773,10 @@ module Aws::EC2
39192
39773
  # the table.
39193
39774
  # @return [String]
39194
39775
  #
39776
+ # @!attribute [rw] destination_prefix_list_id
39777
+ # The ID of the prefix list for the route.
39778
+ # @return [String]
39779
+ #
39195
39780
  # @!attribute [rw] dry_run
39196
39781
  # Checks whether you have the required permissions for the action,
39197
39782
  # without actually making the request, and provides an error response.
@@ -39245,6 +39830,7 @@ module Aws::EC2
39245
39830
  class ReplaceRouteRequest < Struct.new(
39246
39831
  :destination_cidr_block,
39247
39832
  :destination_ipv_6_cidr_block,
39833
+ :destination_prefix_list_id,
39248
39834
  :dry_run,
39249
39835
  :egress_only_internet_gateway_id,
39250
39836
  :gateway_id,
@@ -41405,6 +41991,58 @@ module Aws::EC2
41405
41991
  include Aws::Structure
41406
41992
  end
41407
41993
 
41994
+ # @note When making an API call, you may pass RestoreManagedPrefixListVersionRequest
41995
+ # data as a hash:
41996
+ #
41997
+ # {
41998
+ # dry_run: false,
41999
+ # prefix_list_id: "PrefixListResourceId", # required
42000
+ # previous_version: 1, # required
42001
+ # current_version: 1, # required
42002
+ # }
42003
+ #
42004
+ # @!attribute [rw] dry_run
42005
+ # Checks whether you have the required permissions for the action,
42006
+ # without actually making the request, and provides an error response.
42007
+ # If you have the required permissions, the error response is
42008
+ # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`.
42009
+ # @return [Boolean]
42010
+ #
42011
+ # @!attribute [rw] prefix_list_id
42012
+ # The ID of the prefix list.
42013
+ # @return [String]
42014
+ #
42015
+ # @!attribute [rw] previous_version
42016
+ # The version to restore.
42017
+ # @return [Integer]
42018
+ #
42019
+ # @!attribute [rw] current_version
42020
+ # The current version number for the prefix list.
42021
+ # @return [Integer]
42022
+ #
42023
+ # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/RestoreManagedPrefixListVersionRequest AWS API Documentation
42024
+ #
42025
+ class RestoreManagedPrefixListVersionRequest < Struct.new(
42026
+ :dry_run,
42027
+ :prefix_list_id,
42028
+ :previous_version,
42029
+ :current_version)
42030
+ SENSITIVE = []
42031
+ include Aws::Structure
42032
+ end
42033
+
42034
+ # @!attribute [rw] prefix_list
42035
+ # Information about the prefix list.
42036
+ # @return [Types::ManagedPrefixList]
42037
+ #
42038
+ # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/RestoreManagedPrefixListVersionResult AWS API Documentation
42039
+ #
42040
+ class RestoreManagedPrefixListVersionResult < Struct.new(
42041
+ :prefix_list)
42042
+ SENSITIVE = []
42043
+ include Aws::Structure
42044
+ end
42045
+
41408
42046
  # @note When making an API call, you may pass RevokeClientVpnIngressRequest
41409
42047
  # data as a hash:
41410
42048
  #
@@ -45617,8 +46255,7 @@ module Aws::EC2
45617
46255
  # @return [Array<String>]
45618
46256
  #
45619
46257
  # @!attribute [rw] prefix_list_ids
45620
- # The prefix list IDs for an AWS service. Not applicable for stale
45621
- # security group rules.
46258
+ # The prefix list IDs. Not applicable for stale security group rules.
45622
46259
  # @return [Array<String>]
45623
46260
  #
45624
46261
  # @!attribute [rw] to_port
@@ -46228,8 +46865,8 @@ module Aws::EC2
46228
46865
  # `client-vpn-endpoint` \| `dedicated-host` \| `fleet` \| `fpga-image`
46229
46866
  # \| `host-reservation` \| `instance` \| `ipv4pool-ec2` \|
46230
46867
  # `ipv6pool-ec2` \| `key-pair` \| `launch-template` \| `natgateway` \|
46231
- # `spot-fleet-request` \| `placement-group` \| `snapshot` \|
46232
- # `traffic-mirror-filter` \| `traffic-mirror-session` \|
46868
+ # `spot-fleet-request` \| `placement-group` \| `prefix-list` \|
46869
+ # `snapshot` \| `traffic-mirror-filter` \| `traffic-mirror-session` \|
46233
46870
  # `traffic-mirror-target` \| `transit-gateway` \|
46234
46871
  # `transit-gateway-attachment` \| `transit-gateway-route-table` \|
46235
46872
  # `vpc-endpoint` (for interface and gateway endpoints) \|