Author expertise analysis with cross-source tracking

Track what individual authors write across multiple news sources. Filter by topic category and whether coverage is positive, negative, or neutral

Input parameters

ParameterDescriptionTypeDefaultRequired
author.nameAuthor name to track.stringYes
category.idCategory filter.stringYes
sort.bySort by publication date.stringYes
sort.orderDescending order.stringYes
per_pageMaximum number of articles to retrieveinteger10Yes
source.rank.opr.minMinimum source quality.stringYes
api_keyYour API keystringYes

Workflow examples

Request for author expertise analysis:
curl -X GET "https://api.apitube.io/v1/news/everything?author.name=Ezra%20Klein&category.id=medtop:11000000&sort.by=published_at&sort.order=desc&per_page=10&api_key=YOUR_API_KEY"
See whether an author's coverage tends to be positive, negative, or neutral:
curl -X GET "https://api.apitube.io/v1/news/everything?author.name=Reuters,Associated%20Press&organization.name=JPMorgan%20Chase&published_at.start=2023-01-01&sort.by=sentiment.overall.score&api_key=YOUR_API_KEY"
Request for author topic evolution tracking:
curl -X GET "https://api.apitube.io/v1/news/everything?author.name=Yuval%20Noah%20Harari&published_at.start=2018-01-01&published_at.end=2023-12-31&sort.by=published_at&sort.order=asc&per_page=100&api_key=YOUR_API_KEY"

Related examples

Recipe for cURL

curl --location --globoff --request POST 'https://api.apitube.io/v1/news/everything?author.name=Ezra+Klein&category.id=medtop%3A11000000&sort.by=published_at&sort.order=desc&per_page=10&source.rank.opr.min=0.7&api_key=YOUR_API_KEY' \
--header 'Content-Type: application/json'

Recipe for Python

import requests

url = "https://api.apitube.io/v1/news/everything"

querystring = {
    "author.name": "Ezra Klein",
    "category.id": "medtop:11000000",
    "sort.by": "published_at",
    "sort.order": "desc",
    "per_page": 10,
    "source.rank.opr.min": 0.7,
    "api_key": "YOUR_API_KEY"
}
response = requests.request("GET", url, params=querystring)

print(response.text)

Recipe for Javascript

import axios from "axios"

const options = {
		method: 'GET',
		url: 'https://api.apitube.io/v1/news/everything',
		params: {
    "author.name": "Ezra Klein",
    "category.id": "medtop:11000000",
    "sort.by": "published_at",
    "sort.order": "desc",
    "per_page": 10,
    "source.rank.opr.min": 0.7,
    "api_key": "YOUR_API_KEY"
}};

axios.request(options).then(function (response) {
		console.log(response.data);
}).catch(function (error) {
		console.error(error);
});

Recipe for PHP

require 'vendor/autoload.php';

use GuzzleHttp\Client;

$client = new Client();
$response = $client->request('GET', 'https://api.apitube.io/v1/news/everything', [
	'query' => [
    'author.name' => 'Ezra Klein',
    'category.id' => 'medtop:11000000',
    'sort.by' => 'published_at',
    'sort.order' => 'desc',
    'per_page' => 10,
    'source.rank.opr.min' => 0.7,
    'api_key' => 'YOUR_API_KEY',
],
]);

echo $response->getBody();

Recipe for Java

OkHttpClient client = new OkHttpClient().newBuilder().build();
MediaType mediaType = MediaType.parse("application/json");
RequestBody body = RequestBody.create(mediaType, "");
Request request = new Request.Builder()
		.url("https://api.apitube.io/v1/news/everything?author.name=Ezra+Klein&category.id=medtop%3A11000000&sort.by=published_at&sort.order=desc&per_page=10&source.rank.opr.min=0.7&api_key=YOUR_API_KEY")
		.method("POST", body)
		.addHeader("Content-Type", "application/json")
		.build();
Response response = client.newCall(request).execute();
		
  • CNN
  • Techcrunch
  • Vox
  • Apple
  • Microsoft
  • IBM
  • Bloomberg
  • Spotify
We use cookies

By clicking "Accept", you agree to cookies on your device for the site to work and for analytics.