主题
获取 SERP V2 已完成的修复任务
GET /v3/appendix/errors
本接口用于获取已重新解析、但尚未被收取的 SERP 任务列表。
请求方法与路径:
http
GET https://api.seermartech.cn/v3/serp/wp/v2/tasks_fixed当使用 Standard 方法创建任务且未指定 postback_url 时,可通过本接口获取所有已完成修复任务的 id,再使用对应的任务获取接口重新收取修复后的结果。
本接口适用于 wp 搜索引擎和 v2 搜索引擎类型,也可以根据需求替换路径中的搜索引擎及类型参数。
计费与调用限制
- 获取已完成任务列表不产生额外费用。
- 每个任务在被成功收取前会持续保留在列表中。
- 每分钟最多调用 20 次。
- 每次调用最多返回最近 24 小时完成的 1000 个修复任务。
- 已经被收取的任务不会再次出现在列表中。
- 任务完成后 24 小时仍未被收取,也不会继续保留在列表中。
- 如果创建任务时指定了
postback_url,正常该任务不会出现在本接口返回列表中。 - 当向业务服务器推送结果失败,且服务器返回的 HTTP 状态码小于
200或大于300时,任务才可能出现在列表中。 - 实扣费以响应头
X-SeerMarTech-Charge-CNY为准。
请求
本接口为 GET 请求,无请求体。
请求头
http
Authorization: Bearer smt_live_YOUR_KEY
Content-Type: application/json请求参数
请求路径中的参数用于指定搜索引擎及搜索引擎类型:
| 参数 | 类型 | 填 | 说明 |
|---|---|---|---|
se | string | 是 | 搜索引擎标识,本示例为 wp |
se_type | string | 是 | 搜索引擎类型,本示例为 v2 |
响应
接口返回 JSON 数据 tasks 数组。
顶层字段
| 字段 | 类型 | 说明 |
|---|---|---|
version | string | 当前 API 版本 |
status_code | integer | 通用状态码,完整错误码请参考 /v3/appendix/errors |
status_message | string | 通用状态说明,完整说明请参考 /v3/appendix/errors |
time | string | 请求执行耗时,单位为秒 |
cost | float | 平台原始 USD 成本兼容字段;人民币实扣以 X-SeerMarTech-Charge-CNY 为准。 |
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 | 任务状态说明 |
time | string | 任务执行耗时,单位为秒 |
cost | float | 平台原始 USD 成本兼容字段;人民币实扣以 X-SeerMarTech-Charge-CNY 为准。 |
result_count | integer | result 数组中的结果数量 |
path | array | 请求 URL 路径 |
data | object | 创建任务时传的请求参数 |
result | array | 已完成修复任务的信息 |
result 数组字段
| 字段 | 类型 | 说明 |
|---|---|---|
id | string | 已完成任务的唯一标识,UUID 格式 |
se | string | 创建任务时指定的搜索引擎 |
se_type | string | 搜索引擎类型,本接口为 v2 |
date_fixed | string | 任务修复完成时间,采用 UTC 时间格式 |
tag | string | 用户自定义任务标识 |
endpoint_regular | string | null | 收取 SERP Regular 任务结果的 URL;如果当前端点不支持 SERP Regular,则为 null |
endpoint_advanced | string | null | 收取 SERP Advanced 任务结果的 URL;如果当前端点不支持 SERP Advanced,则为 null |
endpoint_html | string | null | 收取 SERP HTML 任务结果的 URL;如果当前端点不支持 SERP HTML,则为 null |
curl 示例
bash
curl --location --request GET \
"https://api.seermartech.cn/v3/serp/wp/v2/tasks_fixed" \
--header "Authorization: Bearer smt_live_YOUR_KEY" \
--header "Content-Type: application/json"Python 示例
python
import requests
url = "https://api.seermartech.cn/v3/serp/wp/v2/tasks_fixed"
headers = {
"Authorization": "Bearer smt_live_YOUR_KEY",
"Content-Type": "application/json",
}
response = requests.get(url, headers=headers)
data = response.json()
# status_code 为 20000 表示请求成功
if data.get("status_code") == 20000:
for task in data.get("tasks", []):
print(task)
else:
print(
"请求失败,状态码:%s,说明:%s"
% (data.get("status_code"), data.get("status_message"))
)TypeScript 示例
typescript
import axios from "axios";
async function getFixedTasks(): Promise<void> {
try {
const response = await axios.get(
"https://api.seermartech.cn/v3/serp/wp/v2/tasks_fixed",
{
headers: {
Authorization: "Bearer smt_live_YOUR_KEY",
"Content-Type": "application/json",
},
}
);
const result = response.data;
if (result.status_code === 20000) {
console.log("已完成修复任务:", result.tasks);
} else {
console.error(
`请求失败,状态码:${result.status_code},说明:${result.status_message}`
);
}
} catch (error) {
console.error("请求异常:", error);
}
}
getFixedTasks();响应示例
json
{
"version": "0.1.20200129",
"status_code": 20000,
"status_message": "Ok.",
"time": "0.2270 sec.",
"cost": 0,
"tasks_count": 1,
"tasks_error": 0,
"tasks": [
{
"id": "01234567-89ab-cdef-0123-456789abcdef",
"status_code": 20000,
"status_message": "Ok.",
"time": "0.1200 sec.",
"cost": 0,
"result_count": 1,
"path": [
"v3",
"serp",
"wp",
"v2",
"tasks_fixed"
],
"data": {
"api": "serp",
"function": "tasks_fixed",
"se": "wp",
"se_type": "v2"
},
"result": [
{
"id": "01234567-89ab-cdef-0123-456789abcdef",
"se": "wp",
"se_type": "v2",
"date_fixed": "2024-01-29 10:20:30 +00:00",
"tag": "example-task",
"endpoint_regular": "/v3/serp/wp/v2/task_get/regular",
"endpoint_advanced": "/v3/serp/wp/v2/task_get/advanced",
"endpoint_html": "/v3/serp/wp/v2/task_get/html"
}
]
}
]
}实用场景
- 轮询已修复任务:定时获取最近 24 小时完成重新解析的任务,遗漏因 SERP 标记修复而产生的新结果。
- 补偿结果收取:在未
postback_url时批量获取任务 ID,再调用任务获取接口补收结果,提升异步任务的收取成功率。 - 处理推送失败任务:监控回调失败后修复列表的任务,建立自动重试和结果补偿机制。
- 刷新 SERP 解析数据:重新获取修复后的 Regular、Advanced 或 HTML 结果,修正历史数据中的解析异常。
- 构建任务状态看板:结合
date_fixed、status_code和tag统计修复任务数量及处理进度,为 SEO 数据采集运维提供依据。