Menu
AWS Direct Connect
API Reference (API Version 2012-10-25)

AllocatePublicVirtualInterface

Provisions a public virtual interface to be owned by a different customer.

The owner of a connection calls this function to provision a public virtual interface which will be owned by another AWS customer.

Virtual interfaces created using this function must be confirmed by the virtual interface owner by calling ConfirmPublicVirtualInterface. Until this step has been completed, the virtual interface will be in 'Confirming' state, and will not be available for handling traffic.

When creating an IPv6 public virtual interface (addressFamily is 'ipv6'), the customer and amazon address fields should be left blank to use auto-assigned IPv6 space. Custom IPv6 Addresses are currently not supported.

Request Syntax

{ "connectionId": "string", "newPublicVirtualInterfaceAllocation": { "addressFamily": "string", "amazonAddress": "string", "asn": number, "authKey": "string", "customerAddress": "string", "routeFilterPrefixes": [ { "cidr": "string" } ], "virtualInterfaceName": "string", "vlan": number }, "ownerAccount": "string" }

Request Parameters

For information about the parameters that are common to all actions, see Common Parameters.

The request accepts the following data in JSON format.

connectionId

The connection ID on which the public virtual interface is provisioned.

Default: None

Type: String

Required: Yes

newPublicVirtualInterfaceAllocation

Detailed information for the public virtual interface to be provisioned.

Default: None

Type: NewPublicVirtualInterfaceAllocation object

Required: Yes

ownerAccount

The AWS account that will own the new public virtual interface.

Default: None

Type: String

Required: Yes

Response Syntax

{ "addressFamily": "string", "amazonAddress": "string", "amazonSideAsn": number, "asn": number, "authKey": "string", "bgpPeers": [ { "addressFamily": "string", "amazonAddress": "string", "asn": number, "authKey": "string", "bgpPeerState": "string", "bgpStatus": "string", "customerAddress": "string" } ], "connectionId": "string", "customerAddress": "string", "customerRouterConfig": "string", "directConnectGatewayId": "string", "location": "string", "ownerAccount": "string", "routeFilterPrefixes": [ { "cidr": "string" } ], "virtualGatewayId": "string", "virtualInterfaceId": "string", "virtualInterfaceName": "string", "virtualInterfaceState": "string", "virtualInterfaceType": "string", "vlan": number }

Response Elements

If the action is successful, the service sends back an HTTP 200 response.

The following data is returned in JSON format by the service.

addressFamily

Indicates the address family for the BGP peer.

  • ipv4: IPv4 address family

  • ipv6: IPv6 address family

Type: String

Valid Values: ipv4 | ipv6

amazonAddress

IP address assigned to the Amazon interface.

Example: 192.168.1.1/30 or 2001:db8::1/125

Type: String

amazonSideAsn

The autonomous system number (ASN) for the Amazon side of the connection.

Type: Long

asn

The autonomous system (AS) number for Border Gateway Protocol (BGP) configuration.

Example: 65000

Type: Integer

authKey

The authentication key for BGP configuration.

Example: asdf34example

Type: String

bgpPeers

A list of the BGP peers configured on this virtual interface.

Type: Array of BGPPeer objects

connectionId

The ID of the connection. This field is also used as the ID type for operations that use multiple connection types (LAG, interconnect, and/or connection).

Example: dxcon-fg5678gh

Default: None

Type: String

customerAddress

IP address assigned to the customer interface.

Example: 192.168.1.2/30 or 2001:db8::2/125

Type: String

customerRouterConfig

Information for generating the customer router configuration.

Type: String

directConnectGatewayId

The ID of the direct connect gateway.

Example: "abcd1234-dcba-5678-be23-cdef9876ab45"

Type: String

location

Where the connection is located.

Example: EqSV5

Default: None

Type: String

ownerAccount

The AWS account that will own the new virtual interface.

Type: String

routeFilterPrefixes

A list of routes to be advertised to the AWS network in this region (public virtual interface).

Type: Array of RouteFilterPrefix objects

virtualGatewayId

The ID of the virtual private gateway to a VPC. This only applies to private virtual interfaces.

Example: vgw-123er56

Type: String

virtualInterfaceId

The ID of the virtual interface.

Example: dxvif-123dfg56

Default: None

Type: String

virtualInterfaceName

The name of the virtual interface assigned by the customer.

Example: "My VPC"

Type: String

virtualInterfaceState

State of the virtual interface.

  • Confirming: The creation of the virtual interface is pending confirmation from the virtual interface owner. If the owner of the virtual interface is different from the owner of the connection on which it is provisioned, then the virtual interface will remain in this state until it is confirmed by the virtual interface owner.

  • Verifying: This state only applies to public virtual interfaces. Each public virtual interface needs validation before the virtual interface can be created.

  • Pending: A virtual interface is in this state from the time that it is created until the virtual interface is ready to forward traffic.

  • Available: A virtual interface that is able to forward traffic.

  • Down: A virtual interface that is BGP down.

  • Deleting: A virtual interface is in this state immediately after calling DeleteVirtualInterface until it can no longer forward traffic.

  • Deleted: A virtual interface that cannot forward traffic.

  • Rejected: The virtual interface owner has declined creation of the virtual interface. If a virtual interface in the 'Confirming' state is deleted by the virtual interface owner, the virtual interface will enter the 'Rejected' state.

Type: String

Valid Values: confirming | verifying | pending | available | down | deleting | deleted | rejected

virtualInterfaceType

The type of virtual interface.

Example: private (Amazon VPC) or public (Amazon S3, Amazon DynamoDB, and so on.)

Type: String

vlan

The VLAN ID.

Example: 101

Type: Integer

Errors

For information about the errors that are common to all actions, see Common Errors.

DirectConnectClientException

The API was called with invalid parameters. The error message will contain additional details about the cause.

HTTP Status Code: 400

DirectConnectServerException

A server-side error occurred during the API call. The error message will contain additional details about the cause.

HTTP Status Code: 400

See Also

For more information about using this API in one of the language-specific AWS SDKs, see the following: