主题
App Data ID 列表
POST /v3/app_data/id_list
本接口使用 POST 方法,路径为 /v3/app_data/id_list,用于按指定时间范围查询本平台已创建的 App Data 任务 ID 及数据,结果已完成和未完成的任务。
> 注意: > > - 查询时间范围最多可覆盖调用时间前 6 个月。 > - 支持查询最近 1 个月创建任务的数据。 > - 每分钟最多调用 10 次。 > - 每次最多返回 1,000 个任务 ID。 > - 本接口不收取费用。
请求信息
请求地址:
text
POST https://api.seermartech.cn/v3/app_data/id_list请求体使用 UTF-8 编码的 JSON 数组格式:
json
[
{
"datetime_from": "2023-01-31 00:00:00 +00:00",
"datetime_to": "2023-02-01 00:00:00 +00:00",
"limit": 100,
"offset": 0,
"sort": "desc",
"include_metadata": true
}
]请求参数
| 参数 | 类型 | 填 | 说明 |
|---|---|---|---|
datetime_from | string | 是 | 结果筛选的起始时间。使用 UTC 格式:yyyy-mm-dd hh-mm-ss +00:00。当 include_metadata 为 true 时,起始时间不能早于当前时间前 1 个月;当 include_metadata 为 false 时,起始时间不能早于当前时间前 6 个月。示例:2023-01-15 12:57:46 +00:00 |
datetime_to | string | 是 | 结果筛选的结束时间,不能晚于当前时间。使用 UTC 格式:yyyy-mm-dd hh-mm-ss +00:00。示例:2023-01-31 13:57:46 +00:00 |
limit | integer | 否 | 返回的最大任务 ID 数量。默认值为 1000,最大值为 1000。 |
offset | integer | 否 | 结果数组的偏移量,默认值为 0。例如设置为 10 时,将跳过结果数组中的前 10 个任务。 |
sort | string | 否 | 按任务执行时间排序。可选值:asc、desc。默认值为 asc。 |
include_metadata | boolean | 否 | 是否在响应中返回任务数据。默认值为 false。 |
认证
请求需在 Authorization 请求头中携带访问密钥:
http
Authorization: Bearer smt_live_YOUR_KEY
Content-Type: application/json计费
本接口调用,响应中的 cost 通常为 0。扣费以响应头 X-SeerMarTech-Charge-CNY 为准。
响应结构
接口返回 JSON 数据 tasks 数组。
顶层字段
| 字段 | 类型 | 说明 |
|---|---|---|
version | string | 当前 API 版本。 |
status_code | integer | 通用响应状态码。成功时通常为 20000。完整状态码请参考错误码文档。 |
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 | 任务标识符,采用 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。 |
url | string | 任务请求地址,即调用接口时使用的 URL。 |
datetime_posted | string | 任务创建时间,使用 UTC 格式:yyyy-mm-dd hh-mm-ss +00:00。 |
datetime_done | string | 任务完成时间,使用 UTC 格式:yyyy-mm-dd hh-mm-ss +00:00。对于未完成任务,该字段可能为空。 |
status | string | 任务状态说明。 |
cost | float | 平台原始 USD 成本兼容字段;人民币实扣以 X-SeerMarTech-Charge-CNY 为准。 |
metadata | object | 任务数据,创建任务时提交的参数。当请求参数 include_metadata 为 true 且任务在的时间范围时返回。 |
curl 示例
bash
curl --location --request POST \
"https://api.seermartech.cn/v3/app_data/id_list" \
--header "Authorization: Bearer smt_live_YOUR_KEY" \
--header "Content-Type: application/json" \
--data-raw '[
{
"datetime_from": "2023-01-31 00:00:00 +00:00",
"datetime_to": "2023-02-01 00:00:00 +00:00",
"limit": 100,
"offset": 0,
"sort": "desc",
"include_metadata": true
}
]'TypeScript 示例
typescript
import axios from "axios";
const postData = [
{
datetime_from: "2023-01-31 00:00:00 +00:00",
datetime_to: "2023-02-01 00:00:00 +00:00",
limit: 100,
offset: 0,
sort: "desc",
include_metadata: true,
},
];
axios
.post(
"https://api.seermartech.cn/v3/app_data/id_list",
postData,
{
headers: {
Authorization: "Bearer smt_live_YOUR_KEY",
"Content-Type": "application/json",
},
}
)
.then((response) => {
// 处理响应数据
console.log(response.data);
})
.catch((error) => {
// 处理请求错误
console.error(error.response?.data || error.message);
});Python 示例
python
import requests
url = "https://api.seermartech.cn/v3/app_data/id_list"
headers = {
"Authorization": "Bearer smt_live_YOUR_KEY",
"Content-Type": "application/json",
}
payload = [
{
"datetime_from": "2023-01-31 00:00:00 +00:00",
"datetime_to": "2023-02-01 00:00:00 +00:00",
"limit": 100,
"offset": 0,
"sort": "desc",
"include_metadata": True,
}
]
response = requests.post(url, headers=headers, json=payload)
if response.ok:
# 处理成功响应
print(response.json())
else:
# 输出 HTTP 错误及响应
print(f"HTTP 错误:{response.status_code}")
print(response.text)响应示例
json
{
"version": "0.1.20221214",
"status_code": 20000,
"status_message": "Ok.",
"time": "0.5931 sec.",
"cost": 0,
"tasks_count": 1,
"tasks_error": 0,
"tasks": [
{
"id": "2f5c3c2e-7a2b-4b0e-9c3d-123456789abc",
"status_code": 20000,
"status_message": "Ok.",
"time": "0.1200 sec.",
"cost": 0,
"result_count": 1,
"path": [
"v3",
"app_data",
"id_list"
],
"data": {
"api": "app_data",
"function": "id_list",
"datetime_from": "2023-01-11 00:00:00 +02:00",
"datetime_to": "2023-02-10 17:47:00 +02:00",
"limit": 100,
"sort": "desc",
"include_metadata": true
},
"result": [
{
"id": "2f5c3c2e-7a2b-4b0e-9c3d-123456789abc",
"url": "https://api.seermartech.cn/v3/app_data/id_list",
"datetime_posted": "2023-01-15 12:57:46 +00:00",
"datetime_done": "2023-01-15 12:57:47 +00:00",
"status": "Ok.",
"cost": 0,
"metadata": {
"datetime_from": "2023-01-31 00:00:00 +00:00",
"datetime_to": "2023-02-01 00:00:00 +00:00",
"limit": 100,
"offset": 0,
"sort": "desc",
"include_metadata": true
}
}
]
}
]
}状态码与错误处理
可通过顶层 status_code 或任务级 status_code 判断请求和任务处理结果:
20000:请求或任务处理成功。- 状态码:请求或任务处理失败,应结合对应的
status_message定位问题。
完整状态码和错误说明请参考错误码文档。
实用场景
- 回溯指定时间段的任务 ID:批量获取历史 App Data 任务,便于建立任务台账、审计调用记录或定位异常任务。
- 筛选未完成任务:查询近期创建但尚未完成的任务,及时触发重试、状态轮询或异常告警。
- 同步任务数据:开启
include_metadata后获取任务创建参数,便于将任务 ID 与、应用或地区等业务维度。 - 分页处理大批量任务:结合
limit和offset分批拉取任务记录,一次性处理大量数据造成系统压力。 - 按执行时间整理任务:使用
sort控制任务顺序,为报表生成、任务归档和运营分析提供稳定的数据序列。