Saltar al contenido principal
Documentación

Envía tu primer email

Tutorial de extremo a extremo: desde la creación de la cuenta hasta la entrega confirmada.

1. Crea tu cuenta

Accede a coffeemail.com.br/signup y crea tu cuenta en menos de 30 segundos. Comienzas con 3.000 emails gratis al mes en el plan Free sin tarjeta de crédito.

2. Crea una API Key

Ve a Dashboard → Claves de API → Nueva clave. Dale un nombre descriptivo (p. ej. 'Producción', 'Staging') y copia el token solo se muestra una vez.

3. Añade un dominio

En Dashboard → Dominios, añade el dominio desde el que enviarás emails. Sigue la guía Verifica tu dominio para configurar SPF, DKIM y DMARC.

Verificar dominio →

4. Envía con el SDK de Node

Usa el snippet como punto de partida. Sustituye from por una dirección de tu dominio verificado.

send-first.ts
import { CoffeeMail } from '@coffeemail/node'; const coffeemail = new CoffeeMail(process.env.COFFEEMAIL_API_KEY); const { data, error } = await coffeemail.emails.send({  from: 'noreply@seudominio.com.br',  to: 'cliente@example.com',  subject: 'Confirmação do pedido #123',  html: '<h1>Obrigado!</h1><p>Seu pedido está em processamento.</p>',}); if (error) throw error;console.log('Email enfileirado:', data.id);

5. Sigue la entrega

Cada email recibe un id único. Usa coffeemail.emails.get(id) para consultar el estado y getEvents(id) para ver el timeline completo.

track.ts
const { data } = await coffeemail.emails.get('eml_8f3a2c1b');console.log('Status:', data.status); const { data: events } = await coffeemail.emails.getEvents('eml_8f3a2c1b');console.log('Timeline:', events);

Problemas comunes

  • 401: API Key inválida o ausente asegúrate de usar cm_live_... en producción.
  • 403: El dominio del remitente no pertenece a la organización o no ha sido verificado.
  • 429: Rate limit por clave/IP respeta Retry-After e implementa backoff exponencial.
  • Entregabilidad: Email aceptado en la cola pero no llega: verifica DKIM, SPF y DMARC del dominio y comprueba blacklist en domains.getHealth.