任务列表
POST https://maxaeo.cn/geoapi/geodata/developer/task/key/list分页列出当前 API Key 提交的任务,按提交时间从新到旧排列。列表项不含回答正文,需要结果时再用查询任务。不消耗点数。
主要用途:
- 找回
task_id:提交请求超时或进程崩溃,不确定任务是否已创建时,按问题文本和时间查找,避免重复提交。 - 对账与巡检:按时间段、状态翻页,统计成功任务的点数,找出失败的任务。
全部可选。
| 参数 | 类型 | 说明 |
|---|---|---|
page |
integer | 页码,从 1 开始,默认 1 |
page_size |
integer | 每页条数,默认 20,最大 100 |
start_time |
integer | 提交时间下限(Unix 秒,含) |
end_time |
integer | 提交时间上限(Unix 秒,不含),须大于 start_time |
platform |
string | 只看这个平台的任务 |
status |
string | 只看这个状态的任务:queued、dispatching、pending、running、succeeded、failed、canceled。传 pending 时同时返回 queued、dispatching、pending 三种排队中的任务(列表项的 status 仍是各自的实际状态);其他取值精确匹配 |
keyword |
string | 以 task_ 开头时按任务 ID 精确匹配;否则按「问题包含该文本」匹配。最长 256 个字符 |
查找最近一小时内、问题包含「机械键盘」的任务:
curl -X POST "https://maxaeo.cn/geoapi/geodata/developer/task/key/list" \ -H "Authorization: Bearer $MAXAEO_API_KEY" \ -H "Content-Type: application/json" \ -d "{\"keyword\": \"机械键盘\", \"start_time\": $(($(date +%s) - 3600)), \"page_size\": 10}"import osimport time
import requests
resp = requests.post( "https://maxaeo.cn/geoapi/geodata/developer/task/key/list", headers={"Authorization": f"Bearer {os.environ['MAXAEO_API_KEY']}"}, json={"keyword": "机械键盘", "start_time": int(time.time()) - 3600, "page_size": 10}, timeout=30,)data = resp.json()if data["ret"] != 1: raise RuntimeError(f"ret={data['ret']}: {data['msg']}")for item in data["data"]["ent"]["items"]: print(item["task_id"], item["status"], item["query"])const resp = await fetch("https://maxaeo.cn/geoapi/geodata/developer/task/key/list", { method: "POST", headers: { Authorization: `Bearer ${process.env.MAXAEO_API_KEY}`, "Content-Type": "application/json", }, body: JSON.stringify({ keyword: "机械键盘", start_time: Math.floor(Date.now() / 1000) - 3600, page_size: 10, }),});const data = await resp.json();if (data.ret !== 1) throw new Error(`ret=${data.ret}: ${data.msg}`);for (const item of data.data.ent.items) { console.log(item.task_id, item.status, item.query);}data.ent 的字段:
| 字段 | 类型 | 说明 |
|---|---|---|
total |
integer | 符合条件的任务总数 |
page |
integer | 当前页码 |
page_size |
integer | 每页条数 |
items |
TaskItem[] | 当前页的任务,按提交时间倒序 |
TaskItem 是任务对象的精简版,不含 answer、result_json、share_link、raw_result 和 updated_at:
| 字段 | 类型 | 说明 |
|---|---|---|
task_id |
string | 任务 ID |
status |
string | 任务状态 |
platform |
string | 平台标识 |
query |
string | 问题 |
priority |
integer | 提交时的优先级,1 或 2 |
country |
string | 请求的出口国家(大写),未指定为空 |
thinking |
boolean | 提交时请求的思考模式;实际是否开启要用查询任务读取 raw_result.thinking |
monitor_date |
string | 业务日期 YYYY-MM-DD |
credits |
integer | 成功为扣除点数,未结束为预占点数,失败或取消为 0 |
error_code |
string | 任务级错误码,见错误处理 |
error_message |
string | 错误说明,{"zh","en"} JSON 字符串 |
created_at |
integer | 提交时间(Unix 秒) |
started_at |
integer | 开始执行时间,0 表示未记录 |
finished_at |
integer | 结束时间,0 表示未结束 |
{ "ret": 1, "data": { "ent": { "total": 2, "page": 1, "page_size": 10, "items": [ { "thinking": false, "task_id": "task_3f6c1d2e-8a4b-4c1f-9e2d-7b5a0c9d1e23", "status": "succeeded", "platform": "doubao", "query": "适合程序员的机械键盘推荐", "priority": 2, "country": "", "monitor_date": "2026-10-26", "credits": 3, "error_code": "", "error_message": "", "created_at": 1793018425, "started_at": 1793018431, "finished_at": 1793018497 }, { "thinking": true, "task_id": "task_5a7d9c1b-3e2f-4d6a-8b0c-9e1f2a3b4c5d", "status": "pending", "platform": "kimi", "query": "机械键盘和薄膜键盘哪个更适合写代码", "priority": 2, "country": "", "monitor_date": "2026-10-26", "credits": 20, "error_code": "", "error_message": "", "created_at": 1793018390, "started_at": 0, "finished_at": 0 } ] } }}- 列表按提交时间倒序,翻页期间有新任务提交时,后面的页可能出现与前一页重复的条目。对账时建议固定
end_time(如对账开始的时间),在一个固定的时间窗口内翻页。 - 统计某段时间的消耗:筛选
status为succeeded,对credits求和。
ret |
原因 |
|---|---|
1001 |
参数不合法:page 或 page_size 越界、end_time 不大于 start_time、时间为负数、status 取值不在列表中、keyword 过长,或请求体含未定义的字段 |
1003 |
账户权限异常(少见),请联系我们 |
1030 |
API Key 无效 |
-1 |
服务暂时不可用,可以直接重试 |
