Leitfaden · Postmark API

Wie sollte ein Produktteam die Postmark API sicher implementieren?

Implementieren Sie die Postmark API hinter einem autorisierten Server-Worker. Verifizieren Sie die Absenderdomain oder Signatur, trennen Sie jede Umgebung und jeden Workload im passenden Postmark-Server und Message Stream, speichern Sie das Server-Token in einem Secret Manager und persistieren Sie einen dauerhaften Versandjob der Anwendung, bevor Sie POST /email aufrufen. Senden Sie nur freigegebene Felder, behalten Sie die MessageID von Postmark und den exakten ErrorCode und werten Sie die Annahme durch die API als Hinweis auf die Verarbeitung, nicht als Zustellung. Sichern Sie Webhooks für Zustellungen und Bounces ab und deduplizieren Sie sie, setzen Sie Sperrlisten für Empfänger vor jedem Versand durch, gleichen Sie mehrdeutige Timeouts ab und testen Sie Rotation, Teilausfälle, Wiederholungsversuche und Export vor dem Produktivbetrieb.

Die Grenzen der Anwendung vor Postmark festlegen

Gehen Sie von einem autorisierten Geschäftsereignis aus, etwa einem Beleg, einer Verifizierung, einer angeforderten Benachrichtigung oder einer Sicherheitswarnung. Persistieren Sie einen dauerhaften Outbound-Job mit stabilem Event-Schlüssel, Mandant, Nachrichtenklasse, Template-Revision, freigegebenem Absender und Empfängern, Einwilligungs- oder Erforderlichkeitsgrundlage, aktueller Entscheidung zur Sperrliste und Anfangsstatus. Eingaben aus Browser, Mobile-App, Template und von Nutzern dürfen weder ein Postmark-Server-Token, eine beliebige From-Identität, einen Message Stream, einen Webhook, einen uneingeschränkten Empfänger noch Provider-Metadaten bestimmen. Legen Sie alle Provider-Aufrufe hinter einen einzigen serverseitigen Adapter. Trennen Sie transaktionalen Traffic von Broadcast- oder Marketing-Traffic entsprechend dem Einwilligungs- und Reputationsmodell des Produkts. Die API von Postmark transportiert eine Nachricht; sie stellt weder Mandantenberechtigung noch Einwilligung des Empfängers noch geschäftliche Idempotenz her. Beanspruchen Sie den internen Job nur einmal, protokollieren Sie jeden Versuch beim Provider und behalten Sie Provider-Kennungen als Nachweis, der mit dem Anwendungs-Event verknüpft ist, statt sie als einziges führendes System zu verwenden.

Server-Tokens mit engem operativem Geltungsbereich verwenden

Die E-Mail-API von Postmark dokumentiert den Header X-Postmark-Server-Token für den serverbezogenen API-Zugriff. Speichern Sie jedes Token in einem verwalteten Secret-Dienst und geben Sie es nur an den Worker weiter, der diesen Server und diese Umgebung braucht. Legen Sie Tokens niemals in Client-Code, Versionsverwaltung, URLs, Logs, Analytics, Templates, Screenshots, Tickets, Prompts oder Test-Fixtures ab. Trennen Sie Produktion von Entwicklung und voneinander unabhängigen Produkten, damit ein Widerruf oder Missbrauch nur begrenzte Auswirkungen hat. Üben Sie die Rotation: Erstellen Sie über die freigegebene Administration ein Ersatz-Token, aktualisieren Sie den Worker, senden Sie kontrollierte Nachrichten, bestätigen Sie API- und Event-Nachweise und widerrufen Sie dann das alte Token. Behandeln Sie unerwartete Authentifizierungsfehler als Grund zum Pausieren, nicht als Anlass, Zugangsdaten schnell wiederholt zu probieren. Schützen Sie die Dashboard-Administration mit starker Authentifizierung und Rollen. Ein Server-Token autorisiert Postmark-API-Operationen für seinen Server; die Anwendung muss weiterhin Mandant, Absender, Empfänger, Template und Nachrichtenklasse autorisieren.

Die exakte Absenderidentität verifizieren

Verwenden Sie eine Absendersignatur oder verifizierte Domain, die die Organisation kontrolliert, und bestätigen Sie die exakte From-Adresse, die jeder Stream nutzt. Erfassen Sie an rohen Beispielnachrichten die sichtbare From-Domain, den SMTP-Return-Path, die DKIM-d=-Domain samt Selektor, die Antwortadresse und den Message Stream des Versands. Veröffentlichen Sie nur die DNS-Einträge, die Postmark für die gewählte Konfiguration aktuell verlangt, nachdem Sie die bestehende Zuständigkeit für SPF, DKIM und DMARC geprüft haben. Sichern Sie vorherige Werte und Anweisungen zum Zurücksetzen. Die Verifizierung durch den Provider belegt, dass seine Konfigurationsprüfung bestanden wurde; sie belegt nicht, dass jeder Anwendungspfad diese Identität nutzt, dass DMARC-Alignment besteht, dass Empfänger eingewilligt haben oder dass Nachrichten im Posteingang landen. Halten Sie die mandantenspezifische Absenderautorisierung in der Anwendung und blockieren Sie From-Werte anderer Mandanten. Testen Sie Subdomains, Antworten, Bounces, niedrigere Umgebungen und Template-Pfade. Schwächen Sie SPF oder DMARC der Organisation nicht ab, nur damit ein Dashboard-Indikator grün wird.

Eine explizite POST-E-Mail-Anfrage aufbauen

Postmark dokumentiert POST /email mit JSON-Feldern für Absender, Empfänger, Betreff, Text- oder HTML-Inhalte, ReplyTo, Header, Tags oder Metadaten, Message Stream, Anhänge und Tracking-Optionen. Legen Sie nur die Felder offen, die das Produkt braucht. Validieren und normalisieren Sie Adressen, begrenzen Sie die Anzahl der Empfänger und Anhänge, weisen Sie Header-Injection zurück, maskieren Sie Template-Werte je nach Ausgabekontext und erzeugen Sie Text und HTML aus einer freigegebenen Revision. Legen Sie keine Geheimnisse und keine unnötigen personenbezogenen Daten in Tags, Metadaten, Headern, Betreffzeilen oder Anhangsnamen ab, da sie in der Aktivitätsansicht und in Events des Providers auftauchen können. Wählen Sie den MessageStream aus vertrauenswürdiger Konfiguration, niemals aus beliebigen Anfragedaten. Halten Sie die Provider-Payload in einem Adapter, damit Geschäftscode nicht von jedem Postmark-Feld abhängt. Speichern Sie eine Inhaltsrevision oder einen datenschutzfreundlichen Hash, wenn der Audit-Bedarf es rechtfertigt, statt den vollständigen Nachrichtentext zu loggen.

Die unmittelbare Antwort eng auslegen

Der Endpunkt von Postmark für einzelne E-Mails dokumentiert Antwortfelder wie ErrorCode, Message, MessageID, SubmittedAt und Empfängerinformationen. Persistieren Sie den exakten HTTP-Status und die strukturierte Provider-Antwort zusammen mit dem Versuch der Anwendung. Eine erfolgreiche Antwort samt MessageID zeigt, dass Postmark die API-Anfrage nach der dokumentierten Semantik angenommen hat; sie zeigt nicht, dass der Zielserver die Nachricht angenommen hat oder dass sie im Posteingang gelandet ist. Klassifizieren Sie Fehler bei Validierung, Absendersignatur, Authentifizierung, fehlerhafter Payload, Kontingent und Richtlinien, bevor Sie es erneut versuchen. Ein Anfrage-Timeout ist mehrdeutig, denn Postmark könnte die Operation angenommen haben, während der Client die Antwort verpasst hat. Belassen Sie diesen Versuch im Status „unbekannt“, suchen Sie anhand unbedenklicher Korrelationsdaten in der Provider-Aktivität oder in späteren Events und wenden Sie vor einem erneuten Senden eine Abgleichsregel an, die zur Nachrichtenklasse passt. Versprechen Sie niemals Exactly-once-Zustellung und legen Sie kein neues logisches Event an, nur weil eine HTTP-Anfrage fehlgeschlagen ist.

Wiederholungsversuche anhand von Provider- und Transportnachweisen auslegen

Wiederholen Sie nur geeignete Netzwerkfehler, Rate-Limits und Serverfehler des Providers, und zwar mit exponentiellem Backoff, Jitter, begrenzter Anzahl an Versuchen und Grenzen für das Alter in der Warteschlange. Beheben Sie permanente Fehler bei Anfrage, Absender, Empfänger, Token, Template und Richtlinien, statt sie erneut abzuspielen. Behalten Sie denselben Event-Schlüssel der Anwendung bei und protokollieren Sie verknüpfte Versuche. Prüfen Sie Sperrliste und Autorisierung unmittelbar vor jedem Wiederholungsversuch erneut, denn Empfänger- oder Geschäftsstatus können sich ändern, während die Nachricht in der Warteschlange liegt. Begrenzen Sie Parallelität und Rate pro Server, Mandant, Message Stream, Absenderdomain und Zielgruppe, damit ein Ausfall nicht die gesamte Kapazität blockiert. Brechen Sie ab bei abgelaufenen Events, widerrufener Absenderidentität, Beschwerde, Abmeldung, permanentem Empfängerfehler oder Incident-Pause. Überwachen Sie das Alter von Wiederholungsversuchen, unbekannte Ergebnisse, Antwortklassen, Token-Fehler und die Latenz des Providers. Wenn Postmark nach der Annahme bereits eigene SMTP-Wiederholungsversuche unternimmt, bauen Sie darüber keine aggressive doppelte Schleife in der Anwendung.

Webhooks für Zustellungen und Bounces absichern

Konfigurieren Sie nur die Postmark-Webhook-Typen, die die Anwendung braucht, und nutzen Sie HTTPS. Wenden Sie die aktuell dokumentierten Sicherheitskontrollen für Webhooks an, beschränken Sie den Endpunkt auf den erwarteten Server oder Stream, erzwingen Sie Grenzen für Anfragegröße und Content-Type und vertrauen Sie Nachrichtenkennungen, Empfängern, Tags, Metadaten oder Diagnosen nicht schon deshalb, weil das JSON sich parsen lässt. Persistieren oder queuen Sie das authentifizierte oder anderweitig sicher zugelassene Event, bevor Sie Erfolg zurückmelden. Deduplizieren Sie über eine stabile Event-Kennung des Providers, sofern vorhanden, oder über eine konservative Kombination, die Empfänger, Event-Typen oder Versuche nicht zusammenführen kann. Speichern Sie Zeitpunkt des Ereignisses und Zeitpunkt der Verarbeitung getrennt. Rechnen Sie mit Verzögerung, Wiederholung, Duplikaten und Zustellung in falscher Reihenfolge. Ordnen Sie MessageID und vertrauenswürdige Metadaten dem internen Mandanten und Job zu, bevor Sie einen Status ändern. Rotieren Sie Webhook-Zugangsdaten oder URLs unabhängig von API-Tokens, überwachen Sie unautorisierte Anfragen und Verzögerungen und bewahren Sie rohe Payloads nur so lange auf, wie operative und rechtliche Anforderungen es rechtfertigen.

Zustell-, Bounce- und Sperrstatus modellieren

Bilden Sie Postmarks Nachweise zu Zustellungen und Bounces auf ein internes Modell auf Empfängerebene ab und behalten Sie dabei den ursprünglichen Provider-Typ, die MessageID, den Zeitstempel, die Status- oder Bounce-Klassifizierung und die Diagnose. Annahme durch die API, Verarbeitung durch Postmark, Annahme durch den Zielserver, spätere Nichtzustellung, Ablage im Postfachordner und Interaktion sind verschiedene Status. Ein Delivered-Event spiegelt normalerweise die dokumentierte Beobachtung des Providers am Zielserver wider, keinen Einblick in den endgültigen Ordner. Temporäre Fehler können eine begrenzte Behandlung im Transport rechtfertigen; bestätigte permanente Adressfehler sollten eine auf den Empfänger bezogene Sperre auslösen. Beschwerden und Abmeldungen müssen den Schutzstatus des Empfängers aktualisieren, bevor spätere Jobs laufen. Schützen Sie die manuelle Reaktivierung durch Autorisierung, Begründung und Audit-Verlauf. Führen Sie Einwilligungs- und Sperrstatus im eigenen Produkt, damit eine Migration den Empfängerschutz nicht verliert. Schließen Sie aus Open- oder Click-Tracking nicht auf menschliches Lesen; es ist Instrumentierung für Interaktion und kann durch Datenschutztechnik verfälscht werden.

Sandbox, Produktion und Fehlerpfade testen

Nutzen Sie die dokumentierten Test- oder Sandbox-Funktionen von Postmark und dedizierte, kontrollierte Empfänger, nicht echte Kundenadressen, um deterministische Fehler auszulösen. Testen Sie gültige und ungültige Tokens, nicht autorisierte From-Identitäten, freigegebene und blockierte Empfänger, Text und HTML, Unicode, Anhänge, Minimierung von Metadaten, Message Streams, Anfrage-Timeouts vor und nach der Annahme, Rate-Limit-Antworten, Webhook-Authentifizierung, doppelte Zustellung, Events in falscher Reihenfolge, Bounce-Klassifizierungen, Sperrliste und Token-Rotation. Prüfen Sie rohe empfangene Header, DKIM- und DMARC-Alignment, Reply-To, Tracking-Konfiguration und die Korrelation über die MessageID. Bestätigen Sie, dass niedrigere Umgebungen keine Empfänger in der Produktion erreichen können. Führen Sie Export- und Migrationstests für Sperrlisten und operative Nachweise durch. Stoppen Sie den Launch bei mandantenübergreifendem Zugriff auf Absender oder Events, nicht verfügbarer Durchsetzung der Sperrliste, mehrdeutiger Zulassung von Webhooks, Geheimnissen in Logs, unbegrenzten Wiederholungsversuchen oder wenn sich der betroffene Server oder Stream nicht sicher pausieren lässt.

So passt SendHQ

SendHQ ist eine auf den Workspace beschränkte E-Mail-API für erwartete Produktkommunikation. Die öffentliche Dokumentation behandelt Versand über verifizierte Domains, eingehende E-Mails, gehostete Templates, Zustell-Events, Sperrlisten und ein Web-Dashboard.

Häufig gestellte Fragen

Welcher Endpunkt sendet eine E-Mail über Postmark?

Die aktuelle E-Mail-API von Postmark dokumentiert POST /email mit einem Server-Token und strukturierten JSON-Nachrichtenfeldern. Rufen Sie sie nur aus autorisiertem Servercode auf.

Wo sollte ein Postmark-Server-Token gespeichert werden?

Speichern Sie es in einem verwalteten serverseitigen Secret-System mit engem Umgebungs- und Workload-Bezug, protokolliertem Zugriff, getesteter Rotation und ohne Offenlegung gegenüber dem Client.

Belegt eine erfolgreiche Postmark-API-Antwort die Zustellung?

Nein. Sie dokumentiert die Annahme durch den Provider im Rahmen des unmittelbaren API-Vertrags. Annahme durch den Zielserver, Bounce, Postfachplatzierung und Interaktion erfordern spätere, passend abgegrenzte Nachweise.

Wie sollten Timeouts bei Postmark-Anfragen wiederholt werden?

Behandeln Sie einen Timeout nach möglicher Übermittlung als mehrdeutig. Gleichen Sie die Provider-Aktivität oder spätere Events ab, bevor Sie erneut senden, und verwenden Sie denselben dauerhaften Schlüssel für das Geschäftsereignis.

Sollte man bei Postmark-Webhooks von Eindeutigkeit und Reihenfolge ausgehen?

Nein. Rechnen Sie mit Verzögerung, Wiederholung, Duplikaten und Zustellung in falscher Reihenfolge. Sichern Sie die Zulassung ab, erfassen Sie Events dauerhaft, deduplizieren Sie und wenden Sie monotone Statusübergänge auf Empfängerebene an.

Sollten Postmark-Metadaten Kundengeheimnisse enthalten?

Nein. Verwenden Sie begrenzte, datenschutzfreundliche Korrelationswerte. Metadaten, Tags, Header, Aktivitätsansichten, Events, Logs und Exporte können diese Felder im Betrieb offenlegen.

Belegt ein Delivered-Event die Platzierung im Posteingang?

Nein. Es ist ein eng abgegrenzter Nachweis des Providers, in der Regel die Annahme durch den Zielserver. Filterung beim Empfänger, Postfachregeln, endgültiger Ordner und menschliche Interaktion bleiben davon getrennt.

Wo finde ich die API-Dokumentation von SendHQ?

Die öffentliche Dokumentation von SendHQ behandelt seine E-Mail-API, Versand über verifizierte Domains, eingehende E-Mails, Templates, Zustell-Events und Sperrlisten.

Quellen