Remplacer les autorisations des rôles personnalisés d'organisation
PUT /v1/org-custom-role-permissions · autorisation roles:write
Remplace la liste par permission_ids (l'ensemble complet, au plus 1000). Ajouter une autorisation nécessite la fonctionnalité de forfait org_custom_roles (Business) ; retirer des autorisations est toujours permis, et une autorisation retirée est aussi retirée de chaque rôle d'organisation dans la même écriture. Certaines autorisations système ne peuvent jamais être accordées aux rôles d'organisation (permission_not_allowed). La modification est auditée comme org_custom_role_permissions.updated ; chaque rôle d'organisation qui perd une autorisation est audité comme role.updated.
Demande
| Paramètre | Dans | Requis | Description |
|---|---|---|---|
permission_ids |
string[] | oui | L'ensemble complet des ID d'autorisations (perm_…), au plus 1000. |
Réponse
200 OK avec la nouvelle liste.
{
"permission_ids": [
"perm_01j9xs0a2b4c6d8e0f2g4h6j8k",
"perm_01j9xs0a2b4c6d8e0f2g4h6j8m"
]
}
Erreurs
| HTTP | code | Quand |
|---|---|---|
| 403 | plan_feature_unavailable |
L'ensemble ajoute une autorisation et le forfait n'inclut pas org_custom_roles. |
| 422 | permission_not_allowed |
Une autorisation ne peut jamais être accordée aux rôles d'organisation. |
| 422 | validation_failed |
permission_ids est absent, contient un ID mal formé ou inconnu, un doublon, ou plus de 1000 éléments. |
| 401 | unauthenticated |
Le justificatif est absent, invalide ou révoqué. |
| 403 | insufficient_permissions |
Le justificatif ne possède pas l'autorisation requise. |
| 429 | rate_limited |
La limite de débit a été dépassée ; réessayez après la durée indiquée par Retry-After. |
| 503 | service_unavailable |
Une dépendance est temporairement indisponible ; réessayez après la durée indiquée par Retry-After. |
Exemple
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"]}'