APIPour commencer

Erreurs

Statuts HTTP et objet error homogène : type, code, message en français, param et doc_url.

Voir en Markdown

Statuts HTTP#

StatutSignification
200 OKRéussite.
304 Not ModifiedRien n’a changé depuis l’ETag envoyé dans If-None-Match (cache).
400 Bad RequestRequête à corriger : paramètre inconnu, valeur invalide, curseur invalide.
404 Not FoundFiche, version du jeu ou route introuvable.
405 Method Not AllowedMéthode autre que GET, HEAD ou OPTIONS : l’API est en lecture seule.
429 Too Many RequestsTrop de requêtes : attendez Retry-After secondes (limites).
500 Internal Server ErrorErreur de WoWDB, rare : réessayez plus tard, et signalez-la avec X-Request-Id si elle persiste.
Exemple : 404cURL
curl https://api.wowdb.assemblee-defias.fr/v1/classic/items/999999
Réponse404JSON
{
  "error": {
    "type": "invalid_request_error",
    "code": "resource_missing",
    "message": "Aucun objet n° 999999 dans la version classic. Vérifiez la version : un même numéro n'existe pas forcément dans les trois.",
    "param": null,
    "doc_url": "https://docs.wowdb.assemblee-defias.fr/erreurs#resource_missing"
  }
}

L’objet error#

Toute réponse en erreur a le même corps JSON :

Champs#

  • errorobjet

    L’erreur.

    5 attributs enfants
    • typechaîne

      Famille : invalid_request_error (requête à corriger), rate_limit_error (trop de requêtes), api_error (erreur de WoWDB).

    • codechaîne

      Code précis et stable, à tester dans votre code (parameter_invalid, resource_missing…).

    • messagechaîne

      Explication en français, lisible par un humain.

    • paramchaîne ou null

      Paramètre en cause, s’il y en a un.

    • doc_urlchaîne

      Section de la documentation qui explique cette erreur.

Testez error.code dans votre code : il est stable. message est en français et peut évoluer.

Gérer une erreur
# -i affiche le statut et les en-têtes ; le corps reste du JSON.
curl -i "https://api.wowdb.assemblee-defias.fr/v1/classic/items?quality=mythic"

Codes d’erreur#

parameter_invalid#

400 : valeur invalide (limit=500, quality=mythic, rogue=oui, identifiant non numérique) ou paramètre répété. param nomme le paramètre, message donne les valeurs permises.

parameter_unknown#

400 : paramètre inconnu de cette route (qualite=4). Le message liste les paramètres acceptés.

parameter_missing#

400 : paramètre obligatoire absent (q de la recherche).

cursor_invalid#

400 : curseur illisible ou venu d’une autre requête (pagination).

resource_missing#

404 : aucune fiche de ce numéro dans cette version.

version_unknown#

404 : version du jeu inconnue ; versions : classic, tbc, wotlk.

route_unknown#

404 : aucune route à cette adresse.

method_not_allowed#

405 : méthode refusée ; l’en-tête Allow liste GET, HEAD, OPTIONS.

rate_limited#

429 : quota dépassé ; type rate_limit_error.

internal_error#

500 : erreur de WoWDB ; type api_error.

Exemple : 400cURL
curl -G https://api.wowdb.assemblee-defias.fr/v1/classic/items \
  -d quality=mythic
Réponse400JSON
{
  "error": {
    "type": "invalid_request_error",
    "code": "parameter_invalid",
    "message": "Valeur inconnue pour quality : « mythic ». Valeurs possibles : poor, common, uncommon, rare, epic, legendary, artifact, heirloom.",
    "param": "quality",
    "doc_url": "https://docs.wowdb.assemblee-defias.fr/erreurs#parameter_invalid"
  }
}

API de WoWDB des Défias, v1. Données du jeu © Blizzard Entertainment. Conditions d’usage · Markdown · llms.txt · OpenAPI