# Памылкі

> Выклікі ў стылі TMDB вяртаюць памылкі ў целе TMDB: success false, лікавы status_code і status_message. Выклікі ў стылі OMDb вяртаюць Response False з радком Error. amodb выкарыстоўвае 8 кодаў TMDB, ад 7 для няправільнага ключа да 25 для ліміту запытаў і 36 для скончанага плана. Паўтарайце толькі 429, 500 і 504.

## Цела памылкі ў стылі TMDB

Кожная памылка з `https://api.amodb.dev/3` мае ту ж форму JSON, што і ў TMDB:

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

## Коды памылак

| HTTP | status_code | status_message                                                               | Што рабіць                           |
| ---- | ----------- | ---------------------------------------------------------------------------- | ------------------------------------ |
| 401  | 7           | Invalid API key: You must be granted a valid key.                            | Праверце ключ і спосаб яго перадачы. |
| 401  | 10          | Suspended API key: Access to your account has been suspended, contact amodb. | Напішыце на <support@amodb.dev>.     |
| 402  | 36          | Your plan has expired. Renew at <https://amodb.dev/pricing>                  | Аплаціце новы перыяд.                |
| 404  | 34          | The resource you requested could not be found.                               | Праверце id або шлях.                |
| 405  | 37          | This method is not offered by amodb.                                         | Выкарыстоўвайце эндпоінт чытання.    |
| 429  | 25          | Your request count (N) is over the allowed limit of (L).                     | Пачакайце `Retry-After` секунд.      |
| 500  | 11          | Internal error: Something went wrong, contact amodb.                         | Паўтарыце праз некалькі секунд.      |
| 504  | 24          | Your request to the backend server timed out. Try again.                     | Паўтарыце праз некалькі секунд.      |

## Цела памылкі ў стылі OMDb

Эндпоінт, сумяшчальны з OMDb, захоўвае форму і фармуліроўкі OMDb:

```json
{
  "Response": "False",
  "Error": "Movie not found!"
}
```

Выклік OMDb з `r=xml` вяртае HTTP 400. Выкарыстоўвайце `r=json` або не ўказвайце `r`.

## Апрацоўка памылак у кодзе

```js
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}`);
}
```

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

## Запасныя варыянты, якія не з’яўляюцца памылкамі

- Невядомы тэг `language` не дае памылкі. amodb аддае ў такім выпадку англійскую мову.
- Поле без даных мае значэнне `null` або пусты масіў, як у TMDB.

## Пытанні і адказы

### Якія памылкі павінен паўтараць мой кліент?

Паўтарайце 429 пасля Retry-After секунд, а 500 або 504 з затрымкай у некалькі секунд. Не паўтарайце 401, 402, 404 або 405: той самы выклік зноў завершыцца памылкай.

### Чаму я атрымліваю 405 для эндпоінта TMDB?

amodb не прапануе метады запісу TMDB для account, session, rating і list. Яны вяртаюць 405 са status_code 37. Усе эндпоінты чытання працуюць.

## Звязаныя старонкі

- [Ліміты запытаў](https://amodb.dev/be/rate-limits/): amodb абмяжоўвае ключ па запытах у хвіліну ў слізгальным акне 60 секунд: 20, 40 або 120 па плане. Чытайце загалоўкі лімітаў і апрацоўвайце 429 праз Retry-After.
- [Аўтэнтыфікацыя](https://amodb.dev/be/authentication/): Як перадаваць ключ amodb: api_key у запыце, загаловак Authorization Bearer або apikey для выклікаў OMDb. Фармат ключа, захоўванне, замена і памылкі 401.
- [Хуткі старт](https://amodb.dev/be/quickstart/): Першы выклік да amodb: атрымайце ключ, запытайце дэталі фільма ў curl, JavaScript, Python, PHP або Go і загрузіце постэр з img.amodb.dev. Менш за 2 хвіліны.

Абноўлена: 2026-10-18. Source: https://amodb.dev/be/errors/
