
# Bestätigungs-E-Mail an eine E-Mail-Adresse senden

`POST /v1/users/{user_id}/emails/{email_id}:send-verification` · Berechtigung `users:write`

Sendet die Bestätigungs-E-Mail an eine E-Mail-Zeile des Benutzers. `email_id` ist die interne UUID (Kleinbuchstaben, mit Bindestrichen). Die Antwort enthält das Ablaufdatum der Bestätigungsanfrage; ein Code oder Link wird nicht zurückgegeben. Der optionale Anfragetext wählt nur die Sprache der E-Mail aus.

## Anfrage

| Parameter | In | Erforderlich | Beschreibung |
|---|---|---|---|
| `user_id` | path | ja | Benutzer-ID mit dem Präfix `usr_`. |
| `email_id` | path | ja | ID der E-Mail-Zeile (interne UUID, Kleinbuchstaben, mit Bindestrichen). |

Optionaler Anfragetext:

| Feld | Typ | Erforderlich | Beschreibung |
|---|---|---|---|
| `locale` | string | nein | BCP-47-Sprachkennung der E-Mail, zum Beispiel `tr` oder `pt-BR`. Standard ist die Sprache des Benutzers oder der Umgebung. |

## Antwort

`200 OK`. `expires_at` gibt an, wann die Bestätigungsanfrage abläuft.

```json
{
  "expires_at": "2026-01-16T09:30:00Z"
}
```

## Fehler

Jeder Fehler ist ein `application/problem+json`-Body mit einem stabilen `code`.

| HTTP | `code` | Wann |
|---|---|---|
| 400 | `malformed_request`, `unknown_field` | Der Body ist kein gültiges JSON oder enthält ein unbekanntes Feld. |
| 409 | `conflict` | Die E-Mail-Adresse ist bereits bestätigt. |
| 415 | `unsupported_media_type` | Ein Body wurde ohne `Content-Type: application/json` gesendet. |
| 422 | `validation_failed` | `locale` ist keine gültige BCP-47-Sprachkennung oder ein Feld hat den falschen Typ. |
| 404 | `not_found` | Der Benutzer oder die E-Mail-Zeile existiert in dieser Umgebung nicht, die E-Mail gehört nicht zu diesem Benutzer, oder eine ID ist fehlerhaft. |
| 401 | `unauthenticated` | Der API-Schlüssel fehlt, ist ungültig oder wurde widerrufen. |
| 403 | `insufficient_permissions` | Der Schlüssel besitzt nicht die Berechtigung `users:write`. |
| 429 | `rate_limited` | Das API-Ratenlimit oder das Limit für den E-Mail-Versand pro Benutzer wurde überschritten; beachten Sie `Retry-After`. |
| 503 | `service_unavailable` | Eine Abhängigkeit ist vorübergehend nicht verfügbar; versuchen Sie es später erneut. |

## Beispiel

```bash
curl -X POST https://api.eu.keenauth.com/v1/users/usr_0a1b2c3d4e5f6g7h8j9k0m1n2p/emails/0191f0a0-3333-7444-8555-666666666666:send-verification \
  -H "Authorization: Bearer $KEENAUTH_SECRET_KEY" \
  -H "Idempotency-Key: $(uuidgen)" \
  -H "Content-Type: application/json" \
  -d '{"locale": "en"}'
```

## Personenbezogene Daten

Dieser Endpunkt verarbeitet personenbezogene Daten: Endnutzerprofil. [Personenbezogene Daten in den KeenAuth-APIs](/docs/policies/personal-data) beschreibt, welche Daten gespeichert werden, wie lange sie aufbewahrt werden und wie sie gelöscht werden. Übermitteln Sie in keinem Feld besondere Kategorien personenbezogener Daten (Gesundheit, biometrische Daten, Religion, politische Meinungen, sexuelle Orientierung).
