Callback Endpointの登録(Live)

Prev Next

Classic/VPC環境で利用できます。

ライブチャンネルのイベントを受信するコールバックエンドポイントを登録します。

参考

コールバック送信データと送信動作の詳細は、Callback Enpointの登録をご参照ください。

リクエスト

リクエスト形式を説明します。リクエスト形式は次の通りです。

メソッド URI
POST /api/v2/channels/{channelId}/callbackEndpoint

リクエストヘッダ

Live Station APIで共通して使用されるヘッダの詳細は、Live Stationのリクエストヘッダをご参照ください。

リクエストパスパラメータ

リクエストパスパラメータの説明は次の通りです。

フィールド タイプ 必須の有無 説明
channelId String Required チャンネル ID

リクエストボディ

リクエストボディの説明は次の通りです。

フィールド タイプ 必須の有無 説明
callbackEndpoint String Required コールバックエンドポイント URL

リクエスト例

リクエストのサンプルコードは次の通りです。

curl --location --request POST 'https://livestation.apigw.ntruss.com/api/v2/channels/ls-20250820******-PyysO/callbackEndpoint' \
--header 'x-ncp-apigw-timestamp: {Timestamp}' \
--header 'x-ncp-iam-access-key: {Access Key}' \
--header 'x-ncp-apigw-signature-v2: {API Gateway Signature}' \
--header 'x-ncp-region_code: KR' \
--header 'Content-Type: application/json' \
--data '{
    "callbackEndpoint": "https://www.callback-endpoint.com"
}'

レスポンス

レスポンス形式を説明します。

レスポンスボディ

レスポンスボディの説明は次の通りです。

フィールド タイプ 必須の有無 説明
content Object - チャンネル情報
content.channelId String - チャンネル ID
content.channelName String - チャンネル名
content.instanceNo Integer - チャンネルインスタンス番号
content.qualitySetId Integer - 画質設定 ID
content.qualitySetName String - 画質設定名
content.outputProtocol String - Output Protocol
content.channelStatus String - チャンネルの状態
  • CREATING | READY | PUBLISHING | DELETED | BLOCK | FORCE_BLOCK | FORCE_DELETED
    • CREATING: 作成中
    • READY: 準備完了
    • PUBLISHING: 配信中
    • DELETED: 返却
    • BLOCK: 停止
    • FORCE_BLOCK: 強制停止
    • FORCE_DELETED: 使用不可
content.isRecording Boolean - 録画中か
  • true | false
    • true: 録画中
    • false: 録画中ではない
content.useDVR Boolean - タイムシフトを設定するか
  • true | false
    • true: 設定
    • false: 設定しない
content.immediateOnAir Boolean - 配信と同時に自動録画を設定するか
  • true | false
    • true: 自動
    • false: 手動
content.timemachineMin Integer - タイムシフトの有効時間(分)
content.cdn Object - CDNの設定
content.cdn.instanceNo String - CDNインスタンス ID
content.cdn.serviceName String - CDNサービス名
content.cdn.statusName String - CDNの状態
  • RUNNING | PUBLISHING | STOPPING | STOPPED | CREATING | CHANGING | CDN_NOT_FOUND
content.cdn.cdnType String - CDNタイプ
  • GLOBAL_CDN | GLOBAL_EDGE
content.cdn.cdnDomain String - CDNサービスドメイン
content.cdn.profileId Integer - Global Edgeのプロファイル ID
content.cdn.regionType String - Global Edgeのサービス地域
content.streamKey String - メインストリームキー
content.publishUrl String - 基本配信 URL
content.globalPublishUrl String - 海外配信 URL
content.totalPublishSeconds Integer - チャンネルの使用時間(秒)
content.createdTime Integer - チャンネル作成日時(ミリ秒)
  • Unix Timestamp形式
content.alertOn Boolean - イベントアラームを設定するか
  • true | false
    • true: 設定
    • false: 設定しない
content.recentPublishStartTime Integer - 直近の配信開始日時(ミリ秒)
  • Unix Timestamp形式
  • 初回配信前の場合、表示しない
content.alertOptions Object - イベントアラームを設定
content.alertOptions.alertChangeStatus Boolean - チャンネル状態変更アラームを適用するか
  • true | false
    • true: 適用
    • false: 適用しない
content.alertOptions.alertVodUploadFail Boolean - 録画ファイルアップロード失敗アラームを適用するか
  • true | false
    • true: 適用
    • false: 適用しない
content.alertOptions.alertReStreamFail Boolean - 同時配信リレー失敗アラームを適用するか
  • true | false
    • true: 適用
    • false: 適用しない
content.alertOptions.reStreamFailThreshold Integer - アラーム発生条件(基準回数)
content.alertOptions.alertStreamFailOver Boolean - メインストリーム切り替えアラームを適用するか
  • true | false
    • true: 適用
    • false: 適用しない
content.callbackEndpoint String - コールバックエンドポイント URL
content.envType String - チャンネルタイプ
  • DEV | STAGE | REAL
content.uploadPath String - 録画ファイルアップロードパス
  • content.record.typeAUTO_UPLOADの場合、表示
content.record Object - 録画保存情報
content.record.type String - 録画保存設定
  • NO_RECORD | AUTO_UPLOAD | MANUAL_UPLOAD
    • NO_RECORD: 録画しない
    • AUTO_UPLOAD: 自動保存
    • MANUAL_UPLOAD: 一時保存
content.record.bucketName String - 録画ファイル保存場所のバケット名
  • content.record.typeAUTO_UPLOADの場合、表示
content.record.filePath String - 保存場所の詳細パス
  • content.record.typeAUTO_UPLOADの場合、表示
content.record.format String - 自動保存録画タイプ
  • MP4 | HLS | ALL
content.record.accessControl String - 録画ファイル保存場所バケットの公開範囲
  • PRIVATE | PUBLIC_READ
    • PRIVATE: 非公開
    • PUBLIC_READ: 公開
  • content.record.typeAUTO_UPLOADの場合、表示
content.snapshot Object - スナップショット情報
  • 配信中にスナップショットを作成した場合にのみ表示
content.snapshot.snapshotId Integer - スナップショット ID
content.origin Object - オリジン情報
content.origin.originDomain String - オリジンのドメイン
content.origin.originPath String - オリジンのパス
content.backupStreamKey String - バックアップストリームキー
  • 配信冗長化設定時、表示
content.isStreamFailOver Boolean - 配信冗長化設定
  • true | false
    • true: 使用
    • false: 使用しない
content.drmEnabledYn Boolean - Multi DRMの使用
  • true | false
    • true: 使用
    • false: 使用しない
content.drm Object - Multi DRM設定
  • content.drmEnabledYntrueの場合、配下の情報を表示
content.drm.siteId String - サイト ID
content.drm.contentId String - コンテンツ ID

レスポンスステータスコード

Live Station APIで共通して使用されるレスポンスステータスコードの詳細は、Live Stationのレスポンスステータスコードをご参照ください。

レスポンス例

レスポンスのサンプルコードは次の通りです。

{
    "content": {
        "channelId": "ls-20250820******-PyysO",
        "channelName": "testchannelname",
        "instanceNo": 10******7,
        "qualitySetId": 3,
        "qualitySetName": "1080p-set",
        "outputProtocol": "HLS",
        "channelStatus": "READY",
        "isRecording": false,
        "useDVR": true,
        "immediateOnAir": false,
        "timemachineMin": 360,
        "cdn": {
            "instanceNo": "11618",
            "serviceName": "edge-ls-20250818******-KRXat",
            "statusName": "RUNNING",
            "cdnType": "GLOBAL_EDGE",
            "cdnDomain": "**************.edge.naverncp.com",
            "profileId": 4210,
            "regionType": "KOREA"
        },
        "streamKey": "ix*****************************u",
        "publishUrl": "rtmp://***********.video.media.ntruss.com:8080/relay",
        "globalPublishUrl": "rtmp://***************.video.media.ntruss.com:8080/relay",
        "totalPublishSeconds": 5617,
        "createdTime": 1755652518000,
        "alertOn": false,
        "recentPublishStartTime": 1755652719000,
        "alertOptions": {
            "alertChangeStatus": false,
            "alertVodUploadFail": false,
            "alertReStreamFail": false,
            "alertStreamFailOver": false
        },
        "callbackEndpoint": "https://www.callback-endpoint.com",
        "envType": "REAL",
        "record": {
            "type": "MANUAL_UPLOAD",
            "accessControl": "PRIVATE"
        },
        "origin": {
            "originDomain": "*****.video.media.ntruss.com",
            "originPath": "2*****5"
        },
        "isStreamFailOver": false,
        "drmEnabledYn": true,
        "drm": {
            "siteId": "drm-20250814******-gJMis",
            "contentId": "my-Test-Multidrm"
        }
    }
}