Eventos de campañas
Campañas creadas, modificadas, programadas, enviadas, canceladas, archivadas o eliminadas.
campaign.created
Se envía cuando se crea una campaña con Crear una campaña o en el panel, también cuando duplicas una campaña. Las campañas nuevas empiezan en estado draft.
Las peticiones de webhook contienen un array JSON de eventos como este; consulta Peticiones de webhook.
Campos
event_idstringEl ID del evento (evt_…). Una petición reintentada lleva el mismo ID, así que úsalo para omitir los eventos que ya hayas procesado. También puedes consultar el evento con Obtener un evento.
typestringSiempre campaign.created.
objectobjectLa campaña que describe el evento. Sus campos se indican a continuación.
data.objectobjectEl mismo objeto otra vez, con la forma que devuelve la API de eventos en data.
Objeto de campaña
idstringEl ID de la campaña (cmp_…).
objectstringSiempre campaign.
namestringEl nombre de la campaña.
statusstringSiempre draft.
subjectstringEl asunto, o una cadena vacía si aún no se ha definido.
from_emailstringLa dirección del remitente, o una cadena vacía.
from_namestringEl nombre del remitente, o una cadena vacía.
scheduled_atstring | nullCuándo está programado el envío de la campaña, o null.
sent_atstring | nullCuándo se envió la campaña, o null.
created_atstringCuándo se creó la campaña, en formato ISO 8601 con desfase respecto a UTC.
{
"event_id": "evt_2xLc9Rr4Tn6Wb1Qm8Ks3Vf0Hd7a",
"type": "campaign.created",
"object": {
"id": "cmp_2xLf3Gd8Wr5Mb0Tq6Yn1Kc4Hs9e",
"object": "campaign",
"name": "October product update",
"status": "draft",
"subject": "What's new in October",
"from_email": "news@acme.com",
"from_name": "Acme",
"scheduled_at": null,
"sent_at": null,
"created_at": "2026-09-29T15:10:44.031000+00:00"
},
"data": {
"object": {
"id": "cmp_2xLf3Gd8Wr5Mb0Tq6Yn1Kc4Hs9e",
"object": "campaign",
"name": "October product update",
"status": "draft",
"subject": "What's new in October",
"from_email": "news@acme.com",
"from_name": "Acme",
"scheduled_at": null,
"sent_at": null,
"created_at": "2026-09-29T15:10:44.031000+00:00"
}
}
}campaign.updated
Se envía cuando cambian el contenido o la configuración de una campaña, por ejemplo con Actualizar una campaña, o cuando vuelve a draft porque cancelaste su programación o la desarchivaste en el panel. Si el estado cambió, previous_status contiene el estado anterior.
Las peticiones de webhook contienen un array JSON de eventos como este; consulta Peticiones de webhook.
Campos
event_idstringEl ID del evento (evt_…). Una petición reintentada lleva el mismo ID, así que úsalo para omitir los eventos que ya hayas procesado. También puedes consultar el evento con Obtener un evento.
typestringSiempre campaign.updated.
objectobjectLa campaña que describe el evento. Sus campos se indican a continuación.
data.objectobjectEl mismo objeto otra vez, con la forma que devuelve la API de eventos en data.
Objeto de campaña
idstringEl ID de la campaña (cmp_…).
objectstringSiempre campaign.
namestringEl nombre de la campaña.
statusstringEl estado actual: draft, scheduled, queued, sending, sent, canceled o archived.
subjectstringEl asunto, o una cadena vacía si aún no se ha definido.
from_emailstringLa dirección del remitente, o una cadena vacía.
from_namestringEl nombre del remitente, o una cadena vacía.
scheduled_atstring | nullCuándo está programado el envío de la campaña, o null.
sent_atstring | nullCuándo se envió la campaña, o null.
created_atstringCuándo se creó la campaña, en formato ISO 8601 con desfase respecto a UTC.
previous_statusstringEl estado anterior al cambio. Solo se incluye si el estado cambió.
{
"event_id": "evt_2xLc9Rr4Tn6Wb1Qm8Ks3Vf0Hd7a",
"type": "campaign.updated",
"object": {
"id": "cmp_2xLf3Gd8Wr5Mb0Tq6Yn1Kc4Hs9e",
"object": "campaign",
"name": "October product update",
"status": "draft",
"subject": "What's new in October",
"from_email": "news@acme.com",
"from_name": "Acme",
"scheduled_at": null,
"sent_at": null,
"created_at": "2026-09-29T15:10:44.031000+00:00",
"previous_status": "scheduled"
},
"data": {
"object": {
"id": "cmp_2xLf3Gd8Wr5Mb0Tq6Yn1Kc4Hs9e",
"object": "campaign",
"name": "October product update",
"status": "draft",
"subject": "What's new in October",
"from_email": "news@acme.com",
"from_name": "Acme",
"scheduled_at": null,
"sent_at": null,
"created_at": "2026-09-29T15:10:44.031000+00:00",
"previous_status": "scheduled"
}
}
}campaign.scheduled
Se envía cuando programas una campaña en borrador con Enviar o programar una campaña y un scheduled_at futuro, o en el panel. Consulta Probar y programar.
Las peticiones de webhook contienen un array JSON de eventos como este; consulta Peticiones de webhook.
Campos
event_idstringEl ID del evento (evt_…). Una petición reintentada lleva el mismo ID, así que úsalo para omitir los eventos que ya hayas procesado. También puedes consultar el evento con Obtener un evento.
typestringSiempre campaign.scheduled.
objectobjectLa campaña que describe el evento. Sus campos se indican a continuación.
data.objectobjectEl mismo objeto otra vez, con la forma que devuelve la API de eventos en data.
Objeto de campaña
idstringEl ID de la campaña (cmp_…).
objectstringSiempre campaign.
namestringEl nombre de la campaña.
statusstringSiempre scheduled.
subjectstringEl asunto, o una cadena vacía si aún no se ha definido.
from_emailstringLa dirección del remitente, o una cadena vacía.
from_namestringEl nombre del remitente, o una cadena vacía.
scheduled_atstring | nullCuándo está programado el envío de la campaña, o null.
sent_atstring | nullCuándo se envió la campaña, o null.
created_atstringCuándo se creó la campaña, en formato ISO 8601 con desfase respecto a UTC.
previous_statusstringEl estado anterior al cambio, normalmente draft.
{
"event_id": "evt_2xLc9Rr4Tn6Wb1Qm8Ks3Vf0Hd7a",
"type": "campaign.scheduled",
"object": {
"id": "cmp_2xLf3Gd8Wr5Mb0Tq6Yn1Kc4Hs9e",
"object": "campaign",
"name": "October product update",
"status": "scheduled",
"subject": "What's new in October",
"from_email": "news@acme.com",
"from_name": "Acme",
"scheduled_at": "2026-10-02T08:00:00.000000+00:00",
"sent_at": null,
"created_at": "2026-09-29T15:10:44.031000+00:00",
"previous_status": "draft"
},
"data": {
"object": {
"id": "cmp_2xLf3Gd8Wr5Mb0Tq6Yn1Kc4Hs9e",
"object": "campaign",
"name": "October product update",
"status": "scheduled",
"subject": "What's new in October",
"from_email": "news@acme.com",
"from_name": "Acme",
"scheduled_at": "2026-10-02T08:00:00.000000+00:00",
"sent_at": null,
"created_at": "2026-09-29T15:10:44.031000+00:00",
"previous_status": "draft"
}
}
}campaign.queued
Se envía cuando llega la hora de envío de una campaña programada y Emailit la pone en cola. Cuando empieza el envío, llega campaign.sending.
Las peticiones de webhook contienen un array JSON de eventos como este; consulta Peticiones de webhook.
Campos
event_idstringEl ID del evento (evt_…). Una petición reintentada lleva el mismo ID, así que úsalo para omitir los eventos que ya hayas procesado. También puedes consultar el evento con Obtener un evento.
typestringSiempre campaign.queued.
objectobjectLa campaña que describe el evento. Sus campos se indican a continuación.
data.objectobjectEl mismo objeto otra vez, con la forma que devuelve la API de eventos en data.
Objeto de campaña
idstringEl ID de la campaña (cmp_…).
objectstringSiempre campaign.
namestringEl nombre de la campaña.
statusstringSiempre queued.
subjectstringEl asunto, o una cadena vacía si aún no se ha definido.
from_emailstringLa dirección del remitente, o una cadena vacía.
from_namestringEl nombre del remitente, o una cadena vacía.
scheduled_atstring | nullCuándo está programado el envío de la campaña, o null.
sent_atstring | nullCuándo se envió la campaña, o null.
created_atstringCuándo se creó la campaña, en formato ISO 8601 con desfase respecto a UTC.
previous_statusstringSiempre scheduled.
{
"event_id": "evt_2xLc9Rr4Tn6Wb1Qm8Ks3Vf0Hd7a",
"type": "campaign.queued",
"object": {
"id": "cmp_2xLf3Gd8Wr5Mb0Tq6Yn1Kc4Hs9e",
"object": "campaign",
"name": "October product update",
"status": "queued",
"subject": "What's new in October",
"from_email": "news@acme.com",
"from_name": "Acme",
"scheduled_at": "2026-10-02T08:00:00.000000+00:00",
"sent_at": null,
"created_at": "2026-09-29T15:10:44.031000+00:00",
"previous_status": "scheduled"
},
"data": {
"object": {
"id": "cmp_2xLf3Gd8Wr5Mb0Tq6Yn1Kc4Hs9e",
"object": "campaign",
"name": "October product update",
"status": "queued",
"subject": "What's new in October",
"from_email": "news@acme.com",
"from_name": "Acme",
"scheduled_at": "2026-10-02T08:00:00.000000+00:00",
"sent_at": null,
"created_at": "2026-09-29T15:10:44.031000+00:00",
"previous_status": "scheduled"
}
}
}campaign.sending
Se envía cuando Emailit empieza a enviar una campaña: de inmediato, cuando la envías con Enviar o programar una campaña o desde el panel, o cuando arranca una campaña programada que estaba en cola.
Las peticiones de webhook contienen un array JSON de eventos como este; consulta Peticiones de webhook.
Campos
event_idstringEl ID del evento (evt_…). Una petición reintentada lleva el mismo ID, así que úsalo para omitir los eventos que ya hayas procesado. También puedes consultar el evento con Obtener un evento.
typestringSiempre campaign.sending.
objectobjectLa campaña que describe el evento. Sus campos se indican a continuación.
data.objectobjectEl mismo objeto otra vez, con la forma que devuelve la API de eventos en data.
Objeto de campaña
idstringEl ID de la campaña (cmp_…).
objectstringSiempre campaign.
namestringEl nombre de la campaña.
statusstringSiempre sending.
subjectstringEl asunto, o una cadena vacía si aún no se ha definido.
from_emailstringLa dirección del remitente, o una cadena vacía.
from_namestringEl nombre del remitente, o una cadena vacía.
scheduled_atstring | nullCuándo está programado el envío de la campaña, o null.
sent_atstring | nullCuándo se envió la campaña, o null.
created_atstringCuándo se creó la campaña, en formato ISO 8601 con desfase respecto a UTC.
previous_statusstringdraft si enviaste la campaña de inmediato, queued si era una campaña programada.
{
"event_id": "evt_2xLc9Rr4Tn6Wb1Qm8Ks3Vf0Hd7a",
"type": "campaign.sending",
"object": {
"id": "cmp_2xLf3Gd8Wr5Mb0Tq6Yn1Kc4Hs9e",
"object": "campaign",
"name": "October product update",
"status": "sending",
"subject": "What's new in October",
"from_email": "news@acme.com",
"from_name": "Acme",
"scheduled_at": null,
"sent_at": "2026-10-01T10:00:03.214000+00:00",
"created_at": "2026-09-29T15:10:44.031000+00:00",
"previous_status": "draft"
},
"data": {
"object": {
"id": "cmp_2xLf3Gd8Wr5Mb0Tq6Yn1Kc4Hs9e",
"object": "campaign",
"name": "October product update",
"status": "sending",
"subject": "What's new in October",
"from_email": "news@acme.com",
"from_name": "Acme",
"scheduled_at": null,
"sent_at": "2026-10-01T10:00:03.214000+00:00",
"created_at": "2026-09-29T15:10:44.031000+00:00",
"previous_status": "draft"
}
}
}campaign.sent
Se envía cuando Emailit ha creado y puesto en cola un email para cada destinatario suscrito de la campaña. Los eventos de entrega, apertura y clic de cada email llegan después, a medida que se producen. Consulta Informes de campañas.
Las peticiones de webhook contienen un array JSON de eventos como este; consulta Peticiones de webhook.
Campos
event_idstringEl ID del evento (evt_…). Una petición reintentada lleva el mismo ID, así que úsalo para omitir los eventos que ya hayas procesado. También puedes consultar el evento con Obtener un evento.
typestringSiempre campaign.sent.
objectobjectLa campaña que describe el evento. Sus campos se indican a continuación.
data.objectobjectEl mismo objeto otra vez, con la forma que devuelve la API de eventos en data.
Objeto de campaña
idstringEl ID de la campaña (cmp_…).
objectstringSiempre campaign.
namestringEl nombre de la campaña.
statusstringSiempre sent.
subjectstringEl asunto, o una cadena vacía si aún no se ha definido.
from_emailstringLa dirección del remitente, o una cadena vacía.
from_namestringEl nombre del remitente, o una cadena vacía.
scheduled_atstring | nullCuándo está programado el envío de la campaña, o null.
sent_atstring | nullCuándo se envió la campaña, o null.
created_atstringCuándo se creó la campaña, en formato ISO 8601 con desfase respecto a UTC.
previous_statusstringSiempre sending.
{
"event_id": "evt_2xLc9Rr4Tn6Wb1Qm8Ks3Vf0Hd7a",
"type": "campaign.sent",
"object": {
"id": "cmp_2xLf3Gd8Wr5Mb0Tq6Yn1Kc4Hs9e",
"object": "campaign",
"name": "October product update",
"status": "sent",
"subject": "What's new in October",
"from_email": "news@acme.com",
"from_name": "Acme",
"scheduled_at": null,
"sent_at": "2026-10-01T10:04:51.000000+00:00",
"created_at": "2026-09-29T15:10:44.031000+00:00",
"previous_status": "sending"
},
"data": {
"object": {
"id": "cmp_2xLf3Gd8Wr5Mb0Tq6Yn1Kc4Hs9e",
"object": "campaign",
"name": "October product update",
"status": "sent",
"subject": "What's new in October",
"from_email": "news@acme.com",
"from_name": "Acme",
"scheduled_at": null,
"sent_at": "2026-10-01T10:04:51.000000+00:00",
"created_at": "2026-09-29T15:10:44.031000+00:00",
"previous_status": "sending"
}
}
}campaign.canceled
Se envía cuando cancelas una campaña con Cancelar una campaña. Solo se pueden cancelar las campañas en estado draft y sending.
Las peticiones de webhook contienen un array JSON de eventos como este; consulta Peticiones de webhook.
Campos
event_idstringEl ID del evento (evt_…). Una petición reintentada lleva el mismo ID, así que úsalo para omitir los eventos que ya hayas procesado. También puedes consultar el evento con Obtener un evento.
typestringSiempre campaign.canceled.
objectobjectLa campaña que describe el evento. Sus campos se indican a continuación.
data.objectobjectEl mismo objeto otra vez, con la forma que devuelve la API de eventos en data.
Objeto de campaña
idstringEl ID de la campaña (cmp_…).
objectstringSiempre campaign.
namestringEl nombre de la campaña.
statusstringSiempre canceled.
subjectstringEl asunto, o una cadena vacía si aún no se ha definido.
from_emailstringLa dirección del remitente, o una cadena vacía.
from_namestringEl nombre del remitente, o una cadena vacía.
scheduled_atstring | nullCuándo está programado el envío de la campaña, o null.
sent_atstring | nullCuándo se envió la campaña, o null.
created_atstringCuándo se creó la campaña, en formato ISO 8601 con desfase respecto a UTC.
previous_statusstringdraft o sending.
{
"event_id": "evt_2xLc9Rr4Tn6Wb1Qm8Ks3Vf0Hd7a",
"type": "campaign.canceled",
"object": {
"id": "cmp_2xLf3Gd8Wr5Mb0Tq6Yn1Kc4Hs9e",
"object": "campaign",
"name": "October product update",
"status": "canceled",
"subject": "What's new in October",
"from_email": "news@acme.com",
"from_name": "Acme",
"scheduled_at": null,
"sent_at": null,
"created_at": "2026-09-29T15:10:44.031000+00:00",
"previous_status": "draft"
},
"data": {
"object": {
"id": "cmp_2xLf3Gd8Wr5Mb0Tq6Yn1Kc4Hs9e",
"object": "campaign",
"name": "October product update",
"status": "canceled",
"subject": "What's new in October",
"from_email": "news@acme.com",
"from_name": "Acme",
"scheduled_at": null,
"sent_at": null,
"created_at": "2026-09-29T15:10:44.031000+00:00",
"previous_status": "draft"
}
}
}campaign.archived
Se envía cuando archivas una campaña enviada en el panel. Al desarchivarla, vuelve a draft y se envía campaign.updated con previous_status establecido en archived.
Las peticiones de webhook contienen un array JSON de eventos como este; consulta Peticiones de webhook.
Campos
event_idstringEl ID del evento (evt_…). Una petición reintentada lleva el mismo ID, así que úsalo para omitir los eventos que ya hayas procesado. También puedes consultar el evento con Obtener un evento.
typestringSiempre campaign.archived.
objectobjectLa campaña que describe el evento. Sus campos se indican a continuación.
data.objectobjectEl mismo objeto otra vez, con la forma que devuelve la API de eventos en data.
Objeto de campaña
idstringEl ID de la campaña (cmp_…).
objectstringSiempre campaign.
namestringEl nombre de la campaña.
statusstringSiempre archived.
subjectstringEl asunto, o una cadena vacía si aún no se ha definido.
from_emailstringLa dirección del remitente, o una cadena vacía.
from_namestringEl nombre del remitente, o una cadena vacía.
scheduled_atstring | nullCuándo está programado el envío de la campaña, o null.
sent_atstring | nullCuándo se envió la campaña, o null.
created_atstringCuándo se creó la campaña, en formato ISO 8601 con desfase respecto a UTC.
previous_statusstringSiempre sent.
{
"event_id": "evt_2xLc9Rr4Tn6Wb1Qm8Ks3Vf0Hd7a",
"type": "campaign.archived",
"object": {
"id": "cmp_2xLf3Gd8Wr5Mb0Tq6Yn1Kc4Hs9e",
"object": "campaign",
"name": "October product update",
"status": "archived",
"subject": "What's new in October",
"from_email": "news@acme.com",
"from_name": "Acme",
"scheduled_at": null,
"sent_at": "2026-10-01T10:04:51.000000+00:00",
"created_at": "2026-09-29T15:10:44.031000+00:00",
"previous_status": "sent"
},
"data": {
"object": {
"id": "cmp_2xLf3Gd8Wr5Mb0Tq6Yn1Kc4Hs9e",
"object": "campaign",
"name": "October product update",
"status": "archived",
"subject": "What's new in October",
"from_email": "news@acme.com",
"from_name": "Acme",
"scheduled_at": null,
"sent_at": "2026-10-01T10:04:51.000000+00:00",
"created_at": "2026-09-29T15:10:44.031000+00:00",
"previous_status": "sent"
}
}
}campaign.deleted
Se envía cuando se elimina una campaña con Eliminar una campaña o en el panel. El payload es la campaña tal como estaba antes de eliminarse.
Las peticiones de webhook contienen un array JSON de eventos como este; consulta Peticiones de webhook.
Campos
event_idstringEl ID del evento (evt_…). Una petición reintentada lleva el mismo ID, así que úsalo para omitir los eventos que ya hayas procesado. También puedes consultar el evento con Obtener un evento.
typestringSiempre campaign.deleted.
objectobjectLa campaña que describe el evento. Sus campos se indican a continuación.
data.objectobjectEl mismo objeto otra vez, con la forma que devuelve la API de eventos en data.
Objeto de campaña
idstringEl ID de la campaña (cmp_…).
objectstringSiempre campaign.
namestringEl nombre de la campaña.
statusstringEl estado que tenía la campaña cuando se eliminó.
subjectstringEl asunto, o una cadena vacía si aún no se ha definido.
from_emailstringLa dirección del remitente, o una cadena vacía.
from_namestringEl nombre del remitente, o una cadena vacía.
scheduled_atstring | nullCuándo está programado el envío de la campaña, o null.
sent_atstring | nullCuándo se envió la campaña, o null.
created_atstringCuándo se creó la campaña, en formato ISO 8601 con desfase respecto a UTC.
{
"event_id": "evt_2xLc9Rr4Tn6Wb1Qm8Ks3Vf0Hd7a",
"type": "campaign.deleted",
"object": {
"id": "cmp_2xLf3Gd8Wr5Mb0Tq6Yn1Kc4Hs9e",
"object": "campaign",
"name": "October product update",
"status": "draft",
"subject": "What's new in October",
"from_email": "news@acme.com",
"from_name": "Acme",
"scheduled_at": null,
"sent_at": null,
"created_at": "2026-09-29T15:10:44.031000+00:00"
},
"data": {
"object": {
"id": "cmp_2xLf3Gd8Wr5Mb0Tq6Yn1Kc4Hs9e",
"object": "campaign",
"name": "October product update",
"status": "draft",
"subject": "What's new in October",
"from_email": "news@acme.com",
"from_name": "Acme",
"scheduled_at": null,
"sent_at": null,
"created_at": "2026-09-29T15:10:44.031000+00:00"
}
}
}