
# E-Mail-Vorlagen auflisten

`GET /v1/email-templates` · Berechtigung `email-templates:read`

Gibt jede anpassbare E-Mail-Familie in Planreihenfolge zurück, mit den Sprachen, für die Versionen existieren. Die Liste ist fest und nicht paginiert (`list_metadata`-Cursor sind immer `null`). Das Lesen funktioniert in jedem Plan.

Jede Familie zeigt, was eine Vorlage enthalten muss:

- `security`: Die Plattform fügt einen Sicherheitsblock hinzu, den die Vorlage nicht entfernen kann.
- `requires`: Der Wert, den die Nachricht sowohl im HTML- als auch im Klartextteil anzeigen muss: `code`, `link`, `code_or_link` oder `none`.
- `available`: `false` bedeutet, dass die Familie in diesem Release noch keine Systemvorlage hat; Entwürfe werden abgelehnt.
- `variables`: Die Liquid-Variablen, die die Vorlage verwenden darf.

## Antwort

`200 OK`

```json
{
  "data": [
    {
      "family": "verify_email",
      "security": false,
      "requires": "code_or_link",
      "available": true,
      "variables": ["application.name", "code", "dir", "environment.display_name", "expires_in_minutes", "link", "locale", "support_url", "user.email"],
      "locales": [{"locale": "en", "latest_version": 3, "published_version": 2}]
    }
  ],
  "list_metadata": {"before": null, "after": null}
}
```

## Fehler

| HTTP | code | Wann |
|---|---|---|
| 401 | `unauthenticated` | Die Anmeldeinformation fehlt, ist ungültig oder widerrufen. |
| 403 | `insufficient_permissions` | Der Anmeldeinformation fehlt die erforderliche Berechtigung. |
| 429 | `rate_limited` | Das Ratenlimit wurde überschritten; wiederholen Sie nach der Zeit aus `Retry-After`. |
| 503 | `service_unavailable` | Eine Abhängigkeit ist vorübergehend nicht verfügbar; wiederholen Sie nach der Zeit aus `Retry-After`. |

## Beispiel

```bash
curl https://api.eu.keenauth.com/v1/email-templates \
  -H "Authorization: Bearer $KEENAUTH_SECRET_KEY"
```

CLI: `keenauth email-templates list`
