Référence
Erreurs de l'API
Format des erreurs de l'API Host, liste des codes, leur cause et la conduite à tenir.
Une erreur répond avec un statut HTTP 4xx ou 5xx, et un objet error. Le champ code est stable : teste-le dans ton code. Le champ message est en français et s’affiche à une personne.
{ "error": { "code": "not_found", "message": "Projet introuvable." }}Codes
| Statut | Code | Cause | Que faire |
|---|---|---|---|
400 | bad_request | Corps ou paramètre invalide. Le message nomme le champ en cause | Corrige la requête |
400 | missing_files | Des fichiers du déploiement ne sont pas encore envoyés. La réponse liste leurs empreintes dans missing | Envoie-les par /v2/files, puis recrée le déploiement |
400 | invalid_digest | Le contenu envoyé ne correspond pas à l’empreinte annoncée | Recalcule le SHA1 du fichier |
403 | forbidden | Clé absente, inconnue ou révoquée. Ou clé de projet utilisée pour un autre projet | Vérifie la clé et sa portée |
404 | not_found | Ressource introuvable, ou hors de la portée de la clé | Vérifie l’identifiant ou le nom |
409 | conflict | Un projet porte déjà ce nom | Choisis un autre nom, ou utilise le projet existant |
409 | deployment_closed | Le déploiement a été annulé ou a échoué : rien n’est publié | Crée un nouveau déploiement |
413 | file_too_large | Un fichier dépasse 20 Mo | Allège le fichier, ou sers-le autrement |
413 | payload_too_large | Les fichiers inclus dans le corps dépassent 20 Mo au total | Envoie-les par /v2/files |
429 | rate_limited | Trop de requêtes pour cette clé | Attends un instant, puis réessaie |
500 | internal_server_error | Erreur de la plateforme. Elle est signalée automatiquement | Réessaie. Si elle persiste, écris à support@hgdc.ch |
Toutes les routes peuvent répondre 403 forbidden, 429 rate_limited et 500 internal_server_error.
Le message d’une erreur 500 ne donne jamais de détail technique. Ne compte pas sur son texte, seulement sur son code.
Le cas de missing_files
missing_files n’est pas une panne : c’est l’étape normale d’un déploiement. La CLI la traite toute seule. Si tu écris ton propre client, voici la réponse :
{ "error": { "code": "missing_files", "message": "Fichiers à envoyer avant de créer le déploiement.", "missing": [ "2ef7bde608ce5404e97d5f042f95f89f1c232871" ] }}Envoie chaque fichier listé, puis renvoie exactement la même requête de création de déploiement.
Cette page t'a aidé ?
Merci, c'est noté.