Saltar al contenido principal

Actividad de envíos

GET/v1/activities/sent

Para desarrolladores

Descripción​

Lista los correos enviados, con sus datos de entrega e interacción. Devuelve la misma información y acepta los mismos filtros que GET /v1/mails, y además permite buscar al destinatario por prefijo con recipient_operator.

Guía relacionada​

Autenticación​

Authorizationbearer tokenheaderobligatorio
API key con scope mail:read. Formato: Bearer <API_KEY>.
X-Instance-Slugstringheaderobligatorio
Identificador de su instancia. Ver Autenticación.

Request​

Query params:

start_datestring (date, `YYYY-MM-DD`) | null
Fecha local de inicio.
end_datestring (date, `YYYY-MM-DD`) | null
Fecha local de fin.
tzstring (zona IANA) | null
Zona para interpretar las fechas. Si se omite, se usa la zona de la instancia o, si no tiene una, UTC.
pageinteger
Número de página; la primera es la 1. Default: 1.
page_sizeinteger
Tamaño de página, 1–100. Default: 20.
msg_idstring | null
Filtra por identificador de mensaje.
mail_idstring | null
Filtra por identificador de correo.
sender_idinteger | null
Filtra por id del remitente.
recipientstring | null
Filtra por email del destinatario, con coincidencia exacta por default. Con recipient_operator=starts_with, la coincidencia pasa a ser por prefijo (ver Filtros de texto).
recipient_operatorstring, enum: `eq | starts_with`
Operador de coincidencia para recipient: eq (exacto, default) o starts_with (el destinatario empieza con el valor dado). Se ignora si recipient no está presente.
custom_msg_idstring | null
Filtra por identificador de mensaje personalizado.
custom_group_codestring | null
Filtra por código de grupo personalizado.
subjectstring | null
Filtra por asunto, con coincidencia parcial e insensible a mayúsculas (ver Filtros de texto).
statusinteger | null
Filtra por estado de entrega (1–7: 1=received, 2=queued, 3=sent, 4=dropped, 5=deferred, 6=bounced, 7=onhold).
openedstring, enum: `all | opened | unopened` | null
opened: solo con aperturas. unopened: entregados sin aperturas. Con all, o si se omite, no se filtra.

Response​

200 OKEnvelope {data, pagination}. Cada elemento de data tiene la misma forma que en `GET /v1/mails`. pagination.total_items puede venir null; has_more siempre está presente.
mail_idstringsiempre presente
Identificador del correo.
msg_idstring | null
Identificador del mensaje. Lo comparten todos los destinatarios de una misma llamada a `POST /v1/mails/send`.
tostringsiempre presente
Email del destinatario, uno por fila (ver Descripción).
subjectstringsiempre presente
Asunto.
senderstring | null
Email del remitente. null cuando el correo no tiene un remitente registrado.
statusinteger | null
Estado de entrega: 1=received, 2=queued, 3=sent, 4=dropped, 5=deferred, 6=bounced, 7=onhold.
opensintegersiempre presente
Cantidad de aperturas registradas.
clicksintegersiempre presente
Cantidad de clicks registrados.
received_atstring (date-time) | null
Fecha y hora de recepción.
queued_atstring (date-time) | null
Fecha y hora de encolado en el MTA.
sent_atstring (date-time) | null
Fecha y hora de entrega al MX del destinatario.
schedule_atstring (date-time) | null
Siempre es null: el envío programado no está disponible.
delaynumber | null
Demora de entrega en segundos, desde la recepción hasta sent_at.
custom_msg_idstring | null
Identificador personalizado del mensaje.
custom_group_codestring | null
Código de grupo personalizado.
Notas
Request
curl -X GET "https://$API_HOST/v1/activities/sent?start_date=2026-07-01&end_date=2026-07-31" \
-H "Authorization: Bearer $API_KEY" \
-H "X-Instance-Slug: $SLUG"
Response
{
"data": [
{
"mail_id": "0190...",
"msg_id": "0190...",
"subject": "Hello from Fidelizador",
"sender": "[email protected]",
"status": 3,
"opens": 1,
"clicks": 0,
"received_at": "2026-05-08T14:22:31Z",
"queued_at": "2026-05-08T14:22:32Z",
"sent_at": "2026-05-08T14:22:33Z",
"schedule_at": null,
"delay": 2.4,
"custom_msg_id": null,
"custom_group_code": null
}
],
"pagination": {
"page": 1,
"page_size": 20,
"has_more": false,
"total_items": 1,
"total_pages": 1
}
}