업로드 토큰을 이용하여, 동영상 파일의 업로드를 실행합니다.
multipart/form data를 이용한 업로드 방식입니다.
업로드가 완료되면 원본 키와 썸네일 정보가 JSON형태로 출력됩니다.
업로드 결과는 callback 주소로 리다이렉트되며, GET {callback url}?data={JSON data} 형식으로 요청됩니다.
업로드 토큰의 버전 (V1, V2) 에 따라 요청 변수와 응답값에 차이가 있습니다.
V2는 파일이 업로드 완료됨과 동시에 response를 내보내며, 후 처리 작업(썸네일 추출과 스토리지로 이동)은 비동기로 처리됩니다.
V1
Request URL
POST {uploadUrl}?token={token}
Request Parameters
Parameter Name | Type | Description |
---|---|---|
token (Required) | String | 업로드 토큰 |
Form Parameters
Parameter Name | Type | Description |
---|---|---|
file (Required) | File (multipart/form) | 업로드 할 동영상 파일 데이터 |
folderId (Required) | Integer | 미디어 보관함의 동영상 저장 폴더 선택 |
packageId | Integer | 배포 패키지 ID - 패키지에 편입시 인코딩 실행 및 배포 URL 발급 |
cid | String | 사용자 정의 문자열 (ID) (최대 64 자리) |
rename | String | 업로드 원본 파일명 변경 (파일 확장명은 포함하지 않습니다.) |
callback | String | 업로드 콜백 URL - 리다이렉트 콜백 url - GET {Callback URL}?data={Response JSON String} |
title | String | 동영상 제목 정보 입력 |
series | String | 시리즈 정보 입력 |
author | String | 원작자 정보 입력 |
copyright | String | 저작권 정보 입력 |
rate | String | 관람등급 정보 입력 |
content | String | 내용 정보 입력 |
tag | String | 태그 정보 입력 - 여러 개 입력 시 “,”값으로 분리 (e.g., tag=tag1,tag2,tag3) |
etc | String | 기타 정보 입력 |
Response Example
{
"uploadInfo": {
"uploadDetail": {
"videoHeight": 720,
"videoWidth": 1280,
"duration": 59234,
"videoFramerate": 30.0,
"accessKey": "PXqGis2mA8NoqTAlzWiiQ8BjNZ73qUlr4s"
},
"thumbnails": [
{
"seq": 0,
"sel": false,
"url": "https://{DOMAIN}/thumb/20230512/12/e6935929-55b3-44e0-8b71-24edf2fcb251_78f4e8dc-0ef0-4ff2-8b51-4044e8d2e2bb.jpg",
"playTime": 1
},
{
"seq": 1,
"sel": false,
"url": "https://{DOMAIN}/thumb/20230512/12/e6935929-55b3-44e0-8b71-24edf2fcb251_e0429f7d-6005-449e-8010-1c205c1e02c8.jpg",
"playTime": 10
},
{
"seq": 2,
"sel": true,
"url": "https://{DOMAIN}/thumb/20230512/12/e6935929-55b3-44e0-8b71-24edf2fcb251_7d1b326f-1adb-47b7-9e0e-5e0973fffbfc.jpg",
"playTime": 19
},
{
"seq": 3,
"sel": false,
"url": "https://{DOMAIN}/thumb/20230512/12/e6935929-55b3-44e0-8b71-24edf2fcb251_f6ed4c4f-9249-49fc-8739-9d47f0725b90.jpg",
"playTime": 28
},
{
"seq": 4,
"sel": false,
"url": "https://{DOMAIN}/thumb/20230512/12/e6935929-55b3-44e0-8b71-24edf2fcb251_5fbcd15c-4cec-400d-954a-e435fc7f1875.jpg",
"playTime": 37
},
{
"seq": 5,
"sel": false,
"url": "https://{DOMAIN}/thumb/20230512/12/e6935929-55b3-44e0-8b71-24edf2fcb251_ce1b2c93-9b59-4d04-ba12-07aca072aa92.jpg",
"playTime": 46
}
]
},
"status": "COMPLETE"
}
Response Data Value
Name | Type | Description |
---|---|---|
accessKey | String | 원본 키 (Access Key) |
duration | Integer | 동영상 재생 시간 길이 (milli second) |
videoHeight | Integer | 동영상 원본 해상도 – 세로 값 |
videoWidth | Integer | 동영상 원본 해상도 – 가로 값 |
videoFramerate | Float | 동영상 원본 프레임 수 |
cid | String (64) | 사용자 정의 문자열 (ID) (최대 64 자리) |
thumbnails | List | 썸네일 리스트 |
status | String | 업로드 상태값 BEING (업로드 서버에 파일 전송) UPLOADING (업로드 중) UPLOADED (업로드 서버에 전송 완료) MEDIACHK (업로드 파일 검증) THUMBS (썸네일 이미지 추출) COMPLETE (업로드 전체 완료) U_ERROR (업로드 에러) |
V2
Request URL
POST {uploadUrl}?token={token}
Request Parameters
Parameter Name | Type | Description |
---|---|---|
token (Required) | String | 업로드 토큰 |
Form Parameters
Parameter Name | Type | Description |
---|---|---|
file (Required) | File (multipart/form) | 업로드 할 동영상 파일 데이터 |
folderId (Required) | Integer | 미디어 보관함의 동영상 저장 폴더 선택 |
packageId | Integer | 배포 패키지 ID - 패키지에 편입시 인코딩 실행 및 배포 URL 발급 |
cid | String | 사용자 정의 문자열 (ID) (최대 64 자리) |
rename | String | 업로드 원본 파일명 변경 (파일 확장명은 포함하지 않습니다.) |
callback | String | 업로드 콜백 URL - 리다이렉트 콜백 url - GET {Callback URL}?data={Response JSON String} |
title | String | 동영상 제목 정보 입력 |
series | String | 시리즈 정보 입력 |
author | String | 원작자 정보 입력 |
copyright | String | 저작권 정보 입력 |
rate | String | 관람등급 정보 입력 |
content | String | 내용 정보 입력 |
tag | String | 태그 정보 입력 - 여러 개 입력 시 “,”값으로 분리 (e.g., tag=tag1,tag2,tag3) |
etc | String | 기타 정보 입력 |
Response Example
{
"uploadInfo": {
"uploadDetail": {
"videoHeight": 720,
"videoWidth": 1280,
"duration": 59234,
"videoFramerate": 30.0,
"accessKey": "PXqGis2mA8NoqTAlzWiiQ8BsMfXJoNl4fY"
}
},
"status": "MEDIACHK"
}
Response Data Value
Name | Type | Description |
---|---|---|
accessKey | String | 원본 키 (Access Key) |
duration | Integer | 동영상 재생 시간 길이 (milli second) |
videoHeight | Integer | 동영상 원본 해상도 – 세로 값 |
videoWidth | Integer | 동영상 원본 해상도 – 가로 값 |
videoFramerate | Float | 동영상 원본 프레임 수 |
cid | String (64) | 사용자 정의 문자열 (ID) (최대 64 자리) |
status | String | 업로드 상태값 BEING (업로드 서버에 파일 전송) UPLOADING (업로드 중) UPLOADED (업로드 서버에 전송 완료) MEDIACHK (업로드 파일 검증) THUMBS (썸네일 이미지 추출) COMPLETE (업로드 전체 완료) U_ERROR (업로드 에러) |