API (Application programming interface)
API nebo application programming interface je v oblasti webových technologií označení mechanismu nebo také pravidel, která umožňují jedné aplikaci komunikovat s druhou (např. získávat data nebo jiné zdroje).
Za označením webová služba si představte třeba váš oblíbený e-shop. Pokud vložíte produkt do košíku, často interní API uloží data z prohlížeče do databáze. Po odeslání pak dojde ke kontaktování API platební brány a také dojde k odeslání e-mailu s potvrzením objednávky přes službu posílající e-mail (obě partnerská API). API jsou zkrátka všude.
A velmi podobně to funguje i v případě, kdy chcete propojit např. dva digitální nástroje.
Autor první aplikace, řekněme třeba nástroje na řízení práce jako je Asana, naprogramuje konkrétní vstupní body – říká se jim endpointy, které umožní ostatním získávat data nebo dělat v Asaně konkrétní úkoly, např:
- vytvořit nový projekt,
- získat seznam všech úkolů v projektu,
- získat informace o konkrétním úkolu,
- vytvořit úkol,
- přidat přílohu nebo komentář k úkolu.
Každá tato funkce je jeden endpoint. Liší se také podle toho, jaké akce (HTTP metody
) lze vykonávat:
- GET – slouží k získávání dat,
- POST – složí k vytváření dat,
- PATCH – složí k úpravě dat,
- DELETE – slouží k mazání dat.
Existují i další, ale tyto se využívají nejčastěji. Odpovídají také nejčastějším úkonům při práci s daty, tzv. CRUD. Mimochodem, např. v Make.com nebo n8n.io je často pro jeden endpoint vytvořený jeden modul).
Jak získání dat z API probíhá?
Celý proces probíhá podle standardu HTTP protokolu (stejně jako komunikace prohlížeče a serveru při zobrazování webových stránek na internetu).
Straně, která získává data, se říká klient
. Klient zavolá API:
- Na předem určenou adresu pošle požadavek (
Request
). Ten zjednodušeně obsahuje hlavičku (např. pro ověření, že mám k datům přístup), adresu endpointu, vybranou HTTP metodu (GET, POST, ...) a často také nějaká data v tzv. těle požadavku (v případě POST metody). - Server pošle zpět odpověd (
Response
), která opět obsahuje hlavičku, kód odpovědi (status code – informační, chybové apod.) a popis, případně tělo, které obsahuje požadovaná data.
Komunikace nejčastěji probíhá ve formátu JSON, ale setkáte se i s formátem XML.
API je předpokladem pro integraci nástrojů
Asi už tušíte, proč je API důležité – pokud chcete automatizovat firemní procesy nebo propojovat nástroje mezi sebou, jen těžko to můžete dělat bez API.
Každý nástroj – samozřejmě to musí dávat smysl – by měl nabízet API, skrze které k němu můžete přistupovat. Pro práci s API třetí strany také potřebujete dokumentaci. Ta obsahuje popis práce s API – základní parametry, přihlašování (autentifikace), limity, endpointy a jejich popis.
Troufnu si říct, že je to dnes standard, a pokud služba veřejné API nenabízí nebo má špatně zpracovanou dokumentaci, osobně s ní pracovat nechci.