Connect to Network

Establish a direct, low-latency connection between your networks and ports/virtual devices.

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) Get all your Fabric network information using the Retrieve Fabric Networks API call.

2) You can connect your network to a port or a virtual device. Tagged ports or Virtual Devices can be connected to EVPLAN networks. Untagged ports can be connected to EPLAN networks.

To connect a port to a network, check the status of your ports. Call the Get Specified Port API or the Get All Ports API.

To connect a virtual device to a network, check the status of your virtual devices. Call the Get Virtual Device {uuid} API or the Get Virtual Devices API.

Step 3: Create Connection

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

POST /fabric/v4/connections
Method POST
Endpoint /fabric/v4/connections
Headers Authorization, Content-Type
Path Parameters Not applicable
Query Parameters Not applicable
Body Parameters type, name, order, bandwidth, aSide, zSide, notifications, redundancy

The POST Connections API creates a layer 2 connection between your network and a port or a virtual device.

Use the Retrieve Pricing API request to retrieve connection price estimate.


Sample curl request - connect a tagged port to EVPLAN network

Copy
curl -X
POST 'https://api.equinix.com/fabric/v4/connections'
-H 'content-type: application/json'
-H 'authorization: Bearer qwErtY8zyW1abcdefGHI'
-d '{
  "type": "EVPLAN_VC",
  "name": "MY-EVPLAN-CONNECTION-1",
  "bandwidth": 1000,
  "aSide": {
    "accessPoint": {
      "type": "COLO",
      "port": {
        "uuid": "9127bb72-5f4f-4517-be74-3af7ce612687"
      },
      "linkProtocol": {
        "type": "DOT1Q",
        "vlanTag": 300
      }
    }
  },
  "zSide": {
    "accessPoint": {
      "type": "NETWORK",
      "network": {
        "uuid": "25f8884e-85e3-4eaa-8ea9-a7ad2ca5b3c2"
      }
    }
  },
  "order": {
    "purchaseOrderNumber": "1-129105284100"
  },
  "notifications": [
    {
      "type": "ALL",
      "emails": [
        "test@equinix.com",
        "test1@equinix.com"
      ]
    }
  ]
}'

Sample curl request - connect an untagged port to EPLAN network

Copy
curl -X
POST 'https://api.equinix.com/fabric/v4/connections'
-H 'content-type: application/json'
-H 'authorization: Bearer qwErtY8zyW1abcdefGHI'
-d '
{
  "type": "EPLAN_VC",
  "name": "MY-EPLAN-CONNECTION-1",
  "bandwidth": 1000,
  "aSide": {
    "accessPoint": {
      "type": "COLO",
      "port": {
        "uuid": "9127bb72-5f4f-4517-be74-3af7ce612687"
      }
    }
  },
  "zSide": {
    "accessPoint": {
      "type": "NETWORK",
      "network": {
        "uuid": "25f8884e-85e3-4eaa-8ea9-a7ad2ca5b3c2"
      }
    }
  },
  "order": {
    "purchaseOrderNumber": "1-129105284100"
  },
  "notifications": [
    {
      "type": "ALL",
      "emails": [
        "test@equinix.com",
        "test1@equinix.com"
      ]
    }
  ]
}'

Sample curl request - connect a virtual device to EVPLAN network

Copy
curl -X
POST 'https://api.equinix.com/fabric/v4/connections'
-H 'content-type: application/json'
-H 'authorization: Bearer qwErtY8zyW1abcdefGHI'
-d '
{
  "type": "EVPLAN_VC",
  "name": "MY-VD-EVPLAN-CONNECTION-1",
  "bandwidth": 1000,
  "aSide": {
    "accessPoint": {
      "type": "VD",
      "virtualDevice": {
        "type": "EDGE",
        "uuid": "20d32a80-0d61-4333-bc03-707b591ae2f4"
      },
      "interface": {
        "type": "NETWORK",
        "id": 7
      }
    }
  },
  "zSide": {
    "accessPoint": {
      "type": "NETWORK",
      "network": {
        "uuid": "25f8884e-85e3-4eaa-8ea9-a7ad2ca5b3c2"
      }
    }
  },
  "order": {
    "purchaseOrderNumber": "1-129105284100"
  },
  "notifications": [
    {
      "type": "ALL",
      "emails": [
        "test@equinix.com",
        "test1@equinix.com"
      ]
    }
  ]
}'


Body parameters

Parameter Mandatory Type Example values Applicable values Description
type yes string EVPLAN_VC EVPLAN_VC Connection type.
Either EVPLAN_VC or EPLAN_VC.
name yes string Conn-1 Maximum: 24 characters
Allowed characters: alpha-numeric, hyphens ('-') and underscores ('_')
Connection name.
order no object - - Order details.
bandwidth yes integer 1000 10
50
200
500
1000
2000
5000
25000
50000
Connection bandwidth in Mbps.
aSide yes object - - Source port definition.
zSide yes object - - Destination port definition.
notifications yes array[object] - - Subscriber preferences for notification of changes in asset configuration or status.
redundancy Conditional object - - Redundancy details. This object is not mandatory for primary connections. However, you must provide the redundancy details for secondary connections.
order
purchaseOrderNumber no string 1-129105284100 - Subscriber's purchase order identifier.
aSide
accessPoint yes object - - A-side connection endpoint configuration.
A-side accessPoint
type yes string COLO COLO
VD
Connection endpoint type.
COLO - colocation space in an IBX data center
VD - virtual device
port no object - - Port associated with the connection.
linkProtocol no object - - Link protocol configuration.
virtualDevice no object - - Virtual device details.
interface no object - - Interface details of virtual device.
port
uuid no string a867f685-41b0-1b07-6de0-320a5c00abdd - Equinix-assigned port identifier (only required if you are creating a connection between a port and a network)
linkProtocol
type no string DOT1Q DOT1Q Link protocol type (only required for tagged ports).
vlanTag no integer 1001 Range: 2-4094 DOT1Q protocol VLAN tag (only applicable for tagged ports).
vlanCTag no integer 1002 Range: 2-4094 QINQ protocol, inner virtual local area network (VLAN) customer frame tag used to identify packets as they traverse trunk lines (only applicable for tagged ports).
vlanSTag no integer 1003 Range: 2-4094 QINQ protocol, outer virtual local area network (VLAN) service frame tag used to identify packets as they traverse trunk lines (only applicable for tagged ports).
virtualDevice
type no string EDGE EDGE Type of virtual device (only required if you are creating a connection between a virtual device and a network)
uuid no string a867f685-41b0-1b07-6de0-320a5c00abdd - Equinix-assigned virtual device Id (only required if you are creating a connection between a virtual device and a network)
interface
type no string NETWORK NETWORK Interface of the virtual device (only required if you are creating a connection between a virtual device and a network)
id no string 7 - Interface Id (only required if you are creating a connection between a virtual device and a network)
zSide
accessPoint yes object - - Z-side connection endpoint configuration.
Z-side accessPoint
type yes string NETWORK NETWORK
Connection endpoint type.
network no object - - Z-side network details.
network
uuid yes string a867f685-41b0-1b07-6de0-320a5c00abdd - Id of the network
notifications
type yes string ALL ALL Notification preferences for a specified asset.
emails yes array[string] ["john@equinix.com", "jenkins@equinix.com"] Minimum: 1
Maximum: 12
List of up to 12 recipients.
redundancy
priority Conditional string SECONDARY PRIMARY, SECONDARY Whether the connection is PRIMARY or SECONDARY. Don't provide a redundancy group for a PRIMARY connection.
group Conditional string 7a58dd05-f46d-4b1d-a154-2e85c396ea63 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.

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


Sample response - non-redundant connection from an EVPLAN network to a tagged port

Copy
{
"type": "EVPLAN_VC",
"href": "http://uat2api.npclouda.equinix.com/fabric/v4/connections/01df5124-eed1-4a30-89bb-240c33d5cd12",
"uuid": "01df5124-eed1-4a30-89bb-240c33d5cd12",
"name": "test2",
"operation": {
    "providerStatus": "NOT_AVAILABLE",
    "equinixStatus": "PROVISIONING"
},
"order": {
    "billingTier": "Up to 50 MB"
},
"notifications": [
    {
    "type": "ALL",
    "emails": [
        "1eqxnfvuser1@equinix.com"
    ]
    }
],
"changeLog": {
    "createdBy": "eqxnfvuser1",
    "createdByFullName": "eqxnfvuser eqxnfvuser",
    "createdByEmail": "1eqxnfvuser1@equinix.com",
    "createdDateTime": "2023-03-27T18:29:53.117Z",
    "updatedBy": "eqxnfvuser1",
    "updatedByFullName": "eqxnfvuser eqxnfvuser",
    "updatedByEmail": "1eqxnfvuser1@equinix.com",
    "updatedDateTime": "2023-03-27T18:29:53.117Z"
},
"bandwidth": 50,
"redundancy": {
    "priority": "PRIMARY",
    "group": "7a58dd05-f46d-4b1d-a154-2e85c396ea63"
},
"aSide": {
    "accessPoint": {
    "location": {
        "metroCode": "DC"
    },
    "port": {
        "type": "XF_PORT",
        "href": "http://uat2api.npclouda.equinix.com/fabric/v4/ports/e569f0bb-96d5-6d5e-92e0-387a5c00a379",
        "uuid": "e569f0bb-96d5-6d5e-92e0-387a5c00a379",
        "name": "eqx-nfv-DC5-L-Dot1q-STD-Pri-1G-JP-2"
    },
    "linkProtocol": {
        "type": "DOT1Q",
        "vlanTag": 44
    }
    }
},
"zSide": {
    "accessPoint": {
    "network": {
        "href": "http://uat2api.npclouda.equinix.com/fabric/v4/networks/ecc81fe0-7a96-4e08-94f2-0ab52fae662b",
        "uuid": "ecc81fe0-7a96-4e08-94f2-0ab52fae662b",
        "name": "EVPLAN-AMER-1",
        "platformUuid": "52c6ec8b-4aad-4167-be6d-1972a12d1b83",
        "state": "ACTIVE",
        "type": "EVPLAN",
        "scope": "REGIONAL",
        "location": {
        "region": "AMER"
        }
    }
    }
}
}

Response description

Parameter Type Example values Description
href string https://api.equinix.com/fabric/v4/connections/3a58dd05-f46d-4b1d-a154-2e85c396ea62 An absolute URL that returns the specified connection.
type string EVPLAN_VC Type of connection.
uuid string 3a58dd05-f46d-4b1d-a154-2e85c396ea62 Equinix-assigned connection identifier.
name string MY_CONNECTION Name of the connection.
operation object - Operation status.
operation.equinixStatus string PROVISIONING Status of the connection on Equinix's end.
operation.providerStatus string NOT_AVAILABLE Status of the connection on provider's end.
order object - Order details.
order.billingTier string Up to 1 Gbps Billing tier of the connection bandwidth.
notifications array An array that has notification details.
notifications.type string ALL Type of notification.
notifications.emails array test@equinix.com, test2@equinix.com The list of emails to be notified.
changeLog object - A permanent record of asset creation, modification, or deletion.
changeLog.createdBy string testNEuser2 Created by.
changeLog.createdDateTime string 2021-07-15T19:30:29.526Z Connection creation timestamp in the IETF ISO 8601 extended date/time format:

YYYY-MM-DDTHH:MM:SS.000+0000
changeLog.updatedBy string testNEuser2 Updated by.
changeLog.updatedDateTime string 2021-07-15T19:30:29.526Z Update timestamp in the IETF ISO 8601 extended date/time format:

YYYY-MM-DDTHH:MM:SS.000+0000
bandwidth integer 1000 Bandwidth of the connection in Mbps.
redundancy object Object containing redundancy details.
redundancy.group string 7a58dd05-f46d-4b1d-a154-2e85c396ea63 Unique Id of the redundancy group.
redundancy.priority string PRIMARY Whether the connection is PRIMARY or SECONDARY.
aSide object Object containing aSide details.
aSide.accessPoint object Object containing aSide endpoint configuration.
aSide.location object An object that has the location details of the aSide connection.
location.metroCode string DC Metro code.
port object An object that has the port details.
port.href string https://api.equinix.com/ne/v1/devices/5a58dd05-f46d-4b1d-a154-2e85c396ea63
port.type string XF_PORT Type of port.
port.uuid string 5a58dd05-f46d-4b1d-a154-2e85c396ea63 Unique Id of the port.
port.name string sroy-device Name of the port.
accessPoint.linkProtocol object An object that has the link protocol.
linkProtocol.type string DOT1Q Type of link protocol.
linkProtocol.vlanTag integer 10579 Vlan tag.
accessPoint.interface object Object containing details of the interface.
interface.uuid string 3a58dd05-f46d-4b1d-a154-2e85c396ea62 Unique identifier of the interface.
interface.id string 5 The interface id of the virtual device that hosts the connection.
interface.type string CLOUD Type of interface.
accessPoint.virtualDevice object An object that has the virtual device details.
virtualDevice.type string EDGE Type of virtual device.
zSide object Object containing zSide details.
zSide.accessPoint object Object containing zSide endpoint configuration.
accessPoint.network object Object containing network configuration.
network.href string http://api.equinix.com/fabric/v4/networks/7c4f2315-839b-4fbd-90ea-59adf165312d An absolute URL that returns the network asset.
network.uuid string 3a58dd05-f46d-4b1d-a154-2e85c396ea62 Equinix-assigned network identifier.
network.name string EVPLAN_NETWORK Name of the network.
network.platformuuid string 5a58dd05-f46d-4b1d-a154-2e85c396ea69 Platform Id.
network.state string PROVISIONING Status of the network.
network.type string EVPLAN Type of network.
network.scope string REGIONAL Scope of network. LOCAL, REGIONAL, or GLOBAL
network.location object An object that has the location details of the zSide connection.
location.region string AMER zSide location.