Endpoints and credits
Confirmed empty results and failed requests are unbilled. Read
X-Credits-Used
for the charge on a response. Keys restricted to particular APIs need the brave scope.
Quickstart
Pagination and filters
Web and video search accept a 1-based page ordinal (page=1 through 10).
Use has_next and next_page to continue. count trims one native page; it does
not change Brave’s page boundaries. You may receive fewer results than requested.
Images and news return their initial source batch and have no page parameter.
All search endpoints accept country, ui_language, and
safe_search=off|moderate|strict. Use the free locale reference
for valid codes. UI language controls interface labels and date formatting; it
is not a result-language filter. country=all selects all regions.
Web search also accepts freshness=any|day|week|month|year and spellcheck.
Read query_info for source spelling corrections and query relaxation. Brave
can broaden a query even with spellcheck disabled. Unsupported parameters return 422.
Result fields
Every search response includesresults, result_count, query_info,
source_url, country, ui_language, safe_search, and the observation time
as both fetched_at (ISO UTC) and fetched_utc (Unix seconds).
Results include title, URL, position, snippets and source metadata. Web search
also returns FAQ, discussions, related searches and inline media when Brave
supplies them. Rich modules vary by query; an empty module array means Brave did
not supply that module. Original image URLs, dimensions, video metadata and
publisher profiles remain in their source-specific result fields.
Relative article ages remain display strings. Absolute publication timestamps
appear only when the source supplies a defensible date; observation time is
separate from publication time. Brave AI Mode and generated answers are outside this API.
CLI and MCP
brave_search, brave_images, brave_videos, brave_news, brave_autocomplete, brave_locales.
ScrapeBadger is independent and is not affiliated with or endorsed by Brave.
