Webhooky
Webhooky umožňujú zasielanie informácií o nejakej udalosti, ktorá v systéme nastane. Napr. vytvorenie alebo editácia objednávky. Systém pri každej z týchto udalostí pošle HTTP požiadavku na URL adresu nastavenú vo webhooku.
URL adresa nastavená vo webhooku sa volá ako POST požiadavka, v tele požiadavky je JSON, ktorého obsahom je zoznam identifikátorov entít zo systému (napr. objednávok). Bližší popis je pri každom type webhooku. Súčasťou tela požiadavky je tiež názov e-shopu v Upgates.
Každý webhook vytvorený v systéme je viazaný na užívateľa API, ktorý ho vytvoril. Pokiaľ tento užívateľ nemá práva napr. na endpoint objednávok, nepôjde mu vytvoriť ani webhook na udalosti spojené s objednávkami. Rovnako to funguje aj pre iné typy webhookov. Pokiaľ užívateľ má webhook vytvorený a sú mu zmenené oprávnenia, webhook sa deaktivuje.
POST požiadavka na URL adresu nastavenú vo webhooku bude očakávať odpoveď 200 OK
alebo 204 No Content
. Timeout je nastavený na jednu sekundu. Tzn. vo vybavení požiadavky na strane servera volaného webhookom by sa nemali údaje priamo spracovávať. Len si údaje uložiť a vrátiť príslušný stavový kód. V prípade zlej odpovede bude systém odosielať webhook každých 5 minút až do chvíle, kým dostane správnu odpoveď. Pokiaľ systém počas 12 hodín ani raz nedostane správnu odpoveď, webhook sa deaktivuje.
Vytvorenie a správa Webhooku v Upgates
Správa webhookov (vytvorenie, editácia, zmazanie) je možná iba cez API. Viac nájdete v dokumentácii k Webhook API.