설명
WORKBOX 서비스의 파일 관리를 위한 API입니다.
조회 API
파일 정보를 조회 한다.
요청 URL
GET https://workbox.apigw.ntruss.com/file-api/workbox-file-server/file-api/v1/files/{fileId}
요청 헤더
헤더명 | 설명 |
---|
x-ncp-apigw-timestamp | 1970년 1월 1일 00:00:00 협정 세계시(UTC)부터의 경과 시간을 밀리초(Millisecond)로 나타내며 API Gateway 서버와 시간 차가 5분 이상 나는 경우 유효하지 않은 요청으로 간주
x-ncp-apigw-timestamp:{Timestamp} |
x-ncp-iam-access-key | 네이버 클라우드 플랫폼 포털에서 발급받은 Access Key ID 값
x-ncp-iam-access-key:{Account Access Key} |
x-ncp-apigw-signature-v2 | Access Key ID 값과 Secret Key로 암호화한 서명
x-ncp-apigw-signature-v2:{API Gateway Signature} |
x-ncp-workbox-loginId | WorkBox 서비스 로그인 메일주소
x-ncp-workbox-loginId:{Login ID} |
Content-Type | Request body content type을 application/json으로 지정
Content-Type: application/json |
요청 Path 파라미터
파라미터 | 타입 | 필수 여부 | 설명 |
---|
fileId | long | Y | 파일 아이디(FileId) |
요청 예시
GET https://workbox.apigw.ntruss.com/file-api/workbox-file-server/file-api/v1/files/18614377
GET file-api/workbox-file-server/file-api/v1/files/18614377
HOST: workbox.apigw.ntruss.com
Content-Type: application/json
x-ncp-apigw-timestamp : 1649054672370
x-ncp-iam-access-key: toAvmFdP1rtPTMz2dpdy
x-ncp-apigw-signature-v2 : sks3TlqeoWnd08TkfdmfAjrdjTekRhRlAhRhWlvmeka=
x-ncp-workbox-loginId : gildong@sample.co.kr
응답 예시
HTTP/1.1 200 OK
access-control-allow-credentials: true
access-control-allow-methods: GET,POST,PUT,DELETE,OPTIONS
access-control-max-age: 3600
connection: keep-alive
content-type: application/json;charset=UTF-8
date: Tue, 05 Apr 2022 01:05:10 GMT
server: nginx
strict-transport-security: max-age=31536000; includeSubDomains, max-age=31536000; includeSubDomains
transfer-encoding: chunked
x-ncp-apigw-response-origin: ENDPOINT
x-ncp-trace-id: 32p9p70p32pj36acph6com2p1g
{
"id": 18614377,
"type": 2,
"folderType": 1,
"path": "gildong/naver.jpg",
"uprFolderId": 2485554,
"size": 5076,
"creYmdt": "2022-04-05T01:04:32.185+0000",
"modYmdt": "2022-04-05T01:04:32.000+0000",
"allSubFoldersCount": 0,
"allSubFilesCount": 0,
"creator": {
"userId": "bb891238-88cf-50f9-572e-9fe0111234a3",
"userNm": "홍길동",
"userPhoto": null,
"loginId": "gildong@sample.co.kr"
},
"modifier": {
"userId": "bb891238-88cf-50f9-572e-9fe0111234a3",
"userNm": "홍길동",
"userPhoto": null,
"loginId": "gildong@sample.co.kr"
},
"uploadYmdt": "2022-04-05T01:04:32.000+0000",
"userModYmdt": "2022-04-05T01:04:32.185+0000",
"onlineEditUrl": "https://sample.ncloudworkbox.com/LinkOnlineEdit/18614377"
}
파라미터 | 타입 | 설명 |
---|
id | long | 파일 아이디(FileId) |
name | String | 파일명 |
type | Integer | 타입 |
folderType | Integer | 폴더 타입 |
path | String | 파일 경로 |
uprFolderId | long | 상위 폴더 아이디 |
size | long | 크기 |
creYmdt | Date | 생성 일시 |
modYmdt | Date | 수정 일시 |
allSubFoldersCount | long | 하위 폴더 갯수 |
allSubFilesCount | long | 하위 파일 갯수 |
creator | UserVo | 생성자 정보 |
modifier | UserVo | 수정자 정보 |
uploadYmdt | Date | 업로드 일시 |
userModYmdt | Date | 사용자 수정 일시 |
lock | FileLockInfoVo | 파일 잠김 정보 |
onlineEditUrl | String | 파일 온라인 편집 URL |
삭제 API
파일을 삭제한다.
요청 URL
DELETE https://workbox.apigw.ntruss.com/file-api/workbox-file-server/file-api/v1/files/{fileId}
요청 헤더
헤더명 | 설명 |
---|
x-ncp-apigw-timestamp | 1970년 1월 1일 00:00:00 협정 세계시(UTC)부터의 경과 시간을 밀리초(Millisecond)로 나타내며 API Gateway 서버와 시간 차가 5분 이상 나는 경우 유효하지 않은 요청으로 간주
x-ncp-apigw-timestamp:{Timestamp} |
x-ncp-iam-access-key | 네이버 클라우드 플랫폼 포털에서 발급받은 Access Key ID 값
x-ncp-iam-access-key:{Account Access Key} |
x-ncp-apigw-signature-v2 | Access Key ID 값과 Secret Key로 암호화한 서명
x-ncp-apigw-signature-v2:{API Gateway Signature} |
x-ncp-workbox-loginId | WorkBox 서비스 로그인 메일주소
x-ncp-workbox-loginId:{Login ID} |
Content-Type | Request body content type을 application/json으로 지정
Content-Type: application/json |
요청 Path 파라미터
파라미터 | 타입 | 필수 여부 | 설명 |
---|
fileId | Long | Y | 파일 아이디(FileId) |
요청 예시
DELETE https://workbox.apigw.ntruss.com/file-api/workbox-file-server/file-api/v1/files/18629575
DELETE /file-api/workbox-file-server/file-api/v1/files/18629575
HOST: workbox.apigw.ntruss.com
Content-Type: application/json
x-ncp-apigw-timestamp : 1649054672370
x-ncp-iam-access-key: toAvmFdP1rtPTMz2dpdy
x-ncp-apigw-signature-v2 : sks3TlqeoWnd08TkfdmfAjrdjTekRhRlAhRhWlvmeka=
x-ncp-workbox-loginId : gildong@sample.co.kr
응답 예시
HTTP/1.1 200 OK
access-control-allow-credentials: true
access-control-allow-methods: GET,POST,PUT,DELETE,OPTIONS
access-control-allow-origin: https://workbox.apigw.ntruss.com
access-control-max-age: 3600
connection: keep-alive
content-length: 0
date: Tue, 05 Apr 2022 06:10:21 GMT
server: nginx
strict-transport-security: max-age=31536000; includeSubDomains, max-age=31536000; includeSubDomains
x-ncp-apigw-response-origin: ENDPOINT
x-ncp-trace-id: 3copjc5i32opj3gd9i74sjgcr2
수정 API
파일명을 수정한다.
요청 URL
PATCH https://workbox.apigw.ntruss.com/file-api/workbox-file-server/file-api/v1/files/{fileId}
요청 헤더
헤더명 | 설명 |
---|
x-ncp-apigw-timestamp | 1970년 1월 1일 00:00:00 협정 세계시(UTC)부터의 경과 시간을 밀리초(Millisecond)로 나타내며 API Gateway 서버와 시간 차가 5분 이상 나는 경우 유효하지 않은 요청으로 간주
x-ncp-apigw-timestamp:{Timestamp} |
x-ncp-iam-access-key | 네이버 클라우드 플랫폼 포털에서 발급받은 Access Key ID 값
x-ncp-iam-access-key:{Account Access Key} |
x-ncp-apigw-signature-v2 | Access Key ID 값과 Secret Key로 암호화한 서명
x-ncp-apigw-signature-v2:{API Gateway Signature} |
x-ncp-workbox-loginId | WorkBox 서비스 로그인 메일주소
x-ncp-workbox-loginId:{Login ID} |
Content-Type | Request body content type을 application/json으로 지정
Content-Type: application/json |
요청 Path 파라미터
파라미터 | 타입 | 필수 여부 | 설명 |
---|
fileId | Long | Y | 파일 아이디(FileId) |
요청 Query 파라미터
파라미터 | 타입 | 필수 여부 | 설명 |
---|
newName | String | Y | 변경할 이름 |
요청 예시
PATCH https://workbox.apigw.ntruss.com/file-api/workbox-file-server/file-api/v1/files/18614377?newName=test_newName_0001
PATCH /file-api/workbox-file-server/file-api/v1/files/18614377?newName=test_newName_0001
HOST: workbox.apigw.ntruss.com
Content-Type: application/json
x-ncp-apigw-timestamp : 1649054672370
x-ncp-iam-access-key: toAvmFdP1rtPTMz2dpdy
x-ncp-apigw-signature-v2 : sks3TlqeoWnd08TkfdmfAjrdjTekRhRlAhRhWlvmeka=
x-ncp-workbox-loginId : gildong@sample.co.kr
응답 예시
HTTP/1.1 200 OK
access-control-allow-credentials: true
access-control-allow-methods: GET,POST,PUT,DELETE,OPTIONS
access-control-allow-origin: https://workbox.apigw.ntruss.com
access-control-max-age: 3600
connection: keep-alive
content-length: 0
date: Tue, 05 Apr 2022 04:18:02 GMT
server: nginx
strict-transport-security: max-age=31536000; includeSubDomains, max-age=31536000; includeSubDomains
x-ncp-apigw-response-origin: ENDPOINT
x-ncp-trace-id: 32c1o75hmae1j68c1p6oom4d1j
파일 다운로드 API
파일을 다운로드 한다.
요청 URL
GET https://workbox.apigw.ntruss.com/file-api/workbox-file-server/file-api/v1/files/{fileId}/download
요청 헤더
헤더명 | 설명 |
---|
x-ncp-apigw-timestamp | 1970년 1월 1일 00:00:00 협정 세계시(UTC)부터의 경과 시간을 밀리초(Millisecond)로 나타내며 API Gateway 서버와 시간 차가 5분 이상 나는 경우 유효하지 않은 요청으로 간주
x-ncp-apigw-timestamp:{Timestamp} |
x-ncp-iam-access-key | 네이버 클라우드 플랫폼 포털에서 발급받은 Access Key ID 값
x-ncp-iam-access-key:{Account Access Key} |
x-ncp-apigw-signature-v2 | Access Key ID 값과 Secret Key로 암호화한 서명
x-ncp-apigw-signature-v2:{API Gateway Signature} |
x-ncp-workbox-loginId | WorkBox 서비스 로그인 메일주소
x-ncp-workbox-loginId:{Login ID} |
Content-Type | Request body content type을 application/json으로 지정
Content-Type: application/json |
요청 Path 파라미터
파라미터 | 타입 | 필수 여부 | 설명 |
---|
fileId | Long | Y | 파일 아이디(FileId) |
요청 예시
GET https://workbox.apigw.ntruss.com/file-api/workbox-file-server/file-api/v1/files/18618459/download
GET /file-api/workbox-file-server/file-api/v1/files/18618459/download
HOST: workbox.apigw.ntruss.com
Content-Type: application/json
x-ncp-apigw-timestamp : 1649054672370
x-ncp-iam-access-key: toAvmFdP1rtPTMz2dpdy
x-ncp-apigw-signature-v2 : sks3TlqeoWnd08TkfdmfAjrdjTekRhRlAhRhWlvmeka=
x-ncp-workbox-loginId : gildong@sample.co.kr
응답 예시
HTTP/1.1 200 OK
access-control-allow-credentials: true
access-control-allow-methods: GET,POST,PUT,DELETE,OPTIONS
access-control-max-age: 3600
connection: keep-alive
content-disposition: attachment;filename*=UTF-8''naver.jpg
content-length: 5076
content-type: image/jpeg
date: Tue, 05 Apr 2022 04:26:42 GMT
server: nginx
strict-transport-security: max-age=31536000; includeSubDomains, max-age=31536000; includeSubDomains
x-ncp-apigw-response-origin: ENDPOINT
x-ncp-trace-id: 3gp326tj38pho38ohp6os38opm
파일 다운로드
파일 업로드 API
특정 폴더에 파일을 업로드 한다.
요청 URL
POST https://workbox.apigw.ntruss.com/file-api/workbox-file-server/file-api/v1/files
요청 헤더
헤더명 | 설명 |
---|
x-ncp-apigw-timestamp | 1970년 1월 1일 00:00:00 협정 세계시(UTC)부터의 경과 시간을 밀리초(Millisecond)로 나타내며 API Gateway 서버와 시간 차가 5분 이상 나는 경우 유효하지 않은 요청으로 간주
x-ncp-apigw-timestamp:{Timestamp} |
x-ncp-iam-access-key | 네이버 클라우드 플랫폼 포털에서 발급받은 Access Key ID 값
x-ncp-iam-access-key:{Account Access Key} |
x-ncp-apigw-signature-v2 | Access Key ID 값과 Secret Key로 암호화한 서명
x-ncp-apigw-signature-v2:{API Gateway Signature} |
x-ncp-workbox-loginId | WorkBox 서비스 로그인 메일주소
x-ncp-workbox-loginId:{Login ID} |
Content-Type | Request body content type을 multipart/form-data으로 지정
Content-Type: multipart/form-data |
요청 Query 파라미터
파라미터 | 타입 | 필수 여부 | 설명 |
---|
action | int | Y | 1:Nomal 2:Overwrite 3:Rename |
size | int | Y | 파일 사이즈 |
actionForm | formData | N | form 으로 전달시 사용되는 formData |
file | formData | Y | 업로드할 파일 |
요청 예시
POST https://workbox.apigw.ntruss.com/file-api/workbox-file-server/file-api/v1/files?action=1&folderId=2485554&size=5076
POST /file-api/workbox-file-server/file-api/v1/files?action=1&folderId=2485554&size=5076
HOST: workbox.apigw.ntruss.com
Content-Type: multipart/form-data
x-ncp-apigw-timestamp : 1649054672370
x-ncp-iam-access-key: toAvmFdP1rtPTMz2dpdy
x-ncp-apigw-signature-v2 : sks3TlqeoWnd08TkfdmfAjrdjTekRhRlAhRhWlvmeka=
x-ncp-workbox-loginId : gildong@sample.co.kr
응답 예시
HTTP/1.1 200 OK
access-control-allow-credentials: true
access-control-allow-methods: GET,POST,PUT,DELETE,OPTIONS
access-control-allow-origin: https://workbox.apigw.ntruss.com
access-control-max-age: 3600
connection: keep-alive
content-type: application/json;charset=UTF-8
date: Tue, 05 Apr 2022 07:21:22 GMT
server: nginx
strict-transport-security: max-age=31536000; includeSubDomains, max-age=31536000; includeSubDomains
transfer-encoding: chunked
x-ncp-apigw-response-origin: ENDPOINT
x-ncp-trace-id: 62d9icpgj0pj338cb264qjie1i
{
"folderId": 2485554,
"folderType": 1,
"fileType": "jpg",
"creYmdt": "2022-04-05T07:21:21.923+0000",
"modYmdt": "2022-04-05T07:21:21.923+0000",
"folderNm": "gildong001",
"folderPath": "gildong001",
"creator": {
"userId": "bb891238-88cf-50f9-572e-9fe0111234a3",
"userNm": "홍길동",
"userPhoto": null,
"loginId": "gildong@sample.co.kr"
},
"filePath": "gildong001/naver.jpg",
"sharedMemberCount": 0,
"sharedMembers": null,
"userModYmdt": "2022-04-05T07:21:21.923+0000",
"id": 18637745,
"name": "naver.jpg",
"size": 5076,
"userModYmdtMills": 1649143281923
}
파라미터 | 타입 | 설명 |
---|
id | long | 파일 아이디 |
folderId | long | 폴더 아이디 |
folderType | Integer | 폴더 타입 |
name | String | 파일명 |
size | long | 크기 |
fileType | String | 파일 유형 |
creYmdt | Date | 생성 일시 |
modYmdt | Date | 수정 일시 |
folderNm | String | 폴더명 |
folderPath | String | 폴더 경로 |
creator | UserVo | |
filePath | String | 파일 경로 |
sharedMemberCount | int | 공유 사용자 수 |
sharedMembers | List<UserVo> | 공유 사용자 리스트 |
userModYmdt | Date | 사용자 수정일 |
userModYmdtMills | long | 사용자 수정 시간 |
파일 복사 API
특정 폴더에 파일을 복사 한다.
요청 URL
POST https://workbox.apigw.ntruss.com/file-api/workbox-file-server/file-api/v1/files/copy-batch
요청 헤더
헤더명 | 설명 |
---|
x-ncp-apigw-timestamp | 1970년 1월 1일 00:00:00 협정 세계시(UTC)부터의 경과 시간을 밀리초(Millisecond)로 나타내며 API Gateway 서버와 시간 차가 5분 이상 나는 경우 유효하지 않은 요청으로 간주
x-ncp-apigw-timestamp:{Timestamp} |
x-ncp-iam-access-key | 네이버 클라우드 플랫폼 포털에서 발급받은 Access Key ID 값
x-ncp-iam-access-key:{Account Access Key} |
x-ncp-apigw-signature-v2 | Access Key ID 값과 Secret Key로 암호화한 서명
x-ncp-apigw-signature-v2:{API Gateway Signature} |
x-ncp-workbox-loginId | WorkBox 서비스 로그인 메일주소
x-ncp-workbox-loginId:{Login ID} |
Content-Type | Request body content type을 application/json으로 지정
Content-Type: application/json |
요청 Body 파라미터
파라미터 | 타입 | 필수 여부 | 설명 |
---|
files | List<FileItem> | Y | 파일 정보 |
요청 예시
POST https://workbox.apigw.ntruss.com/file-api/workbox-file-server/file-api/v1/files/copy-batch
POST /file-api/workbox-file-server/file-api/v1/files/copy-batch
HOST: workbox.apigw.ntruss.com
Content-Type: application/json
x-ncp-apigw-timestamp : 1649054672370
x-ncp-iam-access-key: toAvmFdP1rtPTMz2dpdy
x-ncp-apigw-signature-v2 : sks3TlqeoWnd08TkfdmfAjrdjTekRhRlAhRhWlvmeka=
x-ncp-workbox-loginId : gildong@sample.co.kr
{
"files": [
{
"action": 1,
"destFolderId": 2486666,
"id": 18637745
},
{
"action": 1,
"destFolderId": 2486666,
"id": 18614377
}
]
}
응답 예시
HTTP/1.1 200 OK
access-control-allow-credentials: true
access-control-allow-methods: GET,POST,PUT,DELETE,OPTIONS
access-control-allow-origin: https://workbox.apigw.ntruss.com
access-control-max-age: 3600
connection: keep-alive
content-type: application/json;charset=UTF-8
date: Tue, 05 Apr 2022 09:15:42 GMT
server: nginx
strict-transport-security: max-age=31536000; includeSubDomains, max-age=31536000; includeSubDomains
transfer-encoding: chunked
x-ncp-apigw-response-origin: ENDPOINT
x-ncp-trace-id: 3cp9i65j66p9j6ae1gc8qjid31
{
"conflictContents": []
}
파일 이동 API
특정 폴더에 파일을 이동 한다.
요청 URL
POST https://workbox.apigw.ntruss.com/file-api/workbox-file-server/file-api/v1/files/move-batch
요청 헤더
헤더명 | 설명 |
---|
x-ncp-apigw-timestamp | 1970년 1월 1일 00:00:00 협정 세계시(UTC)부터의 경과 시간을 밀리초(Millisecond)로 나타내며 API Gateway 서버와 시간 차가 5분 이상 나는 경우 유효하지 않은 요청으로 간주
x-ncp-apigw-timestamp:{Timestamp} |
x-ncp-iam-access-key | 네이버 클라우드 플랫폼 포털에서 발급받은 Access Key ID 값
x-ncp-iam-access-key:{Account Access Key} |
x-ncp-apigw-signature-v2 | Access Key ID 값과 Secret Key로 암호화한 서명
x-ncp-apigw-signature-v2:{API Gateway Signature} |
x-ncp-workbox-loginId | WorkBox 서비스 로그인 메일주소
x-ncp-workbox-loginId:{Login ID} |
Content-Type | Request body content type을 application/json으로 지정
Content-Type: application/json |
요청 Body 파라미터
파라미터 | 타입 | 필수 여부 | 설명 |
---|
files | List<FileItem> | Y | 파일 정보 |
topMoveFolders | List<Integer> | N | 이동될 파일 아이디, 이동할 폴더 아이디로 짝을 지어 값을 설정 |
요청 예시
POST https://workbox.apigw.ntruss.com/file-api/workbox-file-server/file-api/v1/files/move-batch
POST /file-api/workbox-file-server/file-api/v1/files/move-batch
HOST: workbox.apigw.ntruss.com
Content-Type: application/json
x-ncp-apigw-timestamp : 1649054672370
x-ncp-iam-access-key: toAvmFdP1rtPTMz2dpdy
x-ncp-apigw-signature-v2 : sks3TlqeoWnd08TkfdmfAjrdjTekRhRlAhRhWlvmeka=
x-ncp-workbox-loginId : gildong@sample.co.kr
{
"files": [
{
"action": 1,
"destFolderId": 2485768,
"id": 18651018
},
{
"action": 1,
"destFolderId": 2485768,
"id": 18651017
}
],
"topMoveFolders":[18651018, 2485768, 18651017, 2485768]
}
응답 예시
HTTP/1.1 200 OK
access-control-allow-credentials: true
access-control-allow-methods: GET,POST,PUT,DELETE,OPTIONS
access-control-allow-origin: https://workbox.apigw.ntruss.com
access-control-max-age: 3600
connection: keep-alive
content-type: application/json;charset=UTF-8
date: Wed, 06 Apr 2022 01:58:27 GMT
server: nginx
strict-transport-security: max-age=31536000; includeSubDomains, max-age=31536000; includeSubDomains
transfer-encoding: chunked
x-ncp-apigw-response-origin: ENDPOINT
x-ncp-trace-id: 30e9h6hgjadb230e31c8qj8c1p
{
"conflictContents": [],
"topMoveFolders": [
18651018,
2485768,
18651017,
2485768
]
}
파라미터 | 타입 | 설명 |
---|
conflictContents | List<CopyResultItem> | 중복 파일 목록 |
topMoveFolders | List<Long> | 이동될 폴더 아이디, 이동할 폴더 아이디로 짝을 지어 값을 설정 |
응답
HTTP 상태 코드로 리턴되고, Body 정보로 전달한다.
HTTP 상태 코드 | 응답메시지 | 설명 |
---|
200 | OK | 일반적인 요청 성공 |
201 | Created | 리소스 생성 성공에 대한 응답 코드 |
400 | Bad Request | 일반적인 요청 실패에 사용(대체로 서버가 이해할 수 없는 형식의 요청이 왔을 때 응답하기 위해 사용) |
500 | Internal Server Error | - 일반적인 서버 오류에 대한 응답 코드 4XX대의 오류 코드가 클라이언트 측 오류를 나타내기 위해 사용된다면, 5XX대의 오류 코드는 서버 측 오류를 나타내기 위해 사용됨 |
타입
폴더 타입
코드 | 설명 |
---|
1 | Public(공유폴더) |
2 | Private(개인폴더) |
액션
코드 | 설명 |
---|
1 | Nomal(넘어가기) 기본값 |
2 | Overwrite(덮어쓰기) |
3 | Rename(이름변경) |
FileItem
파라미터 | 타입 | 필수 여부 | 설명 |
---|
id | long | Y | 파일 아이디 |
destFolderId | Long | Y | 복사된 파일이 위치할 폴더 아이디, 0으로 셋팅시 최상위 폴더 |
action | int | N | 액션 |
UserVo
파라미터 | 타입 | 설명 |
---|
userId | String | 사용자 아이디 |
userNm | String | 사용자 이름 |
userPhoto | String | 사용자 사진 URL Link |
loginId | String | 로그인 아이디 |
FileLockInfoVo
파라미터 | 타입 | 설명 |
---|
fileId | long | 파일 아이디 |
creYmdt | Date | 생성일시 |
createUserId | String | 생성한 사용자 아이디 |
createUser | UserVo | 생성한 사용자 |
CopyResultItem
CopyResultContentItem
파라미터 | 타입 | 설명 |
---|
name | String | 대상 이름 |
type | int | 타입 |
size | long | 크기 |
creYmdt | Date | 생성일시 |
modYmdt | Date | 수정일시 |
lock | FileLockInfoVo | 잠긴 파일 정보 |
의견을 보내 주셔서 감사합니다! 우리 팀이 당신에게 돌아갈 것입니다.