Developer source, integration examples and setup guidance for protected video with Node.js / Express. DRM-X 6.0 provides Multi-DRM playback while your application keeps its existing users, content catalog and access rules.
DRM-X 6.0 website · Step-by-step documentation · All integrations · Live examples
Release 20260925.7, public preview. Requirements: Node.js 24+. Component licenses and third-party notices remain in their source folders.
- Start with
examples/sdk/node-express/README.md. - Files and extension points to configure:
server.mjs → authorize(userId, videoId). - Download the tested platform package or clone this repository. Preserve the folder layout so local SDK dependencies resolve correctly.
Use your existing login middleware and return an authorized content mapping from authorize(userId, videoId), or null when denied.
- Encrypt and publish a video, then copy its Content ID. With configured 1aicloud/S3 publishing, DRM-X records the media URLs. If you upload protected files to your own server, register their DASH/HLS media URLs in DRM-X first.
- Configure Site ID, Site Key and Access Key on the server, following the platform guide. Never put these credentials in client-side code or Git.
- Use your existing login and check the current user's purchase, membership or enrollment. Map your own video/lesson ID to the authorized DRM-X Content ID.
- The backend requests playback and the player receives the registered manifest and DRM License Token. Normal streaming integration supplies Content ID; it does not require customers to enter the manifest URL in their website code.
Remove local demo identities, use HTTPS, and test signed-out, unauthorized, revoked and allowed access with your target browsers and devices. Deny access when authorization cannot be established. An already issued DRM license follows its own policy lifetime. Keep server credentials out of logs, issues and screenshots.
The source, SDK packages and examples are supplied for developers; runtime dependencies may require installation from their normal package registries. These previews do not claim certification for every browser, device, LMS or hosted platform. Follow the linked guide for platform-specific prerequisites and limitations.
See LICENSE and the licenses/notices inside SDK, plugin and vendor folders. A source license does not include a DRM-X service subscription or third-party LMS licenses. Use the documentation for integration help and the DRM-X 6.0 website to explore the service. Report reproducible code issues without credentials or customer data.