Erreurs

Les appels de style TMDB renvoient le corps d'erreur TMDB : success à false, un status_code et un status_message. Les appels de style OMDb renvoient Response False et une chaîne Error. amodb utilise 8 codes TMDB, de 7 (clé invalide) à 25 (limite de débit) et 36 (offre expirée). Réessayez seulement 429, 500 et 504.

Mis à jour le Voir en Markdown

Corps d'erreur de style TMDB

Chaque erreur de https://api.amodb.dev/3 a la même forme JSON que TMDB :

JSON
{
  "success": false,
  "status_code": 34,
  "status_message": "The resource you requested could not be found."
}

Codes d'erreur

HTTPstatus_codestatus_messageQue faire
4017Invalid API key: You must be granted a valid key.Vérifiez la clé et la façon de l'envoyer.
40110Suspended API key: Access to your account has been suspended, contact amodb.Écrivez à support@amodb.dev.
40236Your plan has expired. Renew at https://amodb.dev/pricingPayez une nouvelle période.
40434The resource you requested could not be found.Vérifiez l'identifiant ou le chemin.
40537This method is not offered by amodb.Utilisez un point de terminaison de lecture.
42925Your request count (N) is over the allowed limit of (L).Attendez les secondes indiquées par Retry-After.
50011Internal error: Something went wrong, contact amodb.Réessayez après quelques secondes.
50424Your request to the backend server timed out. Try again.Réessayez après quelques secondes.

Corps d'erreur de style OMDb

Le point de terminaison compatible OMDb garde la forme et la formulation d'OMDb :

Un appel OMDb avec r=xml renvoie HTTP 400. Utilisez r=json ou omettez r.

JSON
{
  "Response": "False",
  "Error": "Movie not found!"
}
jspy
const res = await fetch("https://api.amodb.dev/3/movie/550", {
  headers: { Authorization: `Bearer ${process.env.AMODB_KEY}` },
});
if (!res.ok) {
  const err = await res.json();
  if (res.status === 429) {
    // wait Retry-After seconds, then retry
  }
  throw new Error(`amodb ${res.status} code ${err.status_code}: ${err.status_message}`);
}
res = requests.get(url, headers=headers, timeout=10)
if not res.ok:
    err = res.json()
    raise RuntimeError(f"amodb {res.status_code} code {err['status_code']}: {err['status_message']}")

Les replis qui ne sont pas des erreurs

  • Une balise language inconnue n'échoue pas. amodb sert l'anglais.
  • Un champ sans donnée vaut null ou un tableau vide, comme dans TMDB.