Documentation Index

Fetch the complete documentation index at: https://api.ncloud-docs.com/llms.txt

Use this file to discover all available pages before exploring further.

チャンネルの更新

Prev Next

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

VODストリーミングのためのチャンネル設定を更新します。

リクエスト

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

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

リクエストヘッダ

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

リクエストボディ

リクエストボディの説明は次の通りです。
| フィールド | タイプ | 必須の有無 | 説明 |
|--- |--- |--- |--- |
| name | String | Required | チャンネル名

  • 英数字、記号の「-」を組み合わせて3~20文字以内で入力
|
| protocolList | Array | Required | ストリーミングプロトコルリスト
  • HLS | DASH
  • 重複選択可能
|
| encryptionList | Array | Optional | チャンネルのコンテンツ保護設定: encryptionList |
| segmentDuration | Integer | Required | セグメントあたりの再生時間(秒)
  • 5~20
  • セグメントの再生時間が長いほどファイルサイズは大きくなり、読み込み時間は長くなる可能性がある
  • セグメントの再生時間が短いほどファイルサイズは小さくなるが、バッファリングが発生する可能性がある
|
| segmentDurationOption | String | Optional | セグメント分割方法の設定
  • BASIC (デフォルト) | VARIABLE
    • BASIC: segmentDuration設定間隔で一定したセグメントを作成
    • VARIABLE: すべてのセグメントがキーフレーム(keyframe)で始まるようにセグメントを作成
  • VARIABLEオプションを選択した場合、segmentDuration値と実際に作成されたセグメント再生時間に差が生じる可能性がある
  • 安定したストリーミングサービスのために、BASICオプションの使用がお勧め
|
| drm | Object | Optional | Multi DRMの設定 |
| drm.siteId | String | Conditional | サイト ID |
| drm.contentId | String | Conditional | コンテンツ ID
  • 英数字、記号の「-」、「_」を組み合わせて3~100文字以内で入力
  • Multi DRMを設定する場合、必ず入力
|

encryptionList

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

フィールド タイプ 必須の有無 説明
drmContentId String Optional DRMコンテンツ ID
  • 英数字を組み合わせて1~200文字以内で入力
  • DRM Keyのリクエスト時にこの値を含めてリクエスト、ライセンス(License)発行時に必要
drmKeyUrl String Optional DRM Key URL
  • DRMプロバイダの CPIX API URL
  • VOD Stationは正式に Inka Pallyacon DRMの CPIX v1 APIとの連携をサポート
  • DRMパッケージングのために VOD Stationは xml bodyを含めて POSTでリクエスト
  • http(s)://を含む
  • Media Encryptionを設定する場合、不要
systemIdList Array Optional DRMシステム ID
  • DRMシステム固有 ID
  • 英数字、記号の「-」を組み合わせて1~256文字以内で入力、スペースは使用できない
  • Media Encryptionを設定する場合、不要
  • DRMタイプに合わせて1~2個のシステム IDを必ず含めること
drmTypeCode Integer Optional DRMタイプ
  • 21 | 22
    • 21: FairPlay
    • 22: Widevine/PlayReady
  • Media Encryptionを設定する場合、不要
mediaEncryptTypeCode Integer Optional Media Encryption(HLS AES-128)コードの設定
  • 1 | 2 | 3
    • 1: AES-128
    • 2: Sample-AES
    • 3: CENC
  • drmTypeCode21の場合、設定できない
  • DRMを設定する場合、不要
protocol String Required プロトコル設定
  • HLS | DASH
    • HLS: FairPlay/Media Encryption
    • DASH: Widevine/PlayReady
参考

配信映像のセキュリティ設定関連フィールドは、配信映像のセキュリティ設定を参照して入力してください。

リクエスト例

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

curl --location --request PUT 'https://vodstation.apigw.ntruss.com/api/v2/channels/vs-20250821095732-*******' \
--header 'x-ncp-apigw-timestamp: {Timestamp}' \
--header 'x-ncp-iam-access-key: {Access Key}' \
--header 'x-ncp-apigw-signature-v2: {API Gateway Signature}'
--data '{
	"name":"ch2-media-encrypt",
	"protocolList":["HLS"],
	"segmentDuration":10,
	"segmentDurationOption":"BASIC",
    "encryptionList": [
        {
            "protocol": "HLS",
            "mediaEncryptTypeCode": 1
        }
    ],
	"encryptionList":[]
}'

レスポンス

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

レスポンスボディ

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

フィールド タイプ 必須の有無 説明
content Object - レスポンス結果
content.disabled Boolean - Sub Accountは無効化するか
  • 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.cdnCreatedTime Integer - チャンネルと連携して自動作成された CDNの作成日時(秒)
  • 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
content.notificationUrl String - チャンネル(Callback) URL

encryptList

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

フィールド タイプ 必須の有無 説明
drmContentId String - 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 - DRMタイプ
  • 21 | 22
    • 21: FairPlay
    • 22: Widevine/PlayReady
drmTypeName String - DRMタイプ名
protocol String - 設定されたプロトコル
  • HLS | DASH
    • HLS: FairPlay/Media Encryption
    • DASH: Widevine/PlayReady
mediaEncryptTypeCode Integer - 設定された 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": "ch2-media-encrypt",
        "channelStatus": "CREATING",
        "storageBucketName": "station-000",
        "segmentDuration": 10,
        "protocolList": [
            "HLS"
        ],
        "createTime": 1755737852,
        "cdnCreatedTime": 1755737852,
        "playUrl": "https://cpzplvi******.edge.naverncp.com/[protocol]/[Object Storage Bucket(encryption name)]/[path]/[video filename]/[manifest]",
        "cdnStatus": "CREATING",
        "cdnDomain": "cpzplvi******.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": "cpzplvi******.edge.naverncp.com",
            "cdnServiceName": "edge-vs-20250821095732-*******",
            "profileId": ****,
            "regionType": "KOREA",
            "cdnInstanceNo": *****
        }
    }
}