News Search API: Multi-Source Headlines avatar

News Search API: Multi-Source Headlines

Under maintenance

Pricing

from $1.00 / 1,000 results

Go to Apify Store
News Search API: Multi-Source Headlines

News Search API: Multi-Source Headlines

Under maintenance

Search news by keyword and get headlines, publisher, article link and date from the free GDELT DOC 2.0 API, plus NewsAPI with your own optional key. Merged and deduplicated. Language, country and time filters. No full article text.

Pricing

from $1.00 / 1,000 results

Rating

0.0

(0)

Developer

Mitchell

Mitchell

Maintained by Community

Actor stats

0

Bookmarked

2

Total users

1

Monthly active users

6 days ago

Last modified

Categories

Security

Limited permissions

Share

Search the news by keyword and get a clean, deduplicated list of headlines with the publisher's article link, outlet and date. The default source is the free, open GDELT DOC 2.0 API (no key needed). You can add NewsAPI with your own API key. Export as JSON, CSV or Excel, or call it as an API.

This Actor returns search results only: headline, link, outlet, date and, from NewsAPI, a short description. It does not copy article text or images. Open the link to read the story on the publisher's site.

What you can do with it

  • Monitor a brand, competitor or topic. Schedule a run every hour or day and send new headlines to Slack, email or a spreadsheet.
  • Feed AI agents and alert bots with fresh, linked headlines on any subject.
  • Track coverage with publisher URLs you can open or archive.
  • Research markets across many languages and publisher countries.

Sources

SourceKeyWhat it givesNotes
gdelt (default)noneheadline, link, outlet domain, first-seen timeGDELT DOC 2.0 covers about the last 3 months. Allows one request every 5 seconds, so each query takes at least 5.5 seconds.
newsapi (optional)your own newsapi.org keyheadline, link, outlet name, publish time, short descriptionYour NewsAPI plan's terms and limits apply. The free Developer plan is for development and testing only.

Leave sources empty to use GDELT, plus NewsAPI when you enter a key. An article found by both is merged into one item, and alsoOn names the other source.

Input

{
"queries": ["\"electric vehicles\" battery", "(Tesla OR Rivian) -stock"],
"timeRange": "day",
"language": "en",
"country": "",
"maxResultsPerQuery": 100
}
  • queries: one search per line. "exact phrase", -exclude and (a OR b) with brackets work. site:example.com is sent to GDELT as domain:example.com. GDELT rejects very short single words (under 3 letters).
  • timeRange: hour, day, week (default), month, year or any. For GDELT, year and any mean the last 3 months.
  • language: two-letter code of the article language (default en).
  • country: optional two-letter code of the publisher's country, for example US, GB, NZ. Leave empty for all countries. GDELT only; NewsAPI search has no country filter.
  • sources: gdelt, newsapi or both.
  • newsApiKey: optional, your own NewsAPI key. It is a secret input: it is sent only in the X-Api-Key request header to newsapi.org, and is never logged or written to the output.
  • maxResultsPerQuery: up to 200 (default 100).

Input validation

The run stops before any search if the input is invalid, and the error names the field:

  • queries is required: 1 to 50 strings, each up to 500 characters.
  • timeRange must be one of any, hour, day, week, month, year. The default is week.
  • language must be a two-letter code. country must be a two-letter code or empty.
  • sources must be drawn from gdelt and newsapi. newsapi without a newsApiKey fails the run.
  • maxResultsPerQuery must be a whole number from 1 to 200.

Upgrading from version 1

Version 2 changed the sources. The old engines input was removed: a run that still sends engines fails with a message asking you to delete it and use sources. The old resolveUrls input is ignored with a warning, because both sources return the publisher's own link. country no longer defaults to US; it is empty (all countries) unless you set it.

Redaction in snippets

NewsAPI descriptions are free text, and press-release coverage often ends with a media contact. Each snippet is passed through the shared redaction module (src/redact.js) and cut to 300 characters. Emails and phone numbers become [redacted], and so does a personal name after a label or sign-off (Media contact: Jane Roe becomes Media contact: [redacted]). Headlines, outlets, prices and dates are not changed. Names in the running text of a story are not removed; they are part of the news. Article authors are not output.

Output

{
"query": "electric vehicles",
"title": "Example Motors opens battery plant",
"publisher": "news.example.com",
"url": "https://news.example.com/2026/10/20/example-motors-battery-plant",
"publishedAt": "2026-10-20T09:15:00.000Z",
"snippet": null,
"source": "gdelt",
"alsoOn": []
}

Illustrative values. publisher is the site domain for GDELT and the outlet name for NewsAPI. publishedAt is the time GDELT first saw the article, or NewsAPI's publish time. snippet is filled only from NewsAPI.

A SUMMARY record in the key-value store shows, for each query, how many articles each source found and how many were returned.

Pricing

You pay per article returned. Duplicates merged across sources and queries are free. NewsAPI usage counts against your own NewsAPI plan.

Limits worth knowing

  • GDELT searches about the last 3 months and returns up to 250 articles per query; this Actor returns up to 200.
  • GDELT allows one request every 5 seconds. Queries run one after another, at least 5.5 seconds apart, and a rate-limit reply (HTTP 429) or dropped connection is retried. GDELT counts requests per IP address, and Apify's outgoing IPs are shared, so on Apify the retries go out through Apify Proxy (a fresh datacenter IP each time) when your account has proxy access; otherwise they wait and retry directly. A run with 50 queries takes about 5 minutes or more.
  • Headlines come from the publishers. GDELT's headline text is lightly tidied (spacing around punctuation); words are not changed.
  • No full article text and no images. Pass the URLs to an article extractor if you need the body, subject to the publisher's terms.

Credits and terms

  • Data from the GDELT Project, which makes its datasets available for unlimited and unrestricted use, including commercial use, without fee. Please credit GDELT when you publish results.
  • NewsAPI results are fetched with your own key under your agreement with NewsAPI.
  • Headlines and linked articles belong to their publishers.
  • Not affiliated with, or endorsed by, the GDELT Project, NewsAPI or any publisher.

Questions and requests

Open an issue on the Issues tab and it will be looked at quickly.