MailLandDocs
Webhooks

Eventos de Webhook

Referencia completa de todos los tipos de eventos de webhook y sus datos

El catálogo de eventos de MailLand define 21 tipos de eventos en 6 categorías (2 de los 21 son avisos de la plataforma a los que no puedes suscribirte). Cada evento se entrega como una solicitud HTTP POST firmada a tu endpoint de webhook.

No todos los eventos catalogados se disparan todavía. Nueve eventos están activos y son suscribibles hoy: message.delivered, message.deferred, message.bounced, message.failed, message.complained, message.outcome_unknown, message.retried, message.unsubscribed e inbound.received. El resto están documentados, reservados y no se aceptan actualmente en una suscripción: la API devuelve 400 si incluyes uno. El endpoint del catálogo indica esto por evento con availableNow y customerSelectable, así que lee esos campos en lugar de codificar una lista de forma fija.

Catálogo de eventos

Obtén el catálogo completo de eventos de forma programática:

GET https://api.mail.land/v1/webhooks/catalog
Get event catalog
curl -X GET https://api.mail.land/v1/webhooks/catalog
Catalog response (abbreviated)
{
  "version": 1,
  "products": [
    { "id": "transactional", "name": "Transactional Email", "isActive": true, "comingSoon": false },
    { "id": "marketing", "name": "Marketing Email", "isActive": true, "comingSoon": false },
    { "id": "inbound", "name": "Inbound Email", "isActive": true, "comingSoon": false },
    { "id": "system", "name": "System Events", "isActive": true, "comingSoon": false },
    { "id": "validation", "name": "Email Validation", "isActive": false, "comingSoon": true }
  ],
  "categories": [
    {
      "id": "message",
      "name": "Message Events",
      "events": [
        { "id": "message.sent", "name": "Message Sent", "products": ["transactional", "marketing"] },
        { "id": "message.delivered", "name": "Message Delivered", "products": ["transactional", "marketing"] }
      ]
    }
  ]
}

Este endpoint es público (no requiere autenticación) y siempre devuelve la versión más reciente del catálogo.

Estructura estándar de datos

Cada entrega de webhook incluye una estructura externa coherente:

Standard payload
{
  "event": "message.delivered",
  "event_id": "evt_a1b2c3d4e5f6g7h8i9j0k1l2m3n4o5",
  "timestamp": "2026-02-17T12:34:56.789Z",
  "occurred_at": "2026-02-17T12:34:56.120Z",
  "schema_version": 1,
  "data": {
    // Event-specific fields
  }
}
CampoTipoDescripción
eventstringIdentificador del tipo de evento
event_idstringID único del evento para deduplicación (formato: evt_{32chars})
timestampdatetimeMomento en que el webhook se puso en cola (UTC): no cuando ocurrió el evento subyacente. Consulta data.timestamp para eso.
occurred_atdatetimeCuándo ocurrió el evento subyacente (UTC); en los eventos de mensaje, el mismo instante que data.timestamp
schema_versionintegerVersión de esquema de este tipo de evento (hoy 1); se repite en X-MLND-Event-Version. Vea Versionado
dataobjectDatos específicos del evento

El data de cada evento de mensaje también incluye status_version, status, previous_status, complaint_status y reason, consulta Versiones de estado.

Versiones de estado

Cada evento de mensaje incluye data.status_version, data.status, data.previous_status, data.complaint_status y data.reason. status_version aumenta en uno cada vez que MailLand envía un evento por un cambio en el estado del mensaje, en su motivo o en su estado de queja.

Dos excepciones:

  • Un mensaje empieza en status_version 0 mientras está queued o sent. El paso de queued a sent no envía ningún evento ni cambia la versión.
  • Varios eventos message.deferred pueden compartir una status_version: un retraso repetido no cambia el estado.

Los webhooks pueden llegar desordenados y reintentarse, así que aplícalos por status_version, nunca por orden de llegada.

Un estado puede cambiar después de haber sido final. MailLand informa de lo que sabe cuando lo sabe. Cuando sabe más después, envía el estado nuevo con una status_version mayor:

  • un mensaje entregado puede rebotar después, cuando el servidor del destinatario lo rechaza más tarde (un rebote fuera de banda);
  • tras un fallo interno, o cuando el servidor de correo de MailLand se recupera, una entrega o un rechazo puede notificarse tarde. Un mensaje failed puede pasar entonces a bounced o delivered, un mensaje bounced puede pasar a delivered, y un mensaje unknown puede pasar a cualquier estado final.

Un mensaje nunca pasa de delivered a failed. MailLand contabiliza estas correcciones.

CampoTipoDescripción
status_versionintegerLa versión del estado del mensaje que describe este evento.
statusstringEl estado del mensaje en esa versión: queued, sent, deferred, unknown, delivered, bounced o failed.
previous_statusstring o nullEl estado antes de este cambio; null antes del primer cambio.
complaint_statusstringnone o complained.
reasonstring o nullEl motivo del rebote o del fallo para bounced, failed y unknown; si no, null.

Plazos de reintento

MailLand reintenta un mensaje diferido hasta su plazo de reintento: unas 5 horas después de entregarlo por primera vez a la cola de entrega en el correo transaccional, y unas 25 horas en el correo de marketing. Pasado el plazo, MailLand no pone el mensaje en cola para ningún intento nuevo. Una copia que ya esperaba una conexión al llegar el plazo todavía puede intentarse después. Son plazos de reintento, no promesas sobre cuándo recibirás el evento final. Recibes cada evento en cuanto el resultado llega a MailLand; ese retraso aún no está medido y puede ser mayor durante una caída interna. Un mensaje que MailLand no pudo entregar a su cola de entrega en 24 horas se termina como expired.

Si guardas el estado actual de un mensaje a partir de los webhooks (acción necesaria)

Es un cambio de comportamiento para las integraciones existentes. Una integración que trata message.failed o message.delivered como permanentes, e ignora los eventos posteriores, puede quedarse con un estado incorrecto tras una corrección. Nombres de eventos que ya existen tienen ahora secuencias posibles nuevas.

  • Suscríbete a todos los eventos de mensaje: message.delivered, message.deferred, message.bounced, message.failed, message.complained, message.outcome_unknown y message.retried. Solo así los eventos que recibes contienen cada cambio de estado.
  • Guarda status_version junto con el estado. Aplica un evento solo si su status_version es mayor que la guardada; un message.deferred con la misma versión no cambia nada.
  • Sigue procesando eventos después de message.failed, message.bounced o message.delivered: un evento posterior con una status_version mayor sustituye al estado anterior.
  • Cuando hayas recibido todos los eventos hasta la status_version de la API, tu estado es igual al de la API. La API puede ir por delante de los webhooks recibidos hasta ese momento y, con status_version 0, puede mostrar sent sin ningún evento.

Si te suscribes solo a algunos eventos de mensaje, la status_version más alta que recibiste no es necesariamente el estado actual: un tipo de evento al que no te suscribiste puede haberlo cambiado. Lee el estado actual desde la API, por ejemplo para cada mensaje cuyo último evento recibido sea message.failed, message.bounced o message.outcome_unknown, y concilia.

Si no puedes cambiar tu integración, consulta en la API el estado de los mensajes que te importan. Las integraciones que solo cuentan eventos, o que solo muestran un historial, no necesitan cambios.

Eventos de mensaje

message.sent

Ilustrativo: aún no se emite. Este evento está catalogado pero hoy no tiene productor.

message.sent (illustrative)
{
  "event": "message.sent",
  "event_id": "evt_a1b2c3d4e5f6g7h8i9j0k1l2m3n4o5",
  "timestamp": "2026-02-17T12:34:56.789Z",
  "data": {
    "message_id": "t_a1b2c3d4e5f6",
    "recipient": "[email protected]",
    "timestamp": "2026-02-17T12:34:56.789Z"
  }
}

message.delivered

Se dispara cuando el correo se entrega correctamente al servidor de correo del destinatario.

Este evento también puede llegar como corrección después de un estado final anterior del mismo mensaje. Consulta Versiones de estado.

message.delivered
{
  "event": "message.delivered",
  "event_id": "evt_b2c3d4e5f6g7h8i9j0k1l2m3n4o5p6",
  "timestamp": "2026-02-17T12:34:58.123Z",
  "data": {
    "message_id": "t_a1b2c3d4e5f6",
    "recipient": "[email protected]",
    "timestamp": "2026-02-17T12:34:58.123Z",
    "smtp_response": "OK",
    "status_version": 1,
    "status": "delivered",
    "previous_status": "sent",
    "complaint_status": "none",
    "reason": null
  }
}

message.deferred

Se dispara cuando la entrega se retrasa temporalmente. MailLand reintentará automáticamente.

Un mensaje puede diferirse varias veces. El primer diferimiento aumenta status_version; los siguientes llevan la misma status_version.

message.deferred
{
  "event": "message.deferred",
  "event_id": "evt_c3d4e5f6g7h8i9j0k1l2m3n4o5p6q7",
  "timestamp": "2026-02-17T12:35:00.000Z",
  "data": {
    "message_id": "t_a1b2c3d4e5f6",
    "recipient": "[email protected]",
    "timestamp": "2026-02-17T12:35:00.000Z",
    "smtp_response": "Try again later",
    "bounce_reason": "TransientFailure"
  }
}

message.bounced

Se dispara cuando un correo rebota (rebote duro o suave).

Este evento también puede llegar como corrección después de un estado final anterior del mismo mensaje. Consulta Versiones de estado.

message.bounced
{
  "event": "message.bounced",
  "event_id": "evt_d4e5f6g7h8i9j0k1l2m3n4o5p6q7r8",
  "timestamp": "2026-02-17T12:35:01.000Z",
  "data": {
    "message_id": "t_a1b2c3d4e5f6",
    "recipient": "[email protected]",
    "timestamp": "2026-02-17T12:35:01.000Z",
    "bounce_type": "hard",
    "bounce_reason": "InvalidRecipient",
    "smtp_response": "The email account that you tried to reach does not exist.",
    "status_version": 1,
    "status": "bounced",
    "previous_status": "sent",
    "complaint_status": "none",
    "reason": "InvalidRecipient"
  }
}

bounce_reason es el token de clasificación que MailLand asigna al rebote (por ejemplo, InvalidRecipient, QuotaIssues, SpamBlock), no el texto SMTP crudo, usa smtp_response para eso. bounce_type es uno de hard, soft, blocked o unknown.

smtp_response es el texto de respuesta del servidor destinatario, sin su código de respuesta numérico ni su código de estado extendido. bounce_type indica qué hizo MailLand con la dirección: hard, suprimida para todo el correo; soft, suprimida para el correo de marketing durante 30 días; blocked, el rechazo se refería al envío, no a la dirección (por ejemplo, filtrado de spam, autenticación del remitente, reputación o la política del destinatario), así que no se suprime nada; unknown, sin clasificación, se trata como soft.

message.failed

Se dispara cuando MailLand termina un mensaje con pruebas concluyentes de que no se entregó, por un motivo del lado de MailLand y no del destinatario. En los casos descritos en Versiones de estado, puede seguir un message.delivered o un message.bounced con una status_version mayor. El estado del mensaje pasa a Failed, no a Bounced, y reason indica el caso:

MotivoQué pasó
dkim_revokedEl mensaje esperaba en la cola de entrega de MailLand, firmado con una clave DKIM que MailLand revocó después de emergencia para el dominio remitente (por ejemplo, tras sospechar que la clave estaba comprometida). MailLand nunca entrega ni vuelve a firmar ese mensaje: caduca en su siguiente reintento, en unos 30 minutos para el correo transaccional y en 4 horas para el de marketing.
admin_bounceUn operador de MailLand retiró el mensaje de la cola de entrega de MailLand.
dkim_key_revokedEl dominio remitente está bajo un bloqueo DKIM de emergencia, así que MailLand rechazó el mensaje antes de que entrara en la cola de entrega.
inject_failedLa cola de entrega de MailLand rechazó el mensaje de forma definitiva; nunca se puso en cola para su entrega.
expiredMailLand aceptó el mensaje pero no lo entregó a su cola de entrega en 24 horas, así que lo terminó sin enviarlo.
template_variable_missingEl mensaje usaba un marcador {{name}} sin valor para este destinatario, así que MailLand no lo envió con el marcador literal.
  • El destinatario no se suprime y el fallo no cuenta para tu tasa de rebote.
  • Un mensaje produce como máximo un message.failed. Es el último evento de ese mensaje salvo que MailLand reciba después una entrega o un rechazo; en ese caso sigue un message.delivered o un message.bounced con una status_version mayor.

Un rechazo del servidor de correo receptor se notifica como message.bounced, nunca como message.failed.

message.failed
{
  "event": "message.failed",
  "event_id": "evt_e5f6a7b8c9d0e1f2a3b4c5d6e7f8a9b0",
  "timestamp": "2026-09-28T02:00:19.1047332Z",
  "data": {
    "message_id": "t_a1b2c3d4e5f6",
    "recipient": "[email protected]",
    "timestamp": "2026-09-28T02:00:18.2522997Z",
    "reason": "dkim_revoked",
    "smtp_response": "Next delivery time PT3.028008S > PT1S",
    "status_version": 1,
    "status": "failed",
    "previous_status": "sent",
    "complaint_status": "none"
  }
}
CampoDescripción
reasonPor qué MailLand terminó el mensaje: uno de los valores anteriores. Trata cualquier otro valor como un nuevo motivo del lado de MailLand.
smtp_responseTexto de la propia cola de entrega de MailLand cuando lo hay (dkim_revoked, admin_bounce, inject_failed); si no, null. Solo informativo: nunca es una respuesta del servidor del destinatario.

message.outcome_unknown

Se dispara cuando MailLand no puede determinar si un mensaje llegó a su cola de entrega, por ejemplo porque la entrega a la cola se interrumpió y no pudo establecerse después. Se envía algún tiempo después del plazo de reintento del mensaje, actualmente 7 días, si para entonces no ha llegado ninguna prueba. No es un estado final. El estado pasa a unknown. Si MailLand conoce el resultado más tarde, recibes message.delivered, message.bounced o message.failed con una status_version mayor.

message.outcome_unknown
{
  "event": "message.outcome_unknown",
  "event_id": "evt_0a1b2c3d4e5f6a7b8c9d0e1f2a3b4c5d",
  "timestamp": "2026-10-08T17:05:00.000Z",
  "data": {
    "message_id": "t_a1b2c3d4e5f6",
    "recipient": "[email protected]",
    "timestamp": "2026-10-08T17:05:00.000Z",
    "status_version": 1,
    "status": "unknown",
    "previous_status": "queued",
    "complaint_status": "none",
    "reason": "handoff_undetermined"
  }
}

message.retried

Se dispara cuando reintentas un mensaje rebotado o fallido y MailLand lo vuelve a poner en cola. El estado pasa a queued y status_version aumenta; los eventos de la copia reintentada llegan después con versiones mayores. No es un estado final.

message.retried
{
  "event": "message.retried",
  "event_id": "evt_1b2c3d4e5f6a7b8c9d0e1f2a3b4c5d6e",
  "timestamp": "2026-10-01T18:00:00.000Z",
  "data": {
    "message_id": "t_a1b2c3d4e5f6",
    "recipient": "[email protected]",
    "timestamp": "2026-10-01T18:00:00.000Z",
    "attempt": 1,
    "status_version": 2,
    "status": "queued",
    "previous_status": "bounced",
    "complaint_status": "none",
    "reason": null
  }
}

Eventos de interacción

message.opened y message.clicked están catalogados pero no son seleccionables por el cliente ni se emiten hoy. No puedes suscribirte a ellos: intentar seleccionarlos al crear/actualizar se rechaza con 400 "One or more invalid events selected". Los siguientes ejemplos son solo ilustrativos.

message.opened

Ilustrativo: no disponible.

message.opened (illustrative)
{
  "event": "message.opened",
  "event_id": "evt_f6g7h8i9j0k1l2m3n4o5p6q7r8s9t0",
  "timestamp": "2026-02-17T13:15:00.000Z",
  "data": {
    "message_id": "t_a1b2c3d4e5f6",
    "recipient": "[email protected]",
    "timestamp": "2026-02-17T13:15:00.000Z"
  }
}

message.clicked

Ilustrativo: no disponible.

message.clicked (illustrative)
{
  "event": "message.clicked",
  "event_id": "evt_g7h8i9j0k1l2m3n4o5p6q7r8s9t0u1",
  "timestamp": "2026-02-17T13:16:00.000Z",
  "data": {
    "message_id": "t_a1b2c3d4e5f6",
    "recipient": "[email protected]",
    "timestamp": "2026-02-17T13:16:00.000Z"
  }
}

message.unsubscribed

Se emite cuando un destinatario se da de baja de un mensaje que enviaste: mediante su cabecera List-Unsubscribe o dirección mailto:, el POST de un clic, su enlace de baja o la página de preferencias. No se emite por las bajas que haces tú mismo desde la API o el panel, ni por quejas de spam (message.complained). Se envía una vez por mensaje, en el mismo momento en que se da de baja al destinatario, a cada endpoint suscrito a él. Como todo evento de mensaje, data incluye además los campos de estado actuales del mensaje (consulta Versiones de estado).

message.unsubscribed
{
  "event": "message.unsubscribed",
  "event_id": "evt_h8i9j0k1l2m3n4o5p6q7r8s9t0u1v2",
  "timestamp": "2026-02-17T14:00:00.000Z",
  "data": {
    "message_id": "m_a1b2c3d4e5f6",
    "recipient": "[email protected]",
    "timestamp": "2026-02-17T14:00:00.000Z",
    "status_version": 3,
    "status": "delivered",
    "previous_status": "queued",
    "complaint_status": "none",
    "reason": null
  }
}

Eventos de supresión

message.complained

Se dispara cuando un destinatario marca el correo como spam (bucle de retroalimentación del ISP).

message.complained
{
  "event": "message.complained",
  "event_id": "evt_i9j0k1l2m3n4o5p6q7r8s9t0u1v2w3",
  "timestamp": "2026-02-17T15:00:00.000Z",
  "data": {
    "message_id": "m_a1b2c3d4e5f6",
    "recipient": "[email protected]",
    "timestamp": "2026-02-17T15:00:00.000Z",
    "feedback_type": "abuse"
  }
}

Tasas de quejas superiores al 0,1 % pueden dañar tu reputación de remitente. Supervisa de cerca los eventos message.complained y asegúrate de enviar solo a destinatarios que hayan dado su consentimiento.

suppression.added

Ilustrativo: aún no se emite. Este evento está catalogado pero hoy no tiene productor.

suppression.added (illustrative)
{
  "event": "suppression.added",
  "event_id": "evt_j0k1l2m3n4o5p6q7r8s9t0u1v2w3x4",
  "timestamp": "2026-02-17T15:00:01.000Z",
  "data": {
    "email": "[email protected]",
    "type": "complaint",
    "scope": "global",
    "reason": "Spam complaint via ISP feedback loop"
  }
}

suppression.removed

Ilustrativo: aún no se emite. Este evento está catalogado pero hoy no tiene productor.

suppression.removed (illustrative)
{
  "event": "suppression.removed",
  "event_id": "evt_k1l2m3n4o5p6q7r8s9t0u1v2w3x4y5",
  "timestamp": "2026-02-17T16:00:00.000Z",
  "data": {
    "email": "[email protected]",
    "type": "manual",
    "scope": "global"
  }
}

Eventos entrantes

inbound.received

Se dispara cuando se recibe un correo entrante en uno de tus dominios.

Este evento usa el sobre estándar, como el resto de eventos de esta página: event_id es igual a X-MLND-Event-Id y es estable entre reintentos, occurred_at es el momento en que se recibió el correo, y los campos de entrada están bajo data. El id de cada adjunto es estable entre reintentos; su download_url es nueva en cada intento. Referencia de campos: Webhooks de entrada.

inbound.received
{
  "event": "inbound.received",
  "event_id": "evt_a1b2c3d4e5f6a1b2c3d4e5f6a1b2c3d4",
  "timestamp": "2026-02-17T12:00:00.000Z",
  "occurred_at": "2026-02-17T12:00:00.000Z",
  "schema_version": 1,
  "data": {
    "idempotency_key": "r7n2k5x9m1p4w6_s5m3x8k1p7n4w2",
    "email": {
      "id": "r7n2k5x9m1p4w6",
      "received_at": "2026-02-17T12:00:00.000Z",
      "size_bytes": 4521,
      "envelope": {
        "from": "[email protected]",
        "to": ["[email protected]"]
      },
      "headers": {
        "from": { "address": "[email protected]", "name": "Jane Doe" },
        "to": [{ "address": "[email protected]" }],
        "subject": "Help with my order",
        "message_id": "<[email protected]>",
        "date": "2026-02-17T11:59:50.000Z"
      },
      "body": {
        "text_preview": "Hi, I need help with...",
        "has_text": true,
        "has_html": true
      },
      "attachments": [],
      "authentication": {
        "spf": { "result": "pass" },
        "dkim": { "result": "pass" },
        "dmarc": { "result": "pass" }
      },
      "spam": {
        "score": 0.1,
        "is_spam": false,
        "reason": null
      },
      "source": {
        "ip": "203.0.113.10",
        "hostname": "mail.external.com"
      }
    },
    "matched_route": {
      "id": "s5m3x8k1p7n4w2",
      "name": "Support inbox"
    }
  }
}

Eventos de cuenta

account.webhook_paused

No se emite. La pausa automática es real y ocurre como se describe en Lógica de reintentos, pero se comunica a través de los campos propios del webhook pausedAt / pausedReason y una notificación en la aplicación: no como un evento de webhook. Enviar "tu endpoint dejó de funcionar" a un endpoint de webhook no es fiable por construcción, y de todos modos ninguna suscripción puede contener este evento hoy.

Se dispara cuando un webhook se pausa automáticamente por fallos consecutivos.

account.webhook_paused
{
  "event": "account.webhook_paused",
  "event_id": "evt_m3n4o5p6q7r8s9t0u1v2w3x4y5z6a7",
  "timestamp": "2026-02-17T18:00:00.000Z",
  "data": {
    "webhook_id": "z8m3p1k6x4w2n7",
    "webhook_name": "Production Events",
    "consecutive_failures": 10,
    "last_error": "Connection refused"
  }
}

account.domain_verified

Ilustrativo: aún no se emite. Este evento está catalogado pero hoy no tiene productor.

account.domain_verified (illustrative)
{
  "event": "account.domain_verified",
  "event_id": "evt_n4o5p6q7r8s9t0u1v2w3x4y5z6a7b8",
  "timestamp": "2026-02-17T10:15:00.000Z",
  "data": {
    "domain_id": "q3z8v1k6m9p2x5",
    "domain": "yourdomain.com"
  }
}

account.domain_failed

Ilustrativo: aún no se emite. Este evento está catalogado pero hoy no tiene productor.

account.domain_failed (illustrative)
{
  "event": "account.domain_failed",
  "event_id": "evt_o5p6q7r8s9t0u1v2w3x4y5z6a7b8c9",
  "timestamp": "2026-02-17T10:15:00.000Z",
  "data": {
    "domain_id": "q3z8v1k6m9p2x5",
    "domain": "yourdomain.com",
    "reason": "DKIM record not found for selector mlnd"
  }
}

account.quota_warning

Ilustrativo: aún no se emite. Este evento está catalogado pero hoy no tiene productor.

account.quota_warning (illustrative)
{
  "event": "account.quota_warning",
  "event_id": "evt_p6q7r8s9t0u1v2w3x4y5z6a7b8c9d0",
  "timestamp": "2026-02-17T20:00:00.000Z",
  "data": {
    "used": 45000,
    "limit": 50000,
    "percentage": 90
  }
}

account.quota_exceeded

Ilustrativo: aún no se emite. Este evento está catalogado pero hoy no tiene productor.

account.quota_exceeded (illustrative)
{
  "event": "account.quota_exceeded",
  "event_id": "evt_q7r8s9t0u1v2w3x4y5z6a7b8c9d0e1",
  "timestamp": "2026-02-17T22:00:00.000Z",
  "data": {
    "used": 50000,
    "limit": 50000,
    "percentage": 100
  }
}

Resumen de eventos

"Disponible" es el indicador availableNow del catálogo: si algo emite hoy realmente el evento. Solo los eventos disponibles pueden incluirse en una suscripción.

EventoDisponibleProductosLimitado por dominioDescripción
message.deliveredSítransactional, marketingSíEntregado con éxito
message.deferredSítransactional, marketingSíRetrasado temporalmente
message.bouncedSítransactional, marketingSíRebote duro o suave
message.failedSítransactional, marketingSíTerminado por MailLand con pruebas concluyentes, por una causa del lado de MailLand; puede ir seguido de una corrección (ver Versiones de estado)
message.outcome_unknownSítransactional, marketingSíMailLand no pudo determinar si el mensaje llegó a su cola de entrega; no es final
message.retriedSítransactional, marketingSíUn mensaje rebotado o fallido se reintentó y vuelve a estar en cola; no es final
message.complainedSítransactional, marketingSíMarcado como spam
inbound.receivedSíinboundSíCorreo entrante recibido
message.sentAún notransactional, marketingSíCorreo aceptado y en cola
message.openedAún notransactional, marketingSíPixel de seguimiento cargado
message.clickedAún notransactional, marketingSíEnlace clicado
message.unsubscribedSítransactional, marketingSíDestinatario dado de baja
suppression.addedAún notransactional, marketingNoAñadido a la lista de supresión
suppression.removedAún notransactional, marketingNoEliminado de la lista de supresión
account.webhook_pausedAún nosystemNoWebhook pausado automáticamente
account.domain_verifiedAún nosystemNoDominio verificado
account.domain_failedAún nosystemNoFallo de verificación de dominio
account.quota_warningAún nosystemNoCuota acercándose al límite
account.quota_exceededAún nosystemNoCuota agotada

Eventos futuros

Cuando includeFutureEvents es true (valor por defecto), tu webhook recibe automáticamente los nuevos tipos de eventos a medida que se añaden a tus productos suscritos. Ponlo en false para fijar tu suscripción al conjunto actual de eventos.

Los eventos marcados como "Aún no" arriba se vuelven suscribibles cuando sus productores se publiquen: los nombres de eventos y las estructuras de datos documentadas aquí no cambiarán en ese momento.

Próximos pasos

En esta página