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": "Errors and codes will vary depending on the scenario, please see the documentation for information.",
"details": {}
}{
"error": "Request rate limit exceeded. Please wait and try again later."
}{
"error": "An unexpected error occurred on the server."
}Пакетные сводки экспансии компаний
Готовые к отображению сводки экспансии для пакета компаний, подготовленные для сравнения бок о бок без агрегации на стороне клиента.
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": "Errors and codes will vary depending on the scenario, please see the documentation for information.",
"details": {}
}{
"error": "Request rate limit exceeded. Please wait and try again later."
}{
"error": "An unexpected error occurred on the server."
}Авторизации
Тело
Указать компании одним массивом companies со смешанными идентификаторами — domain_search_id, домен компании или URL LinkedIn — сопоставляемыми как объединение (не пересечение). Устаревшие ключи domain_search_ids, domains и linkedin_urls по-прежнему принимаются для обратной совместимости. До 25 сопоставленных компаний за запрос.
Ограничить конкретными компаниями по любому сочетанию domain_search_id, домена компании или URL профиля компании в социальных сетях. Домены и URL сопоставляются с наиболее подходящей компанией.
[
"stripe.com",
"https://www.linkedin.com/company/airbnb",
"b7d92a56-31f8-4c0b-ae43-19c8e5f24b70"
]
Список доменов компаний, используемых для операций поиска компаний и людей. Если получен URL вида www.pubrio.com или https://docs.pubrio.com/, система преобразует его в pubrio.com для обработки.
["pubrio.com"]
Полностью сформированный URL профиля компании в LinkedIn. URL начинается с http и содержит linkedin.com/company/
["https://www.linkedin.com/company/pubrio"]
Диапазон дат ISO [from, to] для окна сигналов/переходов. Имеет приоритет над window_days, если указаны оба.
["2026-04-01", "2026-06-29"]
Необязательно. Размер скользящего окна в днях. Используется, когда явный диапазон transitioned_dates не указан; если не указаны оба, используется окно по умолчанию.
90
Включить стадию established (давно работающие компании без активных сигналов экспансии). По умолчанию false.
false
Вернуть полную детализированную полезную нагрузку. По умолчанию трафик по ключу API компактный: блок model, показатели достоверности (stage.confidence в Company Expansion Detail, confidence_score в other_markets[] и в markers[] Rankings), а также поля established_min / share_of_detected / has_known_office опускаются, если это значение не true.
true
Ответ
Массив сводок экспансии по каждой компании. Два показателя: expansion_score верхнего уровня — общая текущая позиция по всем рынкам (стабильная); summary.window_expansion_score — тот же показатель, ограниченный выбранным периодом. Оба здесь в шкале 0-100 (в отличие от stage.expansion_score в результатах поиска, который в шкале 0-1). Если ваш тариф не включает данные о численности сотрудников, firmographics возвращает company_size, employees_count и company_size_printed как null и устанавливает is_employees_locked: true.

