
# Verknüpfte Identitäten eines Benutzers auflisten

`GET /v1/users/{user_id}/identities` · Berechtigung `users:read`

Listet die verknüpften Identitäten eines Benutzers (Passwort, Social, SAML, OIDC und Legacy) auf einer Seite auf, sortiert nach Erstellungszeitpunkt. Die Anzahl der Identitäten pro Benutzer ist begrenzt, daher gibt es keine `limit`-, `after`-, `before`- oder `order`-Parameter, und `list_metadata` ist immer mit `null` belegt. Der externe Subject-Wert einer Identität (OIDC `sub`, SAML NameID), die vom Identitätsanbieter gemeldete E-Mail-Adresse und die Referenz auf die Anmeldedaten werden nie zurückgegeben. Passkeys und Einmalcode-Verfahren sind Authentifikatoren und werden über `GET /v1/users/{user_id}/authenticators` aufgelistet.

## Anfrage

| Parameter | In | Erforderlich | Beschreibung |
|---|---|---|---|
| `user_id` | path | ja | Benutzer-ID mit Präfix `usr_`. |

## Antwort

`200 OK`. `data` enthält die Identitäten, sortiert nach Erstellungszeitpunkt; `list_metadata` ist immer mit `null` belegt, weil die Liste nicht paginiert ist. `connection_id` ist für `password` `null`; `provider` ist nur für `social` gesetzt.

Identitäts-IDs tragen das Präfix `idn_`.

```json
{
  "data": [
    {
      "id": "idn_0a1b2c3d4e5f6g7h8j9k0m1n2q",
      "type": "password",
      "connection_id": null,
      "provider": null,
      "linked_via": "primary",
      "created_at": "2026-01-15T09:30:00Z"
    },
    {
      "id": "idn_0a1b2c3d4e5f6g7h8j9k0m1n2r",
      "type": "social",
      "connection_id": "conn_0a1b2c3d4e5f6g7h8j9k0m1n2s",
      "provider": "google",
      "linked_via": "manual_link",
      "created_at": "2026-02-01T08:00:00Z"
    }
  ],
  "list_metadata": {
    "before": null,
    "after": null
  }
}
```

`type`: `password`, `social`, `saml`, `oidc`, `legacy` · `linked_via`: `primary`, `auto_verified_email`, `user_confirmed`, `admin_api`, `import`, `jit`, `auto_domain`, `invite_proof`, `manual_link`, `scim_match`

## Fehler

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

| HTTP | `code` | Wann |
|---|---|---|
| 404 | `not_found` | Der Benutzer existiert in dieser Umgebung nicht (oder die ID ist fehlerhaft). |
| 401 | `unauthenticated` | Der API-Schlüssel fehlt, ist ungültig oder wurde widerrufen. |
| 403 | `insufficient_permissions` | Der Schlüssel hat nicht die Berechtigung `users:read`. |
| 429 | `rate_limited` | Das Ratenlimit 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 https://api.eu.keenauth.com/v1/users/usr_0a1b2c3d4e5f6g7h8j9k0m1n2p/identities \
  -H "Authorization: Bearer $KEENAUTH_SECRET_KEY"
```

## Personenbezogene Daten

Dieser Endpunkt verarbeitet personenbezogene Daten: verknüpfte Identitäten. [Personenbezogene Daten in den KeenAuth-APIs](/docs/policies/personal-data) beschreibt, was gespeichert wird, wie lange es aufbewahrt wird und wie es gelöscht wird. Übermitteln Sie keine besonderen Kategorien personenbezogener Daten (Gesundheit, biometrische Daten, Religion, politische Meinungen, sexuelle Orientierung) in irgendeinem Feld.
