Actividad de rebotes
GET
/v1/activities/bouncedDescripción
Lista paginada de emails que no pudieron ser entregados al destinatario.
Autenticación
Authorizationbearer tokenheaderobligatorio- API key con scope
mail:read. Formato:Bearer FD.<key_id>.<token>. X-Instance-Slugstringheaderobligatorio
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.
pageinteger- Página, 1-indexed. Default: 1.
page_sizeinteger- Tamaño de página, 1–100. Default: 20.
msg_idstring | null- Filtra por message ID.
mail_idstring | null- Filtra por mail ID.
sender_idinteger | null- Filtra por
iddel remitente. recipientstring | null- Filtra por email del destinatario - coincidencia exacta por default;
recipient_operator=starts_withla cambia a prefijo. Ver Filtros de texto. recipient_operatorstring, enum: `eq | starts_with`- Operador de coincidencia para
recipient:eq(exacto, default) ostarts_with(el destinatario empieza con el valor dado). Se ignora sirecipientno 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 - coincidencia parcial, insensible a mayúsculas. Ver Filtros de texto.
Response
200 OKDevuelve una página de resultados:
data con los elementos y pagination para pedir la siguiente. Cada elemento tiene los campos que siguen.mail_idstringobligatorio- Identificador del mail.
msg_idstring | null- Identificador del mensaje lógico.
tostringobligatorio- Email del destinatario.
subjectstringobligatorio- Asunto.
bounced_atstring (date-time)obligatorio- Fecha y hora del rebote.
senderstring | null- Email del remitente.
nullcuando el mail no tiene un remitente registrado. bounce_reason_namestring | null- Nombre del motivo de rebote reportado por el servidor remoto.
bounce_reason_typestring | null- Categoría del motivo (ej. transitorio vs. permanente, según el clasificador del servidor remoto).
is_hard_bounceboolean | nulltruesi el rebote es permanente (dirección inexistente o bloqueada);falsesi es transitorio.
Notas
- Para exportar el listado completo en CSV/JSON, ver
GET .../bounced/export— su columnais_hard_bounceno está incluida en el export.
Request
curl -X GET "https://$API_HOST/v1/activities/bounced?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...",
"to": "alice@example.com",
"subject": "Hello",
"bounced_at": "2026-05-08T14:23:00Z",
"sender": "newsletter@example.com",
"bounce_reason_name": "mailbox_full",
"bounce_reason_type": "transient",
"is_hard_bounce": false
}
],
"pagination": {
"page": 1,
"page_size": 20,
"has_more": false,
"total_items": 1,
"total_pages": 1
}
}