Webhooky
Webhooky umožňují zasílání informací o nějaké události, která v systému nastane. Např. vytvoření nebo editace objednávky. Systém při každé z těchto událostí pošle HTTP požadavek na URL adresu nastavenou ve webhooku.
URL adresa nastavená ve webhooku se volá jako POST požadavek, v těle požadavku je JSON, jehož obsahem je seznam identifikátorů entit ze systému (např. objednávek). Bližší popis je u každého typu webhooku. Součástí těla požadavku je také název e-shopu v Upgates.
Každý webhook vytvořený v systému je vázán na uživatele API, který ho vytvořil. Pokud tento uživatel nemá práva např. na endpoint objednávek, nepůjde mu vytvořit ani webhook na události spojené s objednávkami. Stejně to funguje i pro jiné typy webhooků. Pokud uživatel má webhook vytvořen a jsou mu změněna oprávnění, webhook se deaktivuje.
POST požadavek na URL adresu nastavenou ve webhooku bude očekávat odpověď 200 OK
nebo 204 No Content
. Timeout je nastavený na jednu vteřinu. Tzn. ve vyřízení požadavku na straně serveru volaného webhookem by se neměla data přímo zpracovávat, pouze si data uložit a vrátit příslušný stavový kód. V případě špatné odpovědi bude systém odesílat webhook každých 5 minut až do chvíle, než obdrží správnou odpověď. Pokud systém během 12 hodin ani jednou neobdrží správnou odpověď, webhook se deaktivuje.
Vytvoření a správa Webhooku v Upgates
Správa webhooků (vytvoření, editace, smazání) je možná pouze přes API. Více najdete v dokumentaci k Webhook API.