Zum Inhalt springen
Doku

Referenz

E-Mail-Sendungen mit dem Header Idempotency-Key sicher wiederholen. Welche Endpunkte ihn unterstützen, Format und Geltungsbereich des Schlüssels, das 24-Stunden-Fenster für Wiederholungen und die zugehörigen Fehler.

Aktualisiert am 1. Okt. 2026

Bei Netzwerkfehlern und Timeouts wissen Sie nicht, ob eine Sendung durchgegangen ist. Mit einem Idempotenzschlüssel lässt sich die Sendung gefahrlos wiederholen: Hat Emailit bereits eine Anfrage mit demselben Schlüssel angenommen, gibt es die ursprüngliche Antwort zurück, statt die E-Mail erneut zu senden. Diese Seite ist die Referenz für den Header Idempotency-Key. Eine Schritt-für-Schritt-Anleitung finden Sie unter Idempotente Anfragen.

Unterstützte Endpunkte

Endpunkt
POST /emails E-Mail senden
POST /emails/{id}/forward E-Mail weiterleiten

Andere Endpunkte ignorieren den Header. Das Erstellen einer Domain, eines API-Schlüssels, einer Kontaktliste oder eines Kontakts lässt sich ohnehin gefahrlos wiederholen: Eine zweite Anfrage mit demselben Namen oder derselben E-Mail-Adresse gibt 409 und das vorhandene Objekt in existing zurück, statt ein Duplikat zu erstellen.

Schlüssel senden

Fügen Sie einen Header Idempotency-Key hinzu, dessen Wert für die zu sendende E-Mail eindeutig ist, etwa eine UUID oder eine ID aus Ihrem eigenen System:

Terminal
curl https://api.emailit.com/v2/emails \
  -H "Authorization: Bearer $EMAILIT_API_KEY" \
  -H "Content-Type: application/json" \
  -H "Idempotency-Key: order-1042-confirmation" \
  -d '{
    "from": "Acme <orders@acme.com>",
    "to": "ada@example.com",
    "subject": "Your order #1042",
    "html": "<p>Thanks for your order.</p>"
  }'

Erzeugen Sie den Schlüssel einmal pro E-Mail, vor dem ersten Versuch, und senden Sie bei jeder Wiederholung dieser E-Mail denselben Schlüssel.

So funktionieren Schlüssel

Regel Details
Format 1 bis 256 Zeichen. Nur Buchstaben, Ziffern, Bindestriche (-) und Unterstriche (_).
Geltungsbereich Pro Workspace. Schlüssel aus verschiedenen Workspaces kollidieren nie, aber beide Endpunkte teilen sich einen Namensraum. Verwenden Sie den Schlüssel einer Sendung deshalb nicht für eine Weiterleitung.
Lebensdauer Die Antwort auf eine erfolgreiche Anfrage wird nach deren Abschluss 24 Stunden lang gespeichert.
Wiederholte Anfragen Eine Anfrage mit einem gespeicherten Schlüssel gibt die gespeicherte Antwort mit dem Status 200 zurück. Es wird keine E-Mail gesendet, es werden keine Credits verbraucht, und die Versandlimits werden nicht belastet.
Abgleich Nur der Schlüssel wird verglichen, nicht der Anfrage-Body. Eine andere Anfrage mit einem bereits verwendeten Schlüssel gibt die erste Antwort zurück.
Fehlschläge Schlägt eine Anfrage mit einem beliebigen Fehler fehl, wird nichts gespeichert und der Schlüssel wird freigegeben. Sie können die Anfrage also korrigieren und mit demselben Schlüssel wiederholen.
Nebenläufigkeit Solange eine Anfrage mit einem Schlüssel noch läuft, gibt eine weitere Anfrage mit demselben Schlüssel 409 zurück. Die Sperre wird freigegeben, wenn die erste Anfrage abgeschlossen ist, und läuft nach höchstens 15 Minuten ab.

Eine wiederholte Anfrage durchläuft trotzdem die Authentifizierung und die Prüfung der Versandlimits pro Sekunde und pro Tag. Sie kann also 401 oder 429 zurückgeben. Weiterleitungen zählen außerdem zum stündlichen Limit für Weiterleitungen, auch wenn die gespeicherte Antwort zurückgegeben wird.

Fehler

JSON
{
  "error": "Invalid Idempotency-Key"
}
Status error Ursache Was zu tun ist
400 Invalid Idempotency-Key Der Schlüssel ist leer, länger als 256 Zeichen oder enthält andere Zeichen als Buchstaben, Ziffern, - und _. Verwenden Sie eine UUID oder einen anderen sicheren Wert.
409 Idempotency key in progress Eine Anfrage mit demselben Schlüssel wird noch verarbeitet. Warten Sie eine Sekunde und wiederholen Sie die Anfrage mit demselben Schlüssel. Sobald die erste Anfrage abgeschlossen ist, erhalten Sie die gespeicherte Antwort.
503 Idempotency unavailable Emailit kann den Schlüssel gerade nicht prüfen. Die Anfrage wurde nicht verarbeitet. Wiederholen Sie die Anfrage nach kurzer Wartezeit mit demselben Schlüssel.

Emailit führt eine Anfrage nie ohne Idempotenzprüfung aus: Lässt sich der Schlüssel nicht prüfen, schlägt die Anfrage mit 503 fehl, statt ein Duplikat zu riskieren.

Gute Schlüssel wählen

  • Leiten Sie den Schlüssel von dem ab, worüber Sie benachrichtigen, etwa order-1042-confirmation oder password-reset-<token-id>. So verwendet auch eine Wiederholung durch einen anderen Worker oder nach einem Neustart denselben Schlüssel.
  • Verwenden Sie nur dann eine neue UUID, wenn die E-Mail keine natürliche ID hat, und speichern Sie sie vor dem ersten Versuch zusammen mit dem Job.
  • Verwenden Sie einen Schlüssel innerhalb von 24 Stunden nicht für eine andere E-Mail. Sie würden die Antwort der ersten E-Mail erhalten, und die zweite E-Mail würde nicht gesendet.
Eine Anleitung für sicher wiederholbares Senden.
Backoff und Wiederholung mit Beispielcode.

War diese Seite hilfreich?

Danke für Ihr Feedback.

Danke, wir lesen jede Nachricht.