Users API
API Key를 발급받은 계정 본인을 기준으로 동작하는 API입니다. 프로필, 저장 용량, 비밀번호, 사용자별 최근 문서함·중요 문서함·휴지통·알림과 클라이언트 화면 구성에 필요한 tenant 설정을 다룹니다. 다른 사용자의 계정을 관리하려면 Admin을 참고하세요.
Base URL과 scope
/api/external/v1/users
/api/external/v1/recent
/api/external/v1/starred
/api/external/v1/trash
/api/external/v1/notifications
/api/external/v1/config
api:read로 호출할 수 있음api:write가 필요한 기능은 휴지통, 중요 문서함, 최근 문서함의 쓰기 기능뿐입니다. users, notifications,
config 아래의 endpoint는 모두 api:read만 부여된 키로 호출할 수 있으며, 비밀번호 변경, 프로필 수정, 알림 읽음
처리도 여기에 포함됩니다. 따라서 api:read 키를 읽기 전용 키로 간주하지 마세요.
최근 문서함 등록, 중요 문서함 등록·해제, 휴지통의 쓰기 endpoint 5개에는 api:write가 필요합니다.
내 계정 조회
GET /api/external/v1/users
API Key를 발급받은 계정의 정보를 반환합니다.
| Field | Type | 의미 |
|---|---|---|
userSeq | integer | 계정 식별자 |
userId | string | 계정 id. 이메일 주소 |
userName | string | 표시 이름 |
status | enum | 계정 상태. 예: ACTIVE |
isActive | boolean | 계정 사용 가능 여부 |
roleType | enum | 역할. 예: USER |
totalQuotaByte | long | 저장 용량 한도(byte) |
useQuotaByte | long | 사용 중인 용량(byte) |
userLanguage | string | 언어 설정 - ko, en, auto |
countryCode | string | 국가 번호 |
phoneNumber | string | 전화번호 |
defaultLandingPage | string | 시작 화면 - home 또는 my-drive |
profileImageKey | string | 프로필 이미지의 스토리지 키. 없으면 null |
tenantSeq | integer | 계정이 속한 tenant |
프로필 수정
PATCH /api/external/v1/users
multipart/form-data 형식으로 보냅니다.
| 파라미터 | Type | 필수 | 설명 |
|---|---|---|---|
ul | string | Yes | 언어 설정 - ko, en, auto |
dlp | string | Yes | 시작 화면 - home 또는 my-drive |
pn | string | No | 전화번호 |
ct | string | No | 국가 번호 |
pif | file | No | 프로필 이미지 |
dpi | boolean | No | 기존 프로필 이미지 삭제 여부 |
sk | string | No | 스토리지 키 |
curl -X PATCH "https://drive.example.com/api/external/v1/users" \
-H "Authorization: Bearer replace-with-your-USER-API-KEY" \
-F "pn=010-1111-2222" \
-F "ul=ko" \
-F "dlp=my-drive" \
-F "ct=82" \
-F "dpi=false" \
-F "pif=@profile.png"
이미지 업로드에 실패하면 USER_007을, 이미지 삭제에 실패하면 USER_015를 반환합니다.
프로필 이미지
GET /api/external/v1/users/profile-image
GET /api/external/v1/users/{userSeq}/profile-image
GET /api/external/v1/users/anonymous-profile-image
첫 번째 endpoint는 본인의 이미지를, 두 번째는 다른 사용자의 이미지를 반환하고, 세 번째는 기본 아바타 이미지를
생성합니다. 세 endpoint 모두 JSON 대신 이미지를 스트림으로 반환합니다. 이미지가 없으면 USER_008을 반환합니다.
기본 아바타를 생성하려면 1부터 30 사이의 정수인 animal과 color를 반드시 보내야 합니다.
서버는 animal과 color의 범위를 검증하지 않습니다. 1~30을 벗어난 값을 보내면 검증 오류가 아니라 RESPONSE_001과
HTTP 500으로 실패합니다. 호출하기 전에 값이 범위 안에 있는지 확인하세요.
계정 id 중복 확인
GET /api/external/v1/users/exists
| 파라미터 | Type | 필수 | 설명 |
|---|---|---|---|
userId | string | Yes | 확인할 계정 id |
사용할 수 있는 id면 성공을 반환합니다. 이미 사용 중인 id면 HTTP 409와 USER_004를 반환합니다. 즉 중복 여부는 성공
응답의 boolean 값이 아니라 실패 응답으로 알 수 있습니다.
사용자 검색
GET /api/external/v1/users/search
| 파라미터 | Type | 필수 | 설명 |
|---|---|---|---|
sk | string | Yes | 계정 id와 표시 이름에 대한 검색 키워드 |
검색어와 일치하는 계정을 id·이름·상태·tenant 정보와 함께 반환합니다. 특정 공유에 추가할 사용자를 찾으려면 Shares의 공유 대상 사용자 검색을 사용하세요.
저장 용량
GET /api/external/v1/users/quota
totalQuotaByte, useQuotaByte와 읽지 않은 알림이 있는지를 나타내는 hasUnread를 반환합니다.
비밀번호 변경
PATCH /api/external/v1/users/password
| 파라미터 | Type | 필수 | 설명 |
|---|---|---|---|
currentPwd | string | Yes | 현재 비밀번호 |
newPwd | string | Yes | 새 비밀번호 |
현재 비밀번호가 일치하지 않으면 USER_009를, 새 비밀번호가 이전 비밀번호와 같으면 USER_010을 반환합니다.
메일로 비밀번호 재설정
재설정 링크를 보내고 확인하는 데 다음 세 endpoint를 사용합니다.
POST /api/external/v1/users/password/reset-link/me
POST /api/external/v1/users/password/reset-link
GET /api/external/v1/users/password/reset-link/verify
POST /api/external/v1/users/password/reset-link/confirm
첫 번째 endpoint는 API Key를 발급받은 계정으로 재설정 링크를 보내며, 파라미터가 없습니다.
POST /password/reset-link는 API Key를 발급받은 계정이 아니라 요청 body의 userId로 지정한 계정에 재설정 메일을
보냅니다. 따라서 API Key를 가진 쪽에서 다른 사용자에게 비밀번호 재설정 메일을 보낼 수 있습니다. 다른 사용자의
비밀번호 재설정이 필요한 경우가 아니면 /reset-link/me를 사용하고, 이 endpoint를 호출할 수 있는 대상을
제한하세요. 존재하지 않는 userId를 지정하면 USER_005를 반환합니다.
| 파라미터 | Type | 필수 | 설명 |
|---|---|---|---|
userId | string | Yes | 재설정 링크를 보낼 계정. POST /password/reset-link의 body |
token | string | Yes | 재설정 토큰. verify의 query 파라미터이자 confirm의 body 필드 |
newPwd | string | Yes | 새 비밀번호. confirm의 body |
verify는 토큰을 아직 사용할 수 있는지 확인합니다. 유효하지 않은 토큰은 USER_022를, 만료된 토큰은 USER_023을
반환합니다.
계정 탈퇴
PATCH /api/external/v1/users/{userSeq}
탈퇴 처리 기능이 비활성화되어 있습니다. 어떤 userSeq로 호출해도 계정 상태는 바뀌지 않고 성공 응답만 반환합니다.
계정 탈퇴에 이 endpoint를 사용하지 말고, 성공 응답을 탈퇴 완료로 판단하지 마세요.
보안 로그
GET /api/external/v1/users/log
본인 계정의 로그인·로그아웃·비밀번호 변경 이력을 조회합니다.
| 파라미터 | Type | 필수 | 설명 |
|---|---|---|---|
ps | integer | Yes | 조회할 항목 수 |
ci | long | No | cursor - 이전 페이지의 마지막 userLogSeq |
각 항목에는 activityType, ipAddress, region, registerDate가 포함됩니다.
최근 문서함
GET /api/external/v1/recent
POST /api/external/v1/recent
최근 문서함 등록
등록하려면 api:write가 필요합니다. 요청 body에는 등록할 리소스를 지정하는 rs와, 공유받은 리소스일 때 공유한
사용자를 지정하는 ss를 보냅니다. 공유받은 리소스가 아니면 ss를 null로 보내거나 생략합니다. 공유받은 리소스는
보기(VIEW) 권한이 있어야 등록할 수 있습니다.
이미 등록된 리소스를 다시 등록해도 실패하지 않습니다. 이 경우 recentUpdateDate만 현재 시각으로 갱신되며, 항상
201 Created를 반환합니다. 문서를 열 때마다 호출해 해당 문서를 목록 맨 위에 표시하는 데 사용할 수 있습니다.
curl -X POST "https://drive.example.com/api/external/v1/recent" \
-H "Authorization: Bearer replace-with-your-USER-API-KEY" \
-H "Content-Type: application/json" \
-d '{"rs": 224, "ss": 1}'
{
"result": true,
"code": 201,
"message": "Created"
}
최근 문서함 목록
목록은 항상 최근 사용 일시(recentUpdateDate) 내림차순으로, 일시가 같으면 resourceSeq 내림차순으로 정렬되며
정렬 파라미터는 없습니다. 다른 목록과 달리 폴더를 먼저 표시하지 않으므로 파일과 폴더가 최근 사용 순서대로 함께
표시됩니다.
| 파라미터 | Type | 필수 | 설명 |
|---|---|---|---|
ps | integer | Yes | 페이지 크기, 최소 1 |
rt | enum | No | FILE 또는 FOLDER |
ft | enum | No | 파일 유형 - document, spreadsheet, presentation, pdf, image, note |
oi | string | No | 소유자 id, 최대 254자. 부분 일치가 아니라 정확히 일치하는 항목만 조회 |
sd | date | No | 최근 사용 일시(recentUpdateDate) 범위 시작(YYYY-MM-DD). ed를 함께 보내지 않으면 무시 |
ed | date | No | 최근 사용 일시(recentUpdateDate) 범위 종료(YYYY-MM-DD). sd를 함께 보내지 않으면 무시 |
ci | long | No | cursor - 이전 응답의 nextCursor. 첫 페이지면 null |
cv | object | No | cursor value - 이전 응답의 nextCursorValue, 즉 마지막 항목의 recentUpdateDate |
ct | enum | No | 전달할 수 있지만 서버에서 사용하지 않음 |
sd와 ed는 리소스의 수정일이 아니라 리소스를 마지막으로 열었거나 최근 문서함에 등록한 시각을 기준으로 합니다.
curl -X GET "https://drive.example.com/api/external/v1/recent?ps=10" \
-H "Authorization: Bearer replace-with-your-USER-API-KEY"
각 항목에는 리소스 필드인 소유자(owner*), 경로(fullPathSeq, fullPath), sizeByte, isLocked, 등록자·수정자와
일시(resourceRegister*, resourceUpdate*)가 포함됩니다. 이와 함께 recentSeq, recentRegisterDate,
recentUpdateDate, isStarred, starredSeq, 공유 필드 isShared, shareSeq, shareResourceSeq,
shareTargetSeq, 권한 필드 canView, canEdit, canDownload, canUpload, canDelete, canShare와 본인
드라이브의 항목이면 MY, 공유받은 항목이면 SHARE인 resourceLocation이 포함됩니다. 전체 필드는 41개입니다.
hasNext가 true이면 응답에 nextCursor와 nextCursorValue가 포함되며, 다음 페이지를 요청할 때 이 값을 각각
ci와 cv로 보냅니다. 다음 페이지는 이 두 값만으로 조회하며, nextCursorType은 반환되지 않습니다.
{
"pageSize": 2,
"nextCursor": 40004,
"nextCursorValue": "2026-05-12T13:15:29",
"hasNext": true
}
{
"result": false,
"code": 400,
"errorCode": "REQUEST_001",
"message": "[{field=ps, msg=필수 입력값 입니다.}]"
}
| 코드 | Status | 발생 조건 |
|---|---|---|
REQUEST_001 | 400 | ps 누락 등 요청 값 검증 실패 |
PERMISSION_001 | 403 | 공유받지 않은 리소스를 등록 |
PERMISSION_002 | 403 | 보기 권한 없이 공유받은 리소스를 등록 |
RESOURCE_005 | 404 | 리소스가 존재하지 않음 |
RESPONSE_001 | 500 | 서버 오류 |
중요 문서함
GET /api/external/v1/starred
POST /api/external/v1/starred
DELETE /api/external/v1/starred/{starredSeq}
api:write 필요중요 문서함 등록
요청 body에는 등록할 리소스를 지정하는 rs와, 공유받은 리소스일 때 공유한 사용자를 지정하는 ss를 보냅니다.
공유받은 리소스가 아니면 ss를 null로 보내거나 생략합니다. 공유받은 리소스는 보기(VIEW) 권한이 있어야 등록할 수
있습니다. 이미 등록된 리소스를 다시 등록하면 STARRED_002로 실패합니다. 성공하면 201 Created와 함께 해제할 때
사용할 data.starredSeq를 반환합니다.
curl -X POST "https://drive.example.com/api/external/v1/starred" \
-H "Authorization: Bearer replace-with-your-USER-API-KEY" \
-H "Content-Type: application/json" \
-d '{"rs": 48, "ss": 1}'
{
"result": true,
"code": 201,
"message": "Created",
"data": {
"starredSeq": 2501
}
}
{
"result": false,
"code": 409,
"errorCode": "STARRED_002",
"message": "이미 중요문서함에 등록된 리소스입니다."
}
중요 문서함 해제
해제할 때는 resourceSeq가 아니라 등록 응답이나 목록에서 받은 starredSeq를 지정합니다. 본인이 등록한 항목만 해제할
수 있으며, 존재하지 않거나 다른 사용자의 starredSeq를 지정하면 STARRED_001로 실패합니다.
curl -X DELETE "https://drive.example.com/api/external/v1/starred/{starredSeq}" \
-H "Authorization: Bearer replace-with-your-USER-API-KEY"
{
"result": false,
"code": 400,
"errorCode": "STARRED_001",
"message": "삭제에 실패 했습니다."
}
중요 문서함 목록
기본 정렬은 이름 오름차순입니다. 정렬 조건과 관계없이 폴더가 항상 파일보다 먼저 표시되며, 폴더와 파일 각각에 정렬 조건이 적용됩니다.
| 파라미터 | Type | 필수 | 설명 |
|---|---|---|---|
ps | integer | Yes | 페이지 크기, 최소 1 |
rt | enum | No | FILE 또는 FOLDER |
ft | enum | No | 파일 유형 - document, spreadsheet, presentation, pdf, image, note |
oi | string | No | 소유자 id, 최대 254자. 부분 일치가 아니라 정확히 일치하는 항목만 조회 |
sd | date | No | 리소스 수정일 범위 시작(YYYY-MM-DD). ed를 함께 보내지 않으면 무시 |
ed | date | No | 리소스 수정일 범위 종료(YYYY-MM-DD). sd를 함께 보내지 않으면 무시 |
sb | enum | No | 정렬 기준 - name, size, update. so를 함께 보내지 않으면 무시 |
so | enum | No | asc 또는 desc. sb를 함께 보내지 않으면 무시 |
ci | long | No | cursor - 이전 응답의 nextCursor. 첫 페이지면 null |
cv | object | No | cursor value - 이전 응답의 nextCursorValue |
ct | enum | No | cursor type - 이전 응답의 nextCursorType, FILE 또는 FOLDER |
파라미터 이름은 최근 문서함과 같지만, 중요 문서함의 sd와 ed는 리소스 수정일을 기준으로 하며 ct를 사용합니다.
curl -X GET "https://drive.example.com/api/external/v1/starred?ps=10" \
-H "Authorization: Bearer replace-with-your-USER-API-KEY"
각 항목에는 리소스 필드와 함께 starredSeq, starredRegisterDate, 공유 필드 isShared, shareSeq,
shareResourceSeq, shareTargetSeq, 권한 필드 canView, canEdit, canDownload, canUpload, canDelete,
canShare와 resourceLocation(MY 또는 SHARE)이 포함됩니다. 전체 필드는 39개입니다.
hasNext가 true이면 응답에 nextCursor(마지막 항목의 resourceSeq), nextCursorValue(마지막 항목의 정렬 기준
값), nextCursorType(마지막 항목의 resourceType)이 포함되며, 다음 페이지를 요청할 때 이 값을 각각 ci, cv,
ct로 보냅니다.
{
"pageSize": 2,
"nextCursor": 40002,
"nextCursorValue": "sample.pptx",
"nextCursorType": "FILE",
"hasNext": true
}
| 코드 | Status | 발생 조건 |
|---|---|---|
REQUEST_001 | 400 | ps 누락 등 요청 값 검증 실패 |
STARRED_001 | 400 | 해제 실패. 존재하지 않거나 본인이 등록하지 않은 starredSeq를 지정한 경우 포함 |
PERMISSION_001 | 403 | 공유받지 않은 리소스를 등록 |
PERMISSION_002 | 403 | 보기 권한 없이 공유받은 리소스를 등록 |
RESOURCE_005 | 404 | 리소스가 존재하지 않음 |
STARRED_002 | 409 | 이미 중요 문서함에 등록된 리소스 |
RESPONSE_001 | 500 | 서버 오류 |
휴지통
삭제한 파일이나 폴더는 바로 제거되지 않고 휴지통으로 이동합니다. 모든 휴지통 endpoint는 API Key를 발급받은 계정
본인의 휴지통 항목만 대상으로 합니다. 휴지통에 없거나 본인의 항목이 아닌 리소스를 지정하면 RESOURCE_005로
실패합니다.
GET /api/external/v1/trash
PATCH /api/external/v1/trash/files/{resourceSeq}/restore
PATCH /api/external/v1/trash/folders/{resourceSeq}/restore
DELETE /api/external/v1/trash/files/{resourceSeq}
DELETE /api/external/v1/trash/folders/{resourceSeq}
DELETE /api/external/v1/trash/empty
api:write 필요파일·폴더 복원, 파일·폴더 완전 삭제, 휴지통 비우기의 쓰기 endpoint 5개에는 모두 api:write가 필요합니다.
휴지통 목록
기본적으로 최근에 삭제한 항목부터 정렬합니다.
| 파라미터 | Type | 필수 | 설명 |
|---|---|---|---|
ps | integer | Yes | 페이지 크기, 최소 1 |
rt | enum | No | FILE 또는 FOLDER |
ft | enum | No | 파일 유형 - document, spreadsheet, presentation, pdf, image, note |
di | string | No | 삭제한 계정 id, 최대 254자. 부분 일치가 아니라 정확히 일치하는 항목만 조회 |
sd | date | No | 삭제일 범위 시작(YYYY-MM-DD). ed를 함께 보내지 않으면 무시 |
ed | date | No | 삭제일 범위 종료(YYYY-MM-DD). sd를 함께 보내지 않으면 무시 |
sb | enum | No | 정렬 기준 - name, size, register(삭제일시). so를 함께 보내지 않으면 무시 |
so | enum | No | asc 또는 desc. sb를 함께 보내지 않으면 무시 |
ci | long | No | cursor - 이전 응답의 nextCursor. 첫 페이지면 null |
cv | object | No | cursor value - 이전 응답의 nextCursorValue |
ct | enum | No | cursor type - 이전 응답의 nextCursorType, FILE 또는 FOLDER |
curl -X GET "https://drive.example.com/api/external/v1/trash?ps=10" \
-H "Authorization: Bearer replace-with-your-USER-API-KEY"
각 항목에는 trashSeq, resourceSeq, userSeq, 소유자(ownerSeq, ownerId, ownerName, ownerStatus,
ownerTenantSeq, ownerTenantName), resourceType, resourceName, 원래 위치(parentFolderSeq,
parentFolderName, fullPathSeq, fullPath), sizeByte, isLocked, 등록자·수정자와 일시(resourceRegister*,
resourceUpdate*), 삭제한 사용자(deleteUserSeq, deleteUserId, deleteUserName, deleteUserTenantSeq,
deleteUserTenantName, deleteUserStatus)와 deleteDate가 포함됩니다. 전체 필드는 32개입니다.
hasNext가 true이면 응답에 nextCursor(마지막 항목의 resourceSeq), nextCursorValue(마지막 항목의 정렬 기준
값), nextCursorType(마지막 항목의 resourceType)이 포함되며, 다음 페이지를 요청할 때 이 값을 각각 ci, cv,
ct로 보냅니다.
{
"pageSize": 1,
"nextCursor": 40048,
"nextCursorValue": "2026-06-01T16:54:59",
"nextCursorType": "FILE",
"hasNext": true
}
{
"result": false,
"code": 400,
"errorCode": "REQUEST_001",
"message": "[{field=ps, msg=필수 입력값 입니다.}]"
}
파일·폴더 복원
PATCH /trash/files/{resourceSeq}/restore와 PATCH /trash/folders/{resourceSeq}/restore는 다음 body 파라미터를
받습니다.
| 파라미터 | Type | 필수 | 설명 |
|---|---|---|---|
pe | boolean | Yes | true면 원래 부모 폴더로, false면 드라이브 최상위로 복원 |
복원할 위치에 같은 이름의 항목이 있으면 번호를 붙인 이름으로 복원합니다. 성공하면 data 없이 200 OK를 반환합니다.
pe에 따라 복원 위치가 달라짐pe=true는 원래 부모 폴더로 복원하며, 부모 폴더가 삭제되었거나 존재하지 않으면 RESOURCE_005로 실패합니다.
pe=false는 원래 부모 폴더가 있어도 드라이브 최상위로 복원합니다. 복원하기 전에 parentFolderSeq에 해당하는 폴더의
현재 상태를 확인한 뒤 pe 값을 정하세요.
curl -X PATCH "https://drive.example.com/api/external/v1/trash/files/{resourceSeq}/restore" \
-H "Authorization: Bearer replace-with-your-USER-API-KEY" \
-H "Content-Type: application/json" \
-d '{"pe": true}'
{
"result": true,
"code": 200,
"message": "OK"
}
{
"result": false,
"code": 404,
"errorCode": "RESOURCE_005",
"message": "데이터를 찾을 수 없습니다."
}
완전 삭제와 휴지통 비우기
DELETE /trash/files/{resourceSeq}와 DELETE /trash/folders/{resourceSeq}는 항목 하나를 완전히 삭제하고,
DELETE /trash/empty는 본인 휴지통의 모든 항목을 삭제합니다. 성공하면 200 OK를 반환합니다. 완전 삭제와 휴지통
비우기는 되돌릴 수 없습니다.
curl -X DELETE "https://drive.example.com/api/external/v1/trash/files/{resourceSeq}" \
-H "Authorization: Bearer replace-with-your-USER-API-KEY"
{
"result": false,
"code": 400,
"errorCode": "TRASH_001",
"message": "삭제에 실패 했습니다."
}
curl -X DELETE "https://drive.example.com/api/external/v1/trash/empty" \
-H "Authorization: Bearer replace-with-your-USER-API-KEY"
{
"result": false,
"code": 400,
"errorCode": "TRASH_CLEAN_UP_001",
"message": "삭제에 실패 했습니다."
}
| 코드 | Status | 발생 조건 |
|---|---|---|
REQUEST_001 | 400 | ps나 pe 누락 등 요청 값 검증 실패 |
RESOURCE_009 | 400 | 복원 실패 |
TRASH_001 | 400 | 파일 또는 폴더 완전 삭제 실패 |
TRASH_CLEAN_UP_001 | 400 | 휴지통 비우기 실패 |
RESOURCE_005 | 404 | 본인 휴지통에 없는 리소스, 또는 pe=true인데 원래 부모 폴더가 없음 |
RESPONSE_001 | 500 | 서버 오류 |
알림
GET /api/external/v1/notifications
GET /api/external/v1/notifications/unread-count
PATCH /api/external/v1/notifications/read-all
PATCH /api/external/v1/notifications/{notificationSeq}/read
PATCH /api/external/v1/notifications/{notificationSeq}/unread
다섯 endpoint 모두 API Key를 발급받은 계정 본인의 알림만 대상으로 합니다. 다른 사용자의 notificationSeq를
지정하면 변경할 알림이 없으므로 NOTIFICATION_002 또는 NOTIFICATION_003으로 실패하며, 존재하지 않는
notificationSeq를 지정해도 같은 응답을 반환합니다.
| 파라미터 | Type | 필수 | 설명 |
|---|---|---|---|
ps | integer | Yes | 페이지 크기, 최소 1. 생략하거나 1보다 작으면 REQUEST_001 |
ci | long | No | cursor - 이전 응답의 nextCursor |
ir | boolean | No | true면 읽은 알림만, false면 읽지 않은 알림만. 생략하면 전체 |
목록은 항상 notificationSeq 내림차순으로 정렬되므로 cursor 값은 하나만 사용하며, nextCursorValue와
nextCursorType은 반환되지 않습니다. 삭제되었거나 비활성화된 사용자로 인해 발생한 알림은 목록에서 제외됩니다.
리소스가 삭제된 경우 resourceType, resourceSeq, resourceName이 null일 수 있습니다.
description의 구조는 actionType에 따라 다릅니다.
actionType | description 필드 | 의미 |
|---|---|---|
SHARED | userName, fileName, tenantSeq, tenantName | 리소스가 공유됨 |
UNSHARED | userName, fileName, tenantSeq, tenantName | 공유가 해제됨 |
FILE_UPLOAD | userName, folderName, fileName | 공유 폴더에 파일이 업로드됨 |
STORAGE_WARNING | usagePercentage | 저장 용량 경고 |
STORAGE_EXCEEDED | exceeded | 저장 용량 초과 |
알림 하나를 읽음 또는 읽지 않음으로 변경하면 변경 후의 unreadCount를 반환합니다. read-all은 처리할 알림이
없어도 성공하며, 알림 개수는 반환하지 않습니다.
tenant 설정
클라이언트 화면을 구성하는 데 필요한 읽기 전용 설정입니다. 조회할 tenant는 API Key로 결정되며, 요청한 host의
tenant와 일치해야 합니다. 일치하지 않으면 REQUEST_006으로 실패합니다.
GET /api/external/v1/config
GET /api/external/v1/config/file-size-limit
GET /api/external/v1/config/office
GET /config는 intellectStatus, shareStatus, tenantCount를 반환합니다. shareStatus는 슈퍼 관리자가 모든
tenant에 설정을 적용 중이면 전역 설정값을, 그렇지 않으면 tenant 설정값을 나타냅니다.
GET /config/file-size-limit는 maxFileUploadSize를 byte 단위로 반환합니다. 업로드 크기에 제한이 없거나 한도가
설정되지 않은 경우에는 이 필드가 생략되고 data가 빈 객체로 반환됩니다. 따라서 값이 아니라 필드가 있는지로
제한 여부를 판단하세요.
GET /config/office는 officeDomain과 officeAdapterName을 반환합니다. 둘 중 하나라도 설정되지 않았으면 설정된
값만 반환하지 않고 SYSTEM_CONFIG_003으로 실패합니다.
Drive 웹 앱에서는 공유 링크로 접속한 익명 사용자도 Office 설정과 전역 설정을 조회할 수 있지만, 이 페이지의 endpoint는 익명 접근을 허용하지 않습니다. 항상 유효한 API Key가 필요합니다.
오류
이 endpoint가 반환하는 전체 오류 코드는 Errors를 참고하세요.