API je zkratka anglického Application Programming Interface, tedy aplikační programové rozhraní. Jde o domluvený způsob, jak si dva programy předávají data a služby, aniž by jeden musel znát vnitřní fungování druhého [1]. Nejrozšířenějším stylem dnešních webových API je REST, který ve své disertaci popsal Roy Fielding v roce 2000 [2]. API funguje na principu požadavku a odpovědi. Jeden program o něco požádá a druhý vrátí data nebo potvrdí akci. Díky API lze ERP Helios od společnosti Asseco Solutions propojit s e-shopem, výrobou i dalšími systémy, takže si automaticky předávají data místo ručního přepisování. API je tak základní stavební kámen integrace systémů v moderní firmě.
Zajímavost ze světa
Architektonický styl REST, na kterém stojí většina dnešních webových API, popsal Roy Fielding v roce 2000 ve své disertaci na Kalifornské univerzitě v Irvine. REST se proto stal jedním z nejcitovanějších základů moderního webu.[2]
Co v článku najdete
- Co je API a k čemu slouží
- Jak API funguje, požadavek a odpověď
- Co je REST a proč je tak rozšířený
- Jak se API zabezpečuje
- Jak se API využívá u ERP Helios
- Jaký je rozdíl mezi API a běžnou výměnou souborů
- Co potřebujete vědět před napojením přes API
- Jak souvisí API s propojením AI a podnikových systémů
Co je API a k čemu slouží
API je rozhraní, přes které spolu dva programy komunikují. Funguje jako domluvená sada pravidel, co lze požádat a jak přijde odpověď. Jeden program tak může využít data nebo službu druhého, aniž by znal jeho vnitřní fungování [1].
Dobrým přirovnáním je číšník v restauraci. Host nemusí do kuchyně, stačí objednávka u číšníka, který ji předá a přinese hotové jídlo. API je v tomto obrazu číšník mezi dvěma programy, který přenáší požadavky a vrací výsledky.
Bez API by si programy musely předávat data ručně přes soubory nebo přepisováním. S API si je předají samy a online, což je základ propojení moderních systémů [1].
Jak API funguje, požadavek a odpověď
API stojí na jednoduchém principu. Klient pošle požadavek a server vrátí odpověď. Požadavek obsahuje, co klient chce, odpověď nese data nebo potvrzení, že akce proběhla [2].
| Část komunikace | Co obsahuje |
|---|---|
| Požadavek | Adresu zdroje, typ operace a případná data |
| Operace | Typicky čtení, vytvoření, úprava nebo smazání |
| Odpověď | Požadovaná data nebo stav výsledku |
| Stavový kód | Informaci, zda požadavek uspěl nebo selhal |
Zdroj: Fielding, R. T. (2000). Architectural Styles and the Design of Network-based Software Architectures.
Data se nejčastěji předávají ve strojově čitelném formátu, který umí přečíst obě strany. Tak si například e-shop a ERP předají údaje o objednávce bez lidského zásahu.
Co je REST a proč je tak rozšířený
REST je architektonický styl pro tvorbu webových API, který v roce 2000 popsal Roy Fielding [2]. Nejde o konkrétní technologii, ale o sadu zásad, jak má rozhraní vypadat, aby bylo jednoduché, škálovatelné a srozumitelné.
| Zásada REST | Co znamená v praxi |
|---|---|
| Zdroje s adresou | Každý objekt má vlastní adresu URL |
| Bezstavovost | Každý požadavek nese vše potřebné |
| Standardní operace | Využití běžných metod protokolu webu |
| Jednotné rozhraní | Předvídatelný a konzistentní způsob volání |
Zdroj: Fielding, R. T. (2000). Architectural Styles and the Design of Network-based Software Architectures. UC Irvine.
Díky těmto zásadám je REST snadno pochopitelný a využitelný napříč technologiemi. Proto se stal nejrozšířenějším stylem webových API a používá ho i většina moderních podnikových systémů [2].
Jak se API zabezpečuje
Protože API otevírá data systému navenek, musí být zabezpečené. Jinak by se stalo vstupní branou pro zneužití. Zabezpečení řeší, kdo smí rozhraní volat a co s ním smí dělat [3].
| Prvek zabezpečení | Co zajišťuje |
|---|---|
| Autentizace | Ověření, kdo požadavek posílá |
| Autorizace | Určení, co smí daný volající dělat |
| Šifrování přenosu | Ochranu dat během přenosu |
| Omezení počtu volání | Ochranu před přetížením rozhraní |
Zdroj: ISO/IEC 25010:2011. Systems and software engineering. Quality models (SQuaRE).
Bezpečnost patří mezi měřitelné vlastnosti kvality softwaru podle normy pro hodnocení softwarových produktů [3]. U API je proto stejně důležitá jako samotná funkčnost.
Jak se API využívá u ERP Helios
ERP Helios nabízí rozhraní, přes které se propojuje s dalšími systémy ve firmě. Přes API si Helios vyměňuje data s e-shopem, výrobou nebo specializovanými nástroji, takže informace tečou automaticky [1].
Typickým příkladem je e-shop napojený na Helios. Když přijde objednávka, API ji přenese do ERP, kde se rezervuje zboží a vystaví doklad. Stav skladu a ceny se naopak z Heliosu vrací do e-shopu, takže obě strany pracují nad stejnými daty [1]. API tak tvoří základ integrace systémů kolem Heliosu.
Jaký je rozdíl mezi API a běžnou výměnou souborů
Dlouho se data mezi systémy přenášela přes soubory, které někdo vyexportoval a do druhého systému naimportoval. Tento postup funguje, ale je pomalý a náchylný k chybám [1].
| Hledisko | Výměna souborů | API |
|---|---|---|
| Rychlost | Nárazově, často ručně | Online v reálném čase |
| Chybovost | Vyšší kvůli ručním krokům | Nižší, přenos je automatický |
| Aktuálnost dat | Platí k okamžiku exportu | Vždy aktuální |
| Náročnost provozu | Opakovaná ruční práce | Bez zásahu po nastavení |
Zdroj: Monk, E., Wagner, B. (2013). Concepts in Enterprise Resource Planning. Cengage.
API proto postupně nahrazuje ruční výměnu souborů všude, kde je potřeba mít data aktuální a propojení spolehlivé.
Co potřebujete vědět před napojením přes API
- Jaká data se mají přenášet a kterým směrem
- Jak často mají přenosy probíhat
- Jak bude rozhraní zabezpečené a kdo ho smí volat
- Co se stane při výpadku spojení nebo chybě
- Kdo bude propojení spravovat a aktualizovat
Napojení přes API je technický úkol, ale začíná u procesů. Nejdřív je třeba vědět, jaká data a proč si systémy mají předávat, teprve pak se řeší samotné rozhraní [1].
Jak souvisí API s propojením AI a podnikových systémů
API je dnes základní cesta, jak propojit systémy. S nástupem umělé inteligence ale roste potřeba propojit s firemními daty i jazykové modely. Pro tento účel vznikl otevřený standard Model Context Protocol [4].
MCP staví na podobné myšlence jako klasické API, tedy domluvený způsob předávání dat. Liší se tím, že je navržený přímo pro propojení modelů umělé inteligence s nástroji a daty [4]. Více v hesle MCP Model Context Protocol.
Jak napojit Helios přes API
Propojení přes API má smysl jen tehdy, když odpovídá skutečným procesům firmy. Společnost NVSP napojuje ERP Helios na e-shop, výrobu i další systémy a pomáhá nastavit přenosy dat tak, aby běžely spolehlivě a bezpečně. Prohlédněte si nabídku produktů NVSP a proberte, jak vaše systémy propojit přes API.
Shrnutí
API je aplikační rozhraní, přes které spolu programy komunikují. Funguje na principu požadavku a odpovědi a nejrozšířenějším stylem webových API je REST, který popsal Roy Fielding v roce 2000. API se zabezpečuje autentizací, autorizací a šifrováním přenosu. U ERP Helios slouží k propojení s e-shopem, výrobou i dalšími systémy, takže si data předávají automaticky. API je základ integrace systémů a navazuje na něj i nový standard MCP pro propojení umělé inteligence.
Časté otázky
Co znamená zkratka API
API je Application Programming Interface, tedy aplikační programové rozhraní. Označuje domluvený způsob, jak si dva programy předávají data a služby [1].
Co je REST API
REST je nejrozšířenější styl webových API, který popsal Roy Fielding v roce 2000. Stojí na zdrojích s adresou, bezstavovosti a jednotném rozhraní [2].
K čemu je API u ERP Helios
Slouží k propojení Heliosu s e-shopem, výrobou a dalšími systémy. Přes API si systémy automaticky předávají data místo ručního přepisování [1].
Použité zdroje a literatura
Knihy a vědecké práce
[1] Monk, E., Wagner, B. (2013). Concepts in Enterprise Resource Planning. 4. vydání. Cengage. ISBN 978-1111820398.
[2] Fielding, R. T. (2000). Architectural Styles and the Design of Network-based Software Architectures. Disertace, UC Irvine.
Standardy a normy
[3] ISO/IEC 25010:2011. Systems and software engineering. Quality models (SQuaRE).
Instituce a reporty
[4] Anthropic (2024). Model Context Protocol. modelcontextprotocol.io.