Skip to content

Erreurs ​

Codes de statut HTTP
200 / 201 / 204Succès. 201 quand une ressource a été créée, 204 quand il n’y a pas de corps.
400Bad Request : requête mal formée ou champ invalide.
401Unauthorized : identifiants manquants ou invalides.
404Not Found : la ressource n’existe pas dans ce workspace.
429Too Many Requests : attendez Retry-After secondes.
5xxErreur serveur. Vous pouvez réessayer sans risque les requêtes idempotentes avec un backoff.

Corps d’erreur (v3) ​

json
{
  "status": 400,
  "code": "INVALID_FIELD",
  "message": "Request validation failed.",
  "details": [
    { "field": "code", "message": "must be unique in the workspace" }
  ]
}
ChampTypeDescription
statusintegerCode de statut HTTP
codestringCode d’erreur stable et lisible par une machine. Basez votre logique sur lui, pas sur message.
messagestringMessage lisible par un humain
detailsarrayProblèmes au niveau des champs, lorsque le corps de la requête est invalide

Corps d’erreur (v1) ​

Les endpoints hérités renvoient une forme plus réduite :

json
{ "code": 1001, "message": "Store not found" }

Gérer les erreurs ​

javascript
const res = await fetch(url, { headers })
if (!res.ok) {
  const error = await res.json().catch(() => ({}))
  if (res.status === 429) {
    await sleep(Number(res.headers.get('Retry-After') ?? 1) * 1000)
    // nouvelle tentative
  }
  throw new Error(`${res.status} ${error.code ?? ''}: ${error.message ?? res.statusText}`)
}
python
response = session.get(url)
if response.status_code == 429:
    time.sleep(int(response.headers.get("Retry-After", "1")))
elif not response.ok:
    error = response.json()
    raise RuntimeError(f"{response.status_code} {error.get('code')}: {error.get('message')}")