Ir al contenido

Relé SMTP

El relé SMTP permite que el software que solo habla SMTP (CMS, proveedores de autenticación, frameworks, apps heredadas) envíe a través de SpacePost. Los mensajes pasan por el mismo flujo que la API: comprobaciones de dominio, lista de supresión, cuotas, seguimiento y webhooks.

Ajuste Valor
Host smtp.spacepost.dev
Puerto 25976
Seguridad STARTTLS, obligatorio antes de autenticarse
Usuario spacepost (el alias resend también se acepta, para migraciones)
Contraseña Tu clave de API (sp_live_...)

Conéctate sin TLS y actualiza la conexión con STARTTLS antes de iniciar sesión; el certificado es válido para smtp.spacepost.dev. Todavía no se ofrece TLS implícito (puerto 465), así que en la mayoría de los clientes elige “STARTTLS” o “TLS”, no “SSL”.

La dirección From debe pertenecer a un dominio verificado. Basta con una clave sending_access; una clave restringida a un dominio solo puede enviar desde ese dominio.

Añade estos encabezados a tu mensaje para usar funciones para las que SMTP no tiene un campo. SpacePost los consume y no se entregan al destinatario.

Encabezado Ejemplo Efecto
X-SpacePost-Tags category=welcome, user_id=u_1042 Añade etiquetas. Pares name=value separados por comas; mismas reglas de caracteres que en la API.
X-SpacePost-Scheduled-At 2026-11-01T09:00:00Z o in 1 hour Programa el correo (hasta 30 días).

Los demás encabezados X-*, List-Unsubscribe, List-Unsubscribe-Post, In-Reply-To y References se reenvían como encabezados personalizados.

import nodemailer from "nodemailer";
const transport = nodemailer.createTransport({
host: "smtp.spacepost.dev",
port: 25976,
secure: false, // STARTTLS: the connection is upgraded to TLS before login
requireTLS: true,
auth: { user: "spacepost", pass: process.env.SPACEPOST_API_KEY },
});
await transport.sendMail({
from: "Acme <hello@acme.com>",
to: "user@example.com",
subject: "Hello over SMTP",
html: "<p>It works.</p>",
headers: { "X-SpacePost-Tags": "category=welcome", "X-SpacePost-Scheduled-At": "in 10 minutes" },
});
  • To, Cc y Reply-To se toman de los encabezados. Los destinatarios del sobre (RCPT TO) que no están en To ni en Cc pasan a ser Bcc.
  • Se conservan las partes HTML y de texto. Se admiten los archivos adjuntos, incluidas las imágenes en línea (Content-ID).
  • Un mensaje sin asunto recibe el asunto (no subject).
  • Cada destinatario cuenta para tu cuota, igual que con la API.
Límite Valor
Tamaño del mensaje 40 MB, respuesta 552
Fallos de autenticación 10 intentos fallidos por IP en 10 minutos; después se bloquea

Las respuestas SMTP se corresponden con los errores de la API:

Situación Respuesta
Cuota diaria o mensual superada 452 (temporal: tu software reintentará más tarde)
Límite de tasa alcanzado 421
Dominio de From no verificado 553
Clave restringida, equipo pausado, errores de validación, contenido bloqueado 550
Problema temporal de nuestra parte 451