> ## Documentation Index
> Fetch the complete documentation index at: https://docs.didit.me/llms.txt
> Use this file to discover all available pages before exploring further.

# E-Mail-Verifizierung: Warnungen und Risiko-Codes

> Alle Risiko-Codes der E-Mail-Verifizierung von Didit: Datenlecks, Wegwerf-E-Mails, Unzustellbarkeit, Sperrliste und OTP-Limits.

Die Funktion E-Mail-Verifizierung gibt **Warnungen** aus, sobald ein Risikosignal beim OTP-Ablauf oder der Adresse selbst ausgelöst wird: eine bekannte Datenpanne, ein Wegwerfanbieter, ein unzustellbares Postfach, ein Limit für OTP-Versuche oder ein Treffer auf Ihrer Sperrliste oder bei einer anderen genehmigten Verifizierung. Diese Seite listet alle Codes auf, was sie auslöst und wie Sie die Workflow-Reaktion konfigurieren.

## Übersicht

Warnungen sind mit der Funktion `EMAIL` gekennzeichnet. Sie erscheinen im Bericht unter `email_verifications[].warnings[]` und folgen der standardmäßigen Struktur des [Warnungsobjekts](https://docs.didit.me/de/reference/data-models.md#warnungsobjekt) (`feature`, `risk`, `additional_data`, `log_type`, `short_description`, `long_description`, `node_id`). Jede Warnung wird zudem in das sitzungsbezogene Protokoll weitergeleitet, sodass sie in der Business Console im Bereich „Email“ angezeigt wird.

Einige Warnungen lösen eine **strikte automatische Ablehnung** aus – sie setzen den Status der Funktion immer auf `Declined` und weisen `log_type: "error"` auf. Die übrigen entsprechen einer **konfigurierbaren Aktion** (`DECLINE`, `REVIEW` oder dem Standardwert `NO_ACTION`), die pro Workflow-Knoten oder pro API-Aufruf definiert wird. So kann derselbe Risiko-Code einen Workflow ablehnen, während er bei einem anderen lediglich eine Kennzeichnung auslöst. Die konfigurierte Aktion bestimmt auch den Schweregrad: `DECLINE` → `error`, `REVIEW` → `warning`, `NO_ACTION` → `information`.

## Bedingungen für automatische Ablehnung

Die folgenden Warnungen lehnen den Schritt der E-Mail-Verifizierung unabhängig von der Konfiguration immer ab:

* `EMAIL_CODE_ATTEMPTS_EXCEEDED` – der Benutzer hat das Kontingent an OTP-Versuchen aufgebraucht: standardmäßig 2 falsche Codeeingaben (`email_max_check_attempts`) oder 2 OTP-Sendungen – der initiale Versand plus ein erneuter Versand (`email_max_retries`).
* `EMAIL_IN_BLOCKLIST` – die Adresse befindet sich auf einer über die [Lists-API](https://docs.didit.me/de/management-api/lists/overview.md) verwalteten Sperrliste oder stimmte mit einer zuvor genehmigten E-Mail-Verifizierung überein, die auf die Sperrliste gesetzt wurde.
* `UNDELIVERABLE_EMAIL_DETECTED` – die Adresse kann keine E-Mails empfangen: ungültige Syntax, eine nicht existierende Domain, fehlende DNS-Einträge (MX) oder die OTP-E-Mail konnte nicht zugestellt werden. Der Schritt wird sofort mit `Declined` abgeschlossen – eine Codeüberprüfung wird gar nicht erst ausgeführt. Ausnahme: Wenn der Benutzer die Adresse selbst eingegeben hat (sie wurde bei der Sitzungserstellung nicht vorausgefüllt), führt der Versand an eine unzustellbare Adresse zu einem Inline-Fehler, sodass der Benutzer es mit einer anderen Adresse erneut versuchen kann, statt dass der Schritt abgelehnt wird.

## Konfigurierbare Risiken

Jedes der folgenden Risiken entspricht einer Einstellung (pro Workflow-Knoten oder pro Aufruf am separaten [Prüf-Endpoint](https://docs.didit.me/de/standalone-apis/email-check.md)), die Sie auf `DECLINE`, `REVIEW` oder `NO_ACTION` konfigurieren können:

| Einstellung | Risiko-Code | Standardverhalten |
| - | - | - |
| `breached_email_action` | `BREACHED_EMAIL_DETECTED` | `NO_ACTION` – Details zu Datenpannen auf `information`-Ebene anzeigen, ohne den Status zu ändern. |
| `disposable_email_action` | `DISPOSABLE_EMAIL_DETECTED` | `NO_ACTION` – Wegwerfanbieter auf `information`-Ebene kennzeichnen, ohne den Status zu ändern. |
| `duplicated_email_action` | `DUPLICATED_EMAIL` | `NO_ACTION` – Duplikat auf `information`-Ebene erfassen. Wird übersprungen, wenn die Adresse auf der Positivliste steht. |

Die Duplikaterkennung berücksichtigt nur **zuvor genehmigte** E-Mail-Verifizierungen in derselben Anwendung, gruppiert nach `vendor_data` – Verifizierungen mit demselben `vendor_data`-Wert werden als ein einziger Endbenutzer behandelt und ausgeschlossen. Wenn `vendor_data` leer bleibt, wird jede Sitzung als eigenständiger Benutzer behandelt. Befindet sich die Adresse auf Ihrer E-Mail-Positivliste, wird die Duplikat-Aktion übersprungen und stattdessen `EMAIL_IN_ALLOWLIST` ausgegeben.

## Limits für Verifizierungsversuche

Die Funktion E-Mail-Verifizierung wendet eine strikte Obergrenze für OTP-Versuche an, um Missbrauch zu verhindern:

* **Versuche zur Codeeingabe** – `email_max_check_attempts`, Standardwert **2**: Der zweite falsche (oder abgelaufene) Code schließt den Schritt ab.
* **Sendeversuche** – `email_max_retries`, standardmäßig insgesamt **2** Sendungen (die initiale Sendung plus ein erneuter Versand): Eine weitere Anfrage zum erneuten Senden schließt den Schritt ab.

Das Überschreiten einer der beiden Obergrenzen löst `EMAIL_CODE_ATTEMPTS_EXCEEDED` aus und führt zur automatischen Ablehnung. Sie können beide Obergrenzen pro Workflow-Knoten anpassen.

## Erzeugte Warnungen

| Tag | Schweregrad | Beschreibung |
| - | - | - |
| `EMAIL_CODE_ATTEMPTS_EXCEEDED` | `error` | Der Benutzer hat das Limit für die Codeeingabe oder den Versand überschritten. Wird automatisch abgelehnt. |
| `EMAIL_IN_BLOCKLIST` | `error` | Die Adresse befindet sich auf einer über die [Lists-API](https://docs.didit.me/de/management-api/lists/overview.md) erstellten Sperrliste oder stimmte mit einer auf der Sperrliste stehenden genehmigten Verifizierung überein. Wird automatisch abgelehnt. `additional_data` enthält `blocklisted_session_id`, `blocklisted_session_number` und `api_service` (alle `null` bei einem reinen Listentreffer). |
| `EMAIL_IN_ALLOWLIST` | `information` | Die Adresse stimmte mit einer über die [Lists-API](https://docs.didit.me/de/management-api/lists/overview.md) erstellten Allowlist überein, sodass die Aktion für doppelte E-Mail-Adressen übersprungen wurde. |
| `BREACHED_EMAIL_DETECTED` | Gemäß `breached_email_action` (standardmäßig `information`) | Die Adresse wurde in einer oder mehreren bekannten Datenpannen gefunden. Das Array `breaches[]` im Bericht enthält den betroffenen Dienst, das Datum und die Datenklassen. |
| `DISPOSABLE_EMAIL_DETECTED` | Gemäß `disposable_email_action` (standardmäßig `information`) | Die Domain ist ein bekannter Anbieter von Wegwerf-E-Mails, der häufig verwendet wird, um die Rückverfolgbarkeit zu umgehen. |
| `UNDELIVERABLE_EMAIL_DETECTED` | `error` | Die Adresse kann keine E-Mails empfangen (ungültige Syntax, nicht existierende Domain, fehlende MX-Einträge oder fehlgeschlagene Zustellung). Wird automatisch abgelehnt. |
| `DUPLICATED_EMAIL` | Gemäß `duplicated_email_action` (standardmäßig `information`) | Die Adresse stimmt mit einer zuvor genehmigten E-Mail-Verifizierung überein, die zu einem anderen Endbenutzer gehört (gruppiert nach `vendor_data`). `additional_data` enthält `duplicated_session_id`, `duplicated_session_number` und `api_service`. |

Pro Versuch wird maximal eine der Warnungen `EMAIL_IN_BLOCKLIST`, `DUPLICATED_EMAIL` und `EMAIL_IN_ALLOWLIST` ausgelöst – die Sperrliste hat Vorrang vor Duplikaten, welche wiederum Vorrang vor der Allowlist haben.

## Sitzungsübergreifende Übereinstimmungen

Wenn eine Adresse bei zuvor genehmigten E-Mail-Verifizierungen oder auf Ihrer Sperrliste erkannt wird, erscheinen diese Treffer auch unter `email_verifications[].matches[]` (begrenzt auf maximal 5 Einträge). Jeder Treffer enthält `session_id`, `session_number`, `vendor_data`, `verification_date`, `email`, `status`, `is_blocklisted`, `api_service` und eine `source` mit `session` (eine andere genehmigte Verifizierung) oder `list_entry` (ein Sperrlisteneintrag). Wenn sich die aktuelle Adresse auf Ihrer E-Mail-Allowlist befindet, behält Didit die Übereinstimmungsnachweise bei, gibt jedoch `EMAIL_IN_ALLOWLIST` aus, anstatt die Aktion für doppelte E-Mail-Adressen anzuwenden. Das vollständige Schema für Übereinstimmungen finden Sie im [Bericht zur E-Mail-Verifizierung](https://docs.didit.me/de/core-technology/email-verification/report-email-verification.md#sitzungsübergreifende-übereinstimmungen).

## Beispiel

```json theme={null}
{
  "warnings": [
    {
      "feature": "EMAIL",
      "risk": "EMAIL_IN_BLOCKLIST",
      "additional_data": {
        "blocklisted_session_id": null,
        "blocklisted_session_number": null,
        "api_service": null
      },
      "log_type": "error",
      "short_description": "Email in blocklist",
      "long_description": "The system detected that the email is in the blocklist, which is not allowed.",
      "node_id": "feature_email_1"
    },
    {
      "feature": "EMAIL",
      "risk": "DISPOSABLE_EMAIL_DETECTED",
      "additional_data": null,
      "log_type": "information",
      "short_description": "Disposable email detected",
      "long_description": "The system detected that the email is disposable, which is not allowed.",
      "node_id": "feature_email_1"
    }
  ]
}
```

## Warnungstypen

Jedem Risiko wird basierend auf der Konfiguration Ihrer Anwendung ein Schweregrad zugewiesen. Die Schweregrade werden in drei Kategorien unterteilt:

## Verwandte Themen

* [Übersicht über die E-Mail-Verifizierung](https://docs.didit.me/de/core-technology/email-verification/overview.md) – Funktionsweise und Preise.
* [Bericht zur E-Mail-Verifizierung](https://docs.didit.me/de/core-technology/email-verification/report-email-verification.md) – Vollständige Antwortstruktur einschließlich `lifecycle[]` und `matches[]`.
* [Datenmodelle – E-Mail-Verifizierung](https://docs.didit.me/de/reference/data-models.md#e-mail-verifizierung) – Kanonisches Schema mit Beschreibung jedes Feldes.
* [Management-API – Listen](https://docs.didit.me/de/management-api/lists/overview.md) – Verwalten der von `EMAIL_IN_BLOCKLIST` verwendeten E-Mail-Sperrliste.


This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.