curl --request POST \
--url https://api.pubrio.com/expansions/signals/search \
--header 'Content-Type: application/json' \
--header 'pubrio-api-key: <api-key>' \
--data '
{
"domain_search_ids": [
"8f3c1b04-2e7a-4d19-9c55-6ab21f0e7d3c"
],
"is_active": true,
"country_codes": [
"US",
"GB"
],
"signal_types": [
"EXEC",
"HIRE"
],
"signal_subtypes": [
"country_manager",
"local_employee"
],
"signal_strengths": [
"high"
],
"source_types": [
"jobs",
"ads"
],
"polarities": [
"expansion"
],
"event_dates": [
"2026-06-01",
"2026-06-30"
],
"page": 1,
"per_page": 25
}
'import requests
url = "https://api.pubrio.com/expansions/signals/search"
payload = {
"domain_search_ids": ["8f3c1b04-2e7a-4d19-9c55-6ab21f0e7d3c"],
"is_active": True,
"country_codes": ["US", "GB"],
"signal_types": ["EXEC", "HIRE"],
"signal_subtypes": ["country_manager", "local_employee"],
"signal_strengths": ["high"],
"source_types": ["jobs", "ads"],
"polarities": ["expansion"],
"event_dates": ["2026-06-01", "2026-06-30"],
"page": 1,
"per_page": 25
}
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({
domain_search_ids: ['8f3c1b04-2e7a-4d19-9c55-6ab21f0e7d3c'],
is_active: true,
country_codes: ['US', 'GB'],
signal_types: ['EXEC', 'HIRE'],
signal_subtypes: ['country_manager', 'local_employee'],
signal_strengths: ['high'],
source_types: ['jobs', 'ads'],
polarities: ['expansion'],
event_dates: ['2026-06-01', '2026-06-30'],
page: 1,
per_page: 25
})
};
fetch('https://api.pubrio.com/expansions/signals/search', 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/signals/search",
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([
'domain_search_ids' => [
'8f3c1b04-2e7a-4d19-9c55-6ab21f0e7d3c'
],
'is_active' => true,
'country_codes' => [
'US',
'GB'
],
'signal_types' => [
'EXEC',
'HIRE'
],
'signal_subtypes' => [
'country_manager',
'local_employee'
],
'signal_strengths' => [
'high'
],
'source_types' => [
'jobs',
'ads'
],
'polarities' => [
'expansion'
],
'event_dates' => [
'2026-06-01',
'2026-06-30'
],
'page' => 1,
'per_page' => 25
]),
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/signals/search"
payload := strings.NewReader("{\n \"domain_search_ids\": [\n \"8f3c1b04-2e7a-4d19-9c55-6ab21f0e7d3c\"\n ],\n \"is_active\": true,\n \"country_codes\": [\n \"US\",\n \"GB\"\n ],\n \"signal_types\": [\n \"EXEC\",\n \"HIRE\"\n ],\n \"signal_subtypes\": [\n \"country_manager\",\n \"local_employee\"\n ],\n \"signal_strengths\": [\n \"high\"\n ],\n \"source_types\": [\n \"jobs\",\n \"ads\"\n ],\n \"polarities\": [\n \"expansion\"\n ],\n \"event_dates\": [\n \"2026-06-01\",\n \"2026-06-30\"\n ],\n \"page\": 1,\n \"per_page\": 25\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/signals/search")
.header("pubrio-api-key", "<api-key>")
.header("Content-Type", "application/json")
.body("{\n \"domain_search_ids\": [\n \"8f3c1b04-2e7a-4d19-9c55-6ab21f0e7d3c\"\n ],\n \"is_active\": true,\n \"country_codes\": [\n \"US\",\n \"GB\"\n ],\n \"signal_types\": [\n \"EXEC\",\n \"HIRE\"\n ],\n \"signal_subtypes\": [\n \"country_manager\",\n \"local_employee\"\n ],\n \"signal_strengths\": [\n \"high\"\n ],\n \"source_types\": [\n \"jobs\",\n \"ads\"\n ],\n \"polarities\": [\n \"expansion\"\n ],\n \"event_dates\": [\n \"2026-06-01\",\n \"2026-06-30\"\n ],\n \"page\": 1,\n \"per_page\": 25\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.pubrio.com/expansions/signals/search")
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 \"domain_search_ids\": [\n \"8f3c1b04-2e7a-4d19-9c55-6ab21f0e7d3c\"\n ],\n \"is_active\": true,\n \"country_codes\": [\n \"US\",\n \"GB\"\n ],\n \"signal_types\": [\n \"EXEC\",\n \"HIRE\"\n ],\n \"signal_subtypes\": [\n \"country_manager\",\n \"local_employee\"\n ],\n \"signal_strengths\": [\n \"high\"\n ],\n \"source_types\": [\n \"jobs\",\n \"ads\"\n ],\n \"polarities\": [\n \"expansion\"\n ],\n \"event_dates\": [\n \"2026-06-01\",\n \"2026-06-30\"\n ],\n \"page\": 1,\n \"per_page\": 25\n}"
response = http.request(request)
puts response.read_body{
"metadata": {
"filters": {
"domain_search_ids": [
"8f3c1b04-2e7a-4d19-9c55-6ab21f0e7d3c"
],
"country_codes": [
"US"
],
"signal_types": [
"HIRE",
"AD"
]
}
},
"data": {
"pagination": {
"page": 1,
"per_page": 25,
"total_entries": 2990,
"total_pages": 120
},
"signals": [
{
"expansion_signal_id": 580965556,
"domain_search_id": "8f3c1b04-2e7a-4d19-9c55-6ab21f0e7d3c",
"country_code": "US",
"signal_type_slug": "HIRE",
"signal_subtype_slug": "country_manager",
"signal_strength_slug": "very_high",
"polarity": "expansion",
"event_date": "2026-06-20T14:00:00.000Z",
"event_date_precision": "day",
"source_type": "jobs",
"source_record_id": "4224659596",
"display_label": "Hired Country Manager",
"evidence_url": "https://www.linkedin.com/jobs/view/4224659596",
"metadata": {
"city": "Austin",
"country_code": "US",
"departments": [
"sales"
],
"seniority": [
"director"
],
"top_titles": [
"Country Manager, US"
],
"active_postings": 3,
"window_days": 90
},
"extraction_confidence": 0.91,
"extraction_model": null,
"is_active": true,
"notes": null,
"created_at": "2026-06-20T15:02:11.004Z",
"last_modified": "2026-06-20T15:02:11.004Z",
"source_published_at": "2026-06-19T08:00:00.000Z",
"lead_time_days": 1,
"occurs_at": null,
"occurs_until": null,
"audit": {
"profile_id": null,
"user_id": null,
"import_id": null,
"is_backfill": false
}
},
{
"expansion_signal_id": 580965557,
"domain_search_id": "8f3c1b04-2e7a-4d19-9c55-6ab21f0e7d3c",
"country_code": "US",
"signal_type_slug": "AD",
"signal_subtype_slug": null,
"signal_strength_slug": "low",
"polarity": "expansion",
"event_date": "2026-06-18T08:12:25.866Z",
"event_date_precision": "day",
"source_type": "ads",
"source_record_id": "3569a83d-6e96-4bc9-b1a7-abbfa8f4b1ad",
"display_label": "Full-Stack Observability: 7 Tools Engineers Are Switching To in 2026",
"evidence_url": null,
"metadata": {
"headline": "Full-Stack Observability: 7 Tools Engineers Are Switching To in 2026",
"advertisement_format": "Single Image Ad",
"source_type": "linkedin",
"share_basis": "declared",
"share_pct": null,
"started_at": null,
"ended_at": null
},
"extraction_confidence": null,
"extraction_model": null,
"is_active": true,
"notes": null,
"created_at": "2026-06-18T08:12:25.883Z",
"last_modified": "2026-06-18T08:12:25.883Z",
"source_published_at": null,
"lead_time_days": null,
"occurs_at": null,
"occurs_until": null,
"audit": {
"profile_id": null,
"user_id": null,
"import_id": null,
"is_backfill": false
}
}
]
}
}{
"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."
}Busca de Sinais de Expansão
Linhas brutas e paginadas de sinais de expansão — a evidência datada por trás do estágio de cada empresa, com fonte e URL de evidência.
curl --request POST \
--url https://api.pubrio.com/expansions/signals/search \
--header 'Content-Type: application/json' \
--header 'pubrio-api-key: <api-key>' \
--data '
{
"domain_search_ids": [
"8f3c1b04-2e7a-4d19-9c55-6ab21f0e7d3c"
],
"is_active": true,
"country_codes": [
"US",
"GB"
],
"signal_types": [
"EXEC",
"HIRE"
],
"signal_subtypes": [
"country_manager",
"local_employee"
],
"signal_strengths": [
"high"
],
"source_types": [
"jobs",
"ads"
],
"polarities": [
"expansion"
],
"event_dates": [
"2026-06-01",
"2026-06-30"
],
"page": 1,
"per_page": 25
}
'import requests
url = "https://api.pubrio.com/expansions/signals/search"
payload = {
"domain_search_ids": ["8f3c1b04-2e7a-4d19-9c55-6ab21f0e7d3c"],
"is_active": True,
"country_codes": ["US", "GB"],
"signal_types": ["EXEC", "HIRE"],
"signal_subtypes": ["country_manager", "local_employee"],
"signal_strengths": ["high"],
"source_types": ["jobs", "ads"],
"polarities": ["expansion"],
"event_dates": ["2026-06-01", "2026-06-30"],
"page": 1,
"per_page": 25
}
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({
domain_search_ids: ['8f3c1b04-2e7a-4d19-9c55-6ab21f0e7d3c'],
is_active: true,
country_codes: ['US', 'GB'],
signal_types: ['EXEC', 'HIRE'],
signal_subtypes: ['country_manager', 'local_employee'],
signal_strengths: ['high'],
source_types: ['jobs', 'ads'],
polarities: ['expansion'],
event_dates: ['2026-06-01', '2026-06-30'],
page: 1,
per_page: 25
})
};
fetch('https://api.pubrio.com/expansions/signals/search', 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/signals/search",
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([
'domain_search_ids' => [
'8f3c1b04-2e7a-4d19-9c55-6ab21f0e7d3c'
],
'is_active' => true,
'country_codes' => [
'US',
'GB'
],
'signal_types' => [
'EXEC',
'HIRE'
],
'signal_subtypes' => [
'country_manager',
'local_employee'
],
'signal_strengths' => [
'high'
],
'source_types' => [
'jobs',
'ads'
],
'polarities' => [
'expansion'
],
'event_dates' => [
'2026-06-01',
'2026-06-30'
],
'page' => 1,
'per_page' => 25
]),
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/signals/search"
payload := strings.NewReader("{\n \"domain_search_ids\": [\n \"8f3c1b04-2e7a-4d19-9c55-6ab21f0e7d3c\"\n ],\n \"is_active\": true,\n \"country_codes\": [\n \"US\",\n \"GB\"\n ],\n \"signal_types\": [\n \"EXEC\",\n \"HIRE\"\n ],\n \"signal_subtypes\": [\n \"country_manager\",\n \"local_employee\"\n ],\n \"signal_strengths\": [\n \"high\"\n ],\n \"source_types\": [\n \"jobs\",\n \"ads\"\n ],\n \"polarities\": [\n \"expansion\"\n ],\n \"event_dates\": [\n \"2026-06-01\",\n \"2026-06-30\"\n ],\n \"page\": 1,\n \"per_page\": 25\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/signals/search")
.header("pubrio-api-key", "<api-key>")
.header("Content-Type", "application/json")
.body("{\n \"domain_search_ids\": [\n \"8f3c1b04-2e7a-4d19-9c55-6ab21f0e7d3c\"\n ],\n \"is_active\": true,\n \"country_codes\": [\n \"US\",\n \"GB\"\n ],\n \"signal_types\": [\n \"EXEC\",\n \"HIRE\"\n ],\n \"signal_subtypes\": [\n \"country_manager\",\n \"local_employee\"\n ],\n \"signal_strengths\": [\n \"high\"\n ],\n \"source_types\": [\n \"jobs\",\n \"ads\"\n ],\n \"polarities\": [\n \"expansion\"\n ],\n \"event_dates\": [\n \"2026-06-01\",\n \"2026-06-30\"\n ],\n \"page\": 1,\n \"per_page\": 25\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.pubrio.com/expansions/signals/search")
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 \"domain_search_ids\": [\n \"8f3c1b04-2e7a-4d19-9c55-6ab21f0e7d3c\"\n ],\n \"is_active\": true,\n \"country_codes\": [\n \"US\",\n \"GB\"\n ],\n \"signal_types\": [\n \"EXEC\",\n \"HIRE\"\n ],\n \"signal_subtypes\": [\n \"country_manager\",\n \"local_employee\"\n ],\n \"signal_strengths\": [\n \"high\"\n ],\n \"source_types\": [\n \"jobs\",\n \"ads\"\n ],\n \"polarities\": [\n \"expansion\"\n ],\n \"event_dates\": [\n \"2026-06-01\",\n \"2026-06-30\"\n ],\n \"page\": 1,\n \"per_page\": 25\n}"
response = http.request(request)
puts response.read_body{
"metadata": {
"filters": {
"domain_search_ids": [
"8f3c1b04-2e7a-4d19-9c55-6ab21f0e7d3c"
],
"country_codes": [
"US"
],
"signal_types": [
"HIRE",
"AD"
]
}
},
"data": {
"pagination": {
"page": 1,
"per_page": 25,
"total_entries": 2990,
"total_pages": 120
},
"signals": [
{
"expansion_signal_id": 580965556,
"domain_search_id": "8f3c1b04-2e7a-4d19-9c55-6ab21f0e7d3c",
"country_code": "US",
"signal_type_slug": "HIRE",
"signal_subtype_slug": "country_manager",
"signal_strength_slug": "very_high",
"polarity": "expansion",
"event_date": "2026-06-20T14:00:00.000Z",
"event_date_precision": "day",
"source_type": "jobs",
"source_record_id": "4224659596",
"display_label": "Hired Country Manager",
"evidence_url": "https://www.linkedin.com/jobs/view/4224659596",
"metadata": {
"city": "Austin",
"country_code": "US",
"departments": [
"sales"
],
"seniority": [
"director"
],
"top_titles": [
"Country Manager, US"
],
"active_postings": 3,
"window_days": 90
},
"extraction_confidence": 0.91,
"extraction_model": null,
"is_active": true,
"notes": null,
"created_at": "2026-06-20T15:02:11.004Z",
"last_modified": "2026-06-20T15:02:11.004Z",
"source_published_at": "2026-06-19T08:00:00.000Z",
"lead_time_days": 1,
"occurs_at": null,
"occurs_until": null,
"audit": {
"profile_id": null,
"user_id": null,
"import_id": null,
"is_backfill": false
}
},
{
"expansion_signal_id": 580965557,
"domain_search_id": "8f3c1b04-2e7a-4d19-9c55-6ab21f0e7d3c",
"country_code": "US",
"signal_type_slug": "AD",
"signal_subtype_slug": null,
"signal_strength_slug": "low",
"polarity": "expansion",
"event_date": "2026-06-18T08:12:25.866Z",
"event_date_precision": "day",
"source_type": "ads",
"source_record_id": "3569a83d-6e96-4bc9-b1a7-abbfa8f4b1ad",
"display_label": "Full-Stack Observability: 7 Tools Engineers Are Switching To in 2026",
"evidence_url": null,
"metadata": {
"headline": "Full-Stack Observability: 7 Tools Engineers Are Switching To in 2026",
"advertisement_format": "Single Image Ad",
"source_type": "linkedin",
"share_basis": "declared",
"share_pct": null,
"started_at": null,
"ended_at": null
},
"extraction_confidence": null,
"extraction_model": null,
"is_active": true,
"notes": null,
"created_at": "2026-06-18T08:12:25.883Z",
"last_modified": "2026-06-18T08:12:25.883Z",
"source_published_at": null,
"lead_time_days": null,
"occurs_at": null,
"occurs_until": null,
"audit": {
"profile_id": null,
"user_id": null,
"import_id": null,
"is_backfill": false
}
}
]
}
}{
"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
Empresas às quais restringir, por domain_search_id.
["8f3c1b04-2e7a-4d19-9c55-6ab21f0e7d3c"]
Retorna apenas sinais ativos (true) ou apenas retratados (false). Omita para ambos.
true
Mercados-alvo aos quais restringir, como códigos ISO 3166-1 alpha-2.
["US", "GB"]
Tipos de sinal aos quais restringir. Valores desconhecidos não correspondem a nada.
AD, AUDIENCE, DNS, ENTITY, EVENT, EVENT_PLUS, EXEC, HIRE, INFRA, IP, NEWS, OFFICE, PARTNER, PRODUCT, REG, SCALE, TECH ["EXEC", "HIRE"]
Subtipos de sinal aos quais restringir. Valores desconhecidos não correspondem a nada.
marketing_pullback, domain_dropped, entity_dissolution, exhibiting_booth, speaking_breakout, speaking_keynote, sponsorship, key_departure, country_manager, engineering, freelancer, hiring_freeze, job_posting_removal, legal_compliance, local_employee, operations, regional_vp, remote_sales_bd, supply_chain, ip_abandoned, office_closure, partnership_terminated, product_withdrawal, regulatory_surrender, layoffs, content_decay ["country_manager", "local_employee"]
Intensidades de sinal às quais restringir. Valores desconhecidos não correspondem a nada.
low, medium, high, very_high ["high"]
Tipos de fonte aos quais restringir: jobs, ads, linkedin, news, pubrio.
["jobs", "ads"]
Direções de sinal a incluir. expansion marca entrada e crescimento; os valores contraction_* marcam retração.
expansion, contraction_leading, contraction_confirming, contraction_lagging ["expansion"]
Intervalo de datas da data do evento do sinal. O valor máximo é o dia atual.
["2026-06-01", "2026-06-30"]
Registros por página. O padrão é 25, que também é o teto na maioria dos planos — o limite é o max_search_per_page da sua assinatura, retornado por Profile. Excedê-lo retorna HTTP 416 com o código 41676 (ou 41613 na busca de empresas e pessoas), não um conjunto de resultados limitado.
x <= 2525

