Skip to content

Companies ​

Search profiles of organizations and brands. Each profile includes headquarters, founding date, website, key people, subsidiaries, a coverage summary and recent articles.

Added in 1.0.42

Full response field definitions are in API Response Structure. See also the Monitor a company recipe.

Endpoints ​

GET /v1/companies          # list & search
GET /v1/companies/{id}     # single company profile

Send your API key in the X-API-Key header or api_key URL parameter.

GET /v1/companies

Query Parameters ​

ParameterTypeRequiredDescription
namestringNoFilter by company name (substring match).
wikidata_idstringNoFilter by Wikidata ID (e.g. Q478214 or 478214).
pageintegerNoPage number (default 1).
per_pageintegerNoResults per page (default 100, max 250; the plan ceiling applies — Free 10, Starter 50, Basic 200).
api_keystringYes*Your API key. Can also be provided via headers.

* Required if not provided in headers

Example ​

bash
curl "https://api.apitube.io/v1/companies?name=Tesla&per_page=5&api_key=YOUR_API_KEY"
python
import requests

resp = requests.get(
    "https://api.apitube.io/v1/companies",
    params={"name": "Tesla", "per_page": 5, "api_key": "YOUR_API_KEY"},
)
print(resp.json())
javascript
const params = new URLSearchParams({ name: "Tesla", per_page: "5", api_key: "YOUR_API_KEY" });
const resp = await fetch(`https://api.apitube.io/v1/companies?${params}`);
console.log(await resp.json());
php
$query = http_build_query(["name" => "Tesla", "per_page" => 5, "api_key" => "YOUR_API_KEY"]);
$data = json_decode(file_get_contents("https://api.apitube.io/v1/companies?$query"), true);
print_r($data);
go
package main

import (
	"encoding/json"
	"fmt"
	"io"
	"net/http"
	"net/url"
)

func main() {
	u, _ := url.Parse("https://api.apitube.io/v1/companies")
	q := u.Query()
	q.Set("name", "Tesla")
	q.Set("per_page", "5")
	q.Set("api_key", "YOUR_API_KEY")
	u.RawQuery = q.Encode()

	resp, _ := http.Get(u.String())
	defer resp.Body.Close()

	body, _ := io.ReadAll(resp.Body)
	var data map[string]any
	json.Unmarshal(body, &data)
	fmt.Println(data)
}
java
import java.net.URI;
import java.net.http.HttpClient;
import java.net.http.HttpRequest;
import java.net.http.HttpResponse;

public class Example {
    public static void main(String[] args) throws Exception {
        HttpClient client = HttpClient.newHttpClient();
        HttpRequest request = HttpRequest.newBuilder()
            .uri(URI.create("https://api.apitube.io/v1/companies?name=Tesla&per_page=5&api_key=YOUR_API_KEY"))
            .GET()
            .build();
        HttpResponse<String> response = client.send(request, HttpResponse.BodyHandlers.ofString());
        System.out.println(response.body());
    }
}
text
Write a script in your preferred language that calls the APITube News API:

GET https://api.apitube.io/v1/companies?name=Tesla&per_page=5

Read the API key from an environment variable (do not hardcode it), handle request
errors, and print the key fields of each result.
Docs: https://docs.apitube.io/platform/news-api/everything
json
{
  "status": "ok",
  "limit": 5,
  "page": 1,
  "has_next_pages": true,
  "results": [
    {
      "id": 474,
      "name": "Tesla Robotaxi",
      "type": "brand",
      "links": {
        "self": "https://api.apitube.io/v1/companies/474",
        "articles": "https://api.apitube.io/v1/news/entity/474",
        "wikipedia": "https://en.wikipedia.org/wiki/Tesla_Robotaxi",
        "wikidata": "https://www.wikidata.org/wiki/Q135277686"
      },
      "profile": {
        "description": "Ride-hailing service operated by Tesla, Inc.",
        "website_url": "https://www.tesla.com/robotaxi/",
        "brand_owner": { "name": "Tesla, Inc." }
      }
    }
  ]
}

Company profile ​

GET /v1/companies/{id}

Get one company's profile, including headquarters, founding date, website, logo, key people and subsidiaries. The response also includes coverage and recent_articles.

Query Parameters ​

ParameterTypeRequiredDescription
coveragestringNoSet to false to omit the coverage block.
api_keystringYes*Your API key.

The coverage block uses the same fields as the People coverage block: article_count, first_seen/last_seen, sentiment, momentum, timeline, top_sources, top_topics, top_countries, top_languages and related_entities.

recent_articles contains the 5 latest articles about the company. Each includes the full article fields from /v1/news/everything, including body, body_html and entities, so responses can be large. coverage=false removes only the coverage summary. You cannot omit recent articles.

bash
curl "https://api.apitube.io/v1/companies/474?api_key=YOUR_API_KEY"
python
import requests

resp = requests.get(
    "https://api.apitube.io/v1/companies/474",
    params={"api_key": "YOUR_API_KEY"},
)
print(resp.json())
javascript
const resp = await fetch("https://api.apitube.io/v1/companies/474?api_key=YOUR_API_KEY");
console.log(await resp.json());
php
$data = json_decode(file_get_contents("https://api.apitube.io/v1/companies/474?api_key=YOUR_API_KEY"), true);
print_r($data);
go
package main

import (
	"encoding/json"
	"fmt"
	"io"
	"net/http"
	"net/url"
)

func main() {
	u, _ := url.Parse("https://api.apitube.io/v1/companies/474")
	q := u.Query()
	q.Set("api_key", "YOUR_API_KEY")
	u.RawQuery = q.Encode()

	resp, _ := http.Get(u.String())
	defer resp.Body.Close()

	body, _ := io.ReadAll(resp.Body)
	var data map[string]any
	json.Unmarshal(body, &data)
	fmt.Println(data)
}
java
import java.net.URI;
import java.net.http.HttpClient;
import java.net.http.HttpRequest;
import java.net.http.HttpResponse;

public class Example {
    public static void main(String[] args) throws Exception {
        HttpClient client = HttpClient.newHttpClient();
        HttpRequest request = HttpRequest.newBuilder()
            .uri(URI.create("https://api.apitube.io/v1/companies/474?api_key=YOUR_API_KEY"))
            .GET()
            .build();
        HttpResponse<String> response = client.send(request, HttpResponse.BodyHandlers.ofString());
        System.out.println(response.body());
    }
}
text
Write a script in your preferred language that calls the APITube News API:

GET https://api.apitube.io/v1/companies/474

Read the API key from an environment variable (do not hardcode it), handle request
errors, and print the key fields of each result.
Docs: https://docs.apitube.io/platform/news-api/everything

Pricing ​

Each request with results costs 1 point. Searches with no results are free. If you have no credits left, the API returns 402.

Errors ​

A request for a non-existent company returns 404 with code ER0151 (Company not found.).