Events

POST /v1/events, POST /v1/events/bulk y GET /v1/events: tracking de eventos custom con auto-creación de leads, envío masivo de hasta 1,000 eventos y consulta con filtros y paginación.

Trackea eventos desde tu aplicación hacia ReallyQuickEmails para segmentación y automatizaciones. Los eventos se asocian automáticamente a leads — si el email no existe, RQE crea un lead nuevo con datos vacíos.

Autenticacion

text
Authorization: Bearer sk_proj_xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx

Ver más en API Pública v1.


Endpoints

POST /v1/events

Trackea un evento individual.

Parámetros del body:

CampoTipoRequeridoDescripción
emailstringEmail del lead. Se normaliza (trim + minúsculas) y se valida el formato
eventstringNombre del evento — nomenclatura libre, usa la que tenga sentido en tu app
propertiesobjectNoPropiedades custom del evento. Debe ser un objeto, no un array
timestampISO 8601NoCuándo ocurrió (default: ahora)

Request:

bash
curl -X POST https://api.reallyquickemails.com/v1/events \
  -H "Authorization: Bearer sk_proj_xxxxxxxxxxxx" \
  -H "Content-Type: application/json" \
  -d '{
    "email": "jane@acme.com",
    "event": "bought_stuff",
    "properties": {
      "item": "shoes",
      "total": 89.99,
      "category": "running"
    },
    "timestamp": "2026-04-10T15:00:00Z"
  }'

Response (201):

json
{
  "success": true,
  "event_id": "uuid",
  "recipient_id": "uuid",
  "created_lead": true
}

created_lead: true = el email no existía y se creó un lead nuevo automáticamente.

Errores:

CódigoSignificado
400Validación fallida: campo faltante, email inválido o properties no es objeto

Ver más en Leads.


POST /v1/events/bulk

Trackea hasta 1,000 eventos en una sola petición.

Parámetros del body:

CampoTipoRequeridoDescripción
eventsarrayHasta 1,000 eventos. Cada elemento acepta los mismos campos que POST /v1/events: email y event requeridos; properties y timestamp opcionales

Request:

bash
curl -X POST https://api.reallyquickemails.com/v1/events/bulk \
  -H "Authorization: Bearer sk_proj_xxxxxxxxxxxx" \
  -H "Content-Type: application/json" \
  -d '{
    "events": [
      { "email": "jane@acme.com", "event": "signed_up" },
      { "email": "mike@store.co", "event": "bought_stuff", "properties": { "total": 50 } },
      { "email": "sarah@clinic.com", "event": "appt_done", "properties": { "service": "cleaning" } }
    ]
  }'

Response (201):

json
{
  "success": true,
  "total": 3,
  "created_leads": 1
}
  • total: cantidad de eventos registrados.
  • created_leads: cantidad de leads nuevos creados automáticamente (emails únicos que no existían).

Errores:

CódigoSignificado
400Más de 1,000 eventos, o un elemento inválido. La validación es por elemento: la respuesta indica el índice (por ejemplo, events[2].email is required) y no se registra ningún evento

GET /v1/events

Lista eventos con filtros; los resultados se ordenan por timestamp descendente (más recientes primero).

Parámetros de query:

ParámetroTipoDefaultDescripción
emailstringFiltrar por email (se normaliza antes de comparar)
eventstringFiltrar por nombre de evento
sinceISO 8601Eventos desde esta fecha (inclusive)
untilISO 8601Eventos hasta esta fecha (inclusive)
pagenumber1Página
per_pagenumber50Resultados por página (mín 1, máx 200)

Request:

bash
curl "https://api.reallyquickemails.com/v1/events?email=jane@acme.com&event=bought_stuff&since=2026-04-01" \
  -H "Authorization: Bearer sk_proj_xxxxxxxxxxxx"

Response (200):

json
{
  "success": true,
  "data": [
    {
      "id": "uuid",
      "email": "jane@acme.com",
      "event": "bought_stuff",
      "properties": { "item": "shoes", "total": 89.99 },
      "timestamp": "2026-04-10T15:00:00Z",
      "recipient_id": "uuid",
      "created_at": "2026-04-10T15:00:01Z"
    }
  ],
  "pagination": {
    "page": 1,
    "per_page": 50,
    "total": 142,
    "total_pages": 3
  }
}

Ver más en SDK de Node.js.


Errores

Las respuestas de error tienen el formato { "error": "mensaje" }. Códigos comunes a todos los endpoints:

CódigoSignificado
401API key faltante o inválida
500Error interno (incluye campo adicional details)