Free news API
for your products
Easy to integrate news API that you can use in your products and services to obtain access to real-time as well as archive news content.

Get daily articles from 150,000 news publishers worldwide
Get the full news content as well as information about the mentioned entities, topics and sentiment. Filter using any of the available properties to get only the content you need.
Global content
Access news content published by global news sources in 50+ languages just minutes after it has been published online.
Advanced filtering
Find news content of interest by specifying keywords, people, locations, organizations, topics, news sources, sentiment and more.
Meta-data information
Obtain all available article information as well as mentioned entities, sentiment, topics, shares on social media and more.
Track world’s events
Search world events identified in the news. See coverage of each event by different publishers and in different languages.
Pay per use
Use our News API with a simple pay as you go monthly subscription. Upgrade or downgrade your plan at any time.
News archive
Get access to historical news content published since 2014 by accessing our news database.
The News API pipeline
News API uses state-of-the-art services for identifying the available article meta-data as well as computing additional information such as mentioned entities, categories, event detection, sentiment and others.
Examples of News API calls
Below are different examples of the API calls using different programming languages
PYTHON
NODE.JS
HTML
from eventregistry import *
MAX_RESULTS = 1000
er = EventRegistry(apiKey = YOUR_API_KEY)
iter = QueryArticlesIter(
keywords = QueryItems.OR(["Bitcoin", "Ethereum", "Litecoin"]),
lang = "eng")
for art in iter.execQuery(er,
sortBy = "date",
maxItems = MAX_RESULTS,
returnInfo = ReturnInfo(
articleInfo = ArticleInfoFlags(
bodyLen = 300,
concepts = True,
categories = True)
)):
# do something with the article
print(art)
from eventregistry import *
MAX_RESULTS = 1000
er = EventRegistry(apiKey = YOUR_API_KEY)
iter = QueryEventsIter(
categoryUri = er.getCategoryUri("natural disasters"),
locationUri = er.getLocationUri("United States"))
for event in iter.execQuery(er, maxItems = MAX_RESULTS):
# do something with the event
print(event)
from eventregistry import *
MAX_RESULTS = 1000
er = EventRegistry(apiKey = YOUR_API_KEY)
iter = QueryArticlesIter(
conceptUri = er.getConceptUri("Apple"),
sourceGroupUri = er.getSourceGroupUri("business25 ERtop"))
for art in iter.execQuery(er,
sortBy = "rel",
maxItems = MAX_RESULTS,
returnInfo = ReturnInfo(
articleInfo = ArticleInfoFlags(
bodyLen = 300))):
# do something with the article
print(art)
from eventregistry import *
MAX_RESULTS = 1000
er = EventRegistry(apiKey = YOUR_API_KEY)
iter = QueryArticlesIter(
conceptUri = er.getConceptUri("football"),
lang = QueryItems.OR(["deu", "spa"]))
for art in iter.execQuery(er,
sortBy = "socialScore",
maxItems = MAX_RESULTS,
returnInfo = ReturnInfo(
articleInfo = ArticleInfoFlags(
bodyLen = 300,
socialScore = True,
concepts = True,
categories = True))):
# do something with the article
print(art)
from eventregistry import *
MAX_RESULTS = 1000
er = EventRegistry(apiKey = YOUR_API_KEY)
iter = QueryArticlesIter(
conceptUri = er.getConceptUri("refugee"),
sourceLocationUri = er.getLocationUri("Germany"),
lang = QueryItems.OR(["deu", "spa"]))
for art in iter.execQuery(er,
sortBy = "sourceAlexaGlobalRank",
sortByAsc = True,
maxItems = MAX_RESULTS,
returnInfo = ReturnInfo(
articleInfo = ArticleInfoFlags(bodyLen = -1))):
# do something with the article
print(art)
var request = require('request');
request.get({
url: "/api/v1/article/getArticles",
qs: {
resultType: "articles",
keyword: ["Bitcoin","Ethereum","Litecoin"],
keywordOper: "or",
lang: "eng",
articlesSortBy: "date",
includeArticleConcepts: true,
includeArticleCategories: true,
articleBodyLen: 300,
articlesCount: 10,
apiKey: "API_KEY",
},
function(error, response, body) {
body = JSON.parse(body);
console.log(body);
});
var request = require('request');
request.get({
url: "/api/v1/event/getEvents",
qs: {
resultType: "events",
categoryUri: "dmoz/Science/Earth_Sciences/Natural_Disasters_and_Hazards",
locationUri: "http://en.wikipedia.org/wiki/United_States",
eventsCount: 10,
apiKey: "API_KEY",
},
function(error, response, body) {
body = JSON.parse(body);
console.log(body);
});
var request = require('request');
request.get({
url: "/api/v1/article/getArticles",
qs: {
resultType: "articles",
conceptUri: "http,
sourceGroupUri: "ERtop/business25",
articlesSortBy: "rel",
articleBodyLen: 300,
articlesCount: 10,
apiKey: "API_KEY",
},
function(error, response, body) {
body = JSON.parse(body);
console.log(body);
});
var request = require('request');
request.get({
url: "/api/v1/article/getArticles",
qs: {
resultType: "articles",
conceptUri: "http,
lang: ["deu","spa"],
articlesSortBy: "socialScore",
includeArticleSocialScore: "true",
includeArticleConcepts: true,
includeArticleCategories: true,
articleBodyLen: 300,
articlesCount: 10,
apiKey: "API_KEY",
},
function(error, response, body) {
body = JSON.parse(body);
console.log(body);
});
var request = require('request');
request.get({
url: "/api/v1/article/getArticles",
qs: {
resultType: "articles",
conceptUri: "http://en.wikipedia.org/wiki/Refugee"
sourceLocationUri: "http://en.wikipedia.org/wiki/Germany"
articlesSortBy: "sourceAlexaGlobalRank",
articlesSortByAsc: "true",
articleBodyLen: 300,
articlesCount: 10,
apiKey: "API_KEY",
},
},
function(error, response, body) {
body = JSON.parse(body);
console.log(body);
});
https://eventregistry.org/api/v1/article/getArticles?resultType=articles&keyword=Bitcoin&keyword=Ethereum&keyword=Litecoin&keywordOper=or&lang=eng&articlesSortBy=date&includeArticleConcepts=true&includeArticleCategories=true&articleBodyLen=300&articlesCount=10&apiKey=API_KEY
https://eventregistry.org/api/v1/event/getEvents?resultType=events&categoryUri=dmoz/Science/Earth_Sciences/Natural_Disasters_and_Hazards&locationUri=http://en.wikipedia.org/wiki/United_States&eventsCount=10&apiKey=API_KEY
https://eventregistry.org/api/v1/article/getArticles?resultType=articles&conceptUri=http://en.wikipedia.org/wiki/Apple_Inc.&sourceGroupUri=ERtop/business25&articlesSortBy=rel&articleBodyLen=300&articlesCount=10&apiKey=API_KEY
https://eventregistry.org/api/v1/article/getArticles?resultType=articles&conceptUri=http://en.wikipedia.org/wiki/Association_football&lang=deu&lang=spa&articlesSortBy=socialScore&includeArticleSocialScore=true&includeArticleConcepts=true&includeArticleCategories=true&articleBodyLen=300&articlesCount=10&apiKey=API_KEY
https://eventregistry.org/api/v1/article/getArticles?resultType=articles&conceptUri=http://en.wikipedia.org/wiki/Refugee&sourceLocationUri=http://en.wikipedia.org/wiki/Germany&articlesSortBy=sourceAlexaGlobalRank&articlesSortByAsc=true&articleBodyLen=300&articlesCount=10&apiKey=API_KEY
Latest news about Bitcoin
Latest news about Bitcoin, Ethereum or Litecoin in English language
Natural Disasters
Events describing natural disasters that happened in United States
News about Apple Inc.
News about Apple Inc. reported by top business related news sources, sorted by relevance
German or Spanish news about football
German or Spanish articles about football sorted by number of shares on social media
News about Refugees
News about Refugees published by news sources located in Germany, sorted by source importance
Developers Data Access Options
Choose your language of preference to access our API
PYTHON SDK
NODE.JS
REST API
Uses for our API
- Get the latest news mentions of a person, company, location, etc.
- Supporting a platform that requires real-time news content.
- Access to the full stream of news and blogs as they are collected.
- Extract historical news content from our dataset.
- Build a news or event dataset for research purposes.
- Extract market trends, analyze specific industry, track competitors and customers.
- Track news reach and virality of a person, company, product or topic of interest.
Ready to get started?