Integration paths

One server contract. The right client path for every screen.

Keep policy and DRM-X credentials on your backend, then use the player, SDK, CMS package, or native DRM API that fits your application.

Universal boundaryYour clients ask your backend for a trusted Content ID. Your backend decides access and requests protected playback.No Site Key or Access Key in browser, APK, IPA, or TV application.
Choose your path

Start with working code for your platform.

Web and HTML5

Qualified Shaka and the DRM-X Universal Player Web Component, with complete PHP and ASP.NET Core examples.

Open tutorial

Android and Android TV

Kotlin, Media3, and MediaDrm integration for supported Widevine devices, Google TV, and Fire TV.

Open tutorial

iOS, iPadOS, and tvOS

Swift and AVFoundation FairPlay integration for certificate, SPC, CKC, renewal, and session release.

Open tutorial

Native DRM APIs

Consume the Universal Playback Session Contract from platform DRM APIs or a compatible commercial player.

Open tutorial

WordPress and learning plugins

Use maintained WordPress, LearnDash, LearnPress, and Moodle packages with server-side entitlement.

Open tutorial

Backend languages

PHP, ASP.NET Core, Node.js, Python, Java, Go, and Ruby all call the same playback-session endpoint.

Open tutorial
Five-minute Web path

Download a complete application and change the marked server settings.

Begin integration