CreateManagedPrefixListCommand

Creates a managed prefix list. You can specify entries for the prefix list. Each entry consists of a CIDR block and an optional description.

Example Syntax

Use a bare-bones client and the command you need to make an API call.

import { EC2Client, CreateManagedPrefixListCommand } from "@aws-sdk/client-ec2"; // ES Modules import
// const { EC2Client, CreateManagedPrefixListCommand } = require("@aws-sdk/client-ec2"); // CommonJS import
const client = new EC2Client(config);
const input = { // CreateManagedPrefixListRequest
  DryRun: true || false,
  PrefixListName: "STRING_VALUE", // required
  Entries: [ // AddPrefixListEntries
    { // AddPrefixListEntry
      Cidr: "STRING_VALUE", // required
      Description: "STRING_VALUE",
    },
  ],
  MaxEntries: Number("int"), // required
  TagSpecifications: [ // TagSpecificationList
    { // TagSpecification
      ResourceType: "capacity-reservation" || "client-vpn-endpoint" || "customer-gateway" || "carrier-gateway" || "coip-pool" || "declarative-policies-report" || "dedicated-host" || "dhcp-options" || "egress-only-internet-gateway" || "elastic-ip" || "elastic-gpu" || "export-image-task" || "export-instance-task" || "fleet" || "fpga-image" || "host-reservation" || "image" || "import-image-task" || "import-snapshot-task" || "instance" || "instance-event-window" || "internet-gateway" || "ipam" || "ipam-pool" || "ipam-scope" || "ipv4pool-ec2" || "ipv6pool-ec2" || "key-pair" || "launch-template" || "local-gateway" || "local-gateway-route-table" || "local-gateway-virtual-interface" || "local-gateway-virtual-interface-group" || "local-gateway-route-table-vpc-association" || "local-gateway-route-table-virtual-interface-group-association" || "natgateway" || "network-acl" || "network-interface" || "network-insights-analysis" || "network-insights-path" || "network-insights-access-scope" || "network-insights-access-scope-analysis" || "placement-group" || "prefix-list" || "replace-root-volume-task" || "reserved-instances" || "route-table" || "security-group" || "security-group-rule" || "snapshot" || "spot-fleet-request" || "spot-instances-request" || "subnet" || "subnet-cidr-reservation" || "traffic-mirror-filter" || "traffic-mirror-session" || "traffic-mirror-target" || "transit-gateway" || "transit-gateway-attachment" || "transit-gateway-connect-peer" || "transit-gateway-multicast-domain" || "transit-gateway-policy-table" || "transit-gateway-route-table" || "transit-gateway-route-table-announcement" || "volume" || "vpc" || "vpc-endpoint" || "vpc-endpoint-connection" || "vpc-endpoint-service" || "vpc-endpoint-service-permission" || "vpc-peering-connection" || "vpn-connection" || "vpn-gateway" || "vpc-flow-log" || "capacity-reservation-fleet" || "traffic-mirror-filter-rule" || "vpc-endpoint-connection-device-type" || "verified-access-instance" || "verified-access-group" || "verified-access-endpoint" || "verified-access-policy" || "verified-access-trust-provider" || "vpn-connection-device-type" || "vpc-block-public-access-exclusion" || "route-server" || "route-server-endpoint" || "route-server-peer" || "ipam-resource-discovery" || "ipam-resource-discovery-association" || "instance-connect-endpoint" || "verified-access-endpoint-target" || "ipam-external-resource-verification-token",
      Tags: [ // TagList
        { // Tag
          Key: "STRING_VALUE",
          Value: "STRING_VALUE",
        },
      ],
    },
  ],
  AddressFamily: "STRING_VALUE", // required
  ClientToken: "STRING_VALUE",
};
const command = new CreateManagedPrefixListCommand(input);
const response = await client.send(command);
// { // CreateManagedPrefixListResult
//   PrefixList: { // ManagedPrefixList
//     PrefixListId: "STRING_VALUE",
//     AddressFamily: "STRING_VALUE",
//     State: "create-in-progress" || "create-complete" || "create-failed" || "modify-in-progress" || "modify-complete" || "modify-failed" || "restore-in-progress" || "restore-complete" || "restore-failed" || "delete-in-progress" || "delete-complete" || "delete-failed",
//     StateMessage: "STRING_VALUE",
//     PrefixListArn: "STRING_VALUE",
//     PrefixListName: "STRING_VALUE",
//     MaxEntries: Number("int"),
//     Version: Number("long"),
//     Tags: [ // TagList
//       { // Tag
//         Key: "STRING_VALUE",
//         Value: "STRING_VALUE",
//       },
//     ],
//     OwnerId: "STRING_VALUE",
//   },
// };

CreateManagedPrefixListCommand Input

Parameter
Type
Description
AddressFamily
Required
string | undefined

The IP address type.

Valid Values: IPv4 | IPv6

MaxEntries
Required
number | undefined

The maximum number of entries for the prefix list.

PrefixListName
Required
string | undefined

A name for the prefix list.

Constraints: Up to 255 characters in length. The name cannot start with com.amazonaws.

ClientToken
string | undefined

Unique, case-sensitive identifier you provide to ensure the idempotency of the request. For more information, see Ensuring idempotency .

Constraints: Up to 255 UTF-8 characters in length.

DryRun
boolean | undefined

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

Entries
AddPrefixListEntry[] | undefined

One or more entries for the prefix list.

TagSpecifications
TagSpecification[] | undefined

The tags to apply to the prefix list during creation.

CreateManagedPrefixListCommand Output

Parameter
Type
Description
$metadata
Required
ResponseMetadata
Metadata pertaining to this request.
PrefixList
ManagedPrefixList | undefined

Information about the prefix list.

Throws

Name
Fault
Details
EC2ServiceException
Base exception class for all service exceptions from EC2 service.