Qué aprenderás

Aprende a crear un webhook personalizado de Zapier para enviar el consentimiento de SMS a Klaviyo. Puedes modificar fácilmente las instrucciones de esta guía para enviar también el consentimiento de email.

Los pasos que se indican a continuación te ayudarán a crear un Zap con un webhook (también llamado «catch hook») que activa una acción de script de Python. El script envía una llamada a la API a Klaviyo para suscribir direcciones de email y números de teléfono a una lista.

Esta función solo está disponible para los usuarios con planes prémium de Zapier.

Información sobre las integraciones

Esta integración no es totalmente compatible con Klaviyo, pero se puede usar como una solución alternativa si es necesario. Recomendamos usar esta integración solo si tienes desarrolladores en tu equipo que puedan ofrecer asistencia.

Esta guía utiliza una acción de código de Zapier que ejecuta un script de Python cuando se detecta el activador. Con esta solución, puedes asignar campos a los tipos de datos que requieren los puntos de conexión de Klaviyo; en concreto, los puntos de conexión Suscribirse a perfiles y Darse de baja de perfiles.

Configurar el webhook de Zapier

  1. Inicia sesión en tu cuenta de Zapier.
  2. En la página principal de Zapier, selecciona +Crear y, a continuación, selecciona Zap.
  3. Introduce un nombre para tu nuevo Zap (p. ej., webhook de Klaviyo).
  4. Busca webhook y, a continuación, selecciona Webhooks by Zapier en el menú Activador.
  1. En el siguiente menú, selecciona Catch Hook en las opciones de evento desencadenante.
  1. Haz clic en Continuar.
  2. Selecciona la pestaña Prueba.
  3. Copia la URL del webhook que Zapier te proporciona para enviar tus solicitudes.
  1. Antes de hacer pruebas, tendrás que enviar datos de prueba a tu webhook. Consulta nuestra guía sobre Cómo enviar datos de prueba a Zapier para obtener más información. Asegúrate de dar el formato correcto a los números de teléfono al enviar datos de prueba.
  2. Una vez que hayas enviado los datos de prueba al webhook, haz clic en Probar activador (en la pestaña Prueba).
  1. Si la solicitud se realiza correctamente, verás un mensaje de éxito y los datos de prueba se mostrarán debajo del mensaje de éxito, de forma similar al ejemplo siguiente:
  1. Cuando el activador funcione, haz clic en Continuar con el registro seleccionado.

Configura la acción de Zapier

  1. En el menú Acción, introduce Code by Zapier en el cuadro de búsqueda y selecciona la opción en la lista.
  1. Haz clic en Elegir un evento > Ejecutar Python.
  1. Haz clic en Continuar.

Configura la asignación de campos y crea la lógica del script

  1. Configura la asignación de campos para correlacionar los datos de entrada de la tabla de abajo con los datos de prueba correctos que enviaste anteriormente.

Datos de entrada

Datos de prueba mapeados

email

1. Email: <Test email>

phone_number

1. Número de teléfono: <Número de teléfono de prueba> <Test phone number>

sms_consent

1. Sms_consent: true

name

1. Nombre: <Test name>

  1. Añade un script como el de abajo en el cuadro de código:
text
import requests

# configuring sms subscribe or unsubscribe call
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",
                        "attributes": {
                            "email": input_data["email"],
                            "phone_number": input_data["phone_number"],
                            "subscriptions": {
                                "sms": { "marketing": { "consent": "SUBSCRIBED" } }
                            }
                        }
                    }
                ] }
        },
        "relationships": { "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",
                        "attributes": {
                            "email": input_data["email"],
                            "phone_number": input_data["phone_number"],
                        }
                    }
                ] }
        },
        "relationships": { "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)

# Zapier requires an 'output' object
output = {"response text": response.text}
  1. Sustituye your-private-api-keypor tu clave de API privada de Klaviyo.

Trata las claves de API privadas como si fueran contraseñas: guárdalas en un lugar seguro y nunca las expongas al público.

  1. Sustituye el LIST_ID (en ambas ubicaciones) por el ID de lista de Klaviyo al que quieras enviar tus datos de Zapier. Puedes encontrar el ID de tu lista en Klaviyo si vas a Audiencia > Listas y segmentos > Configuración. Si quieres suscribir a personas de inmediato sin una confirmación (lo que puede ser útil durante las pruebas), asegúrate de que tu lista esté configurada como suscripción en un solo paso (se encuentra en la pestaña Consentimiento dentro de la configuración de la lista).
  2. Haz clic en Continuar y, después, haz clic en Probar paso.
  3. Si la prueba se completa correctamente, verás una respuesta sin errores, como la que se muestra a continuación:
  1. También puedes comprobar que la prueba se ha realizado correctamente en Klaviyo; para ello, ve a tu lista y asegúrate de que se ha añadido el perfil.
  1. Cuando tu prueba se haya realizado correctamente, haz clic en Publicar para publicar tu zap. Si tu prueba no se realiza correctamente, consulta nuestros consejos para solucionar problemas sobre problemas habituales.

Consejos para solucionar problemas

A continuación se indican problemas habituales con los que puedes encontrarte al configurar el webhook de Zapier. Si encuentras cualquier otro problema, puedes ponerte en contacto con Klaviyo Community para obtener más orientación.

EOL mientras se analizaba el literal de cadena

Si ves este error, te falta una comilla alrededor de una de tus variables. Comprueba el ID de la lista y la clave de API privada para asegurarte de que estén rodeados por comillas en ambos lados.

SyntaxError: sintaxis no válida

Si ves este error, elimina los comentarios del código Python (cualquier línea que empiece por un #).

Recursos adicionales

¿Te ha resultado útil este artículo?
Utiliza este formulario solo para enviar comentarios sobre el artículo. Más información sobre cómo contactar con el servicio de asistencia.

Descubre más sobre Klaviyo

Klaviyo Community
Conecta con compañeros, socios y expertos de Klaviyo para encontrar ideas, compartir información y resolver todas tus dudas.
Socios
Contrata a un experto certificado por Klaviyo para ayudarte con una tarea específica o para la gestión continua de marketing.
Asistencia

Accede al servicio de asistencia a través de tu cuenta.

Asistencia por correo electrónico (prueba gratuita y cuentas de pago) Disponible 24/7

Asistencia por chat/virtual
La disponibilidad varía según la ubicación y el tipo de plan