Skip to main content

Managing Assets

Use the Asset Management APIs to attach various types of Assets to a Stream. You have the option to use existing Assets or create new ones to add to a Stream.

The following assets are supported:

  • Fabric Cloud Router (FCR) - To retrieve the details of an existing Cloud Router, send a GET request to the /fabric/v4/routers/{routerId} endpoint. To create a new Fabric Cloud Router, send a POST request to the /fabric/v4/routers endpoint.

  • Connections - To retrieve the details of an existing connection, send a GET to the /fabric/v4/connections/{connectionId} endpoint. To create a new connection, send a POST request to the /fabric/v4/connections endpoint.

  • Ports - To retrieve a list of all your ports, send a GET request to the /fabric/v4/ports endpoint. To create a new port, Send a POST request to the /fabric/v4/ports endpoint.

  • Metros - To view available metros, send a GET request to the /fabric/v4/metros endpoint.

  • Projects – To view all of your project's events, including events for each asset in your project, attach a project to your stream. To get a list of your projects, send a GET request to the /resourceManager/v2/projects endpoint.

  • Organizations – To view organization events, such as role assignments, attach an organization to your stream. To get information about your organizations, refer to the Managing Organizations page.

Prerequisites

  • To attach assets (Port, Connections, etc) onto a stream, the user needs to have at least the Viewer Role on that asset.

  • To attach projects to a stream for lifecycle provisioning events, the user needs to have the Project Admin role.

  • To attach organizations to a stream for role assignment, user login, and resource management events, the user needs to have the Org Admin role. To attach organizations to a stream for role assignment, the user needs to have the Org Admin role.

  • Submit your user credentials, Client ID, and Client Secret for OAuth2 authentication. Refer to API Authentication for more information on how to authenticate your requests to the Equinix API.

Attaching Assets

To attach a port to a stream, send a PUT request to the /fabric/v4/streams/{streamId}/{asset}/{assetId} endpoint.

Refer to the examples below to attach an asset to a stream for the supported assets.

Ports

Sample cURL Request:

curl -X 'PUT' 'https://api.equinix.com/fabric/v4/streams/<streamId>/ports/<portId>' \ 
-H 'accept: application/json' \
-H 'Content-Type: application/json' \
-H 'Authorization: Bearer <Bearer Token>' \
-d '{
"metricsEnabled": true
}'

Sample Response:

{
    "href": "https://api.equinix.com/fabric/v4/streams/241372e9-79c9-4ef8-b77a-8b8176c2098b4/ports/dee885d7-a845-4873-8774-f83012e7a",
    "uuid": "dee885d7-a845-4873-8774-f83012e7a",
    "type": "XF_PORT",
    "metricsEnabled": true,
    "attachmentStatus": "ATTACHING"
}

Connections

Sample cURL Request:

curl -X 'PUT' 'https://api.equinix.com/fabric/v4/streams/<streamId>/connections/<connectionId>' \ 
-H 'accept: application/json' \
-H 'Content-Type: application/json' \
-H 'Authorization: Bearer <Bearer Token>' \
-d '{
"metricsEnabled": true
}'

Sample Response:

{ 
    "href": "https://api.equinix.com/fabric/v4/streams/241372e9-79c9-4ef8-b77a-8b8176c2098b4/connections/dee885d7-a845-4873-8774-f83012e7a",
    "uuid": "dee885d7-a845-4873-8774-f83012e7a",
    "type": "IP_VC",
    "metricsEnabled": true,
    "attachmentStatus": "ATTACHING"
}

Fabric Cloud Routers

Sample cURL Request:

curl -X 'PUT' 'https://api.equinix.com/fabric/v4/streams/<streamId>/routers/<routerId>' \ 
-H 'accept: application/json' \
-H 'Content-Type: application/json' \
-H 'Authorization: Bearer <Bearer Token>' \
-d '{
"metricsEnabled": false
}'

Sample Response:

{ 
    "href": "https://api.equinix.com/fabric/v4/streams/241372e9-79c9-4ef8-b77a-8b8176c2098b4/routers/dee885d7-a845-4873-8774-f83012e7a",
    "uuid": "dee885d7-a845-4873-8774-f83012e7a",
    "type": "XF_ROUTER",
    "metricsEnabled": false,
    "attachmentStatus": "ATTACHED"
}

Metros

Sample cURL Request:

curl -X 'PUT' 'https://api.equinix.com/fabric/v4/streams/<streamId>/metros/<metroCode>' \ 
-H 'accept: application/json' \
-H 'Content-Type: application/json' \
-H 'Authorization: Bearer <Bearer Token>' \
-d '{
"metricsEnabled": true
}'

Sample Response:

{ 
    "href": "https://api.equinix.com/fabric/v4/streams/241372e9-79c9-4ef8-b77a-8b8176c2098b4/metros/SV",
    "uuid": "SV",
    "type": "XF_METRO",
    "metricsEnabled": true,
    "attachmentStatus": "ATTACHED"
}

Projects

Sample cURL Request:

curl -X 'PUT' 'https://api.equinix.com/fabric/v4/streams/<streamId>/projects/<projectId>' \ 
-H 'accept: application/json' \
-H 'Content-Type: application/json' \
-H 'Authorization: Bearer <Bearer Token>' \
-d '{
"includes": ["*"],
"metricsEnabled": true
}'

Sample Response:

{ 
    "href": "https://api.equinix.com/fabric/v4/streams/241372e9-79c9-4ef8-b77a-8b8176c2098b4/projects/dee885d7-a845-4873-8774-f83012e7a",
    "uuid": "dee885d7-a845-4873-8774-f83012e7a",
    "type": "PROJECT",
    "metricsEnabled": true ,
    "attachmentStatus": "ATTACHED"
}

Organizations

Sample cURL Request:

curl -X 'PUT' 'https://api.equinix.com/fabric/v4/streams/<streamId>/organizations/<organizationId>' \ 
-H 'accept: application/json' \
-H 'Content-Type: application/json' \
-H 'Authorization: Bearer <Bearer Token>' \
-d '{
"includes": ["*"],
"metricsEnabled": true
}'

Sample Response:

{ 
     "href": "https://api.equinix.com/fabric/v4/streams/241372e9-79c9-4ef8-b77a-8b8176c2098b4/organizations/dee885d7-a845-4873-8774-f83012e7a",
     "uuid": "dee885d7-a845-4873-8774-f83012e7a",
     "type": "ORGANIZATION",
     "metricsEnabled": true,
     "attachmentStatus": "ATTACHED"
}

Retrieving Asset Details

To get an asset's attachment details and status, send a GET request to the fabric/v4/streams/{streamId}/{asset}/{assetId} endpoint.

Sample cURL Request:

curl -X 'GET' 'https://api.equinix.com/fabric/v4/streams/657400f8-d360-11e9-bb65-2a2ae2dbcce5/ports/757400f8-d360-11e9-bb65-2a2ae2dbcce6' \  
-H 'accept: application/json' \
-H 'Authorization: Bearer <Bearer Token>'

Sample Response:

{  
      "href": "https://api.equinix.com/fabric/v4/stream/241372e9-79c9-4ef8-b77a-8b8176c2098b4/ports/dee885d7-a845-4873-8774-f83012e7a",
      "uuid": "dee885d7-a845-4873-8774-f83012e7a",
      "metricsEnabled": true,
      "attachmentStatus": "ATTACHED"
}

Deleting an Asset Attachment

To delete an asset attachment, send a DELETE request to the fabric/v4/streams/{streamId}/{asset}/{assetId} endpoint.

Sample cURL Request:

curl -X 'DELETE' 'https://api.equinix.com/fabric/v4/streams/657400f8-d360-11e9-bb65-2a2ae2dbcce5/ports/757400f8-d360-11e9-bb65-2a2ae2dbcce6' \  
-H 'Content-Type: application/json' \
-H 'Authorization: Bearer <Bearer Token>'

Sample Response:

{  
      "href": "https://api.equinix.com/fabric/v4/stream/241372e9-79c9-4ef8-b77a-8b8176c2098b4/ports/dee885d7-a845-4873-8774-f83012e7a",
      "uuid": "dee885d7-a845-4873-8774-f83012e7a",
      "metricsEnabled": true,
      "attachmentStatus": "DETACHING"
}