This post is also available in:
Korzystaj z ogromnych możliwości analitycznych Samby, aby segmentować klientów i wykorzystywać webhooki do łączenia jej z interfejsem API dowolnej aplikacji. W oparciu o logikę ustaloną w kampanii Flow, Samba wysyła żądanie HTTP, które może zawierać dowolne dane Twoich klientów. W ten sposób możesz łatwo np. przesyłać dane ważnych klientów, którzy nie odpowiedzieli jeszcze na retencyjną kampanię e-mailową do swojego contact center i uruchomić dla nich kampanię telefoniczną.
Webhook działa tak, jak inne kanały w kampanii Flow, czyli przetwarza wszystkich klientów, którzy dotrą do niego z innych połączonych z nim węzłów. W ustawieniach webhooka możesz wtedy wybrać nie tylko adres API, ale także szczegółowo zdefiniować format żądania oraz sposób, w jaki dane mają być przesyłane przez API.
Zobacz szczegółowe informacje na temat sposobu, w jaki pobieramy opłaty za tę funkcję, w naszym artykule Plany płatności.
Ustawienia webhooków
W kampanii Flow wybierz węzeł Webhook z menu po prawej stronie.
Podstawowe ustawienia
W ustawieniach webhooka możesz nadać mu nazwę, aby ułatwić zarządzanie kampanią, lub po prostu wyłączyć jego aktywację za pomocą przełącznika.
Endpoint
Wybierz metodę żądania HTTP, możesz wybrać pomiędzy GET, POST, PUT, PATCH lub DELETE.
W polu adresu URL żądania, wprowadź prawidłowy adres połączenia API, w tym protokół (HTTP/HTTPS).
Uwierzytelnienie
Aby zabezpieczyć komunikację, możesz użyć jednej z oferowanych opcji – Brak uwierzytelniania, Uwierzytelnianie podstawowe (nazwa + hasło) lub Token na okaziciela.
Możesz również wprowadzić dodatkowe informacje w nagłówkach w formie Nazwa + Wartość.
Pre-request
Pre-request reprezentuje fazę, podczas której pewne operacje są wykonywane przed głównym żądaniem w samym węźle webhook.
Podczas wstępnego żądania można wysłać oddzielne żądanie do innego serwera lub usługi, a jego odpowiedź może być następnie wykorzystana do późniejszego uwierzytelnienia i konfiguracji niestandardowych nagłówków dla głównego żądania, na przykład podczas korzystania z uwierzytelniania Bearer Token.
Kopiowanie odpowiedzi pre-request
Odpowiedź Pre-Request można skopiować jako znacznik scalający za pomocą przycisku „Copy Pre-Request Response to Clipboard” i wkleić do niestandardowych nagłówków w następującym formacie:{{ dynamic.[0] }}
Procedura ta pozwala wyodrębnić określone informacje z odpowiedzi i wykorzystać je dynamicznie w przygotowanych nagłówkach dla następnego żądania.
Na przykład, jeśli odpowiedź zawiera token i datę wygaśnięcia w tym formacie
{"token": "this is the current token value, "expiration": "2024-01-10T19:21:46.385Z" }
możemy więc użyć notacji kropkowej{{ dynamic.[0].token}}
pobiera bieżącą wartość tokena i wstawia ją do niestandardowych ustawień nagłówka dla żądania głównego.
Więcej informacji na temat notacji kropek można znaleźć w naszej dokumentacji.
Ustawienia pre-request
Ustawienia pre-request nie różnią się od ustawień głównego żądania, tj. wybierasz metodę żądania i wstawiasz prawidłowy adres połączenia API, w tym protokół (http/https).
Następnie należy wybrać odpowiednie uwierzytelnianie i wypełnić zawartość danych, którą omówimy bardziej szczegółowo w dalszej części tego artykułu.
Buforowanie odpowiedzi
Buforowanie odpowiedzi zapewnia możliwość wpływania na częstotliwość wykonywania wstępnego zapytania. Określa to, jak często to wstępne zapytanie powinno być wykonywane. W tym okresie ostatnia zapisana odpowiedź jest używana dla głównego żądania.
Zalecamy korzystanie z buforowania odpowiedzi. Wyłączenie go może mieć znaczący wpływ na wydajność zarówno po stronie API połączonej usługi, jak i po stronie Samby.
Ładunek
Tutaj określasz format, w jakim zapytanie ma zostać wysłane, a także konstruujesz treść zapytania z danymi klienta.
Format żądania
Do wyboru są następujące podstawowe typy MIME: JSON, JSON stream, CSV i XML.
Jeśli chcesz wybrać inny typ, którego nie ma w podstawowym wyborze, wybierz Niestandardowy i wprowadź żądany typ w polu wprowadzania, np.
-
text/plain
-
multipart/form-data
-
application/x-www-form-urlencoded
Wysyłanie partiami
Wysyłanie partiami umożliwia wydajną komunikację z interfejsem API, dzięki czemu każdy indywidualny klient nie musi być wysyłany w oddzielnym żądaniu. Zamiast tego, przy wysyłaniu partiami, Samba wysyła wielu klientów jednocześnie w jednym żądaniu, minimalizując liczbę połączeń z osobami trzecimi. W jednej partii można wysłać maksymalnie 1000 klientów.
Aby utworzyć poprawny format wynikowy, może być konieczne oddzielenie każdego klienta przecinkiem, nową linią lub innym symbolem. Zobacz przykład użycia funkcji unless.
Żądana treść
Język szablonów Handlebars.js jest używany do tworzenia treści żądania
Podstawowa forma żądania musi zawsze zawierać iterację przez klientów w następującej formie:
{{# each customers }}
...
{{/ each }}
Atrybuty klienta
Następujące atrybuty klienta można wstawić do żądania w formie merge tagów, podobnie jak w szablonie wiadomości e-mail (należy jednak pamiętać, że notacja może różnić się od merge tagów). Po prostu skopiuj merge tag do schowka za pomocą polecenia Kopiuj do schowka, a następnie użyj klawiszy Ctrl+V, aby wkleić go we właściwym miejscu w treści żądania.
- Podstawowe
- ID klienta:
{{ id }}
- Adres mailowy:
{{ email }}
- Numer telefonu:
{{ phone }}
- Imię:
{{ firstName }}
- Nazwisko:
{{ lastName }}
- Data rejestracji:
{{ registeredOn }}
- Kod pocztowy:
{{ zipCode }}
- ID klienta:
- Parametry niestandardowe
- Tutaj znajdziesz wszystkie parametry niestandardowe, które są wymienione w pliku feeda klientów.
- Merge tag:
{{ lookup parameters "PARAMETER NAME" }}
Prosta konstrukcja treści żądania zawierającej identyfikator klienta, adres e-mail i parametr niestandardowy „Punkty bonusowe” wyglądałaby tak:
{{# each customers }}
{
"customer_id": "{{ id }}",
"email_address": "{{ email }}",
"bonus_points": "{{ lookup parameters "Bonus points" }}"
}
{{/ each }}
Funkcje Handlebars.js
Dostępne są podstawowe funkcje języka szablonów Handlebars.js oraz wybrane funkcje pomocnicze (tzw. helpery), które mogą służyć do transformacji atrybutów klienta oraz samego żądania. Dokumentację tych funkcji można znaleźć w tym artykule.
W interfejsie znajduje się również interaktywny podpowiadacz dostępnych funkcji i atrybutów.
Walidacja i testowanie
Możesz użyć Walidacji Ładunku, aby sprawdzić czy wszystko jest poprawne pod względem składni przed próbą wywołania API.
Użyj przycisku Wyślij żądanie testowe, aby wysłać żądanie testowe z bieżącym formatem punktu końcowego i zawartości danych. Jeśli przesłanie zakończy się pomyślnie, zobaczysz również wyjście z konkretną odpowiedzią na przesłane żądanie.
Ocena webhooków
Szczegółowe wyniki z całkowitą liczbą wywołań API oraz liczbą pomyślnych i nieudanych eksportów klientów, znajdziesz w szczegółach węzła Webhook w trybie Wyniki kampanii Flow.
Dostępne są następujące statystyki:
- Całkowita liczba wywołań = liczba wysłanych żądań do API.
- Liczba udanych połączeń
- Liczba nieudanych połączeń
- Żądania nieudane z powodu nieprawidłowego żądania, przekroczenia limitów strony trzeciej lub innych błędów.
- Całkowita liczba klientów = liczba klientów w wysłanych żądaniach API.
- Liczba udanych klientów
- Liczba nieudanych klientów
Na przykład 2 wysłane paczki z 1000 klientami oznaczają łącznie 2 połączenia i 2000 klientów.
Podsumowanie wyników można również znaleźć na pulpicie nawigacyjnym dla kampanii Flow.