チャンネル CDNの変更

Prev Next

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

VOD Stationチャンネルに連携された CDNサーバを変更します。CDN+サービスと連携したチャンネルを Global Edgeサービスと連携する場合に使用し、チャンネルがSTOPPED状態の場合にのみ変更できます。

注意

CDNを変更した場合、再生パスの URLが変更されることにご注意ください。

リクエスト

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

メソッド URI
POST /api/v2/channels/{channelId}/cdn-to-edge

リクエストヘッダ

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

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

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

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

リクエストボディ

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

フィールド タイプ 必須の有無 説明
cdn Object Required CDNの設定
cdn.profileId Integer Required Global Edgeプロファイル ID
cdn.regionType String Required Global Edgeサービス地域
  • KOREA | JAPAN | GLOBAL
    • KOREA: 韓国
    • JAPAN: 日本
    • GLOBAL: グローバル

リクエスト例

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

curl --location --request POST 'https://vodstation.apigw.ntruss.com/api/v2/channels/vs-20250821095732-*******/cdn-to-edge' \
--header 'x-ncp-apigw-timestamp: {Timestamp}' \
--header 'x-ncp-iam-access-key: {Access Key}' \
--header 'x-ncp-apigw-signature-v2: {API Gateway Signature}' \
--data '{
    "cdn": {
        "profileId": ****,
        "regionType": "KOREA"
    }
}'

レスポンス

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

レスポンスボディ

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

フィールド タイプ 必須の有無 説明
content Object - レスポンス結果
content.disabled Boolean - チャンネルを無効化するか
  • true | false
    • true: 無効化
    • false: 有効化
content.id String - チャンネル ID
content.name String - チャンネル名
content.channelStatus String - チャンネルの状態
  • CREATING | READY | STOPPING | STOPPED | TERMINATING | TERMINATED | FORCE_STOPPING | FORCE_STOPPED | FORCETERMINATING | FORCETERMINATED
    • CREATING: 作成中
    • READY: 運用中
    • STOPPING: 停止中
    • STOPPED: 停止完了
    • TERMINATING: 削除中
    • TERMINATED: 削除完了
    • FORCE_STOPPING: 強制停止中
    • FORCE_STOPPED: 強制停止完了
    • FORCETERMINATING: 強制削除中
    • FORCETERMINATED: 強制削除完了
content.storageBucketName String - チャンネルがストリーミングする映像が保存されているバケット名
content.segmentDuration Integer - セグメントあたりの再生時間(秒)
content.protocolList Array - ストリーミングプロトコルリスト
  • HLS | DASH
content.createTime Integer - チャンネル作成開始日時(秒)
  • Unix Timestamp形式
content.readyTime Integer - チャンネル作成完了日時(秒)
  • Unix Timestamp形式
content.cdnCreatedTime Integer - チャンネルと連携して自動作成された CDNの作成日時(秒)
  • Unix Timestamp形式
content.stopTime Integer - チャンネル停止日時(秒)
  • Unix Timestamp形式
content.playUrl String - CDNによる再生 URLテンプレート
content.cdnStatus String - チャンネルと連携された CDNの状態
  • 自動作成しない場合、NOT_FOUNDと表示
content.cdnDomain String - 自動作成された Global Edgeのドメイン
content.cdnServiceName String - 自動作成された Global Edgeのサービス名
content.storageBucketStatus String - チャンネルと連携された Object Storageバケットの状態
content.originPath String - 作成したチャンネルのオリジンパス
  • 別途 CDNの作成時に使用
content.encryptList Array - チャンネルのコンテンツ保護設定情報: encryptList
content.accessPrivateFiles Boolean - バケット内の非公開ファイルへのアクセス制限を設定するか
  • true | false
    • true: 制限
    • false: 許可
  • 許可すると非公開ファイルもストリーミング可能
content.encryptedBucketName String - チャンネルと連携されたバケットの暗号化された名前
  • 再生 URL作成時に使用
content.segmentDurationOption String - セグメント分割方法の設定
  • BASIC | VARIABLE
    • BASIC: segmentDuration 設定間隔で一定したセグメントを作成
    • VARIABLE: すべてのセグメントがキーフレーム(keyframe)で始まるようにセグメントを作成
  • VARIABLEオプションを選択した場合、segmentDuration値と実際に作成されたセグメント再生時間に差が生じる可能性がある
content.cdn Object - 自動作成された CDN(Global Edge)情報
content.cdn.cdnType String - CDNのタイプ
  • GLOBAL_EDGE (有効値)
content.cdn.cdnDomain String - 自動作成された Global Edgeのドメイン
content.cdn.cdnServiceName String - 自動作成された Global Edgeのサービス名
content.cdn.profileId Integer - 自動作成された Global Edgeのプロファイル ID
content.cdn.regionType String - 自動作成された Global Edgeのサービス地域
content.cdn.cdnInstanceNo Integer - 自動作成された Global Edgeのインスタンス ID

encryptList

encryptListの説明は次の通りです。

フィールド タイプ 必須の有無 説明
drmContentId String Optional DRMコンテンツ ID
  • DRM Keyのリクエスト時にこの値を含めてリクエスト、ライセンス(License)発行時に必要
drmKeyUrl String - DRM Key URL
  • DRMプロバイダの CPIX API URL
  • VOD Stationは正式に Inka Pallyacon DRMの CPIX v1 APIとの連携をサポート
systemIdList Array - DRMシステム ID
  • DRMシステムの固有 ID
drmTypeCode Integer Optional DRMタイプ
  • 21 | 22
    • 21: FairPlay
    • 22: Widevine/PlayReady
drmTypeName String - DRMタイプ名
protocol String - 設定されたプロトコル
  • HLS | DASH
    • HLS: FairPlay/Media Encryption
    • DASH: Widevine/PlayReady
mediaEncryptTypeCode Integer Optional 設定された Media Encryption(HLS AES-128)コード設定
  • 1 | 2 | 3
    • 1: AES-128
    • 2: Sample-AES
    • 3: CENC
mediaEncryptionTypeName String - 設定された Media Encryption(HLS AES-128)タイプ名
  • AES-128 | Sample-AES | CENC

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

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

レスポンス例

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

{
    "content": {
        "disabled": false,
        "id": "vs-20250821095732-*******",
        "name": "ch-media-encrypt",
        "channelStatus": "STOPPED",
        "storageBucketName": "station-000",
        "segmentDuration": 10,
        "protocolList": [
            "HLS"
        ],
        "createTime": 1755737852,
        "readyTime": 1755737880,
        "cdnCreatedTime": 1755737852,
        "stopTime": 1755757440,
        "playUrl": "https://cpzplvi211650.edge.naverncp.com/[protocol]/[Object Storage Bucket(encryption name)]/[path]/[video filename]/[manifest]",
        "cdnStatus": "RUNNING",
        "cdnDomain": "cpzplvi211650.edge.naverncp.com",
        "cdnServiceName": "edge-vs-20250821095732-*******",
        "storageBucketStatus": "RUNNING",
        "originPath": "vs2-k1.video.media.ntruss.com/2706412/vs-20250821095732-*******",
        "encryptList": [
            {
                "protocol": "HLS",
                "mediaEncryptTypeCode": 1
            }
        ],
        "accessPrivateFiles": true,
        "encryptedBucketName": "*****VzPmKvIthkozoufHw__",
        "segmentDurationOption": "BASIC",
        "cdn": {
            "cdnType": "GLOBAL_EDGE",
            "cdnDomain": "cpzplvi211650.edge.naverncp.com",
            "cdnServiceName": "edge-vs-20250821095732-*******",
            "profileId": ****,
            "regionType": "KOREA",
            "cdnInstanceNo": *****
        }
    }
}