news-search

USE FOR news search. Returns news articles with title, URL, description, age, thumbnail, profile. Supports freshness and date range filtering, SafeSearch filter and Goggles for custom ranking.

By brave · 1,418 installs

npx skills add brave/brave-search-skills --skill news-search

Source repository · Upstream listing

News Search Requires API Key : Get one at https://api.search.brave.com Plan : Included in the Search plan. See https://api dashboard.search.brave.com/app/subscriptions/subscribe Quick Start (cURL) Basic Search Recent News (Past 24 Hours) Date Range Filter Endpoint Authentication : X Subscription Token: <API KEY header Note : Both GET and POST are supported. POST is useful for long queries or complex Goggles. Parameters Parameter Type Required Default Description q string Yes Search query (1 400 chars, max 50 words) country string No US Search country (2 letter country code or ALL ) search lang string No en Language preference (2+ char language code) ui lang string No en US UI language (e.g., "en US") count int No 20 Number of results (1 50) offset int No 0 Page offset (0 9) safesearch string No strict Adult content filter ( off / moderate / strict ) freshness string No Time filter ( pd / pw / pm / py or date range) spellcheck bool No true Auto correct query extra snippets bool No Up to 5 additional excerpts per result goggles string or array No Custom ranking filter (URL or inline; repeat param for multiple) operators bool No true Apply search operators include fetch metadata bool No false Include fetch timestamps in results Freshness Values Value Description pd Past day (24 hours) ideal for breaking news pw Past week (7 days) pm Past month (31 days) py Past year (365 days) YYYY MM DDtoYYYY MM DD Custom date range Response Format Response Fields Field Type Description type string Always "news" query.original string The original search query query.altered string? Spellcheck corrected query (if changed) query.cleaned string? Cleaned/normalized query from spellchecker query.spellcheck off bool? Whether spellcheck was disabled query.show strict warning bool? True if strict safesearch blocked results query.search operators object? Applied search operators query.search operators.applied bool Whether operators were applied query.search operators.cleaned query string? Query after operator processing query.search operators.sites list[str]? Domains from site: operators results[].type string Always "news result" results[].title string Article title results[].url string Source URL of the article results[].description string? Article description/summary results[].age string? Human readable age (e.g. "2 hours ago") results[].page age string? Publication date from source (ISO datetime) results[].page fetched string? When page was last fetched (ISO datetime) results[].fetched content timestamp int? Fetch timestamp (only with include fetch metadata=true ) results[].meta url.scheme string? URL protocol scheme results[].meta url.netloc string? Network location results[].meta url.hostname string? Lowercased domain name results[].meta url.favicon string? Favicon URL results[].meta url.path string? URL path results[].thumbnail.src string Served thumbnail URL results[].thumbnail.original string? Original thumbnail URL results[].extra snippets list[str]? Up to 5 additional excerpts per result results[].profile.name string? Name of the site results[].profile.url string? The original URL where the profile is available results[].profile.long name string? The long name of the site results[].profile.img string? The served image URL representing the profile Goggles (Custom Ranking) — Unique to Brave Goggles let you re rank news results — boost trusted outlets or suppress unwanted sources. Method Example Hosted data urlencode "goggles=https://raw.githubusercontent.com/brave/goggles quickstart/main/goggles/hacker news.goggle" Inline data urlencode 'goggles=$discard\n$site=example.com' Hosted goggles must be on GitHub/GitLab, include ! name: , ! description: , ! author: headers, and be registered at https://search.brave.com/goggles/create. Inline rules need no registration. Syntax : Rules start with $ + comma separated options. Actions (pick one): discard , boost[=N] , downrank[=N] — N is an integer 1–10. Site filter : site=DOMAIN . Example: $site=example.com,boost=3 . Separate rules with \n ( %0A ). Allow list : $discard\n$site=docs.python.org\n$site=developer.mozilla.org — Block list : $discard,site=pinterest.com\n$discard,site=quora.com Resources : [Discover](https://search.brave.com/goggles/discover) · [Syntax](https://search.brave.com/help/goggles) · [Quickstart](https://github.com/brave/goggles quickstart) Search Operators Use search operators to refine results: site:local paper.com Limit to specific news site "exact phrase" Match exact phrase exclude Exclude term Set operators=false to disable operator parsing. Use Cases Breaking news monitoring : Use freshness=pd for the most recent articles on a topic. Custom news feeds with Goggles : Boost trusted sources and discard other sources — unique to Brave. Historical news research : Use freshness=YYYY MM DDtoYYYY MM DD to find articles from specific time periods. Multilingual news : Combine country , search lang , and ui lang for cross locale results. Data pipelines : Set include fetch metadata=true for fetched content timestamp on each result. Notes SafeSearch : Defaults to strict Pagination : Use offset (0 9) with count Extra snippets : Up to 5 additional excerpts when extra snippets=true