ULIZA IP Broadcaster (Cloud) API 仕様書 (1.6.1)

本書は ULIZA IP Broadcaster (Cloud) が提供する API 仕様について記述しています。ULIZA IP Broadcaster (Cloud) の機能や管理画面の操作方法については ULIZA IP Broadcaster (Cloud) ユーザーガイド を参照してください。

なお、本書に掲載しているコードサンプル(Request samples)は、具体的な実装例を示すことで開発者を支援することを目的としていますが、掲載しているコードがすべての環境において正常に動作することを保証するものではありません。また、コードサンプル内で使用している関数やライブラリの安全性に関して、弊社は何ら責任を負うものではありません。

注意

本書に記述している API を利用するには、対応するオプション(「ULIZA EVENT STREAM - マルチ WebAPI オプション」など)のご契約が必要となります。詳細については お問い合わせ ください。

CHANGELOG

バージョン 改版日 改版内容
v1.0.0 2020/10/19 初版
v1.1.0 2021/6/7
  1. ライブイベントの ingestUrl 属性に domainRtmpUrl (RTMP 送出先 URL)を追加
  2. ライブイベントの属性に domainName (ライブ配信サーバーのサブドメイン名)を追加
v1.2.0 2021/7/14
  1. レポート取得 API を追加
  2. キャッシュクリア API を追加
v1.3.0 2021/10/27
  1. ライブイベント更新 API を追加
  2. ライブイベント終了 API のリクエストボディに pause (一時停止) を追加
  3. ライブイベントの属性に prioritizeInputPrimary (冗長化設定) を追加
  4. ライブイベントの ingestUrl 属性に domainPrimaryRtmpUrl (プライマリ RTMP 送出先 URL)と domainBackupRtmpUrl (バックアップ RTMP 送出先 URL)を追加
v1.3.1 2022/1/31 ライブイベントのラベルとカテゴリに関する説明を追加
v1.4.0 2022/6/1
  1. ライブイベントの属性に dvr (DVR設定) を追加
  2. ライブイベントの stream[].id 属性を必須から任意パラメーターに変更
v1.5.0 2023/1/10 ライブイベントの streamStatus 属性に ip (ライブエンコーダーの IP アドレス) と ua (ライブエンコーダーのユーザーエージェント)、source (採用されている入力) を追加
v1.6.0 2023/3/20
  1. ライブイベントの属性に enableTranscode (トランスコード機能) を追加
  2. ingestUrl の domainRtmpUrl (RTMP 送出先 URL) と rtmpUrl (RTMP 送出先 URL) の説明を更新
  3. ライブイベント終了 API のレスポンスボディに id (ライブイベントID) と paused (一時停止されたライブイベント) を追加
v1.6.1 2023/11/27
  1. ライブイベントの属性に archived (アーカイブ処理のステータス) を追加
  2. ライブイベントの属性に archivedat (アーカイブ完了日時) を追加

Authentication

特に断りのない限り、本書に記載されている全ての API に対するリクエストの Authorization ヘッダに下記の形式で有効な API 認証キーを含める必要があります。API 認証キーの取得方法については ULIZA プロダクトアカウントユーザーガイド を参照してください。リクエストに有効な API 認証キーが含まれていない場合は、401 Unauthorized が返却されます。

Authorization: Bearer <api-credential>

Live

ライブイベント管理系 API について以下に記述します。

ライブイベント一覧取得 API

ライブイベントに関する情報を取得します。

  • リクエスト送信者が ライブイベントの取得 権限を持っていない場合は、403 Forbidden が返却されます。

Responses

Response Schema: application/json
Array of objects

Request samples

curl \
  -H 'Authorization: Bearer <your-token>' \
  'https://ipb-api.p.uliza.jp/v1/live'

Response samples

Content type
application/json
{
  • "data": [
    ]
}

ライブイベント作成 API

ライブイベントを作成します。

  • リクエスト送信者が ライブイベントの登録 権限を持っていない場合は、403 Forbidden が返却されます。
Request Body schema: application/json
name
required
string <= 200 characters

ライブイベントの名前

description
string <= 5000 characters

ライブイベントの説明

dvr
boolean

DVRの有無

archive
required
string
Enum: "same" "another" "none"

アーカイブ処理の種類

  • same : ライブコンテンツに上書き登録
  • another : ライブコンテンツと別コンテンツとして登録
  • none : 登録しない
enableTranscode
boolean
Default: false

トランスコード機能の有効/無効

required
Array of objects [ 1 .. 3 ] items

ストリーム情報

segmentDuration
number >= 1
Default: 4

HLSセグメント秒数

prioritizeInputPrimary
boolean
Default: false

入力冗長化構成が行われたライブ配信での、接続や切断時の振る舞い。プライマリーとバックアップの両方が入力されている場合はプライマリーを配信します。

category
required
string <uuid>

ULIZA VMS (Cloud) に登録するカテゴリーID。カテゴリの取得についてはULIZA VMS (Cloud) API 仕様書を参照ください。

labels
Array of strings <uuid> unique

ULIZA VMS (Cloud) に登録するラベルID。ラベルの取得についてはULIZA VMS (Cloud) API 仕様書を参照ください。

Responses

Response Schema: application/json
id
string

ライブイベントID

object

作成したライブイベント

Request samples

Content type
application/json
{
  • "name": "ライブイベント1",
  • "description": "ライブイベントの説明です。",
  • "dvr": true,
  • "archive": "same",
  • "enableTranscode": true,
  • "streams": [
    ],
  • "segmentDuration": 6,
  • "prioritizeInputPrimary": true,
  • "category": "11111111-1111-1111-1111-111111111111",
  • "labels": [
    ]
}

Response samples

Content type
application/json
{
  • "id": "11111111-1111-1111-1111-111111111111",
  • "item": {