Drupal is a registered trademark of Dries Buytaert
Release: Leaflet 10.4.11 Minor update available for module leaflet (10.4.11). Release: Admin Audit Trail 1.0.11 Minor update available for module admin_audit_trail (1.0.11). Release: Session Inspector 1.0.8 Minor update available for module session_inspector (1.0.8). Release: Migrate QA 2.0.4 Minor update available for module migrate_qa (2.0.4). Release: CKEditor Description List 3.0.0 Major update available for module ckeditor_descriptionlist (3.0.0). Release: FlowDrop 2.4.0 Minor update available for module flowdrop (2.4.0). Release: Changelogify 1.3.0 Minor update available for module changelogify (1.3.0). Release: Page Swap 1.0.3 Minor update available for module page_swap (1.0.3). Usage Milestone: Role Theme Switcher Module role_theme_switcher crossed 1,000 active installs. Module Revived: Decoupled Router 2.0.7 Module decoupled_router updated after 11 months of inactivity (2.0.7).

This module allows Drupal to manage Cloudflare's video and real-time media services directly from the administrative interface. It provisions resources like live-streaming inputs, WebRTC applications, and TURN keys, keeping sensitive credentials secure and separate from your exported configuration.

Cloudflare Media brings Cloudflare's video and real-time media services into Drupal as managed resources you create and track from the admin UI, instead of setting them up by hand in the Cloudflare dashboard. It provisions Stream Live Inputs, Realtime (WebRTC) SFU Apps and TURN keys as first-class configuration entities, and keeps the secrets Cloudflare returns when they are created out of your site's exported configuration.

Cloudflare's Media group provides hosted building blocks for live and on-demand video and low-latency WebRTC. This module is the integration layer that lets Drupal provision those building blocks and hold on to the credentials needed to use them, on the same capability and reconciler model as the rest of the Cloudflare for Drupal suite.

Features

  • Stream Live Input — provision a reusable live-streaming endpoint with stable RTMPS/SRT ingest and adaptive HLS/DASH playback.
  • Realtime SFU App — provision the environment within which WebRTC sessions share audio and video tracks.
  • Realtime TURN key — provision a TURN key and mint short-lived ICE credentials for NAT traversal.
  • First-class assets — each resource is a configuration entity other modules can reference; credentials come from a credential set, resolved from settings.php.
  • Secure secrets — the App Secret, TURN key token and Live Input ingest key are stored in the key-value store, never in configuration, so they are never exported to YAML.

Use it when you want Drupal to own the lifecycle of your Cloudflare media infrastructure — giving a site or environment its own live-streaming input, standing up a WebRTC app for a custom conferencing or broadcast feature, or issuing TURN credentials to browsers — without pasting long-lived secrets into configuration.

Post-Installation

There is no new content type or text format to set up. After enabling the module:

  1. Configure a credential set (provided by Cloudflare SDK) with your Cloudflare account ID and an API token. The token is read from settings.php, never stored in configuration.
  2. Go to Administration › Configuration › Web services › Cloudflare and add a Live Input, Realtime App or TURN key — or provision one through the suite's deploy wizard, where each is available as a capability.
  3. Reference the resulting asset from your own code, and use the data-plane clients where you need to read a Live Input's ingest details or mint ICE credentials from a TURN key.

Additional Requirements

  • Cloudflare API and Cloudflare SDK, installed via Composer.
  • A Cloudflare account, and an API token with the Stream and Calls (Realtime) account permissions.
  • While the suite is in development its projects are released at alpha stability, so set your minimum stability accordingly, for example composer require drupal/cloudflare_media:^1.0@alpha.

Cloudflare Media is part of the Cloudflare for Drupal suite; the other resource modules, including Cloudflare Storage and Cloudflare AI, share the same credential set and provisioning model. Feature modules that surface Stream video in Drupal's media library, and a WebRTC application layer on top of these primitives, are planned.

Similar projects

Existing modules such as Cloudflare Stream integrate a single Cloudflare media product, but they assume the resource already exists and expect you to paste a long-lived API token into configuration. Cloudflare Media instead provisions the resources for you, tracks them as assets, resolves credentials from settings.php, and keeps the secrets Cloudflare returns out of configuration entirely.

Supporting this Module

Development and maintenance of Cloudflare Media is supported by Bison Digital.

Community Documentation

Activity

Tracked releases
3
Tracked since
Jul 2026
Latest release
1 month ago
Releases (12 mo)
3 ▲ from 0
Maintenance
Active

Release Timeline

Releases

Version Type Release date
1.0.0-alpha3 Pre-release Jul 11, 2026
1.0.0-alpha2 Pre-release Jul 11, 2026
1.0.0-alpha1 Pre-release Jul 10, 2026