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، أو نطاق الشركة، أو رابط LinkedIn — تُطابَق كاتحاد (لا تقاطع). لا تزال المفاتيح القديمة domain_search_ids وdomains وlinkedin_urls مقبولة للتوافق الخلفي. حتى 25 شركة محلولة لكل طلب.
التحديد لشركات محددة عبر أي مزيج من domain_search_id، أو نطاق الشركة، أو رابط ملف شركة على وسائل التواصل الاجتماعي. تُحل النطاقات والروابط إلى أفضل شركة مطابقة مرتبة.
[
"stripe.com",
"https://www.linkedin.com/company/airbnb",
"b7d92a56-31f8-4c0b-ae43-19c8e5f24b70"
]
قائمة نطاقات شركات تُستخدَم لعمليات البحث عن شركات وأشخاص. إن استلمنا رابطًا مثل www.pubrio.com أو https://docs.pubrio.com/، سيحوّله النظام إلى pubrio.com للمعالجة.
["pubrio.com"]
الرابط الكامل لملف شركة على LinkedIn. يبدأ الرابط بـhttp ويحتوي linkedin.com/company/
["https://www.linkedin.com/company/pubrio"]
نطاق تاريخ ISO [من, إلى] لنافذة الإشارة/الانتقال. له الأولوية على window_days عند توفير كليهما.
["2026-04-01", "2026-06-29"]
اختياري. حجم النافذة المتحركة بالأيام. يُستخدَم عندما لا يُوفَّر نطاق transitioned_dates صريح؛ إن حُذف كلاهما، تُستخدَم نافذة افتراضية.
90
أدرِج مرحلة established (المشغّلون العريقون دون إشارات توسع نشطة). الافتراضي false.
false
أعِد حمولة التفاصيل الكاملة. حركة مرور مفتاح API مختصرة افتراضيًا: تُحذَف كتلة model، وأرقام الثقة (stage.confidence في تفاصيل توسع الشركة، وconfidence_score في other_markets[] وفي markers[] الخاصة بالتصنيفات)، وحقول 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.

