DRMServices

FREEMIUM
By DRMServices
Updated 4 months ago
Entertainment
5.5/10
Popularity Score
98ms
Latency
100%
Success Rate

DRMServices API Documentation

What is Widevine DRM? Widevine's DRM solution combines the following industry adopted standards to provide robust multiplatform content protection:

Dynamic Adaptive Streaming over HTTP (DASH) DASH enables streaming of high quality media content over the Internet. DASH leverages standard HTTP protocol and can be easily deployed on existing Internet infrastructure (web servers, CDNs, firewalls, etc).

Common Encryption (CENC) CENC is an industry standards based approach to content encryption. CENC identifies standard encryption and key mapping mechanisms that may be utilized by one or more DRM systems to allow the decryption of the same file using different DRM systems. CENC enables content providers to encrypt their content once and deliver it to numerous client devices and their assorted DRM schemes.

Encrypted Media Extensions (EME) EME is a proposed W3C standard that provides a set of common APIs that can be used to interact with DRM systems and manage license key exchange. EME allows content providers to design a single application solution for all devices.

Key benefits of Widevine's DRM solution:

Support for reliable content protection across multiple systems:. Provides ubiquitous device coverage and extends synergy across multiple content protection systems. See a list of currently supported platforms.

Complete control and flexibility during video playback: Fully featured HTML5 video player with adaptive streaming, QoS, and accessibility support across devices.

View API Details
POST/proxy
POST/addkeys
GET/
POST/proxy

Main License Adquisition URL

Header Parameters
X-RapidAPI-HostSTRING
REQUIRED
X-RapidAPI-KeySTRING
REQUIRED
Content-typeSTRING
OPTIONALNot required, but the body of the request should be: The license request sent by a client, usually generated by the CDM for Widevine.
Code Snippet
unirest.post("https://drmservices-drmservices-v1.p.rapidapi.com/proxy")
.header("X-RapidAPI-Host", "drmservices-drmservices-v1.p.rapidapi.com")
.header("X-RapidAPI-Key", "SIGN-UP-FOR-KEY")
.header("Content-type", "text/plain")
.end(function (result) {
  console.log(result.status, result.headers, result.body);
});
Sample Response
General
Request URL: https://drmservices-drmservices-v1.p.rapidapi.com/proxy
Request Method: POST
Response Headers
Response Body

Install SDK for NodeJS

Installing

To utilize unirest for node.js install the the npm module:

$ npm install unirest

After installing the npm package you can now start simplifying requests like so:

var unirest = require('unirest');

Creating Request

unirest.post("https://drmservices-drmservices-v1.p.rapidapi.com/proxy")
.header("X-RapidAPI-Host", "drmservices-drmservices-v1.p.rapidapi.com")
.header("X-RapidAPI-Key", "SIGN-UP-FOR-KEY")
.header("Content-type", "text/plain")
.end(function (result) {
  console.log(result.status, result.headers, result.body);
});
OAuth2 Authentication
Client ID
Client Secret
OAuth2 Authentication