Usar los webhooks

Los webhooks son un mecanismos para permitir que Acumbamail se comunique con una plataforma online de tu propiedad. Básicamente, lo que tienes que hacer es proporcionar una URL que sea capaz de leer los datos que Acumbamail le va a enviar cuando se produzcan determinados eventos. Puedes elegir qué eventos quieres recibir para así provocar menos carga a tu servidor. 

Puedes hacer uso de los webhooks con cualquiera de nuestros planes de pago.

Para qué sirven los webhooks

Los webhooks tienen muchas utilidades, la principal es mantener la sincronización entre tu base de datos y Acumbamail. También se pueden utilizar para tener más información sobre el engagement de tus emails en tu CRM, guardando información de qué clientes abren tus emails. Básicamente son lo contrario a una API, en una API puedes realizar llamadas para hacer que se produzcan determinadas acciones. En un webhook recibirás llamadas cuando se produzcan determinadas acciones. Únicamente tienes que crear una URL en tu sistema web que te permita recibir los eventos que Acumbamail va a enviar. 

Hay dos tipos de webhooks, los que sirven para email transaccional y los que se utilizan para el envío de campañas. En el caso de las campañas, el webhook se configurará para cada una de las listas, ya que pueden proceder de distintas bases de datos, permitiendo así configurar varios webhooks para una campaña, uno para cada una de las listas a las que se envíe dicha campaña. Los webhooks que se disparan en el caso del email transaccional se configurarán para toda la cuenta completa. A continuación tienes un listado de los eventos que podrás recibir en tus webhooks, no es obligatorio que elijas todos, podrás recibir únicamente los que te resulten de interés. También se indica en la tabla qué webhooks funcionan únicamente en el servicio de campañas y cuáles en el de email transaccional. 

Evento Se dispara cuando Campañas Email transaccional
Alta Un suscriptor se da de alta en una lista. No
Baja Un suscriptor se da de baja en una lista No
Hard bounce Se envía un email a una dirección que no existe
Queja Un receptor marca un email como correo no deseado
Apertura Un receptor abre un email
Click Un receptor hace click en un email

Configurar webhooks para listas

Para configurar un webhook en una lista debes ir al menú de listas dentro de Boletines y elegir una de tus listas. Una vez dentro de la propia lista, debes ir a la pestaña de Avanzado

pestaña de avanzado en lista de suscriptores pestaña de avanzado en lista de suscriptores

La opción de webhooks estará por defecto desactivada, haz clic en Configurar para empezar el proceso. Una vez hecho esto, aparecerá ante ti la página que te permitirá configurar los eventos que se enviarán a tu URL de procesamiento de webhooks. La página es esta:

configuración de webhooks acumbamail

configuración de webhooks acumbamail

En ella debes introducir la URL de tu sistema que procesará los webhooks, será la misma para todos los eventos y tendrás que seleccionar los eventos que quieres recibir. Una vez hecho esto, puedes activar o desactivar el webhook cuando lo desees utilizando el botón a continuación. Ten en cuenta que este webhook solamente funcionará para los suscriptores que pertenezcan a la lista, por lo que debes configurarlo en cada una de las listas que quieras sincronizar.

Configurar webhooks para email transaccional

Para configurar los webhooks para el email transaccional, dirígete al apartado de  SMTP del menú de la parte izquierda y, una vez desplegado SMTP, debes seleccionar la opción Webhook:

menú de webhooks desde email transaccional

menú de webhooks desde email transaccional

Una vez hecho esto verás una página muy similar a la de listas, que te permitirá introducir la URL de tu sistema que procesará el webhook y, a continuación, seleccionar los eventos que se enviarán a dicha URL y activar el webhook:

webhook para smtp

webhook para smtp

Ten en cuenta que en el servicio de email transaccional los eventos que recibirán son menos, ya que el evento de Alta y Baja de suscriptor no tiene sentido en este servicio, al no haber suscriptores.

Cómo procesar un webhook

Cuando se produzca un evento, se realizará una llamada a la URL que hayas configurado, una petición POST. Esta URL debe estar preparada para recibir los eventos, y estos se enviarán en formato JSON, que estará incluido en el cuerpo de la petición que realizaremos. Tienes que tener en cuenta que, si tu volumen de envíos es elevado, recibirás un gran número de peticiones en esa URL, por lo que debe estar preparada para recibir los eventos correctamente.  Este objeto JSON puede tener de uno a muchos eventos, que serán los que se han producido desde que se lanzó la anterior petición, y tendrá la siguiente forma:

Para cada evento hay una serie de información relevante. A continuación, incluimos la información que contiene cada tipo de evento:

Alta

Parámetro  Valor  
event subscribes  
email El email del suscriptor  
timestamp Fecha en formato UNIX timestamp (en segundos)
 
list_id
Identificador único de la lista en la que ha sido suscrito
subscriber_fields Diccionario en formato JSON con los campos del desuscriptor. E.g, {"email": example@example.com, "name": "Mike"}

Baja

Parámetro  Valor  
event unsubscribes  
email El email del suscriptor desuscrito  
timestamp Fecha en formato UNIX timestamp (en segundos)  
campaign_id Identificador único de la campaña en la que se ha desuscrito
list_id Identificador único de la lista en la que ha sido desuscrito
subscriber_fields Diccionario en formato JSON con los campos del desuscriptor. E.g, {"email": example@example.com, "name": "Mike"}

Entregado

Parámetro Valor
event delivered
email El email del suscriptor
timestamp Fecha en formato UNIX timestamp (en segundos)

Hard Bounce

Parámetro Valor
event hard_bounces
email el email del suscriptor
timestamp Fecha en formato UNIX timestamp (en segundos)
bounce_reason Proporciona la razón por la que ha dado error

Queja

Parámetro Valor
event complaints
email El email del suscriptor
timestamp Fecha en formato UNIX timestamp (en segundos)

Apertura

Parámetro Valor
event opens
email El email del suscriptor
timestamp Fecha en formato UNIX timestamp (en segundos)

Clic

Parámetro Valor
event clicks
email El email del suscriptor
timestamp Fecha en formato UNIX timestamp (en segundos)