Modul 13 · API a napojení na svět

Vlastní API

Když tvoje aplikace vystavuje rozhraní pro sebe nebo pro někoho jiného. Co musí splňovat, aby bylo bezpečné.

13 minlekce 75/107

Po lekci umíš

  • Víš, kdy vlastní API potřebuješ
  • Umíš zadat bezpečný koncový bod
  • Znáš tři kontroly, které musí být na serveru
Obsah lekce (5)

Až doteď jsi byl na straně, která se ptá. Teď se podíváme na druhou stranu: tvoje aplikace odpovídá.

Kdy vlastní API potřebuješ

  1. Prohlížeč mluví se serverem

    Skoro vždycky. Když formulář něco uloží, mluví s tvým API, i když si tak neříká.

  2. Cizí služba ti něco posílá

    Platební brána oznámí zaplacení, e-mailová služba doručení. Říká se tomu webhook.

  3. Někdo se napojuje na tebe

    Mobilní aplikace, partner, tvůj vlastní skript.

Anatomie koncového bodu

Koncový bod je jedna adresa, která něco umí.

MetodaAdresaCo dělá
GET/api/rezervaceVrátí seznam
GET/api/rezervace/12Vrátí jednu
POST/api/rezervaceVytvoří novou
PATCH/api/rezervace/12Změní existující
DELETE/api/rezervace/12Smaže

Tři kontroly, které musí být na serveru

Tohle je nejdůležitější část celé lekce.

  1. Je uživatel přihlášený?

    Autentizace. Kdo se ptá?

  2. Smí to udělat?

    Autorizace. Uživatel může být přihlášený a přesto nesmět mazat cizí rezervace.

  3. Dávají data smysl?

    Validace. Datum v minulosti, záporný počet, prázdné jméno, e-mail bez zavináče.

Prompt pro Claude Code

Vytvoř koncový bod

Zadání pro jakýkoliv nový endpoint.

Vytvoř koncový bod [METODA] /api/[CESTA], který [CO DĚLÁ].

Povinné:
1. Ověř, že je uživatel přihlášený. Když ne, vrať 401.
2. Ověř, že smí právě tuhle věc. Když ne, vrať 403.
3. Zkontroluj vstupní data – typy, povinnost, rozsahy.
 Při chybě vrať 400 a seznam problémů.
4. Chybové odpovědi ve srozumitelném tvaru, česky, bez technických detailů.
5. Nikdy nevracej víc dat, než je potřeba – žádná hesla, žádné cizí údaje.

Než to napíšeš, popiš mi:
- Jaký tvar má vstup a jaký výstup.
- Které kontroly kde probíhají.
- Co se vrátí v každé chybové situaci.

Chybové kódy

Používej ty správné. Ušetří to hodně zmatku při hledání chyb.

KódKdy
200Vše v pořádku
201Vytvořeno
400Špatná data od klienta
401Nepřihlášen
403Přihlášen, ale nesmí
404Neexistuje
429Příliš mnoho požadavků
500Chyba na tvé straně

Webhooky

Když ti cizí služba něco oznamuje, platí navíc dvě věci:

  1. Ověř, že to opravdu poslali oni

    Služby posílají podpis, kterým se dá zpráva ověřit. Bez toho ti může kdokoliv napsat „zaplaceno“.

  2. Počítej s tím, že přijde vícekrát

    Stejné oznámení může dorazit dvakrát. Aplikace se musí zachovat stejně jako při jednom – jedna platba, jeden e-mail.

Cvičení30 minut

Ve své aplikaci vyber jeden koncový bod, který už máš, a projdi ho třemi kontrolami.

Skoro určitě zjistíš, že jedna z nich chybí – nejčastěji druhá, tedy kontrola, jestli uživatel smí sáhnout právě na tenhle záznam.

Co si odnést

  • Koncový bod: metoda je sloveso, adresa podstatné jméno.
  • Tři kontroly na serveru: přihlášen, smí to, dávají data smysl.
  • Prohlížeči nikdy nevěř – kontroly v něm jsou pohodlí, ne bezpečnost.
  • Vracej jen data, která obrazovka potřebuje.
  • Webhooky ověřuj podpisem a počítej s tím, že dorazí vícekrát.

Máš to za sebou?

Označ lekci jako hotovou, ať víš, kde jsi skončil. Nic se tím neuzamkne.

Obsah aktualizován: 21. srpna 2026