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": {},
"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": {},
"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: {},
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' => [
],
'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 \"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 \"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 \"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": "错误及代码会根据不同场景有所不同,详情请参阅文档。",
"details": {}
}{
"error": "请求频率超出限制。请稍后再试。"
}{
"error": "服务器在处理请求时遇到了未预料的异常。"
}创建监控
创建数据监控:一个持续运行的监视器,从你定义的公司和筛选条件中实时发现你关注的业务信号(新的招聘信息、新闻、广告或市场扩张动向),为每条匹配结果补充公司与联系人数据,并按你设定的频率发送到你的目的地(邮箱或 Webhook)。你可以逐字段配置,也可以传入 query 用一句自然语言描述整个监控,它会在同一请求中被解析为完整配置。
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": {},
"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": {},
"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: {},
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' => [
],
'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 \"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 \"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 \"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": "错误及代码会根据不同场景有所不同,详情请参阅文档。",
"details": {}
}{
"error": "请求频率超出限制。请稍后再试。"
}{
"error": "服务器在处理请求时遇到了未预料的异常。"
}请求体
- 自然语言
- 结构化字段
- 草稿
监控的自然语言描述(任意语言),例如“监控进入日本市场的公司,获取 C 级高管的工作邮箱,并实时发送提醒到 [email protected]”。它会在同一请求中被解析为下方字段(detection_mode、signal_types、signal_filters、people_enrichment_configs、destination_type/destination_config、frequency_minute)。你显式传入的任何字段都会覆盖解析出的值。若文本并非监控请求,将返回 400。最长 2000 个字符。
2000监控名称。
监控描述。
创建监控时的生命周期状态。默认为 active。使用 draft 可保存尚未完成的监控:仅需 name,校验会推迟到启用时,草稿不会运行。
draft, active, paused, inactive 信号的侦测方式。signal_first 面向市场广泛扫描;company_first 跟踪指定的客户名单,且至少需要一个公司、域名或 LinkedIn URL。创建后不可修改 —— 对已有监控修改该字段会返回 40021,请改为新建监控。
company_first, signal_first 要监控的信号类型。
jobs, news, advertisements, expansions, cloud_footprints 监控所观察的每个信号流对应一条。
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"]
}
}
]
全局公司过滤器,作为第二层应用。接受与Company Search端点相同的参数 — locations、employees、technologies、verticals 等。
{
"locations": ["US"],
"employees": [[501, 1000], [1001, 5000]]
}
要监控的公司 domain_search_id UUID 列表。主要在 company_first 模式下用于指定目标公司。也可使用 domains 或 linkedin_urls 作为替代方式 — 三者填写其一即可。
公司域名列表(如 ["openai.com", "google.com"])。可作为 companies 的替代方式 — Pubrio 会自动解析对应的公司。companies、domains、linkedin_urls 三者填写其一即可。
LinkedIn 公司主页 URL 列表(如 ["https://linkedin.com/company/pubrio"])。可作为 companies 的替代方式。三者填写其一即可。
是否在结果中增强公司数据。
是否在结果中增强人员数据。
人员增强层数组。每层执行独立的人员搜索。包含 max_people_to_return(1-25)、people_contact_types(联系类型数组,参见 Redeem 端点:email-work、email-personal、phone)和 filters(与People Search端点相同的参数)。详见人员搜索端点了解可用过滤器,Redeem 端点了解联系类型。
[
{
"filters": { "people_locations": ["US"] },
"max_people_to_return": 3,
"people_contact_types": ["email-work"]
}
]
投递目标类型。
webhook, email, sequences 目标配置。Webhook:需要 webhook_url(字符串),可选 headers(对象)和 body(对象)。Email:接受 email(字符串)或 emails(字符串数组)。sequences 类型需要 sequence_identifier(字符串),并且 is_people_search_enrolled / is_company_contact_enrolled 至少有一个设为 true。
触发频率(分钟)。最小值:0,最大值:10080,默认值:0。
0 <= x <= 10080暂停监控前的最大连续失败次数。最小值:1,最大值:10,默认值:5。
1 <= x <= 10每日最大触发次数。最小值:0,最大值:86400,默认值:500。
0 <= x <= 86400控制每次触发最多推送的记录数量。较低的值可减少每次推送的数据量,适用于结果集较大或下游系统有速率限制的场景。最小值:1,最大值:100,默认值:25。详情请参阅 配置 Webhooks。
1 <= x <= 100此监控永不投递、永不计费的公司(domain_search_id UUID)。两种检测模式都在运行时生效,早于数据增强和计费;同时出现在 companies 和此列表中的公司,在列表内期间被排除。列表上限:100,000(excluded_companies、excluded_domains、excluded_linkedin_urls 解析后的合计)。
["550e8400-e29b-41d4-a716-446655440002"]
要排除的公司域名(如 ["existing-client.com"]),解析为公司后并入 excluded_companies。
["existing-client.com"]
要排除的 LinkedIn 公司 URL,解析为公司后并入 excluded_companies。
[
"https://linkedin.com/company/existing-client"
]
一条投递记录的单位:signal(载荷为 signals[],每个信号一条)或 company(载荷为 companies[],每家公司一条,信号嵌套其中)。默认跟随 detection_mode:signal_first → signal,company_first → company。各上限(max_records_per_trigger、max_daily_records)按此单位计数。
signal, company "company"
同一家公司在此天数内最多出现在一次投递中(跨该监控的所有信号类型);窗口内已投递的公司会从后续投递中剔除,其窗口内的后续信号被跳过而非排队。0 = 关闭。默认:0。
x >= 030
优先投递最新的匹配信号。遇到单次或每日上限时保留最新的记录,监控游标仍前进到本次获取的最新一行,较旧的行被跳过而非排队。默认 false(最旧优先,不跳过)。
true
按所有者时区的自然日计算的每日投递记录硬上限(0 = 不限)。按监控的记录单位统计成功投递;单次触发最多投递剩余额度,之后监控等待到次日,游标不前进。默认:0。
x >= 0200
监控失败通知的邮箱地址。
每次触发的最大重试次数。最小值:0,最大值:3,默认值:1。
0 <= x <= 3重试间隔(秒)。最小值:1,最大值:5,默认值:1。
1 <= x <= 5可选,仅与 query 一起使用。运行反思校验以提高解析准确度(默认 true;解析延迟约翻倍)。设为 false 可获得更快的单次解析。

