Skip to main content
POST
Trigger a media extraction job
The Media Data API is not enabled by default. Contact support@brightdata.com to enable it for your account.
The Media Data API provides reliable, large-scale access to video, audio, captions, and thumbnails from YouTube, Vimeo, TikTok, and Bilibili. It is designed for teams building multimodal AI systems that require high-quality media data at scale. Common use cases include:
  • Multimodal model training: Download video and audio tracks to build training datasets for vision-language models, audio classification, and video understanding tasks.
  • Caption and transcript collection: Retrieve structured captions in VTT, SRT, or JSON format for speech recognition fine-tuning and text-video alignment.
  • Thumbnail and storyboard extraction: Collect visual frames for image model training, scene classification, and content analysis pipelines.
A delivery destination is required for every request. Configure a delivery destination before sending your first request. See Delivery options.

Input fields

The request body is a JSON array. Each object in the array is a separate download job.
string
required
The full URL of the video to download. Supported platforms: YouTube, Vimeo, TikTok, Bilibili.
string
default:"full"
Specifies what content type to download.
boolean
default:"false"
Whether to download available captions or subtitles for the video.
string
default:"vtt"
The file format for downloaded captions. Only applies when captions is true.
integer
Minimum accepted video resolution, expressed as a vertical pixel count. The download proceeds only if a resolution at or above this height is available.Common values: 360, 480, 720, 1080, 1440, 2160
integer
Maximum accepted video resolution, expressed as a vertical pixel count. The download proceeds only if a resolution at or below this height is available.Common values: 360, 480, 720, 1080, 1440, 2160
boolean
default:"false"
Whether to include the video’s thumbnail image in the results.
boolean
default:"false"
Whether to include the video’s storyboard images (sprite sheets used for timeline preview scrubbing) in the results.
string
A custom path for file upload. Overrides the path configured in your delivery settings. Supports template variables: {{datetime}}, {{video_id}}, {{job}}.Example: "my-videos/{{video_id}}/{{datetime}}"
string
A custom filename for uploaded files. The value is used as the base name across all output files (e.g. <filename>.mp4, <filename>.metadata.json, <filename>.sub.0). Supports template variables: {{datetime}}, {{video_id}}, {{job}}.Example: "{{video_id}}_{{datetime}}"

Authorizations

Authorization
string
header
required

Your Bright Data API key. Find it in the Bright Data Control Panel.

Query Parameters

collector
string
required

Your Media Extraction collector ID. This is a fixed value assigned when the feature is enabled on your account.

Example:

"YOUR_COLLECTOR_ID"

Body

application/json

A JSON array of extraction job objects. Each object represents one media extraction job. Multiple jobs can be submitted in a single request.

Minimum array length: 1
url
string
required

The full URL of the video to download. Supported platforms: YouTube, Vimeo, TikTok, Bilibili.

Example:

"https://www.video-page-example.com/v=89438398439"

format
enum<string>
default:full

Specifies what content type to download.

Available options:
full,
video_only,
audio_only,
all_audio_tracks,
all_audio_tracks+video,
none
captions
boolean
default:false

Whether to download available captions or subtitles for the video.

captions_format
enum<string>
default:vtt

The file format for downloaded captions. Only applies when captions is true. Supported formats: vtt, srt, json3.

Available options:
vtt,
srt,
json3
min_height
integer

Minimum accepted video resolution, expressed as a vertical pixel count. The download proceeds only if a resolution at or above this height is available. Common values: 360, 480, 720, 1080, 1440, 2160.

Example:

720

max_height
integer

Maximum accepted video resolution, expressed as a vertical pixel count. The download proceeds only if a resolution at or below this height is available. Common values: 360, 480, 720, 1080, 1440, 2160.

Example:

1440

thumbnail
boolean
default:false

Whether to include the video's thumbnail image in the results.

storyboards
boolean
default:false

Whether to include the video's storyboard images (sprite sheets used for timeline preview scrubbing) in the results.

Response

Job accepted successfully.

success
boolean

true when the job was accepted.

inputs
integer

Number of download jobs submitted.

job_id
string

Unique identifier for the submitted job.