동영상 파일 업로드

업로드 토큰을 이용하여, 동영상 파일의 업로드를 실행합니다.

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 NameTypeDescription
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

기타 정보 입력

orgFileDel

String

인코딩 이후 원본 삭제 자동 기능 ( Y/N ) ( default N )

  • 인코딩 이후 즉시 원본 삭제
  • 업로드 시 packageId ( 패키지 ID ) 필수

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 NameTypeDescription
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 (업로드 에러)