Jak działa webhook?
Rejestrujesz URL – endpoint – w systemie, który przechowuje dane, i wskazujesz, które zdarzenia Cię interesują. Gdy jedno z nich zajdzie, ten system wysyła na Twój endpoint żądanie HTTP POST z ładunkiem opisującym, co się stało, zwykle w formacie JSON. Twój serwer odczytuje ładunek, wykonuje swoją pracę i zwraca status 2xx, żeby potwierdzić odbiór. Nie wywołało go żadne Twoje żądanie – źródło zadziałało z własnej inicjatywy. Większość dostawców podpisuje każde żądanie, żeby można było potwierdzić, że naprawdę pochodzi od nich.
Webhook vs odpytywanie API: jaka jest różnica?
Odpytywanie (polling) to model pobierania: Twój kod pyta API „czy jest coś nowego?” według stałego harmonogramu, niezależnie od tego, czy cokolwiek się zmieniło. Webhook to model wypychania: źródło wywołuje Cię tylko wtedy, gdy ma coś do przekazania. Odpytywanie marnuje większość żądań i dodaje opóźnienie między zdarzeniem a Twoją reakcją; webhooki dostarczają dane w ciągu kilku sekund, a poza tym milczą. Kosztem jest to, że Twój endpoint musi być publicznie dostępny i gotowy na nagłe skoki ruchu.
Jak platformy customer engagement używają webhooków?
- Wychodzące – węzeł webhook wewnątrz ścieżki wysyła POST do systemu zewnętrznego w trakcie przebiegu: powiadamia Slacka, gdy lead dokona konwersji, synchronizuje status z Twoim CRM-em, uruchamia krok realizacji zamówienia.
- Przychodzące – odbiornik przyjmuje zdarzenia z innych narzędzi: operator płatności zgłasza udane obciążenie, narzędzie do formularzy przekazuje nowego leada, więc profile i ścieżki reagują bez nocnego importu.
- Ta dwukierunkowa instalacja sprawia, że platforma customer engagement może stać w centrum Twojego stosu narzędzi. Wyspecjalizowane usługi dostarczania, takie jak Knock, zajmują się wyłącznie stroną wychodzącą.
Dlaczego to ważne dla małego zespołu
Dwuosobowy zespół nie może siedzieć i odpytywać o zmiany, a zadania cron sprawdzające co kilka minut dodają i opóźnienie, i koszt. Webhooki pozwalają jednemu narzędziu reagować na drugie w chwili, gdy coś się dzieje, bez nikogo, kto by tego pilnował. Dwie przestrogi: ponieważ każdy może wysłać POST na publiczny URL, weryfikuj podpis każdego żądania i traktuj treść jako niezaufaną; oraz loguj zdarzenia, które wysyłasz i odbierasz, żeby zgadzały się z Twoim planem śledzenia, zamiast stać się nieśledzonym kanałem bocznym.