curl --request POST \
--url https://api.pubrio.com/expansions/companies/summaries \
--header 'Content-Type: application/json' \
--header 'pubrio-api-key: <api-key>' \
--data '
{
"companies": [
"stripe.com",
"https://www.linkedin.com/company/airbnb",
"b7d92a56-31f8-4c0b-ae43-19c8e5f24b70"
],
"domains": [
"pubrio.com"
],
"linkedin_urls": [
"https://www.linkedin.com/company/pubrio"
],
"transitioned_dates": [
"2026-04-01",
"2026-06-29"
],
"window_days": 90,
"is_include_established": false,
"is_include_metadata": true
}
'import requests
url = "https://api.pubrio.com/expansions/companies/summaries"
payload = {
"companies": ["stripe.com", "https://www.linkedin.com/company/airbnb", "b7d92a56-31f8-4c0b-ae43-19c8e5f24b70"],
"domains": ["pubrio.com"],
"linkedin_urls": ["https://www.linkedin.com/company/pubrio"],
"transitioned_dates": ["2026-04-01", "2026-06-29"],
"window_days": 90,
"is_include_established": False,
"is_include_metadata": True
}
headers = {
"pubrio-api-key": "<api-key>",
"Content-Type": "application/json"
}
response = requests.post(url, json=payload, headers=headers)
print(response.text)const options = {
method: 'POST',
headers: {'pubrio-api-key': '<api-key>', 'Content-Type': 'application/json'},
body: JSON.stringify({
companies: [
'stripe.com',
'https://www.linkedin.com/company/airbnb',
'b7d92a56-31f8-4c0b-ae43-19c8e5f24b70'
],
domains: ['pubrio.com'],
linkedin_urls: ['https://www.linkedin.com/company/pubrio'],
transitioned_dates: ['2026-04-01', '2026-06-29'],
window_days: 90,
is_include_established: false,
is_include_metadata: true
})
};
fetch('https://api.pubrio.com/expansions/companies/summaries', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => "https://api.pubrio.com/expansions/companies/summaries",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "POST",
CURLOPT_POSTFIELDS => json_encode([
'companies' => [
'stripe.com',
'https://www.linkedin.com/company/airbnb',
'b7d92a56-31f8-4c0b-ae43-19c8e5f24b70'
],
'domains' => [
'pubrio.com'
],
'linkedin_urls' => [
'https://www.linkedin.com/company/pubrio'
],
'transitioned_dates' => [
'2026-04-01',
'2026-06-29'
],
'window_days' => 90,
'is_include_established' => false,
'is_include_metadata' => true
]),
CURLOPT_HTTPHEADER => [
"Content-Type: application/json",
"pubrio-api-key: <api-key>"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"strings"
"net/http"
"io"
)
func main() {
url := "https://api.pubrio.com/expansions/companies/summaries"
payload := strings.NewReader("{\n \"companies\": [\n \"stripe.com\",\n \"https://www.linkedin.com/company/airbnb\",\n \"b7d92a56-31f8-4c0b-ae43-19c8e5f24b70\"\n ],\n \"domains\": [\n \"pubrio.com\"\n ],\n \"linkedin_urls\": [\n \"https://www.linkedin.com/company/pubrio\"\n ],\n \"transitioned_dates\": [\n \"2026-04-01\",\n \"2026-06-29\"\n ],\n \"window_days\": 90,\n \"is_include_established\": false,\n \"is_include_metadata\": true\n}")
req, _ := http.NewRequest("POST", url, payload)
req.Header.Add("pubrio-api-key", "<api-key>")
req.Header.Add("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.post("https://api.pubrio.com/expansions/companies/summaries")
.header("pubrio-api-key", "<api-key>")
.header("Content-Type", "application/json")
.body("{\n \"companies\": [\n \"stripe.com\",\n \"https://www.linkedin.com/company/airbnb\",\n \"b7d92a56-31f8-4c0b-ae43-19c8e5f24b70\"\n ],\n \"domains\": [\n \"pubrio.com\"\n ],\n \"linkedin_urls\": [\n \"https://www.linkedin.com/company/pubrio\"\n ],\n \"transitioned_dates\": [\n \"2026-04-01\",\n \"2026-06-29\"\n ],\n \"window_days\": 90,\n \"is_include_established\": false,\n \"is_include_metadata\": true\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.pubrio.com/expansions/companies/summaries")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Post.new(url)
request["pubrio-api-key"] = '<api-key>'
request["Content-Type"] = 'application/json'
request.body = "{\n \"companies\": [\n \"stripe.com\",\n \"https://www.linkedin.com/company/airbnb\",\n \"b7d92a56-31f8-4c0b-ae43-19c8e5f24b70\"\n ],\n \"domains\": [\n \"pubrio.com\"\n ],\n \"linkedin_urls\": [\n \"https://www.linkedin.com/company/pubrio\"\n ],\n \"transitioned_dates\": [\n \"2026-04-01\",\n \"2026-06-29\"\n ],\n \"window_days\": 90,\n \"is_include_established\": false,\n \"is_include_metadata\": true\n}"
response = http.request(request)
puts response.read_body{
"metadata": {},
"data": {
"companies": [
{
"domain_search_id": "8f3c1b04-2e7a-4d19-9c55-6ab21f0e7d3c",
"home_country_code": "SG",
"expansion_score": 82,
"firmographics": {
"domain_search_id": "8f3c1b04-2e7a-4d19-9c55-6ab21f0e7d3c",
"company_name": "Example Corp",
"domain": "example.com",
"logo_url": "https://logo.pubrio.com/example.com.png",
"country_code": "SG",
"company_size": null,
"employees_count": 350,
"company_size_printed": "351+",
"is_employees_locked": false,
"founded_year": 2015,
"industry": "Software Development",
"publicly_traded_symbol": null,
"estimated_revenue": 25000000
},
"markets_summary": [
{
"country_code": "US",
"stage_slug": "committing",
"signal_count": 12,
"distinct_type_count": 4,
"first_signal_at": "2026-04-02T08:00:00.000Z",
"latest_signal_at": "2026-06-28T10:15:22.000Z",
"last_transition_at": "2026-06-25T14:30:00.000Z",
"expansion_score": 0.685,
"signals": [
{
"signal_type_slug": "EXEC",
"signal_subtype_slug": "country_manager",
"event_date": "2026-06-20T14:00:00.000Z",
"display_label": "Hired Regional VP for North America"
}
]
}
],
"signal_weekly_totals": [
{
"week_start": "2026-06-22",
"signal_type_slug": "HIRE",
"count": 5
}
],
"summary": {
"active_markets": 1,
"total_markets": 1,
"new_markets": 1,
"momentum_pct": 22,
"signal_count": 12,
"window_expansion_score": 69,
"scaling": 0,
"pipeline": 1,
"top_market": {
"country_code": "US",
"country": null,
"stage": "committing"
},
"newest_market": {
"country_code": "US",
"country": null,
"stage": "committing"
},
"activity_weekly": [
3,
5,
4
]
}
}
]
}
}{
"code": 40001,
"message": "Os erros e códigos variam de acordo com o cenário; consulte a documentação para mais informações.",
"details": {}
}{
"error": "Limite de requisições excedido. Aguarde e tente novamente mais tarde."
}{
"error": "Ocorreu um erro inesperado no servidor."
}Resumos em Lote de Expansão de Empresas
Resumos de expansão prontos para renderização de um lote de empresas, preparados para comparação lado a lado sem agregação no cliente.
curl --request POST \
--url https://api.pubrio.com/expansions/companies/summaries \
--header 'Content-Type: application/json' \
--header 'pubrio-api-key: <api-key>' \
--data '
{
"companies": [
"stripe.com",
"https://www.linkedin.com/company/airbnb",
"b7d92a56-31f8-4c0b-ae43-19c8e5f24b70"
],
"domains": [
"pubrio.com"
],
"linkedin_urls": [
"https://www.linkedin.com/company/pubrio"
],
"transitioned_dates": [
"2026-04-01",
"2026-06-29"
],
"window_days": 90,
"is_include_established": false,
"is_include_metadata": true
}
'import requests
url = "https://api.pubrio.com/expansions/companies/summaries"
payload = {
"companies": ["stripe.com", "https://www.linkedin.com/company/airbnb", "b7d92a56-31f8-4c0b-ae43-19c8e5f24b70"],
"domains": ["pubrio.com"],
"linkedin_urls": ["https://www.linkedin.com/company/pubrio"],
"transitioned_dates": ["2026-04-01", "2026-06-29"],
"window_days": 90,
"is_include_established": False,
"is_include_metadata": True
}
headers = {
"pubrio-api-key": "<api-key>",
"Content-Type": "application/json"
}
response = requests.post(url, json=payload, headers=headers)
print(response.text)const options = {
method: 'POST',
headers: {'pubrio-api-key': '<api-key>', 'Content-Type': 'application/json'},
body: JSON.stringify({
companies: [
'stripe.com',
'https://www.linkedin.com/company/airbnb',
'b7d92a56-31f8-4c0b-ae43-19c8e5f24b70'
],
domains: ['pubrio.com'],
linkedin_urls: ['https://www.linkedin.com/company/pubrio'],
transitioned_dates: ['2026-04-01', '2026-06-29'],
window_days: 90,
is_include_established: false,
is_include_metadata: true
})
};
fetch('https://api.pubrio.com/expansions/companies/summaries', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => "https://api.pubrio.com/expansions/companies/summaries",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "POST",
CURLOPT_POSTFIELDS => json_encode([
'companies' => [
'stripe.com',
'https://www.linkedin.com/company/airbnb',
'b7d92a56-31f8-4c0b-ae43-19c8e5f24b70'
],
'domains' => [
'pubrio.com'
],
'linkedin_urls' => [
'https://www.linkedin.com/company/pubrio'
],
'transitioned_dates' => [
'2026-04-01',
'2026-06-29'
],
'window_days' => 90,
'is_include_established' => false,
'is_include_metadata' => true
]),
CURLOPT_HTTPHEADER => [
"Content-Type: application/json",
"pubrio-api-key: <api-key>"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"strings"
"net/http"
"io"
)
func main() {
url := "https://api.pubrio.com/expansions/companies/summaries"
payload := strings.NewReader("{\n \"companies\": [\n \"stripe.com\",\n \"https://www.linkedin.com/company/airbnb\",\n \"b7d92a56-31f8-4c0b-ae43-19c8e5f24b70\"\n ],\n \"domains\": [\n \"pubrio.com\"\n ],\n \"linkedin_urls\": [\n \"https://www.linkedin.com/company/pubrio\"\n ],\n \"transitioned_dates\": [\n \"2026-04-01\",\n \"2026-06-29\"\n ],\n \"window_days\": 90,\n \"is_include_established\": false,\n \"is_include_metadata\": true\n}")
req, _ := http.NewRequest("POST", url, payload)
req.Header.Add("pubrio-api-key", "<api-key>")
req.Header.Add("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.post("https://api.pubrio.com/expansions/companies/summaries")
.header("pubrio-api-key", "<api-key>")
.header("Content-Type", "application/json")
.body("{\n \"companies\": [\n \"stripe.com\",\n \"https://www.linkedin.com/company/airbnb\",\n \"b7d92a56-31f8-4c0b-ae43-19c8e5f24b70\"\n ],\n \"domains\": [\n \"pubrio.com\"\n ],\n \"linkedin_urls\": [\n \"https://www.linkedin.com/company/pubrio\"\n ],\n \"transitioned_dates\": [\n \"2026-04-01\",\n \"2026-06-29\"\n ],\n \"window_days\": 90,\n \"is_include_established\": false,\n \"is_include_metadata\": true\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.pubrio.com/expansions/companies/summaries")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Post.new(url)
request["pubrio-api-key"] = '<api-key>'
request["Content-Type"] = 'application/json'
request.body = "{\n \"companies\": [\n \"stripe.com\",\n \"https://www.linkedin.com/company/airbnb\",\n \"b7d92a56-31f8-4c0b-ae43-19c8e5f24b70\"\n ],\n \"domains\": [\n \"pubrio.com\"\n ],\n \"linkedin_urls\": [\n \"https://www.linkedin.com/company/pubrio\"\n ],\n \"transitioned_dates\": [\n \"2026-04-01\",\n \"2026-06-29\"\n ],\n \"window_days\": 90,\n \"is_include_established\": false,\n \"is_include_metadata\": true\n}"
response = http.request(request)
puts response.read_body{
"metadata": {},
"data": {
"companies": [
{
"domain_search_id": "8f3c1b04-2e7a-4d19-9c55-6ab21f0e7d3c",
"home_country_code": "SG",
"expansion_score": 82,
"firmographics": {
"domain_search_id": "8f3c1b04-2e7a-4d19-9c55-6ab21f0e7d3c",
"company_name": "Example Corp",
"domain": "example.com",
"logo_url": "https://logo.pubrio.com/example.com.png",
"country_code": "SG",
"company_size": null,
"employees_count": 350,
"company_size_printed": "351+",
"is_employees_locked": false,
"founded_year": 2015,
"industry": "Software Development",
"publicly_traded_symbol": null,
"estimated_revenue": 25000000
},
"markets_summary": [
{
"country_code": "US",
"stage_slug": "committing",
"signal_count": 12,
"distinct_type_count": 4,
"first_signal_at": "2026-04-02T08:00:00.000Z",
"latest_signal_at": "2026-06-28T10:15:22.000Z",
"last_transition_at": "2026-06-25T14:30:00.000Z",
"expansion_score": 0.685,
"signals": [
{
"signal_type_slug": "EXEC",
"signal_subtype_slug": "country_manager",
"event_date": "2026-06-20T14:00:00.000Z",
"display_label": "Hired Regional VP for North America"
}
]
}
],
"signal_weekly_totals": [
{
"week_start": "2026-06-22",
"signal_type_slug": "HIRE",
"count": 5
}
],
"summary": {
"active_markets": 1,
"total_markets": 1,
"new_markets": 1,
"momentum_pct": 22,
"signal_count": 12,
"window_expansion_score": 69,
"scaling": 0,
"pipeline": 1,
"top_market": {
"country_code": "US",
"country": null,
"stage": "committing"
},
"newest_market": {
"country_code": "US",
"country": null,
"stage": "committing"
},
"activity_weekly": [
3,
5,
4
]
}
}
]
}
}{
"code": 40001,
"message": "Os erros e códigos variam de acordo com o cenário; consulte a documentação para mais informações.",
"details": {}
}{
"error": "Limite de requisições excedido. Aguarde e tente novamente mais tarde."
}{
"error": "Ocorreu um erro inesperado no servidor."
}Autorizações
Um token de API exclusivo que representa as ações que você realiza por meio da API e as permissões e operações correspondentes. Você pode criá-lo na seção Configurações.
Corpo
Delimite as empresas com um único array companies de identificadores mistos — domain_search_id, domínio da empresa ou URL do LinkedIn — combinados como união (não interseção). As chaves legadas domain_search_ids, domains e linkedin_urls continuam aceitas para compatibilidade retroativa. Até 25 empresas resolvidas por requisição.
Restringe a empresas específicas usando qualquer combinação de domain_search_id, domínio da empresa ou URL de perfil de rede social da empresa. Domínios e URLs são resolvidos para a empresa de melhor classificação.
[
"stripe.com",
"https://www.linkedin.com/company/airbnb",
"b7d92a56-31f8-4c0b-ae43-19c8e5f24b70"
]
Lista de domínios de empresas usada para operações de busca de empresas e pessoas. Se recebermos uma URL como www.pubrio.com ou https://docs.pubrio.com/, o sistema a converterá para pubrio.com para processamento.
["pubrio.com"]
A URL completa do perfil da empresa no LinkedIn. A URL começa com http e contém linkedin.com/company/
["https://www.linkedin.com/company/pubrio"]
Intervalo de datas ISO [from, to] para a janela de sinal/transição. Tem precedência sobre window_days quando ambos são informados.
["2026-04-01", "2026-06-29"]
Opcional. Tamanho da janela móvel em dias. Usado quando um intervalo explícito de transitioned_dates não é fornecido; se ambos forem omitidos, uma janela padrão é usada.
90
Inclui o estágio established (operadores de longa data sem sinais de expansão ativos). O padrão é false.
false
Retorna o payload completo de detalhes. O tráfego via chave de API é enxuto por padrão: o bloco model, os valores de confiança (stage.confidence em Company Expansion Detail, confidence_score em other_markets[] e em markers[] de Rankings) e os campos established_min / share_of_detected / has_known_office são todos omitidos, a menos que este valor seja true.
true
Resposta
Array de resumos de expansão por empresa. Dois scores: o expansion_score de nível superior é a postura geral atual em todos os mercados (estável); summary.window_expansion_score é a mesma medida restrita à janela selecionada. Ambos estão em uma escala de 0 a 100 aqui (diferente do stage.expansion_score de 0 a 1 nos resultados de busca). Quando seu plano não inclui contagens de funcionários, firmographics retorna company_size, employees_count e company_size_printed como null e define is_employees_locked: true.

