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": "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."
}Recherche de signaux d'expansion
Lignes brutes et paginées de signaux d’expansion — les preuves datées à l’origine de l’étape de chaque entreprise, avec la source et l’URL de la preuve.
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": "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."
}Autorisations
Corps
Entreprises auxquelles restreindre la recherche, par domain_search_id.
["8f3c1b04-2e7a-4d19-9c55-6ab21f0e7d3c"]
Renvoie uniquement les signaux actifs (true) ou uniquement les signaux rétractés (false). Omettez pour obtenir les deux.
true
Marchés cibles auxquels restreindre la recherche, sous forme de codes ISO 3166-1 alpha-2.
["US", "GB"]
Types de signaux auxquels restreindre la recherche. Les valeurs inconnues ne correspondent à rien.
AD, AUDIENCE, DNS, ENTITY, EVENT, EVENT_PLUS, EXEC, HIRE, INFRA, IP, NEWS, OFFICE, PARTNER, PRODUCT, REG, SCALE, TECH ["EXEC", "HIRE"]
Sous-types de signaux auxquels restreindre la recherche. Les valeurs inconnues ne correspondent à rien.
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"]
Intensités de signal auxquelles restreindre la recherche. Les valeurs inconnues ne correspondent à rien.
low, medium, high, very_high ["high"]
Types de sources auxquels restreindre la recherche : jobs, ads, linkedin, news, pubrio.
["jobs", "ads"]
Directions de signal à inclure. expansion marque une entrée ou une croissance ; les valeurs contraction_* marquent un repli.
expansion, contraction_leading, contraction_confirming, contraction_lagging ["expansion"]
Plage de dates de la date de l'événement du signal. La valeur maximale est le jour actuel.
["2026-06-01", "2026-06-30"]
Enregistrements par page. Par défaut 25, ce qui constitue également le plafond sur la plupart des forfaits — la limite correspond au max_search_per_page de votre abonnement, renvoyé par Profile. Le dépasser renvoie HTTP 416 avec le code 41676 (ou 41613 pour la recherche d'entreprises et de personnes), et non un ensemble de résultats tronqué.
x <= 2525

