# Google News Scraper API

> Google News Scraper API is a paid API for AI agents from api.scrapeforagents.tech, paid per call via x402, $0.025/call, status unknown (last checked 2026-10-02).

Fetches structured Google News articles for a given keyword, timeframe, region, and language, returning titles, URLs, sources, and publication times.

## Facts

- Endpoint: POST https://api.scrapeforagents.tech/v1/google-news?utm_source=zero.xyz
- Price: $0.025/call
- Payment: x402
- Status: unknown
- Last checked: 2026-10-02
- Activations on Zero: 0
- Tags: x402
- Canonical page: https://www.zero.xyz/c/google-news-scraper-api-d5c3479b
- Structured record (JSON): https://api.zero.xyz/v1/capabilities/cap_WxubrNAW5yz1WRcJkaJqT

Status and success rate cover calls made through Zero and Zero's own probes. Third-party monitors may report differently.

## How to call it through Zero

Zero handles the 402 payment challenge and records the run. With the Zero CLI installed (`npm i -g @zeroxyz/cli`):

```sh
zero fetch --capability google-news-scraper-api-d5c3479b -d '<json body>'
```

Example prompt: Search Google News for articles about 'OpenAI GPT-5' published in the last week, return up to 50 results in English for the US edition.

## When to prefer this

Choose this endpoint when you need structured, pay-per-successful-call Google News data with keyword filtering, timeframe control, and regional/language targeting. Prefer it over generic web scrapers when you specifically want news article metadata (title, source, publish date) indexed by Google News, especially if you only want to pay for non-empty results.

## Known failure modes

- No articles found for keyword returns empty items array (not charged)
- Invalid region_language format may return error or empty results
- Rate limiting or scraping blocks from Google News may cause empty response
- Unsupported timeframe enum value returns validation error
- maxArticles of 0 attempts to collect all results, which may hit undocumented limits

## How this service works

Pay-per-call structured web data. Failed or empty runs are not charged.

## Output

A JSON object containing a count of results and an array of article items, each with title, URL, source name, source URL, article ID, keyword, timeframe, and published timestamp. Failed or empty runs are not billed.

## Request schema (JSON Schema)

```json
{
 "type": "object",
 "properties": {
  "keyword": {
   "type": "string",
   "description": "Words or a phrase to search in news headlines and indexed articles."
  },
  "timeframe": {
   "enum": [
    "1h",
    "1d",
    "1w",
    "1m",
    "1y"
   ],
   "type": "string",
   "default": "1d",
   "description": "Only return articles published within the selected rolling period."
  },
  "maxArticles": {
   "type": "integer",
   "default": 100,
   "minimum": 0,
   "description": "Maximum articles to save. Set 0 to collect all accessible results within the date-window limit."
  },
  "region_language": {
   "type": "string",
   "default": "US:en",
   "description": "News edition as a country and language pair, such as US:en, GB:en, DE:de, or TR:tr."
  }
 }
}
```

## Response schema (JSON Schema)

```json
{
 "type": "json",
 "example": {
  "count": 1,
  "items": [
   {
    "url": null,
    "title": null,
    "keyword": null,
    "articleId": null,
    "sourceUrl": null,
    "timeframe": null,
    "sourceName": null,
    "publishedAt": null
   }
  ],
  "product": "google-news"
 }
}
```

## More

- Live health (JSON, refreshed every minute): https://www.zero.xyz/c/google-news-scraper-api-d5c3479b/health.json
- [Zero catalog index](https://www.zero.xyz/llms.txt)
- [Other services from api.scrapeforagents.tech](https://www.zero.xyz/host/api.scrapeforagents.tech/llms.txt)
