Skip to content

SERP 任务 ID 列表

接口说明

/v3/serp/id_list 用于获取指定时间范围创建的所有 SERP 任务 ID 及数据,已成功完成和未完成的任务。

注意事项:

  • 可查询的时间范围最长为最近 6 个月
  • 只有最近 1 个月创建的任务支持返回 metadata
  • 单次调用最多返回 1000 个任务 ID
  • 调用频率限制为 10 次/分钟
  • 本接口不收费,响应中的 cost 通常为 0,扣费以响应头 X-SeerMarTech-Charge-CNY 为准

请求地址

POST https://api.seermartech.cn/v3/serp/id_list

请求体格式

所有 POST 数据需使用 JSON(UTF-8)格式提交,请求体为 JSON 数组:

json
[
 {
 "datetime_from": "2023-01-15 12:57:46 +00:00",
 "datetime_to": "2023-01-31 13:57:46 +00:00",
 "limit": 1000,
 "offset": 0,
 "sort": "asc",
 "include_metadata": false
 }
]

请求参数

参数名类型说明
datetime_fromstring结果过滤的开始时间。填。若 include_metadata=true,最早只能取当前时间往前 1 个月;若 include_metadata=false,最早可取当前时间往前 6 个月。最大值为当前 UTC 时间。格式为 yyyy-mm-dd hh-mm-ss +00:00。示例:2023-01-15 12:57:46 +00:00
datetime_tostring结果过滤的结束时间。填。若 include_metadata=true,最早只能取当前时间往前 1 个月;若 include_metadata=false,最早可取当前时间往前 6 个月。最大值为当前 UTC 时间。且 datetime_to须大于 datetime_from。格式为 yyyy-mm-dd hh-mm-ss +00:00。示例:2023-01-31 13:57:46 +00:00
limitinteger返回的任务 ID 最大数量。可选。默认值:1000;最小值:1;最大值:1000
offsetinteger结果偏移量。可选。若设置为 10,则跳过结果数组中的前 10 条任务。默认值:0;最小值:0;最大值:100M(1 亿)
sortstring按任务执行时间排序。可选。可选值:ascdesc;默认值:asc
include_metadataboolean是否在响应中任务数据。可选。设为 true 时,响应会返回 metadata 对象原任务创建时提交的参数。默认值:false

响应结构

接口返回 JSON 编码数据,顶层 tasks 数组。

顶层字段

字段名类型说明
versionstring当前 API 版本
status_codeinteger接口通用状态码,完整列表参考 /v3/appendix/errors
status_messagestring接口通用状态信息,完整列表参考 /v3/appendix/errors
timestring总执行时间,单位秒
costfloat请求总成本,单位 USD
tasks_countintegertasks 数组中的任务数量
tasks_errorintegertasks 数组中返回错误的任务数量
tasksarray任务数组

tasks[] 字段

字段名类型说明
idstring任务唯一标识,UUID 格式
status_codeinteger任务状态码,范围通常为 10000-60000,完整列表参考 /v3/appendix-errors/
status_messagestring任务状态说明,完整列表参考 /v3/appendix-errors/
timestring任务执行时间,单位秒
costfloat任务成本,单位 USD
result_countintegerresult 数组数量
patharrayURL 路径
dataobject与请求中提交参数相同的数据对象
resultarray结果数组

tasks[].result[] 字段

字段名类型说明
idstring任务 ID
urlstring任务对应的接口 URL,即创建该任务时调用的地址
datetime_postedstring任务创建时间,UTC 格式:yyyy-mm-dd hh-mm-ss +00:00
datetime_donestring任务完成时间,UTC 格式:yyyy-mm-dd hh-mm-ss +00:00
statusstring任务状态信息
costfloat该任务成本,单位 USD
metadataobject任务数据,创建该任务时提交的参数;当 include_metadata=true 且任务在可追溯数据时间范围时返回

调用示例

cURL

bash
curl --location --request POST "https://api.seermartech.cn/v3/serp/id_list" \
--header "Authorization: Bearer smt_live_YOUR_KEY" \
--header "Content-Type: application/json" \
--data-raw '[
 {
 "datetime_from": "2023-01-31 00:00:00 +02:00",
 "datetime_to": "2023-02-01 00:00:00 +02:00",
 "limit": 100,
 "offset": 0,
 "sort": "desc",
 "include_metadata": true
 }
]'

Python

python
import requests

url = "https://api.seermartech.cn/v3/serp/id_list"
headers = {
 "Authorization": "Bearer smt_live_YOUR_KEY",
 "Content-Type": "application/json"
}
payload = [
 {
 "datetime_from": "2023-01-31 00:00:00 +02:00",
 "datetime_to": "2023-02-01 00:00:00 +02:00",
 "limit": 100,
 "offset": 0,
 "sort": "desc",
 "include_metadata": True
 }
]

response = requests.post(url, json=payload, headers=headers)
print(response.json)

TypeScript

typescript
import axios from "axios";

const postArray = [
 {
 datetime_from: "2023-01-31 00:00:00 +02:00",
 datetime_to: "2023-02-01 00:00:00 +02:00",
 limit: 100,
 offset: 0,
 sort: "desc",
 include_metadata: true
 }
];

axios({
 method: "post",
 url: "https://api.seermartech.cn/v3/serp/id_list",
 headers: {
 Authorization: "Bearer smt_live_YOUR_KEY",
 "Content-Type": "application/json"
 },
 data: postArray
})
 .then((response) => {
 // 输出返回结果
 console.log(response.data);
 })
 .catch((error) => {
 console.error(error);
 });

响应示例

json
{
 "version": "0.1.20221214",
 "status_code": 20000,
 "status_message": "Ok.",
 "time": "1.6078 sec.",
 "cost": 0,
 "tasks_count": 1,
 "tasks_error": 0,
 "tasks": [
 {
 "data": {
 "api": "serp",
 "function": "id_list",
 "datetime_from": "2023-01-07 00:00:00 +02:00",
 "datetime_to": "2023-02-01 00:00:00 +02:00",
 "limit": 100,
 "sort": "desc",
 "include_metadata": true
 },
 "result": [
 {
 "id": "01130021-4426-0139-0000-60d2806c6081",
 "url": "v3/serp/google/dataset_search/live/advanced",
 "datetime_posted": "2023-01-12 22:21:18 +00:00",
 "datetime_done": "2023-01-12 22:21:18 +00:00",
 "status": "20000",
 "cost": 0.020000000000000004,
 "metadata": {
 "api": "serp",
 "function": "live",
 "se": "google",
 "se_type": "dataset_search",
 "keyword": "water quality",
 "depth": 700,
 "postback_data": "advanced",
 "device": "desktop",
 "os": "windows"
 }
 },
 {
 "id": "01130020-4426-0139-0000-bcded021ab37",
 "url": "v3/serp/google/dataset_search/live/advanced",
 "datetime_posted": "2023-01-12 22:20:17 +00:00",
 "datetime_done": "2023-01-12 22:20:16 +00:00",
 "status": "20000",
 "cost": 0.002,
 "metadata": {
 "api": "serp",
 "function": "live",
 "se": "google",
 "se_type": "dataset_search",
 "keyword": "water quality",
 "postback_data": "advanced",
 "device": "desktop",
 "os": "windows"
 }
 },
 {
 "id": "01122000-4426-0139-0000-d2a69bec4af8",
 "url": "v3/serp/google/dataset_info/live/advanced",
 "datetime_posted": "2023-01-12 18:00:26 +00:00",
 "datetime_done": "2023-01-12 18:00:25 +00:00",
 "status": "20000",
 "cost": 0.002,
 "metadata": {
 "api": "serp",
 "function": "live",
 "se": "google",
 "se_type": "dataset_info",
 "dataset_id": "L2cvMTFuMDQ3X3B6aA",
 "postback_data": "advanced",
 "device": "desktop",
 "os": "windows"
 }
 },
 {
 "id": "01121947-4426-0139-0000-8c3f461ee95b",
 "url": "v3/serp/google/dataset_search/live/advanced",
 "datetime_posted": "2023-01-12 17:47:24 +00:00",
 "datetime_done": "2023-01-12 17:47:23 +00:00",
 "status": "20000",
 "cost": 0.002,
 "metadata": {
 "api": "serp",
 "function": "live",
 "se": "google",
 "se_type": "dataset_search",
 "keyword": "water quality",
 "last_updated": "1m",
 "usage_rights": "noncommercial",
 "is_free": true,
 "postback_data": "advanced",
 "device": "desktop",
 "os": "windows"
 }
 }
 ]
 }
 ]
}

使用说明

  • 若只需要任务 ID 列表,建议将 include_metadata 设为 false,以查询最近 6 个月的任务
  • 若需要回溯原始任务参数,请将 include_metadata 设为 true,但能查询最近 1 个月的任务
  • 结合 limitoffset 可分页遍历历史任务
  • 结合 sort=ascsort=desc 可按执行时间顺序或倒序拉取任务

错误码说明

  • 顶层 status_code 表示本次 API 请求的整体执行状态
  • tasks[].status_code 表示单个任务的处理状态
  • 常见成功状态码为 20000
  • 完整错误码与状态说明请参考 /v3/appendix/errors/v3/appendix-errors/

实用场景

  • 回溯任务历史:按时间范围拉取已创建的 SERP 任务 ID,便于审计采集记录、排查任务缺失或重复提交问题
  • 定位高成本任务:结合返回的 costmetadata,识别消耗较高的查询类型、设备类型或搜索场景,优化采集预算
  • 恢复任务上下文:通过 include_metadata=true 获取原始任务参数,快速还原、搜索引擎类型、设备和回调
  • 构建任务分页巡检:使用 limitoffset 分批扫描大批量历史任务,适合定时巡检、对账和质量监控
  • 筛选未完成任务:统一拉取某时间段的任务,结合状态字段识别未完成或异常任务,支持后续补采与告警处理

统一入口:官网 · LLM API · 控制台