string
sort=date to rank by recency and dateRestrict to bound results to a specific time window. When Google indexes a news article, it often embeds schema.org NewsArticle structured data in the page — surfaced in the pagemap.newsarticle field — giving you the headline, author, publisher, and publication date without scraping. You can also fall back to pagemap.metatags for Open Graph or Twitter Card metadata if newsarticle is absent.
Endpoint
How News Search Works
Configure your Programmable Search Engine to include news sources, then scope requests with date-based parameters. The API returns results ordered by freshness when you passsort=date, making it straightforward to power a “latest news” feed.
For best results, configure your Programmable Search Engine to search across established news domains such as
reuters.com, apnews.com, bbc.com, or a curated list of your preferred sources. A general-purpose engine without site restrictions may surface blogs and forums alongside news articles.Request Parameters
Required Parameters
string
required
Your Google API key.
string
required
Your Programmable Search Engine ID, configured to include news sources.
string
required
The news search query. Use natural-language topic descriptions, person names, or event names. Supports all standard query operators such as
"exact phrase", -exclude, and OR.Date and Recency Parameters
string
Sort order for results. Pass
date to rank results by publication/index date, newest first. Without this parameter, results are ranked by relevance.You can also use the extended form to filter by a date range:date:r:YYYYMMDD:YYYYMMDD— restricts to articles published between two dates, e.g.sort=date:r:20240101:20240131.
string
Restricts results to pages indexed within a rolling time window relative to now. Format:
[d|w|m|y][number].Content Filtering Parameters
integer
default:"10"
Number of results per page. Accepted values are
1 through 10.integer
default:"1"
Index of the first result. Use to paginate up to 100 results total (maximum
start value is 91).string
Restrict news results to a specific publication’s domain, e.g.
siteSearch=reuters.com. Combine with siteSearchFilter=i to include only that domain.string
Controls the behavior of
siteSearch. Pass i to include only results from the specified site, or e to exclude them.string
Requires all results to contain this exact phrase. Useful for tracking specific named entities or verbatim quotes in news coverage.
string
Excludes results that contain this word or phrase. Useful for narrowing a broad topic — for example, searching
"jaguar" with excludeTerms=car to filter out automotive news.string
Broadens the query with alternative terms. Results must match the main query OR at least one of these terms.
Language and Region Parameters
string
Restricts results to news articles written in a specific language. Example:
lang_en for English, lang_es for Spanish.string
Biases results toward news relevant to a specific country. Accepts a two-letter ISO 3166-1 alpha-2 code such as
us, gb, or au.string
Hard-filters results to news originating from a specific country. Uses Google country codes such as
countryUS or countryGB.string
default:"off"
SafeSearch filter. Pass
active to suppress explicit content.Example Requests
- Breaking news (last 24h)
- Date range search
- Single publication
cURL
Example Response
Response Fields
News results share the standard response structure. Article metadata is embedded initems[].pagemap.newsarticle and items[].pagemap.metatags.
string
The plain-text headline of the article as indexed by Google.
string
The canonical URL of the news article.
string
The publication’s hostname, e.g.
"www.reuters.com".string
A short excerpt from the article body or meta description.
array
An array of schema.org
NewsArticle objects extracted from the page’s structured data. Usually contains a single entry. Present only when the publisher includes NewsArticle JSON-LD or microdata markup.array
Open Graph, Twitter Card, and other HTML
<meta> tags from the article page. A reliable fallback when newsarticle is absent.Extracting Article Metadata: Decision Tree
Use the following priority order when extracting article metadata from a result item:Monitoring a topic in real time
Monitoring a topic in real time
Schedule a request every 15–30 minutes with
sort=date&dateRestrict=d1 and track items[].link values you have already seen. Persist new links to a database and trigger notifications for genuinely new articles. Stay within your quota by batching with num=10 and caching results.Building a breaking news alert
Building a breaking news alert
Use
exactTerms to track a specific named entity or event title, combined with dateRestrict=d1 and sort=date. For example, tracking "Federal Reserve rate decision" with dateRestrict=d1 will surface same-day coverage as soon as Google indexes it.