사용자의 권한을 변경하는 API입니다.
API 만들기
<도구 | API> 메뉴에서 “USER” 유형 API를 만듭니다.
API 요청
POST 형식으로 요청해야 합니다.
JSON 요청 형식입니다.
이름 | 유형 | 설명 | 필수 여부 | 예 |
|---|---|---|---|---|
action | 문자열 | 작업 유형 | 예 | USER_ROLE_UPDATE |
userId | 문자열 | 사용자 아이디 | 예 | user01 |
roles | 문자열 배열 | 권한 목록. 화면에서 줄 수 있는 | 예 | ["ADMIN", "EDITOR", "WRITER"] |
기존 권한을 무시하고 roles에 설정한 권한으로 재설정합니다. roles를 빠뜨리면 권한을 지우지 않고 REQUIRED_PARAMETER_MISSING 예외를 반환합니다. 권한을 모두 지우려면 빈 배열을 보냅니다. 마지막 남은 관리자의 "관리" 권한과 API 호출자 자신의 "관리" 권한은 뺄 수 없습니다.
사용자의 권한을 변경하는 예제입니다.
{
"action": "USER_ROLE_UPDATE",
"userId": "user01",
"roles": ["ADMIN", "EDITOR", "WRITER"]
}API 응답
USER_ROLE_UPDATE 응답
JSON 형식의 응답은 다음과 같습니다.
이름 | 유형 | 설명 | 필수 여부 | 예 |
|---|---|---|---|---|
status | 문자열 | 상태 | 예 | success | fail |
errors | Error 객체 배열 | 예외 | 아니오 |
예외 항목
예외 항목은 다음과 같습니다.
예외 | 설명 |
|---|---|
USER_NOT_EXIST | 사용자가 존재하지 않을 때 |
INVALID_PARAMETER | 문자열의 길이 등이 형식에 맞지 않을 때 해당 권한이 존재하지 않을 때 |
REQUIRED_PARAMETER_MISSING | API 요청에 필수 항목(userId, roles)이 없을 때 |
AT_LEAST_ONE_ADMIN_USER_MUST_EXIST | 마지막 남은 관리자의 "관리" 권한을 빼려고 할 때 |
CALLER_IS_NOT_ADMIN | API 호출자 자신의 "관리" 권한을 빼려고 할 때. |
USER_LICENSE_EXCEEDED | 바꾼 권한으로 사용자 라이선스를 초과할 때 |
예제
예제입니다.
{
"status": "success"
}