跳转到主要内容
POST
/
monitors
/
webhook
/
validate
验证监控 Webhook
curl --request POST \
  --url https://api.pubrio.com/monitors/webhook/validate \
  --header 'Content-Type: application/json' \
  --header 'pubrio-api-key: <api-key>' \
  --data '
{
  "destination_type": "webhook",
  "destination_config": {
    "webhook_url": "https://your-webhook.com/endpoint",
    "headers": {
      "Authorization": "Bearer token"
    },
    "body": {
      "pipeline": "my-webhook"
    }
  },
  "monitor_id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
  "name": "<string>",
  "description": "<string>",
  "detection_mode": "company_first",
  "signal_types": [
    "jobs"
  ],
  "signal_filters": [
    {
      "filters": {
        "locations": [
          "US"
        ]
      },
      "signal_type": "jobs"
    },
    {
      "filters": {
        "locations": [
          "US"
        ]
      },
      "signal_type": "news"
    },
    {
      "filters": {
        "target_locations": [
          "US"
        ]
      },
      "signal_type": "advertisements"
    }
  ],
  "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"
      ]
    }
  ],
  "frequency_minute": 5040,
  "max_failure_trigger": 5,
  "max_daily_trigger": 43200,
  "max_records_per_trigger": 50,
  "notification_email": "[email protected]",
  "max_retry_per_trigger": 1,
  "retry_delay_second": 3,
  "profile_id": 123
}
'
{
  "data": {
    "destination_config": {
      "webhook_url": "https://usewebhook.com/example",
      "headers": {
        "X-Custom-Auth": "your-token"
      },
      "body": {
        "source": "pubrio"
      }
    },
    "request_payload": {
      "monitor": {
        "monitor_id": "a1b2c3d4-e5f6-7890-abcd-ef1234567890",
        "name": "My Monitor",
        "detection_mode": "signal_first",
        "signal_types": [
          "jobs",
          "news",
          "advertisements"
        ],
        "signal_filters": [
          "..."
        ],
        "company_filters": {
          "...": "..."
        },
        "is_company_enrichment": true,
        "is_people_enrichment": true,
        "people_enrichment_configs": [
          "..."
        ]
      },
      "metadata": {
        "total_signals": 3,
        "total_companies": 1,
        "total_people": 0
      },
      "triggered_at": "2026-04-05T22:43:06.973Z",
      "signals": [
        {
          "signal_type": "jobs",
          "signal": {
            "signal_type": "jobs",
            "job_search_id": "...",
            "companies": [
              "..."
            ]
          },
          "companies": [
            "..."
          ]
        },
        "..."
      ],
      "source": "pubrio"
    },
    "response_payload": "OK"
  }
}

授权

pubrio-api-key
string
header
必填

一个唯一的 API 令牌,用于标识您通过 API 执行的操作以及相应的权限和操作。您可以在 设置 部分创建该令牌。

请求体

application/json
destination_type
enum<string>
必填

投递目标类型。

可用选项:
webhook,
email,
sequences
destination_config
object
必填

目标配置。Webhook:需要 webhook_url(字符串),可选 headers(对象)和 body(对象)。Email:需要 email(字符串)。sequences 类型需要 sequence_identifier(字符串)和 record_type(字符串)。

示例:
{
"webhook_url": "https://your-webhook.com/endpoint",
"headers": { "Authorization": "Bearer token" },
"body": { "pipeline": "my-webhook" }
}
monitor_id
string<uuid>

现有监控的唯一标识符(用于测试)。测试新配置时为可选。

name
string

监控名称。

description
string

监控描述。

detection_mode
enum<string>

检测模式。

可用选项:
company_first,
signal_first
signal_types
enum<string>[]

要监控的信号类型。

可用选项:
jobs,
news,
advertisements
signal_filters
object[]

信号过滤器对象数组。每个对象包含 signal_typefilters。请参见 Job SearchNews SearchAdvertisement Search 了解过滤器参数。

示例:
[
{
"filters": { "locations": ["US"] },
"signal_type": "jobs"
},
{
"filters": { "locations": ["US"] },
"signal_type": "news"
},
{
"filters": { "target_locations": ["US"] },
"signal_type": "advertisements"
}
]
company_filters
object

全局公司过滤器。接受与Company Search端点相同的参数。

示例:
{
"locations": ["US"],
"employees": [[501, 1000], [1001, 5000]]
}
companies
string<uuid>[]

要监控的公司 domain_search_id UUID 列表。也可使用 domainslinkedin_urls 作为替代方式。

domains
string[]

公司域名列表。companies 的替代方式。

linkedin_urls
string<uri>[]

LinkedIn 公司网址列表。companies 的替代方式。

is_company_enrichment
boolean

是否增强公司数据。

is_people_enrichment
boolean

是否增强人员数据。

people_enrichment_configs
object[]

人员增强层数组。包含 max_people_to_return(1-25)、people_contact_types(参见 Redeem)和 filters(参见 People Search)。

示例:
[
{
"filters": { "people_locations": ["US"] },
"max_people_to_return": 3,
"people_contact_types": ["email-work"]
}
]
frequency_minute
integer

触发频率(分钟)。最小值:0,最大值:10080。

必填范围: 0 <= x <= 10080
max_failure_trigger
integer

暂停前的最大连续失败次数。最小值:1,最大值:10。

必填范围: 1 <= x <= 10
max_daily_trigger
integer

每日最大触发次数。最小值:0,最大值:86400。

必填范围: 0 <= x <= 86400
max_records_per_trigger
integer

控制每次触发最多推送的记录数量。较低的值可减少每次推送的数据量,适用于结果集较大或下游系统有速率限制的场景。最小值:1,最大值:100,默认值:25。详情请参阅 配置 Webhooks

必填范围: 1 <= x <= 100
notification_email
string<email>

失败通知邮箱。

max_retry_per_trigger
integer

每次触发的最大重试次数。最小值:0,最大值:3。

必填范围: 0 <= x <= 3
retry_delay_second
integer

重试间隔(秒)。最小值:1,最大值:5。

必填范围: 1 <= x <= 5
profile_id
integer

可选。发起请求的团队标识符。由于 API 密钥已包含您的工作区信息,此参数不再是必填项。如果提供,该 ID 有助于将查找与特定团队(工作区)关联,实现数据检索和额度追踪。

更多信息请参见团队标签下的 user details 端点。

响应

成功响应,包含 webhook 验证结果,包括目标配置和测试请求/响应负载。

data
object