파일
  • PDF

파일

  • PDF

# 파일

설명

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"
}

삭제 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
}

파일 복사 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
  ]
}

응답

HTTP 상태 코드로 리턴되고, Body 정보로 전달한다.

HTTP 상태 코드 응답메시지 설명
200 OK 일반적인 요청 성공
201 Created 리소스 생성 성공에 대한 응답 코드
400 Bad Request 일반적인 요청 실패에 사용(대체로 서버가 이해할 수 없는 형식의 요청이 왔을 때 응답하기 위해 사용)
500 Internal Server Error - 일반적인 서버 오류에 대한 응답 코드
4XX대의 오류 코드가 클라이언트 측 오류를 나타내기 위해 사용된다면,
5XX대의 오류 코드는 서버 측 오류를 나타내기 위해 사용됨

액션

코드 설명
1 Nomal(넘어가기) 기본값
2 Overwrite(덮어쓰기)
3 Rename(이름변경)

FileItem

파라미터 타입 필수 여부 설명
id long Y 파일 아이디
destFolderId Long Y 복사된 파일이 위치할 폴더 아이디, 0으로 셋팅시 최상위 폴더
action int N 액션

이 글이 도움이 되었나요?

What's Next