البحث في إشارات تسليم مقسّم إلى صفحات
curl --request POST \
--url https://api.pubrio.com/monitors/signals/search \
--header 'Content-Type: application/json' \
--header 'pubrio-api-key: <api-key>' \
--data '
{
"page_token": "<string>"
}
'import requests
url = "https://api.pubrio.com/monitors/signals/search"
payload = { "page_token": "<string>" }
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({page_token: '<string>'})
};
fetch('https://api.pubrio.com/monitors/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/monitors/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([
'page_token' => '<string>'
]),
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/signals/search"
payload := strings.NewReader("{\n \"page_token\": \"<string>\"\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/signals/search")
.header("pubrio-api-key", "<api-key>")
.header("Content-Type", "application/json")
.body("{\n \"page_token\": \"<string>\"\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.pubrio.com/monitors/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 \"page_token\": \"<string>\"\n}"
response = http.request(request)
puts response.read_body{
"metadata": {
"monitor_log_id": "516b72de-79d5-400b-9bae-423a43eca98b",
"page_token": "c2b1…"
},
"data": {
"monitor": {
"monitor_id": "c9cd5421-b327-4243-9cd7-8b341b3da8bd",
"name": "Weekly CFO hires",
"detection_mode": "signal_first",
"record_unit": "signal"
},
"metadata": {
"monitor_log_id": "516b72de-79d5-400b-9bae-423a43eca98b",
"parent_monitor_log_id": null,
"total_signals": 25,
"total_companies": 25,
"total_people": 0,
"window": {
"from": "2026-10-10T02:09:00.000Z",
"to": "2026-10-17T06:09:56.270Z",
"next_page_token": "eyJhbGciOi…"
}
},
"triggered_at": "2026-10-17T06:20:11.002Z",
"signals": [],
"pagination": {
"page": 2,
"per_page": 25,
"total_entries": 395,
"total_pages": 16,
"total_display_pages": 16,
"is_timeout": false,
"is_estimated": 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."
}المعالجة
بحث إشارات Monitor
يقرأ الصفحة التالية من تسليم مقسّم إلى صفحات (is_paged_delivery: true). تُثبَّت النافذة لحظة التشغيل: تحتوي الصفحة على إشارات تلك النافذة فقط، وفق الفلاتر الحالية للـ Monitor ونطاق الشركات وقائمة الاستبعاد ونافذة إزالة تكرار الشركات، وبترتيب التسليم. كل صفحة قراءة واحدة محدودة بالمفتاح، وتُحتسب مثل البحث المقابل (رصيد بحث واحد لكل نوع إشارة تقرؤه الصفحة؛ قوائم المتابعة مجانية). للصفحة شكل حمولة الـ webhook نفسه.
POST
/
monitors
/
signals
/
search
البحث في إشارات تسليم مقسّم إلى صفحات
curl --request POST \
--url https://api.pubrio.com/monitors/signals/search \
--header 'Content-Type: application/json' \
--header 'pubrio-api-key: <api-key>' \
--data '
{
"page_token": "<string>"
}
'import requests
url = "https://api.pubrio.com/monitors/signals/search"
payload = { "page_token": "<string>" }
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({page_token: '<string>'})
};
fetch('https://api.pubrio.com/monitors/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/monitors/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([
'page_token' => '<string>'
]),
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/signals/search"
payload := strings.NewReader("{\n \"page_token\": \"<string>\"\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/signals/search")
.header("pubrio-api-key", "<api-key>")
.header("Content-Type", "application/json")
.body("{\n \"page_token\": \"<string>\"\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.pubrio.com/monitors/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 \"page_token\": \"<string>\"\n}"
response = http.request(request)
puts response.read_body{
"metadata": {
"monitor_log_id": "516b72de-79d5-400b-9bae-423a43eca98b",
"page_token": "c2b1…"
},
"data": {
"monitor": {
"monitor_id": "c9cd5421-b327-4243-9cd7-8b341b3da8bd",
"name": "Weekly CFO hires",
"detection_mode": "signal_first",
"record_unit": "signal"
},
"metadata": {
"monitor_log_id": "516b72de-79d5-400b-9bae-423a43eca98b",
"parent_monitor_log_id": null,
"total_signals": 25,
"total_companies": 25,
"total_people": 0,
"window": {
"from": "2026-10-10T02:09:00.000Z",
"to": "2026-10-17T06:09:56.270Z",
"next_page_token": "eyJhbGciOi…"
}
},
"triggered_at": "2026-10-17T06:20:11.002Z",
"signals": [],
"pagination": {
"page": 2,
"per_page": 25,
"total_entries": 395,
"total_pages": 16,
"total_display_pages": 16,
"is_timeout": false,
"is_estimated": 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."
}التفويضات
الجسم
application/json
قيمة metadata.window.next_page_token من تسليم مقسّم أو من الصفحة السابقة. تحمل النافذة المثبّتة، لذا يقرأ الرمز نفسه دائمًا النطاق نفسه؛ وقيمة null في الصفحة الأخيرة تعني انتهاء النافذة.
الاستجابة
الصفحة، بشكل حمولة الـ webhook مع كتلة pagination نفسها التي يعيدها كل بحث. الغلاف هو { metadata: { monitor_log_id, page_token }, data: {...} }.
آخر تعديل في ٢٤ أكتوبر ٢٠٢٦

