midibus api v2
API Endpoint
https://mapi.midibus.kinxcdn.com미디버스 API는 WEB Console에서 사용하는 미디버스의 관리, 배포, 변경에 대한 연동을 자동화 할 수 있도록 제공합니다.
미디버스 API ¶
개요
미디버스 표준 API는 RESTful 기반의 API를 지원합니다.
표준 API에서 지원하는 기능
-
사용자 인증 : 서비스에 필요한 인증 정보 확인
-
미디어 카테고리 관리 (카테고리 조회 / 생성 / 삭제)
-
미디어 관리 (미디어 조회 / 삭제, 파일 업로드, 인코딩, 삭제)
-
미디어 편집 (대표 이미지, 자막, 썸네일 등의 업로드 / 수정 / 삭제)
-
채널 관리 (채널 조회 / 생성 / 삭제)
-
오브젝트 관리 (배포 채널 변경, 오브젝트 조회 / 삭제)
-
인프라 (스토리지, 트래픽) 사용량 통계 조회
-
유형 (채널 / 디바이스 / OS / 브라우저)별 재생수 통계 조회
KINXCDN 서비스 URL : midibus.kinxcdn.com
메뉴 용어 정의
| 메뉴명 | 용어정의 |
|---|---|
| Category | 파일 업로드를 통해 생성된 미디어 (원본 및 인코딩 파일)를 분류, 관리하는 디렉토리 |
| Media | 업로드한 특정한 영상 파일의 ‘원본’ 및 해당 원본 파일을 매개로 ‘인코딩 된 파일’ 모두를 포함하는 명칭 자막, 대표 이미지, 썸네일 등의 추가 파일 정보와 매칭되어, 채널로의 배포 과정을 통해서 고유한 접속 url이 생성되는 대상 |
| Contents | 한 개의 미디어를 구성하는 개별 파일 단위 업로드 원본 파일 및 인코딩 (1080P, 720P, 480P)된 개별 파일 |
| Channel | object의 분류 체계 (디렉토리)이자, 특정 미디어의 배포 (접속 url 생성)를 실행하는 매개 미디버스 사용자 콘솔 (https://midibus.kinxcdn.com)을 통해 (‘설정 > 채널’ 메뉴) 해당 채널 소속 Object들 전체의 player 일괄 설정 등이 가능 |
| Object | 채널을 통해 배포되어 고유한 접속 url 정보를 갖게된 개별 미디어의 배포물 한 개의 미디어가 N개의 채널에 배포될 경우, N개의 Object가 생성됨 |
인증 ¶
API 인증 안내
KINXCDN의 인증은 Token 발급 방식의 인증을 사용합니다. 발급 된 API 키를 사용하여 접근 token을 획득하여 API를 호출 할 때마다 Header에 해당 token을 포함하여 요청해야 합니다.
API 요청 순서
- Token API를 통하여 Token 획득(Basic Auth)
- HTTP Header에 획등 한 Token을 포함하여 API 호출
- Token 만료 시 재발급 하여 API 사용
고객별 고유한 APIkey 정보는 미디버스 사용자 콘솔 (https://midibus.kinxcdn.com)에 로그인 후 확인할 수 있습니다.(설정>부가서비스/API)
Basic Auth
-
HTTP Basic Auth 표준 인증 방법을 사용
https://en.wikipedia.org/wiki/Basic_access_authentication -
Authentication 헤더 표준 HTTP Authorization 헤더를 사용하여 인증 정보를 전달합니다.
Authorization: Basic [AuthKey]
- AuthKey 생성
[AuthKey] = Base64(Email+":"+ApiKey)
Token Auth
-
Token 요청을 사용하여 발급받은 token을 HTTP 헤더에 포함하여 요청
-
Token 헤더 사용 HTTP 헤더를 사용하여 인증 정보를 전달합니다.
X-Mbus-Token: [Token]
Token ¶
API 인증에 사용하는 Token API
Headers
Authorization: Basic [AuthKey]Headers
Content-Type: application/jsonBody
{
"email": "cdn@kinx.net",
"expire": "20190331123243",
"token": "eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJrc3dlZTJAa2lueC5uZXQiLCJpYXQiOjE2NTcyNDAwMDQsImV4cCI6MTY1NzI0MzYwNH0.z888bssAG11OC0ckCNYfXxI1fWe5N0PJcPApaNrNqBY"
}Schema
{
"$schema": "http://json-schema.org/draft-04/schema#",
"type": "object",
"properties": {
"email": {
"type": "string",
"description": "계정"
},
"expire": {
"type": "string",
"description": "만료시간"
},
"token": {
"type": "string",
"description": "발급토큰"
}
}
}Create TokenGET/v2/token{?expire}
Token 발급을 요청 합니다. 발급 된 Token은 API 요청 시 마다 헤더에 포함하여 요청 합니다.
발급 된 Token은 만료 시간 까지 유효하며, 만료 시간 까지는 계속적인 재사용이 가능합니다. 만료 된 이후에는 Token을 재 발급받아 사용해야 합니다.
- expire
Timestamp 값으로 현재 시점으로 부터 최대 24시간까지 지정 가능
- expire
number(required) Example: 1523602918Token 만료 시간 (timestamp)
미디어 ¶
전체 카테고리 ¶
업로드한 미디어 (원본 및 인코딩 파일)를 분류하고 연결된 배포 채널을 관리하는 API 기능입니다.
Headers
Content-Type: application/jsonBody
{
"category_name": "카테고리A",
"save_origin": true,
"channel_id_list": [
"ch17d9011"
]
}Schema
{
"$schema": "http://json-schema.org/draft-04/schema#",
"type": "object",
"properties": {
"category_name": {
"type": "string",
"description": "카테고리 명 (required)"
},
"save_origin": {
"type": "boolean",
"description": "원본 저장 여부 (optional)"
},
"channel_id_list": {
"type": "array",
"description": "배포 채널 (optional)"
}
}
}Create CategoryPOST/v2/media
특정한 설정 조건(원본 저장 여부, 업로드시 자동으로 배포할 채널 ID등)의 신규 카테고리를 생성합니다.
Parameters
| 항목명 | Type | 설명 | 필수 여부 |
|---|---|---|---|
| category_name | string | 생성 할 카테고리 명을 지정합니다 | required |
| save_origin | boolean | 해당 카테고리로 업로드 시 원본 파일을 별도로 저장하여 추가 인코딩이나 배포 용도로 사용 합니다(default : true) | optional |
| channel_id_list | string | 해당 카테고리로 등록 된 미디어는 자동으로 지정 채널로 배포 됩니다 | optional |
Headers
Content-Type: application/jsonBody
{
"category_list": [
{
"category_id": 11545611,
"category_name": "카테고리A",
"bytes": 153200,
"basic": false,
"save_origin": true,
"channel_id_list": [
"ch17d9011"
],
"created": "20190110123243",
"modified": "20190110123243"
}
]
}Schema
{
"$schema": "http://json-schema.org/draft-04/schema#",
"type": "object",
"properties": {
"category_list": {
"type": "array",
"items": {
"type": "object",
"properties": {
"category_id": {
"type": "number",
"description": "카테고리 ID"
},
"category_name": {
"type": "string",
"description": "카테고리 명"
},
"bytes": {
"type": "number",
"description": "사용량"
},
"basic": {
"type": "boolean",
"description": "기본 카테고리 여부"
},
"save_origin": {
"type": "boolean",
"description": "원본 저장 여부"
},
"channel_id_list": {
"type": "array",
"description": "배포 채널"
},
"created": {
"type": "string",
"description": "생성 일시"
},
"modified": {
"type": "string",
"description": "변경 일시"
}
}
}
}
}
}List CategoryGET/v2/media
고객별로 생성된 모든 카테고리의 목록을 조회합니다.
카테고리 ¶
Headers
Content-Type: multipart/form-data
X-Mbus-Channel: ch_17d9011
X-Mbus-Path: /dir1Body
{
"success": "true",
"media_id": "181f6979397c3d46"
}Schema
{
"type": "object",
"properties": {
"success": {
"type": "string",
"description": "성공 여부"
},
"media_id": {
"type": "string",
"description": "미디어 ID"
}
},
"$schema": "http://json-schema.org/draft-04/schema#"
}Upload MediaPOST/v2/media/{category_id}
생성할 미디어의 원본 파일을 특정 카테고리로 업로드 합니다.
(채널 ID를 추가하면, 업로드되는 카테고리에 연결된 배포 채널 외 기재된 채널로 배포가 추가됩니다.)
인코딩 완료 알림 발송
-
미디버스 사용자 콘솔(https://midibus.kinxcdn.com) 내 Call back URL 등록 (‘설정 > 인코딩’ ) 기능 활용
-
입력한 Call back URL로 JSON 데이터가 POST로 전송됩니다.
미디어 파일 업로드
업로드 시에는 Content-Disposion: form-data 를 사용 하여 업로드 합니다
Content-Disposition: form-data
-
form-data : file
-
filename : 파일명
Header Parameters
| 항목명 | Type | 설명 | 필수 여부 |
|---|---|---|---|
| X-Mbus-Channel | string | 배포 할 채널을 지정(복수 채널 입력 시 콤마(,)로 구분하여 입력) | optional |
| X-Mbus-Path | string | 업로드 경로를 지정(디렉토리 구조로 보기 활성화 시 동작)을 지정 | optional |
- category_id
number(required) Example: 11545611카테고리 ID
Headers
Content-Type: application/jsonBody
{
"category_id": 11545611,
"next": "181fb32ff2ad777c",
"media_list": [
{
"media_id": "181f6979397c3d46",
"media_name": "테스트 미디어",
"duration": "1:12:23",
"poster_url": "포스터 이미지 URL",
"created": "20190110123243",
"modified": "20190110123243"
}
]
}Schema
{
"$schema": "http://json-schema.org/draft-04/schema#",
"type": "object",
"properties": {
"category_id": {
"type": "number",
"description": "카테고리 ID"
},
"next": {
"type": "string",
"description": "다음 요청 키"
},
"media_list": {
"type": "array",
"items": {
"type": "object",
"properties": {
"media_id": {
"type": "string",
"description": "미디어 ID"
},
"media_name": {
"type": "string",
"description": "미디어 명"
},
"duration": {
"type": "string",
"description": "재생 시간"
},
"poster_url": {
"type": "string"
},
"created": {
"type": "string",
"description": "생성 일시"
},
"modified": {
"type": "string",
"description": "변경 일시"
}
}
}
}
}
}List MediaGET/v2/media/{category_id}{?next,limit,start,end,state}
특정 카테고리 내 미디어의 목록을 조회합니다.
-
start, end 파라미터는 동시 사용 시에만 동작하며, 한 개만 사용 시에는 동작하지 않습니다.
-
next 파라미터는 null로 요청 시 가장 최신이 조회 되며, 다음 요청을 위한 next가 response에 포함 됩니다
- category_id
number(required) Example: 11545611카테고리 ID
- next
string(optional) Example: 1f3987cfca23f932시작 키
- limit
number(optional) Example: 100표시 수
- start
string(optional) Example: 20190110000000조회 시작
- end
string(optional) Example: 20190310235959조회 끝
- state
number(optional) Example: 1활성화 여부 (1:활성, 0:비활성)
Headers
Content-Type: application/jsonBody
{
"category_name": "카테고리A",
"save_origin": true,
"channel_id_list": [
"ch17d9011"
]
}Schema
{
"$schema": "http://json-schema.org/draft-04/schema#",
"type": "object",
"properties": {
"category_name": {
"type": "string",
"description": "카테고리 명 (optional)"
},
"save_origin": {
"type": "boolean",
"description": "원본 저장 여부 (optional)"
},
"channel_id_list": {
"type": "array",
"description": "배포 채널 (optional)"
}
}
}Modify CategoryPUT/v2/media/{category_id}
특정 카테고리의 세부 정보 (카테고리명, 원본 저장 여부, 업로드시 자동으로 배포할 채널 등)를 변경합니다.
- channel_id를 ""의 비어있는 문자열로 전송 할 경우, 채널 연결을 삭제 합니다.(null로 전송 시는 기존 정보 유지)
Parameters
| 항목명 | Type | 설명 | 필수 여부 |
|---|---|---|---|
| category_name | string | 카테고리 명을 변경합니다 | optional |
| save_origin | boolean | 해당 카테고리로 업로드 시 원본 파일을 별도로 저장하여 추가 인코딩이나 배포 용도로 사용 합니다(default : true) | optional |
| channel_id_list | array | 해당 카테고리로 등록 된 미디어는 자동으로 지정 채널로 배포 됩니다 | optional |
- category_id
number(required) Example: 11545611카테고리 ID
미디어 ¶
미디어의 목록 조회, 추가, 변경, 삭제 할 수 있는 API 기능입니다.
Body
{
"media_id": "181f6979397c3d46",
"category_id": 11545611,
"media_name": "테스트 미디어",
"duration": "1:12:23",
"poster_url": "포스터 이미지 URL",
"description": "테이트 미디어 설명",
"ori_content": {
"content_id": "17e23c23501b17c6",
"profile_name": "원본",
"bytes": "159187869",
"width": 1280,
"height": 720,
"bitrate": 1230,
"fps": "24.000",
"ratio": "16:9"
},
"content_list": [
{
"content_id": "17e23c23f222c466",
"profile_name": "1080P",
"bytes": "123512351",
"width": 1900,
"height": 1080,
"bitrate": 2130,
"fps": "30.000",
"ratio": "16:9"
}
],
"object_simple_list": [
{
"channel_id": "ch17d9011",
"object_id": "18007fdc133bccb4"
}
],
"subtitle_list": [
{
"sub_id": 1660883405236,
"sub_label": "영어",
"sub_name": "subtitle.vtt",
"sub_lang": "en",
"sub_default": true,
"created": "20190110123243"
}
],
"created": "20190110123243",
"modified": "20190110123243",
"encoded": "20190110123412",
"media_enable": "true"
}Schema
{
"type": "object",
"properties": {
"media_id": {
"type": "string",
"description": "미디어 ID"
},
"category_id": {
"type": "number",
"description": "카테고리 ID"
},
"media_name": {
"type": "string",
"description": "미디어 명"
},
"duration": {
"type": "string",
"description": "재생 시간"
},
"poster_url": {
"type": "string"
},
"description": {
"type": "string",
"description": "Description"
},
"ori_content": {
"type": "object",
"properties": {
"content_id": {
"type": "string",
"description": "컨텐츠 ID"
},
"profile_name": {
"type": "string",
"description": "프로파일 명"
},
"bytes": {
"type": "string",
"description": "용량"
},
"width": {
"type": "number",
"description": "가로 크기"
},
"height": {
"type": "number",
"description": "세로 크기"
},
"bitrate": {
"type": "number",
"description": "비트레이트"
},
"fps": {
"type": "string",
"description": "프레임 수"
},
"ratio": {
"type": "string",
"description": "화면 비율"
}
}
},
"content_list": {
"type": "array",
"items": {
"type": "object",
"properties": {
"content_id": {
"type": "string",
"description": "컨텐츠 ID"
},
"profile_name": {
"type": "string",
"description": "프로파일 명"
},
"bytes": {
"type": "string",
"description": "용량"
},
"width": {
"type": "number",
"description": "가로 크기"
},
"height": {
"type": "number",
"description": "세로 크기"
},
"bitrate": {
"type": "number",
"description": "비트레이트"
},
"fps": {
"type": "string",
"description": "프레임 수"
},
"ratio": {
"type": "string",
"description": "화면 비율"
}
}
}
},
"object_simple_list": {
"type": "array",
"items": {
"type": "object",
"properties": {
"channel_id": {
"type": "string",
"description": "배포 채널"
},
"object_id": {
"type": "string",
"description": "배포 ID"
}
}
}
},
"subtitle_list": {
"type": "array",
"items": {
"type": "object",
"properties": {
"sub_id": {
"type": "number",
"description": "자막 ID"
},
"sub_label": {
"type": "string",
"description": "자막명"
},
"sub_name": {
"type": "string",
"description": "자막 파일명"
},
"sub_lang": {
"type": "string",
"description": "연결 언어"
},
"sub_default": {
"type": "boolean",
"description": "기본 자막 여부"
},
"created": {
"type": "string",
"description": "생성 일시"
}
}
}
},
"created": {
"type": "string",
"description": "생성 일시"
},
"modified": {
"type": "string",
"description": "변경 일시"
},
"encoded": {
"type": "string",
"description": "인코딩 완료 일시"
},
"media_enable": {
"type": "string",
"description": "상태(활성,비활성)"
}
},
"$schema": "http://json-schema.org/draft-04/schema#"
}Info MediaGET/v2/media/{category_id}/{media_id}
특정 미디어의 상세 정보 (미디어명, 타입, 용량, 원본 및 인코딩된 세부 컨텐츠 파일, 자막, 대표 이미지, 썸네일 등)를 조회합니다.
- category_id
number(required) Example: 11545611카테고리 ID
- media_id
string(required) Example: 17fbb68b47ff9994미디어 ID
Headers
Content-Type: application/jsonBody
{
"media_enable": true,
"media_name": "샘플 비디오",
"description": "미디어 설명"
}Schema
{
"$schema": "http://json-schema.org/draft-04/schema#",
"type": "object",
"properties": {
"media_enable": {
"type": "boolean",
"description": "상태(활성, 비활성) (optional)"
},
"media_name": {
"type": "string",
"description": "미디어 명 (optional)"
},
"description": {
"type": "string",
"description": "상세 (optional)"
}
}
}Modify MediaPUT/v2/media/{category_id}/{media_id}
특정 미디어의 정보 (이름, 활성화 여부 등)를 변경합니다.
| 항목명 | Type | 설명 | 필수 여부 |
|---|---|---|---|
| media_enable | boolean | 미디어 활성화 여부를 지정합니다(default : true) | optional |
| media_name | string | 미디어 이름을 지정합니다 | optional |
| description | string | 미디어의 필요한 정보나 설명을 입력하여 사용합니다 | optional |
- category_id
number(required) Example: 11545611카테고리 ID
- media_id
string(required) Example: 17fbb68b47ff9994미디어 ID
Delete MediaDELETE/v2/media/{category_id}/{media_id}
특정 미디어(원본, 인코딩 파일 일체)를 삭제 합니다. (미디어를 삭제시, 연계된 배포 결과물인 object 또한 삭제됩니다.)
- category_id
number(required) Example: 11545611카테고리 ID
- media_id
string(required) Example: 17fbb68b47ff9994미디어 ID
Headers
Content-Type: application/jsonBody
{
"channel_id": "ch17d9011"
}Schema
{
"$schema": "http://json-schema.org/draft-04/schema#",
"type": "object",
"properties": {
"channel_id": {
"type": "string",
"description": "채널 ID"
}
}
}Headers
Content-Type: application/jsonBody
{
"channel_id": "ch17d9011",
"object_id": "18007fdc133bccb4"
}Schema
{
"$schema": "http://json-schema.org/draft-04/schema#",
"type": "object",
"properties": {
"channel_id": {
"type": "string",
"description": "배포 채널"
},
"object_id": {
"type": "string",
"description": "배포 ID"
}
}
}Publish MediaPOST/v2/media/{category_id}/{media_id}/publish
특정 미디어를 채널로 배포합니다.
| 항목명 | Type | 설명 | 필수 여부 |
|---|---|---|---|
| channel_id | string | 해당 카테고리로 등록 된 미디어는 자동으로 지정 채널로 배포 됩니다 | required |
- category_id
number(required) Example: 11545611카테고리 ID
- media_id
string(required) Example: 17fbb68b47ff9994미디어 ID
Headers
Content-Type: application/jsonBody
{
"profile_id": 531,
"ori_use": false
}Schema
{
"$schema": "http://json-schema.org/draft-04/schema#",
"type": "object",
"properties": {
"profile_id": {
"type": "number",
"description": "프로파일 ID (required)"
},
"ori_use": {
"type": "boolean",
"description": "원본 사용 여부 (optional)"
}
}
}Add EncodingPOST/v2/media/{category_id}/{media_id}
특정 미디어에 대해 최초 영상 업로드 (미디어 생성) 이후, 별도의 조건으로 인코딩을 실행하여 컨텐츠를 추가합니다.
인코딩 완료 알림 발송
-
미디버스 사용자 콘솔(https://midibus.kinxcdn.com)내 Call back URL 등록 (‘설정 > 인코딩’ ) 기능 활용
-
입력한 Call back URL로 JSON 데이터가 POST로 전송됩니다.
Parameters
| 항목명 | Type | 설명 | 필수 여부 |
|---|---|---|---|
| profile_id | number | 추가 인코딩을 요청할 인코딩 profile을 지정합니다 | required |
| ori_use | boolean | true 시 인코딩을 진행하지 않고 원본영상을 직접 연결합니다(default : false) | optional |
- category_id
number(required) Example: 11545611카테고리 ID
- media_id
string(required) Example: 17fbb68b47ff9994미디어 ID
Delete EncodingDELETE/v2/media/{category_id}/{media_id}/{content_id}
특정 미디어의 원본 또는 특정 인코딩 컨텐츠 파일을 삭제합니다.
- category_id
number(required) Example: 11545611카테고리 ID
- media_id
string(required) Example: 17fbb68b47ff9994미디어 ID
- content_id
string(required) Example: 178d8874cec34fcbContent ID
Headers
Content-Type: application/jsonBody
{
"category_lists": [
{
"profile_id": 153,
"profile_name": "프로파일 명",
"v_size": "영상 사이즈",
"v_bitrate": "영상 비트레이트",
"a_codec": "음성 코덱",
"a_bitrate": "음성 비트레이트"
}
]
}Schema
{
"$schema": "http://json-schema.org/draft-04/schema#",
"type": "object",
"properties": {
"category_lists": {
"type": "array",
"items": {
"type": "object",
"properties": {
"profile_id": {
"type": "number",
"description": "프로파일 ID"
},
"profile_name": {
"type": "string"
},
"v_size": {
"type": "string"
},
"v_bitrate": {
"type": "string"
},
"a_codec": {
"type": "string"
},
"a_bitrate": {
"type": "string"
}
}
}
}
}
}List Encoding ProfileGET/v2/media/profile
등록되어 있는 모든 프로파일 목록을 조회합니다.
대표 이미지 ¶
Headers
Content-Type: multipart/form-dataUpload PosterPOST/v2/media/{category_id}/{media_id}/poster
특정 미디어의 플레이어 대표 이미지를 등록합니다.
대표 이미지 파일 업로드
업로드 시에는 Content-Disposion: form-data 를 사용 하여 업로드 합니다
Content-Disposition: form-data
-
form-data : file
-
filename : 파일명
- category_id
number(required) Example: 11545611카테고리 ID
- media_id
string(required) Example: 17fbb68b47ff9994미디어 ID
Delete PosterDELETE/v2/media/{category_id}/{media_id}/poster
특정 미디어의 플레이어 대표 이미지를 삭제합니다.
- category_id
number(required) Example: 11545611카테고리 ID
- media_id
string(required) Example: 17fbb68b47ff9994미디어 ID
자막 ¶
Headers
Content-Type: multipart/form-data
X-Mbus-Label: 한국어
X-Mbus-Lang: koBody
{
"success": "true",
"subtitle_id": "1673936365349"
}Schema
{
"type": "object",
"properties": {
"success": {
"type": "string",
"description": "성공 여부"
},
"subtitle_id": {
"type": "string",
"description": "자막 ID"
}
},
"$schema": "http://json-schema.org/draft-04/schema#"
}Upload SubtitlePOST/v2/media/{category_id}/{media_id}/subtitle
특정 미디어의 영상 재생시 적용될 자막 파일을 등록 및 설정합니다.
자막 파일 업로드
업로드 시에는 Content-Disposion: form-data 를 사용 하여 업로드 합니다
Content-Disposition: form-data
-
form-data : file
-
filename : 파일명
Header Parameters
| 항목명 | Type | 설명 | 필수 여부 |
|---|---|---|---|
| X-Mbus-Label | string | 자막 이름을 지정합니다 | required |
| X-Mbus-Lang | string | 해당 자막을 연결할 언어를 지정합니다. 연결 언어 코드(ko, en, zh, ja, fr, de, es, ur, ar) | optional |
- category_id
number(required) Example: 11545611카테고리 ID
- media_id
string(required) Example: 17fbb68b47ff9994미디어 ID
Headers
Content-Type: application/jsonBody
{
"lang": "en",
"subtitle_default": true
}Schema
{
"$schema": "http://json-schema.org/draft-04/schema#",
"type": "object",
"properties": {
"lang": {
"type": "string",
"description": "연결 언어 (optional)"
},
"subtitle_default": {
"type": "boolean",
"description": "기본 자막 설정 (optional)"
}
}
}Modify SubtitlePUT/v2/media/{category_id}/{media_id}/subtitle/{subtitle_id}
특정 미디어에 적용된 자막의 설정값 (기본 노출 여부, 기본 언어)을 변경합니다.
Parameters
| 항목명 | Type | 설명 | 필수 여부 |
|---|---|---|---|
| label | string | 자막 이름을 지정합니다 | optional |
| lang | string | 해당 자막을 연결할 언어를 지정합니다. 연결 언어 코드(ko, en, zh, ja, fr, de, es, ur, ar) | optional |
| subtitle_default | string | 해당 자막은 기본 자막으로 설정하여 노출시킵니다 | optional |
- category_id
number(required) Example: 11545611카테고리 ID
- media_id
string(required) Example: 17fbb68b47ff9994미디어 ID
- subtitle_id
String(required) Example: 173228766068f899Subtitle ID
Delete SubtitleDELETE/v2/media/{category_id}/{media_id}/subtitle/{subtitle_id}
특정 미디어에 적용된 자막 파일을 삭제합니다.
- category_id
number(required) Example: 11545611카테고리 ID
- media_id
string(required) Example: 17fbb68b47ff9994미디어 ID
- subtitle_id
String(required) Example: 173228766068f899Subtitle ID
캡쳐 ¶
Headers
Content-Type: application/jsonBody
{
"timestamp": 10000,
"width": 1280,
"height": 720
}Schema
{
"$schema": "http://json-schema.org/draft-04/schema#",
"type": "object",
"properties": {
"timestamp": {
"type": "number",
"description": "캡처 위치 (required)"
},
"width": {
"type": "number",
"description": "가로 크기 (required)"
},
"height": {
"type": "number",
"description": "세로 크기 (required)"
}
}
}Image CapturePOST/v2/media/{category_id}/{media_id}/capture
특정 미디어에서 썸네일 (캡쳐 이미지)을 추출 보관합니다.
Parameters
| 항목명 | Type | 설명 | 필수 여부 |
|---|---|---|---|
| timestamp | number | 이미지를 추출할 영상의 위치를 지정합니다 | requied |
| width | number | 추출할 이미지의 가로 사이즈를 지정합니다 | requied |
| height | number | 추출할 이미지의 세로 사이즈를 지정합니다 | requied |
- category_id
number(required) Example: 11545611카테고리 ID
- media_id
string(required) Example: 17fbb68b47ff9994미디어 ID
Body
{
"media_id": "181f6979397c3d46",
"category_id": "152",
"capture_list": [
{
"timestamp": 10000,
"width": 1280,
"height": 720,
"img_url": "이미지 URL",
"created": "20190110123243"
}
]
}Schema
{
"type": "object",
"properties": {
"media_id": {
"type": "string",
"description": "미디어 ID"
},
"category_id": {
"type": "string",
"description": "카테고리 ID"
},
"capture_list": {
"type": "array",
"items": {
"type": "object",
"properties": {
"timestamp": {
"type": "number",
"description": "캡처 위치"
},
"width": {
"type": "number",
"description": "가로 크기"
},
"height": {
"type": "number",
"description": "세로 크기"
},
"img_url": {
"type": "string"
},
"created": {
"type": "string",
"description": "생성 일시"
}
}
}
}
},
"$schema": "http://json-schema.org/draft-04/schema#"
}Info CaptureGET/v2/media/{category_id}/{media_id}/capture
특정 미디어에서 추출 보관중인 썸네일 (캡쳐 이미지) 리스트 정보를 조회합니다.
- category_id
number(required) Example: 11545611카테고리 ID
- media_id
string(required) Example: 17fbb68b47ff9994미디어 ID
Delete CaptureDELETE/v2/media/{category_id}/{media_id}/capture/{timestamp}
특정 미디어에 저장되어 있는 썸네일 (캡쳐 이미지)을 삭제합니다.
- category_id
number(required) Example: 11545611카테고리 ID
- media_id
string(required) Example: 17fbb68b47ff9994미디어 ID
- timestamp
number(required) Example: 10000캡쳐 위치
채널 ¶
미디어의 배포를 관리하는 API 기능입니다.
전체 채널 ¶
Headers
Content-Type: application/jsonBody
{
"channel_name": "채널1",
"open": true
}Schema
{
"$schema": "http://json-schema.org/draft-04/schema#",
"type": "object",
"properties": {
"channel_name": {
"type": "string",
"description": "채널 명 (required)"
},
"open": {
"type": "boolean",
"description": "공개 상태 (optional)"
}
}
}Create ChannelPOST/v2/channel
공개여부, 재생 조건, 플레이어 등 특정 설정 조건의 VOD 신규 채널을 생성합니다.
Parameters
| 항목명 | Type | 설명 | 필수 여부 |
|---|---|---|---|
| channel_name | string | 생성할 채널의 이름을 지정합니다 | requied |
| open | boolean | 생성할 채널의 공개 여부를 지정합니다(default : true) | optional |
Headers
Content-Type: application/jsonBody
{
"channel_list": [
{
"channel_id": "ch16187ae7",
"channel_name": "채널1",
"open": true,
"play_control": false,
"security_list": [
"IP"
],
"created": "20190110123243",
"modified": "20190110123243"
}
]
}Schema
{
"$schema": "http://json-schema.org/draft-04/schema#",
"type": "object",
"properties": {
"channel_list": {
"type": "array",
"items": {
"type": "object",
"properties": {
"channel_id": {
"type": "string",
"description": "채널 ID"
},
"channel_name": {
"type": "string",
"description": "채널 명"
},
"open": {
"type": "boolean",
"description": "공개 상태"
},
"play_control": {
"type": "boolean",
"description": "재생 제한"
},
"security_list": {
"type": "array",
"items": {
"type": "string"
}
},
"created": {
"type": "string",
"description": "생성 일시"
},
"modified": {
"type": "string",
"description": "변경 일시"
}
}
}
}
}
}List ChannelGET/v2/channel
고객별 생성된 채널 목록을 조회합니다.
채널 ¶
Body
{
"channel_id": "ch16187ae7",
"next": "181fb32ff2ad777c",
"object_list": [
{
"object_id": "18007fdc133bccb4",
"media_id": "17fbb68b47ff9994",
"category_id": 11545611,
"media_name": "테스트 미디어",
"duration": "1:12:23",
"poster_url": "포스터 이미지 URL",
"alias": "샘플미디어",
"created": "20190110123243"
}
]
}Schema
{
"type": "object",
"properties": {
"channel_id": {
"type": "string",
"description": "채널 ID"
},
"next": {
"type": "string",
"description": "다음 요청 키"
},
"object_list": {
"type": "array",
"items": {
"type": "object",
"properties": {
"object_id": {
"type": "string",
"description": "배포 ID"
},
"media_id": {
"type": "string",
"description": "미디어 ID"
},
"category_id": {
"type": "number",
"description": "카테고리 ID"
},
"media_name": {
"type": "string",
"description": "미디어 명"
},
"duration": {
"type": "string",
"description": "재생 시간"
},
"poster_url": {
"type": "string"
},
"alias": {
"type": "string",
"description": "사용자 별칭"
},
"created": {
"type": "string",
"description": "생성 일시"
}
}
}
}
},
"$schema": "http://json-schema.org/draft-04/schema#"
}List ObjectGET/v2/channel/{channel_id}{?next,limit,start,end,tag}
특정 채널 내 object 목록을 조회합니다.
-
start, end 파라미터는 동시 사용 시에만 동작하며, 한 개만 사용 시에는 동작하지 않습니다.
-
next 파라미터는 null로 요청 시 가장 최신이 조회 되며, 다음 요청을 위한 next가 response에 포함 됩니다
- channel_id
string(required) Example: ch16187ae7채널 ID
- next
string(optional) Example: 1f3987cfca23f932시작 키
- limit
number(optional) Example: 100표시 수
- start
string(optional) Example: 20190110000000조회 시작
- end
string(optional) Example: 20190310235959조회 끝
- tag
string(optional) Example: tag1조회 태그
Headers
Content-Type: application/jsonBody
{
"channel_name": "채널1",
"open": true
}Schema
{
"$schema": "http://json-schema.org/draft-04/schema#",
"type": "object",
"properties": {
"channel_name": {
"type": "string",
"description": "채널 명 (required)"
},
"open": {
"type": "boolean",
"description": "공개 상태 (optional)"
}
}
}Modify ChannelPUT/v2/channel/{channel_id}
특정 채널의 이름 및 공개 여부 등 일부 설정값을 변경합니다.
Parameters
| 항목명 | Type | 설명 | 필수 여부 |
|---|---|---|---|
| channel_name | string | 생성할 채널의 이름을 지정합니다 | optional |
| open | boolean | 생성할 채널의 공개 여부를 지정합니다 | optional |
- channel_id
string(required) Example: ch16187ae7채널 ID
재생 정보 조회 ¶
Body
{
"play_info_list": [
{
"play_id": "9d91d5ea3aee49009877b94ad13ae1ab",
"channel_id": "ch16187ae7",
"object_id": "188ffbf19ec74514",
"start_date": "20230718174734",
"end_date": "20230718175251",
"watched_sections": [
{
"start": 0,
"end": 101
}
],
"play_ip": "110.193.205.72",
"media_length": 282,
"media_play_time": 101,
"media_pos": 101,
"label_list": [
"USER1"
]
}
]
}Schema
{
"type": "object",
"properties": {
"play_info_list": {
"type": "array",
"items": {
"type": "object",
"properties": {
"play_id": {
"type": "string",
"description": "재생 ID"
},
"channel_id": {
"type": "string",
"description": "채널 ID"
},
"object_id": {
"type": "string",
"description": "배포 ID"
},
"start_date": {
"type": "string",
"description": "재생 시작 시간"
},
"end_date": {
"type": "string",
"description": "재생 종료 시간"
},
"watched_sections": {
"type": "array",
"items": {
"type": "object",
"properties": {
"start": {
"type": "number",
"description": "시작 시간"
},
"end": {
"type": "number",
"description": "마지막 시간"
}
}
}
},
"play_ip": {
"type": "string",
"description": "재생 IP"
},
"media_length": {
"type": "number",
"description": "미디어 길이"
},
"media_play_time": {
"type": "number",
"description": "미디어 재생 시간"
},
"media_pos": {
"type": "number",
"description": "미디어 재생 위치"
},
"label_list": {
"type": "array",
"items": {
"type": "string",
"description": "라벨 명"
}
}
}
}
}
},
"$schema": "http://json-schema.org/draft-04/schema#"
}Play InfoGET/v2/channel/{channel_id}/playinfo{?label,object_id,offset,limit,start,end}
재생 정보를 조회합니다.
플레이어 재생 주소 뒤에 label 파라미터를 포함하여 재생 시 해당 파라미터 값으로 재생 정보가 저장됩니다. label의 값은 별도로 정해진 값이 없으며, 사용자 ID등을 넣어 활용하실 수 있습니다.
- start, end 파라미터를 포함하지 않을 경우 최근 1시간 내의 재생 정보가 조회 됩니다.
- channel_id
string(required) Example: ch16187ae7채널 ID
- label
string(required) Example: label1조회 라벨
- object_id
string(optional) Example: 18007fdc133bccb4조회 할 배포 ID
- offset
string(optional) Example: 0표시 번호(페이지 번호)
- limit
number(optional) Example: 100표시 수
- start
string(optional) Example: 20190110000000조회 시작
- end
string(optional) Example: 20190310235959조회 끝
Object ¶
Body
{
"object_id": "18007fdc133bccb4",
"media_id": "17fbb68b47ff9994",
"category_id": 11545611,
"media_name": "테스트 미디어",
"duration": "1:12:23",
"poster_url": "포스터 이미지 URL",
"alias": "샘플미디어",
"created": "20190110123243",
"player_url": "[URL]",
"hls_url": "[URL]",
"direct_url": "[URL]"
}Schema
{
"type": "object",
"properties": {
"object_id": {
"type": "string",
"description": "배포 ID"
},
"media_id": {
"type": "string",
"description": "미디어 ID"
},
"category_id": {
"type": "number",
"description": "카테고리 ID"
},
"media_name": {
"type": "string",
"description": "미디어 명"
},
"duration": {
"type": "string",
"description": "재생 시간"
},
"poster_url": {
"type": "string"
},
"alias": {
"type": "string",
"description": "사용자 별칭"
},
"created": {
"type": "string",
"description": "생성 일시"
},
"player_url": {
"type": "string",
"description": "재생 링크"
},
"hls_url": {
"type": "string",
"description": "HLS"
},
"direct_url": {
"type": "string",
"description": "다이렉트 URL"
}
},
"$schema": "http://json-schema.org/draft-04/schema#"
}Info ObjectGET/v2/channel/{channel_id}/{object_id}
특정 채널의 특정 object의 상세 정보 (미디어 ID, 카테고리 ID, 접속 url, 생성일 등)를 조회합니다.
- channel_id
string(required) Example: ch16187ae7채널 ID
- object_id
string(required) Example: 17f8b713c916acc4배포 ID
Delete ObjectDELETE/v2/channel/{channel_id}/{object_id}
특정 채널 내 특정 object를 삭제합니다.
- ‘미디어 > 미디어 관리’ API를 통해 미디어 삭제 시, 해당 미디어에 연결된 object는 자동 삭제됩니다.
- channel_id
string(required) Example: ch16187ae7채널 ID
- object_id
string(required) Example: 17f8b713c916acc4배포 ID
Headers
Content-Type: application/jsonBody
{
"channel_id": "ch17d9011"
}Schema
{
"$schema": "http://json-schema.org/draft-04/schema#",
"type": "object",
"properties": {
"channel_id": {
"type": "string",
"description": "채널 ID"
}
}
}Move ObjectPUT/v2/channel/{channel_id}/{object_id}/move
특정 object의 채널을 변경합니다.
채널이 변경된 object는 공개여부, 재생조건, 플레이어 등 변경된 채널의 설정값을 기준으로 배포 정책이 변경됩니다.
Parameters
| 항목명 | Type | 설명 | 필수 여부 |
|---|---|---|---|
| channel_id | string | 이동할 채널을 지정합니다 | requied |
- channel_id
string(required) Example: ch16187ae7채널 ID
- object_id
string(required) Example: 17f8b713c916acc4배포 ID
태그 ¶
Body
{
"tag_list": [
"tag1"
]
}Schema
{
"type": "object",
"properties": {
"tag_list": {
"type": "array",
"items": {
"type": "string"
},
"description": "태그 명"
}
},
"$schema": "http://json-schema.org/draft-04/schema#"
}List TagGET/v2/channel/{channel_id}/{object_id}/tag
특정 미디어의 태그를 조회합니다.
- channel_id
string(required) Example: ch16187ae7채널 ID
- object_id
string(required) Example: 17f8b713c916acc4배포 ID
Headers
Content-Type: application/jsonBody
{
"tag_list": [
"tag1"
]
}Schema
{
"$schema": "http://json-schema.org/draft-04/schema#",
"type": "object",
"properties": {
"tag_list": {
"type": "array",
"description": "태그 명 (required)"
}
}
}Change TagPUT/v2/channel/{channel_id}/{object_id}/tag
특정 미디어의 태그를 교체(등록)합니다.
- 새로운 태그 리스트로 전체 교체 됩니다
Parameters
| 항목명 | Type | 설명 | 필수 여부 |
|---|---|---|---|
| tag_list | string | 교체 할 태그 리스트를 지정합니다 | requied |
- channel_id
string(required) Example: ch16187ae7채널 ID
- object_id
string(required) Example: 17f8b713c916acc4배포 ID
보안 재생 키 ¶
Headers
Content-Type: application/jsonBody
{
"key": "61f202e11e9bc42ed8855b89f5c51e68"
}Schema
{
"$schema": "http://json-schema.org/draft-04/schema#",
"type": "object",
"properties": {
"key": {
"type": "string",
"description": "재생 키"
}
}
}Create Play keyGET/v2/channel/{channel_id}/{object_id}/playkey{?expire,ip}
보안 재생 채널 내의 미디어 재생에 필요한 보안 재생 키를 생성합니다.
Parameters
| 항목명 | Type | 설명 | 필수 여부 |
|---|---|---|---|
| expire | number | 만료 시간(UNIX TimeStamp, 최대값: +30일) | requied |
| ip | string | 접근 허용 IP | optional |
- channel_id
string(required) Example: ch16187ae7채널 ID
- object_id
string(required) Example: 17f8b713c916acc4배포 ID
- expire
number(required) Example: 1523602918만료 시간
- ip
string(optional) Example: 203.230.53.3접근 허용 IP
보안 재생 키 ¶
Headers
Content-Type: application/jsonBody
{
"key": "61f202e11e9bc42ed8855b89f5c51e68"
}Schema
{
"$schema": "http://json-schema.org/draft-04/schema#",
"type": "object",
"properties": {
"key": {
"type": "string",
"description": "재생 키"
}
}
}Create Ext keyGET/v2/channel/{channel_id}/{object_id}/extkey{?label,expire,ip,concurrent,watermark}
보안 재생 채널 내의 동시재생 제한, 워터마크 사용 시에 필요한 보안 재생 키를 생성합니다.
Parameters
| 항목명 | Type | 설명 | 필수 여부 |
|---|---|---|---|
| label | string | 플레이어 재생 시 포함 될 정보(ex:사용자ID) | requied |
| expire | number | 만료 시간(UNIX TimeStamp, 최대값: +30일) | requied |
| ip | string | 접근 허용 IP | optional |
| concurrent | boolean | 동시 재생 제한 사용 여부 | optional |
| watermark | boolean | 워터마크 사용 여부 | optional |
- channel_id
string(required) Example: ch16187ae7채널 ID
- object_id
string(required) Example: 17f8b713c916acc4배포 ID
- label
string(required) Example: user01레이어 재생 시 포함 될 정보(ex:사용자ID)
- expire
number(required) Example: 1523602918만료 시간
- ip
string(optional) Example: 203.230.53.3접근 허용 IP
- concurrent
boolean(optional) Example: true동시 재생 제한 사용
- watermark
boolean(optional) Example: true워터마크 사용 사용
재생 수 ¶
Body
{
"totalCount": 320
}Schema
{
"type": "object",
"properties": {
"totalCount": {
"type": "number",
"description": "총 재생 수(재생)"
}
},
"$schema": "http://json-schema.org/draft-04/schema#"
}Play CountGET/v2/channel/{channel_id}/{object_id}/count
특정 미디어의 총 재생 수를 조회합니다.
- channel_id
string(required) Example: ch16187ae7채널 ID
- object_id
string(required) Example: 17f8b713c916acc4배포 ID
통계 ¶
유형별 (채널/디바이스/국가/OS/브라우저)로 사용한 트래픽 전송량 및 재생수 통계를 조회할 수 있는 API 기능입니다.
-
start, end 파라미터는 동시 사용 시에만 동작하며, 한 개만 사용 시에는 동작하지 않습니다.
-
조회 범위는 최대 90일까지 가능합니다.(시간 단위 조회 7일)
All Transfer ¶
Body
{
"channel_bytes": [
{
"channel_id": "ch16187ae7",
"bytes": 2351200,
"count": 1239
}
]
}Schema
{
"type": "object",
"properties": {
"channel_bytes": {
"type": "array",
"items": {
"type": "object",
"properties": {
"channel_id": {
"type": "string",
"description": "채널 ID"
},
"bytes": {
"type": "number",
"description": "전송량(byte)"
},
"count": {
"type": "number",
"description": "재생 수(노출)"
}
}
}
}
},
"$schema": "http://json-schema.org/draft-04/schema#"
}전체 전송량GET/v2/analytics/transfer{?start,end}
특정 기간 내 고객 계정 전체에서 사용한 트래픽 전송량과 재생 수 통계를 조회합니다.
- start
string(required) Example: 20190110000000조회 시작
- end
string(required) Example: 20190310235959조회 끝
Transfer ¶
Body
{
"date_bytes": [
{
"date": "20190110000000",
"bytes": 2351200,
"count": 1239
}
]
}Schema
{
"type": "object",
"properties": {
"date_bytes": {
"type": "array",
"items": {
"type": "object",
"properties": {
"date": {
"type": "string",
"description": "날짜"
},
"bytes": {
"type": "number",
"description": "전송량(byte)"
},
"count": {
"type": "number",
"description": "재생 수(노출)"
}
}
}
}
},
"$schema": "http://json-schema.org/draft-04/schema#"
}전송량GET/v2/analytics/transfer/{channel_id}{?start,end,timeunit}
특정 기간 내 특정 채널에서 사용한 트래픽 전송량과 재생수 통계를 조회합니다.
- channel_id
string(required) Example: ch16187ae7채널 ID
- start
string(required) Example: 20190110000000조회 시작
- end
string(required) Example: 20190310235959조회 끝
- timeunit
string(optional) Example: day데이터 단위(day, hour)
Country ¶
Body
{
"name_bytes": [
{
"name": "KR",
"date": "20190110000000",
"bytes": 2351200,
"count": 1239
}
]
}Schema
{
"type": "object",
"properties": {
"name_bytes": {
"type": "array",
"items": {
"type": "object",
"properties": {
"name": {
"type": "string",
"description": "국가"
},
"date": {
"type": "string",
"description": "날짜"
},
"bytes": {
"type": "number",
"description": "전송량(byte)"
},
"count": {
"type": "number",
"description": "재생 수(노출)"
}
}
}
}
},
"$schema": "http://json-schema.org/draft-04/schema#"
}국가GET/v2/analytics/country/{channel_id}{?start,end,timeunit}
특정 기간 내 특정 채널에서 사용한 트래픽 전송량과 재생수의 국가별 통계를 조회합니다.
- channel_id
string(required) Example: ch16187ae7채널 ID
- start
string(required) Example: 20190110000000조회 시작
- end
string(required) Example: 20190310235959조회 끝
- timeunit
string(optional) Example: day데이터 단위(day, hour)
Device ¶
Body
{
"name_bytes": [
{
"name": "COMPUTER",
"date": "20190110000000",
"bytes": 2351200,
"count": 1239
}
]
}Schema
{
"type": "object",
"properties": {
"name_bytes": {
"type": "array",
"items": {
"type": "object",
"properties": {
"name": {
"type": "string",
"description": "디바이스 명"
},
"date": {
"type": "string",
"description": "날짜"
},
"bytes": {
"type": "number",
"description": "전송량(byte)"
},
"count": {
"type": "number",
"description": "재생 수(노출)"
}
}
}
}
},
"$schema": "http://json-schema.org/draft-04/schema#"
}디바이스GET/v2/analytics/device/{channel_id}{?start,end,timeunit}
특정 기간 내 특정 채널에서 사용한 트래픽 전송량과 재생수의 디바이스별 통계를 조회합니다.
- channel_id
string(required) Example: ch16187ae7채널 ID
- start
string(required) Example: 20190110000000조회 시작
- end
string(required) Example: 20190310235959조회 끝
- timeunit
string(optional) Example: day데이터 단위(day, hour)
OS ¶
Body
{
"name_bytes": [
{
"name": "WINDOWS",
"date": "20190110000000",
"bytes": 2351200,
"count": 1239
}
]
}Schema
{
"type": "object",
"properties": {
"name_bytes": {
"type": "array",
"items": {
"type": "object",
"properties": {
"name": {
"type": "string",
"description": "OS 명"
},
"date": {
"type": "string",
"description": "날짜"
},
"bytes": {
"type": "number",
"description": "전송량(byte)"
},
"count": {
"type": "number",
"description": "재생 수(노출)"
}
}
}
}
},
"$schema": "http://json-schema.org/draft-04/schema#"
}OSGET/v2/analytics/os/{channel_id}{?start,end,timeunit}
특정 기간 내 특정 채널에서 사용한 트래픽 전송량과 재생수의 OS별 통계를 조회합니다.
- channel_id
string(required) Example: ch16187ae7채널 ID
- start
string(required) Example: 20190110000000조회 시작
- end
string(required) Example: 20190310235959조회 끝
- timeunit
string(optional) Example: day데이터 단위(day, hour)
Browser ¶
Body
{
"name_bytes": [
{
"name": "CHROME",
"date": "20190110000000",
"bytes": 2351200,
"count": 1239
}
]
}Schema
{
"type": "object",
"properties": {
"name_bytes": {
"type": "array",
"items": {
"type": "object",
"properties": {
"name": {
"type": "string",
"description": "BROWSER 명"
},
"date": {
"type": "string",
"description": "날짜"
},
"bytes": {
"type": "number",
"description": "전송량(byte)"
},
"count": {
"type": "number",
"description": "재생 수(노출)"
}
}
}
}
},
"$schema": "http://json-schema.org/draft-04/schema#"
}브라우저GET/v2/analytics/browser/{channel_id}{?start,end,timeunit}
특정 기간 내 특정 채널에서 사용한 트래픽 전송량과 재생수의 브라우저별 통계를 조회합니다.
- channel_id
string(required) Example: ch16187ae7채널 ID
- start
string(required) Example: 20190110000000조회 시작
- end
string(required) Example: 20190310235959조회 끝
- timeunit
string(optional) Example: day데이터 단위(day, hour)
Storage ¶
Body
{
"date_bytes": [
{
"date": "20190110000000",
"bytes": 2351200,
"count": 1239
}
]
}Schema
{
"type": "object",
"properties": {
"date_bytes": {
"type": "array",
"items": {
"type": "object",
"properties": {
"date": {
"type": "string",
"description": "날짜"
},
"bytes": {
"type": "number",
"description": "사용량(byte)"
},
"count": {
"type": "number",
"description": "파일 수"
}
}
}
}
},
"$schema": "http://json-schema.org/draft-04/schema#"
}스토리지GET/v2/analytics/storage{?start,end,timeunit}
특정 기간 내 사용한 스토리지의 총 용량을 조회합니다.
- start
string(required) Example: 20190110000000조회 시작
- end
string(required) Example: 20190310235959조회 끝
- timeunit
string(optional) Example: day데이터 단위(day, hour)
Inflow ¶
Body
{
"inflow_bytes": [
{
"date": "20190110000000",
"min": 320,
"bytes": 2351200,
"count": 1239
}
]
}Schema
{
"type": "object",
"properties": {
"inflow_bytes": {
"type": "array",
"items": {
"type": "object",
"properties": {
"date": {
"type": "string",
"description": "날짜"
},
"min": {
"type": "number",
"description": "원본 영상(분)"
},
"bytes": {
"type": "number",
"description": "전송량(byte)"
},
"count": {
"type": "number",
"description": "재생 수(노출)"
}
}
}
}
},
"$schema": "http://json-schema.org/draft-04/schema#"
}미디어 유입량GET/v2/analytics/inflow/{category_id}{?start,end,timeunit}
특정 기간 내 업로드된 파일의 누적 용량을 조회합니다.
- category_id
number(required) Example: 11545611카테고리 ID
- start
string(required) Example: 20190110000000조회 시작
- end
string(required) Example: 20190310235959조회 끝
- timeunit
string(optional) Example: day데이터 단위(day, hour)
Generated by aglio on 04 Feb 2026