NewsAPI Search
Search 5,000+ news sources via NewsAPI. Supports comprehensive article discovery (/everything) and breaking headlines (/top-headlines).
Quick Start
# Basic search
node scripts/search.js "technology" --days 7
# Filter by quality sources
node scripts/search.js "technology" --sources bbc-news,reuters,al-jazeera-english
# Exclude low-quality domains
node scripts/search.js "technology" --exclude tmz.com,radaronline.com
# Breaking headlines
node scripts/search.js "technology" --headlines --country us
# List available sources
node scripts/sources.js --country us --category general
Setup
Add API key to ~/.openclaw/.env:
NEWSAPI_KEY=your_api_key
Get key from https://newsapi.org (free tier: 100 requests/day)
Endpoints
Everything Search
Comprehensive search across millions of articles.
Time Windows:
node scripts/search.js "query" --hours 24
node scripts/search.js "query" --days 7 # default
node scripts/search.js "query" --weeks 2
node scripts/search.js "query" --months 1
node scripts/search.js "query" --from 2026-01-01 --to 2026-01-31
Filters:
node scripts/search.js "query" --sources bbc-news,cnn # max 20
node scripts/search.js "query" --domains nytimes.com,bbc.co.uk
node scripts/search.js "query" --exclude gossip-site.com
node scripts/search.js "query" --lang en # or 'any'
Search Fields:
node scripts/search.js "query" --title-only # title only
node scripts/search.js "query" --in title,description # specific fields
Advanced Query Syntax:
"exact phrase"โ exact match+musthaveโ required word-excludeโ excluded wordword1 AND word2โ both requiredword1 OR word2โ either accepted(word1 OR word2) AND word3โ grouping
Pagination & Sorting:
node scripts/search.js "query" --page 2 --limit 20
node scripts/search.js "query" --sort relevancy # default
node scripts/search.js "query" --sort date # newest first
node scripts/search.js "query" --sort popularity
Top Headlines
Live breaking news by country or category.
# By country
node scripts/search.js "query" --headlines --country us
# By category
node scripts/search.js --headlines --country us --category business
# By source
node scripts/search.js --headlines --sources bbc-news,cnn
Categories: business, entertainment, general, health, science, sports, technology
Note: Cannot mix --country/--category with --sources in headlines mode.
List Sources
node scripts/sources.js # all sources
node scripts/sources.js --country us # filter by country
node scripts/sources.js --category business
node scripts/sources.js --lang en
node scripts/sources.js --json # JSON output
Advanced Usage
For complete parameter reference, see references/api-reference.md.
For common workflows and search patterns, see references/examples.md.
Programmatic API
const { searchEverything, searchHeadlines, getSources } = require('./scripts/search.js');
const results = await searchEverything('climate change', {
timeWindow: { type: 'days', value: 7 },
sources: 'bbc-news,reuters',
excludeDomains: 'tmz.com',
limit: 20
});
const headlines = await searchHeadlines('business', {
country: 'us',
category: 'business'
});
Free Tier Limits
- 100 requests/day
- 100 results per request (max)
- 1-month delay on archived content
Output Format
Returns structured JSON:
{
"query": "technology",
"endpoint": "everything",
"totalResults": 64,
"returnedResults": 10,
"page": 1,
"results": [
{
"title": "...",
"url": "...",
"source": "BBC News",
"publishedAt": "2026-02-05T14:30:00Z",
"description": "...",
"content": "..."
}
]
}