主题
API 错误任务查询
POST /v3/$path/errors
接口说明
通过本接口,你可以查询过去 7 天某个 API 中返回错误的任务。
型场景是:你为任务了 webhook(pingback 或 postback),但由于服务端异常未成功接收回调,此时可以用错误任务查询接口拿到对应的任务 ID,再合 webhook 重发接口重新发送回调。
如果某个任务未出现在返回列表中,通常表示以下两种之一:
- 该任务没有产生错误;
- 该任务尚未执行完成。
计费说明
调用本接口不收费。 扣费以响应头 X-SeerMarTech-Charge-CNY 为准。
请求方式
POST https://api.seermartech.cn/v3/$path/errors
说明:
- 请求体为 UTF-8 编码的 JSON
- POST 请求体格式为 JSON 数组:
[{ ... }]$path为动态路径参数,用于指定要查询错误任务的 API 目录
动态路径参数
| 参数 | 类型 | 说明 |
|---|---|---|
path | string | API 路径,填写到请求 URL 中 |
可选值:
serpai_optimizationkeywords_datadomain_analyticsdataforseo_labsbacklinkson_pagecontent_analysismerchantapp_databusiness_data
请求参数
| 字段 | 类型 | 说明 |
|---|---|---|
limit | integer | 返回的错误任务数量上限。可选;默认值:1000;最小值:1;最大值:1000 |
offset | integer | 结果偏移量。可选;默认值:0;最小值:0;最大值:100M。例如设置为 10 时,会跳过前 10 条结果并返回后续数据 |
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。示例:2021-11-15 13:57:46 +00:00 |
时间参数约束
datetime_from与datetime_to的最小值均为:当前时间往前 7 天- 最大值均为:当前 UTC 时间
- 如果同时传这两个字段,
datetime_to须大于datetime_from
响应结构
接口返回 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 | URL 路径 |
data | array / object | 与请求中提交的参数一致 |
result | array | 错误结果列表 |
tasks[].result[] 字段
| 字段 | 类型 | 说明 |
|---|---|---|
id | string | 任务 ID |
datetime | string | 错误发生时间,UTC 格式:yyyy-mm-dd hh-mm-ss +00:00 |
function | string | 对应的 API 功能名称 |
error_code | integer | 任务错误码,完整列表参考 /v3/appendix/errors |
error_message | string | 错误信息或出错 URL,完整列表参考 /v3/appendix/errors |
http_url | string | 发生错误的 URL,可能是你调用的 API 地址,也可能是 pingback / postback URL |
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, headers=headers, json=payload)
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表示整个请求的执行状态 tasks[].status_code表示单个任务的执行状态- 常见成功状态码通常为
20000
完整状态码与错误信息请参考:
/v3/appendix/errors
排查建议
当查询到错误任务后,建议重点检查以下字段:
error_code:确认错误类型error_message:查看平台返回的错误描述或失败 URLhttp_url:确认请求目标地址是否正确http_code:检查服务端返回的 HTTP 状态http_response:查看服务器原始响应http_time:判断是否存在时、响应问题
如果错误与 webhook 有,可基于返回的任务 ID 进一步执行 webhook 重发。
使用说明补
- 本接口返回最近 7 天发生错误的任务
- 适合排查 API 调用失败、回调失败、服务端异常等问题
filtered_function可用于聚焦某一类失败,例如看pingback_url或某个接口功能- 若你需要按时间窗口分页排查,建议组合使用
limit、offset、datetime_from、datetime_to
实用场景
- 排查回调丢失:查询
pingback_url或postback_url错误任务,快速定位未成功回调的任务并触发重发,减少数据漏接。 - 定位接口调用失败:按
function过滤某个端点的错误记录,识别高频失败请求,帮助研发快速修复参数或调用逻辑。 - 监控近 7 天异常趋势:结合
datetime_from和datetime_to分时段拉取错误任务,评估系统稳定性并发现异常高峰。 - 校验服务端可用性:通过
http_code、http_time、http_response检查 webhook 接收服务是否时、报错或返回格式异常。 - 构建运维告警单:定时拉取错误任务 ID 和错误,生成处理障列表,方便技术团队批量排查和追踪。