Managing Fabric Cloud Routers
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.
Search and Retrieve Fabric Cloud Routers
This API request retrieves Fabric Cloud Router instances that match provided search criteria. Send a POST
request to the /fabric/v4/routers/search
endpoint, specifying your criteria in the body of the request.
POST /fabric/v4/routers/search | |
---|---|
Method | POST |
URL or Endpoint | /fabric/v4/routers/search |
Headers | Authorization , Content-Type |
Path Parameters | Not applicable |
Query Parameters | Not applicable |
Body Parameters | filter , pagination , sort |
Sample curl request:
curl -X POST 'http: //api.equinix.com/fabric/v4/routers/search'
-H 'content-type: application/json'
-H 'authorization: Bearer <token>'
-d '{
"filter": {
"and": [
{
"property": "/name",
"operator": "LIKE",
"values": [
"%Test%"
]
},
{
"property": "/state",
"operator": "=",
"values": [
"PROVISIONED"
]
},
{
"property": "/project/projectId",
"operator": "=",
"values": [
"995072000433550"
]
},
{
"property": "/location/metroCode",
"operator": "=",
"values": [
"SV"
]
}
]
},
"pagination": {
"offset": 0,
"limit": 20
},
"sort": [
{
"direction": "DESC",
"property": "/changeLog/createdDateTime"
}
]
}'
Notable Body Parameters:
-
filter
(required) object - The object that defines your search conditions. -
and
(required) array[object] - An array object that serves as the logical operator applied on the search objects in the array. You can search on:property
(required) string - Search field parameter. Note that the property value determines the list of applicable operators and values. Applicable values:"/name"
,"/uuid"
,"/state"
,"/location/metroCode"
,"/location/metroName"
,"/package/code"
and an all-category search"\*"
.operator
(required) string - Search field parameter operator. Applicable values:"="
,"!="
,">"
,">="
,"<"
,"<="
,BETWEEN
,LIKE
,IN
,"NOT BETWEEN"
,"NOT LIKE"
,"NOT IN"
.value
(required) array[string] - Search field parameter value.
-
pagination
object - Optional object containing search results pagination settings withoffset
integer andlimit
integer fields. -
sort
object - Optional object that defines your search result sorting settings withdirection
string andproperty
string fields.
For a complete list of searchable properties, pagination limits, and sortable properties, see the API reference.
Sample response:
{
"pagination": {
"offset": 0,
"limit": 20,
"total": 1,
"next": "/search?offset=4&limit=2",
"previous": "/search?offset=0&limit=2"
},
"data": [
{
"href": "https://api.equinix.com/fabric/v4/routers/201b7346-a9eb-42fe-ae7a-08148c71928d",
"uuid": "201b7346-a9eb-42fe-ae7a-08148c71928d",
"state": "PROVISIONED",
"type": "XF_ROUTER",
"name": "My-Fabric-Cloud-Router",
"location": {
"metroCode": "HH"
},
"package": {
"code": "LAB"
},
"order": {
"purchaseOrderNumber": "1-129105284100"
},
"project": {
"projectId": "12345"
},
"notifications": [
{
"type": "ALL",
"emails": [
"abc@abc.com"
]
}
],
"account": {
"accountNumber": 123
},
"bgpIpv4RoutesCount": 0,
"bgpIpv6RoutesCount": 0,
"connectionCount": 0,
"changeLog": {
"createdBy": "abc@xyz.com",
"createdByFullName": "abc",
"createdByEmail": "abc@xyz.com",
"createdDateTime": "2021-09-24T06:59:46Z"
}
}
]
}
Get Specified Fabric Cloud Router
This API request retrieves details of a specified Fabric Cloud Router, send a GET
request to the /fabric/v4/routers/{uuid}
endpoint with the uuid
in the path of the request.
GET /fabric/v4/routers/{uuid} | |
---|---|
Method | GET |
URL or Endpoint | /fabric/v4/routers/{uuid} |
Headers | Authorization , Content-Type |
Path Parameters | uuid |
Query Parameters | Not applicable |
Body Parameters | Not applicable |
Sample curl request:
curl -X
GET 'https://api.equinix.com/fabric/v4/routers/{router_uuid}'
-H 'content-type: application/json'
-H 'authorization: Bearer <token>'
Sample response:
{
"href": "https://api.equinix.com/fabric/v4/routers/201b7346-a9eb-42fe-ae7a-08148c71928d",
"uuid": "201b7346-a9eb-42fe-ae7a-08148c71928d",
"state": "PROVISIONED",
"type": "XF_ROUTER",
"name": "My-Fabric-Cloud-Router",
"location": {
"metroCode": "HH"
},
"package": {
"code": "LAB"
},
"order": {
"purchaseOrderNumber": "1-129105284100"
},
"project": {
"projectId": "12345"
},
"notifications": [
{
"type": "ALL",
"emails": [
"abc@abc.com"
]
}
],
"account": {
"accountNumber": 123
},
"bgpIpv4RoutesCount": 0,
"bgpIpv6RoutesCount": 0,
"distinctIpv4PrefixesCount": 4,
"distinctIpv6PrefixesCount": 4,
"connectionCount": 0,
"changeLog": {
"createdBy": "abc@xyz.com",
"createdByFullName": "abc",
"createdByEmail": "abc@xyz.com",
"createdDateTime": "2021-09-24T06:59:46Z"
}
}
Update a Fabric Cloud Router
To update a Fabric Cloud Router, send a PATCH
request to the /fabric/v4/routers/{routerId}
endpoint with the parameters you are updating in the body of the request. You can update the name or change the package.
PATCH /fabric/v4/routers/{uuid} | |
---|---|
Method | PATCH |
URL or Endpoint | /fabric/v4/routers/{uuid} |
Headers | Authorization , Content-Type |
Path Parameters | uuid |
Query Parameters | Not applicable |
Body Parameters | op , path , value |
Sample curl request:
curl -X
PATCH 'https: //api.equinix.com/fabric/v4/routers/{router_uuid}'
-H 'content-type: application/json'
-H 'authorization: Bearer <token>'
-d '[
{
"op": "replace",
"path": "/name",
"value": "Cloud-Router-2"
}
]'
Notable Body Parameters:
op
(required) string - Update request type. Applicable values:replace
,add
, orremove
.path
(required) string - Parameter path of the value you are updating. Applicable values:"/name"
or"/package/code"
.value
(required) string - The new parameter value.
For a complete list of updatable fields and their values, see the API reference.
Delete Fabric Cloud Router
To delete a Fabric Cloud Router, send a DELETE
request to the /fabric/v4/routers/{uuid}
endpoint. Specify the the router you want to delete by uuid
in the path.
DELETE /fabric/v4/routers/{uuid} | |
---|---|
Method | DELETE |
URL or Endpoint | /fabric/v4/routers/{uuid} |
Headers | Authorization , Content-Type |
Path Parameters | uuid |
Query Parameters | Not applicable |
Body Parameters | Not applicable |
Sample curl request:
curl -X
DELETE 'https://api.equinix.com/fabric/v4/routers/{router_uuid}'
-H 'content-type: application/json'
-H 'authorization: Bearer <token>'