midibus api v2

미디버스 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 요청 순서

  1. Token API를 통하여 Token 획득(Basic Auth)
  2. HTTP Header에 획등 한 Token을 포함하여 API 호출
  3. Token 만료 시 재발급 하여 API 사용

고객별 고유한 APIkey 정보는 미디버스 사용자 콘솔 (https://midibus.kinxcdn.com)에 로그인 후 확인할 수 있습니다.(설정>부가서비스/API)

Basic Auth

Authorization: Basic [AuthKey]
  • AuthKey 생성
[AuthKey] = Base64(Email+":"+ApiKey)

Token Auth

  • Token 요청을 사용하여 발급받은 token을 HTTP 헤더에 포함하여 요청

  • Token 헤더 사용 HTTP 헤더를 사용하여 인증 정보를 전달합니다.

X-Mbus-Token: [Token]

Token

API 인증에 사용하는 Token API

GET https://mapi.midibus.kinxcdn.com/v2/token?expire=1523602918
Requestsexample 1
Headers
Authorization: Basic [AuthKey]
Responses200
Headers
Content-Type: application/json
Body
{
  "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 Token
GET/v2/token{?expire}

Token 발급을 요청 합니다. 발급 된 Token은 API 요청 시 마다 헤더에 포함하여 요청 합니다.

발급 된 Token은 만료 시간 까지 유효하며, 만료 시간 까지는 계속적인 재사용이 가능합니다. 만료 된 이후에는 Token을 재 발급받아 사용해야 합니다.

  • expire
    Timestamp 값으로 현재 시점으로 부터 최대 24시간까지 지정 가능
URI Parameters
HideShow
expire
number (required) Example: 1523602918

Token 만료 시간 (timestamp)


미디어

전체 카테고리

업로드한 미디어 (원본 및 인코딩 파일)를 분류하고 연결된 배포 채널을 관리하는 API 기능입니다.

POST https://mapi.midibus.kinxcdn.com/v2/media
Requestsexample 1
Headers
Content-Type: application/json
Body
{
  "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)"
    }
  }
}
Responses201
This response has no content.

Create Category
POST/v2/media

특정한 설정 조건(원본 저장 여부, 업로드시 자동으로 배포할 채널 ID등)의 신규 카테고리를 생성합니다.

Parameters

항목명 Type 설명 필수 여부
category_name string 생성 할 카테고리 명을 지정합니다 required
save_origin boolean 해당 카테고리로 업로드 시 원본 파일을 별도로 저장하여 추가 인코딩이나 배포 용도로 사용 합니다(default : true) optional
channel_id_list string 해당 카테고리로 등록 된 미디어는 자동으로 지정 채널로 배포 됩니다 optional

GET https://mapi.midibus.kinxcdn.com/v2/media
Responses200
Headers
Content-Type: application/json
Body
{
  "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 Category
GET/v2/media

고객별로 생성된 모든 카테고리의 목록을 조회합니다.


카테고리

POST https://mapi.midibus.kinxcdn.com/v2/media/11545611
Requestsexample 1
Headers
Content-Type: multipart/form-data
X-Mbus-Channel: ch_17d9011
X-Mbus-Path: /dir1
Responses201
Body
{
  "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 Media
POST/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
URI Parameters
HideShow
category_id
number (required) Example: 11545611

카테고리 ID


GET https://mapi.midibus.kinxcdn.com/v2/media/11545611?next=1f3987cfca23f932&limit=100&start=20190110000000&end=20190310235959&state=1
Responses200
Headers
Content-Type: application/json
Body
{
  "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 Media
GET/v2/media/{category_id}{?next,limit,start,end,state}

특정 카테고리 내 미디어의 목록을 조회합니다.

  • start, end 파라미터는 동시 사용 시에만 동작하며, 한 개만 사용 시에는 동작하지 않습니다.

  • next 파라미터는 null로 요청 시 가장 최신이 조회 되며, 다음 요청을 위한 next가 response에 포함 됩니다

URI Parameters
HideShow
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:비활성)


PUT https://mapi.midibus.kinxcdn.com/v2/media/11545611
Requestsexample 1
Headers
Content-Type: application/json
Body
{
  "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)"
    }
  }
}
Responses204
This response has no content.

Modify Category
PUT/v2/media/{category_id}

특정 카테고리의 세부 정보 (카테고리명, 원본 저장 여부, 업로드시 자동으로 배포할 채널 등)를 변경합니다.

  • channel_id를 ""의 비어있는 문자열로 전송 할 경우, 채널 연결을 삭제 합니다.(null로 전송 시는 기존 정보 유지)

Parameters

항목명 Type 설명 필수 여부
category_name string 카테고리 명을 변경합니다 optional
save_origin boolean 해당 카테고리로 업로드 시 원본 파일을 별도로 저장하여 추가 인코딩이나 배포 용도로 사용 합니다(default : true) optional
channel_id_list array 해당 카테고리로 등록 된 미디어는 자동으로 지정 채널로 배포 됩니다 optional
URI Parameters
HideShow
category_id
number (required) Example: 11545611

카테고리 ID


미디어

미디어의 목록 조회, 추가, 변경, 삭제 할 수 있는 API 기능입니다.

GET https://mapi.midibus.kinxcdn.com/v2/media/11545611/17fbb68b47ff9994
Responses200
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 Media
GET/v2/media/{category_id}/{media_id}

특정 미디어의 상세 정보 (미디어명, 타입, 용량, 원본 및 인코딩된 세부 컨텐츠 파일, 자막, 대표 이미지, 썸네일 등)를 조회합니다.

URI Parameters
HideShow
category_id
number (required) Example: 11545611

카테고리 ID

media_id
string (required) Example: 17fbb68b47ff9994

미디어 ID


PUT https://mapi.midibus.kinxcdn.com/v2/media/11545611/17fbb68b47ff9994
Requestsexample 1
Headers
Content-Type: application/json
Body
{
  "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)"
    }
  }
}
Responses204
This response has no content.

Modify Media
PUT/v2/media/{category_id}/{media_id}

특정 미디어의 정보 (이름, 활성화 여부 등)를 변경합니다.

항목명 Type 설명 필수 여부
media_enable boolean 미디어 활성화 여부를 지정합니다(default : true) optional
media_name string 미디어 이름을 지정합니다 optional
description string 미디어의 필요한 정보나 설명을 입력하여 사용합니다 optional
URI Parameters
HideShow
category_id
number (required) Example: 11545611

카테고리 ID

media_id
string (required) Example: 17fbb68b47ff9994

미디어 ID


DELETE https://mapi.midibus.kinxcdn.com/v2/media/11545611/17fbb68b47ff9994
Responses204
This response has no content.

Delete Media
DELETE/v2/media/{category_id}/{media_id}

특정 미디어(원본, 인코딩 파일 일체)를 삭제 합니다. (미디어를 삭제시, 연계된 배포 결과물인 object 또한 삭제됩니다.)

URI Parameters
HideShow
category_id
number (required) Example: 11545611

카테고리 ID

media_id
string (required) Example: 17fbb68b47ff9994

미디어 ID


POST https://mapi.midibus.kinxcdn.com/v2/media/11545611/17fbb68b47ff9994/publish
Requestsexample 1
Headers
Content-Type: application/json
Body
{
  "channel_id": "ch17d9011"
}
Schema
{
  "$schema": "http://json-schema.org/draft-04/schema#",
  "type": "object",
  "properties": {
    "channel_id": {
      "type": "string",
      "description": "채널 ID"
    }
  }
}
Responses201
Headers
Content-Type: application/json
Body
{
  "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 Media
POST/v2/media/{category_id}/{media_id}/publish

특정 미디어를 채널로 배포합니다.

항목명 Type 설명 필수 여부
channel_id string 해당 카테고리로 등록 된 미디어는 자동으로 지정 채널로 배포 됩니다 required
URI Parameters
HideShow
category_id
number (required) Example: 11545611

카테고리 ID

media_id
string (required) Example: 17fbb68b47ff9994

미디어 ID


POST https://mapi.midibus.kinxcdn.com/v2/media/11545611/17fbb68b47ff9994
Requestsexample 1
Headers
Content-Type: application/json
Body
{
  "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)"
    }
  }
}
Responses201
This response has no content.

Add Encoding
POST/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
URI Parameters
HideShow
category_id
number (required) Example: 11545611

카테고리 ID

media_id
string (required) Example: 17fbb68b47ff9994

미디어 ID


DELETE https://mapi.midibus.kinxcdn.com/v2/media/11545611/17fbb68b47ff9994/178d8874cec34fcb
Responses204
This response has no content.

Delete Encoding
DELETE/v2/media/{category_id}/{media_id}/{content_id}

특정 미디어의 원본 또는 특정 인코딩 컨텐츠 파일을 삭제합니다.

URI Parameters
HideShow
category_id
number (required) Example: 11545611

카테고리 ID

media_id
string (required) Example: 17fbb68b47ff9994

미디어 ID

content_id
string (required) Example: 178d8874cec34fcb

Content ID


GET https://mapi.midibus.kinxcdn.com/v2/media/profile
Responses200
Headers
Content-Type: application/json
Body
{
  "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 Profile
GET/v2/media/profile

등록되어 있는 모든 프로파일 목록을 조회합니다.


대표 이미지

POST https://mapi.midibus.kinxcdn.com/v2/media/11545611/17fbb68b47ff9994/poster
Requestsexample 1
Headers
Content-Type: multipart/form-data
Responses201
This response has no content.

Upload Poster
POST/v2/media/{category_id}/{media_id}/poster

특정 미디어의 플레이어 대표 이미지를 등록합니다.

대표 이미지 파일 업로드

업로드 시에는 Content-Disposion: form-data 를 사용 하여 업로드 합니다

Content-Disposition: form-data

  • form-data : file

  • filename : 파일명

URI Parameters
HideShow
category_id
number (required) Example: 11545611

카테고리 ID

media_id
string (required) Example: 17fbb68b47ff9994

미디어 ID


DELETE https://mapi.midibus.kinxcdn.com/v2/media/11545611/17fbb68b47ff9994/poster
Responses204
This response has no content.

Delete Poster
DELETE/v2/media/{category_id}/{media_id}/poster

특정 미디어의 플레이어 대표 이미지를 삭제합니다.

URI Parameters
HideShow
category_id
number (required) Example: 11545611

카테고리 ID

media_id
string (required) Example: 17fbb68b47ff9994

미디어 ID


자막

POST https://mapi.midibus.kinxcdn.com/v2/media/11545611/17fbb68b47ff9994/subtitle
Requestsexample 1
Headers
Content-Type: multipart/form-data
X-Mbus-Label: 한국어
X-Mbus-Lang: ko
Responses201
Body
{
  "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 Subtitle
POST/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
URI Parameters
HideShow
category_id
number (required) Example: 11545611

카테고리 ID

media_id
string (required) Example: 17fbb68b47ff9994

미디어 ID


PUT https://mapi.midibus.kinxcdn.com/v2/media/11545611/17fbb68b47ff9994/subtitle/173228766068f899
Requestsexample 1
Headers
Content-Type: application/json
Body
{
  "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)"
    }
  }
}
Responses204
This response has no content.

Modify Subtitle
PUT/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
URI Parameters
HideShow
category_id
number (required) Example: 11545611

카테고리 ID

media_id
string (required) Example: 17fbb68b47ff9994

미디어 ID

subtitle_id
String (required) Example: 173228766068f899

Subtitle ID


DELETE https://mapi.midibus.kinxcdn.com/v2/media/11545611/17fbb68b47ff9994/subtitle/173228766068f899
Responses204
This response has no content.

Delete Subtitle
DELETE/v2/media/{category_id}/{media_id}/subtitle/{subtitle_id}

특정 미디어에 적용된 자막 파일을 삭제합니다.

URI Parameters
HideShow
category_id
number (required) Example: 11545611

카테고리 ID

media_id
string (required) Example: 17fbb68b47ff9994

미디어 ID

subtitle_id
String (required) Example: 173228766068f899

Subtitle ID


캡쳐

POST https://mapi.midibus.kinxcdn.com/v2/media/11545611/17fbb68b47ff9994/capture
Requestsexample 1
Headers
Content-Type: application/json
Body
{
  "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)"
    }
  }
}
Responses201
This response has no content.

Image Capture
POST/v2/media/{category_id}/{media_id}/capture

특정 미디어에서 썸네일 (캡쳐 이미지)을 추출 보관합니다.

Parameters

항목명 Type 설명 필수 여부
timestamp number 이미지를 추출할 영상의 위치를 지정합니다 requied
width number 추출할 이미지의 가로 사이즈를 지정합니다 requied
height number 추출할 이미지의 세로 사이즈를 지정합니다 requied
URI Parameters
HideShow
category_id
number (required) Example: 11545611

카테고리 ID

media_id
string (required) Example: 17fbb68b47ff9994

미디어 ID


GET https://mapi.midibus.kinxcdn.com/v2/media/11545611/17fbb68b47ff9994/capture
Responses200
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 Capture
GET/v2/media/{category_id}/{media_id}/capture

특정 미디어에서 추출 보관중인 썸네일 (캡쳐 이미지) 리스트 정보를 조회합니다.

URI Parameters
HideShow
category_id
number (required) Example: 11545611

카테고리 ID

media_id
string (required) Example: 17fbb68b47ff9994

미디어 ID


DELETE https://mapi.midibus.kinxcdn.com/v2/media/11545611/17fbb68b47ff9994/capture/10000
Responses204
This response has no content.

Delete Capture
DELETE/v2/media/{category_id}/{media_id}/capture/{timestamp}

특정 미디어에 저장되어 있는 썸네일 (캡쳐 이미지)을 삭제합니다.

URI Parameters
HideShow
category_id
number (required) Example: 11545611

카테고리 ID

media_id
string (required) Example: 17fbb68b47ff9994

미디어 ID

timestamp
number (required) Example: 10000

캡쳐 위치


채널

미디어의 배포를 관리하는 API 기능입니다.

전체 채널

POST https://mapi.midibus.kinxcdn.com/v2/channel
Requestsexample 1
Headers
Content-Type: application/json
Body
{
  "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)"
    }
  }
}
Responses201
This response has no content.

Create Channel
POST/v2/channel

공개여부, 재생 조건, 플레이어 등 특정 설정 조건의 VOD 신규 채널을 생성합니다.

Parameters

항목명 Type 설명 필수 여부
channel_name string 생성할 채널의 이름을 지정합니다 requied
open boolean 생성할 채널의 공개 여부를 지정합니다(default : true) optional

GET https://mapi.midibus.kinxcdn.com/v2/channel
Responses200
Headers
Content-Type: application/json
Body
{
  "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 Channel
GET/v2/channel

고객별 생성된 채널 목록을 조회합니다.


채널

GET https://mapi.midibus.kinxcdn.com/v2/channel/ch16187ae7?next=1f3987cfca23f932&limit=100&start=20190110000000&end=20190310235959&tag=tag1
Responses200
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 Object
GET/v2/channel/{channel_id}{?next,limit,start,end,tag}

특정 채널 내 object 목록을 조회합니다.

  • start, end 파라미터는 동시 사용 시에만 동작하며, 한 개만 사용 시에는 동작하지 않습니다.

  • next 파라미터는 null로 요청 시 가장 최신이 조회 되며, 다음 요청을 위한 next가 response에 포함 됩니다

URI Parameters
HideShow
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

조회 태그


PUT https://mapi.midibus.kinxcdn.com/v2/channel/ch16187ae7
Requestsexample 1
Headers
Content-Type: application/json
Body
{
  "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)"
    }
  }
}
Responses204
This response has no content.

Modify Channel
PUT/v2/channel/{channel_id}

특정 채널의 이름 및 공개 여부 등 일부 설정값을 변경합니다.

Parameters

항목명 Type 설명 필수 여부
channel_name string 생성할 채널의 이름을 지정합니다 optional
open boolean 생성할 채널의 공개 여부를 지정합니다 optional
URI Parameters
HideShow
channel_id
string (required) Example: ch16187ae7

채널 ID


재생 정보 조회

GET https://mapi.midibus.kinxcdn.com/v2/channel/ch16187ae7/playinfo?label=label1&object_id=18007fdc133bccb4&offset=0&limit=100&start=20190110000000&end=20190310235959
Responses200
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 Info
GET/v2/channel/{channel_id}/playinfo{?label,object_id,offset,limit,start,end}

재생 정보를 조회합니다.

플레이어 재생 주소 뒤에 label 파라미터를 포함하여 재생 시 해당 파라미터 값으로 재생 정보가 저장됩니다. label의 값은 별도로 정해진 값이 없으며, 사용자 ID등을 넣어 활용하실 수 있습니다.

play.mbus.tv/[object_id]?label=label1

  • start, end 파라미터를 포함하지 않을 경우 최근 1시간 내의 재생 정보가 조회 됩니다.
URI Parameters
HideShow
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

GET https://mapi.midibus.kinxcdn.com/v2/channel/ch16187ae7/17f8b713c916acc4
Responses200
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 Object
GET/v2/channel/{channel_id}/{object_id}

특정 채널의 특정 object의 상세 정보 (미디어 ID, 카테고리 ID, 접속 url, 생성일 등)를 조회합니다.

URI Parameters
HideShow
channel_id
string (required) Example: ch16187ae7

채널 ID

object_id
string (required) Example: 17f8b713c916acc4

배포 ID


DELETE https://mapi.midibus.kinxcdn.com/v2/channel/ch16187ae7/17f8b713c916acc4
Responses204
This response has no content.

Delete Object
DELETE/v2/channel/{channel_id}/{object_id}

특정 채널 내 특정 object를 삭제합니다.

  • ‘미디어 > 미디어 관리’ API를 통해 미디어 삭제 시, 해당 미디어에 연결된 object는 자동 삭제됩니다.
URI Parameters
HideShow
channel_id
string (required) Example: ch16187ae7

채널 ID

object_id
string (required) Example: 17f8b713c916acc4

배포 ID


PUT https://mapi.midibus.kinxcdn.com/v2/channel/ch16187ae7/17f8b713c916acc4/move
Requestsexample 1
Headers
Content-Type: application/json
Body
{
  "channel_id": "ch17d9011"
}
Schema
{
  "$schema": "http://json-schema.org/draft-04/schema#",
  "type": "object",
  "properties": {
    "channel_id": {
      "type": "string",
      "description": "채널 ID"
    }
  }
}
Responses204
This response has no content.

Move Object
PUT/v2/channel/{channel_id}/{object_id}/move

특정 object의 채널을 변경합니다.
채널이 변경된 object는 공개여부, 재생조건, 플레이어 등 변경된 채널의 설정값을 기준으로 배포 정책이 변경됩니다.

Parameters

항목명 Type 설명 필수 여부
channel_id string 이동할 채널을 지정합니다 requied
URI Parameters
HideShow
channel_id
string (required) Example: ch16187ae7

채널 ID

object_id
string (required) Example: 17f8b713c916acc4

배포 ID


태그

GET https://mapi.midibus.kinxcdn.com/v2/channel/ch16187ae7/17f8b713c916acc4/tag
Responses200
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 Tag
GET/v2/channel/{channel_id}/{object_id}/tag

특정 미디어의 태그를 조회합니다.

URI Parameters
HideShow
channel_id
string (required) Example: ch16187ae7

채널 ID

object_id
string (required) Example: 17f8b713c916acc4

배포 ID


PUT https://mapi.midibus.kinxcdn.com/v2/channel/ch16187ae7/17f8b713c916acc4/tag
Requestsexample 1
Headers
Content-Type: application/json
Body
{
  "tag_list": [
    "tag1"
  ]
}
Schema
{
  "$schema": "http://json-schema.org/draft-04/schema#",
  "type": "object",
  "properties": {
    "tag_list": {
      "type": "array",
      "description": "태그 명 (required)"
    }
  }
}
Responses204
This response has no content.

Change Tag
PUT/v2/channel/{channel_id}/{object_id}/tag

특정 미디어의 태그를 교체(등록)합니다.

  • 새로운 태그 리스트로 전체 교체 됩니다

Parameters

항목명 Type 설명 필수 여부
tag_list string 교체 할 태그 리스트를 지정합니다 requied
URI Parameters
HideShow
channel_id
string (required) Example: ch16187ae7

채널 ID

object_id
string (required) Example: 17f8b713c916acc4

배포 ID


보안 재생 키

GET https://mapi.midibus.kinxcdn.com/v2/channel/ch16187ae7/17f8b713c916acc4/playkey?expire=1523602918&ip=203.230.53.3
Responses200
Headers
Content-Type: application/json
Body
{
  "key": "61f202e11e9bc42ed8855b89f5c51e68"
}
Schema
{
  "$schema": "http://json-schema.org/draft-04/schema#",
  "type": "object",
  "properties": {
    "key": {
      "type": "string",
      "description": "재생 키"
    }
  }
}

Create Play key
GET/v2/channel/{channel_id}/{object_id}/playkey{?expire,ip}

보안 재생 채널 내의 미디어 재생에 필요한 보안 재생 키를 생성합니다.

Parameters

항목명 Type 설명 필수 여부
expire number 만료 시간(UNIX TimeStamp, 최대값: +30일) requied
ip string 접근 허용 IP optional
URI Parameters
HideShow
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


보안 재생 키

GET https://mapi.midibus.kinxcdn.com/v2/channel/ch16187ae7/17f8b713c916acc4/extkey?label=user01&expire=1523602918&ip=203.230.53.3&concurrent=true&watermark=true
Responses200
Headers
Content-Type: application/json
Body
{
  "key": "61f202e11e9bc42ed8855b89f5c51e68"
}
Schema
{
  "$schema": "http://json-schema.org/draft-04/schema#",
  "type": "object",
  "properties": {
    "key": {
      "type": "string",
      "description": "재생 키"
    }
  }
}

Create Ext key
GET/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
URI Parameters
HideShow
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

워터마크 사용 사용


재생 수

GET https://mapi.midibus.kinxcdn.com/v2/channel/ch16187ae7/17f8b713c916acc4/count
Responses200
Body
{
  "totalCount": 320
}
Schema
{
  "type": "object",
  "properties": {
    "totalCount": {
      "type": "number",
      "description": "총 재생 수(재생)"
    }
  },
  "$schema": "http://json-schema.org/draft-04/schema#"
}

Play Count
GET/v2/channel/{channel_id}/{object_id}/count

특정 미디어의 총 재생 수를 조회합니다.

URI Parameters
HideShow
channel_id
string (required) Example: ch16187ae7

채널 ID

object_id
string (required) Example: 17f8b713c916acc4

배포 ID


통계

유형별 (채널/디바이스/국가/OS/브라우저)로 사용한 트래픽 전송량 및 재생수 통계를 조회할 수 있는 API 기능입니다.

  • start, end 파라미터는 동시 사용 시에만 동작하며, 한 개만 사용 시에는 동작하지 않습니다.

  • 조회 범위는 최대 90일까지 가능합니다.(시간 단위 조회 7일)

All Transfer

GET https://mapi.midibus.kinxcdn.com/v2/analytics/transfer?start=20190110000000&end=20190310235959
Responses200
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}

특정 기간 내 고객 계정 전체에서 사용한 트래픽 전송량과 재생 수 통계를 조회합니다.

URI Parameters
HideShow
start
string (required) Example: 20190110000000

조회 시작

end
string (required) Example: 20190310235959

조회 끝


Transfer

GET https://mapi.midibus.kinxcdn.com/v2/analytics/transfer/ch16187ae7?start=20190110000000&end=20190310235959&timeunit=day
Responses200
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}

특정 기간 내 특정 채널에서 사용한 트래픽 전송량과 재생수 통계를 조회합니다.

URI Parameters
HideShow
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

GET https://mapi.midibus.kinxcdn.com/v2/analytics/country/ch16187ae7?start=20190110000000&end=20190310235959&timeunit=day
Responses200
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}

특정 기간 내 특정 채널에서 사용한 트래픽 전송량과 재생수의 국가별 통계를 조회합니다.

URI Parameters
HideShow
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

GET https://mapi.midibus.kinxcdn.com/v2/analytics/device/ch16187ae7?start=20190110000000&end=20190310235959&timeunit=day
Responses200
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}

특정 기간 내 특정 채널에서 사용한 트래픽 전송량과 재생수의 디바이스별 통계를 조회합니다.

URI Parameters
HideShow
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

GET https://mapi.midibus.kinxcdn.com/v2/analytics/os/ch16187ae7?start=20190110000000&end=20190310235959&timeunit=day
Responses200
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#"
}

OS
GET/v2/analytics/os/{channel_id}{?start,end,timeunit}

특정 기간 내 특정 채널에서 사용한 트래픽 전송량과 재생수의 OS별 통계를 조회합니다.

URI Parameters
HideShow
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

GET https://mapi.midibus.kinxcdn.com/v2/analytics/browser/ch16187ae7?start=20190110000000&end=20190310235959&timeunit=day
Responses200
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}

특정 기간 내 특정 채널에서 사용한 트래픽 전송량과 재생수의 브라우저별 통계를 조회합니다.

URI Parameters
HideShow
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

GET https://mapi.midibus.kinxcdn.com/v2/analytics/storage?start=20190110000000&end=20190310235959&timeunit=day
Responses200
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}

특정 기간 내 사용한 스토리지의 총 용량을 조회합니다.

URI Parameters
HideShow
start
string (required) Example: 20190110000000

조회 시작

end
string (required) Example: 20190310235959

조회 끝

timeunit
string (optional) Example: day

데이터 단위(day, hour)


Inflow

GET https://mapi.midibus.kinxcdn.com/v2/analytics/inflow/11545611?start=20190110000000&end=20190310235959&timeunit=day
Responses200
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}

특정 기간 내 업로드된 파일의 누적 용량을 조회합니다.

URI Parameters
HideShow
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