CreatePrivateVirtualInterface - AWS Direct Connect


Creates a private virtual interface. A virtual interface is the VLAN that transports AWS Direct Connect traffic. A private virtual interface can be connected to either a Direct Connect gateway or a Virtual Private Gateway (VGW). Connecting the private virtual interface to a Direct Connect gateway enables the possibility for connecting to multiple VPCs, including VPCs in different AWS Regions. Connecting the private virtual interface to a VGW only provides access to a single VPC within the same Region.

Setting the MTU of a virtual interface to 9001 (jumbo frames) can cause an update to the underlying physical connection if it wasn't updated to support jumbo frames. Updating the connection disrupts network connectivity for all virtual interfaces associated with the connection for up to 30 seconds. To check whether your connection supports jumbo frames, call DescribeConnections. To check whether your virtual interface supports jumbo frames, call DescribeVirtualInterfaces.

Request Syntax

{ "connectionId": "string", "newPrivateVirtualInterface": { "addressFamily": "string", "amazonAddress": "string", "asn": number, "authKey": "string", "customerAddress": "string", "directConnectGatewayId": "string", "mtu": number, "tags": [ { "key": "string", "value": "string" } ], "virtualGatewayId": "string", "virtualInterfaceName": "string", "vlan": number } }

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.


The ID of the connection.

Type: String

Required: Yes


Information about the private virtual interface.

Type: NewPrivateVirtualInterface object

Required: Yes

Response Syntax

{ "addressFamily": "string", "amazonAddress": "string", "amazonSideAsn": number, "asn": number, "authKey": "string", "awsDeviceV2": "string", "bgpPeers": [ { "addressFamily": "string", "amazonAddress": "string", "asn": number, "authKey": "string", "awsDeviceV2": "string", "bgpPeerId": "string", "bgpPeerState": "string", "bgpStatus": "string", "customerAddress": "string" } ], "connectionId": "string", "customerAddress": "string", "customerRouterConfig": "string", "directConnectGatewayId": "string", "jumboFrameCapable": boolean, "location": "string", "mtu": number, "ownerAccount": "string", "region": "string", "routeFilterPrefixes": [ { "cidr": "string" } ], "tags": [ { "key": "string", "value": "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.


The address family for the BGP peer.

Type: String

Valid Values: ipv4 | ipv6


The IP address assigned to the Amazon interface.

Type: String


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

Type: Long


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

The valid values are 1-2147483647.

Type: Integer


The authentication key for BGP configuration. This string has a minimum length of 6 characters and and a maximun lenth of 80 characters.

Type: String


The Direct Connect endpoint on which the virtual interface terminates.

Type: String


The BGP peers configured on this virtual interface.

Type: Array of BGPPeer objects


The ID of the connection.

Type: String


The IP address assigned to the customer interface.

Type: String


The customer router configuration.

Type: String


The ID of the Direct Connect gateway.

Type: String


Indicates whether jumbo frames (9001 MTU) are supported.

Type: Boolean


The location of the connection.

Type: String


The maximum transmission unit (MTU), in bytes. The supported values are 1500 and 9001. The default value is 1500.

Type: Integer


The ID of the AWS account that owns the virtual interface.

Type: String


The AWS Region where the virtual interface is located.

Type: String


The routes to be advertised to the AWS network in this Region. Applies to public virtual interfaces.

Type: Array of RouteFilterPrefix objects


The tags associated with the virtual interface.

Type: Array of Tag objects

Array Members: Minimum number of 1 item.


The ID of the virtual private gateway. Applies only to private virtual interfaces.

Type: String


The ID of the virtual interface.

Type: String


The name of the virtual interface assigned by the customer network. The name has a maximum of 100 characters. The following are valid characters: a-z, 0-9 and a hyphen (-).

Type: String


The state of the virtual interface. The following are the possible values:

  • 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 enters the Rejected state.

  • unknown: The state of the virtual interface is not available.

Type: String

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


The type of virtual interface. The possible values are private and public.

Type: String


The ID of the VLAN.

Type: Integer


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


One or more parameters are not valid.

HTTP Status Code: 400


A server-side error occurred.

HTTP Status Code: 400


A tag key was specified more than once.

HTTP Status Code: 400


You have reached the limit on the number of tags that can be assigned.

HTTP Status Code: 400

See Also

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