POST /v1/videos · engine=brave
Brave Video Search API
Video results from Brave Search, YouTube and beyond, with channel, duration, typed publish date and thumbnail for each video.
Updated
Overview
What the Brave Video Search API does
Brave Search runs its own web index, built by its own crawler, so its results are independent of both Google and Bing. Use it when you want a second, independent view of the web next to Google, or a non-Google source for an AI agent.
/v1/videos with engine: "brave" returns Brave's video results: title, link, domain, source, channel, duration, date and published_at, a snippet and an image_url thumbnail. A page often holds 50 videos.
What you get
-
results[]array - Videos: position, title, link, domain, source (e.g. YouTube), channel, duration, date / published_at, snippet and image_url.
-
metaobject - request_id, credits_used, cached, latency_ms, parse_quality, engine (the provider that answered) and route (each provider attempt with outcome and ms).
Request
curl https://api.serpkite.com/v1/videos \
-H "Authorization: Bearer $SERPKITE_API_KEY" \
-H "Content-Type: application/json" \
-d '{"q":"espresso tutorial","engine":"brave"}'Response (live response, trimmed)
{
"request": {
"country": "us",
"endpoint": "videos",
"engine": "brave",
"language": "en",
"num": 10,
"page": 1,
"q": "espresso tutorial"
},
"results": [
{
"channel": "Lance Hedrick",
"date": "August 12, 2026",
"domain": "youtube.com",
"duration": "27:12",
"image_url": "https://imgs.search.brave.com/4GC_R2F1G8XVD-NZjKQ8jTWIvScOCpo_DRAI7X9Pg6M/rs:fit:200:200:1:0/g:ce/aHR0cHM6Ly9pLnl0/aW1nLmNvbS92aS9u/RXQ4cTlRV2RzRS9t/YXhyZXNkZWZhdWx0/LmpwZw",
"link": "https://www.youtube.com/watch?v=nEt8q9QWdsE",
"position": 1,
"published_at": "2026-08-12",
"snippet": "Head to https://squarespace.com/lancehedrick to save 10% off your first purchase of a website or domain using code LANCEHEDRICKThis is the guide for dummies ...",
"source": "YouTube",
"title": "Espresso in Under 30 Min: Everything You Need to Know - YouTube"
},
{
"channel": "Lance Hedrick",
"date": "October 1, 2025",
"domain": "youtube.com",
"duration": "37:36",
"image_url": "https://imgs.search.brave.com/wwOFB0tquwNC7fvR0OCfxpBLDQ9A1ga072tVDZS8kp0/rs:fit:200:200:1:0/g:ce/aHR0cHM6Ly9pLnl0/aW1nLmNvbS92aS9J/NnRpNk5NQ3FzYy9o/cWRlZmF1bHQuanBn",
"link": "https://www.youtube.com/watch?v=I6ti6NMCqsc&vl=en",
"position": 2,
"published_at": "2025-10-01",
"snippet": "Learn how to dial in espresso like a pro. This video condenses the official SCA Barista Skills espresso curriculum into one clear, practical guide. Whether y...",
"source": "YouTube",
"title": "The Best Espresso Tutorial (Part 2) - YouTube"
}
],
"meta": {
"request_id": "req_01J8ZK4M6Q2V7",
"credits_used": 1,
"cached": false,
"engine": "brave",
"route": [
{
"provider": "brave",
"outcome": "ok",
"ms": 1291
}
],
"latency_ms": 1330,
"parse_quality": "ok"
}
}
Every response also carries X-Credits-Used, X-Credits-Remaining,
X-Cache and X-Tokens-Estimate headers.
Run this query in the playground
One key, many engines
Brave through SerpKite
- Same key, same envelope and the same SDK call as Google: only
enginechanges. meta.enginenames the provider that answered andmeta.routelists every attempt. A result is never relabelled.engine: "auto"keeps Google first and falls back to Brave and the other engines only when Google fails. How fallback works- Failed, blocked and empty attempts are free; you pay only for the provider that answered.
Everything Brave serves on SerpKite
-
Brave Search API
POST /v1/search · engine=brave -
Brave News API
POST /v1/news · engine=brave -
Brave Image Search API
POST /v1/images · engine=brave -
Brave Video Search API
POST /v1/videos · engine=brave
See all engines on the multi-engine search page or in the providers reference.
engine=auto answered by Brave (illustrative)
{
"request": {
"endpoint": "videos",
"engine": "auto",
"q": "espresso tutorial"
},
"meta": {
"engine": "brave",
"route": [
{
"provider": "google",
"outcome": "blocked",
"ms": 2140
},
{
"provider": "brave",
"outcome": "ok",
"ms": 640
}
]
}
}Measured Oct 25, 2026
How Brave behaves on this endpoint
Three queries ("espresso tutorial", "rust async explained", "how to tie a bowline") sent to /v1/videos with engine=brave through the production API, and four more to count video hosts.
- Videos per page
- 43 to 50
- Median response time
- 1.1 s
- Fields on every video
title,link,source,date,published_at,snippetand theimage_urlthumbnail- Videos with channel and duration
- 97%
- Where the videos are hosted
- 181 of 188 (96%) on YouTube; the rest on PBS, BBC, Facebook and a blog
Filters and limits
-
Pages hold up to 50 videos and positions continue across pages:
page: 2starts at position 51. -
timeworks forday,week,monthandyear.time: "hour"is a400 invalid_requestand isn't charged. -
safe: trueuses Brave's strict SafeSearch; otherwise Brave's moderate setting applies. - Brave lists videos it found across the web, so a result links to the host page (usually youtube.com), not to a Brave player.
Reference
Parameters
The parameters /v1/videos accepts, in the JSON body or the query string.
| Name | Type | Default | Description |
|---|---|---|---|
q
required
|
string | – | The search query. Required. Up to 2,048 characters. |
engine
|
string | string[] | "brave" for this page. "auto" tries Google first and falls back to other engines; a list such as ["google", "brave"] limits the route to those engines. | |
country
|
string | us | Country to search from, as a two-letter ISO code (us, gb, de, in…). Defaults to the country a location ends in. |
language
|
string | en | Interface language, as a language code with an optional region (en, de, pt-BR, zh-TW…). |
page
|
integer | 1 | Results page, 1–10. Each page is billed separately. |
format
|
string | json | Response format. markdown is LLM-ready prose; compact is JSON with only the fields agents need. Values: json, compact, markdown. |
fields
|
string | – | Comma-separated projection, e.g. results.title,results.link,knowledge_graph. Cuts tokens. |
max_age
|
integer | – | Accept a cached result up to this many seconds old. Cache hits cost 50% of the credits. |
Full reference, error codes and headers are in the /v1/videos reference. Queue up to 100 requests at half price with POST /v1/batches.
Use cases
What people build with the Brave Video Search API
A second index for agents
Ground answers in two independent indexes: Google by default, Brave with one parameter.
Fallback when Google is blocked
engine=auto tries Google first and answers from Brave when Google is unavailable.
Index comparison
Run the same query on Google and Brave and compare which domains each index ranks.
Pricing
Brave Video Search API pricing
Cost per call
1 credit
per page of results
- From $0.60 per 1,000 calls at volume.
- Credits never expire. No subscription.
- Failed, empty and blocked calls are refunded.
- 2,500 free credits = 2,500 calls, then 1,000 credits a month.
For reference: Serper lists Google searches at $1.00 per 1k on its entry tier and $0.30 at its best tier, and its credits expire after 6 months. SerpKite credits cost $1.00 to $0.60 per 1k.
| Pack | Price | Per 1k credits | Per 1k calls | Calls per pack |
|---|---|---|---|---|
| Starter | $10 | $1.00 | $1.00 | 10,000 |
| Growth | $50 | $0.80 | $0.80 | 62,500 |
| Pro | $300 | $0.60 | $0.60 | 500,000 |
FAQ
Brave Video Search API: common questions
Keep exploring
Related APIs and integrations
Use it from
Start building
Start with the Brave Video Search API
2,500 free credits, then 1,000 every month. No credit card.