# Warum werden meine E-Mails doppelt gesendet?

> Finden Sie heraus, woher doppelte E-Mails kommen, und verhindern Sie sie mit dem Header Idempotency-Key, der wiederholte API-Anfragen sicher macht.

Dieser Artikel hilft, wenn Empfänger dieselbe E-Mail zwei- oder mehrmals erhalten. Emailit sendet jede angenommene Anfrage genau einmal. Duplikate bedeuten daher fast immer, dass die Anfrage Emailit mehr als einmal erreicht hat.

## Symptome

- Ein Empfänger meldet zwei identische E-Mails.
- **Email API → Emails** zeigt zwei oder mehr E-Mails mit demselben Empfänger und Betreff, jede mit eigener `em_…`-ID, im Abstand von Sekunden oder Minuten erstellt.
- **Email API → Logs** zeigt mehr als eine Anfrage `POST /v2/emails` für dieselbe Nachricht.

## Ursache

Häufige Quellen wiederholter Anfragen:

- **Wiederholungen nach einer Zeitüberschreitung.** Ihr HTTP-Client oder Ihre Job-Warteschlange ist in eine Zeitüberschreitung gelaufen und hat es erneut versucht, obwohl die erste Anfrage bereits angenommen war.
- **Job-Warteschlangen mit At-least-once-Zustellung.** Ein Worker ist nach dem Senden abgestürzt, aber bevor er den Job als erledigt markiert hat, sodass der Job erneut lief.
- **Durch Webhooks ausgelöste Sendungen.** Ihr Endpunkt sendet eine E-Mail, wenn er ein Event erhält. Hat er zu langsam geantwortet, hat Emailit den Webhook wiederholt und Ihr Code hat erneut gesendet.
- **Zwei Integrationen.** Zum Beispiel senden ein WordPress-SMTP-Plugin und Ihre App dieselbe Benachrichtigung, oder eine Automatisierung und Ihr Code senden beide eine Willkommens-E-Mail.
- **Doppeltes Absenden** eines Formulars oder über eine Schaltfläche.

Emailit entfernt doppelte Adressen innerhalb einer Anfrage bereits über `to`, `cc` und `bcc` hinweg, ohne Beachtung der Groß-/Kleinschreibung. Eine einzelne Anfrage sendet nie zweimal an dieselbe Person.

## Lösung

1. **Quelle finden.** Filtern Sie unter **Email API → Emails** nach dem Empfänger und vergleichen Sie die Duplikate. Prüfen Sie API-Schlüssel und Zeitstempel und ordnen Sie sie dann den Anfragen unter **Email API → Logs** zu. Anfragen von verschiedenen Schlüsseln deuten meist auf zwei Integrationen hin, Anfragen vom selben Schlüssel auf Wiederholungen.

2. **Header `Idempotency-Key` hinzufügen.** Erzeugen Sie einen Schlüssel einmal pro logischer E-Mail, zum Beispiel aus Ihrer Bestell- oder Event-ID, und verwenden Sie ihn bei jeder Wiederholung erneut:

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

   Schlüssel bestehen aus 1 bis 256 Zeichen aus Buchstaben, Ziffern, `-` und `_` und gelten nur für Ihren Workspace.

3. **Antworten verarbeiten.** 24 Stunden lang gibt eine Wiederholung mit demselben Schlüssel die ursprüngliche Antwort zurück, ohne erneut zu senden oder zu berechnen. Eine Wiederholung, die eintrifft, während die erste Anfrage noch läuft, erhält `409 Idempotency key in progress`: Warten Sie und versuchen Sie es mit demselben Schlüssel erneut. Fehlgeschlagene Anfragen werden nicht gespeichert, Sie können sie also mit demselben Schlüssel wiederholen.

4. **Webhook-Handler deduplizieren.** Speichern Sie jede verarbeitete `event_id` und überspringen Sie Events, die Sie bereits verarbeitet haben.

5. **Zweite Integration entfernen.** Stellen Sie sicher, dass nur ein System jede Art von Nachricht sendet.

Idempotenzschlüssel funktionieren mit [E-Mail senden](/de/docs/api-reference/emails/send/) und [E-Mail weiterleiten](/de/docs/api-reference/emails/forward/). SMTP hat kein Gegenstück. Deduplizieren Sie daher in Ihrer App, bevor Sie E-Mails an das Relay übergeben. Details finden Sie unter [Idempotenz](/de/docs/email-api/idempotency/).

## Weiterhin Probleme?

[Kontaktieren Sie den Support](/contact/) oder fragen Sie auf [Discord](https://discord.emailit.com) und nennen Sie die IDs von zwei doppelten E-Mails.

---
Quelle: https://emailit.com/de/docs/kb/duplicate-emails-sent/
