Skip to main content

Effective 10 September 2024, API Documentation can be found on our Equinix Product Documentation site.
The content on this page will not be updated after 1 Oct 2024 and will be inaccessible after 31st Dec 2024.


Connect Network Edge Device to Remote Port

Establish an untagged connection between your Network Edge virtual device and a remote Fabric port to access your network service provider's network.

vdToPortConnectrion_0

Step 1: Authenticate

Submit your user credentials, Client ID, and Client Secret for OAuth2 authentication.

 

Refer to Generating Client ID and Client Secret under the Getting Access Token section for instructions on how to create client ID and client secret and refer to Requesting Access and Refresh tokens section for instructions on how to call Oauth API to validate and authenticate your credentials.

 

If you are unaware of your user credentials for Equinix Fabric, contact your local Equinix Service Desk.

Step 2: Get Attribute Information

  1. Retrieve your Network Edge device information by calling Get Virtual Devices.
  2. Retrieve your Equinix Fabric ports information using the Get All Ports API request.
 

This use case requires a remote port deployed at your NSP's demarcation point in the IBX data center.

Step 3: Create Connection

Use the POST /fabric/v4/connections API request to create a connection with the pre-determined attributes.

 
  • You can create only a single untagged connection from a Network Edge virutal device to a remote port
  • Use the Retrieve Pricing API request to retrieve connection price estimate
 POST /fabric/v4/connections
MethodPOST
Endpoint/fabric/v4/connections
HeadersAuthorization, Content-Type
Path ParametersNot applicable
Query ParametersNot applicable
Body Parameterstype, name, order, bandwidth, aSide, zSide, project, notifications

Sample curl request to connect VD (virtual device) to remote port (untagged).

curl -X
POST 'https://api.equinix.com/fabric/v4/connections'
-H 'content-type: application/json'
-H 'authorization: Bearer qwErtY8zyW1abcdefGHI'
-d '{
"type": "EVPL_VC",
"bandwidth": 100,
"redundancy": {
"priority": "PRIMARY"
},
"name": "ConnectionName-1",
"order": {
"purchaseOrderNumber": "1-3232923"
},
"aSide": {
"accessPoint": {
"type": "VD",
"virtualDevice": {
"type": "EDGE",
"uuid": "fd5342f3-d067-4683-a24f-be952279630b"
},
"interface": {
"type": "NETWORK",
"id": 45645
}
}
},
"zSide": {
"accessPoint": {
"type": "COLO",
"port": {
"uuid": "20d32a80-0d61-4333-bc03-707b591ae2f4"
},
"linkProtocol": {
"type": "UNTAGGED"
}
}
},
"project": {
"projectId": 567
},
"notifications": [
{
"type": "ALL",
"emails": [
"test@equinix.com",
"test1@equinix.com"
]
}
]
}'

Sample curl request to connect VD (virtual device) to remote port (DOT1Q).

curl -X
POST 'https://api.equinix.com/fabric/v4/connections'
-H 'content-type: application/json'
-H 'authorization: Bearer qwErtY8zyW1abcdefGHI'
-d '
{
"type": "EVPL_VC",
"bandwidth": 1000,
"name": "vd to COLO",
"aSide": {
"accessPoint": {
"type": "VD",
"virtualDevice": {
"type": "EDGE",
"uuid": "20d32a80-0d61-4333-bc03-707b591ae2f4"
},
"interface": {
"type": "NETWORK",
"id": 45645
}
}
},
"zSide": {
"accessPoint": {
"type": "COLO",
"port": {
"uuid": "20d32a80-0d61-4333-bc03-707b591ae2f4"
},
"linkProtocol": {
"type": "DOT1Q",
"vlanTag": 300
}
}
},
"order": {
"purchaseOrderNumber": "1-129105284100"
},
"notifications": [
{
"type": "ALL",
"emails": [
"test@equinix.com",
"test1@equinix.com"
]
}
]
}'

Sample curl request to connect VD (virtual device) to remote port (DOT1Q with vlan range).

curl -X
POST 'https://api.equinix.com/fabric/v4/connections'
-H 'content-type: application/json'
-H 'authorization: Bearer qwErtY8zyW1abcdefGHI'
-d '
{
"type": "EVPL_VC",
"bandwidth": 1000,
"name": "vd to COLO",
"aSide": {
"accessPoint": {
"type": "VD",
"virtualDevice": {
"type": "EDGE",
"uuid": "20d32a80-0d61-4333-bc03-707b591ae2f4"
},
"interface": {
"type": "NETWORK",
"id": 45645
}
}
},
"zSide": {
"accessPoint": {
"type": "COLO",
"port": {
"uuid": "20d32a80-0d61-4333-bc03-707b591ae2f4"
},
"linkProtocol": {
"type": "DOT1Q",
"vlanTagMin": 300,
"vlanTagMax": 1099
}
}
},
"order": {
"purchaseOrderNumber": "1-129105284100"
},
"notifications": [
{
"type": "ALL",
"emails": [
"test@equinix.com",
"test1@equinix.com"
]
}
]
}'

Sample curl request to connect VD (virtual device) to remote port (QinQ).

curl -X
POST 'https://api.equinix.com/fabric/v4/connections'
-H 'content-type: application/json'
-H 'authorization: Bearer qwErtY8zyW1abcdefGHI'
-d '
{
"type": "EVPL_VC",
"bandwidth": 1000,
"name": "vd to COLO",
"aSide": {
"accessPoint": {
"type": "VD",
"virtualDevice": {
"type": "EDGE",
"uuid": "20d32a80-0d61-4333-bc03-707b591ae2f4"
},
"interface": {
"type": "NETWORK",
"id": 45645
}
}
},
"zSide": {
"accessPoint": {
"type": "COLO",
"port": {
"uuid": "20d32a80-0d61-4333-bc03-707b591ae2f4"
},
"linkProtocol": {
"type": "QINQ",
"vlanSTag": 300,
"vlanCTag": 400
}
}
},
"order": {
"purchaseOrderNumber": "1-129105284100"
},
"notifications": [
{
"type": "ALL",
"emails": [
"test@equinix.com",
"test1@equinix.com"
]
}
]
}
'

Body parameters

ParameterMandatoryTypeExample valuesApplicable valuesDescription
typeyesstringEVPL_VCEVPL_VCConnection type.
nameyesstringConnectionName-1Maximum: 24 characters
Allowed characters: alpha-numeric, hyphens ('-') and underscores ('_')
Connection name.
ordernoobject--Order details.
bandwidthyesinteger100Maximum: cannot exceed port bandwidth.Connection bandwidth in Mbps.
redundancyConditionalobject--Redundancy details. Required for secondary connections.
aSideyesobject--Source port definition.
zSideyesobject--Destination port definition.
projectnoobject--Project information in the customer resource hierarchy.
notificationsyesarray[object]--Subscriber preferences for notification of changes in asset configuration or status.
 
order
purchaseOrderNumbernostring1-129105284100-Subscriber's purchase order identifier.
 
redundancy
groupyesstring5c0e9384-aa79-4ec9-b7a2-557f8c307292-Unique Id of the redundancy group. This is only required for secondary connections. If you are creating a secondary connection, enter the group of the PRIMARY. You can find the group of the primary connection by calling Get Specified Connection or by checking the "group" field in the response you receive when creating primary connection.
priorityyesstringPRIMARYPRIMARY
SECONDARY
Whether the connection is PRIMARY or SECONDARY. Don't provide a redundancy group for a PRIMARY connection.
 
aSide
accessPointyesobject--Connection endpoint configuration.
 
aSide.accessPoint
typeyesstringVDVDConnection endpoint type.

VD - Network Edge virtual device.
virtualDeviceyesobject--Virtual device configuration.
interfacenoobject--Interface configuration.
 
aSide.accessPoint.virtualDevice
typeyesstringEDGEEDGEVirtual device type.
uuidyesstring20d32a80-0d61-4333-bc03-707b591ae2f4-Equinix-assigned virtual device instance identifier.
 
aSide.accessPoint.interface
typeyesstringNETWORKNETWORK
CLOUD
Accesspoint network interface type.
idyesinteger544211-Accesspoint network interface identifier.
 
zSide
accessPointyesobject--Connection endpoint configuration.
 
zSide.accessPoint
typeyesstringCOLOCOLOConnection endpoint type.

COLO - Colocation space in an IBX data center.  
portyesobject--Port associated with the connection.
linkProtocolyesobject--Link protocol configuration.
 
zSide.accessPoint.port
uuidyesstringa867f685-41b0-1b07-6de0-320a5c00abdd-Equinix-assigned port identifier.
 
zSide.accessPoint.linkProtocol
typeyesstringUNTAGGEDUNTAGGED, DOT1Q, QINQLink protocol type.

UNTAGGED - Untagged EVPL/EPL connection between a Network Edge device and a remote port.
vlanTagnostring202 to 4092vlanTag is vlan ID. Any number between 2 and 4092.

vlanTagMinnostring22 to 4092vlanTagMin. Any number between 2 and 4092. vlanTagMin should be less than vlanTagMax.

vlanTagMaxnostring40922 to 4092vlanTagMax. Any number between 2 and 4092. vlanTagMax should be greaten than vlanTagMin.

vlanSTagnostring3002 to 4092vlanSTag is supported for QinQ port. Any number between 2 and 4092.

vlanCTagnostring1002 to 4092vlanCTag is supported for QinQ port. Any number between 2 and 4092.

 
project
projectIdConditionalinteger568-Customer project identifier. Required for CRH-enabled users.
 
notifications
typeyesstringALLALLNotification preferences for a specified asset.
emailsyesarray[string]["john@equinix.com", "jenkins@equinix.com"]Minimum: 1
Maximum: 12
List of up to 12 recipients.
 

If you get “Access Denied” error, contact your local Equinix Service Desk for Equinix Fabric Portal access.


Sample response

{
"type": "EVPL_VC",
"href": "https://api.equinix.com/fabric/v4/connections/c193c1c4-2c7e-472d-8c91-0283bc3b5a71",
"uuid": "c193c1c4-2c7e-472d-8c91-0283bc3b5a71",
"name": "ConnectionName-1",
"state": "PROVISIONING",
"operation": {
"providerStatus": "NOT_AVAILABLE",
"equinixStatus": "PROVISIONING"
},
"order": {
"purchaseOrderNumber": "1-3232923"
},
"project": {
"projectId": 567
},
"notifications": [
{
"type": "ALL",
"emails": [
"testqq@equinix.com"
]
}
],
"account": {
"accountNumber": 270217,
"orgId": 92287,
"globalOrgId": "0016u000003JZ53AAG"
},
"changeLog": {
"createdBy": "eqxnfvuser",
"createdDateTime": "2022-03-22T23:14:23.546Z"
},
"bandwidth": 100,
"redundancy": {
"group": "79a0e626-55fe-4fe1-89a5-4d7ca52214db",
"priority": "PRIMARY"
},
"isRemote": true,
"direction": "INTERNAL",
"aSide": {
"accessPoint": {
"interface": {
"uuid": "bf8a606b-32b2-4a53-a450-6eabd7d9ccab",
"id": 45645,
"type": "CLOUD"
},
"type": "VD",
"account": {
"accountNumber": 270217,
"orgId": 92287,
"organizationName": "eqx-nfv",
"globalOrgId": "0016u000003JZ53AAG"
},
"location": {
"href": "https://api.equinix.com/fabric/v4/metros/DC",
"region": "AMER",
"metroName": "Ashburn",
"metroCode": "DC"
},
"virtualDevice": {
"href": "https://api.equinix.com/ne/v1/devices/fd5342f3-d067-4683-a24f-be952279630b",
"uuid": "fd5342f3-d067-4683-a24f-be952279630b",
"name": "ha-json",
"type": "EDGE"
}
}
},
"zSide": {
"accessPoint": {
"type": "COLO",
"account": {
"accountNumber": 270224,
"orgId": 92287,
"organizationName": "eqx-nfv",
"globalOrgId": "0016u000003JZ53AAG"
},
"location": {
"href": "https://api.equinix.com/fabric/v4/metros/SY",
"region": "APAC",
"metroName": "Sydney",
"metroCode": "SY"
},
"port": {
"href": "https://api.equinix.com/fabric/v4/ports/c791f8cb-5d73-d730-8ce0-306a5c00a4ee",
"uuid": "c791f8cb-5d73-d730-8ce0-306a5c00a4ee",
"name": "eqx-nfv-SY1-L-Dot1q-BO-PRI-10G-JN-1147"
},
"linkProtocol": {
"type": "DOT1Q"
}
}
},
"additionalInfo": []
}

Response payload body description

 

Response payload includes configuration parameters defined in the request body. The following table contains descriptions of additional information included in the response payload. For descriptions of the remaining fields, refer to the Body parameters section.

ParameterTypeExample valuesDescription
hrefstringhttps://api.equinix.com/fabric/v4/connections/ 3a58dd05-f46d-4b1d-a154-2e85c396ea62An absolute URL that returns the specified connection.
uuidstring3a58dd05-f46d-4b1d-a154-2e85c396ea62Equinix-assigned connection identifier.
statestringPROVISIONINGLifecycle stage of a connection.
operationobject-Connection type-specific operational data.
accountobject-Account information.
changeLogobject-A permanent record of asset creation, modification, or deletion.
redundancyobject-Redundancy details.
isRemotebooleantrueParameter indicating if the two endoints are in different locations.
directionstringINTERNALDirection of the connection (from the requester's point of view).
aSideobject-Source port definition.
zSideobject-Destination port definition.
 
operation
equinixStatusstringPROVISIONINGProgress towards provisioning a specified connection.
providerStatusstringNOT_AVAILABLEProvider's progress towards provisioning a specified connection.
 
account

accountNumber

integer

270217

Equinix-assigned account number.

orgId

integer

92832

Equinix-assigned organization identifier.
organizationNamestrigneqx-nfvCustomer organization name.

globalOrgId

string0016u000003JZ53AAGEquinix-assigned top-level organization identifier associated with the specified asset.
 
changeLog

createdBy

stringhanSoloIncBuyerIdentity of the asset creator.
createdDateTimestring2021-07-15T19:30:29.526ZConnection creation timestamp in the IETF ISO 8601 extended date/time format:
 

YYYY-MM-DDTHH:MM:SS.000+0000

 
redundancy

group

string7a58dd05-f46d-4b1d-a154-2e85c396ea63 Unique Id of the redundancy group.
prioritystringPRIMARYWhether the connection is PRIMARY or SECONDARY.
 
aSide
accessPointobject-Connection endpoint configuration.
 
aSide.accessPoint
interfaceobject-Access point's interface configuration.
accountobject-Account information.
locationobject-Geographic attributes of the specified access point.
virtualDeviceobject-Virtual device configuration.
 
aSide.accessPoint.interface
uuidstringbf8a606b-32b2-4a53-a450-6eabd7d9ccabEquinix-assigned interface identifier.
 
aSide/zSide.accessPoint.location
hrefstringhttps://api.equinix.com/fabric/v4/metros/DCAn absolute URL that returns complete specification for the selected metro.
regionstringAMERBroad geographic area in which a specified Equinix asset is located.
metroNamestringAshburnMetropolitan area name.
metroCodestringDCMetropolitan area identifier.
 
aSide.accessPoint.virtualDevice
hrefstringhttps://api.equinix.com/ne/v1/devices/ fd5342f3-d067-4683-a24f-be952279630bAn absolute URL that returns complete specification for the selected asset.
namestringha-jsonVirtual device name.
 
zSide
accessPointobject-Connection endpoint configuration.
 
zSide.accessPoint
accountobject-Account information.
locationobject-Geographic attributes of the specified access point.
portobject-Port associated with the connection.
linkProtocolobject-Link protocol configuration.
 
zSide.accessPoint.port
hrefstringhttps://api.equinix.com/fabric/v4/ports/ a867f685-41b0-1b07-6de0-320a5c00abddAn absolute URL that returns the specified port.
 
zSide.accessPoint.linkProtocol
typestringDOT1QLink protocol type.
 
 

Use the Get Specified Connection API request to monitor connection status.