# Autentizace

> Každý požadavek na amodb nese jeden klíč: 32 malých hexadecimálních znaků. Pro volání ve stylu TMDB ho pošlete jako api_key v dotazu nebo v hlavičce Authorization: Bearer, pro volání ve stylu OMDb jako apikey. Obrázky klíč nepotřebují. Chybný klíč vrátí 401 se status_code 7, pozastavený klíč 401 se status_code 10.

## Formát klíče

Klíč má 32 malých hexadecimálních znaků, například `0123456789abcdef0123456789abcdef`. Má stejný tvar jako klíč TMDB v3, takže ho přijmou pole a validátory vytvořené pro klíče TMDB.

amodb ukládá jen hash SHA-256 každého klíče. Celý klíč se zobrazí jednou, při vytvoření. Pokud ho ztratíte, smažte ho a vytvořte nový.

## Volání ve stylu TMDB

Klíč pošlete jedním ze dvou způsobů. Oba fungují na každém endpointu pod `https://api.amodb.dev/3`.

| Způsob          | Příklad                          |
| --------------- | -------------------------------- |
| Parametr dotazu | `?api_key=YOUR_KEY`              |
| Hlavička        | `Authorization: Bearer YOUR_KEY` |

```bash
curl "https://api.amodb.dev/3/configuration" \
  -H "Authorization: Bearer $AMODB_KEY"
```

```js
const res = await fetch("https://api.amodb.dev/3/configuration", {
  headers: { Authorization: `Bearer ${process.env.AMODB_KEY}` },
});
```

```python
import os
import requests

res = requests.get(
    "https://api.amodb.dev/3/configuration",
    headers={"Authorization": f"Bearer {os.environ['AMODB_KEY']}"},
    timeout=10,
)
```

```php
<?php
$url = "https://api.amodb.dev/3/configuration?api_key=" . urlencode(getenv("AMODB_KEY"));
$config = json_decode(file_get_contents($url), true);
```

```go
req, _ := http.NewRequest("GET", "https://api.amodb.dev/3/configuration", nil)
req.Header.Set("Authorization", "Bearer "+os.Getenv("AMODB_KEY"))
res, err := http.DefaultClient.Do(req)
```

## Volání ve stylu OMDb

Endpoint kompatibilní s OMDb přijímá klíč jako `apikey`, stejně jako OMDb. Je to tentýž klíč, který používáte pro volání ve stylu TMDB.

```bash
curl "https://api.amodb.dev/omdb/?t=Inception&y=2010&apikey=$AMODB_KEY"
```

## Obrázky klíč nepotřebují

Adresy obrázků na `img.amodb.dev` jsou veřejné. Nepřidávejte do nich svůj klíč: značka `<img>` by ho odhalila každému návštěvníkovi.

## Klíče uchovávejte na serveru

Klíč v balíčku pro prohlížeč, v mobilní aplikaci nebo ve veřejném repozitáři je veřejný. Kdokoli, kdo ho zkopíruje, čerpá váš limit požadavků. Volejte amodb ze svého serveru, ze serverless funkce nebo z kroku sestavení a klientům předávejte jen data.

- Klíč uložte do proměnné prostředí nebo do úložiště tajemství.
- Používejte jeden klíč na aplikaci nebo prostředí a označte ho popiskem, například `production` nebo `staging`.
- Klíč, který unikl, smažte okamžitě. Volání s ním pak hned selžou.

## Chyby

| HTTP | status_code | Význam                                                                   |
| ---- | ----------- | ------------------------------------------------------------------------ |
| 401  | 7           | Klíč chybí, má chybný tvar nebo je neznámý.                              |
| 401  | 10          | Klíč je pozastaven. Napište na <support@amodb.dev>.                      |
| 402  | 36          | Platnost vašeho tarifu skončila. Zaplaťte nové období na stránce ceníku. |

Všechny kódy najdete na stránce [chyby](https://amodb.dev/cs/errors/).

## Otázky a odpovědi

### Je hlavička Bearer bezpečnější než api_key v dotazu?

Ano, trochu. Řetězce dotazu se do logů serveru a historie prohlížeče dostávají častěji než hlavičky. Obojí projde stejnou kontrolou, použijte proto hlavičku všude, kde to váš klient dovoluje.

### Kolik klíčů mohu vytvořit?

Až 10 aktivních klíčů na účet. Všechny sdílejí limit požadavků vašeho tarifu, druhý klíč tedy kapacitu nepřidá.

### Co se stane s mými klíči při změně tarifu?

Nemusíte nic dělat. Každý aktivní klíč převezme nový limit do minuty od platby.

## Související stránky

- [Rychlý start](https://amodb.dev/cs/quickstart/): První volání amodb: získejte klíč, vyžádejte detail filmu v curl, JavaScriptu, Pythonu, PHP nebo Go a načtěte plakát z img.amodb.dev. Za méně než 2 minuty.
- [Limity požadavků](https://amodb.dev/cs/rate-limits/): amodb omezuje klíč počtem požadavků za minutu v klouzavém okně 60 sekund: 20, 40 nebo 120 podle tarifu. Čtěte hlavičky limitu a řešte 429 pomocí Retry-After.
- [Chyby](https://amodb.dev/cs/errors/): Každá chyba amodb se stavem HTTP, status_code a zprávou TMDB a také tvar chyby OMDb. Co která znamená a co má váš klient udělat v dalším kroku.
- [Zásady přijatelného použití](https://amodb.dev/cs/acceptable-use/): Co smíte a nesmíte s amodb: stavět aplikace, weby, boty a výzkum nad daty, ale nikdy nesdílet klíče, dále prodávat surový přístup, obcházet limity ani útočit.

Aktualizováno: 2026-10-18. Source: https://amodb.dev/cs/authentication/
