News API by country: filtered news data for 76 countries
Most news APIs treat "country" as the publisher's headquarters. For monitoring, research, and risk work you usually want something sharper: every article that pertains to a place, tagged consistently, filterable in one query. Here's how country-level filtering works and how to pull it.
Why "country" is harder than it looks
A wire story filed by a London desk about an event in Nairobi is — for most analysts — Kenyan news, not UK news. Publisher-country tagging gets this wrong constantly. Worse, a huge share of real-time reporting now originates on Telegram channels that have no country field at all. Any API that only maps a feed's home domain to a flag will leave most of its corpus tagged "international."
At NewsAgent Data we tag at the source level — both RSS domains and Telegram channels — against a curated map of several hundred outlets, so a Ukrainian field channel, a Nigerian daily, and a Czech broadcaster each resolve to the right country code regardless of what language they publish in or where their servers sit.
What's covered
The corpus spans 76 countries and is deepest where structured data is hardest to get:
- Russia & CIS — Russia, Ukraine, Belarus, Kazakhstan, Armenia, Azerbaijan, Georgia, Moldova and Central Asia, with both RSS and direct Telegram coverage.
- Africa — Nigeria, Kenya, South Africa, Ghana, Ethiopia, Uganda, Tanzania, Zimbabwe and pan-African desks.
- Asia — China, India, Indonesia, Vietnam, Cambodia and more, via English-language regional outlets.
- Europe — from major Western markets through to thin-coverage spots like Iceland, Montenegro, Bulgaria and Czechia.
Live, per-country article and source counts are published on the coverage page (with an interactive map) — they update as the corpus grows, so you can see exactly how deep a given country is before you build on it.
Filtering by country in the API
Every feed endpoint accepts a country parameter (ISO-3166 alpha-2). Combine it with language, urgency score, topic or political-lean filters in a single call:
# Recent Ukraine news, urgency 5+, scored and classified curl -H "X-API-Key: YOUR_KEY" \ "https://api.newsagentdata.com/v1/feed?country=ua&min_score=5&days=7"
Each record comes back enriched — urgency_score (0–10), political_lean, topic_tags, language, country_tags and original timestamp — so "news by country" is a starting filter, not the whole product. You can ask for, say, high-urgency security news out of the Caucasus, or compare how state and independent outlets in one country frame the same event.
# Sample one country's recent stream, no key required curl "https://api.newsagentdata.com/public/sample?country=ng&limit=5"
A note on language
Country and language are separate axes. We keep Russian and English as fully enriched, scored languages, and tag other languages (e.g. pl, sv, bg) honestly rather than mislabelling them — so a country filter returns that country's coverage without quietly polluting your language counts. If you need scored signal specifically, filter language=en or language=ru alongside country.
Pull news for any country, free
Grab a free key, no card required, and try the country filter on live data in under a minute.
Get a free API key