
# Sostituisci le autorizzazioni dei ruoli personalizzati dell'organizzazione

`PUT /v1/org-custom-role-permissions` · autorizzazione `roles:write`

Sostituisce l'elenco con `permission_ids` (l'insieme completo, al massimo 1000). Aggiungere un'autorizzazione richiede la funzione di piano `org_custom_roles` (Business); rimuovere autorizzazioni è sempre consentito, e un'autorizzazione rimossa viene tolta anche da ogni ruolo dell'organizzazione nella stessa scrittura. Alcune autorizzazioni di sistema non possono mai essere assegnate ai ruoli dell'organizzazione (`permission_not_allowed`). La modifica viene registrata come `org_custom_role_permissions.updated`; ogni ruolo dell'organizzazione che perde un'autorizzazione viene registrato come `role.updated`.

## Richiesta

| Campo | Tipo | Obbligatorio | Descrizione |
|---|---|---|---|
| `permission_ids` | string[] | sì | L'insieme completo degli ID di autorizzazione (`perm_…`), al massimo 1000. |

## Risposta

`200 OK` con il nuovo elenco.

```json
{
  "permission_ids": [
    "perm_01j9xs0a2b4c6d8e0f2g4h6j8k",
    "perm_01j9xs0a2b4c6d8e0f2g4h6j8m"
  ]
}
```

## Errori

| HTTP | code | Quando |
|---|---|---|
| 403 | `plan_feature_unavailable` | L'insieme aggiunge un'autorizzazione e il piano non include `org_custom_roles`. |
| 422 | `permission_not_allowed` | Un'autorizzazione non può mai essere assegnata ai ruoli dell'organizzazione. |
| 422 | `validation_failed` | `permission_ids` manca, contiene un ID malformato o sconosciuto, un duplicato o più di 1000 elementi. |
| 401 | `unauthenticated` | La credenziale manca, non è valida o è stata revocata. |
| 403 | `insufficient_permissions` | La credenziale non ha l'autorizzazione richiesta. |
| 429 | `rate_limited` | È stato superato il limite di frequenza; riprova dopo il periodo indicato in `Retry-After`. |
| 503 | `service_unavailable` | Una dipendenza non è temporaneamente disponibile; riprova dopo il periodo indicato in `Retry-After`. |

## Esempio

```bash
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"]}'
```
