Standardwerte der Organisation aktualisieren
PATCH /v1/organization-defaults · Berechtigung organizations:write
Aktualisiert die Standardwerte der Organisation für die Umgebung per JSON-Merge-Patch (application/merge-patch+json, RFC 7396). If-Match ist erforderlich: Fehlt der Header, wird 428 zurückgegeben, bei einer veralteten Version 412. Senden Sie nur die Felder, die Sie ändern. Ein Patch, der nichts ändert, schreibt nichts und behält die Version bei.
Anfrage
| Feld | Typ | Pflicht | Beschreibung |
|---|---|---|---|
If-Match |
Header | ja | Der ETag der Standardwerte, wie zuletzt gelesen. Fehlt er: 428; veraltet: 412. |
org_admin_role_id |
string | nein | Rolle der Umgebung (rol_…), die Organisations-Administratoren erhalten. Sie muss die Berechtigungen der Organisationsverwaltung enthalten (422 permission_reserved), und keine Organisation darf ohne aktiven Administrator bleiben (409 last_org_admin). Darf nicht null sein. |
default_member_role_id |
string | nein | Rolle der Umgebung (rol_…), die neue Organisationsmitglieder erhalten. Darf nicht null sein. |
max_memberships_per_user |
integer | nein | Anzahl der Organisationen, denen ein Benutzer angehören kann, 1–1000 (Standard 200). Darf nicht null sein. |
invitation_ttl_days |
integer | nein | Anzahl der Tage, die eine Einladung gültig bleibt, 1–30 (Standard 7). Darf nicht null sein. |
org_self_service_deletion_grace_days |
integer | nein | Anzahl der Tage, die eine Selbstbedienungs-Löschung einer Organisation wartet, bevor sie ausgeführt wird, 0–30 (Standard 14). Darf nicht null sein. |
on_org_delete_members |
string | nein | detach (Standard): Mitglieder verlieren nur die Mitgliedschaft. delete_exclusive_provisioned: Benutzer, die über JIT oder SCIM in diese Organisation gelangt sind und keiner anderen Organisation angehören, werden zur Löschung vorgemerkt. Darf nicht null sein. |
org_custom_roles_enabled |
boolean | nein | Erlaubt Organisations-Administratoren, eigene Rollen zu definieren (Standard false). Das Schreiben von Organisationsrollen erfordert weiterhin das Tarifmerkmal org_custom_roles. Darf nicht null sein. |
org_self_delete_enabled |
boolean | nein | Erlaubt Organisations-Administratoren, ihre Organisation selbst zu löschen (Standard false). Darf nicht null sein. |
Verhalten
- Rollenfelder müssen eine Rolle dieser Umgebung benennen; eine Organisationsrolle oder eine unbekannte Rolle liefert
422 validation_failedmitunknown_role. - Eine Änderung von
on_org_delete_membersgilt für Organisationen, die nach der Änderung gelöscht werden. - Validierungsfehler enthalten den JSON-Pointer des Feldes, zum Beispiel
/invitation_ttl_daysmit dem Codeout_of_range. - Die Änderung wird im Audit-Log der Verwaltung als
organization_defaults.updatedprotokolliert, mit den Namen der geänderten Felder, nie mit deren Werten.
Antwort
200 OK mit den aktualisierten Standardwerten und dem neuen ETag.
{
"org_admin_role_id": "rol_01j9xs0a2b4c6d8e0f2g4h6j8k",
"default_member_role_id": "rol_01j9xs0a2b4c6d8e0f2g4h6j8m",
"max_memberships_per_user": 200,
"invitation_ttl_days": 9,
"org_self_service_deletion_grace_days": 14,
"on_org_delete_members": "delete_exclusive_provisioned",
"org_custom_roles_enabled": false,
"org_self_delete_enabled": false,
"updated_at": "2026-11-03T10:00:00.123456Z",
"version": 2
}
Fehler
| HTTP | Code | Wann |
|---|---|---|
| 400 | unknown_field |
Der Patch enthält ein unbekanntes oder schreibgeschütztes Feld oder ist kein JSON-Objekt (malformed_request). |
| 403 | insufficient_permissions |
Die Anmeldedaten haben nicht die erforderliche Berechtigung. |
| 409 | last_org_admin |
Die neue Administratorrolle würde eine Organisation ohne aktiven Administrator zurücklassen. |
| 412 | precondition_failed |
If-Match stimmt nicht mit der aktuellen Version überein. |
| 415 | unsupported_media_type |
Der Inhaltstyp ist nicht application/merge-patch+json. |
| 422 | validation_failed |
Ein Wert ist ungültig (der Pointer nennt das Feld), oder ein Feld wurde auf null gesetzt (code: invalid). |
| 428 | precondition_required |
If-Match fehlt. |
Beispiel
curl -i -X PATCH "https://api.eu.keenauth.com/v1/organization-defaults" \
-H "Authorization: Bearer $KEENAUTH_SECRET_KEY" \
-H "Content-Type: application/merge-patch+json" \
-H 'If-Match: "1"' \
-d '{"on_org_delete_members":"delete_exclusive_provisioned","invitation_ttl_days":9}'
keenauth organization-defaults update --if-match '"1"' \
--on-org-delete-members delete_exclusive_provisioned --invitation-ttl-days 9