Habilita webhooks para el servicio de email

Un webhook es un mecanismo para recibir notificaciones sobre ciertos eventos. Puedes configurar notificaciones sobre la capacidad de entrega del correo electrónico y la actividad de los suscriptores.

Cómo Crear un Webhook

Para crear y enviar webhooks automáticamente, ve a la sección "Configuración de la cuenta" en la pestaña "API" y haz clic en "Crear un webhook".

Selecciona el evento desencadenado por el webhook en el servicio de correo electrónico con respecto al envío de un correo electrónico:

  • Correo marcado como spam
  • Correo abierto
  • Enlace en el correo electrónico hecho clic
  • Nuevo suscriptor
  • Suscriptor cancelado
  • Suscriptor eliminado de la lista
  • Entregado
  • El estado de la campaña cambió
  • Rebote blando
  • Rebote duro

A continuación, especifica la URL a la que se enviarán las notificaciones.

Para cada evento, debes crear webhooks separados.

Enviar Formato de Datos

Cuando se activa un webhook, SendPulse envía una solicitud POST a la URL especificada con el tipo de datos JSON.

Los datos se envían cada minuto o cuando se alcanza el límite de 100 eventos.

Los datos se envían en el siguiente formato:

[
  {
    "timestamp": "1496827422",
    "event": "event_name",
    "task_id": "3668141",
    "email": "john.doe@sendpulse.com" 
  }
]

Formatos de Solicitud, Según el Evento

Marcado como spam:

[
  {
    "timestamp": "1496827422",
    "event": "spam",
    "task_id": "3668141",
    "email": "john.doe@sendpulse.com" 
  }
]

Correo abierto:

[
  {
    "task_id": "3668141",
    "timestamp": "1496827941",
    "open_device": "Desktop",
    "open_platform": "Windows",
    "browser_ver": "11.0",
    "browser_name": "Firefox",
    "email": "john.doe@sendpulse.com",
    "event": "open" 
   }
]

Enlace pulsado:

[
   {
    "link_url": http://google.com,
    "task_id": "3668141",
    "timestamp": "1496828000",
    "open_device": "Desktop",
    "open_platform": "Linux",
    "browser_ver": "58.0.3029.110",
    "browser_name": "Chrome",
    "link_id": "71741389",
    "email": "john.doe@sendpulse.com",
    "event": "redirect" 
  }
]

Cliente cancelado:

[
  {
    "task_id": "3668141",
    "timestamp": "1496827872",
    "from_all": "1",
    "email": "john.doe@sendpulse.com",
    "reason": null,
    "book_id": "490686",
    "event": "unsubscribe",
    "categories": "" 
  }
]

Nuevo suscriptor:

[
  {
    "timestamp":"1496827625",
    "variables": [],
    "email": "john.doe@sendpulse.com",
    "source": "address book",
    "book_id": "490686",
    "event": "new_emails" 
  },
  {
    "timestamp": "1496827625",
    "variables": [],
    "email": "doe.john@sendpulse.com",
    "source": "subscription form",
    "book_id": "490686",
    "event": "new_emails" 
  }
]

Removido de la lista de correos:

[
  {
    "timestamp": "1496827422",
    "event": "delete",
    "book_id": "490686",
    "email": "john.doe@sendpulse.com" 
  }
]

Entregado:

[
  {
    "timestamp": 1632316421
    "event": "delivered"
    "task_id": 9333331
    "email": "test@e.cn.ua"
  }
]

El estado de la campaña fue cambiado:

[
  {
    "status": "approve",
    "status_explain": "Approved and will be sent",
    "task_id": "3668138,
    "timestamp": "1496827843",
    "book_id": "490686",
    "event": "task_status_update" 
  },
  {
    "status": "approve_part",
    "status_explain": "Approved and will be sent by parts",
    "task_id": "3668139",
    "timestamp": "1496827843",
    "book_id": "490686",
    "event": "task_status_update" 
  },
  {
    "status": "only_active",
    "status_explain": "Will be sent only to active adresses",
    "task_id": "3668140",
    "timestamp": "1496827843",
    "book_id": "490686",
    "event": "task_status_update" 
  },
  {
    "status": "confirm_addresses",
    "status_explain": "Rejected: confirm the mailing list",
    "task_id": "3668142",
    "timestamp": "1496827843",
    "book_id": "490686",
    "event": "task_status_update" 
  },
  {
    "status": "need_edit",
    "status_explain": "Rejected: edit the email body",
    "task_id": "3668143",
    "timestamp": "1496827843",
    "book_id": "490686",
    "event": "task_status_update" 
  },
  {
    "status": "rejected",
    "status_explain": "Campaign rejected",
    "task_id": "3668144",
    "timestamp": "1496827843",
    "book_id": "490686",
    "event": "task_status_update" 
  },
  {
    "status": "on_moderation",
    "status_explain": "Campaign is on moderation",
    "task_id": "3668145",
    "timestamp": "1496827843",
    "book_id": "490686",
    "event": "task_status_update" 
  },
  {
    "status": "sending",
    "status_explain": "Campaign is in the sending queue",
    "task_id": "3668146",
    "timestamp": "1496827843",
    "book_id": "490686",
    "event": "task_status_update" 
  },
]

Rebote suave recibido:

[
   {
      "smtp_server_response_code": 550,
      "smtp_server_response_subcode": "5.1.0",
      "task_id": 17076325,
      "smtp_server_response": " vch15@i.ua MX: mx23.i.ua RESP: Mailbox over quota. See http://mail.i.ua/err/4/",
      "timestamp": 1658998170,
      "event": "soft_bounces",
      "email": "example@example.com"
   }
]

Rebote duro recibido:

[
   {
      "smtp_server_response_code": 550,
      "smtp_server_response_subcode": "5.1.1",
      "task_id": 17076325,
      "smtp_server_response": " example@example.com MX: mx.i.ua RESP: 5.1.1 <example@example.com>: Recipient address rejected: User unknown in local recipient table",
      "timestamp": 1658998170,
      "event": "hard_bounces",
      "email": "example@example.com"
   }
]

Ejemplo del script que procesa un webhook en PHP:

<?php
$json_string = file_get_contents('php://input');
$data_array = json_decode($json_string, true);
?>
Califica este artículo sobre "Habilita webhooks para el servicio de email"

Opinión de los usuarios: 5 / 5 (4)

Anterior

Configura un dominio de seguimiento personalizado

Siguiente

Añade un código de formulario de suscripción a un sitio web usando GTM

Popular en nuestro blog

Prueba el servicio de email de SendPulse gratis