Google Alerts API: get Google News alerts as JSON, in Slack or by webhook
Google Alerts has no API: alerts arrive by email or as an RSS feed. For alerts you can use in code, run Google News Scraper on Apify on a schedule with Only new results turned on. Each run searches Google News for your queries, in any country and language, and returns just the articles earlier runs didn't, as JSON rows with the headline, source, publish time and the publisher's URL. Apify's integrations then post them to Slack, email, Google Sheets or a webhook. It costs $1 per 1,000 articles, and only new articles count, so a brand with 5 new articles a day costs about $0.15 a month.
Open Google News Scraper on Apify $1 per 1,000 articles ($0.80 on Gold and above)
Step by step
- Create a free Apify account. Sign up at apify.com. The free plan's $5 monthly credit covers about 5,000 articles.
- Add your searches. Open Google News Scraper and add one query per line: your brand in quotes, competitors, topics. Set the country and language.
- Turn on Only new results. Under Monitoring, switch on Only new results. Set Time to Past 24 hours and sort by date, so each run looks at the latest news.
- Save it as a task and schedule it. Click Save as a new task, then Schedule it hourly, daily or weekly. The first run returns everything and starts the history; later runs return only new articles.
- Deliver the alerts. On the task's Integrations tab, add Slack, email or Google Sheets, or a webhook to your own app. n8n, Make and Zapier can pick up each run's results too.
Do it from code
One run, only new articles (cURL)
curl -X POST "https://api.apify.com/v2/acts/automationnation~google-news-scraper/run-sync-get-dataset-items?token=$APIFY_TOKEN" \
-H "Content-Type: application/json" \
-d '{"queries": ["\"Acme Corp\""], "time": "day", "sortBy": "date", "onlyNew": true}'
# Each row: title, snippet, source, publishedAt, url (the publisher's), domain, change: "new"A daily alert, set up through the API (cURL)
# 1. Save the search as a task
curl -X POST "https://api.apify.com/v2/actor-tasks?token=$APIFY_TOKEN" \
-H "Content-Type: application/json" \
-d '{"actId": "7VvYaDGp3T209IGUV", "name": "acme-news-alerts", "input": {"queries": ["\"Acme Corp\""], "time": "day", "sortBy": "date", "onlyNew": true}}'
# 2. Run it every morning at 8:00 (TASK_ID is the id returned by step 1)
curl -X POST "https://api.apify.com/v2/schedules?token=$APIFY_TOKEN" \
-H "Content-Type: application/json" \
-d '{"name": "acme-news-daily", "cronExpression": "0 8 * * *", "timezone": "Europe/London", "isEnabled": true, "isExclusive": true, "actions": [{"type": "RUN_ACTOR_TASK", "actorTaskId": "TASK_ID"}]}'
From an AI assistant (MCP)
Add this MCP server URL to Claude, ChatGPT or Cursor and ask in plain English:
https://mcp.apify.com?tools=automationnation/google-news-scraper
Alternatives
Google Alerts itself is free: set Deliver to RSS feed and poll the feed from your code. You get titles and links, picked and timed by Google, with fewer filters. Commercial news APIs such as NewsAPI.org and GNews search their own news indexes rather than Google News. Google retired its own News Search API in 2011. See the side-by-side comparison.
FAQ
Does Google Alerts have an API?
No. Alerts arrive by email or RSS, and Google has never offered an API for them.
How does Only new results know what's new?
It remembers the article URLs each search returned, for 90 days, in your own Apify account. Tracking parameters are ignored, so the same article isn't reported twice.
How quickly do alerts arrive?
As fast as your schedule: an hourly run catches a story within the hour of Google News listing it.
Can I watch several brands or clients?
Yes: add a query per brand, or keep separate histories with Monitor name, for example one per client.
What does a run with nothing new cost?
Almost nothing: you pay per new article saved, plus a start fee of $0.00005 per run.
Written by AutomationNation, the developer of Google News Scraper. Prices checked October 2026.