Digital Rights Management
POST DRM#
Create a new DRM.
| POST | |
|---|---|
| Method | POST |
| URL or EndPoint | /api/v{version}/projects/{projectId}/drm |
| Headers | Authorization |
| Parameters | version, projectId |
| Body | widevineEncryption{keyServerUrl, signer, aesSigningKey, aesSigningIV, rsaSigningKeyPath}, rawKeyEncryption{iv, pssh, rawKeys[]{label, keyId, key}}, playReadyEncryption{playReadyServerUrl, clientCertFile, clientCertPrivateKeyFile, clientCertPrivateKeyPassword}, ezDRM{username, password} |
The description of the URL parameters is as follows:
| URL Parameter Name | Mandatory | Type | Example | Description |
|---|---|---|---|---|
| {version} | Yes | integer($int32) | 1 | Shows the version of API |
| {projectId} | Yes | string($Guid) | 3fa85f64-5717-4562-b3fc-2c963f66afa6 | Shows the id of the project |
The description of the parameters is as follows:
| URL Parameter Name | Mandatory | Type | Example | Description |
|---|---|---|---|---|
| Version | Yes | integer($int32) | 1 | Shows the version of API |
| ProjectId | Yes | string($Guid) | 3fa85f64-5717-4562-b3fc-2c963f66afa6 | Shows the id of the project |
Request body#
{ "widevineEncryption": { "keyServerUrl": "string", "signer": "string", "aesSigningKey": "string", "aesSigningIV": "string", "rsaSigningKeyPath": "string" }, "rawKeyEncryption": { "iv": "string", "pssh": "string", "rawKeys": [ { "label": "string", "keyId": "string", "key": "string" } ] }, "playReadyEncryption": { "playReadyServerUrl": "string", "clientCertFile": "string", "clientCertPrivateKeyFile": "string", "clientCertPrivateKeyPassword": "string" }, "ezDRM": { "username": "string", "password": "string" }}
| Body Parameter Name | Mandatory | Type | Example | Description |
|---|---|---|---|---|
| widevineEncryption | Yes | object | It specifies the properties for the widewine encryption | |
| keyServerUrl | Yes | string | "string" | It specifies the key server url for the widewine encryption |
| signer | Yes | string | "string" | It specifies the signer for the widewine encryption |
| aesSigningKey | Yes | string | "string" | It specifies the AES signing key for the widewine encryption |
| aesSigningIV | Yes | string | "string" | It specifies the AES initializing vector for the widewine encryption |
| rsaSigningKeyPath | Yes | string | "string" | It specifies the RSA signing key path for the widewine encryption |
| rawKeyEncryption | Yes | object | 0 | It specifies the raw key encryption properties |
| iv | Yes | string | "string" | It specifies the initializing vector for the raw key encryption |
| pssh | Yes | string | "string" | It specifies the Secure Shell protocol for the raw key encryption |
| rawKeys | Yes | array[object] | It specifies the raw keys for the raw key encryption | |
| label | Yes | string | "string" | It specifies the label for the raw key |
| keyId | Yes | string | "string" | It specifies the key id for the raw key |
| key | Yes | string | "string" | It specifies the key for the raw key |
| playReadyEncryption | Yes | object | It specifies the play ready encryption properties | |
| playReadyServerUrl | Yes | string | "string" | It specifies the server URL for the play ready encryption |
| clientCertFile | Yes | string | "string" | It specifies the client Cert private file for the play ready encryption |
| clientCertPrivateKeyPassword | Yes | string | "string" | It specifies the client Cert private key password for the play ready encryption |
Responses#
If the action is successful, the service sends back an HTTP 200 response.
The following data is returned in json format by the service.
{ "success": true, "errors": [ "string" ], "messages": [ "string" ], "result": { "widevineEncryption": { "keyServerUrl": "string", "signer": "string", "aesSigningKey": "string", "aesSigningIV": "string", "rsaSigningKeyPath": "string" }, "rawKeyEncryption": { "iv": "string", "pssh": "string", "rawKeys": [ { "label": "string", "keyId": "string", "key": "string" } ] }, "playReadyEncryption": { "playReadyServerUrl": "string", "clientCertFile": "string", "clientCertPrivateKeyFile": "string", "clientCertPrivateKeyPassword": "string" }, "ezDRM": { "username": "string", "password": "string" } }, "resultInfo": { "totalCount": 0, "pageIndex": 0, "pageSize": 0, "totalPages": 0, "hasNextPage": true, "hasPreviousPage": true }}| Field Name | Type | Example | Description |
|---|---|---|---|
| success | bool | true | If response is success will return true otherwise will return false |
| errors | array [] | "string" | Indicate if there was an error |
| messages | array [] | "string" | Returns the response message from back-end |
| result | object | Returns the created DRM object | |
| widevineEncryption | object | Returns the properties for the widewine encryption | |
| keyServerUrl | string | "string" | Returns the key server url for the widewine encryption |
| signer | string | "string" | Returns the signer for the widewine encryption |
| aesSigningKey | string | "string" | Returns the AES signing key for the widewine encryption |
| aesSigningIV | string | "string" | Returns the AES initializing vector for the widewine encryption |
| rsaSigningKeyPath | string | "string" | Returns the RSA signing key path for the widewine encryption |
| rawKeyEncryption | object | 0 | Returns the raw key encryption properties |
| iv | string | "string" | Returns the initializing vector for the raw key encryption |
| pssh | string | "string" | Returns the Secure Shell protocol for the raw key encryption |
| rawKeys | array[object] | Returns the raw keys for the raw key encryption | |
| label | string | "string" | Returns the label for the raw key |
| keyId | string | "string" | Returns the key id for the raw key |
| key | string | "string" | Returns the key for the raw key |
| playReadyEncryption | object | Returns the play ready encryption properties | |
| playReadyServerUrl | string | "string" | Returns the server URL for the play ready encryption |
| clientCertFile | string | "string" | Returns the client Cert private file for the play ready encryption |
| clientCertPrivateKeyPassword | string | "string" | Returns the client Cert private key password for the play ready encryption |
| resultInfo | object | Returns an object of behavior | |
| totalCount | integer($int32) | 0 | How many records of behavior entity are in database |
| pageIndex | integer($int32) | 0 | Returns the page index, from which page you want to see the requested data |
| pageSize | integer($int32) | 0 | Returns how many pages you want to list from page index you selected |
| totalPages | integer($int32) | 0 | Returns the total number of pages |
| hasNextPage | bool | true | Returns the next page of paginated data |
| hasPreviousPage | bool | true | Returns the previous page of paginated data |
Errors
For information about the errors that are common to all actions, see Common Errors:
- HTTP Status Code: 401 Unauthorized
- HTTP Status Code: 403 Forbidden
- HTTP Status Code: 500 Server Error
PUT DRM#
Update a DRM.
| PUT | |
|---|---|
| Method | PUT |
| URL or EndPoint | /api/v{version}/projects/{projectId}/drm |
| Headers | Authorization |
| Parameters | version, projectId |
| Body | widevineEncryption{keyServerUrl, signer, aesSigningKey, aesSigningIV, rsaSigningKeyPath}, rawKeyEncryption{iv, pssh, rawKeys[]{label, keyId, key}}, playReadyEncryption{playReadyServerUrl, clientCertFile, clientCertPrivateKeyFile, clientCertPrivateKeyPassword}, ezDRM{username, password} |
The description of the URL parameters is as follows:
| URL Parameter Name | Mandatory | Type | Example | Description |
|---|---|---|---|---|
| {version} | Yes | integer($int32) | 1 | Shows the version of API |
| {projectId} | Yes | Guid | 3fa85f64-5717-4562-b3fc-2c963f66afa6 | Shows the id of the project |
The description of the parameters is as follows:
| URL Parameter Name | Mandatory | Type | Example | Description |
|---|---|---|---|---|
| Version | Yes | integer($int32) | 1 | Shows the version of API |
| ProjectId | Yes | Guid | 3fa85f64-5717-4562-b3fc-2c963f66afa6 | Shows the id of the project |
Request body#
{ "widevineEncryption": { "keyServerUrl": "string", "signer": "string", "aesSigningKey": "string", "aesSigningIV": "string", "rsaSigningKeyPath": "string" }, "rawKeyEncryption": { "iv": "string", "pssh": "string", "rawKeys": [ { "label": "string", "keyId": "string", "key": "string" } ] }, "playReadyEncryption": { "playReadyServerUrl": "string", "clientCertFile": "string", "clientCertPrivateKeyFile": "string", "clientCertPrivateKeyPassword": "string" }, "ezDRM": { "username": "string", "password": "string" }}
| Body Parameter Name | Mandatory | Type | Example | Description |
|---|---|---|---|---|
| widevineEncryption | Yes | object | It specifies the properties for the widewine encryption | |
| keyServerUrl | Yes | string | "string" | It specifies the key server url for the widewine encryption |
| signer | Yes | string | "string" | It specifies the signer for the widewine encryption |
| aesSigningKey | Yes | string | "string" | It specifies the AES signing key for the widewine encryption |
| aesSigningIV | Yes | string | "string" | It specifies the AES initializing vector for the widewine encryption |
| rsaSigningKeyPath | Yes | string | "string" | It specifies the RSA signing key path for the widewine encryption |
| rawKeyEncryption | Yes | object | 0 | It specifies the raw key encription properties |
| iv | Yes | string | "string" | It specifies the initializing vector for the raw key encryption |
| pssh | Yes | string | "string" | It specifies the Secure Shell protocol for the raw key encryption |
| rawKeys | Yes | array[object] | It specifies the raw keys for the raw key encryption | |
| label | Yes | string | "string" | It specifies the label for the raw key |
| keyId | Yes | string | "string" | It specifies the key id for the raw key |
| key | Yes | string | "string" | It specifies the key for the raw key |
| playReadyEncryption | Yes | object | It specifies the play ready encryption properties | |
| playReadyServerUrl | Yes | string | "string" | It specifies the server URL for the play ready encryption |
| clientCertFile | Yes | string | "string" | It specifies the client Cert private file for the play ready encryption |
| clientCertPrivateKeyPassword | Yes | string | "string" | It specifies the client Cert private key password for the play ready encryption |
Responses#
If the action is successful, the service sends back an HTTP 200 response.
The following data is returned in json format by the service.
{ "success": true, "errors": [ "string" ], "messages": [ "string" ], "result": { "widevineEncryption": { "keyServerUrl": "string", "signer": "string", "aesSigningKey": "string", "aesSigningIV": "string", "rsaSigningKeyPath": "string" }, "rawKeyEncryption": { "iv": "string", "pssh": "string", "rawKeys": [ { "label": "string", "keyId": "string", "key": "string" } ] }, "playReadyEncryption": { "playReadyServerUrl": "string", "clientCertFile": "string", "clientCertPrivateKeyFile": "string", "clientCertPrivateKeyPassword": "string" }, "ezDRM": { "username": "string", "password": "string" } }, "resultInfo": { "totalCount": 0, "pageIndex": 0, "pageSize": 0, "totalPages": 0, "hasNextPage": true, "hasPreviousPage": true }}| Field Name | Type | Example | Description |
|---|---|---|---|
| widevineEncryption | object | Returns the properties for the widewine encryption | |
| keyServerUrl | string | "string" | Returns the key server url for the widewine encryption |
| signer | string | "string" | Returns the signer for the widewine encryption |
| aesSigningKey | string | "string" | Returns the AES signing key for the widewine encryption |
| aesSigningIV | string | "string" | Returns the AES initializing vector for the widewine encryption |
| rsaSigningKeyPath | string | "string" | Returns the RSA signing key path for the widewine encryption |
| rawKeyEncryption | object | 0 | Returns the raw key encription properties |
| iv | string | "string" | Returns the initializing vector for the raw key encryption |
| pssh | string | "string" | Returns the Secure Shell protocol for the raw key encryption |
| rawKeys | array[object] | Returns the raw keys for the raw key encryption | |
| label | string | "string" | Returns the label for the raw key |
| keyId | string | "string" | Returns the key id for the raw key |
| key | string | "string" | Returns the key for the raw key |
| playReadyEncryption | object | Returns the play ready encryption properties | |
| playReadyServerUrl | string | "string" | Returns the server URL for the play ready encryption |
| clientCertFile | string | "string" | Returns the client Cert private file for the play ready encryption |
| clientCertPrivateKeyPassword | string | "string" | Returns the client Cert private key password for the play ready encryption |
Errors
For information about the errors that are common to all actions, see Common Errors:
- HTTP Status Code: 401 Unauthorized
- HTTP Status Code: 403 Forbidden
- HTTP Status Code: 404 Not found
GET DRM#
Get a DRM.
| GET | |
|---|---|
| Method | GET |
| URL or EndPoint | /api/v{version}/projects/{projectId}/drm |
| Headers | Authorization |
| Parameters | version, projectId |
| Body | widevineEncryption{keyServerUrl, signer, aesSigningKey, aesSigningIV, rsaSigningKeyPath}, rawKeyEncryption{iv, pssh, rawKeys[]{label, keyId, key}}, playReadyEncryption{playReadyServerUrl, clientCertFile, clientCertPrivateKeyFile, clientCertPrivateKeyPassword}, ezDRM{username, password} |
The description of the URL parameters is as follows:
| URL Parameter Name | Mandatory | Type | Example | Description |
|---|---|---|---|---|
| {version} | Yes | integer($int32) | 1 | Shows the version of API |
| {projectId} | Yes | string($Guid) | 3fa85f64-5717-4562-b3fc-2c963f66afa6 | Shows the id of the project |
The description of the parameters is as follows:
| URL Parameter Name | Mandatory | Type | Example | Description |
|---|---|---|---|---|
| Version | Yes | integer($int32) | 1 | Shows the version of API |
| ProjectId | Yes | string($Guid) | 3fa85f64-5717-4562-b3fc-2c963f66afa6 | Shows the id of the project |
Request Body#
The request does not have a request body.
Responses#
If the action is successful, the service sends back an HTTP 200 response.
The following data is returned in json format by the service.
{ "success": true, "errors": [ "string" ], "messages": [ "string" ], "result": { "widevineEncryption": { "keyServerUrl": "string", "signer": "string", "aesSigningKey": "string", "aesSigningIV": "string", "rsaSigningKeyPath": "string" }, "rawKeyEncryption": { "iv": "string", "pssh": "string", "rawKeys": [ { "label": "string", "keyId": "string", "key": "string" } ] }, "playReadyEncryption": { "playReadyServerUrl": "string", "clientCertFile": "string", "clientCertPrivateKeyFile": "string", "clientCertPrivateKeyPassword": "string" }, "ezDRM": { "username": "string", "password": "string" } }, "resultInfo": { "totalCount": 0, "pageIndex": 0, "pageSize": 0, "totalPages": 0, "hasNextPage": true, "hasPreviousPage": true }}| Field Name | Type | Example | Description |
|---|---|---|---|
| success | bool | true | If response is success will return true otherwise will return false |
| errors | array [] | "string" | Indicate if there was an error |
| messages | array [] | "string" | Returns the response message from back-end |
| result | object | Returns the requested DRM object | |
| widevineEncryption | object | Returns the properties for the widewine encryption | |
| keyServerUrl | string | "string" | Returns the key server url for the widewine encryption |
| signer | string | "string" | Returns the signer for the widewine encryption |
| aesSigningKey | string | "string" | Returns the AES signing key for the widewine encryption |
| aesSigningIV | string | "string" | Returns the AES initializing vector for the widewine encryption |
| rsaSigningKeyPath | string | "string" | Returns the RSA signing key path for the widewine encryption |
| rawKeyEncryption | object | 0 | Returns the raw key encryption properties |
| iv | string | "string" | Returns the initializing vector for the raw key encryption |
| pssh | string | "string" | Returns the Secure Shell protocol for the raw key encryption |
| rawKeys | array[object] | Returns the raw keys for the raw key encryption | |
| label | string | "string" | Returns the label for the raw key |
| keyId | string | "string" | Returns the key id for the raw key |
| key | string | "string" | Returns the key for the raw key |
| playReadyEncryption | object | Returns the play ready encryption properties | |
| playReadyServerUrl | string | "string" | Returns the server URL for the play ready encryption |
| clientCertFile | string | "string" | Returns the client Cert private file for the play ready encryption |
| clientCertPrivateKeyPassword | string | "string" | Returns the client Cert private key password for the play ready encryption |
| resultInfo | object | Returns an object of behavior | |
| totalCount | integer($int32) | 0 | How many records of behavior entity are in database |
| pageIndex | integer($int32) | 0 | Returns the page index, from which page you want to see the requested data |
| pageSize | integer($int32) | 0 | Returns how many pages you want to list from page index you selected |
| totalPages | integer($int32) | 0 | Returns the total number of pages |
| hasNextPage | bool | true | Returns the next page of paginated data |
| hasPreviousPage | bool | true | Returns the previous page of paginated data |
Errors
For information about the errors that are common to all actions, see Common Errors:
- HTTP Status Code: 401 Unauthorized
- HTTP Status Code: 403 Forbidden
- HTTP Status Code: 500 Server Error