Chyby

Volání ve stylu TMDB vracejí chyby v těle TMDB: success false, číselný status_code a status_message. Volání ve stylu OMDb vracejí Response False s řetězcem Error. amodb používá 8 kódů TMDB, od 7 pro neplatný klíč po 25 pro limit požadavků a 36 pro vypršený tarif. Opakujte jen 429, 500 a 504.

Aktualizováno Zobrazit jako Markdown

Tělo chyby ve stylu TMDB

Každá chyba z https://api.amodb.dev/3 má stejný tvar JSON jako TMDB:

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

Chybové kódy

HTTPstatus_codestatus_messageCo dělat
4017Invalid API key: You must be granted a valid key.Zkontrolujte klíč a způsob, jakým ho posíláte.
40110Suspended API key: Access to your account has been suspended, contact amodb.Napište na support@amodb.dev.
40236Your plan has expired. Renew at https://amodb.dev/pricingZaplaťte nové období.
40434The resource you requested could not be found.Zkontrolujte ID nebo cestu.
40537This method is not offered by amodb.Použijte endpoint pro čtení.
42925Your request count (N) is over the allowed limit of (L).Počkejte tolik sekund, kolik říká Retry-After.
50011Internal error: Something went wrong, contact amodb.Zopakujte po několika sekundách.
50424Your request to the backend server timed out. Try again.Zopakujte po několika sekundách.

Tělo chyby ve stylu OMDb

Endpoint kompatibilní s OMDb zachovává tvar a znění OMDb:

Volání OMDb s r=xml vrací HTTP 400. Použijte r=json nebo r vynechte.

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']}")

Náhradní chování, které není chyba

  • Neznámý jazykový tag language neselže. amodb pro něj použije angličtinu.
  • Pole bez dat je null nebo prázdné pole, stejně jako v TMDB.