News API

Enriched News Data as a Service

Search, source and analyze news content from across the globe in real-time.

Trusted By
The Easiest Way to Aggregate, Search, and Understand News Articles at Scale

We monitor thousands of news outlets in real-time to give you an enriched and flexible news data feed. With our News API you can easily identify and track millions of stories and events as they unfold around the world.

hot stories about presidential elections
sorted by recency

Find the news and events that matter to you with advanced search and filtering capabilities
Our NLP models enrich every news article with over 25 structured data points
Our flexible News API makes it easy to build AI-powered news intelligence processes and applications
Start Your 14 Day Trial Today
Sign Me Up
No credit card needed
Collecting and Understanding News Content at Scale Doesn’t Have to be Difficult

Use the power of Machine Learning and NLP to identify and track what matters to your business.

News Aggregation and Search
Advanced Search
  • Keywords & Entities
  • Topics
  • Locations
  • Source
Trusted Sources
  • Premium content
  • Manually curated
  • Updated daily
Structured Data Extraction
  • Title and body
  • Author and publish date
  • Images and videos
  • Clean JSON data feed
Efficient Content Sourcing
  • Real-time monitoring
  • Historical archive
  • No scraping
  • Reliable content feeds
Article-level Insights
Assess Media Reaction
  • Sentiment Analysis
  • Coverage monitoring
  • Trend analysis
Process Content
  • Spot spikes in interest
  • Build retrospective reports
  • Extract article summaries
Advanced Analytics Features
  • Time series
  • Histograms
  • Trends
Engagement Metrics
  • Social reach
  • Trending stories
Advanced NLP Features
Multilingual NLP and Translation
  • Enhanced global coverage
  • 16 languages supported
  • Translated title and body
Advanced Clustering and Event Detection
  • Topic-based clustering
  • Event detection
  • Severity metrics
Schedule your personalized one-to-one demo with an NLP engineer
Schedule a Demo

Whether you’re monitoring media mentions, scoring risk associated with companies or individuals, or looking for an edge in your investment strategy, our enriched news data has you covered.

Risk Intelligence &
Adverse Media
Media Monitoring API
AI-driven media intelligence with AYLIEN News API

The hassle-free way to build accurate and flexible media monitoring solutions.

Risk Intelligence
News data as an informed risk signal

Intelligent news monitoring for risk and compliance solutions.

Adverse Media Screening
AI-powered Adverse Media Tracking

News Aggregation, Search, and Analysis for Intelligent Adverse Media Screening

Financial Analytics
News as an alternative data source

Real-time and historical access to a structured, cleansed, and enriched news data source.

Built by Developers for Developers

Easy to use API that returns parsed and analyzed news articles as a rich JSON object.

Visit our GitHub page to download our Node.js SDK repo, or you can run an example with the code below:


$ npm install aylien-news-api --save

You can then import and initiate the SDK easily:

var AylienNewsApi = require("aylien_news_api");

var defaultClient = AylienNewsApi.ApiClient.instance;

var app_id = defaultClient.authentications["app_id"];
app_id.apiKey = process.env["NEWSAPI_APP_ID"];

var app_key = defaultClient.authentications["app_key"];
app_key.apiKey = process.env["NEWSAPI_APP_KEY"];

var api = new AylienNewsApi.DefaultApi();

var opts = {
  title: "trump",
  sortBy: "social_shares_count.facebook",
  notLanguage: ["en"],
  publishedAtStart: "NOW-7DAYS",
  publishedAtEnd: "NOW",
  entitiesBodyLinksDbpedia: [

var callback = function(error, data, response) {
  if (error) {
  } else {
    console.log("API called successfully. Returned data: ");
    for (var i = 0; i < data.stories.length; i++) {
      console.log(data.stories[i].title + " / " + data.stories[i];

api.listStories(opts, callback);

Visit our GitHub page to download our Python SDK repo, or you can run an example with the code below:


$ pip install aylien_news_api

You can then import and initiate the SDK easily:

from __future__ import print_function
import time
import aylien_news_api
from import ApiException
from pprint import pprint

configuration = aylien_news_api.Configuration()
configuration.api_key['X-AYLIEN-NewsAPI-Application-ID'] = os.environ.get('NEWSAPI_APP_ID')
configuration.api_key['X-AYLIEN-NewsAPI-Application-Key'] = os.environ.get('NEWSAPI_APP_KEY')

client = aylien_news_api.ApiClient(configuration)
api_instance = aylien_news_api.DefaultApi(client)

    api_response = api_instance.list_stories(
except ApiException as e:
    print("Exception when calling DefaultApi->list_stories: %s\n" % e)

Visit our GitHub page to download our Ruby SDK repo, or you can run an example with the code below:


$ gem install 'aylien_news_api'

You can then import and initiate the SDK easily:

# Load the gem
require 'aylien_news_api'

# Setup authorization
AylienNewsApi.configure do |config|
  config.api_key['X-AYLIEN-NewsAPI-Application-ID'] = ENV['NEWSAPI_APP_ID']
  config.api_key['X-AYLIEN-NewsAPI-Application-Key'] = ENV['NEWSAPI_APP_KEY']

api_instance =

opts = {
  title: 'trump',
  published_at_start: "NOW-7DAYS",
  published_at_end: "NOW",
  entities_body_links_dbpedia: [
  not_language: ['en'],
  sort_by: 'social_shares_count.facebook'

  result = api_instance.list_stories(opts)
  result.stories.each do |story|
    puts "#{story.title} / #{}"
rescue AylienNewsApi::ApiError => e
  puts "Exception when calling DefaultApi->list_stories: #{e}"
  puts e.response_body

Visit our GitHub page to download our Go SDK repo, or you can run an example with the code below:


$ go get

You can then import and initiate the SDK easily:

package main

// Import the library
import (
    newsapi ""


func main() {
    cfg := newsapi.NewConfiguration()
    cfg.DefaultHeader["X-AYLIEN-NewsAPI-Application-ID"] = os.Getenv("NEWSAPI_APP_ID")

    // Configure API key authorization: app_key
    cfg.DefaultHeader["X-AYLIEN-NewsAPI-Application-Key"] = os.Getenv("NEWSAPI_APP_KEY")

    client := newsapi.NewAPIClient(cfg)
    api := client.DefaultApi

    storiesParams := &newsapi.ListStoriesOpts{
        Title:            optional.NewString("trump"),
        NotLanguage:      optional.NewInterface([]string{"en"}),
        PublishedAtStart: optional.NewString("NOW-7DAYS"),
        PublishedAtEnd:   optional.NewString("NOW"),
        EntitiesBodyLinksDbpedia: optional.NewInterface([]string{

    storiesResponse, res, err := api.ListStories(context.Background(), storiesParams)
    if err != nil {
    _ = res

    for _, story := range storiesResponse.Stories {
        fmt.Println(story.Title, " / ", story.Source.Name)
Ready to Get Started?

Start your 14-day trial today!