Monitor brand mentions with a Google News API
A Google News API turns brand and media monitoring into a query: ask for the last hour of coverage of a name and get back the headline, publisher, ISO 8601 date and URL of each article. PR teams, investor relations, trust and safety and competitive intelligence all need that feed, usually for several countries at once. The Search API returns it as structured JSON, so your code decides what counts as a mention.
Brand mentions scattered across Google News, one country at a time
Coverage of a brand does not arrive in one place. A launch is picked up by trade press in the United States, a regulator ’s statement lands in German outlets, and a complaint spreads through Japanese media, each ranked in its own regional edition of Google News. Checking by hand misses the stories that matter during the hours they matter.
Scraping news results yourself means parsing markup that changes without notice, turning relative dates such as “3 hours ago” into timestamps, and routing traffic through proxies so the requests keep working. Alert emails and RSS readers skip outlets without feeds and give you no control over the region or the time window.
type: news returns each article with title, url, description, publisher and an ISO 8601 date, plus a thumbnail when Google shows one. period narrows the window to the last hour, day or week, and location picks the regional edition with a two-letter country code. Run one query per market in parallel and merge the results into your own feed.
How to monitor brand mentions with the Google News API
Monitoring is a loop you own: query each market, keep what is new, alert on it. Microlink returns the articles; the schedule, the storage and the alert channel stay in your stack. The news guide documents every field.
import createClient from 'microlink.io'
const microlink = createClient({
apiKey: process.env.MICROLINK_API_KEY
})
const page = await microlink.search('Acme Corp', {
type: 'news',
period: 'hour'
})
const mentions = page.results.map(({ title, url, publisher, date }) => ({
title,
url,
publisher,
date
}))period: hour limits results to articles from the last hour, the tightest window available. Every result carries title, url, description, publisher and date, and image when Google shows a thumbnail.
import createClient from 'microlink.io'
const microlink = createClient({
apiKey: process.env.MICROLINK_API_KEY
})
const markets = ['us', 'gb', 'de', 'jp']
const feeds = await Promise.all(
markets.map(async location => {
const { results } = await microlink.search('Acme Corp', {
type: 'news',
location,
period: 'day'
})
return results.map(article => Object.assign(article, { location }))
})
)One request per market, run concurrently. Tagging each article with its location keeps the regional edition it came from, which is what a PR team filters by.
const seen = new Set(await store.getSeenUrls())
const fresh = feeds
.flat()
.filter(({ url }) => !seen.has(url))
.sort((a, b) => Date.parse(b.date) - Date.parse(a.date))
await store.addSeenUrls(fresh.map(({ url }) => url))
await notify(fresh)Deduplicate on url, since one story can surface in several regions and in consecutive runs. The ISO 8601 date sorts with Date.parse, no relative-date parsing. store and notify stand for your database and your alert channel.
- type 'news' returns title, url, description, date, publisher and an optional image.
- period hour, day, week, month or year. Restricts results by recency.
- location Two-letter country code that geo-targets the results, such as de or jp.
- page Fetches a later results page, like next(), when a busy hour has more coverage than one page.
Microlink does not schedule queries or send alerts. Run the loop from the scheduler you already have, as often as your freshness target requires; every run costs one request per market. The integration patterns include the multi-region monitoring recipe this page builds on.
Why a news search API beats alert emails for media monitoring
Alerts decide for you what a mention is and when you hear about it. An API that returns the raw feed moves those decisions into code you control.
Need the article, not the snippet? Call result.markdown() on the results worth reading to fetch the full article through Microlink as Markdown.
Tracking products instead of press? The Google Shopping price comparison recipe uses the same location option on shopping listings.
When not to: news returns what Google News ranks for the query and window, with a year as the widest period. It is not a historical press archive, a sentiment service or a social listening tool. For evergreen mentions on any site, query the default web search surface instead.
FAQ
How do I monitor brand mentions with a Google News API?
Can the media monitoring API send alerts or run on a schedule?
What is the shortest time window for Google News monitoring?
How much does news monitoring with the Search API cost?
Is this an official Google News API?
Solve the next problem with the same API
Live search to ground LLM answers
Google rank tracking by country
Google results page as Markdown or HTML
Prior art search in Google Patents
Clean Markdown, no boilerplate
LLM context from any URL
Ready to monitor every mention?
Brand coverage from Google News as JSON, one query per market. Get a Pro key and ship your first monitoring loop today.