View policy list

Prev Next

An API that views the policy list required to issue the One Click Multi DRM license.

Requests

GET https://multi-drm.apigw.ntruss.com/api/v1/policy?pageNo={pageNo}&pageSizeNo={pageSizeNo}

Request parameters

Parameter name Requirement status Type Restrictions Description
pageNo No Integer No restriction Page index to view
pageSizeNo No Integer 1-100 Number of policies to include when viewing lists
For example, when 60 policies are created with pageSizeNo 30, the viewing of policy list is done in 30 policies per page

Request headers

Header name Requirement status Description
x-ncp-apigw-timestamp YES This is the number of milliseconds that have elapsed since January 1, 1970 00:00:00 (UTC)
If the time difference compared to the API Gateway server is 5 minutes or longer, then the request is considered invalid
x-ncp-apigw-timestamp:{Timestamp}
x-ncp-iam-access-key YES Value of access key ID issued in the NAVER Cloud Platform portal
x-ncp-iam-access-key:{Sub Account Access Key}
x-ncp-apigw-signature-v2 YES Signature encrypted with the access key ID value and secret key
x-ncp-apigw-signature-v2:{API Gateway Signature}
Content-Type YES Specifies the request body content type as application/json
Content-Type: application/json
x-ncp-region_code YES Region code (KR)

Response

Field name Type Requirement status Restriction Description
policyName String Y
policyStatus String Y CREATING
READY
DELETED
UPDATING
Policy status
policyId Integer Y default Policy : 0 Created PolicyId
policyCreatedTime Timestamp N Policy created time
policyUpdateTime Timestamp N Policy setting change time
persistent Boolean Y Default: false Offline license storage status
true: maintain license, false: remove license after playback (streaming)
rentalDuration Integer Y Default: 0
0-2,147,483,647
Settings for using offline rental scenario
("persistent: true" must be set when using the option)
Valid period of the license from the download to the first playback time (unit: second(s))
playbackDuration Integer Y Default value: 0
0-2,147,483,647
Valid period of the license after the first playback (unit: second(s))
drmPolicyConfig Object[Array] Y Detailed policy setting by drm type
drmPolicyConfig{}.wideVine Object N Widevine's policy
drmPolicyConfig{}.wideVine{}.useYn Boolean N Whether to apply Widevine's policy settings
drmPolicyConfig{}.wideVine{}.securityLevel Integer N 1:SW_SECURE_CRYPTO
2:SW_SECURE_DECODE
3:HW_SECURE_CRYPTO
4:HW_SECURE_DECODE
5:HW_SECURE_ALL
Widevine security level setting for the track
1:SW_SECURE_CRYPTO
2:SW_SECURE_DECODE
3:HW_SECURE_CRYPTO
4:HW_SECURE_DECODE
If set to 5:HW_SECURE_ALL - 5, playback is only available on Widevine L1 device
drmPolicyConfig{}.wideVine{}.hdcp String N HDCP_NONE
HDCP_V1
HDCP_V2
HDCP_V2_1
HDCP_V2_2
HDCP_NO_DIGITAL_OUTPUT
Digital output security (HDCP) level setting input value: 1 of "HDCP_NONE," "HDCP_V1," "HDCP_V2," "HDCP_V2_1," "HDCP_V2_2," and "HDCP_NO_DIGITAL_OUTPUT"
drmPolicyConfig{}.wideVine{}.cgms String N CGMS_NONE
COPY_FREE
COPY_ONCE
COPY_NEVER
Analog output security (CGMS-A) level setting - input value: 1 of "CGMS_NONE," "COPY_FREE," "COPY_ONCE," and "COPY_NEVER,"
drmPolicyConfig{}.wideVine{}.disableAnalogOutputYn Boolean N Whether analog output is allowed (false: analog output allowed)
drmPolicyConfig{}.wideVine{}.hdcpSrmRule String N HDCP_SRM_RULE_NONE
CURRENT_SRM
If the HDCP device cannot process the system renewability message (SRM), sets the track's playback status.
CURRENT_SRM: Playback of the track not available on devices where the latest SRM cannot be applied. Input value: 1 of "HDCP_SRM_RULE_NONE" and "CURRENT_SRM"
drmPolicyConfig{}.wideVine{}.deviceRevocation Boolean N Whether license issuance is allowed for revoked Android devices (withdrawn from Widevine's support targets) (default value: issuance not allowed)
drmConfig{}.playReady Object N PlayReady's policy
drmConfig{}.playReady{}.useYn Boolean N Whether to apply PlayReady's policy settings
drmConfig{}.playReady{}.securityLevel Integer N 150
2000
3000
PlayReady security level for the track
150, 2000, 3000
When hardware DRM is applied, set to 3000.
drmConfig{}.playReady{}.digitalVideoProtectionLevel Integer N 100
250
270
300
301
Security level setting for digital video output (100, 250, 270, 300, 301)
drmConfig{}.playReady{}.analogVideoProtectionLevel Integer N 100
150
200
201
Security level setting for analog video output (100, 150, 200, 201)
drmConfig{}.playReady{}.digitalAudioProtectionLevel Integer N 100
250
300
301
Security level setting for digital audio output (100, 250, 300, 301)
drmConfig{}.playReady{}.hdcpUseYn Boolean N Sets whether type 1 (HDCP V2.2 and above) is required when HDCP is applied according to OPL settings
(when set to "true," HDCP 2.2 or above is required)
drmConfig{}.fairPlay Object N FairPlay Streaming's policy
drmConfig{}.fairPlay{}.useYn Boolean Y Whether to apply FairPlay Streaming's policy settings
drmConfig{}.fairPlay{}.hdcpEnforcement String N -1 (HDCP not applied)
0 (HDCP Type 0 (regardless of version))
1 (HDCP Type 1 (2.2 or above required))
HDCP application status and HDCP version for the track
-1: HDCP not applied
0: HDCP Type 0 (regardless of version)
1: HDCP Type 1 (2.2 or above required)
drmConfig{}.fairPlay{}.allowAirPlay Boolean N Whether to allow AirPlay
drmConfig{}.fairPlay{}.allowAvAdaptor Boolean N Whether to allow output through digital AV adapter

Examples

Response example

HTTP/1.1 200 OK
Server: nginx
Date: Fri, 20 Nov 2023 19:53:32 GMT
Content-Type: application/json;charset=utf-8
Connection: keep-alive
Access-Control-Allow-Origin: *
x-ncp-trace-id: 36c9k60om4p3238cpmc9gm4cj4

{
  "success": true,
  "content": {
    "policyId": 123,
    "policyName": "mySamplePolicy",
    "policyStatus": "READY",
    "policyCreatedTime": 1700480181622,
    "policyUpdateTime": 1700480181634,
    "persistent": true,
    "rentalDuration": 0,
    "playbackDuration": 0,
    "drmPolicyConfig": {
      "wideVine": {
        "useYn": true,
        "securityLevel": 1,
        "hdcp": "HDCP_NONE",
        "cgms": "CGMS_NONE",
        "disableAnalogOutputYn": true,
        "hdcpSrmRule": "HDCP_SRM_RULE_NONE",
        "deviceRevocation": true
      },
      "playReady": {
        "useYn": true,
        "securityLevel": 150,
        "digitalVideoProtectionLevel": 100,
        "analogVideoProtectionLevel": 100,
        "digitalAudioProtectionLevel": 100,
        "hdcpUseYn": true
      },
      "fairPlay": {
        "useYn": false
      }
    }
  },
    {
      "policyId": 30,
      "policyName": "policy_1",
      "policyStatus": "CREATED",
      "policyCreatedTime": 1698908460802,
      "policyUpdateTime": 1700481601001,
      "persistent": false,
      "rentalDuration": 0,
      "playbackDuration": 0,
      "drmPolicyConfig": {
        "wideVine": {
          "useYn": true,
          "securityLevel": 2,
          "hdcp": "HDCP_V1",
          "cgms": "COPY_FREE",
          "disableAnalogOutputYn": false,
          "hdcpSrmRule": "CURRENT_SRM",
          "deviceRevocation": false
        },
        "playReady": {
          "useYn": true,
          "securityLevel": 2000,
          "digitalVideoProtectionLevel": 250,
          "analogVideoProtectionLevel": 150,
          "digitalAudioProtectionLevel": 250,
          "hdcpUseYn": false
        },
        "fairPlay": {
          "useYn": true,
          "hdcpEnforcement": 0,
          "allowAirPlay": false,
          "allowAvAdaptor": false
        }
      }
    }
    .....
}