Przejdź do treści

Webhook

WPROWADZENIE#

Webhooki w ExpertSender umożliwiają automatyczne powiadamianie systemów zewnętrznych o zdarzeniach zachodzących w Twojej aplikacji. Dzięki Webhookom, ExpertSender może wysyłać informacje o zdarzeniach do innych systemów w czasie rzeczywistym, co pozwala na szybką reakcję i integrację z różnymi narzędziami i usługami. Używając Webhooków, możesz zautomatyzować procesy, monitorować zdarzenia i synchronizować dane bez potrzeby ciągłego odpytywania API.

KREATOR ORAZ KONFIGURACJA WEBHOOKA#

Uruchomienie kreatora (Wizard):#
  1. Zaloguj się do panelu administracyjnego ExpertSender.
  2. Wejdź w zakładkę Automatyzacja.
  3. Przejdź do sekcji Webhooki.
  4. Kliknij przycisk „Utwórz nowy Webhook”, aby uruchomić kreatora.
Konfiguracja Webhooka:#
  1. Nazwa: Wprowadź unikalną nazwę dla swojego Webhooka, aby łatwo go rozpoznać.
  2. Zdarzenie: Wybierz typ zdarzenia, które ma uruchamiać Webhooka (np. „Email – otwarcie”, „Email – dostarczenie”).
  3. Docelowy URL: Wprowadź adres URL, na który mają być wysyłane powiadomienia. Upewnij się, że URL jest poprawny i dostępny publicznie oraz jest prawidłowym adresem HTTPS.
Przed aktywacją WebHooka:#
  1. Test połączenia: System sprawdzi, czy pola z adresem URL i typem zdarzenia zostały poprawnie wypełnione oraz czy wpisany adres URL jest prawidłowym adresem HTTPS.Próba przetestowania połączenia sprawdza:
    • Czy zostały wypełnione pola z adresem i typem zdarzenia.
    • Czy wpisany adres jest prawidłowym adresem HTTPS.
    • Wysyła fikcyjne dane pod wskazany adres.
    • Struktura danych jest zgodna z typem zdarzenia.
    • Błędy połączenia prezentowane są tak samo, jak w logach WebHook.
  2. Sprawdzenie unikalności: System sprawdzi, czy nie istnieje już inny aktywny WebHook dla wybranego typu zdarzenia.

Webhooki są aktywowane automatycznie po ich utworzeniu. Edycja Webhooka jest możliwa tylko dla nieaktywnych Webhooków, dlatego podczas edycji nie jest wymagane ponowne sprawdzanie tych warunków.

Testowanie i aktywacja:#

Po wprowadzeniu wszystkich danych i pomyślnym przejściu testu połączenia, WebHook zostanie automatycznie aktywowany.

TYPY ZDARZEŃ#

Posiadamy następujące typy zdarzeń:

Typ zdarzeniaOpisZwracane danePrzykładowy JSON
Email – wysyłkaWywoływane, gdy email zostaje wysłany.eventType: Typ zdarzenia (EmailSends) eventDate: Data i czas zdarzenia messageId: ID wiadomości subscriberId: ID subskrybenta subscriberEmail: Adres email subskrybenta{"eventType": "EmailSends", "eventDate": "2024-05-08T13:41:52.4514466Z", "messageId": 145413, "subscriberId": 6552353, "subscriberEmail": "test@test.com"}
Email – kliknięcieWywoływane, gdy subskrybent kliknie w link w emailu.eventType: Typ zdarzenia (EmailClicks) eventDate: Data i czas zdarzenia messageId: ID wiadomości subscriberId: ID subskrybenta subscriberEmail: Adres email subskrybenta{"eventType": "EmailClicks", "eventDate": "2024-05-10T09:30:00.8726192Z", "messageId": 148000, "subscriberId": 1, "subscriberEmail": "test@test.com"}
Email – otwarcieWywoływane, gdy subskrybent otworzy email.eventType: Typ zdarzenia (EmailOpens) eventDate: Data i czas zdarzenia messageId: ID wiadomości subscriberId: ID subskrybenta subscriberEmail: Adres email subskrybenta{"eventType": "EmailOpens", "eventDate": "2024-05-10T13:28:23.2093755Z", "messageId": 149211, "subscriberId": 5823952, "subscriberEmail": "test@test.com"}
Email – dostarczenieWywoływane, gdy email zostanie dostarczony do odbiorcy.eventType: Typ zdarzenia (EmailDeliveries) eventDate: Data i czas zdarzenia messageId: ID wiadomości subscriberId: ID subskrybenta subscriberEmail: Adres email subskrybenta{"eventType": "EmailDeliveries", "eventDate": "2024-05-09T10:29:36.8300628Z", "messageId": 145413, "subscriberId": 6552353, "subscriberEmail": "test@test.com"}
Email – zwrotkaWywoływane, gdy email nie może zostać dostarczony (błąd).eventType: Typ zdarzenia (EmailBounces) eventDate: Data i czas zdarzenia messageId: ID wiadomości subscriberId: ID subskrybenta subscriberEmail: Adres email subskrybenta{"eventType": "EmailBounces", "eventDate": "2024-05-09T09:33:29.6409191Z", "messageId": 138876, "subscriberId": 149448, "subscriberEmail": "test@test.com"}
Email – skargaWywoływane, gdy odbiorca zgłasza email jako spam.eventType: Typ zdarzenia (EmailComplaints) eventDate: Data i czas zdarzenia messageId: ID wiadomości subscriberId: ID subskrybenta subscriberEmail: Adres email subskrybenta{"eventType": "EmailComplaints", "eventDate": "2024-05-09T13:17:45.494757Z", "messageId": 149141, "subscriberId": 49858, "subscriberEmail": "test@test.com"}
SubskrypcjaWywoływane, gdy nowy subskrybent zapisuje się na listę mailingową.eventType: Typ zdarzenia (Subscriptions) eventDate: Data i czas zdarzenia listId: ID listy mailingowej subscriberId: ID subskrybenta subscriberEmail: Adres email subskrybenta{"eventType": "Subscriptions", "eventDate": "2024-05-10T11:52:50.4969976Z", "listId": 7477, "subscriberId": 6552356, "subscriberEmail": "test@test.com"}
Potwierdzenie subskrypcjiWywoływane, gdy subskrybent potwierdza zapisanie się na listę mailingową.eventType: Typ zdarzenia (Confirmations) eventDate: Data i czas zdarzenia messageId: ID wiadomości subscriberId: ID subskrybenta subscriberEmail: Adres email subskrybenta listId: ID listy mailingowej{"eventType": "Confirmations", "eventDate": "2024-05-13T11:21:12.1358311Z", "messageId": 149212, "subscriberId": 5823952, "subscriberEmail": "test@test.com", "listId": 7480}
WypisanieWywoływane, gdy subskrybent wypisuje się z listy mailingowej.eventType: Typ zdarzenia (Unsubscriptions) eventDate: Data i czas zdarzenia listId: ID listy mailingowej subscriberId: ID subskrybenta subscriberEmail: Adres email subskrybenta{"eventType": "Unsubscriptions", "eventDate": "2024-05-10T12:58:06.2247049Z", "listId": 7468, "subscriberId": 4723542, "subscriberEmail": "test@test.com"}

LOGI I PONOWIENIA#

Logi Webhooków#

W przypadku nieudanych wysyłek Webhooka, udostępniamy szczegółowe logi zawierające następujące informacje, które są dostępne w panelu ExpertSender w zakładce Audyt -> Webhook Logi:

ParametrOpis
Data wystąpieniaData i czas, kiedy nastąpiła próba wysyłki Webhooka.
Nazwa WebhookaUnikalna nazwa przypisana do Webhooka podczas konfiguracji.
ID WebHookaUnikalny identyfikator Webhooka.
StatusStatus odpowiedzi serwera, np. kod błędu HTTP.
Treść błęduSzczegółowe informacje o błędzie zwróconym przez serwer.
Ładunek WebhookaDane wysyłane w ramach Webhooka.

Logi te są dostępne w panelu ExpertSender, co umożliwia śledzenie nieudanych prób wysyłki i pomaga w diagnozowaniu oraz naprawianiu problemów z integracją Webhooków. Dzięki nim możliwe jest także monitorowanie skuteczności wysyłki i szybka reakcja na błędy.

BEZPIECZEŃSTWO#

Aby zapewnić bezpieczeństwo i autentyczność wywołań WebHooków, zaleca się:

  1. Użycie HTTPS do przesyłania danych.
  2. Walidacja żądań na poziomie serwera odbierającego dane.
  3. Użycie tokenów uwierzytelniających do weryfikacji źródła żądania.

Ta dokumentacja ma na celu ułatwienie integracji Webhooków z Twoją aplikacją oraz zapewnienie szybkiego i efektywnego zarządzania zdarzeniami w czasie rzeczywistym.