Zum Inhalt springen

SMTP-Relay

Das SMTP-Relay lässt Software, die nur SMTP spricht (CMS, Auth-Anbieter, Frameworks, Legacy-Apps), über SpacePost senden. Nachrichten durchlaufen dieselbe Pipeline wie bei der API: Domain-Prüfungen, Sperrliste, Kontingente, Tracking, Webhooks.

Einstellung Wert
Host smtp.spacepost.dev
Port 25976
Sicherheit STARTTLS, vor der Authentifizierung erforderlich
Benutzername spacepost (der Alias resend wird für Migrationen ebenfalls akzeptiert)
Passwort Dein API-Schlüssel (sp_live_...)

Verbinde dich ohne TLS und wechsle mit STARTTLS auf eine verschlüsselte Verbindung, bevor du dich anmeldest; das Zertifikat ist für smtp.spacepost.dev gültig. Implizites TLS (Port 465) wird noch nicht angeboten, wähle in den meisten Clients also “STARTTLS” oder “TLS”, nicht “SSL”.

Die From-Adresse muss zu einer verifizierten Domain gehören. Ein sending_access-Schlüssel genügt; ein auf eine Domain beschränkter Schlüssel kann nur von seiner Domain senden.

Füge diese Header zu deiner Nachricht hinzu, um Funktionen zu nutzen, für die SMTP kein Feld hat. Sie werden von SpacePost ausgewertet und nicht an den Empfänger zugestellt.

Header Beispiel Wirkung
X-SpacePost-Tags category=welcome, user_id=u_1042 Fügt Tags hinzu. Durch Kommas getrennte name=value-Paare; dieselben Zeichenregeln wie bei der API.
X-SpacePost-Scheduled-At 2026-11-01T09:00:00Z oder in 1 hour Plant die E-Mail (bis zu 30 Tage).

Andere X-*-Header, List-Unsubscribe, List-Unsubscribe-Post, In-Reply-To und References werden als eigene Header weitergegeben.

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 und Reply-To stammen aus den Headern. Envelope-Empfänger (RCPT TO), die nicht in To oder Cc stehen, werden zu Bcc.
  • HTML- und Textteile bleiben erhalten. Anhänge, einschließlich Inline-Bildern (Content-ID), werden unterstützt.
  • Eine Nachricht ohne Betreff erhält den Betreff (no subject).
  • Jeder Empfänger zählt auf dein Kontingent, wie bei der API.
Limit Wert
Nachrichtengröße 40 MB, Antwort 552
Authentifizierungsfehler 10 fehlgeschlagene Versuche pro IP in 10 Minuten, danach Sperre

SMTP-Antworten bilden die API-Fehler ab:

Situation Antwort
Tages- oder Monatskontingent überschritten 452 (vorübergehend: deine Software versucht es später erneut)
Rate Limit erreicht 421
From-Domain nicht verifiziert 553
Eingeschränkter Schlüssel, pausiertes Team, Validierungsfehler, Inhalt blockiert 550
Vorübergehendes Problem auf unserer Seite 451