CorceLinkDocumentation Espace client

Opérations longues

Les actions sur la machine répondent tout de suite et se suivent jusqu’à leur terme.

L’API suit le modèle des grands fournisseurs de cloud :

{
  "id": "op-01JB7X5R1MQ8ZT4K",
  "type": "vps.reboot",
  "status": "running",
  "resource": { "type": "vps", "id": "vps-7c2e4a91" },
  "created_at": "2026-10-27T12:32:13Z",
  "started_at": "2026-10-27T12:32:13Z",
  "completed_at": null,
  "error": null
}

L’en-tête Location donne l’adresse de l’opération : /v1/operations/op-….

État Signification
pending Acceptée, pas encore commencée
running En cours sur l’hyperviseur
succeeded Terminée avec succès ; completed_at est renseignée
failed En échec définitif ; error donne le code (task_failed, task_lost) et, quand elle est connue, la cause donnée par l’hyperviseur

Attendre la fin d’une opération

import os, time, requests

headers = {"Authorization": f"Bearer {os.environ['CORCELINK_API_KEY']}"}
op = requests.post("https://api.corcelink.fr/v1/compute/vps/vps-7c2e4a91/reboot", headers=headers, timeout=30).json()
while op["status"] in ("pending", "running"):
    time.sleep(2)
    op = requests.get(f"https://api.corcelink.fr/v1/operations/{op['id']}", headers=headers, timeout=30).json()
print(op["status"], op["error"])

Interrogez une opération toutes les 1 à 5 secondes : un redémarrage dure en général moins d’une minute. Les opérations restent consultables 7 jours dans GET /v1/operations, filtrables par état.

Le résultat d’une opération

Certaines opérations portent un champ result. Une réinstallation y donne le lien vers le nouveau mot de passe root :

"result": { "password_url": "https://secret.corcelink.fr/s/7Hq2mZ", "password_expires_at": "2026-10-28T13:37:27Z" }

Le lien ne s’ouvre qu’une fois et expire au bout de 24 heures. Le mot de passe n’apparaît jamais en clair dans une réponse de l’API.

Bon à savoir