컨텐츠캐시 API 규격서
컨텐츠캐시 공유형 서비스 ( 이미지 캐시) API 규격서 입니다. var. 2023.08.08
이미지 캐시 서비스 API 규격서
이미지 캐시 서비스 신청시 이용 가능한 API 규격서 입니다.
컨텐츠캐시 메니저 페이지 에서 보다 편하게 확인 가능합니다.
|
API 개요 Token 인증 이미지 폴더 용량 |
개요
|
IWINV Imagecache RESTful API. Version : v1 |
Token
|
API |
HTTP Method |
설명 |
|---|---|---|
|
Authorization |
GET |
API Key를 통하여 Token을 생성 |
인증
|
API |
HTTP Method |
설명 |
|---|---|---|
|
User Check |
GET |
고객 인증 |
이미지
|
API |
HTTP Method |
설명 |
|---|---|---|
|
Image Upload |
POST |
이미지 업로드 |
|
Image List |
GET |
이미지 목록 조회 |
|
Image Detail |
GET |
이미지 상세 조회 |
|
Image Operate |
PUT |
이미지 수정 |
|
Image Delete |
DELETE |
이미지 삭제 |
폴더
|
API |
HTTP Method |
설명 |
|---|---|---|
|
Folder Create |
POST |
폴더 생성 |
|
Folder List |
GET |
폴더 목록 조회 |
|
Folder Operate |
PUT |
폴더 수정 |
|
Folder Delete |
DELETE |
폴더 삭제 |
용량
|
API |
HTTP Method |
설명 |
|---|---|---|
|
Capacity Select |
GET |
용량 조회 |
개요
|
API 실행을 위하여 Token을 생성합니다.Token은 모든 API에 필수로 적용되어야 합니다. |
|
HTTP Method |
Url |
설명 |
|---|---|---|
|
GET |
https://image001.share.cache.iwinv.kr/api/v1/authorization/ |
Token 생성 |
Request Parameter
|
명칭 |
타입 |
설명 |
|---|---|---|
|
Authorization(header) |
string |
"Basic + space + API Key"(base64) |
Request 예시
Headers 추가
|
"Authorization: Basic aVBL****ZTM=" |
Response Parameter
|
명칭 |
내용 |
설명 |
|---|---|---|
|
api |
Authorization |
API 네임 |
|
apiCode |
00 |
API 코드 번호 |
|
code |
200 | 4** | 5** |
API 상태 코드 |
|
result |
Success | Failed |
결과 |
|
token |
{token} |
생성한 token |
Response 예시
JSON 형식
|
{ "api": "Authorization", "apiCode": "00", "code": "200", "result": "Success", "token": "eyJ0eXAiOi****iJIUzI1NiJ9.eyJpZCI6InNtaW****Dg1MTc2NTR9.YS_dJ2sACjcd3K****kMfwf773uw" } |
Error 코드
|
명칭 |
코드 |
|---|---|
|
MissingParameter |
400 |
|
Forbidden.Unauthorized |
403 |
|
InvalidAuthorization |
451 |
|
InvalidAuthHeader |
452 |
|
InvalidApikey |
453 |
|
ServiceUnavailable.Authorization |
503 |
개요
|
HTTP Method |
Url |
설명 |
|---|---|---|
|
GET |
https://image001.share.cache.iwinv.kr/api/v1/users/check/ |
고객인증 |
Request Parameter
|
명칭 |
타입 |
설명 |
|---|---|---|
|
token |
string |
token |
Request 예시
JSON 형식
|
{ "token": "eyJ0eXAiOi****iJIUzI1NiJ9.eyJpZCI6InNtaW****Dg1MTc2NTR9.YS_dJ2sACjcd3K****kMfwf773uw" } |
Response Parameter
|
명칭 |
내용 |
설명 |
|---|---|---|
|
api |
User Check |
API 네임 |
|
apiCode |
01 |
API 코드 번호 |
|
code |
200 | 4** | 5** |
API 상태 코드 |
|
result |
Success | Failed |
결과 |
Response 예시
JSON 형식
|
{ "api": "User Check", "apiCode": "01", "code": "200", "result": "Success" } |
Error 코드
|
명칭 |
코드 |
|---|---|
|
MissingParameter |
400 |
|
Forbidden.Unauthorized |
403 |
|
InvalidToken |
412 |
|
InvalidTokenExpiration |
413 |
|
InvalidUser |
414 |
|
ServiceUnavailable.UserCheck |
503 |
개요
|
HTTP Method |
Url |
설명 |
|---|---|---|
|
POST |
https://image001.share.cache.iwinv.kr/api/v1/images/ |
업로드 |
Request Parameter
|
명칭 |
타입 |
설명 |
|---|---|---|
|
token |
string |
token |
|
path |
string |
폴더 경로 |
|
file[] |
array |
이미지 파일 |
Request 예시
FORMDATA 형식
|
{ "key": "token", "value": "eyJ0eXAiOi****iJIUzI1NiJ9.eyJpZCI6InNtaW****Dg1MTc2NTR9.YS_dJ2sACjcd3K****kMfwf773uw", "type": "text" }, "key": "path", "value": "test", "type": "text" }, "key": "file[]", "type": "file", "src": [ "/images/image1.jpg", "/images/image2.jpg", "/images/image3.jpg", ] } |
Response Parameter
|
명칭 |
내용 |
설명 |
|---|---|---|
|
api |
Image Upload |
API 네임 |
|
apiCode |
02 |
API 코드 번호 |
|
code |
200 | 4** | 5** |
API 상태 코드 |
|
result |
Success | Failed |
결과 |
|
list |
array |
이미지 목록 |
Response 예시
JSON 형식
|
{ "list": [ { "code": "200", "result": "Success", "postname": "image1.jpg", "url": "https://****.imagecachetest.com/Images/test/image1.jpg" }, { "code": "200", "result": "Success", "postname": "image2.jpg", "url": "https://****.imagecachetest.com/Images/test/image2.jpg" }, { "code": "200", "result": "Success", "postname": "image3.jpg", "url": "https://****.imagecachetest.com/Images/test/image3.jpg" } ], "api": "Image Upload", "apiCode": "02", "code": "200", "result": "Success" } |
Error 코드
|
명칭 |
코드 |
|---|---|
|
MissingParameter |
400 |
|
Forbidden.Unauthorized |
403 |
|
InvalidToken |
412 |
|
InvalidTokenExpiration |
413 |
|
InvalidUser |
414 |
|
VolumeDepletion |
429 |
|
InvalidName |
430 |
|
ServiceUnavailable.UserCheck |
502 |
|
ServiceUnavailable.ImageUpload |
503 |
개요
|
HTTP Method |
Url |
설명 |
|---|---|---|
|
GET |
https://image001.share.cache.iwinv.kr/api/v1/images/ |
이미지 목록 조회 |
Request Parameter
|
명칭 |
타입 |
설명 |
|---|---|---|
|
token |
string |
token |
|
path |
string |
폴더 경로 |
Request 예시
JSON 형식
|
{ "token": "eyJ0eXAiOi****iJIUzI1NiJ9.eyJpZCI6InNtaW****Dg1MTc2NTR9.YS_dJ2sACjcd3K****kMfwf773uw", "path": "/test/" |
Response Parameter
|
명칭 |
내용 |
설명 |
|---|---|---|
|
api |
Image List |
API 네임 |
|
apiCode |
03 |
API 코드 번호 |
|
code |
200 | 4** | 5** |
API 상태 코드 |
|
result |
Success | Failed |
결과 |
|
files |
array |
이미지 목록 |
Response 예시
JSON 형식
|
{ "files": [ { "permission": "rw-r--r--", "size": "1KB", "name": "image1.jpg", "filetype": "jpg", "modifydate": 1687493220, "url": "https://****.imagecachetest.com/test/image1.jpg" }, { "permission": "rw-r--r--", "size": "2KB", "name": "image2.jpg", "filetype": "jpg", "modifydate": 1687493220, "url": "https://****.imagecachetest.com/test/image2.jpg" } ], "api": "Image List", "apiCode": "03", "code": "200", "result": "Success" } |
Error 코드
|
명칭 |
코드 |
|---|---|
|
MissingParameter |
400 |
|
Forbidden.Unauthorized |
403 |
|
InvalidToken |
412 |
|
InvalidTokenExpiration |
413 |
|
InvalidUser |
414 |
|
ServiceUnavailable.UserCheck |
502 |
|
ServiceUnavailable.ImageList |
503 |
Image Detail
개요
|
HTTP Method |
Url |
설명 |
|---|---|---|
|
GET |
https://image001.share.cache.iwinv.kr/api/v1/images/ |
이미지 상세 |
Request Parameter
|
명칭 |
타입 |
설명 |
|---|---|---|
|
token |
string |
token |
|
path |
string |
폴더 경로 |
|
name |
string |
이미지 네임 |
Request 예시
JSON 형식
|
{ "token": "eyJ0eXAiOi****iJIUzI1NiJ9.eyJpZCI6InNtaW****Dg1MTc2NTR9.YS_dJ2sACjcd3K****kMfwf773uw", "path": "/test/", "name": "image1.jpg" } |
Response Parameter
|
명칭 |
내용 |
설명 |
|---|---|---|
|
api |
Image Detail |
API 네임 |
|
apiCode |
04 |
API 코드 번호 |
|
code |
200 | 4** | 5** |
API 상태 코드 |
|
result |
Success | Failed |
결과 |
|
{이미지 네임} |
array |
이미지 상세 |
Response 예시
JSON 형식
|
{ "image1.jpg": { "permission": "rw-r--r--", "size": "1KB", "name": "image1.jpg", "filetype": "jpg", "url": "https://****.imagecachetest.com/test/image1.jpg" }, "api": "Image Detail", "apiCode": "04", "code": "200", "result": "Success" } |
Error 코드
|
명칭 |
코드 |
|---|---|
|
MissingParameter |
400 |
|
Forbidden.Unauthorized |
403 |
|
InvalidToken |
412 |
|
InvalidTokenExpiration |
413 |
|
InvalidUser |
414 |
|
InvalidName |
429 |
|
ServiceUnavailable.UserCheck |
502 |
|
ServiceUnavailable.ImageDetail |
503 |
개요
|
HTTP Method |
Url |
설명 |
|---|---|---|
|
PUT |
https://image001.share.cache.iwinv.kr/api/v1/images/ |
이미지 수정 |
Request Parameter
|
명칭 |
타입 |
설명 |
|---|---|---|
|
token |
string |
token |
|
path |
string |
폴더 경로 |
|
oldName |
string |
기존 이미지 네임 |
|
newName |
string |
목표 이미지 네임 |
Request 예시
JSON 형식
|
{ "token": "eyJ0eXAiOi****iJIUzI1NiJ9.eyJpZCI6InNtaW****Dg1MTc2NTR9.YS_dJ2sACjcd3K****kMfwf773uw", "path": "/test/", "oldName": "image1.jpg", "newName": "image2.jpg" } |
Response Parameter
|
명칭 |
내용 |
설명 |
|---|---|---|
|
api |
Image Operate |
API 네임 |
|
apiCode |
05 |
API 코드 번호 |
|
code |
200 | 4** | 5** |
API 상태 코드 |
|
result |
Success | Failed |
결과 |
Response 예시
JSON 형식
|
{ "api": "Image Operate", "apiCode": "05", "code": "200", "result": "Success" } |
Error 코드
|
명칭 |
코드 |
|---|---|
|
MissingParameter |
400 |
|
Forbidden.Unauthorized |
403 |
|
InvalidToken |
412 |
|
InvalidTokenExpiration |
413 |
|
InvalidUser |
414 |
|
InvalidImageName |
415 |
|
InvalidNewName |
416 |
|
ExistedImageName |
417 |
|
ServiceUnavailable.UserCheck |
502 |
|
ServiceUnavailable.ImageOperate |
503 |
개요
|
HTTP Method |
Url |
설명 |
|---|---|---|
|
DELETE |
https://image001.share.cache.iwinv.kr/api/v1/images/ |
이미지 삭제 |
Request Parameter
|
명칭 |
타입 |
설명 |
|---|---|---|
|
token |
string |
token |
|
path |
string |
폴더 경로 |
|
names |
array |
이미지 네임 |
Request 예시
JSON 형식
|
{ "token": "eyJ0eXAiOi****iJIUzI1NiJ9.eyJpZCI6InNtaW****Dg1MTc2NTR9.YS_dJ2sACjcd3K****kMfwf773uw", "path": "/test/", "names": [ "image1.jpg", "image2.jpg", "image3.jpg", ] } |
Response Parameter
|
명칭 |
내용 |
설명 |
|---|---|---|
|
api |
Image Delete |
API 네임 |
|
apiCode |
06 |
API 코드 번호 |
|
code |
200 | 4** | 5** |
API 상태 코드 |
|
result |
Success | Failed |
결과 |
Response 예시
JSON 형식
|
{ "list": [ { "name": "image1.jpg", "code": "200", "result": "Success" }, { "name": "image2.jpg", "code": "200", "result": "Success" }, { "name": "image3.jpg", "code": "200", "result": "Success" } ] "api": "Image Delete", "apiCode": "06", "code": "200", "result": "Success" } |
Error 코드
|
명칭 |
코드 |
|---|---|
|
MissingParameter |
400 |
|
Forbidden.Unauthorized |
403 |
|
InvalidToken |
412 |
|
InvalidTokenExpiration |
413 |
|
InvalidUser |
414 |
|
InvalidNames |
429 |
|
ServiceUnavailable.UserCheck |
502 |
|
ServiceUnavailable.ImageDelete |
503 |
개요
|
HTTP Method |
Url |
설명 |
|---|---|---|
|
POST |
https://image001.share.cache.iwinv.kr/api/v1/folders/ |
폴더 생성 |
Request Parameter
|
명칭 |
타입 |
설명 |
|---|---|---|
|
token |
string |
token |
|
path |
string |
폴더 경로 |
|
name |
string |
폴더 네임 |
Request 예시
JSON 형식
|
{ "token": "eyJ0eXAiOi****iJIUzI1NiJ9.eyJpZCI6InNtaW****Dg1MTc2NTR9.YS_dJ2sACjcd3K****kMfwf773uw", "path": "/test/", "name": "folderTest" } |
Response Parameter
|
명칭 |
내용 |
설명 |
|---|---|---|
|
api |
Folder Create |
API 네임 |
|
apiCode |
07 |
API 코드 번호 |
|
code |
200 | 4** | 5** |
API 상태 코드 |
|
result |
Success | Failed |
결과 |
Response 예시
JSON 형식
|
{ "api": "Folder Create", "apiCode": "07", "code": "200", "result": "Success" } |
Error 코드
|
명칭 |
코드 |
|---|---|
|
MissingParameter |
400 |
|
Forbidden.Unauthorized |
403 |
|
InvalidToken |
412 |
|
InvalidTokenExpiration |
413 |
|
InvalidUser |
414 |
|
InvalidName |
429 |
|
RemoteFolder |
430 |
|
ServiceUnavailable.UserCheck |
502 |
|
ServiceUnavailable.FolderCreate |
503 |
개요
|
HTTP Method |
Url |
설명 |
|---|---|---|
|
GET |
https://image001.share.cache.iwinv.kr/api/v1/folders/ |
폴더 목록 조회 |
Request Parameter
|
명칭 |
타입 |
설명 |
|---|---|---|
|
token |
string |
token |
|
path |
string |
폴더 경로 |
Request 예시
JSON 형식
|
{ "token": "eyJ0eXAiOi****iJIUzI1NiJ9.eyJpZCI6InNtaW****Dg1MTc2NTR9.YS_dJ2sACjcd3K****kMfwf773uw", "path": "/test/", "id": "test" } |
Response Parameter
|
명칭 |
내용 |
설명 |
|---|---|---|
|
api |
Folder List |
API 네임 |
|
apiCode |
08 |
API 코드 번호 |
|
code |
200 | 4** | 5** |
API 상태 코드 |
|
result |
Success | Failed |
결과 |
|
dirs |
array |
폴더 리스트 |
Response 예시
JSON 형식
|
{ "dirs": [ { "permission": "rwxrwxrwx", "name": "test", "modifydate": 1687757640 } ], "api": "Folder List", "apiCode": "08", "code": "200", "result": "Success" } |
Error 코드
|
명칭 |
코드 |
|---|---|
|
MissingParameter |
400 |
|
Forbidden.Unauthorized |
403 |
|
InvalidToken |
412 |
|
InvalidTokenExpiration |
413 |
|
InvalidUser |
414 |
|
ServiceUnavailable.UserCheck |
502 |
|
ServiceUnavailable.FolderCreate |
503 |
개요
|
HTTP Methodr |
Url |
설명 |
|---|---|---|
|
PUT |
https://image001.share.cache.iwinv.kr/api/v1/folders/ |
폴더 수정 |
Request Parameter
|
명칭 |
타입 |
설명 |
|---|---|---|
|
token |
string |
token |
|
path |
string |
폴더 경로 |
|
oldName |
string |
기존 폴더 네임 |
|
newName |
string |
새 폴더 네임 |
Request 예시
JSON 형식
|
{ "token": "eyJ0eXAiOi****iJIUzI1NiJ9.eyJpZCI6InNtaW****Dg1MTc2NTR9.YS_dJ2sACjcd3K****kMfwf773uw", "path": "/test/", "oldName": "folderTest1", "newName": "folderTest2" } |
Response Parameter
|
명칭 |
내용 |
설명 |
|---|---|---|
|
api |
Folder Operate |
API 네임 |
|
apiCode |
09 |
API 코드 번호 |
|
code |
200 | 4** | 5** |
API 상태 코드 |
|
result |
Success | Failed |
결과 |
Response 예시
JSON 형식
|
{ "api": "Folder Operate", "apiCode": "09", "code": "200", "result": "Success" } |
Error 코드
|
명칭 |
코드 |
|---|---|
|
MissingParameter |
400 |
|
Forbidden.Unauthorized |
403 |
|
InvalidToken |
412 |
|
InvalidTokenExpiration |
413 |
|
InvalidUser |
414 |
|
InvalidName |
429 |
|
InvalidNewName |
416 |
|
ExistedFolderName |
418 |
|
ServiceUnavailable.UserCheck |
502 |
|
ServiceUnavailable.FolderUpdate |
503 |
개요
|
HTTP Method |
Url |
설명 |
|---|---|---|
|
DELETE |
https://image001.share.cache.iwinv.kr/api/v1/folders/ |
폴더 삭제 |
Request Parameter
|
명칭 |
타입 |
설명 |
|---|---|---|
|
token |
string |
token |
|
path |
string |
폴더 경로 |
|
name |
string |
폴더 네임 |
Request 예시
JSON 형식
|
{ "path": "/test/", "name": "folderTest" } |
Response Parameter
|
명칭 |
내용 |
설명 |
|---|---|---|
|
api |
Folder Delete |
API 네임 |
|
apiCode |
10 |
API 코드 번호 |
|
code |
200 | 4** | 5** |
API 상태 코드 |
|
result |
Success | Failed |
결과 |
Response 예시
JSON 형식
|
{ "api": "Folder Delete", "apiCode": "10", "code": "200", "result": "Success" } |
Error 코드
|
명칭 |
코드 |
|---|---|
|
MissingParameter |
400 |
|
Forbidden.Unauthorized |
403 |
|
InvalidToken |
412 |
|
InvalidTokenExpiration |
413 |
|
InvalidUser |
414 |
|
InvalidName |
429 |
|
ServiceUnavailable.UserCheck |
502 |
|
ServiceUnavailable.FolderDelete |
503 |
개요
|
HTTP Method |
Url |
설명 |
|---|---|---|
|
GET |
https://image001.share.cache.iwinv.kr/api/v1/capacities/ |
용량 조회 |
Request Parameter
|
명칭 |
타입 |
설명 |
|---|---|---|
|
token |
string |
token |
Request 예시
JSON 형식
|
|
Response Parameter
|
명칭 |
내용 |
설명 |
|---|---|---|
|
api |
Capacity Select |
API 네임 |
|
apiCode |
11 |
API 코드 번호 |
|
code |
200 | 4** | 5** |
API 상태 코드 |
|
result |
Success | Failed |
결과 |
|
capacity |
bigint |
남은 용량 |
|
total |
bigint |
총 용량 |
Response 예시
JSON 형식
|
{ "capacity" : "21314568597", "total" : "21474836480", "api": "Capacity Select", "apiCode": "11", "code": "200", "result": "Success" } |
Error 코드
|
명칭 |
코드 |
|---|---|
|
MissingParameter |
400 |
|
Forbidden.Unauthorized |
403 |
|
InvalidToken |
412 |
|
InvalidTokenExpiration |
413 |
|
InvalidUser |
414 |
|
ServiceUnavailable.UserCheck |
502 |
|
ServiceUnavailable.CapacitySelect |
503 |
CopyRight ( copyright SMILESERV CO., LTD. All Rights reserved. )