Jak wysłać zgodę do Klaviyo przez Zapier?
Czego się dowiesz
Dowiedz się, jak utworzyć niestandardowy Zapier webhook, aby wysłać zgodę na wysyłkę SMS do Klaviyo. Możesz łatwo zmodyfikować instrukcje zawarte w tym przewodniku, aby wysłać również zgodę na e-mail.
Poniższe kroki pomogą Ci utworzyć Zap przy użyciu webhook (zwanego również catch hook), który uruchamia akcję skryptu Python. Skrypt wysyła wywołanie API na adres Klaviyo, aby podskrybować adres e-mail i numery telefonów na liście.
Ta funkcja jest dostępna tylko dla użytkowników z planem Premium Zapier.
O integracjach
Ta integracja nie jest w pełni obsługiwana przez Klaviyo, ale w razie potrzeby może być używana jako obejście. Zalecamy korzystanie z tej integracji tylko wtedy, gdy masz w zespole programistów, którzy mogą ją obsługiwać.
Ten przewodnik wykorzystuje akcję kodu Zapier, która uruchamia skrypt Python po wykryciu wyzwalacza. Dzięki temu rozwiązaniu możesz mapować pola na typy danych, których Klaviyo wymaga punkt końcowy; w szczególności subskrybować profil i wycofać subskrypcję profilu punkt końcowy.
Skonfiguruj webhook ZapierSkonfiguruj webhook Zapier
- zaloguj się na swoje konto Zapier.
- Na stronie głównej Zapier wybierz +Create, a następnie wybierz Zap.
- Wprowadź nazwę nowego zapa (np. Klaviyo webhook).
- Wyszukaj webhook, a następnie wybierz webhook by Zapier z menu Trigger.
- W następnym menu wybierz Catch Hook z opcji Trigger Event.
- Kliknij Kontynuuj.
- Wybierz kartę Test.
- Skopiuj adres URL webhook, który Zapier udostępnia do wysyłania żądań.
- Przed rozpoczęciem testów musisz wysłać dane testowe na adres webhook. Aby uzyskać więcej informacji, zapoznaj się z naszym przewodnikiem na temat wysyłania danych testowych do Zapier. Upewnij się, że numery telefonów są poprawnie sformatowane podczas wysyłania danych testowych.
- Po wysłaniu danych testowych na adres webhook kliknij przycisk Test trigger (na karcie Test ).
- Jeśli żądanie się powiedzie, zobaczysz komunikat o powodzeniu, a dane testowe zostaną wypełnione poniżej komunikatu o powodzeniu, podobnie jak w poniższym przykładzie:
- Gdy wyzwalacz zacznie działać, kliknij przycisk Kontynuuj z wybranym rekordem.
Skonfiguruj akcję Zapier
- W menu Akcja wpisz Code by Zapier w polu wyszukiwania i wybierz opcję z listy.
- Kliknij Wybierz zdarzenie > Uruchom Python.
- Kliknij Kontynuuj.
Skonfiguruj mapowanie pól i utwórz logikę skryptu
- Skonfiguruj mapowanie pól, aby skorelować dane wejściowe w poniższej tabeli z prawidłowymi danymi testowymi, które zostały wcześniej wysłane.
Dane wejściowe Zmapowane dane testowe e-mail
1. e-mail: <Test email> numer_telefonu
1. Numer telefonu: <Test phone number> sms_consent
1. Sms_consent: true nazwa
1. Nazwa: <Test name>
- Dodaj do pola kodu skrypt podobny do poniższego:
importuj importuj żądania # konfigurowanie subskrybcji SMS lub wycofać subskrypcję zadzwoń if (input_data["sms_consent"] == "true" or input_data["sms_consent"] == "True" or input_data["sms_consent"] == "TRUE"): url = "https://a.klaviyo.com/api/profile-subscription-bulk-create-jobs/"
payload = { "dane": { " typ": "profil-subscription-bulk-create-job", " atrybuty": { " dane profilowe": [ { " typ": "profil", " atrybuty": { " e-mail": input_data["e-mail"], " phone_number": input_data["phone_number"], " subscriptions": { "marketing SMS-owy": { "consent": "SUBSCRIBED" } } } } } ] } }, " relacje": { "lista": { "dane": { "type": "list", "id": "LIST_ID" } } } } } elif (input_data["sms_consent"] == "false" or input_data["sms_consent"] == "False" or input_data["sms_consent"] == "FALSE"):
url = "https://a.klaviyo.com/api/profil-subscription-bulk-delete-jobs/" payload = { "dane": { " typ": "profil-subscription-bulk-delete-job", " atrybuty": { " dane profilowe": [ { " typ": "profil", " atrybuty": { "email": input_data["email"], "phone_number": input_data["phone_number"], } } ] } }, " relacje": { "lista": { "dane": { "type": "list", "id": "LIST_ID" } } } } }
headers = { "accept": "application/json", "revision": "2024-05-15", "content-type": "application/json", "Authorization": "Klaviyo-API-Key your-private-api-key" } response = requests.post(url, json=payload, headers=headers) # Zapier wymaga obiektu 'output' output = {"response text": response.text} - Zastąp
interfejs API your-private-klucz
swoim prywatnym kluczem Klaviyo API.
Traktuj prywatny klucz API jak hasła - przechowuj go w bezpiecznym miejscu i nigdy nie ujawniaj go publicznie.
- Zastąp
LIST_ID
(w obu lokalizacjach) identyfikatorem listy Klaviyo, do której chcesz wysłać dane Zapier. Możesz znaleźć swój identyfikator listy w Klaviyo, przechodząc do Audience > lista & segment > Ustawienia. Jeśli chcesz natychmiast subskrybować osoby bez potwierdzenia (co może być pomocne podczas testów), upewnij się, że twoja lista jest ustawiona na pojedynczą zgodę (znajduje się w zakładce Zgoda w ustawieniach listy). - Kliknij Continue (Kontynuuj), a następnie Test step (Krok testowy).
- Jeśli test się powiedzie, zobaczysz odpowiedź bez błędów, jak ta poniżej:
- Możesz również sprawdzić, czy test przebiegł pomyślnie na stronie Klaviyo, przechodząc do listy i upewniając się, że profil został dodany.
- Po pomyślnym zakończeniu testu kliknij przycisk Publish, aby opublikować zap. Jeśli test nie zakończy się pomyślnie, przejdź na stronę płatności przejść do kasy nasze wskazówki dotyczące rozwiązywania typowych problemów.
Wskazówki dotyczące rozwiązywania problemów
Poniżej przedstawiono typowe problemy, które możesz napotkać podczas konfigurowania Zapier webhook. Jeśli napotkasz jakiekolwiek inne problemy, możesz skontaktować się ze Społecznością Klaviyo w celu uzyskania dalszych wskazówek.
EOL podczas skanowania literału ciągu znakówEOL podczas skanowania literału ciągu znaków
Jeśli widzisz ten błąd, oznacza to, że brakuje cudzysłowu wokół jednej ze zmiennych. Sprawdź identyfikator listy i prywatny klucz API, aby upewnić się, że są one otoczone z obu stron cudzysłowami.
SyntaxError: nieprawidłowa składniaSyntaxError: nieprawidłowa składnia
Jeśli zobaczysz ten błąd, usuń komentarze w kodzie Pythona (każda linia zaczynająca się od #
).