環境ロールを更新
PATCH /v1/roles/{role_id} · 権限 roles:write
JSON マージパッチ(RFC 7396、Content-Type: application/merge-patch+json)でロールを更新します。If-Match が必須です。key は変更できません。ロールが特権ロールになった場合、それを指す外部グループのマッピングは未承認のままとなり、:approve で承認されるまで権限を付与しません。何も変更しないパッチではバージョンは維持されます。書き込みは role.updated として監査されます。
リクエスト
| フィールド | 型 | 必須 | 説明 |
|---|---|---|---|
role_id |
path | はい | ロール ID(rol_…)。 |
If-Match |
header | はい | ロールの現在の ETag。 |
name |
string | いいえ | 表示名。最大 128 文字。 |
description |
string | いいえ | 最大 1024 文字。 |
is_privileged |
boolean | いいえ | 特権フラグ。 |
assignable_in_self_service |
boolean | いいえ | セルフサービスでロールを割り当てられるかどうか。 |
レスポンス
ロールと新しい ETag とともに 200 OK。
{
"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
}
エラー
| HTTP | code | 発生条件 |
|---|---|---|
| 400 | unknown_field |
パッチに書き込めないフィールドが含まれています(例:key)。 |
| 404 | not_found |
このスコープにロールが存在しません。 |
| 412 | precondition_failed |
If-Match が現在のバージョンと一致しません。 |
| 422 | validation_failed |
フィールドが無効です。 |
| 428 | precondition_required |
If-Match がありません。 |
| 401 | unauthenticated |
資格情報がない、無効、または失効しています。 |
| 403 | insufficient_permissions |
資格情報に必要な権限がありません。 |
| 429 | rate_limited |
レート制限を超えました。Retry-After の期間を待ってから再試行してください。 |
| 503 | service_unavailable |
依存先が一時的に利用できません。Retry-After の期間を待ってから再試行してください。 |
例
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"}'