Comprehensive analytics dashboard query

Build analytics dashboard with faceting, range faceting, field selection, and multiple filters

Indataparameter

ParameterDescriptionTypeDefaultRequired
organization.nameOrganization filter.stringYes
facetEnable regular faceting.booleantrueYes
facet.fieldMultiple fields for faceting.stringYes
facet.rangeEnable range faceting.booleantrueYes
facet.range.fieldField for range faceting.stringYes
facet.range.startStart date for range.stringYes
facet.range.endEnd date for range.stringYes
facet.range.gapGap between ranges.stringYes
flField selection.stringYes
source.rank.opr.minMinimum source quality.stringYes
api_keyYour API key.stringYes
per_pageMaximum number of articles to retrieve.integer50No

Workflow examples

Request for comprehensive analytics dashboard:
curl -X GET "https://api.apitube.io/v1/news/everything?organization.name=Tesla&facet=true&facet.field=source.id,language.id,sentiment.overall.polarity,published.day_of_week&facet.range=true&facet.range.field=published_at&facet.range.start=2024-01-01&facet.range.end=2024-12-31&facet.range.gap=1MONTH&fl=id,title,published_at,sentiment.overall.score&source.rank.opr.min=0.6&api_key=YOUR_API_KEY"
Request for sentiment strength analysis:
curl -X GET "https://api.apitube.io/v1/news/everything?organization.name=Tesla&facet=true&facet.field=sentiment.strength,sentiment.overall.polarity&api_key=YOUR_API_KEY"
Request for yearly trend analysis:
curl -X GET "https://api.apitube.io/v1/news/everything?topic.id=artificial_intelligence&facet=true&facet.field=published.year,published.month&published_at.start=2020-01-01&api_key=YOUR_API_KEY"

Recept för cURL

curl --location --globoff --request POST 'https://api.apitube.io/v1/news/everything?organization.name=Tesla&facet=1&facet.field=source.id%2Clanguage.id%2Csentiment.overall.polarity%2Cpublished.day_of_week&facet.range=1&facet.range.field=published_at&facet.range.start=2024-01-01&facet.range.end=2024-12-31&facet.range.gap=1MONTH&fl=id%2Ctitle%2Cpublished_at%2Csentiment.overall.score&source.rank.opr.min=0.6&api_key=YOUR_API_KEY&per_page=50' \
--header 'Content-Type: application/json'

Recept för Python

import requests

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

querystring = {
    "organization.name": "Tesla",
    "facet": true,
    "facet.field": "source.id,language.id,sentiment.overall.polarity,published.day_of_week",
    "facet.range": true,
    "facet.range.field": "published_at",
    "facet.range.start": "2024-01-01",
    "facet.range.end": "2024-12-31",
    "facet.range.gap": "1MONTH",
    "fl": "id,title,published_at,sentiment.overall.score",
    "source.rank.opr.min": 0.6,
    "api_key": "YOUR_API_KEY",
    "per_page": 50
}
response = requests.request("GET", url, params=querystring)

print(response.text)

Recept för Javascript

import axios from "axios"

const options = {
		method: 'GET',
		url: 'https://api.apitube.io/v1/news/everything',
		params: {
    "organization.name": "Tesla",
    "facet": true,
    "facet.field": "source.id,language.id,sentiment.overall.polarity,published.day_of_week",
    "facet.range": true,
    "facet.range.field": "published_at",
    "facet.range.start": "2024-01-01",
    "facet.range.end": "2024-12-31",
    "facet.range.gap": "1MONTH",
    "fl": "id,title,published_at,sentiment.overall.score",
    "source.rank.opr.min": 0.6,
    "api_key": "YOUR_API_KEY",
    "per_page": 50
}};

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

Recept för PHP

require 'vendor/autoload.php';

use GuzzleHttp\Client;

$client = new Client();
$response = $client->request('GET', 'https://api.apitube.io/v1/news/everything', [
	'query' => [
    'organization.name' => 'Tesla',
    'facet' => 1,
    'facet.field' => 'source.id,language.id,sentiment.overall.polarity,published.day_of_week',
    'facet.range' => 1,
    'facet.range.field' => 'published_at',
    'facet.range.start' => '2024-01-01',
    'facet.range.end' => '2024-12-31',
    'facet.range.gap' => '1MONTH',
    'fl' => 'id,title,published_at,sentiment.overall.score',
    'source.rank.opr.min' => 0.6,
    'api_key' => 'YOUR_API_KEY',
    'per_page' => 50,
],
]);

echo $response->getBody();

Recept för 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?organization.name=Tesla&facet=1&facet.field=source.id%2Clanguage.id%2Csentiment.overall.polarity%2Cpublished.day_of_week&facet.range=1&facet.range.field=published_at&facet.range.start=2024-01-01&facet.range.end=2024-12-31&facet.range.gap=1MONTH&fl=id%2Ctitle%2Cpublished_at%2Csentiment.overall.score&source.rank.opr.min=0.6&api_key=YOUR_API_KEY&per_page=50")
		.method("POST", body)
		.addHeader("Content-Type", "application/json")
		.build();
Response response = client.newCall(request).execute();
		
  • CNN
  • Techcrunch
  • Vox
  • Apple
  • Microsoft
  • IBM
  • Bloomberg
  • Spotify