curl --request POST \
--url https://api.pubrio.com/monitors/create \
--header 'Content-Type: application/json' \
--header 'pubrio-api-key: <api-key>' \
--data '
{
"query": "<string>",
"name": "<string>",
"description": "<string>",
"status": "active",
"signal_types": [],
"signal_filters": [
{
"signal_type": "jobs",
"filters": {
"locations": [
"US"
]
}
},
{
"signal_type": "news",
"filters": {
"locations": [
"US"
]
}
},
{
"signal_type": "advertisements",
"filters": {
"target_locations": [
"US"
]
}
},
{
"signal_type": "expansions",
"filters": {
"tos": [
"US"
],
"stages": [
"expanding",
"scaling"
],
"signal_types": [
"HIRE",
"EXEC"
],
"signal_strengths": [
"high",
"very_high"
]
}
}
],
"company_filters": {
"locations": [
"US"
],
"employees": [
[
501,
1000
],
[
1001,
5000
]
]
},
"companies": [
"3c90c3cc-0d44-4b50-8888-8dd25736052a"
],
"domains": [
"<string>"
],
"linkedin_urls": [
"<string>"
],
"is_company_enrichment": true,
"is_people_enrichment": true,
"people_enrichment_configs": [
{
"filters": {
"people_locations": [
"US"
]
},
"max_people_to_return": 3,
"people_contact_types": [
"email-work"
]
}
],
"destination_config": {
"webhook_url": "https://your-webhook.com/endpoint",
"headers": {
"Authorization": "Bearer token"
},
"body": {
"pipeline": "my-webhook"
}
},
"frequency_minute": 0,
"max_failure_trigger": 5,
"max_daily_trigger": 500,
"max_records_per_trigger": 25,
"excluded_companies": [
"550e8400-e29b-41d4-a716-446655440002"
],
"excluded_domains": [
"existing-client.com"
],
"excluded_linkedin_urls": [
"https://linkedin.com/company/existing-client"
],
"record_unit": "company",
"company_dedupe_days": 30,
"is_newest_first": true,
"max_daily_records": 200,
"notification_email": "[email protected]",
"max_retry_per_trigger": 1,
"retry_delay_second": 1,
"deep": true
}
'import requests
url = "https://api.pubrio.com/monitors/create"
payload = {
"query": "<string>",
"name": "<string>",
"description": "<string>",
"status": "active",
"signal_types": [],
"signal_filters": [
{
"signal_type": "jobs",
"filters": { "locations": ["US"] }
},
{
"signal_type": "news",
"filters": { "locations": ["US"] }
},
{
"signal_type": "advertisements",
"filters": { "target_locations": ["US"] }
},
{
"signal_type": "expansions",
"filters": {
"tos": ["US"],
"stages": ["expanding", "scaling"],
"signal_types": ["HIRE", "EXEC"],
"signal_strengths": ["high", "very_high"]
}
}
],
"company_filters": {
"locations": ["US"],
"employees": [[501, 1000], [1001, 5000]]
},
"companies": ["3c90c3cc-0d44-4b50-8888-8dd25736052a"],
"domains": ["<string>"],
"linkedin_urls": ["<string>"],
"is_company_enrichment": True,
"is_people_enrichment": True,
"people_enrichment_configs": [
{
"filters": { "people_locations": ["US"] },
"max_people_to_return": 3,
"people_contact_types": ["email-work"]
}
],
"destination_config": {
"webhook_url": "https://your-webhook.com/endpoint",
"headers": { "Authorization": "Bearer token" },
"body": { "pipeline": "my-webhook" }
},
"frequency_minute": 0,
"max_failure_trigger": 5,
"max_daily_trigger": 500,
"max_records_per_trigger": 25,
"excluded_companies": ["550e8400-e29b-41d4-a716-446655440002"],
"excluded_domains": ["existing-client.com"],
"excluded_linkedin_urls": ["https://linkedin.com/company/existing-client"],
"record_unit": "company",
"company_dedupe_days": 30,
"is_newest_first": True,
"max_daily_records": 200,
"notification_email": "[email protected]",
"max_retry_per_trigger": 1,
"retry_delay_second": 1,
"deep": 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({
query: '<string>',
name: '<string>',
description: '<string>',
status: 'active',
signal_types: [],
signal_filters: [
{signal_type: 'jobs', filters: {locations: ['US']}},
{signal_type: 'news', filters: {locations: ['US']}},
{signal_type: 'advertisements', filters: {target_locations: ['US']}},
{
signal_type: 'expansions',
filters: {
tos: ['US'],
stages: ['expanding', 'scaling'],
signal_types: ['HIRE', 'EXEC'],
signal_strengths: ['high', 'very_high']
}
}
],
company_filters: {locations: ['US'], employees: [[501, 1000], [1001, 5000]]},
companies: ['3c90c3cc-0d44-4b50-8888-8dd25736052a'],
domains: ['<string>'],
linkedin_urls: ['<string>'],
is_company_enrichment: true,
is_people_enrichment: true,
people_enrichment_configs: [
{
filters: {people_locations: ['US']},
max_people_to_return: 3,
people_contact_types: ['email-work']
}
],
destination_config: {
webhook_url: 'https://your-webhook.com/endpoint',
headers: {Authorization: 'Bearer token'},
body: JSON.stringify({pipeline: 'my-webhook'})
},
frequency_minute: 0,
max_failure_trigger: 5,
max_daily_trigger: 500,
max_records_per_trigger: 25,
excluded_companies: ['550e8400-e29b-41d4-a716-446655440002'],
excluded_domains: ['existing-client.com'],
excluded_linkedin_urls: ['https://linkedin.com/company/existing-client'],
record_unit: 'company',
company_dedupe_days: 30,
is_newest_first: true,
max_daily_records: 200,
notification_email: '[email protected]',
max_retry_per_trigger: 1,
retry_delay_second: 1,
deep: true
})
};
fetch('https://api.pubrio.com/monitors/create', 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/monitors/create",
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([
'query' => '<string>',
'name' => '<string>',
'description' => '<string>',
'status' => 'active',
'signal_types' => [
],
'signal_filters' => [
[
'signal_type' => 'jobs',
'filters' => [
'locations' => [
'US'
]
]
],
[
'signal_type' => 'news',
'filters' => [
'locations' => [
'US'
]
]
],
[
'signal_type' => 'advertisements',
'filters' => [
'target_locations' => [
'US'
]
]
],
[
'signal_type' => 'expansions',
'filters' => [
'tos' => [
'US'
],
'stages' => [
'expanding',
'scaling'
],
'signal_types' => [
'HIRE',
'EXEC'
],
'signal_strengths' => [
'high',
'very_high'
]
]
]
],
'company_filters' => [
'locations' => [
'US'
],
'employees' => [
[
501,
1000
],
[
1001,
5000
]
]
],
'companies' => [
'3c90c3cc-0d44-4b50-8888-8dd25736052a'
],
'domains' => [
'<string>'
],
'linkedin_urls' => [
'<string>'
],
'is_company_enrichment' => true,
'is_people_enrichment' => true,
'people_enrichment_configs' => [
[
'filters' => [
'people_locations' => [
'US'
]
],
'max_people_to_return' => 3,
'people_contact_types' => [
'email-work'
]
]
],
'destination_config' => [
'webhook_url' => 'https://your-webhook.com/endpoint',
'headers' => [
'Authorization' => 'Bearer token'
],
'body' => [
'pipeline' => 'my-webhook'
]
],
'frequency_minute' => 0,
'max_failure_trigger' => 5,
'max_daily_trigger' => 500,
'max_records_per_trigger' => 25,
'excluded_companies' => [
'550e8400-e29b-41d4-a716-446655440002'
],
'excluded_domains' => [
'existing-client.com'
],
'excluded_linkedin_urls' => [
'https://linkedin.com/company/existing-client'
],
'record_unit' => 'company',
'company_dedupe_days' => 30,
'is_newest_first' => true,
'max_daily_records' => 200,
'notification_email' => '[email protected]',
'max_retry_per_trigger' => 1,
'retry_delay_second' => 1,
'deep' => 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/monitors/create"
payload := strings.NewReader("{\n \"query\": \"<string>\",\n \"name\": \"<string>\",\n \"description\": \"<string>\",\n \"status\": \"active\",\n \"signal_types\": [],\n \"signal_filters\": [\n {\n \"signal_type\": \"jobs\",\n \"filters\": {\n \"locations\": [\n \"US\"\n ]\n }\n },\n {\n \"signal_type\": \"news\",\n \"filters\": {\n \"locations\": [\n \"US\"\n ]\n }\n },\n {\n \"signal_type\": \"advertisements\",\n \"filters\": {\n \"target_locations\": [\n \"US\"\n ]\n }\n },\n {\n \"signal_type\": \"expansions\",\n \"filters\": {\n \"tos\": [\n \"US\"\n ],\n \"stages\": [\n \"expanding\",\n \"scaling\"\n ],\n \"signal_types\": [\n \"HIRE\",\n \"EXEC\"\n ],\n \"signal_strengths\": [\n \"high\",\n \"very_high\"\n ]\n }\n }\n ],\n \"company_filters\": {\n \"locations\": [\n \"US\"\n ],\n \"employees\": [\n [\n 501,\n 1000\n ],\n [\n 1001,\n 5000\n ]\n ]\n },\n \"companies\": [\n \"3c90c3cc-0d44-4b50-8888-8dd25736052a\"\n ],\n \"domains\": [\n \"<string>\"\n ],\n \"linkedin_urls\": [\n \"<string>\"\n ],\n \"is_company_enrichment\": true,\n \"is_people_enrichment\": true,\n \"people_enrichment_configs\": [\n {\n \"filters\": {\n \"people_locations\": [\n \"US\"\n ]\n },\n \"max_people_to_return\": 3,\n \"people_contact_types\": [\n \"email-work\"\n ]\n }\n ],\n \"destination_config\": {\n \"webhook_url\": \"https://your-webhook.com/endpoint\",\n \"headers\": {\n \"Authorization\": \"Bearer token\"\n },\n \"body\": {\n \"pipeline\": \"my-webhook\"\n }\n },\n \"frequency_minute\": 0,\n \"max_failure_trigger\": 5,\n \"max_daily_trigger\": 500,\n \"max_records_per_trigger\": 25,\n \"excluded_companies\": [\n \"550e8400-e29b-41d4-a716-446655440002\"\n ],\n \"excluded_domains\": [\n \"existing-client.com\"\n ],\n \"excluded_linkedin_urls\": [\n \"https://linkedin.com/company/existing-client\"\n ],\n \"record_unit\": \"company\",\n \"company_dedupe_days\": 30,\n \"is_newest_first\": true,\n \"max_daily_records\": 200,\n \"notification_email\": \"[email protected]\",\n \"max_retry_per_trigger\": 1,\n \"retry_delay_second\": 1,\n \"deep\": 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/monitors/create")
.header("pubrio-api-key", "<api-key>")
.header("Content-Type", "application/json")
.body("{\n \"query\": \"<string>\",\n \"name\": \"<string>\",\n \"description\": \"<string>\",\n \"status\": \"active\",\n \"signal_types\": [],\n \"signal_filters\": [\n {\n \"signal_type\": \"jobs\",\n \"filters\": {\n \"locations\": [\n \"US\"\n ]\n }\n },\n {\n \"signal_type\": \"news\",\n \"filters\": {\n \"locations\": [\n \"US\"\n ]\n }\n },\n {\n \"signal_type\": \"advertisements\",\n \"filters\": {\n \"target_locations\": [\n \"US\"\n ]\n }\n },\n {\n \"signal_type\": \"expansions\",\n \"filters\": {\n \"tos\": [\n \"US\"\n ],\n \"stages\": [\n \"expanding\",\n \"scaling\"\n ],\n \"signal_types\": [\n \"HIRE\",\n \"EXEC\"\n ],\n \"signal_strengths\": [\n \"high\",\n \"very_high\"\n ]\n }\n }\n ],\n \"company_filters\": {\n \"locations\": [\n \"US\"\n ],\n \"employees\": [\n [\n 501,\n 1000\n ],\n [\n 1001,\n 5000\n ]\n ]\n },\n \"companies\": [\n \"3c90c3cc-0d44-4b50-8888-8dd25736052a\"\n ],\n \"domains\": [\n \"<string>\"\n ],\n \"linkedin_urls\": [\n \"<string>\"\n ],\n \"is_company_enrichment\": true,\n \"is_people_enrichment\": true,\n \"people_enrichment_configs\": [\n {\n \"filters\": {\n \"people_locations\": [\n \"US\"\n ]\n },\n \"max_people_to_return\": 3,\n \"people_contact_types\": [\n \"email-work\"\n ]\n }\n ],\n \"destination_config\": {\n \"webhook_url\": \"https://your-webhook.com/endpoint\",\n \"headers\": {\n \"Authorization\": \"Bearer token\"\n },\n \"body\": {\n \"pipeline\": \"my-webhook\"\n }\n },\n \"frequency_minute\": 0,\n \"max_failure_trigger\": 5,\n \"max_daily_trigger\": 500,\n \"max_records_per_trigger\": 25,\n \"excluded_companies\": [\n \"550e8400-e29b-41d4-a716-446655440002\"\n ],\n \"excluded_domains\": [\n \"existing-client.com\"\n ],\n \"excluded_linkedin_urls\": [\n \"https://linkedin.com/company/existing-client\"\n ],\n \"record_unit\": \"company\",\n \"company_dedupe_days\": 30,\n \"is_newest_first\": true,\n \"max_daily_records\": 200,\n \"notification_email\": \"[email protected]\",\n \"max_retry_per_trigger\": 1,\n \"retry_delay_second\": 1,\n \"deep\": true\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.pubrio.com/monitors/create")
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 \"query\": \"<string>\",\n \"name\": \"<string>\",\n \"description\": \"<string>\",\n \"status\": \"active\",\n \"signal_types\": [],\n \"signal_filters\": [\n {\n \"signal_type\": \"jobs\",\n \"filters\": {\n \"locations\": [\n \"US\"\n ]\n }\n },\n {\n \"signal_type\": \"news\",\n \"filters\": {\n \"locations\": [\n \"US\"\n ]\n }\n },\n {\n \"signal_type\": \"advertisements\",\n \"filters\": {\n \"target_locations\": [\n \"US\"\n ]\n }\n },\n {\n \"signal_type\": \"expansions\",\n \"filters\": {\n \"tos\": [\n \"US\"\n ],\n \"stages\": [\n \"expanding\",\n \"scaling\"\n ],\n \"signal_types\": [\n \"HIRE\",\n \"EXEC\"\n ],\n \"signal_strengths\": [\n \"high\",\n \"very_high\"\n ]\n }\n }\n ],\n \"company_filters\": {\n \"locations\": [\n \"US\"\n ],\n \"employees\": [\n [\n 501,\n 1000\n ],\n [\n 1001,\n 5000\n ]\n ]\n },\n \"companies\": [\n \"3c90c3cc-0d44-4b50-8888-8dd25736052a\"\n ],\n \"domains\": [\n \"<string>\"\n ],\n \"linkedin_urls\": [\n \"<string>\"\n ],\n \"is_company_enrichment\": true,\n \"is_people_enrichment\": true,\n \"people_enrichment_configs\": [\n {\n \"filters\": {\n \"people_locations\": [\n \"US\"\n ]\n },\n \"max_people_to_return\": 3,\n \"people_contact_types\": [\n \"email-work\"\n ]\n }\n ],\n \"destination_config\": {\n \"webhook_url\": \"https://your-webhook.com/endpoint\",\n \"headers\": {\n \"Authorization\": \"Bearer token\"\n },\n \"body\": {\n \"pipeline\": \"my-webhook\"\n }\n },\n \"frequency_minute\": 0,\n \"max_failure_trigger\": 5,\n \"max_daily_trigger\": 500,\n \"max_records_per_trigger\": 25,\n \"excluded_companies\": [\n \"550e8400-e29b-41d4-a716-446655440002\"\n ],\n \"excluded_domains\": [\n \"existing-client.com\"\n ],\n \"excluded_linkedin_urls\": [\n \"https://linkedin.com/company/existing-client\"\n ],\n \"record_unit\": \"company\",\n \"company_dedupe_days\": 30,\n \"is_newest_first\": true,\n \"max_daily_records\": 200,\n \"notification_email\": \"[email protected]\",\n \"max_retry_per_trigger\": 1,\n \"retry_delay_second\": 1,\n \"deep\": true\n}"
response = http.request(request)
puts response.read_body{
"data": {
"monitor_id": "c9cd5421-b327-4243-9cd7-8b341b3da8bd",
"name": "Expansion signals → JP",
"description": null,
"detection_mode": "signal_first",
"signal_types": [
"expansions"
],
"signal_filters": [
{
"signal_type": "expansions",
"filters": {
"tos": [
"JP"
]
}
}
],
"company_filters": {},
"company_count": 0,
"is_company_enrichment": false,
"is_people_enrichment": true,
"people_enrichment_configs": [
{
"max_people_to_return": 5,
"filters": {
"management_levels": [
"c_suite"
]
},
"people_contact_types": [
"email-work"
]
}
],
"destination_type": "email",
"destination_config": {
"emails": [
"[email protected]"
]
},
"frequency_minute": 5,
"notification_email": null,
"max_retry_per_trigger": 3,
"retry_delay_second": 60,
"max_records_per_trigger": 100,
"max_daily_trigger": 24,
"max_failure_trigger": 5,
"excluded_company_count": 0,
"record_unit": null,
"company_dedupe_days": 0,
"max_daily_records": 0,
"is_newest_first": false,
"status": "active",
"masked_signature": "5••••••••••••••8b8",
"created_at": "2026-07-16T10:27:40.469Z",
"signature": "52209a0d-f1c8-4111-a685-ac86edc678b8"
}
}{
"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."
}Créer un moniteur
Créez un moniteur de données : une surveillance permanente qui fait remonter en continu les signaux business qui vous intéressent — nouvelles offres d’emploi, actualités, publicités ou mouvements d’expansion de marché — à partir des entreprises et des filtres que vous définissez, enrichit chaque correspondance avec des données d’entreprise et de contact, et les livre à votre destination (e-mail ou webhook) selon le calendrier que vous avez choisi. Configurez-le champ par champ, ou décrivez l’ensemble du moniteur en une phrase en langage naturel avec query, qui est alors interprétée dans la configuration au sein de la même requête.
curl --request POST \
--url https://api.pubrio.com/monitors/create \
--header 'Content-Type: application/json' \
--header 'pubrio-api-key: <api-key>' \
--data '
{
"query": "<string>",
"name": "<string>",
"description": "<string>",
"status": "active",
"signal_types": [],
"signal_filters": [
{
"signal_type": "jobs",
"filters": {
"locations": [
"US"
]
}
},
{
"signal_type": "news",
"filters": {
"locations": [
"US"
]
}
},
{
"signal_type": "advertisements",
"filters": {
"target_locations": [
"US"
]
}
},
{
"signal_type": "expansions",
"filters": {
"tos": [
"US"
],
"stages": [
"expanding",
"scaling"
],
"signal_types": [
"HIRE",
"EXEC"
],
"signal_strengths": [
"high",
"very_high"
]
}
}
],
"company_filters": {
"locations": [
"US"
],
"employees": [
[
501,
1000
],
[
1001,
5000
]
]
},
"companies": [
"3c90c3cc-0d44-4b50-8888-8dd25736052a"
],
"domains": [
"<string>"
],
"linkedin_urls": [
"<string>"
],
"is_company_enrichment": true,
"is_people_enrichment": true,
"people_enrichment_configs": [
{
"filters": {
"people_locations": [
"US"
]
},
"max_people_to_return": 3,
"people_contact_types": [
"email-work"
]
}
],
"destination_config": {
"webhook_url": "https://your-webhook.com/endpoint",
"headers": {
"Authorization": "Bearer token"
},
"body": {
"pipeline": "my-webhook"
}
},
"frequency_minute": 0,
"max_failure_trigger": 5,
"max_daily_trigger": 500,
"max_records_per_trigger": 25,
"excluded_companies": [
"550e8400-e29b-41d4-a716-446655440002"
],
"excluded_domains": [
"existing-client.com"
],
"excluded_linkedin_urls": [
"https://linkedin.com/company/existing-client"
],
"record_unit": "company",
"company_dedupe_days": 30,
"is_newest_first": true,
"max_daily_records": 200,
"notification_email": "[email protected]",
"max_retry_per_trigger": 1,
"retry_delay_second": 1,
"deep": true
}
'import requests
url = "https://api.pubrio.com/monitors/create"
payload = {
"query": "<string>",
"name": "<string>",
"description": "<string>",
"status": "active",
"signal_types": [],
"signal_filters": [
{
"signal_type": "jobs",
"filters": { "locations": ["US"] }
},
{
"signal_type": "news",
"filters": { "locations": ["US"] }
},
{
"signal_type": "advertisements",
"filters": { "target_locations": ["US"] }
},
{
"signal_type": "expansions",
"filters": {
"tos": ["US"],
"stages": ["expanding", "scaling"],
"signal_types": ["HIRE", "EXEC"],
"signal_strengths": ["high", "very_high"]
}
}
],
"company_filters": {
"locations": ["US"],
"employees": [[501, 1000], [1001, 5000]]
},
"companies": ["3c90c3cc-0d44-4b50-8888-8dd25736052a"],
"domains": ["<string>"],
"linkedin_urls": ["<string>"],
"is_company_enrichment": True,
"is_people_enrichment": True,
"people_enrichment_configs": [
{
"filters": { "people_locations": ["US"] },
"max_people_to_return": 3,
"people_contact_types": ["email-work"]
}
],
"destination_config": {
"webhook_url": "https://your-webhook.com/endpoint",
"headers": { "Authorization": "Bearer token" },
"body": { "pipeline": "my-webhook" }
},
"frequency_minute": 0,
"max_failure_trigger": 5,
"max_daily_trigger": 500,
"max_records_per_trigger": 25,
"excluded_companies": ["550e8400-e29b-41d4-a716-446655440002"],
"excluded_domains": ["existing-client.com"],
"excluded_linkedin_urls": ["https://linkedin.com/company/existing-client"],
"record_unit": "company",
"company_dedupe_days": 30,
"is_newest_first": True,
"max_daily_records": 200,
"notification_email": "[email protected]",
"max_retry_per_trigger": 1,
"retry_delay_second": 1,
"deep": 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({
query: '<string>',
name: '<string>',
description: '<string>',
status: 'active',
signal_types: [],
signal_filters: [
{signal_type: 'jobs', filters: {locations: ['US']}},
{signal_type: 'news', filters: {locations: ['US']}},
{signal_type: 'advertisements', filters: {target_locations: ['US']}},
{
signal_type: 'expansions',
filters: {
tos: ['US'],
stages: ['expanding', 'scaling'],
signal_types: ['HIRE', 'EXEC'],
signal_strengths: ['high', 'very_high']
}
}
],
company_filters: {locations: ['US'], employees: [[501, 1000], [1001, 5000]]},
companies: ['3c90c3cc-0d44-4b50-8888-8dd25736052a'],
domains: ['<string>'],
linkedin_urls: ['<string>'],
is_company_enrichment: true,
is_people_enrichment: true,
people_enrichment_configs: [
{
filters: {people_locations: ['US']},
max_people_to_return: 3,
people_contact_types: ['email-work']
}
],
destination_config: {
webhook_url: 'https://your-webhook.com/endpoint',
headers: {Authorization: 'Bearer token'},
body: JSON.stringify({pipeline: 'my-webhook'})
},
frequency_minute: 0,
max_failure_trigger: 5,
max_daily_trigger: 500,
max_records_per_trigger: 25,
excluded_companies: ['550e8400-e29b-41d4-a716-446655440002'],
excluded_domains: ['existing-client.com'],
excluded_linkedin_urls: ['https://linkedin.com/company/existing-client'],
record_unit: 'company',
company_dedupe_days: 30,
is_newest_first: true,
max_daily_records: 200,
notification_email: '[email protected]',
max_retry_per_trigger: 1,
retry_delay_second: 1,
deep: true
})
};
fetch('https://api.pubrio.com/monitors/create', 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/monitors/create",
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([
'query' => '<string>',
'name' => '<string>',
'description' => '<string>',
'status' => 'active',
'signal_types' => [
],
'signal_filters' => [
[
'signal_type' => 'jobs',
'filters' => [
'locations' => [
'US'
]
]
],
[
'signal_type' => 'news',
'filters' => [
'locations' => [
'US'
]
]
],
[
'signal_type' => 'advertisements',
'filters' => [
'target_locations' => [
'US'
]
]
],
[
'signal_type' => 'expansions',
'filters' => [
'tos' => [
'US'
],
'stages' => [
'expanding',
'scaling'
],
'signal_types' => [
'HIRE',
'EXEC'
],
'signal_strengths' => [
'high',
'very_high'
]
]
]
],
'company_filters' => [
'locations' => [
'US'
],
'employees' => [
[
501,
1000
],
[
1001,
5000
]
]
],
'companies' => [
'3c90c3cc-0d44-4b50-8888-8dd25736052a'
],
'domains' => [
'<string>'
],
'linkedin_urls' => [
'<string>'
],
'is_company_enrichment' => true,
'is_people_enrichment' => true,
'people_enrichment_configs' => [
[
'filters' => [
'people_locations' => [
'US'
]
],
'max_people_to_return' => 3,
'people_contact_types' => [
'email-work'
]
]
],
'destination_config' => [
'webhook_url' => 'https://your-webhook.com/endpoint',
'headers' => [
'Authorization' => 'Bearer token'
],
'body' => [
'pipeline' => 'my-webhook'
]
],
'frequency_minute' => 0,
'max_failure_trigger' => 5,
'max_daily_trigger' => 500,
'max_records_per_trigger' => 25,
'excluded_companies' => [
'550e8400-e29b-41d4-a716-446655440002'
],
'excluded_domains' => [
'existing-client.com'
],
'excluded_linkedin_urls' => [
'https://linkedin.com/company/existing-client'
],
'record_unit' => 'company',
'company_dedupe_days' => 30,
'is_newest_first' => true,
'max_daily_records' => 200,
'notification_email' => '[email protected]',
'max_retry_per_trigger' => 1,
'retry_delay_second' => 1,
'deep' => 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/monitors/create"
payload := strings.NewReader("{\n \"query\": \"<string>\",\n \"name\": \"<string>\",\n \"description\": \"<string>\",\n \"status\": \"active\",\n \"signal_types\": [],\n \"signal_filters\": [\n {\n \"signal_type\": \"jobs\",\n \"filters\": {\n \"locations\": [\n \"US\"\n ]\n }\n },\n {\n \"signal_type\": \"news\",\n \"filters\": {\n \"locations\": [\n \"US\"\n ]\n }\n },\n {\n \"signal_type\": \"advertisements\",\n \"filters\": {\n \"target_locations\": [\n \"US\"\n ]\n }\n },\n {\n \"signal_type\": \"expansions\",\n \"filters\": {\n \"tos\": [\n \"US\"\n ],\n \"stages\": [\n \"expanding\",\n \"scaling\"\n ],\n \"signal_types\": [\n \"HIRE\",\n \"EXEC\"\n ],\n \"signal_strengths\": [\n \"high\",\n \"very_high\"\n ]\n }\n }\n ],\n \"company_filters\": {\n \"locations\": [\n \"US\"\n ],\n \"employees\": [\n [\n 501,\n 1000\n ],\n [\n 1001,\n 5000\n ]\n ]\n },\n \"companies\": [\n \"3c90c3cc-0d44-4b50-8888-8dd25736052a\"\n ],\n \"domains\": [\n \"<string>\"\n ],\n \"linkedin_urls\": [\n \"<string>\"\n ],\n \"is_company_enrichment\": true,\n \"is_people_enrichment\": true,\n \"people_enrichment_configs\": [\n {\n \"filters\": {\n \"people_locations\": [\n \"US\"\n ]\n },\n \"max_people_to_return\": 3,\n \"people_contact_types\": [\n \"email-work\"\n ]\n }\n ],\n \"destination_config\": {\n \"webhook_url\": \"https://your-webhook.com/endpoint\",\n \"headers\": {\n \"Authorization\": \"Bearer token\"\n },\n \"body\": {\n \"pipeline\": \"my-webhook\"\n }\n },\n \"frequency_minute\": 0,\n \"max_failure_trigger\": 5,\n \"max_daily_trigger\": 500,\n \"max_records_per_trigger\": 25,\n \"excluded_companies\": [\n \"550e8400-e29b-41d4-a716-446655440002\"\n ],\n \"excluded_domains\": [\n \"existing-client.com\"\n ],\n \"excluded_linkedin_urls\": [\n \"https://linkedin.com/company/existing-client\"\n ],\n \"record_unit\": \"company\",\n \"company_dedupe_days\": 30,\n \"is_newest_first\": true,\n \"max_daily_records\": 200,\n \"notification_email\": \"[email protected]\",\n \"max_retry_per_trigger\": 1,\n \"retry_delay_second\": 1,\n \"deep\": 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/monitors/create")
.header("pubrio-api-key", "<api-key>")
.header("Content-Type", "application/json")
.body("{\n \"query\": \"<string>\",\n \"name\": \"<string>\",\n \"description\": \"<string>\",\n \"status\": \"active\",\n \"signal_types\": [],\n \"signal_filters\": [\n {\n \"signal_type\": \"jobs\",\n \"filters\": {\n \"locations\": [\n \"US\"\n ]\n }\n },\n {\n \"signal_type\": \"news\",\n \"filters\": {\n \"locations\": [\n \"US\"\n ]\n }\n },\n {\n \"signal_type\": \"advertisements\",\n \"filters\": {\n \"target_locations\": [\n \"US\"\n ]\n }\n },\n {\n \"signal_type\": \"expansions\",\n \"filters\": {\n \"tos\": [\n \"US\"\n ],\n \"stages\": [\n \"expanding\",\n \"scaling\"\n ],\n \"signal_types\": [\n \"HIRE\",\n \"EXEC\"\n ],\n \"signal_strengths\": [\n \"high\",\n \"very_high\"\n ]\n }\n }\n ],\n \"company_filters\": {\n \"locations\": [\n \"US\"\n ],\n \"employees\": [\n [\n 501,\n 1000\n ],\n [\n 1001,\n 5000\n ]\n ]\n },\n \"companies\": [\n \"3c90c3cc-0d44-4b50-8888-8dd25736052a\"\n ],\n \"domains\": [\n \"<string>\"\n ],\n \"linkedin_urls\": [\n \"<string>\"\n ],\n \"is_company_enrichment\": true,\n \"is_people_enrichment\": true,\n \"people_enrichment_configs\": [\n {\n \"filters\": {\n \"people_locations\": [\n \"US\"\n ]\n },\n \"max_people_to_return\": 3,\n \"people_contact_types\": [\n \"email-work\"\n ]\n }\n ],\n \"destination_config\": {\n \"webhook_url\": \"https://your-webhook.com/endpoint\",\n \"headers\": {\n \"Authorization\": \"Bearer token\"\n },\n \"body\": {\n \"pipeline\": \"my-webhook\"\n }\n },\n \"frequency_minute\": 0,\n \"max_failure_trigger\": 5,\n \"max_daily_trigger\": 500,\n \"max_records_per_trigger\": 25,\n \"excluded_companies\": [\n \"550e8400-e29b-41d4-a716-446655440002\"\n ],\n \"excluded_domains\": [\n \"existing-client.com\"\n ],\n \"excluded_linkedin_urls\": [\n \"https://linkedin.com/company/existing-client\"\n ],\n \"record_unit\": \"company\",\n \"company_dedupe_days\": 30,\n \"is_newest_first\": true,\n \"max_daily_records\": 200,\n \"notification_email\": \"[email protected]\",\n \"max_retry_per_trigger\": 1,\n \"retry_delay_second\": 1,\n \"deep\": true\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.pubrio.com/monitors/create")
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 \"query\": \"<string>\",\n \"name\": \"<string>\",\n \"description\": \"<string>\",\n \"status\": \"active\",\n \"signal_types\": [],\n \"signal_filters\": [\n {\n \"signal_type\": \"jobs\",\n \"filters\": {\n \"locations\": [\n \"US\"\n ]\n }\n },\n {\n \"signal_type\": \"news\",\n \"filters\": {\n \"locations\": [\n \"US\"\n ]\n }\n },\n {\n \"signal_type\": \"advertisements\",\n \"filters\": {\n \"target_locations\": [\n \"US\"\n ]\n }\n },\n {\n \"signal_type\": \"expansions\",\n \"filters\": {\n \"tos\": [\n \"US\"\n ],\n \"stages\": [\n \"expanding\",\n \"scaling\"\n ],\n \"signal_types\": [\n \"HIRE\",\n \"EXEC\"\n ],\n \"signal_strengths\": [\n \"high\",\n \"very_high\"\n ]\n }\n }\n ],\n \"company_filters\": {\n \"locations\": [\n \"US\"\n ],\n \"employees\": [\n [\n 501,\n 1000\n ],\n [\n 1001,\n 5000\n ]\n ]\n },\n \"companies\": [\n \"3c90c3cc-0d44-4b50-8888-8dd25736052a\"\n ],\n \"domains\": [\n \"<string>\"\n ],\n \"linkedin_urls\": [\n \"<string>\"\n ],\n \"is_company_enrichment\": true,\n \"is_people_enrichment\": true,\n \"people_enrichment_configs\": [\n {\n \"filters\": {\n \"people_locations\": [\n \"US\"\n ]\n },\n \"max_people_to_return\": 3,\n \"people_contact_types\": [\n \"email-work\"\n ]\n }\n ],\n \"destination_config\": {\n \"webhook_url\": \"https://your-webhook.com/endpoint\",\n \"headers\": {\n \"Authorization\": \"Bearer token\"\n },\n \"body\": {\n \"pipeline\": \"my-webhook\"\n }\n },\n \"frequency_minute\": 0,\n \"max_failure_trigger\": 5,\n \"max_daily_trigger\": 500,\n \"max_records_per_trigger\": 25,\n \"excluded_companies\": [\n \"550e8400-e29b-41d4-a716-446655440002\"\n ],\n \"excluded_domains\": [\n \"existing-client.com\"\n ],\n \"excluded_linkedin_urls\": [\n \"https://linkedin.com/company/existing-client\"\n ],\n \"record_unit\": \"company\",\n \"company_dedupe_days\": 30,\n \"is_newest_first\": true,\n \"max_daily_records\": 200,\n \"notification_email\": \"[email protected]\",\n \"max_retry_per_trigger\": 1,\n \"retry_delay_second\": 1,\n \"deep\": true\n}"
response = http.request(request)
puts response.read_body{
"data": {
"monitor_id": "c9cd5421-b327-4243-9cd7-8b341b3da8bd",
"name": "Expansion signals → JP",
"description": null,
"detection_mode": "signal_first",
"signal_types": [
"expansions"
],
"signal_filters": [
{
"signal_type": "expansions",
"filters": {
"tos": [
"JP"
]
}
}
],
"company_filters": {},
"company_count": 0,
"is_company_enrichment": false,
"is_people_enrichment": true,
"people_enrichment_configs": [
{
"max_people_to_return": 5,
"filters": {
"management_levels": [
"c_suite"
]
},
"people_contact_types": [
"email-work"
]
}
],
"destination_type": "email",
"destination_config": {
"emails": [
"[email protected]"
]
},
"frequency_minute": 5,
"notification_email": null,
"max_retry_per_trigger": 3,
"retry_delay_second": 60,
"max_records_per_trigger": 100,
"max_daily_trigger": 24,
"max_failure_trigger": 5,
"excluded_company_count": 0,
"record_unit": null,
"company_dedupe_days": 0,
"max_daily_records": 0,
"is_newest_first": false,
"status": "active",
"masked_signature": "5••••••••••••••8b8",
"created_at": "2026-07-16T10:27:40.469Z",
"signature": "52209a0d-f1c8-4111-a685-ac86edc678b8"
}
}{
"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
- Natural language
- Structured fields
- Draft
Description en langage naturel du moniteur (dans n'importe quelle langue), par exemple : « surveiller les entreprises qui s'implantent au Japon, obtenir les cadres dirigeants avec leur e-mail professionnel, et envoyer des alertes par e-mail à [email protected] en temps réel ». Elle est interprétée dans les champs ci-dessous (detection_mode, signal_types, signal_filters, people_enrichment_configs, destination_type/destination_config, frequency_minute) au sein de la même requête. Tout champ également transmis explicitement remplace la valeur interprétée. Si le texte ne constitue pas une demande de moniteur, l'appel renvoie 400. Limité à 2000 caractères.
2000Nom du monitor.
Description du monitor.
Statut de cycle de vie avec lequel créer le monitor. Par défaut sur active. Utilisez draft pour enregistrer un monitor à moitié construit : seul name est requis, la validation est différée jusqu'à son activation, et un brouillon ne s'exécute jamais.
draft, active, paused, inactive Comment les signaux sont détectés. signal_first scanne largement le marché ; company_first suit une liste de comptes nommés et nécessite au moins une entreprise, un domaine ou une URL LinkedIn. Immuable après la création — le modifier sur un monitor existant renvoie 40021. Créez plutôt un nouveau monitor.
company_first, signal_first Types de signaux à surveiller.
jobs, news, advertisements, expansions, cloud_footprints Une entrée par flux de signal que le monitor surveille.
Show child attributes
Show child attributes
[ { "signal_type": "jobs", "filters": { "locations": ["US"] } }, { "signal_type": "news", "filters": { "locations": ["US"] } }, { "signal_type": "advertisements", "filters": { "target_locations": ["US"] } }, { "signal_type": "expansions", "filters": { "tos": ["US"], "stages": ["expanding", "scaling"], "signal_types": ["HIRE", "EXEC"], "signal_strengths": ["high", "very_high"] } } ]
Filtres d'entreprise globaux appliqués comme seconde couche sur tous les types de signaux. Accepte les mêmes paramètres que le point de terminaison Company Search — localisations, effectifs, technologies, secteurs, et plus.
{ "locations": ["US"], "employees": [[501, 1000], [1001, 5000]] }
Liste d'UUID domain_search_id d'entreprises à surveiller. Utilisé principalement en mode company_first pour préciser les entreprises cibles. Vous pouvez aussi utiliser domains ou linkedin_urls comme alternatives — un seul des trois est requis.
Liste de domaines d'entreprise à surveiller (par ex. ["openai.com", "google.com"]). Alternative à companies — Pubrio les résout vers les entreprises correspondantes. Un seul de companies, domains, ou linkedin_urls est requis.
Liste d'URL d'entreprise LinkedIn à surveiller (par ex. ["https://linkedin.com/company/pubrio"]). Alternative à companies — Pubrio les résout vers les entreprises correspondantes. Un seul de companies, domains, ou linkedin_urls est requis.
Indique s'il faut enrichir les données d'entreprise dans les résultats.
Indique s'il faut enrichir les données de personnes dans les résultats.
Tableau de couches d'enrichissement de personnes. Chaque couche exécute une recherche de personnes indépendante. Contient max_people_to_return (1-25), people_contact_types (tableau — fait référence aux types de contact Redeem : email-work, email-personal, phone), et filters (mêmes paramètres que le point de terminaison People Search).
[ { "filters": { "people_locations": ["US"] }, "max_people_to_return": 3, "people_contact_types": ["email-work"] } ]
Type de destination de livraison.
webhook, email, sequences Configuration de la destination. Pour webhook : nécessite webhook_url (chaîne), headers (objet) et body (objet) optionnels. Pour email : accepte email (chaîne) ou emails (tableau de chaînes). Pour sequences : nécessite sequence_identifier (chaîne) plus au moins un de is_people_search_enrolled / is_company_contact_enrolled défini sur true.
{ "webhook_url": "https://your-webhook.com/endpoint", "headers": { "Authorization": "Bearer token" }, "body": { "pipeline": "my-webhook" } }
Fréquence de déclenchement en minutes. Min : 0, Max : 10080, Par défaut : 0.
0 <= x <= 10080Nombre maximal d'échecs consécutifs avant la mise en pause du moniteur. Min : 1, Max : 10, Par défaut : 5.
1 <= x <= 10Nombre maximal de déclenchements par jour. Min : 0, Max : 86400, Par défaut : 500.
0 <= x <= 86400Contrôle le nombre maximal d'enregistrements livrés par déclenchement. Des valeurs plus faibles réduisent la taille de la charge utile par livraison, ce qui est recommandé pour les jeux de résultats volumineux ou les intégrations à débit limité. Min : 1, Max : 100, Par défaut : 25. Consultez Configuration des webhooks pour plus d'indications.
1 <= x <= 100Entreprises que ce moniteur ne livre ni ne facture jamais, sous forme d'UUID domain_search_id. Appliqué dans les deux modes de détection à l'exécution, avant l'enrichissement et la facturation ; une entreprise présente à la fois dans companies et dans cette liste est exclue tant qu'elle reste sur la liste. Taille maximale : 100 000 (ids résolus entre excluded_companies, excluded_domains et excluded_linkedin_urls).
["550e8400-e29b-41d4-a716-446655440002"]
Domaines d'entreprise à exclure (ex. ["existing-client.com"]). Résolus en entreprises et fusionnés dans excluded_companies.
["existing-client.com"]
URL d'entreprise LinkedIn à exclure. Résolues en entreprises et fusionnées dans excluded_companies.
[ "https://linkedin.com/company/existing-client" ]
Ce qu'est un enregistrement livré : signal (payload signals[], une entrée par signal) ou company (payload companies[], une entrée par entreprise avec ses signaux imbriqués). Par défaut suit detection_mode : signal_first → signal, company_first → company. Les plafonds (max_records_per_trigger, max_daily_records) comptent cette unité.
signal, company "company"
Une entreprise apparaît dans au plus une livraison par ce nombre de jours, tous types de signaux du moniteur confondus ; une entreprise livrée dans la fenêtre est écartée des livraisons suivantes et ses signaux suivants dans la fenêtre sont ignorés, pas mis en attente. 0 = désactivé. Par défaut : 0.
x >= 030
Livrer d'abord les signaux correspondants les plus récents. Avec un plafond par déclenchement ou quotidien, les enregistrements les plus récents sont gardés et le curseur du moniteur avance quand même jusqu'à la ligne la plus récente récupérée ; les lignes plus anciennes sont ignorées, jamais mises en attente. Par défaut false (les plus anciennes d'abord, rien d'ignoré).
true
Plafond strict d'enregistrements livrés par jour civil dans le fuseau du propriétaire (0 = illimité). Compté dans l'unité d'enregistrement du moniteur sur les livraisons réussies ; un déclenchement livre au plus le budget restant, puis le moniteur attend le lendemain sans déplacer son curseur. Par défaut : 0.
x >= 0200
Adresse e-mail pour les notifications d'échec du moniteur.
Nombre maximal de nouvelles tentatives par déclenchement. Min : 0, Max : 3, Par défaut : 1.
0 <= x <= 3Délai entre les tentatives, en secondes. Min : 1, Max : 5, Par défaut : 1.
1 <= x <= 5Facultatif, utilisé uniquement avec query. Exécute la passe de réflexion pour une meilleure précision d'interprétation (valeur par défaut : true ; double environ la latence d'interprétation). Définissez false pour une passe unique plus rapide.

