Comprehensive analytics dashboard query

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

Parâmetros de entrada

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"

Receita para 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'

Receita para 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)

Receita para 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);
});

Receita para 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();

Receita para 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