Classic/VPC環境で利用できます。
Widevine、PlayReadyタイプの DRMライセンスを発行します。ライセンスを発行するには、DRMサイトが有効になっている必要があります。API呼び出し時のレスポンスはバイナリ(ORIGINAL)と JSONの2つの形式をサポートしているので、その中から選択して実装できます。
- One Click Multi DRMサービスを通じて発行されるすべてのライセンスは、DRM Encryptionパッケージ化が準備されていると仮定して発行されます。
- すべてのライセンスリクエストは、DRMコンテンツを再生する端末機器情報とプレイヤーの実装を通じてリクエストする必要があります。
- Video Player Enhancementサービスの連携方法は、VPEコンテンツ認証をご参照ください。
One Click Multi DRMサービスは、DoveRunner(旧 PallyCon)のトークンプロキシ発行をサポートします。トークンプロキシ発行の詳細は、トークンプロキシ方式のライセンス発行手順をご参照ください。
リクエスト
リクエスト形式を説明します。リクエスト形式は次の通りです。
| メソッド | URI |
|---|---|
| POST | /api/v1/license |
リクエストヘッダ
One Click Multi DRM APIで共通して使用されるヘッダの詳細は、One Click Multi DRMのリクエストヘッダをご参照ください。
X-DRM-TOKENヘッダの作成
One Click Multi DRMサービスから APIでライセンスを発行するには、X-DRM-TOKENヘッダが必要です。このヘッダは、リクエストユーザーの権限を検証し、選択したサイトのセキュリティポリシーに基づいて DRMライセンスを発行するのに使用されます。ヘッダ値が無効な場合、ライセンスは発行されません。X-DRM-TOKENヘッダを作成する方法は次の通りです。
siteId、contentId、drmType、responseFormat、userIdの JSONデータを入力します。フィールド タイプ 必須の有無 説明 siteIdString Required contentIdString Required drmTypeString Required responseFormatString Required userIdString Required - 入力例
{"siteId":"{サイト ID}","contentId":"{コンテンツ ID}","drmType":"{DRMタイプ}","responseFormat":"{レスポンス形式}","userId":"{ユーザーの固有 ID}"}
- 入力例
- JSONデータを Base64文字列に変換します。
- 変換例
eyJzaXRlSWQiOiJkcm0tMjAyMzExMTUxNDIzMjYtbkh5TnciLCJjb250ZW50SW...dXNlcklkIjoiZDQxZDhjZDk4ZjAwYjIwNGU5ODAwOTk4ZWNmODQyN2UifQ==
- 変換例
JSONデータを入力する際、余分な空白や改行が含まれないようにご注意ください。
リクエスト例
リクエストのサンプルコードは次の通りです。
curl --location --request POST 'https://multi-drm.apigw.ntruss.com/api/v1/license' \
--header 'x-ncp-apigw-timestamp: {Timestamp}' \
--header 'x-ncp-iam-access-key: {Access Key}' \
--header 'x-ncp-apigw-signature-v2: {API Gateway Signature}' \
--header 'Content-Type: application/json' \
--header 'x-ncp-region_code: KR' \
--header 'x-drm-token: {X-DRM-TOKEN}'
レスポンス
レスポンス形式を説明します。
ORIGINALタイプのリクエストはバイナリデータでレスポンスが返されますが、このガイドでは JSONタイプのレスポンスを基準に説明します。
レスポンスボディ
レスポンスボディの説明は次の通りです。
| フィールド | タイプ | 必須の有無 | 説明 |
|---|---|---|---|
license |
String | - | ライセンス JSONデータ |
licenseCreatedTime |
Integer | - | ライセンス発行日時(ミリ秒)
|
tokenCreatedTime |
Integer | - | ヘッダトークンの作成日時(ミリ秒)
|
tokenExpireTime |
Integer | - | ヘッダトークンの有効期限日時(ミリ秒)
|
レスポンスステータスコード
One Click Multi DRM APIで共通して使用されるレスポンスステータスコードの詳細は、One Click Multi DRMのレスポンスステータスコードをご参照ください。
レスポンス例
レスポンスのサンプルコードは次の通りです。
{
"license": "080512BF050AB9020803121044E0A85CB19D0441AC6C66B3D6ABBCC218E39FC48D06228E023082010A0282010100B2FB0D937113004C0F805C6C57DE7B266E2B5E2FE12241FF1421ED55DE2C3F73F62891D7587A8ED153F4009D9522C3609A5DC3C4E43891F8F2D7B448B36E8B77AD96DC795795706D4289F8E61FBDF564AB57E5A5EDDB64FC4EA689...A0F9B8E352FA91B52EC19593F215BCEB2E8401CCC9757C48793C9AB4904B93C7D326BFFBB5E24CDBF297599FB22724C95C9D40D44455586B188A6D10658BEBE5F6CE812FABB8CA58282B5D28176D5DFF3B358692CC4FC6895A06C0B90A192D65F69AE07415DCEF6E54A677D5C769BA6E9CC24E2B968BC3E6E4D4E099E446D9F7E38740DBB708023E6D35D99F1B10",
"licenseCreatedTime": 1700476438204,
"tokenCreatedTime": 1700476438107,
"tokenExpireTime": 1700477038107
}