Skip to main content
SDK oficial de ReallyQuickEmails para Node.js / TypeScript. Cubre los 5 módulos: emails, leads, automations, events y senders.
Funciona en cualquier runtime con fetch nativo: Node.js 18+, Bun, Deno, Cloudflare Workers, Vercel Edge. NO corre en el browser: el constructor lanza un error si detecta window, para no exponer el API key en el bundle del cliente.

Instalación

Quickstart

1

Obtener API key

Genera una key en Configuración → Integraciones → API Keys. Para empezar usa una Test key (sk_test_*): envía emails reales sin contaminar tus métricas de producción. Ver API Keys.
2

Inicializar el cliente

Si omites apiKey, el SDK lee process.env.RQE_API_KEY. Para apuntar a otro backend (staging, self-hosted) pasa baseUrl o define RQE_BASE_URL:
3

Mandar tu primer email

El sender debe estar verificado en tu proyecto. Ver dominios.

Manejo de errores

Cada método devuelve { data, error, headers }. Siempre revisa error antes de usar datadata es null cuando hay error.

Módulos

emails — transactional + broadcast

leads — gestión de contactos

automations — disparar flujos

events — tracking custom

senders — listar / verificar remitentes (v0.1.1+)

Descubre qué senders están verificados, verifica nuevos vía magic link y consulta el estado de un remitente.
Este módulo requiere projectId en el constructor (o RQE_PROJECT_ID env). Encuéntralo en la URL del dashboard: app.reallyquickemails.com/projects/<projectId>/.... Los otros módulos (emails, leads, automations, events) no necesitan este parámetro.
Casos de uso típicos:
  • Multi-tenant — listar senders del proyecto activo y elegir según el cliente
  • Failover — si un sender falla DKIM/DMARC, fallback automático a otro verified
  • Onboarding wizard — UI muestra senders disponibles para que el cliente elija
  • Health check — poll periódico de status para detectar senders fallados

Idempotency

Para retries seguros (timeouts de red, reintentos de Lambda), pasa idempotencyKey en operaciones de escritura. Hoy soportado en emails.send y emails.sendBatch.
El backend cachea la respuesta por 24h para el par (project_id, idempotencyKey). Una segunda llamada con la misma key devuelve la respuesta cacheada sin re-procesar y agrega el header Idempotency-Replayed: true.
Más sobre el comportamiento del backend en API Keys → Idempotency.

Compatibilidad de runtime

Configuración

Soporte