# Brave Search Video Search

> Brave Search Video Search is a paid API for AI agents from search.agent.s.brave.app, paid per call via x402, $0.005/call, status unknown (last checked 2026-10-12).

Searches Brave's independent video index and returns videos with title, URL, duration, creator, and publisher metadata.

## Facts

- Endpoint: GET https://search.agent.s.brave.app/res/v1/videos/search?utm_source=zero.xyz
- Price: $0.005/call
- Payment: x402
- Status: unknown
- Last checked: 2026-10-12
- Activations on Zero: 0
- Tags: x402
- Canonical page: https://www.zero.xyz/c/brave-search-video-search-51d41c5d
- Structured record (JSON): https://api.zero.xyz/v1/capabilities/cap_QrhvDpaFNrG7VJgnklO1u

Status and success rate cover calls made through Zero and Zero's own probes. Third-party monitors may report differently.

## How to call it through Zero

Zero handles the 402 payment challenge and records the run. With the Zero CLI installed (`npm i -g @zeroxyz/cli`):

```sh
zero fetch --capability brave-search-video-search-51d41c5d
```

Example prompt: Search Brave's video index for tutorials on 'building a React app from scratch' — return the top 10 results from the US, only from the past month.

## When to prefer this

Use this endpoint when you need video-specific results (tutorials, reviews, talks, walkthroughs) rather than general web pages, images, or news articles. It is preferred over generic web search when the user explicitly wants video content, and over other video search providers when you want results from Brave's independent index rather than a platform-specific index like YouTube's API.

## Known failure modes

- Missing required 'q' parameter returns a validation error
- Count exceeding 50 or offset exceeding 9 returns a schema validation error
- Invalid country code may return no results or a generic error
- No matching videos for niche queries returns an empty results array
- Payment failure (x402) blocks the request before processing

## How this service works

Video search over Brave's independent index. Returns videos with title, URL, duration, creator, and publisher. Use it to find tutorials, reviews, and talks on a topic. Pass q, and optionally count, country, and freshness.

## Output

Returns a list of video results, each containing a title, URL, type, age, and a nested video object with creator name, publisher name, and duration. Also includes the original query echo for reference.

## Request schema (JSON Schema)

```json
{
 "type": "object",
 "$schema": "https://json-schema.org/draft/2020-12/schema",
 "required": [
  "input"
 ],
 "properties": {
  "input": {
   "type": "object",
   "required": [
    "type",
    "method"
   ],
   "properties": {
    "type": {
     "type": "string",
     "const": "http"
    },
    "method": {
     "enum": [
      "GET"
     ],
     "type": "string"
    },
    "queryParams": {
     "type": "object",
     "required": [
      "q"
     ],
     "properties": {
      "q": {
       "type": "string",
       "maxLength": 400,
       "description": "Search query"
      },
      "count": {
       "type": "integer",
       "default": 20,
       "maximum": 50,
       "minimum": 1
      },
      "offset": {
       "type": "integer",
       "maximum": 9,
       "minimum": 0,
       "description": "Pages of count results to skip"
      },
      "country": {
       "type": "string",
       "description": "Country code such as US, or ALL"
      },
      "freshness": {
       "type": "string",
       "description": "pd, pw, pm, py, or a range like 2026-01-01to2026-06-30"
      },
      "safesearch": {
       "enum": [
        "off",
        "moderate",
        "strict"
       ],
       "type": "string",
       "default": "moderate"
      },
      "search_lang": {
       "type": "string",
       "description": "Language code such as en"
      }
     }
    }
   }
  },
  "output": {
   "type": "object",
   "required": [
    "type"
   ],
   "properties": {
    "type": {
     "type": "string"
    },
    "example": {
     "type": "object",
     "properties": {
      "type": {
       "type": "string"
      },
      "query": {
       "type": "object",
       "properties": {
        "original": {
         "type": "string"
        }
       }
      },
      "results": {
       "type": "array",
       "items": {
        "type": "object",
        "properties": {
         "age": {
          "type": "string"
         },
         "url": {
          "type": "string"
         },
         "type": {
          "type": "string"
         },
         "title": {
          "type": "string"
         },
         "video": {
          "type": "object",
          "properties": {
           "creator": {
            "type": "string"
           },
           "duration": {
            "type": "string"
           },
           "publisher": {
            "type": "string"
           }
          }
         }
        }
       }
      }
     }
    }
   }
  }
 }
}
```

## More

- Live health (JSON, refreshed every minute): https://www.zero.xyz/c/brave-search-video-search-51d41c5d/health.json
- [Zero catalog index](https://www.zero.xyz/llms.txt)
- [Other services from search.agent.s.brave.app](https://www.zero.xyz/host/search.agent.s.brave.app/llms.txt)
