
# 조직 맞춤 역할 권한 교체

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

목록을 `permission_ids`로 교체합니다(전체 집합, 최대 1000개). 권한을 추가하려면 `org_custom_roles` 요금제 기능(Business)이 필요하며, 권한 제거는 언제나 허용됩니다. 제거된 권한은 같은 쓰기 작업에서 모든 조직 역할에서도 함께 빠집니다. 일부 시스템 권한은 조직 역할에 절대 부여할 수 없습니다(`permission_not_allowed`). 이 변경은 `org_custom_role_permissions.updated`로 감사 기록되며, 권한을 잃은 각 조직 역할은 `role.updated`로 감사 기록됩니다.

## 요청

| 필드 | 유형 | 필수 | 설명 |
|---|---|---|---|
| `permission_ids` | string[] | 예 | 권한 ID(`perm_…`)의 전체 집합, 최대 1000개. |

## 응답

`200 OK`와 함께 새 목록을 반환합니다.

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

## 오류

| HTTP | code | 발생 조건 |
|---|---|---|
| 403 | `plan_feature_unavailable` | 집합이 권한을 추가하는데 요금제에 `org_custom_roles`가 포함되어 있지 않습니다. |
| 422 | `permission_not_allowed` | 해당 권한은 조직 역할에 절대 부여할 수 없습니다. |
| 422 | `validation_failed` | `permission_ids`가 없거나, 형식이 잘못되었거나 알 수 없는 ID가 있거나, 중복되었거나, 1000개를 초과합니다. |
| 401 | `unauthenticated` | 자격 증명이 없거나, 잘못되었거나, 취소되었습니다. |
| 403 | `insufficient_permissions` | 자격 증명에 필요한 권한이 없습니다. |
| 429 | `rate_limited` | 요청 한도를 초과했습니다. `Retry-After` 기간 후 다시 시도하십시오. |
| 503 | `service_unavailable` | 종속 서비스를 일시적으로 사용할 수 없습니다. `Retry-After` 기간 후 다시 시도하십시오. |

## 예제

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