Metadaten aktualisieren
PATCH /fapi/v1/me/metadata · wird vom Anmelde-Host der Umgebung aufgerufen
Wendet einen Merge-Patch nach RFC 7396 auf das user_metadata des authentifizierten Benutzers an. app_metadata kann hier nicht geschrieben werden. Das Ergebnis darf höchstens 16 KiB groß sein, eine Tiefe von 5 und höchstens 100 Schlüssel auf oberster Ebene haben. Erforderlich ist das Cookie __Host-idp_session des authentifizierten Benutzers; eine kürzliche erneute Verifizierung ist nicht nötig. Eine First-Party-Anwendung auf einem anderen Origin kann stattdessen ihr Front-API-Zugriffstoken senden (Authorization: DPoP <token> mit einem DPoP-Proof; siehe Front-API-Zugriffstoken).
Anfrage
Header:
| Header | Erforderlich | Beschreibung |
|---|---|---|
Idp-Client |
ja | Kennung des SDK. |
Origin |
ja | Muss genau https://<Anmelde-Host> sein. |
If-Match |
nein | Optional. Das ETag einer früheren Antwort (oder *); die Änderung erfolgt nur, wenn das Profil noch in dieser Version vorliegt. |
Body (application/merge-patch+json oder application/json): der Merge-Patch selbst, ein JSON-Objekt. Ein Schlüssel mit dem Wert null wird entfernt; verschachtelte Objekte werden zusammengeführt.
{
"theme": null,
"preferences": {
"newsletter": false
}
}
Antwort
200 OK mit dem aktualisierten Profil (dieselben Felder wie bei GET /fapi/v1/me) und einem neuen ETag.
Fehler
| Status | Code | Wann |
|---|---|---|
| 400 | malformed_request |
Der Body ist kein JSON-Objekt oder der Header If-Match ist fehlerhaft. |
| 401 | unauthenticated |
Kein gültiges Sitzungs-Cookie. |
| 403 | origin_not_allowed |
Origin fehlt oder ist falsch. |
| 404 | not_found |
Das Konto kann nicht gelesen werden (zum Beispiel gesperrt oder in Löschung). |
| 412 | precondition_failed |
If-Match stimmt nicht mit der aktuellen Version überein; nichts wurde geändert. |
| 413 | payload_too_large |
Der Body überschreitet 16 KiB. |
| 415 | unsupported_media_type |
Nicht unterstützter Content-Type. |
| 422 | validation_failed |
Der Patch ist leer oder das Ergebnis überschreitet ein Limit (too_large, too_many_keys; der Pointer ist die Body-Wurzel). |
| 503 | service_unavailable |
Das Benutzerverzeichnis ist vorübergehend nicht verfügbar; wiederholen Sie die Anfrage nach Retry-After Sekunden. |
Beispiel
curl -X PATCH https://example.keenauth.app/fapi/v1/me/metadata \
-H "Idp-Client: my-app/1.0.0 (node/22.0.0)" \
-H "Origin: https://example.keenauth.app" \
-H "Content-Type: application/merge-patch+json" \
-b cookies.txt \
-d '{"theme":null}'
Personenbezogene Daten
Dieser Endpunkt verarbeitet personenbezogene Daten: Profil des Endbenutzers. Personenbezogene Daten in den KeenAuth-APIs 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.