Berechtigungen benutzerdefinierter Organisationsrollen ersetzen
PUT /v1/org-custom-role-permissions · Berechtigung roles:write
Ersetzt die Liste durch permission_ids (der vollständige Satz, höchstens 1000). Das Hinzufügen einer Berechtigung erfordert das Tarif-Feature org_custom_roles (Business); das Entfernen von Berechtigungen ist immer erlaubt, und eine entfernte Berechtigung wird im selben Schreibvorgang auch jeder Organisationsrolle entzogen. Einige Systemberechtigungen können Organisationsrollen nie gewährt werden (permission_not_allowed). Die Änderung wird als org_custom_role_permissions.updated protokolliert; jede Organisationsrolle, die eine Berechtigung verliert, wird als role.updated protokolliert.
Anfrage
| Feld | Typ | Pflicht | Beschreibung |
|---|---|---|---|
permission_ids |
string[] | ja | Der vollständige Satz der Berechtigungs-IDs (perm_…), höchstens 1000. |
Antwort
200 OK mit der neuen Liste.
{
"permission_ids": [
"perm_01j9xs0a2b4c6d8e0f2g4h6j8k",
"perm_01j9xs0a2b4c6d8e0f2g4h6j8m"
]
}
Fehler
| HTTP | code | Wann |
|---|---|---|
| 403 | plan_feature_unavailable |
Der Satz fügt eine Berechtigung hinzu und der Tarif enthält org_custom_roles nicht. |
| 422 | permission_not_allowed |
Eine Berechtigung kann Organisationsrollen nie gewährt werden. |
| 422 | validation_failed |
permission_ids fehlt, enthält eine fehlerhafte oder unbekannte ID, ein Duplikat oder mehr als 1000 Einträge. |
| 401 | unauthenticated |
Der Berechtigungsnachweis fehlt, ist ungültig oder widerrufen. |
| 403 | insufficient_permissions |
Dem Berechtigungsnachweis fehlt die erforderliche Berechtigung. |
| 429 | rate_limited |
Das Ratenlimit wurde überschritten; wiederholen Sie die Anfrage nach der Zeit aus Retry-After. |
| 503 | service_unavailable |
Eine Abhängigkeit ist vorübergehend nicht verfügbar; wiederholen Sie die Anfrage nach der Zeit aus Retry-After. |
Beispiel
curl -i -X PUT "https://api.eu.keenauth.com/v1/org-custom-role-permissions" \
-H "Authorization: Bearer $KEENAUTH_SECRET_KEY" \
-H "Content-Type: application/json" \
-d '{"permission_ids":["perm_01j9xs0a2b4c6d8e0f2g4h6j8k","perm_01j9xs0a2b4c6d8e0f2g4h6j8m"]}'