主题
SERP 错误任务查询
接口概述
通过本接口可以查询 过去 7 天执行出错的 SERP API 任务。
型用途是:当你为任务了 webhook(如 pingback 或 postback),但由于服务端异常未收到回调时,可以通过本接口获取出错任务的 id 列表,再合 webhook 重发接口进行补发。
如果某个任务 未出现在返回列表中,通常表示以下两种之一:
- 该任务并未返回错误;
- 该任务尚未执行完成。
计费说明
调用本接口 不收费。 扣费以响应头 X-SeerMarTech-Charge-CNY 为准。
请求地址
POST https://api.seermartech.cn/v3/serp/errors
请求格式
所有 POST 数据使用 JSON(UTF-8 编码)提交。 请求体需使用 JSON 数组 格式:
json
[
{
"limit": 10,
"offset": 0,
"filtered_function": "pingback_url"
}
]请求参数
| 字段名 | 类型 | 说明 |
|---|---|---|
limit | integer | 返回的错误任务最大数量。可选;默认值:1000;最小值:1;最大值:1000 |
offset | integer | 返回结果中的偏移量。可选;如果设置为 10,则会跳过前 10 条任务并返回后续数据。默认值:0;最小值:0;最大值:100000000 |
filtered_function | string | 按指定功能过滤错误任务。可用于根据某个接口 URL、pingback_url 或 postback_url 进行筛选。你可以拉取未过滤结果,再使用响应中的 function 字段值进行二次过滤。示例:serp/task_get/advanced |
datetime_from | string | 结果过滤开始时间。可选;支持最近 7 天的时间范围;使用 UTC 格式:yyyy-mm-dd hh-mm-ss +00:00。示例:2021-11-15 12:57:46 +00:00 |
datetime_to | string | 结果过滤结束时间。可选;支持最近 7 天的时间范围;使用 UTC 格式:yyyy-mm-dd hh-mm-ss +00:00。若同时传 datetime_from,则 datetime_to须大于 datetime_from。示例:2021-11-15 13:57:46 +00:00 |
返回结果
接口返回 JSON 编码数据,主体中 tasks 数组。
顶层字段
| 字段名 | 类型 | 说明 |
|---|---|---|
version | string | 当前 API 版本 |
status_code | integer | 接口总体状态码,完整列表参考 /v3/appendix/errors |
status_message | string | 接口总体状态说明,完整列表参考 /v3/appendix/errors |
time | string | 总执行时间,单位秒 |
cost | float | 本次请求总费用,单位 USD |
tasks_count | integer | tasks 数组中的任务数量 |
tasks_error | integer | tasks 数组中返回错误的任务数量 |
tasks | array | 任务数组 |
tasks[] 字段
| 字段名 | 类型 | 说明 |
|---|---|---|
id | string | 任务唯一标识,UUID 格式 |
status_code | integer | 任务状态码,范围通常为 10000–60000,完整列表参考 /v3/appendix/errors |
status_message | string | 任务状态说明,完整列表参考 /v3/appendix/errors |
time | string | 任务执行时间,单位秒 |
cost | float | 单个任务费用,单位 USD |
result_count | integer | result 数组中的数量 |
path | array | 请求路径 |
data | array | 与提交请求时相同的参数集合 |
result | array | 结果数组 |
tasks[].result[] 字段
| 字段名 | 类型 | 说明 |
|---|---|---|
id | string | 出错任务的任务 ID |
datetime | string | 错误发生时间,UTC 格式:yyyy-mm-dd hh-mm-ss +00:00。示例:2019-11-15 12:57:46 +00:00 |
function | string | 对应的 API 功能标识 |
error_code | integer | 任务错误码,完整列表参考 /v3/appendix/errors |
error_message | string | 错误信息或导致错误的 URL |
http_url | string | 触发错误的 URL,可能是 API 请求地址,也可能是 pingback/postback 地址 |
http_method | string | 触发错误时使用的 HTTP 方法 |
http_code | integer | HTTP 状态码 |
http_time | float | HTTP 请求耗时。对于启用了 pingback/postback 的任务,该字段表示你的服务器响应所花费的时间 |
http_response | string | 服务端返回 |
请求示例
cURL
bash
curl --location --request POST "https://api.seermartech.cn/v3/serp/errors" \
--header "Authorization: Bearer smt_live_YOUR_KEY" \
--header "Content-Type: application/json" \
--data-raw '[
{
"limit": 10,
"offset": 0,
"filtered_function": "pingback_url"
}
]'Python
python
import requests
url = "https://api.seermartech.cn/v3/serp/errors"
headers = {
"Authorization": "Bearer smt_live_YOUR_KEY",
"Content-Type": "application/json"
}
payload = [
{
"limit": 10,
"offset": 0,
"filtered_function": "pingback_url"
}
]
response = requests.post(url, json=payload, headers=headers)
print(response.json)TypeScript
typescript
import axios from "axios";
const payload = [
{
limit: 10,
offset: 0,
filtered_function: "pingback_url",
},
];
axios({
method: "post",
url: "https://api.seermartech.cn/v3/serp/errors",
headers: {
Authorization: "Bearer smt_live_YOUR_KEY",
"Content-Type": "application/json",
},
data: payload,
})
.then((response) => {
// 输出返回结果
console.log(response.data);
})
.catch((error) => {
console.error(error);
});响应示例
json
{
"version": "0.1.20220321",
"status_code": 20000,
"status_message": "Ok.",
"time": "0.1538 sec.",
"cost": 0,
"tasks_count": 1,
"tasks_error": 0,
"tasks": [
{
"data": {
"api": "serp",
"function": "errors",
"limit": 10,
"offset": 0,
"filtered_function": "pingback_url"
},
"result": []
}
]
}状态码与错误说明
- 顶层
status_code/status_message表示本次接口请求的整体执行状态; tasks[].status_code/tasks[].status_message表示单个任务的处理状态;tasks[].result[]中的error_code/error_message用于描述失败原因;- 完整错误码与状态说明可参考
/v3/appendix/errors。
使用建议
- 不加过滤条件获取量错误任务,观察返回中的
function分布; - 若要排查 webhook 异常,可将
filtered_function设置为:
pingback_urlpostback_url- 或某个功能路径,如
serp/task_get/advanced
- 若错误量较大,建议结合:
datetime_fromdatetime_tolimitoffset
进行分页和时间范围检索; 4. 若任务 ID 已确认,可进一步合 webhook 重发接口完成补发。
实用场景
- 排查 webhook 投递失败:筛选
pingback_url或postback_url错误任务,快速定位哪些回调未送达,减少数据漏接。 - 补发失败结果通知:获取过去 7 天出错任务的
id,再结合重发机制补发 webhook,提升异步任务交付完整性。 - 监控接口稳定性:按
function维度统计错误任务,识别高失败率的 SERP 功能路径,监控和告警。 - 定位服务端异常来源:结合
http_code、http_response、http_time分析错误原因,判断是本平台请求失败还是业务接收端异常。 - 按时间窗口回溯障:使用
datetime_from和datetime_to查询某次期间的错误任务,便于复盘和批量修复。