主题
获取 LLM Scraper 已完成任务列表
GET /v3/appendix/errors
GET /v3/ai_optimization/wp/v2/tasks_ready 用于获取尚未领取结果的已完成 LLM Scraper 任务列表。该接口适用于创建任务时未 postback_url 的标准任务流:获取已完成任务的 id,再通过对应的 Task GET 接口领取任务结果。
> 注意:已完成任务队列存在短暂同步延迟。若系统需要每分钟领取 1000 个任务,建议优使用 Pingback 或 Postback 回调;本接口可用于补偿查询回调失败任务的 ID。
请求
http
GET https://api.seermartech.cn/v3/ai_optimization/wp/v2/tasks_ready
Authorization: Bearer smt_live_YOUR_KEY路径参数
| 参数 | 类型 | 说明 |
|---|---|---|
wp | string | 创建任务时指定的搜索引擎参数。该接口路径中为 wp。 |
v2 | string | 任务功能类型。该接口路径中为 v2。 |
使用限制与任务保留规则
- 此接口查询不收费,参考价约 ¥0.0000 / 次;扣费以响应头
X-SeerMarTech-Charge-CNY为准。 - 每分钟最多可调用 20 次。
- 每次调用最多返回 1000 个在最近三天完成的任务。
- 任务会持续保留在列表中,直到结果被成功领取。
- 已领取结果的任务不会再次出现在列表中。
- 任务完成后三天未领取的任务将不再出现在列表中。
- 如果任务设置了
postback_url,正常不会已完成任务列表。 - 当 Postback 请求失败,且您的服务器返回的 HTTP 状态码小于
200或大于300时,该任务才可能出现在此列表中,供后续补偿领取。
curl 示例
bash
curl --location --request GET \
"https://api.seermartech.cn/v3/ai_optimization/wp/v2/tasks_ready" \
--header "Authorization: Bearer smt_live_YOUR_KEY" \
--header "Content-Type: application/json"Python 示例
python
import requests
url = "https://api.seermartech.cn/v3/ai_optimization/wp/v2/tasks_ready"
headers = {
"Authorization": "Bearer smt_live_YOUR_KEY",
"Content-Type": "application/json",
}
# 获取尚未领取结果的已完成任务
response = requests.get(url, headers=headers, timeout=30)
response.raise_for_status()
result = response.json()
if result.get("status_code") == 20000:
print(result)
else:
print(
f"请求失败:{result.get('status_code')} "
f"{result.get('status_message')}"
)TypeScript 示例
typescript
import axios from "axios";
// 获取尚未领取结果的已完成任务
const response = await axios.get(
"https://api.seermartech.cn/v3/ai_optimization/wp/v2/tasks_ready",
{
headers: {
Authorization: "Bearer smt_live_YOUR_KEY",
"Content-Type": "application/json",
},
}
);
const result = response.data;
if (result.status_code === 20000) {
console.log(result);
} else {
console.error(
`请求失败:${result.status_code} ${result.status_message}`
);
}响应字段
接口返回 JSON 对象 tasks 数组本次查询的任务状态及可领取任务信息。
顶层字段
| 字段 | 类型 | 说明 |
|---|---|---|
version | string | 当前 API 版本。 |
status_code | integer | 请求的局状态码。20000 表示请求成功。错误码说明请参考 /v3/appendix/errors。 |
status_message | string | 请求的局状态信息。 |
time | string | 请求执行耗时,单位为秒。 |
cost | float | 平台原始 USD 成本兼容字段;人民币实扣以 X-SeerMarTech-Charge-CNY 为准。 |
tasks_count | integer | tasks 数组中的任务数量。 |
tasks_error | integer | tasks 数组中返回错误状态的任务数量。 |
tasks | array | 任务数组。 |
tasks 数组字段
| 字段 | 类型 | 说明 |
|---|---|---|
id | string | 平台任务 ID,采用 UUID 格式。 |
status_code | integer | 单个任务的状态码,取值范围通常为 10000–60000。 |
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 | 已完成任务的唯一 ID,采用 UUID 格式。使用此 ID 调用对应的 Task GET 接口领取结果。 |
se | string | 创建任务时指定的搜索引擎。 |
function | string | 任务功能类型,例如 v2。 |
date_posted | string | 任务创建时间,UTC 格式。 |
tag | string | 创建任务时传的自定义标识,可用于业务记录。 |
endpoint_advanced | string | null | 获取 Advanced 格式结果的接口地址。不支持 Advanced 结果时为 null。 |
endpoint_html | string | null | 获取 HTML 格式结果的接口地址。不支持 HTML 结果时为 null。 |
响应示例
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": "12345678-1234-1234-1234-123456789012",
"status_code": 20000,
"status_message": "Ok.",
"time": "0.0010 sec.",
"cost": 0,
"result_count": 1,
"path": [
"v3",
"ai_optimization",
"wp",
"v2",
"tasks_ready"
],
"data": {
"api": "ai_optimization",
"function": "llm_scraper",
"se": "wp"
},
"result": [
{
"id": "12345678-1234-1234-1234-123456789012",
"se": "wp",
"function": "v2",
"date_posted": "2025-01-15 08:30:00 +00:00",
"tag": "brand-monitoring-001",
"endpoint_advanced": "/v3/ai_optimization/wp/v2/task_get/advanced/12345678-1234-1234-1234-123456789012",
"endpoint_html": null
}
]
}
]
}错误处理
建议根据顶层 status_code、status_message 以及各任务的 status_code 处理异常:
- 顶层
status_code非20000:本次列表查询未成功,应记录错误并根据错误码决定是否重试。 tasks_error大于0:请求整体可能成功,但部分任务返回异常状态,需要逐项检查tasks中的状态码。result为空:当前没有尚未领取的已完成任务,或可领取任务已三天保留期。- 回调任务未出现在列表中:确认 Postback 是否正常返回
200–300范围的 HTTP 状态码;只有回调失败的任务才会此接口的补偿列表。
实用场景
- 补偿领取回调失败任务:定时查询未领取的任务 ID,并重新调用 Task GET 接口获取结果,降低 Postback 网络异常导致的数据丢失风险。
- 批量归集 LLM 抓取结果:将最近三天完成的任务统一写数据仓库,支持后续品牌提及、回答和引用来源分析。
- 监控异步任务处理积压:通过已完成但未领取的任务数量识别下游消费延迟,及时扩容结果处理队列。
- 业务工单:利用任务的
tag字段匹项目、客户或监控规则,将抓取结果准确回写至对应业务记录。 - 构建任务结果底机制:在实时回调之外周期性执行补偿扫描,提高大规模 AI 搜索结果采集流程的完整性。