Gérer les tables de routage
Conditions préalables
Authentification: soumettez vos identifiants utilisateur, votre identifiant client et votre clé secrète pour l’authentification OAuth2. Consultez la documentation relative à l’authentification API (Authentification API) pour savoir comment appeler l’API OAuth afin de valider et d’authentifier vos identifiants.
Mettre à jour les tables de routage
Pour déclencher une mise à jour des tables de routage de votre routeur Fabric Cloud, envoyez une requête POST au point de terminaison /fabric/v4/routers/{uuid}/actions.
POST /fabric/v4/routers/{uuid}/actions | |
|---|---|
| Method | POST |
| URL or Endpoint | /fabric/v4/routers/{uuid}/actions |
| Headers | Authorization, Content-Type |
| Path Parameters | uuid |
| Query Parameters | Not applicable |
| Body Parameters | type |
Exemple de demande de boucle:
curl -X
POST 'https://api.equinix.com/fabric/v4/routers/{router_uuid}/actions'
-H 'content-type: application/json'
-H 'authorization: Bearer <token>'
-d '{
"type": "ROUTE_TABLE_ENTRY_UPDATE"
}'
Paramètres corporels:
-
type(obligatoire) chaîne - Action de gestion de la table de routage. Pour mettre à jour vos tables de routage, utilisezROUTE_TABLE_ENTRY_UPDATE. Pour afficher tous les préfixes appris via BGP, utilisezRECEIVED_ROUTE_ENTRY_UPDATE. Pour afficher les préfixes envoyés par FCR via BGP, utilisezADVERTISED_ROUTE_ENTRY_UPDATE. -
connection(facultatif) objet - Un objet contenant un champuuidpermettant de spécifier une connexion. Requis uniquement pour les typesRECEIVED_ROUTE_ENTRY_UPDATEetADVERTISED_ROUTE_ENTRY_UPDATE.
Pour obtenir des informations complètes sur les paramètres et des exemples, consultez la référence API.
Exemple de réponse:
{
"type": "ROUTE_TABLE_ENTRY_UPDATE",
"uuid": "37c10edc-ba2e-4240-a850-8a48f9c47d00",
"state": "PENDING",
"changeLog": {
"createdDateTime": "2021-07-15T19:30:29.526Z",
"updatedDateTime": "2021-08-15T19:30:29.526Z"
}
}
Obtenir les demandes de gestion des tables de routage
Pour obtenir la liste des requêtes de gestion des tables de routage, envoyez une requête GET au point de terminaison /fabric/v4/routers/{uuid}/actions. Utilisez le paramètre de requête state pour filtrer la réponse en fonction de l'état de la requête.
GET /fabric/v4/routers/{uuid}/actions | |
|---|---|
| Method | GET |
| URL or Endpoint | /fabric/v4/routers/{uuid}/actions |
| Headers | Authorization |
| Path Parameters | uuid |
| Query Parameters | state |
| Body Parameters | Not applicable |
Cette API récupère les demandes d'actions de gestion des tables de routage.
Exemple de requête curl
curl -X
GET 'https://api.equinix.com/fabric/v4/routers/{router_uuid}/actions?state=<state>'
-H 'authorization: Bearer <token>'
Paramètre de requête:
state(facultatif) chaîne - État d'exécution de l'action. Valeurs possibles:PENDING,SUCCEEDEDouFAILED.
Exemple de réponse:
{
"type": "ROUTE_TABLE_ENTRY_UPDATE",
"uuid": "37c10edc-ba2e-4240-a850-8a48f9c47d00",
"state": "PENDING",
"changeLog": {
"createdDateTime": "2021-07-15T19:30:29.526Z",
"updatedDateTime": "2021-08-15T19:30:29.526Z"
}
}
Recherche de requêtes de gestion des tables de routage
Pour rechercher des requêtes de gestion des tables de routage, envoyez une requête POST au point de terminaison /fabric/v4/routers/{routerId}/actions/search, en spécifiant les critères de recherche dans le corps de la requête.
POST /fabric/v4/routers/{routerId}/actions/search | |
|---|---|
| Method | POST |
| URL or Endpoint | /fabric/v4/routers/{routerId}/actions/search |
| Headers | Authorization, Content-Type |
| Path Parameters | routerId |
| Query Parameters | Not applicable |
| Body Parameters | filter, pagination, sort |
Exemple de demande de boucle:
curl -X POST 'http: //api.equinix.com/fabric/v4/routers/{router_uuid}/actions/search'
-H 'content-type: application/json'
-H 'authorization: Bearer <token>'
-d '{
"filter": {
"and": [
{
"property": "/type",
"operator": "IN",
"values": [
"ROUTE_TABLE_ENTRY_UPDATE",
"RECEIVED_ROUTE_ENTRY_UPDATE"
]
},
{
"property": "/state",
"operator": "=",
"values": [
"SUCCEEDED"
]
},
{
"property": "/connection/uuid",
"operator": "IN",
"values": [
"3066ab1d-af87-49d7-8a14-c9bdb57ac809"
]
}
]
},
"pagination": {
"offset": 0,
"limit": 1
},
"sort": [
{
"property": "/changeLog/createdDateTime",
"direction": "DESC"
}
]
}'
Paramètres corporels notables:
-
filter(obligatoire) objet - L'objet qui définit vos conditions de recherche. -
and(obligatoire) tableau[objet] - Un objet tableau servant d'opérateur logique appliqué aux objets de recherche du tableau. Vous pouvez faire une recherche sur:property(obligatoire) chaîne - Paramètre du champ de recherche. Notez que la valeur de cette propriété détermine la liste des opérateurs et des valeurs applicables. Valeurs applicables:"/name","/uuid","/state","/location/metroCode","/location/metroName","/package/code"et une recherche dans toutes les catégories"\*".operator(obligatoire) chaîne - Opérateur de paramètre de champ de recherche. Valeurs applicables:"=","!=",">",">=","<","<=",BETWEEN,LIKE,IN,"NOT BETWEEN","NOT LIKE","NOT IN".value(obligatoire) tableau[chaîne] - Valeur du paramètre du champ de recherche.
-
paginationobject - Objet facultatif contenant les paramètres de pagination des résultats de recherche avec les champsoffsetinteger etlimitinteger. -
sortobject - Objet facultatif qui définit vos paramètres de tri des résultats de recherche avec les champsdirectionstring etpropertystring.
Pour une liste complète des propriétés consultables, des limites de pagination et des propriétés triables, consultez la référence API.
Exemple de réponse:
{
"pagination": {
"offset": 0,
"limit": 1,
"total": 2,
"prev": null,
"next": null
},
"data": [
{
"href": "https://api.equinix.com//fabric/v4/routers/a1c6b7fd-aead-410a-96b4-b1dfa1071700/actions/1e9414f1-763e-4c0a-86c6-0bc8336048d9",
"uuid": "1e9414f1-763e-4c0a-86c6-0bc8336048d9",
"type": "RECEIVED_ROUTE_ENTRY_UPDATE",
"state": "SUCCEEDED",
"connection": {
"uuid": "3066ab1d-af87-49d7-8a14-c9bdb57ac809"
},
"operation": {
"bgpIpv4RoutesCount": 6,
"bgpIpv6RoutesCount": 6
},
"changeLog": {
"createdDateTime": "2024-01-01T01:00:00.000Z",
"updatedDateTime": "2024-01-01T01:01:00.000Z"
}
}
]
}