Comprehensive analytics dashboard query

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

Parametri di input

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"

Ricetta per 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'

Ricetta per 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)

Ricetta per 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);
});

Ricetta per 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();

Ricetta per 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