Connect Using Two Service Tokens
You can establish connections between your assets or third-parties using the information pre-defined in a Service Token. Service Tokens can be issued for both the a-side and the z-side of a connection.
For example, you can create a connection from an origin defined by an a-side service token to destination defined by a z-side service token.
Prerequisites
-
Authenticate - Submit your user credentials, Client ID, and Client Secret for OAuth2 authentication. Refer to API Authentication for instructions on how to call the OAuth API to validate and authenticate your credentials.
-
Determine your a-side port information. Get your relevant port information using the Get All Ports endpoint.
-
List available Service Tokens and get connection details. Use the Get All Service Tokens endpoint to find available a-side and z-side service tokens along with the allowed connection settings.
Creating a Connection from an A-side to a Z-side Service Token
To create a connection between to Service Tokens, send a POST
request to the /fabric/v4/connections
endpoint. Specify your a-side and z-side service token details in the body of the request.
A service token can be dispatched to a number of recipients, and it's valid for a single use by any of them.
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 , redundancy , bandwidth , aSide , zSide , notifications |
Sample cURL Request:
curl -X
POST 'https://api.equinix.com/fabric/v4/connections'
-H 'content-type: application/json'
-H 'authorization: Bearer <token>'
-d '{
"type": "EVPL_VC",
"name": "AST_TO_ZST_CONNECTION",
"order": {
"purchaseOrderNumber": "1-129105284100" },
"bandwidth": 100,
"redundancy": {
"priority": "PRIMARY" },
"aSide": {
"serviceToken": {
"uuid": "20d32a80-0d61-4333-bc03-707b591ae2f5" }
},
"zSide": {
"serviceToken": {
"uuid": "20d32a80-0d61-4333-bc03-707b591ae2f5" }
},
"notifications": [
{
"type": "ALL",
"emails": [
"test@equinix.com",
"test1@equinix.com" ]
}
]
}'
The parameters included in the request body are specific to this example. For a full list of parameters and their descriptions, see the API Reference.
Sample Response:
{
"href": "https://api.equinix.com/fabric/v4/connections/b067f685-49b0-1a09-6fe0-360a5d00a",
"type": "EVPL_VC",
"uuid": "b067f685-49b0-1a09-6fe0-360a5d00a",
"name": "AST_TO_ZST_CONNECTION",
"state": "ACTIVE",
"operation": {
"providerStatus": "PROVISIONED",
"equinixStatus": "PROVISIONED" },
"notifications": [
{
"type": "ALL",
"emails": [
"test@equinix.com" ]
}
],
"account": {
"accountNumber": 201246,
"orgId": 92610,
"globalOrgId": "0017i000011X250AAC" },
"changeLog": {
"createdBy": "testuser",
"createdDateTime": "2022-05-16T07:50:49.749Z" },
"bandwidth": 100,
"redundancy": {
"group": "b067f685-49b0-1a09-6fe0-360a5d00afdg",
"priority": "PRIMARY" },
"isRemote": true,
"direction": "OUTGOING",
"aSide": {
"serviceToken": {
"href": "https://api.equinix.com/fabric/v4/serviceTokens/b067f685-49b0-1a09-6fe0-360a5d00afdg",
"uuid": "b067f685-49b0-1a09-6fe0-360a5d00afdg" },
"accessPoint": {
"location": {
"metroHref": "https://api.equinix.com/fabric/v4/metros/SV",
"metroCode": "SV" },
"port": {
"href": "https://api.equinix.com/fabric/v4/ports/b067f685-49b0-1a09-6fe0-360a5d00afdg",
"uuid": "b067f685-49b0-1a09-6fe0-360a5d00afdg" },
"linkProtocol": {
"type": "DOT1Q" }
}
},
"zSide": {
"serviceToken": {
"href": "https://api.equinix.com/fabric/v4/serviceTokens/b067f685-49b0-1a09-6fe0-360a5d00afdg",
"uuid": "b067f685-49b0-1a09-6fe0-360a5d00afdg" },
"accessPoint": {
"location": {
"metroHref": "https://api.equinix.com/fabric/v4/metros/SV",
"metroCode": "SV" },
"port": {
"href": "https://api.equinix.com/fabric/v4/ports/b067f685-49b0-1a09-6fe0-360a5d00afdg",
"uuid": "b067f685-49b0-1a09-6fe0-360a5d00afdg" },
"linkProtocol": {
"type": "DOT1Q" }
}
},
"order": {
"purchaseOrderNumber": "1122334",
"billingTier": "Up to 50 MB" }
}
Response payload includes configuration parameters defined in the request body. For a full list of possible parameters and their descriptions, see the API Reference.
Monitoring the Connection
Use the Get Specified Connection endpoint to monitor connection status.