Do tej pory sprawdzenie, czy post wyszedł, wymagało zapytania. Wywoływałeś API, sprawdzałeś status i wywoływałeś ponownie później. To działa, ale to odpytywanie: albo pytasz zbyt często i marnujesz zapytania, albo zbyt rzadko i dowiadujesz się za późno. Webhooki odwracają tę logikę. Podajesz sona.to adres, a sona.to sam odzywa się do ciebie w chwili, gdy coś się dzieje. Są dostępne już teraz w każdym planie.
Do wyboru są cztery zdarzenia i obejmują sytuacje warte reakcji: post opublikowany, post nieudany, audyt strony zakończony i audyt strony nieudany. Sam wybierasz, które otrzymuje każdy webhook, więc powiadomienie na Slacku może nasłuchiwać tylko błędów, podczas gdy system raportowania odbiera wszystko. Ładunek używa tych samych nazw pól, które zwraca API REST, więc to, co już przetwarzasz z żądania GET, działa bez zmian.
Konfiguracja zajmuje minutę. Otwórz stronę API w swoim panelu, wklej adres, który dało ci twoje narzędzie, zaznacz wybrane zdarzenia i zapisz. Klucz podpisu pojawia się w tym momencie jeden raz. Skopiuj go od razu, bo nie zostanie pokazany ponownie.
To właśnie po tym kluczu poznasz, że żądanie jest prawdziwe. Każde dostarczenie niesie nagłówek podpisu ze znacznikiem czasu i wartością HMAC SHA-256 obliczoną z tego znacznika i treści żądania, przy użyciu twojego klucza. Oblicz ją ponownie po swojej stronie i porównaj obie wartości funkcją o stałym czasie działania. Ponieważ znacznik czasu należy do podpisywanych danych, przechwycone żądanie nie może zostać później odtworzone przeciwko tobie. Odrzucaj wszystko starsze niż kilka minut i to wystarczy.
Dostarczanie nie poddaje się przy pierwszym problemie. Jeśli twój punkt odbioru jest niedostępny albo zwraca błąd, żądanie jest ponawiane po 60 sekundach, potem po 5 minutach, potem po 30 minutach. Każda próba jest zapisywana z kodem statusu i czasem trwania, więc kapryśny punkt odbioru to coś, co możesz obejrzeć, zamiast zgadywać. Punkt odbioru, który stale zawodzi, zostaje wyłączony automatycznie, a ty możesz włączyć go z powrotem po naprawie.
Oczywistym miejscem, na które warto go skierować, jest platforma automatyzacji. Zapier, Make i n8n dają ci adres webhooka do wklejenia, a zdarzenie przychodzi w formacie JSON, gotowe do przekazania dalej: wiadomość na kanale, wiersz w arkuszu, zadanie w systemie zadań. Twój własny serwer działa dokładnie tak samo, bez platformy pośrodku.
Uwaga na temat tego, co sona.to akceptuje. Cel musi używać https i musi być adresem publicznym. Adres prowadzący do sieci prywatnej jest odrzucany, zarówno przy zapisie, jak i ponownie w chwili dostarczenia, a przekierowania nie są śledzone. Jeśli utrzymujesz odbiornik w sieci lokalnej, umieść go za publiczną nazwą hosta albo tunelem.
Webhooki dołączają do API REST i serwera MCP jako trzeci sposób sterowania sona.to spoza panelu. API służy do pytania, MCP do tego, by pytał cię asystent AI, a webhooki do tego, byś został poinformowany. Wszystkie szczegóły, wraz z przykładem weryfikacji podpisu, znajdziesz w dokumentacji API.