Hoe je toestemming naar Klaviyo stuurt via Zapier
Wat je leert
Leer hoe je een aangepaste Zapier webhook maakt om toestemming voor sms te sturen naar Klaviyo. Je kunt de instructies in deze handleiding eenvoudig aanpassen om ook toestemming per e-mail te versturen.
De onderstaande stappen helpen je om een Zap te maken met een webhook (ook wel een catch hook genoemd) die een Python scriptactie activeert. Het script stuurt een API oproep naar Klaviyo om e-mail en telefoonnummers aan te melden bij een lijst.
Deze functie is alleen beschikbaar voor gebruikers met een Premium Zapier abonnement.
Over de integraties
Deze integratie wordt niet volledig ondersteund door Klaviyo, maar kan indien nodig als work around worden gebruikt. We raden aan om deze integratie alleen te gebruiken als je ontwikkelaars in je team hebt die support kunnen gebruiken.
Deze handleiding gebruikt een Zapier code actie die een Python script uitvoert wanneer de trigger wordt gedetecteerd. Met deze oplossing kun je velden toewijzen aan de gegevenstypen die Klaviyo eindpunt vereisen; specifiek het aanmelden profiel en afmelden profiel eindpunt.
Zapier webhook instellenZapier webhook instellen
- inloggen naar je Zapier account.
- Selecteer op de hoofdpagina van Zapier +Create en vervolgens Zap.
- Voer een naam in voor je nieuwe Zap (bijvoorbeeld Klaviyo webhook).
- Zoek naar webhook en selecteer dan webhook by Zapier in het Trigger-menu.
- Selecteer in het volgende menu Vanghaak uit de opties voor Triggergebeurtenissen.
- Klik op Doorgaan.
- Selecteer de tab Test.
- Kopieer de webhook URL die Zapier je geeft om je verzoeken naartoe te sturen.
- Voordat je gaat testen, moet je testgegevens sturen naar je webhook. Zie onze gids over Hoe testgegevens naar Zapier sturen voor meer informatie. Zorg ervoor dat je telefoonnummers correct opmaakt als je testgegevens verstuurt.
- Zodra je de testgegevens naar webhook hebt gestuurd, klik je op Test trigger (op het tabblad Test ).
- Als de aanvraag succesvol is, zie je een succesbericht en worden de testgegevens onder het succesbericht ingevuld, zoals in het onderstaande voorbeeld:
- Zodra je trigger werkt, klik je op Doorgaan met geselecteerde record.
Zapier actie instellen
- Voer in het menu Actie Code by Zapier in het zoekvak in en selecteer de optie in de lijst.
- Klik op Kies een gebeurtenis > Python uitvoeren.
- Klik op Doorgaan.
Veldmapping instellen en scriptlogica maken
- Stel field mapping in om de invoergegevens in de onderstaande tabel te correleren aan de juiste testgegevens die je eerder hebt verzonden.
Invoergegevens Test gegevens in kaart gebracht e-mail
1. Email: <Test email> telefoonnummer
1.: Phone Number<Test phone number> sms_toestemming
1. Sms_toestemming: waar naam
1. Naam: <Test name>
- Voeg een script als het onderstaande toe aan het codevak:
verzoeken importeren # sms aanmelden of afmelden oproepen als (input_data["sms_consent"] == "true" of input_data["sms_consent"] == "True" of input_data["sms_consent"] == "TRUE"): url = "https://a.klaviyo.com/api/profile-subscription-bulk-create-jobs/"
payload = { "gegevens": { " type": "profiel-subscription-bulk-create-job", " attributes": { " profielgegevens": [ { " type": "profiel", " attributen": { " e-mail": input_data["e-mail"], " telefoonnummer": input_data["telefoonnummer"], " abonnementen": { "sms-marketing": { "consent": "SUBSCRIBED" } } } } } ] } }, " relaties": { "lijst": { "gegevens": { "type": "list", "id": "LIST_ID" } } } } } elif (input_data["sms_consent"] == "false" of input_data["sms_consent"] == "False" of input_data["sms_consent"] == "FALSE"):
url = "https://a.klaviyo.com/api/profiel-subscription-bulk-delete-jobs/" payload = { "gegevens": { " type": "profiel-abonnement-bulk-delete-job", " attributen": { " profielgegevens": [ { " type": "profiel", " attributen": { "email": input_data["email"], "phone_number": input_data["phone_number"], } } ] } }, " relaties": { "lijst": { "gegevens": { "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" } reactie = requests.post(url, json=payload, headers=headers) # Zapier vereist een 'output' object output = {"response text": response.text} - Vervang
je-private-API-sleutel door
je Klaviyo private API-sleutel.
Behandel privé API-sleutel net als wachtwoorden - bewaar ze op een veilige plek en stel ze nooit bloot aan het publiek.
- Vervang de
LIST_ID
(op beide locaties) door de Klaviyo lijst-ID waar je je Zapier-gegevens naartoe wilt sturen. Je kunt je lijst-ID vinden op Klaviyo door te navigeren naar Audience > lijst & segment > Instellingen. Als je mensen direct wilt aanmelden zonder bevestiging (wat handig kan zijn bij het testen), zorg er dan voor dat je lijst is ingesteld op single opt-in (te vinden onder het tabblad Toestemming binnen de lijstinstellingen). - Klik op Doorgaan en vervolgens op Teststap.
- Als je test succesvol is, zie je een antwoord zonder fouten, zoals hieronder:
- Je kunt ook controleren of de test geslaagd is in Klaviyo door naar je lijst te navigeren en te controleren of het profiel is toegevoegd.
- Als je test geslaagd is, klik je op Publiceren om je zap te publiceren. Als je test niet succesvol is, afrekenen onze tips voor het oplossen van veelvoorkomende problemen.
Tips voor probleemoplossing
Hieronder staan veelvoorkomende problemen waar je tegenaan kunt lopen bij het instellen van de Zapier webhook. Als je nog andere problemen tegenkomt, kun je de Klaviyo community bereiken voor verdere begeleiding.
EOL tijdens scannen van letterlijke stringEOL tijdens scannen van letterlijke string
Als je deze fout ziet, dan mis je een aanhalingsteken rond een van je variabelen. Controleer de lijst-ID en de privé API-sleutel om er zeker van te zijn dat ze aan beide kanten omgeven zijn door aanhalingstekens.
SyntaxError: ongeldige syntaxisSyntaxError: ongeldige syntaxis
Als je deze fout ziet, verwijder dan het commentaar in de Python code (elke regel die begint met een #
).