Our Brave Videos API allows you to scrape videos from Brave Videos, the video search of Brave Search. For each video, the API returns its title and link, its website and channel, its description, its date and duration, its views when Brave has them, and its thumbnails.

Brave Videos returns up to 50 videos per page, and a second page when it has more videos. Filter them by country with country, by publication date with date, and for adult content with safe_search.

The API endpoint is https://serpapi.com/search?engine=brave_videos

Head to the playground for a live and interactive demo.

API parameters

Search query

q

Required

Parameter defines the query you want to search. You can use anything that you would use in a regular Brave Videos search.

Localization

country

Optional

Parameter defines the country to search from. It's a two-letter country code (e.g., us (default) for the United States, gb for the United Kingdom, or fr for France). Head to the Brave countries page for a full list of supported Brave countries.

Advanced filters

date

Optional

Parameter filters the videos by their publication date. Videos from any time are returned when it isn't set.

Available options:
past_day - Past day
past_week - Past week
past_month - Past month
past_year - Past year

spelling

Optional

Parameter defines whether to fix the spelling of misspelled queries, like Brave. It can be set to true (default) to search for the spelling fix (e.g., minecraft mods for minecarft modz), as shown in search_information.spelling_fix, or false to search for the query as typed, like Brave's Search instead for link.

Pagination

page

Optional

Value is used to get results on a specific page. (e.g., 1 (default) is the first page of results, 2 is the 2nd page of results, etc.). Brave Videos returns up to 50 videos per page, and serpapi_pagination.next is only present when there's a next page.

SerpApi parameters

engine

Required

Set parameter to brave_videos to use the Brave Videos API engine.

no_cache

Optional

Parameter will force SerpApi to fetch the Brave Videos results even if a cached version is already present. A cache is served only if the query and all parameters are exactly the same. Cache expires after 1h. Cached searches are free, and are not counted towards your searches per month. It can be set to false (default) to allow results from the cache, or true to disallow results from the cache. no_cache and async parameters should not be used together.

async

Optional

Parameter defines the way you want to submit your search to SerpApi. It can be set to false (default) to open an HTTP connection and keep it open until you got your search results, or true to just submit your search to SerpApi and retrieve them later. In this case, you'll need to use our Searches Archive API to retrieve your results. async and no_cache parameters should not be used together. async should not be used on accounts with Ludicrous Speed enabled.

zero_trace

Optional

Enterprise only. Parameter enables ZeroTrace mode. It can be set to false (default) or true. Enable this mode to skip storing search parameters, search files, and search metadata on our servers. This may make debugging more difficult.

api_key

Required

Parameter defines the SerpApi private key to use.

output

Optional

Parameter defines the format of the result. It can be set to json (default) to get a structured JSON of the results, html to get the raw HTML retrieved, or md to get a Markdown-formatted version optimized for LLMs and AI agents.

json_restrictor

Optional

Parameter defines the fields you want to include in the output, reducing payload size for faster response. See the JSON Restrictor documentation for more details.

API results

JSON results

JSON output includes structured data for Video Results.

A search status is accessible through search_metadata.status. It flows this way: Processing -> Success || Error. If a search has failed, error will contain an error message. search_metadata.id is the search ID inside SerpApi.

HTML results

This API does not have a full HTML response, only text. search_metadata.prettify_html_file contains a link to the prettified version of the result. It is displayed in the playground.

Markdown results

Markdown output is optimized for LLMs and AI agents. It provides a curated view of the JSON results in a token-efficient format using tables, markdown links, and YAML frontmatter.

To access, use the output=md parameter, the /search.md endpoint, or request header Accept: text/markdown.

API examples

Example with q: minecraft

Example with q: minecraft

JSON Example

{
  ...
  "video_results": [
    {
      "title": "Minecraft LIVE Official Trailer – September 2026",
      "link": "https://www.youtube.com/watch?v=UiPcEW_d9Io",
      "source": "YouTube",
      "source_logo": "https://imgs.search.brave.com/Wg4wjE5SHAargkzePU3eSLmWgVz84BEZk1SjSglJK_U/rs:fit:32:32:1:0/g:ce/aHR0cDovL2Zhdmlj/b25zLnNlYXJjaC5i/cmF2ZS5jb20vaWNv/bnMvOTkyZTZiMWU3/YzU3Nzc5YjExYzUy/N2VhZTIxOWNlYjM5/ZGVjN2MyZDY4Nzdh/ZDYzMTYxNmI5N2Rk/Y2Q3N2FkNy93d3cu/eW91dHViZS5jb20v",
      "channel": {
        "name": "Minecraft",
        "link": "http://www.youtube.com/@minecraft"
      },
      "description": "New adventures await when Minecraft LIVE airs on September 26! Are you ready? We’re revealing a new game drop, looking at Minecraft Dungeons II, and have lot...",
      "date": "September 22, 2026",
      "iso_date": "2026-09-22T15:00:12Z",
      "duration": "00:55",
      "thumbnail": "https://imgs.search.brave.com/QNfQPbYRoEN08oYLx1gjt8R3kuPQLq27hCf9UJucGUg/rs:fit:200:200:1:0/g:ce/aHR0cHM6Ly9pLnl0/aW1nLmNvbS92aS9V/aVBjRVdfZDlJby9t/YXhyZXNkZWZhdWx0/LmpwZw",
      "original_thumbnail": "https://i.ytimg.com/vi/UiPcEW_d9Io/maxresdefault.jpg"
    },
    {
      "title": "Mystery Tent 🌙 | Minecraft Forever World | Ep. 11",
      "link": "https://www.youtube.com/watch?v=wPcy4lbqZlA",
      "source": "YouTube",
      "source_logo": "https://imgs.search.brave.com/Wg4wjE5SHAargkzePU3eSLmWgVz84BEZk1SjSglJK_U/rs:fit:32:32:1:0/g:ce/aHR0cDovL2Zhdmlj/b25zLnNlYXJjaC5i/cmF2ZS5jb20vaWNv/bnMvOTkyZTZiMWU3/YzU3Nzc5YjExYzUy/N2VhZTIxOWNlYjM5/ZGVjN2MyZDY4Nzdh/ZDYzMTYxNmI5N2Rk/Y2Q3N2FkNy93d3cu/eW91dHViZS5jb20v",
      "channel": {
        "name": "LDShadowLady",
        "link": "http://www.youtube.com/@ldshadowlady"
      },
      "description": "Welcome to a brand new Minecraft Single player Let's Play World currently in Minecraft Version Update 26.1. This is a forever world which means I will keep t...",
      "date": "2 days ago",
      "iso_date": "2026-11-02T18:10:34Z",
      "duration": "17:53",
      "thumbnail": "https://imgs.search.brave.com/L7z1OCXRwa6PHBN-50OMggQflkuB70tEyC3VfgCNTaU/rs:fit:200:200:1:0/g:ce/aHR0cHM6Ly9pLnl0/aW1nLmNvbS92aS93/UGN5NGxicVpsQS9t/YXhyZXNkZWZhdWx0/LmpwZw",
      "original_thumbnail": "https://i.ytimg.com/vi/wPcy4lbqZlA/maxresdefault.jpg"
    },
    ...
  ],
  "serpapi_pagination": {
    "current": 1,
    "next": "https://serpapi.com/search.json?country=us&engine=brave_videos&page=2&q=minecraft"
  }
}

Example with country: gb

Brave Videos ranks the videos for the country of the search. When country isn't set, the search is from the United States (us), so the results don't depend on where the request comes from. Videos from websites without channels, like BBC videos, have no channel.

Example with country: gb

JSON Example

{
  ...
  "search_parameters": {
    "engine": "brave_videos",
    "q": "football highlights",
    "country": "gb"
  },
  "video_results": [
    {
      "title": "Moore and Richarlison on target 💪 | Spurs 3-0 Hoffenheim | Highlights",
      "link": "https://www.youtube.com/watch?v=vL5hl_hrVRc",
      "source": "YouTube",
      "source_logo": "https://imgs.search.brave.com/Wg4wjE5SHAargkzePU3eSLmWgVz84BEZk1SjSglJK_U/rs:fit:32:32:1:0/g:ce/aHR0cDovL2Zhdmlj/b25zLnNlYXJjaC5i/cmF2ZS5jb20vaWNv/bnMvOTkyZTZiMWU3/YzU3Nzc5YjExYzUy/N2VhZTIxOWNlYjM5/ZGVjN2MyZDY4Nzdh/ZDYzMTYxNmI5N2Rk/Y2Q3N2FkNy93d3cu/eW91dHViZS5jb20v",
      "channel": {
        "name": "Sky Sports Football",
        "link": "http://www.youtube.com/@skysportsfootball"
      },
      "description": "► Subscribe to Sky Sports Football: http://bit.ly/SSFootballSub► Watch Sky Sports with NOW: https://bit.ly/NOWFootballYTMikey Moore scored a brace and Richar",
      "date": "August 15, 2026",
      "iso_date": "2026-08-15T20:08:37Z",
      "duration": "02:57",
      "thumbnail": "https://imgs.search.brave.com/uH43M0vlFcIo4xVRtlEUDgVCXPCqYv-8kEQxeLFMWdk/rs:fit:200:200:1:0/g:ce/aHR0cHM6Ly9pLnl0/aW1nLmNvbS92aS92/TDVobF9oclZSYy9t/YXhyZXNkZWZhdWx0/LmpwZw",
      "original_thumbnail": "https://i.ytimg.com/vi/vL5hl_hrVRc/maxresdefault.jpg"
    },
    {
      "title": "Highlights - Premier League - Manchester United 1-1 Tottenham Hotspur - BBC Sport",
      "link": "https://www.bbc.co.uk/sport/football/videos/crz9zdl0g04zo",
      "source": "BBC",
      "source_logo": "https://imgs.search.brave.com/BCYR3u7f0k_Pqx5hEO56aUIzi3eMFfe-vYQgUYWV-Bc/rs:fit:32:32:1:0/g:ce/aHR0cDovL2Zhdmlj/b25zLnNlYXJjaC5i/cmF2ZS5jb20vaWNv/bnMvYTEzZDM0NjY3/NDc3MDEyZjI5ZGY3/OTJkMmMyOWU1MGNj/ZjQ5ZGU0Y2U4ZTEx/NzYzMWI1NWE2NDY4/YTk0MThkZC93d3cu/YmJjLmNvLnVrLw",
      "description": "Dominic Solanke scores in stoppage time to salvage a point for 10-man Tottenham as they snatch a draw against Manchester United in a feisty encounter at Old Trafford.",
      "date": "4 weeks ago",
      "iso_date": "2026-10-10T19:24:23Z",
      "thumbnail": "https://imgs.search.brave.com/TzojvRUUAZNEuFooxyOCIb2CgU-6rVYOwUzPR9UEdAI/rs:fit:200:200:1:0/g:ce/aHR0cHM6Ly9pY2hl/Zi5iYmNpLmNvLnVr/L2FjZS9icmFuZGVk/X3Nwb3J0LzEyMDAv/Y3BzcHJvZHBiL2I1/MTkvbGl2ZS9lOGZk/OTkzMC1jNGQ4LTEx/ZjEtYmMyZS0wMThk/NjQ1ZDhkMjEuanBn",
      "original_thumbnail": "https://ichef.bbci.co.uk/ace/branded_sport/1200/cpsprodpb/b519/live/e8fd9930-c4d8-11f1-bc2e-018d645d8d21.jpg"
    },
    ...
  ],
  ...
}

Example with date: past_month

With date, the API only returns videos published in the past day, week, month, or year. The publication date and time of each video, in UTC, is in iso_date.

Example with date: past_month

JSON Example

{
  ...
  "search_parameters": {
    "engine": "brave_videos",
    "q": "spacex launch",
    "country": "us",
    "date": "past_month"
  },
  "video_results": [
    {
      "title": "SpaceX Falcon 9 rocket launches batch of Starlink satellites from California",
      "link": "https://www.youtube.com/watch?v=BEnnrpwGnMQ",
      "source": "YouTube",
      "source_logo": "https://imgs.search.brave.com/Wg4wjE5SHAargkzePU3eSLmWgVz84BEZk1SjSglJK_U/rs:fit:32:32:1:0/g:ce/aHR0cDovL2Zhdmlj/b25zLnNlYXJjaC5i/cmF2ZS5jb20vaWNv/bnMvOTkyZTZiMWU3/YzU3Nzc5YjExYzUy/N2VhZTIxOWNlYjM5/ZGVjN2MyZDY4Nzdh/ZDYzMTYxNmI5N2Rk/Y2Q3N2FkNy93d3cu/eW91dHViZS5jb20v",
      "channel": {
        "name": "Spaceflight Now",
        "link": "http://www.youtube.com/@SpaceflightNowVideo"
      },
      "description": "Watch live coverage as SpaceX launches a Falcon 9 rocket from California with 27 satellites for the company's Starlink space-based internet service. Liftoff ...",
      "date": "5 days ago",
      "iso_date": "2026-10-31T04:42:42Z",
      "duration": "50:14",
      "thumbnail": "https://imgs.search.brave.com/WYFROarBdcteiyi-vIn-9QTdNxp3focdjsgNCrlrNS0/rs:fit:200:200:1:0/g:ce/aHR0cHM6Ly9pLnl0/aW1nLmNvbS92aS9C/RW5ucnB3R25NUS9t/YXhyZXNkZWZhdWx0/LmpwZw",
      "original_thumbnail": "https://i.ytimg.com/vi/BEnnrpwGnMQ/maxresdefault.jpg"
    },
    ...
  ],
  ...
}

Example with a misspelled query: minecarft modz

Like Brave Videos, the API searches for the spelling fix of a misspelled query, which is in search_information.spelling_fix.

Example with a misspelled query: minecarft modz

JSON Example

{
  ...
  "search_information": {
    "spelling_fix": "minecraft mods",
    "video_results_state": "Showing results for fixed spelling"
  },
  "video_results": [
    {
      "title": "Top 30 Quality of Life Minecraft Mods",
      "link": "https://www.youtube.com/watch?v=XnZmMu5cJNY",
      "source": "YouTube",
      ...
    },
    ...
  ],
  ...
}

Example with spelling: false

With spelling set to false, the API searches for the query as typed, like the Search instead for link of Brave Videos.

Example with spelling: false

JSON Example

{
  ...
  "search_parameters": {
    "engine": "brave_videos",
    "q": "minecarft modz",
    "country": "us",
    "spelling": false
  },
  "video_results": [
    {
      "title": "mine-CARS in Minecraft! | MineCars Addon",
      "link": "https://www.youtube.com/watch?v=D-7e95gqdQo",
      "source": "YouTube",
      ...
    },
    ...
  ],
  ...
}

Example with page: 2

With page set to 2, the API returns the second page of Brave Videos. serpapi_pagination.next is only present when Brave Videos has a next page.

Example with page: 2

JSON Example

{
  ...
  "search_parameters": {
    "engine": "brave_videos",
    "q": "minecraft",
    "country": "us",
    "page": "2"
  },
  "video_results": [
    {
      "title": "How Minecraft Can Regain It's Greatness?",
      "link": "https://www.youtube.com/watch?v=WQFR2AEupKQ",
      "source": "YouTube",
      "source_logo": "https://imgs.search.brave.com/Wg4wjE5SHAargkzePU3eSLmWgVz84BEZk1SjSglJK_U/rs:fit:32:32:1:0/g:ce/aHR0cDovL2Zhdmlj/b25zLnNlYXJjaC5i/cmF2ZS5jb20vaWNv/bnMvOTkyZTZiMWU3/YzU3Nzc5YjExYzUy/N2VhZTIxOWNlYjM5/ZGVjN2MyZDY4Nzdh/ZDYzMTYxNmI5N2Rk/Y2Q3N2FkNy93d3cu/eW91dHViZS5jb20v",
      "channel": {
        "name": "kasser",
        "link": "http://www.youtube.com/@kasser1"
      },
      "description": "Minecraft is one of the most iconic games in history, but can it regain its former greatness? In this video, we’ll explore what made Minecraft legendary, the...",
      "date": "February 8, 2025",
      "iso_date": "2025-02-08T09:04:55Z",
      "duration": "08:16",
      "views": 4891,
      "thumbnail": "https://imgs.search.brave.com/xDHk5Sz5OgpHne1GMOGRBEUrRlj8dyTPhmNV5II0rrE/rs:fit:200:200:1:0/g:ce/aHR0cHM6Ly9pLnl0/aW1nLmNvbS92aS9X/UUZSMkFFdXBLUS9t/YXhyZXNkZWZhdWx0/LmpwZw",
      "original_thumbnail": "https://i.ytimg.com/vi/WQFR2AEupKQ/maxresdefault.jpg"
    },
    ...
  ],
  "serpapi_pagination": {
    "current": 2,
    "previous": "https://serpapi.com/search.json?country=us&engine=brave_videos&page=1&q=minecraft"
  }
}

JSON structure overview

{
  ...
  "search_information": {
    "spelling_fix": "String - Query that Brave Videos searched for instead of the misspelled one. (Ex. minecraft mods for minecarft modz)",
    "video_results_state": "String - 'Showing results for fixed spelling' when Brave Videos searched for the spelling fix, or 'Fully empty' when there are no videos."
  },
  "video_results": [
    {
      "title": "String - Title of the video.",
      "link": "String - Link to the video.",
      "source": "String - Website of the video (Ex. YouTube, Vimeo, or BBC), or its domain when Brave Videos has no name for it.",
      "source_logo": "String - Link to the favicon of the website of the video, served by Brave.",
      "channel": {
        "name": "String - Name of the channel that published the video. Videos of websites without channels, like BBC, have no channel.",
        "link": "String - Link to the channel."
      },
      "description": "String - Description of the video, as cut by Brave Videos.",
      "date": "String - Publication date of the video, as shown by Brave Videos. (Ex. 2 days ago, or September 22, 2026)",
      "iso_date": "String - Publication date and time of the video, in UTC. (Ex. 2026-09-22T15:00:12Z)",
      "duration": "String - Duration of the video. (Ex. 17:53, or 03:59:59)",
      "views": "Integer - Number of views of the video. Present when Brave Videos has it.",
      "thumbnail": "String - Link to the thumbnail of the video, served by Brave.",
      "original_thumbnail": "String - Link to the thumbnail of the video on its website."
    },
    ...
  ],
  "serpapi_pagination": {
    "current": "Integer - Current page.",
    "previous": "String - SerpApi link to the previous page.",
    "next": "String - SerpApi link to the next page. Missing when Brave Videos has no more videos."
  }
}