API (application programming interface) to opublikowany zestaw reguł, według których program może pobrać dane z innego systemu albo zlecić mu wykonanie operacji – bez bezpośredniego dostępu do jego bazy danych i bez ręcznego eksportu plików. API określa dostępne operacje, format danych, sposób uwierzytelniania i limity wywołań. W operacjach to podstawowy sposób łączenia ERP, WMS, sklepu internetowego, platform sprzedażowych i przewoźników.
Jak to działa
Najczęściej spotykany styl to REST: system udostępnia zasoby (zamówienia, produkty, przesyłki) pod adresami URL, a program kliencki wykonuje na nich operacje metodami HTTP – GET (odczyt), POST (utworzenie), PUT lub PATCH (zmiana), DELETE (usunięcie). Dane przesyła się zwykle w formacie JSON, a dostęp zabezpiecza klucz API lub protokół OAuth 2.0.
Są dwa podstawowe wzorce wymiany danych:
- odpytywanie (polling) – system co kilka minut sprawdza, czy pojawiły się nowe dane; rozwiązanie proste, ale wprowadza opóźnienie i zbędny ruch,
- webhook – system źródłowy sam wysyła powiadomienie pod wskazany adres, gdy zajdzie zdarzenie, np. utworzenie zamówienia lub zmiana statusu przesyłki.
Przy większej liczbie systemów integracje przechodzą przez warstwę pośrednią – platformę integracyjną lub kolejkę komunikatów – która rejestruje komunikaty i ponawia nieudane wywołania. Szerzej o przenoszeniu danych między systemami w haśle ETL i integracja danych. Przez API z systemów firmy korzystają także agenci AI.
Przykład
Sklep internetowy realizujący 1 200 zamówień dziennie przekazywał je do magazynu plikiem CSV dwa razy dziennie, a numery przesyłek wracały do sklepu przepisywane ręcznie. Po integracji przez API każde opłacone zamówienie trafia do WMS webhookiem w ciągu kilku sekund. WMS po spakowaniu wywołuje API przewoźnika i otrzymuje etykietę, a numer przesyłki wraca automatycznie do sklepu i do klienta. Zamówienia złożone do 14:00 wyjeżdżają tego samego dnia, a ręczne przepisywanie numerów zniknęło.
Najczęstsze błędy
- Brak obsługi błędów i monitoringu – nieudane wywołanie nie jest ponawiane ani zgłaszane, a zamówienie „ginie” między systemami.
- Brak idempotencji, czyli odporności na powtórzenia: ponowne wysłanie tego samego komunikatu tworzy duplikat zamówienia lub drugą etykietę.
- Integracja oparta na nieudokumentowanych funkcjach lub odczycie ekranu zamiast oficjalnego API, która przestaje działać po aktualizacji systemu.