Skip to main content
Media are reusable files — video backgrounds, static images, logos, and intro/outro clips — that you can reference from presets or project settings. Upload once and reuse across projects.

Media types

client.media.list(options?)

List every reusable media item owned by the authenticated account.

client.media.get(mediaId, options?)

Fetch a single media item.

client.media.create(body, options?)

Create a new media item from a local path, bytes, or an existing uploaded inputFileId. For local paths and bytes, the SDK prepares the upload, sends the file bytes to the upload URL, and registers the uploaded file as reusable media.
'video' | 'image' | 'logo' | 'intro-video' | 'outro-video'
required
Which role this media item fills in a render.
object
The file source. Use { type: "path", path } for local files, { type: "bytes", data, filename } for Blob, File, ArrayBuffer, or typed array data, or { type: "inputFile", inputFileId } when you already have an upload ID.
string
Advanced low-level option: pass the ID returned by client.uploads.create(...) instead of source.

client.media.delete(mediaId, options?)

Delete a media item.
Deleting media does not affect projects or exports that were previously rendered with it. Future renders that reference the deleted media will fall back to the default background.

End-to-end example

Applying a background

Reference uploaded media from a preset or directly from project settings:
For the full set of fields accepted under background, convert the project settings schema to JSON:

What’s next