News Search API -- Common Questions Answered
Building applications that need real-time news data raises a lot of questions. Which API gives the best coverage? How much does it cost? Can you filter by topic, language, or region? What about rate limits and reliability?
This FAQ covers the most common questions developers ask when evaluating and integrating a news search API for their applications.
Key Takeaways
- News APIs range from $1/1K to $25/1K requests depending on the provider and features
- Free tiers exist (Bing, Brave, SearchHive) but are limited to 250-1,000 requests/month
- API-first approaches (direct HTTP) are more flexible than SDKs for custom news pipelines
- SearchHive DeepDive combines news search + article scraping for complete coverage
- Always test with real queries before committing to a provider -- coverage varies significantly
What is a news search API?
A news search API lets you programmatically search for news articles by keyword, topic, date range, language, source, and region. It returns structured data (title, URL, snippet, publish date, source) that you can use in applications like news aggregators, sentiment analysis dashboards, alerting systems, and AI research tools.
Most news APIs work by either crawling their own index (like Google News or Bing News) or aggregating from publisher feeds and APIs directly.
What's the difference between a web search API and a news search API?
A web search API returns results from the entire web -- blogs, documentation, product pages, social media, and news mixed together. A news search API specifically indexes news publisher sites and returns only articles with publication dates, author bylines, and editorial content.
For example, searching "Tesla earnings" on a web search API might return Tesla's investor relations page, Reddit discussions, and a YouTube video. A news search API would return Reuters, Bloomberg, CNBC, and WSJ articles about the earnings report.
Some APIs (like SerpAPI and Brave) support both web and news as separate endpoints.
Which news search APIs are available?
Here are the main options in 2026:
| Provider | Free Tier | Base Price | News Coverage | Notes |
|---|---|---|---|---|
| SearchHive DeepDive | 500 credits | $9/5K | Global + scraping | Search + scrape articles in one call |
| SerpAPI Google News | 250/mo | $25/1K/mo | Google News index | Structured Google News results |
| Brave Search API | $5 free/mo | $5/1K | News endpoint | Independent index, 30B+ pages |
| Bing News API | Trial only | $1-6/1K | Bing News via Azure | Enterprise SLAs |
| NewsAPI.org | 100/day dev | $449/mo | 80K+ sources | Industry standard, strict terms |
| GNews API | 100/day | Free-$99/mo | Aggregated | Simple, affordable |
| Currents API | 200/day | Free-$100/mo | Aggregated | Free tier is generous |
| Tavily | 1K/mo | $0.008/credit | Web (includes news) | AI-optimized, not news-specific |
How much does a news search API cost?
Pricing varies widely:
- Free options: DuckDuckGo (no API key needed, rate-limited), Currents API (200/day free), GNews (100/day free)
- Budget: Bing News via Azure ($1/1K on S1 tier), Brave Search ($5/1K with $5 free credits/month)
- Mid-range: SearchHive ($9/5K, $49/100K), SerpAPI ($25/1K)
- Enterprise: NewsAPI.org ($449/month for production), SerpAPI scaling to $3,750/month
For a news aggregation app processing 10,000 queries/month, costs range from ~$10 (Bing) to $250+ (SerpAPI) to $449+ (NewsAPI.org).
Can I get full article content, not just snippets?
Most news search APIs return only metadata (title, snippet, URL, date). Getting the full article text requires a separate scraping step.
SearchHive DeepDive is an exception -- it searches for news, then scrapes the full content of the top results in a single API call:
import requests
def get_full_news_articles(query):
"""Search for news and scrape full article content."""
resp = requests.post(
"https://api.searchhive.dev/api/v1/research",
json={"query": f"{query} news"},
timeout=60,
)
data = resp.json()
articles = []
for item in data.get("results", []):
articles.append({
"title": item.get("title", ""),
"url": item.get("url", ""),
"content": item.get("text", ""),
"content_length": len(item.get("text", "")),
})
# Sort by content length (longer = more complete article)
articles.sort(key=lambda x: x["content_length"], reverse=True)
return articles
articles = get_full_news_articles("artificial intelligence regulation")
for a in articles[:5]:
print(f"{a['title']}")
print(f" {a['url']}")
print(f" {a['content_length']:,} chars extracted")
For other APIs, you'd need to scrape each URL separately:
import requests
def scrape_news_article(url):
"""Scrape full text from a news article URL."""
resp = requests.post(
"https://api.searchhive.dev/api/v1/scrape",
json={"url": url},
timeout=60,
)
data = resp.json()
return {
"title": data.get("title"),
"text": data.get("text"),
}
How do I filter news by date?
Most news APIs support date filtering through URL parameters:
import requests
from datetime import datetime, timedelta
def search_recent_news(query, days_back=7):
"""Search for news from the last N days."""
since = (datetime.now() - timedelta(days=days_back)).strftime("%Y-%m-%d")
resp = requests.post(
"https://api.searchhive.dev/api/v1/search",
json={
"query": f"{query} news",
"num_results": 20,
},
timeout=15,
)
data = resp.json()
# Filter by date (post-processing)
results = []
for r in data.get("results", []):
results.append({
"title": r.get("title", ""),
"url": r.get("url", ""),
"snippet": r.get("snippet", ""),
})
return results
SerpAPI and Brave also support date range parameters directly in their API calls (tbs=qdr:d for past day, qdr:w for past week on SerpAPI; freshness parameter on Brave).
What about language and region filtering?
Most providers support language and region parameters:
- SerpAPI:
gl(geolocation) andhl(interface language) parameters - Brave:
countryandsearch_langparameters - Bing:
cc(country code) andsetLangparameters - SearchHive: Pass language preferences in the query or use post-processing on results
# Example with Brave (requires custom wrapper)
import requests
def brave_news_search(query, country="us", language="en"):
"""Search news with Brave API, filtered by country and language."""
resp = requests.get(
"https://api.search.brave.com/res/v1/web/search",
headers={"X-Subscription-Token": "YOUR_KEY"},
params={
"q": query,
"count": 20,
"country": country,
"search_lang": language,
"freshness": "pd", # Past day
},
)
return resp.json()
How reliable are news search APIs?
Reliability varies significantly:
- Google News (via SerpAPI): Best coverage but expensive and legally uncertain (Google has sent C&Ds to similar services)
- Bing News: Solid coverage, enterprise-grade reliability through Azure, but higher setup friction
- Brave: Independent index, good quality, but smaller than Google/Bing
- SearchHive: Reliable for general web search; news coverage depends on underlying search engine results
- NewsAPI.org: 80K+ sources but strict terms of service (no commercial display use without enterprise plan)
The main failure modes are:
- Rate limiting (temporary 429 errors)
- Source sites blocking the scraper (for APIs that fetch full content)
- Outdated indices (some providers refresh less frequently)
Can I use a news search API for commercial applications?
It depends on the provider's terms:
- SerpAPI: Allows commercial use on paid plans
- Brave: Allows commercial use with attribution
- Bing: Commercial use through Azure with standard terms
- NewsAPI.org: Restrictive -- free and developer tiers prohibit commercial display. Enterprise plan ($449+/mo) required for commercial use
- SearchHive: Allows commercial use on all plans
- Tavily: Allows commercial use on paid plans
Always read the terms of service before building a commercial product on top of any API.
How do I handle paywalled news sources?
Many major news outlets (NYT, WSJ, Bloomberg, FT) have paywalls. Most news search APIs return the headline and snippet even for paywalled articles, but scraping the full content will hit the paywall.
Options:
- Use only the metadata (title, snippet, date) -- legal and reliable
- Scrape with ScrapeForge -- works on some paywalls but not all (DataDome-protected sites like Forbes return challenge pages)
- Subscribe to publisher APIs -- expensive but reliable (Reuters API, NYT API, etc.)
- Use RSS feeds -- many publishers provide free RSS feeds with full or partial content
What's the best approach for building a news aggregation app?
For most developers, the best stack is:
- SearchHive DeepDive for discovery + content extraction (one API call, search + scrape)
- Post-processing for deduplication, language detection, and relevance scoring
- Simple caching to avoid re-fetching the same articles
import requests
from datetime import datetime
def build_news_pipeline(topic, max_articles=20):
"""End-to-end news aggregation pipeline."""
# Step 1: Search + scrape
resp = requests.post(
"https://api.searchhive.dev/api/v1/research",
json={"query": f"{topic} latest news", "num_results": max_articles},
timeout=60,
)
data = resp.json()
# Step 2: Process results
articles = []
seen_urls = set()
for item in data.get("results", []):
url = item.get("url", "")
if url in seen_urls:
continue
seen_urls.add(url)
text = item.get("text", "")
if len(text) < 200:
continue
articles.append({
"title": item.get("title", ""),
"url": url,
"content": text[:3000],
"scraped_at": datetime.now().isoformat(),
})
print(f"Pipeline: {len(data.get('results', []))} raw -> {len(articles)} quality articles")
return articles
articles = build_news_pipeline("electric vehicles")
for a in articles[:5]:
print(f"- {a['title']}")
Summary
Choosing a news search API comes down to three factors: coverage (how many sources), cost (per-request pricing), and features (full content, date filtering, language support). For most developers, SearchHive DeepDive offers the best balance -- search + full content extraction in one call, with pricing that scales from free to $199/500K requests.
Start building your news pipeline today with SearchHive's free tier -- 500 credits, no credit card required. Check the docs for integration guides.
/compare/serpapi /compare/tavily /blog/complete-guide-to-data-extraction-for-ai /blog/top-10-langchain-web-search-tools