Aggiorna un ruolo dell'ambiente

PATCH /v1/roles/{role_id} · autorizzazione roles:write

Aggiorna il ruolo con un JSON merge patch (RFC 7396, Content-Type: application/merge-patch+json). If-Match è obbligatorio. key non può cambiare. Quando un ruolo diventa privilegiato, le mappature dei gruppi esterni che puntano a esso restano non approvate e non concedono nulla finché non vengono approvate con :approve. Una patch che non modifica nulla mantiene la versione. La scrittura viene registrata come role.updated.

Richiesta

Campo Tipo Obbligatorio Descrizione
role_id path sì ID del ruolo (rol_…).
If-Match header sì ETag corrente del ruolo.
name string no Nome visualizzato, fino a 128 caratteri.
description string no Fino a 1024 caratteri.
is_privileged boolean no Flag di privilegio.
assignable_in_self_service boolean no Se il ruolo può essere assegnato in self-service.

Risposta

200 OK con il ruolo e il nuovo ETag.

{
  "id": "rol_01j9xr7s1t2w6x8y0z2a4b6c8e",
  "organization_id": null,
  "key": "support",
  "name": "Support team",
  "description": "",
  "is_privileged": false,
  "assignable_in_self_service": true,
  "permission_ids": [],
  "created_at": "2026-10-12T09:31:00.123456Z",
  "updated_at": "2026-10-12T10:00:00Z",
  "version": 2
}

Errori

HTTP code Quando
400 unknown_field La patch contiene un campo che non può essere scritto (ad esempio key).
404 not_found Il ruolo non esiste in questo ambito.
412 precondition_failed If-Match non corrisponde alla versione corrente.
422 validation_failed Un campo non è valido.
428 precondition_required If-Match è assente.
401 unauthenticated La credenziale è assente, non valida o revocata.
403 insufficient_permissions La credenziale non ha il permesso richiesto.
429 rate_limited È stato superato il limite di frequenza; riprova dopo il periodo indicato da Retry-After.
503 service_unavailable Una dipendenza è temporaneamente non disponibile; riprova dopo il periodo indicato da Retry-After.

Esempio

curl -i -X PATCH "https://api.eu.keenauth.com/v1/roles/rol_01j9xr7s1t2w6x8y0z2a4b6c8e" \
  -H "Authorization: Bearer $KEENAUTH_SECRET_KEY" \
  -H 'If-Match: "1"' \
  -H "Content-Type: application/merge-patch+json" \
  -d '{"name":"Support team"}'