사이드 메뉴
커뮤니케이션
API 제공
어드민 API
내 애플리케이션: 팀원
이 문서는 제공 종료된 구버전 어드민 API에 대해 안내합니다. 신규 어드민 API에 대한 자세한 내용은 신규 어드민 API 제공 안내에서 확인할 수 있습니다.
이 문서는 카카오디벨로퍼스 앱(애플리케이션)의 팀원에 대한 어드민 API 사용 방법을 안내합니다.
:app_id부분에 요청 대상 앱 ID를 입력해야 합니다.
| 메서드 | 호스트 | 리소스 |
|---|---|---|
POST | internal-admin-kapi.kakao.com | /app/:app_id/developer |
| 이름 | 설명 |
|---|---|
| FIND_ALL | 앱의 모든 팀원 정보를 조회합니다. |
| FIND_ALL_DEVELOPER | 앱 팀원들의 개발자 계정 정보를 조회합니다. |
| FIND_OWNER_DEVELOPER | 앱 소유자인 개발자 계정 정보를 조회합니다. |
| ADD | 개발자 계정 이메일로 앱의 팀원을 추가합니다. |
앱의 모든 팀원 정보를 조회합니다. 이 액션은 각 팀원의 기본 정보인 개발자 계정 ID와 역할(권한)만 제공합니다. 각 팀원의 개발자 계정 정보를 조회하려면 FIND_ALL_DEVELOPER로 요청합니다.
요청 처리 성공 시 응답은 앱의 팀원 목록을 payload에 포함합니다.
요청 페이로드
- 없음
응답 페이로드
Member배열
요청 예제
curl -v POST "https://internal-admin-kapi.kakao.com/app/:app_id/developer" \-H "Content-Type: application/json; charset=utf-8" \-H "ADMIN-API-META-RENDER: simple" \-u "${GROUP_NAME}:${GROUP_TOKEN}" \-H "ADMIN-API-USERID: ${USER_INFO}" \-d $'{"name": "FIND_ALL"}'
응답 예제
// HTTP/2 200[{"app_id": 123456,"developer_id": 250701,"role": "EDITOR","created_at": "2021-08-09T09:51:43Z","updated_at": "2021-08-09T09:51:43Z"},{"app_id": 123456,"developer_id": 576952,"role": "OWNER","created_at": "2020-02-21T05:42:16Z","updated_at": "2020-02-21T05:42:16Z"},{"app_id": 123456,"developer_id": 576953,"role": "EDITOR","created_at": "2021-06-18T06:47:26Z","updated_at": "2021-06-18T06:47:26Z"},{"app_id": 123456,"developer_id": 646211,"role": "READER","created_at": "2022-01-10T09:50:53Z","updated_at": "2022-01-10T09:50:53Z"}]
앱 팀원들의 개발자 계정 정보를 조회합니다.
요청 처리 성공 시 응답은 앱 팀원들의 개발자 계정 정보 목록을 payload에 포함합니다.
요청 페이로드
- 없음
응답 페이로드
요청 예제
curl -v POST "https://internal-admin-kapi.kakao.com/app/:app_id/developer" \-H "Content-Type: application/json; charset=utf-8" \-H "ADMIN-API-META-RENDER: simple" \-u "${GROUP_NAME}:${GROUP_TOKEN}" \-H "ADMIN-API-USERID: ${USER_INFO}" \-d $'{"name": "FIND_ALL_DEVELOPER"}'
응답 예제
// HTTP/2 200[{"developer": {"account_status": "NORMAL","id": 250701,"name": "MUJI","account_id": 879807,"status": "REGISTERED","price_plan": "ENTERPRISE","created_at": "2016-08-03T06:04:07Z","updated_at": "2017-07-20T02:58:13Z"},"app_id": 123456,"developer_id": 250701,"role": "EDITOR","created_at": "2021-08-09T09:51:43Z","updated_at": "2021-08-09T09:51:43Z"},{"developer": {"account_status": "NORMAL","id": 576952,"name": "Frodo","account_id": 2137162,"status": "REGISTERED","price_plan": "BASIC","created_at": "2020-02-17T06:43:02Z","updated_at": "2020-02-17T06:43:02Z"},"app_id": 123456,"developer_id": 576952,"role": "OWNER","created_at": "2020-02-21T05:42:16Z","updated_at": "2020-02-21T05:42:16Z"},{"developer": {"account_status": "NORMAL","id": 576953,"name": "Apeach","account_id": 2137163,"status": "REGISTERED","price_plan": "BASIC","created_at": "2020-02-17T06:47:18Z","updated_at": "2020-02-17T06:47:18Z"},"app_id": 123456,"developer_id": 576953,"role": "EDITOR","created_at": "2021-06-18T06:47:26Z","updated_at": "2021-06-18T06:47:26Z"},{"developer": {"account_status": "NORMAL","id": 646211,"name": "Neo","account_id": 2350171,"status": "REGISTERED","price_plan": "BASIC","created_at": "2021-04-20T11:38:57Z","updated_at": "2021-04-20T11:38:57Z"},"app_id": 123456,"developer_id": 646211,"role": "READER","created_at": "2022-01-10T09:50:53Z","updated_at": "2022-01-10T09:50:53Z"}]
앱 소유자인 개발자 계정 정보를 조회합니다.
요청 처리 성공 시 응답은 앱 소유자의 개발자 계정 정보를 payload에 포함합니다.
요청 페이로드
- 없음
응답 페이로드
요청 예제
curl -v POST "https://internal-admin-kapi.kakao.com/app/:app_id/developer" \-H "Content-Type: application/json; charset=utf-8" \-H "ADMIN-API-META-RENDER: simple" \-u "${GROUP_NAME}:${GROUP_TOKEN}" \-H "ADMIN-API-USERID: ${USER_INFO}" \-d $'{"name": "FIND_OWNER_DEVELOPER"}'
응답 예제
// HTTP/2 200{"developer": {"account_status": "NORMAL","id": 576952,"name": "Tube","account_id": 2137162,"status": "REGISTERED","price_plan": "BASIC","created_at": "2020-02-17T06:43:02Z","updated_at": "2020-02-17T06:43:02Z"},"app_id": 123456,"developer_id": 576952,"role": "OWNER","created_at": "2020-02-21T05:42:16Z","updated_at": "2020-02-21T05:42:16Z"}
개발자 계정 이메일로 앱의 팀원을 추가합니다. 팀원 추가 시에는 앱 소유자(OWNER)를 제외한 역할(권한)만 부여할 수 있습니다.
대상 사용자가 개발자 계정 등록을 완료하지 않았다면 에디터(EDITOR), 리더(READER)와 같은 팀원 역할(권한)을 부여했더라도 앱 관리 페이지의 [앱] > [팀 관리]에서는 [초대 메일 발송됨] 상태로 나타납니다.
요청 처리 성공 시 응답은 추가된 팀원 정보를 payload에 포함합니다.
요청 페이로드
| 이름 | 타입 | 설명 | 필수 |
|---|---|---|---|
| role | String | 팀원으로 추가된 개발자 계정에 부여할 역할(권한), 아래 중 하나
참고: 멤버 | O |
| developer.email | String | 팀원으로 추가할 개발자 계정의 이메일 | O |
응답 페이로드
요청 예제
curl -v POST "https://internal-admin-kapi.kakao.com/app/:app_id/developer" \-H "Content-Type: application/json; charset=utf-8" \-H "ADMIN-API-META-RENDER: simple" \-u "${GROUP_NAME}:${GROUP_TOKEN}" \-H "ADMIN-API-USERID: ${USER_INFO}" \-d $'{"name": "ADD","payload": {"role": "EDITOR","developer.email":"tube@kakao.com"}}'
응답 예제
// HTTP/2 200{"app_id": 123456,"developer_id": 646211,"role": "EDITOR"}
응답 예제: 초대 메일 발송됨 상태인 사용자 대상으로 재요청한 경우
- 해당 사용자가 앱 관리 페이지의 [앱] > [멤버] 메뉴에 [초대 메일 발송됨] 상태로 노출됨
- 이 상태에서는 개발자 계정 ID와 초대 시 부여한 역할(권한) 정보만 존재
- 해당 사용자의 개발자 계정 ID로 팀원에서 제외 가능
// HTTP/2 400{"message": "${MESSAGE}","exception": "com.kakao.capri.commons.service.DeveloperAlreadyExistsException"}
:app_id부분에 요청 대상 앱 ID를 입력해야 합니다.:developer_id부분에 대상 팀원의 개발자 계정 ID를 입력해야 합니다.
| 메서드 | 호스트 | 리소스 |
|---|---|---|
POST | internal-admin-kapi.kakao.com | /app/:app_id/developer/:developer_id |
| 이름 | 설명 |
|---|---|
| FIND | 앱의 팀원인 특정 개발자 계정 정보를 조회합니다. |
| FIND_APP | 앱 기본 정보와 함께 팀원인 특정 개발자 계정 정보를 조회합니다. |
| FIND_DEVELOPER | 앱의 팀원인 특정 개발자 계정의 정보를 상세 조회합니다. |
| ADD | 앱에 특정 개발자 계정을 팀원으로 추가합니다. |
| UPDATE | 앱의 특정 팀원에게 부여된 권한을 변경합니다. |
| REMOVE | 앱의 특정 팀원을 팀에서 내보냅니다. |
앱의 팀원인 특정 개발자 계정 정보를 조회합니다.
요청 처리 성공 시 응답은 해당 팀원의 개발자 계정 기본 정보를 payload에 포함합니다.
요청 페이로드
- 없음
응답 페이로드
요청 예제
curl -v POST "https://internal-admin-kapi.kakao.com/app/:app_id/developer/:developer_id" \-H "Content-Type: application/json; charset=utf-8" \-H "ADMIN-API-META-RENDER: simple" \-u "${GROUP_NAME}:${GROUP_TOKEN}" \-H "ADMIN-API-USERID: ${USER_INFO}" \-d $'{"name": "FIND"}'
응답 예제
// HTTP/2 200{"app_id": 123456,"developer_id": 576952,"role": "OWNER","created_at": "2020-02-21T05:42:16Z","updated_at": "2020-02-21T05:42:16Z"}
응답 예제: 조회 실패, 해당 앱의 팀원이 아닌 개발자 계정을 대상으로 요청한 경우
// HTTP/2 404{"message": "${MESSAGE}"}
앱 기본 정보와 함께 팀원인 특정 개발자 계정 정보를 조회합니다.
요청 처리 성공 시 응답은 앱 기본 정보와 팀원의 개발자 정보를 payload에 포함합니다.
요청 페이로드
- 없음
응답 페이로드
요청 예제
curl -v POST "https://internal-admin-kapi.kakao.com/app/:app_id/developer/:developer_id" \-H "Content-Type: application/json; charset=utf-8" \-H "ADMIN-API-META-RENDER: simple" \-u "${GROUP_NAME}:${GROUP_TOKEN}" \-H "ADMIN-API-USERID: ${USER_INFO}" \-d $'{"name": "FIND_APP"}'
응답 예제
// HTTP/2 200{"app": {"id": 123456,"name": "Sample","icon": "https://k.kakaocdn.net/14/dn/ZSfZPxO70E/DJNC0WsJym1OoiMmo8K5O1/o.jpg","app_type": "KAKAO","category": "Book_Reference","status": "ACTIVE","phase": "NORMAL"},"app_id": 123456,"developer_id": 576952,"role": "OWNER","created_at": "2020-02-21T05:42:16Z","updated_at": "2020-02-21T05:42:16Z"}
앱의 팀원인 특정 개발자 계정의 정보를 상세 조회합니다.
요청 처리 성공 시 응답은 해당 팀원의 개발자 계정 상세 정보를 payload에 포함합니다.
요청 페이로드
- 없음
응답 페이로드
요청 예제
curl -v POST "https://internal-admin-kapi.kakao.com/app/:app_id/developer/:developer_id" \-H "Content-Type: application/json; charset=utf-8" \-H "ADMIN-API-META-RENDER: simple" \-u "${GROUP_NAME}:${GROUP_TOKEN}" \-H "ADMIN-API-USERID: ${USER_INFO}" \-d $'{"name": "FIND_DEVELOPER"}'
응답 예제
// HTTP/2 200{"developer": {"account_status": "NORMAL","id": 576952,"name": "Muji","account_id": 2137162,"status": "REGISTERED","price_plan": "BASIC","created_at": "2020-02-17T06:43:02Z","updated_at": "2020-02-17T06:43:02Z"},"app_id": 123456,"developer_id": 576952,"role": "OWNER","created_at": "2020-02-21T05:42:16Z","updated_at": "2020-02-21T05:42:16Z"}
앱에 특정 개발자 계정을 팀원으로 추가합니다. 앱 소유자(OWNER)인 사용자만 팀원을 추가할 수 있습니다. 또한 팀원 추가 시에는 앱 소유자(OWNER)를 제외한 역할(권한)만 부여할 수 있습니다.
대상 사용자가 개발자 계정 등록을 완료하지 않았다면 개발자 계정 ID가 존재하지 않아 이 액션으로 팀원 추가가 불가능합니다.
요청 처리 성공 시 응답은 추가된 팀원 정보를 payload에 포함합니다.
요청 페이로드
| 이름 | 타입 | 설명 | 필수 |
|---|---|---|---|
| role | String | 팀원으로 추가된 개발자 계정에 부여할 역할(권한), 아래 중 하나
참고: 멤버 | O |
응답 페이로드
요청 예제
curl -v POST "https://internal-admin-kapi.kakao.com/app/:app_id/developer/:developer_id" \-H "Content-Type: application/json; charset=utf-8" \-H "ADMIN-API-META-RENDER: simple" \-u "${GROUP_NAME}:${GROUP_TOKEN}" \-H "ADMIN-API-USERID: ${USER_INFO}" \-d $'{"name": "ADD","payload": {"role": "EDITOR"}}'
응답 예제
// HTTP/2 200{"app_id": 123456,"developer_id": 646211,"role": "EDITOR"}
응답 예제: 요청 처리 실패, 이미 팀원으로 등록된 개발자 계정
// HTTP/2 400{"message": "${MESSAGE}","exception": "com.kakao.capri.commons.service.DeveloperAlreadyExistsException"}
앱의 특정 팀원에게 부여된 역할(권한)을 변경합니다.
- 앱 소유자(
OWNER)인 사용자만 팀원 권한 변경 가능 OWNER인 사용자는 다른 역할로 변경할 수 없음- 팀원의 권한을
OWNER로 변경할 경우, 기존의 앱 소유자는EDITOR로 변경됨
요청 처리 성공 시 응답은 변경된 팀원 정보를 payload에 포함합니다.
요청 페이로드
| 이름 | 타입 | 설명 | 필수 |
|---|---|---|---|
| role | String | 변경할 역할(권한), 아래 중 하나
참고: 멤버 | O |
응답 페이로드
요청 예제
curl -v POST "https://internal-admin-kapi.kakao.com/app/:app_id/developer/:developer_id" \-H "Content-Type: application/json; charset=utf-8" \-H "ADMIN-API-META-RENDER: simple" \-u "${GROUP_NAME}:${GROUP_TOKEN}" \-H "ADMIN-API-USERID: ${USER_INFO}" \-d $'{"name": "UPDATE","payload": {"role": "READER"}}'
응답 예제
// HTTP/2 200{"app_id": 123456,"developer_id": 646211,"role": "READER","created_at": "2022-01-17T05:54:13Z","updated_at": "2022-01-17T06:00:29Z"}
응답 예제: 요청 처리 실패, 오너인 사용자 권한을 변경 요청한 경우
// HTTP/2 400{"message": "${MESSAGE}","exception": "java.lang.IllegalStateException"}
앱의 특정 팀원을 팀에서 내보냅니다.
요청 처리 성공 시 응답은 팀에서 제외된 팀원 정보를 payload에 포함합니다.
요청 페이로드
- 없음
응답 페이로드
요청 예제
curl -v POST "https://internal-admin-kapi.kakao.com/app/:app_id/developer/:developer_id" \-H "Content-Type: application/json; charset=utf-8" \-H "ADMIN-API-META-RENDER: simple" \-u "${GROUP_NAME}:${GROUP_TOKEN}" \-H "ADMIN-API-USERID: ${USER_INFO}" \-d $'{"name": "REMOVE"}'
응답 예제
// HTTP/2 200{"app_id": 123456,"developer_id": 646211,"role": "READER","created_at": "2022-01-17T05:54:13Z","updated_at": "2022-01-17T06:00:29Z"}