License Acquisition API exposed by Axinom License Service is the frontend-facing API for the License Requests. Learn how the video players use this API to acquire DRM licenses.

License Acquisition API

License Acquisition API is the frontend-facing API for the License Requests. Typically, the requests are made by a video player.

The API is exposed by the License Service.

Endpoints

License Acquisition API provides a single endpoint: POST /AcquireLicense.

The HTTP POST request’s body shall contain a license request generated by a CDM (Content Decryption Module) which is used by a DRM-capable player. The license request data structure is encrypted and can only be understood by the License Service. The player application merely plays the role of a messenger between the CDM and the License Service. The player cannot read or tamper with the contents of license requests or responses. The DRM License returned by the License Service can only be used on the same device from which the License Request was initiated. Even if the details about the license request data structure are not published by the vendors of the DRM technologies, it is known that the license request contains:

  • Key ID - ID of the Content Key needed to decrypt the video (Player knows the Key ID from the video meta-data)

  • Device Identification - Device ID and other information (DRM technology-specific)

  • IP Address - IP Address of the client device

Note
While it is not possible to manually create a valid license request, it is possible to intercept a real request made by a player, record it and reuse for your own development/debug/troubleshooting purposes (to avoid the need to actually start playback of a video every time you want to test the License Service response to a specific request with an Entitlement Message you generated).
CDMPlayerEntitlement_ServiceLicense_ServiceEntitlement Request [Key ID]JWTGet License RequestLicense RequestPOST /AcquireLicense[Body: License Request,X-AxDRM-Message: JWT]DRM LicenseDRM LicenseDecrypt & Play
Figure 1. Interactions between a player and the License Service

Authorization

The License Acquisition API doesn’t require HTTP Authorization.

However, for the License Service to grant the license, the license request shall carry an Axinom DRM License Service Message with a valid Entitlement Message inside. It can be added to the license request either as a custom HTTP header X-AxDRM-Message or as a query string parameter AxDrmMessage.

Revision History

The table below outlines the document versions and any changes between them.

Version Date Description

1.0

October 14, 2020

  • Initial version.