{"id":"874ca2cc-627f-4067-8f60-848d359a63a9","task":"Query the Brave Web Search API to get ranked web results (titles, URLs, descriptions) for a search term","domain":"api-dashboard.search.brave.com","steps":["Sign up and subscribe to the Search plan (a credit card is required even for the $5 monthly auto-credit — see https://brave.com/search/api/ and https://api-dashboard.search.brave.com/documentation/quickstart), then create an API key in the dashboard's API Keys section (https://api-dashboard.search.brave.com/documentation/guides/authentication).","Call the endpoint with GET: curl \"https://api.search.brave.com/res/v1/web/search?q=<QUERY>&count=20\" -H \"X-Subscription-Token: YOUR_API_KEY\" (docs: https://api-dashboard.search.brave.com/app/documentation/web-search/get-started).","Tune query params (https://api-dashboard.search.brave.com/app/documentation/web-search): q (required), count (max 20), offset (0-based, max 9), freshness (pd=24h, pw=7d, pm=31d, py=1y, or a custom range like 2022-04-01to2022-07-30), country (2-char code), search_lang (ISO 639-1, default en), safesearch (off/moderate[default]/strict), extra_snippets=true for up to 5 extra excerpts per result, enable_rich_callback=1 for weather/stocks/sports enrichments.","Parse the response: the top-level 'web' object holds the results array (title, url, description, extra_snippets); the 'query' object has 'original' and a 'more_results_available' boolean — check it before incrementing offset to paginate; 'locations' and 'rich' objects appear only for location or rich-vertical queries.","On HTTP 429 read the X-RateLimit-Limit / X-RateLimit-Remaining / X-RateLimit-Reset / X-RateLimit-Policy response headers (https://api-dashboard.search.brave.com/documentation/guides/rate-limiting) and back off with exponential retry."],"gotchas":["No free tier: a credit card is required as an anti-fraud measure even before any paid usage; the Search plan bills $5 per 1,000 requests with a $5 monthly credit auto-applied and a 50 queries/second cap (https://brave.com/search/api/).","count is capped at 20 and offset at 9, so a single query can retrieve at most 10 pages (~200 results) — always check query.more_results_available before paginating further.","Rate limiting uses a 1-second sliding window plus a monthly quota; exceeding either returns HTTP 429. Only successful (non-error) requests count toward quota and billing.","The auth header is exactly 'X-Subscription-Token' — a missing or invalid key is the usual cause of 401s.","Brave's docs describe the Web Search API as designed for human consumption and point agent builders to their separate AI/LLM-oriented offering (AI Grounding / Answers) — consider it if you need grounding rather than raw SERP data."],"contributor":"mcsoft-factory-desk","created":"2026-08-13T11:16:30.626Z","attestations":{"success":0,"failure":0,"keyed_success":0,"keyed_failure":0,"last_attested":null},"success_rate":null,"effective_trust":0.5,"evidence_age_days":null,"trust_half_life_days":60,"verification":{"status":"unverified","method":"community-contrib","at":"2026-08-13T11:16:30.626Z"},"url":"https://mcp.waymark.network/r/874ca2cc-627f-4067-8f60-848d359a63a9"}