Como enviar o consentimento para o Klaviyo via Zapier
O que você vai aprender
Saiba como criar um webhook personalizado do Zapier para enviar consentimento por SMS para o Klaviyo. O senhor pode modificar facilmente as instruções deste guia para enviar também o consentimento por e-mail.
As etapas abaixo o ajudarão a criar um Zap usando um webhook (também chamado de catch hook) que aciona uma ação de script Python. O script envia uma chamada de API para o Klaviyo para inscrever e-mails e números de telefone em uma lista.
Esse recurso está disponível apenas para usuários com planos Premium Zapier.
Sobre a integração
Essa integração não é totalmente compatível com o Klaviyo, mas pode ser usada como uma solução alternativa, se necessário. Recomendamos usar essa integração somente se o senhor tiver desenvolvedores em sua equipe que possam dar suporte a ela.
Este guia usa uma ação de código do Zapier que executa um script Python quando o acionador é detectado. Com essa solução, o senhor pode mapear campos para os tipos de dados exigidos pelos endpoints do Klaviyo; especificamente, os endpoints Subscribe Prof iles e Unsubscribe Profiles.
Configurar o webhook do Zapier
- Faça login em sua conta do Zapier.
- Na página principal do Zapier, selecione +Create e, em seguida, selecione Zap.
- Digite um nome para seu novo Zap (por exemplo, Klaviyo Webhook).
- Procure por Webhook e selecione Webhooks by Zapier no menu Trigger.
- No menu seguinte, selecione Catch Hook nas opções do Trigger Event.
- Clique em Continue.
- Selecione a guia Teste.
- Copie o URL do webhook que o Zapier fornece para que você envie suas solicitações.
- Antes de testar, o senhor precisará enviar dados de teste para o webhook. Consulte nosso guia sobre Como enviar dados de teste para o Zapier para obter mais informações. Certifique-se de formatar corretamente os números de telefone ao enviar dados de teste.
- Depois de enviar os dados de teste para o webhook, clique em Test trigger (na guia Test ).
- Se a solicitação for bem-sucedida, o senhor verá uma mensagem de sucesso e os dados do teste serão preenchidos abaixo da mensagem de sucesso, como no exemplo abaixo:
- Quando o acionador estiver funcionando, clique em Continue with selected record (Continuar com o registro selecionado).
Configurar a ação do Zapier
- No menu Action (Ação), digite Code by Zapier na caixa de pesquisa e selecione a opção na lista.
- Clique em Choose an event (Escolher um evento) > Run Python.
- Clique em Continue.
Configurar o mapeamento de campos e criar lógica de script
- Configure o mapeamento de campo para correlacionar os dados de entrada na tabela abaixo com os dados de teste corretos que o senhor enviou anteriormente.
Dados de entrada | Dados de teste mapeados |
| 1. E-mail: <Test email> |
| 1. Número de telefone: <Número de telefone de teste> <Test phone number> |
| 1. Sms_consent: true |
| 1. Nome: <Test name> |
- Adicione um script como o que está abaixo à caixa de código:
solicitações de importação
# Configuração da chamada de assinatura ou cancelamento de assinatura de sms
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 = { "data": {
"type": "profile-subscription-bulk-create-job",
"attributes": {
"profiles": { "data": [
{
"type": "profile",
"atributos": {
"email": input_data["email"],
"phone_number": input_data["phone_number"],
"subscriptions": {
"sms": { " marketing": { "consent": "SUBSCRIBED" } }
}
}
}
] }
},
"relacionamentos": { "list": { "data": {
"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/profile-subscription-bulk-delete-jobs/"
payload = { "data": {
"type": "profile-subscription-bulk-delete-job",
"attributes": {
"profiles": { "data": [
{
"type": "profile",
"atributos": {
"email": input_data["email"],
"phone_number": input_data["phone_number"],
}
}
] }
},
"relacionamentos": { "list": { "data": {
"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)
# O Zapier requer um objeto "output".
output = {"response text": response.text} - Substitua
your-private-api-key porsua chave de API privada do Klaviyo.
Trate as chaves de API privadas como senhas - mantenha-as em um local seguro e nunca as exponha ao público.
- Substitua o
LIST_ID(em ambos os locais) pelo ID da lista do Klaviyo para a qual deseja enviar os dados do Zapier. O senhor pode encontrar o ID da lista no Klaviyo navegando até Audience > Lists & segments > Settings. Se desejar inscrever imediatamente as pessoas sem uma confirmação (o que pode ser útil durante os testes), certifique-se de que sua lista esteja definida como single opt-in (encontrada na guia Consent (Consentimento ) nas configurações da lista). - Clique em Continue e, em seguida, clique em Test step (Etapa de teste).
- Se o teste for bem-sucedido, o senhor verá uma resposta sem erros, como a que está abaixo:
- O senhor também pode verificar se o teste foi bem-sucedido no Klaviyo navegando até sua lista e verificando se o perfil foi adicionado.
- Quando o teste for bem-sucedido, clique em Publish (Publicar ) para publicar o zap. Se o teste não for bem-sucedido, confira nossas dicas de solução de problemas para problemas comuns.
Dicas de solução de problemas
Os problemas comuns que o senhor pode encontrar ao configurar o webhook do Zapier são os seguintes. Se o senhor encontrar qualquer outro problema, pode entrar em contato com a Comunidade Klaviyo para obter mais orientações.
EOL durante a varredura de literal de string
Se esse erro ocorrer, é porque está faltando uma aspa em uma das variáveis. Verifique a ID da lista e a chave privada da API para ter certeza de que estão entre aspas em ambos os lados.
SyntaxError: sintaxe inválida
Se o senhor encontrar esse erro, remova os comentários no código Python (qualquer linha que comece com um #).
Recursos adicionais
- Como gerenciar as chaves de API da sua conta
Como acessar e gerenciar as chaves de API da sua conta Klaviyo.
- Como enviar dados de teste para o Zapier
Saiba como enviar dados de teste para o Zapier por meio de uma solicitação POST ao criar um webhook para enviar consentimento por e-mail e SMS para o Klaviyo.