提交任务
POST https://maxaeo.cn/geoapi/geodata/developer/task/submit向一个 AI 平台提交一个问题。接口立即返回新建的任务(状态 queued)和 task_id,之后用查询任务获取结果。
每次调用都会创建一个新任务。 成功后按提交时的单价扣点数;提交时先预占这部分点数,失败或取消会退回。
| 参数 | 类型 | 必填 | 说明 |
|---|---|---|---|
platform |
string | 是 | 平台标识,如 doubao、deepseek,取值见查询平台列表,platform_status 为 maintenance 的不可提交。不区分大小写,最长 64 个字符 |
query |
string | 是 | 要问平台的问题。去掉首尾空白后最长 4096 个字符;必须包含可见文字,除换行、回车、制表符外不能有控制字符 |
priority |
integer | 否 | 1 = P1 优先,2 = P2 标准。不传或传 0 按 P2。两档排队方式和单价不同,见优先级 |
thinking |
boolean | 否 | 是否请求平台的思考模式,默认 false。必须是 JSON 布尔值。见下文 |
country |
string | 否 | 两位字母国家代码(ISO 3166-1 alpha-2),如 US、JP,不区分大小写。只影响海外平台的抓取出口,见出口国家 |
monitor_date |
string | 否 | 任务的业务日期,YYYY-MM-DD,默认北京时间当天。也接受带时区的 RFC 3339 时间(如 2026-10-26T09:30:00-07:00),会换算为北京时间的日期。不影响执行时间,见monitor_date 是什么 |
wait_seconds |
integer | 否 | 同步等待秒数,0–120,默认 0(立即返回)。见下文 |
不接受其他字段,出现未定义的字段返回 1001。
同步等待 wait_seconds
Section titled “同步等待 wait_seconds”0(默认):立即返回,任务状态为queued。1–120:服务端在这段时间内每 2 秒检查一次任务,任务到达终态(succeeded/failed/canceled)就立刻返回;时间用完仍未结束,返回当时的任务状态。
使用同步等待时:
- 客户端 HTTP 超时要大于
wait_seconds,建议多留 15 秒以上。 - 返回的任务可能仍未结束,代码必须能继续按
task_id轮询。 - 连接在等待期间被断开不会影响任务本身,按避免重复提交找回
task_id即可。
思考模式 thinking
Section titled “思考模式 thinking”传 "thinking": true 时,请求平台以思考模式回答,例如 DeepSeek 的深度思考、豆包的专家模式:
curl -X POST "https://maxaeo.cn/geoapi/geodata/developer/task/submit" \ -H "Authorization: Bearer $MAXAEO_API_KEY" \ -H "Content-Type: application/json" \ -d '{"platform": "deepseek", "query": "适合程序员的机械键盘推荐", "thinking": true}'- 没有思考开关的平台会按关闭执行,不报错。实际是否开启看结果里的
raw_result.thinking;响应外层的thinking只是你请求的值。 - 开启后明显更慢,不加价。
各平台的支持情况见思考模式。
curl -X POST "https://maxaeo.cn/geoapi/geodata/developer/task/submit" \ -H "Authorization: Bearer $MAXAEO_API_KEY" \ -H "Content-Type: application/json" \ -d '{ "platform": "doubao", "query": "适合程序员的机械键盘推荐", "priority": 2 }'import os
import requests
resp = requests.post( "https://maxaeo.cn/geoapi/geodata/developer/task/submit", headers={"Authorization": f"Bearer {os.environ['MAXAEO_API_KEY']}"}, json={"platform": "doubao", "query": "适合程序员的机械键盘推荐", "priority": 2}, timeout=30,)data = resp.json()if data["ret"] != 1: raise RuntimeError(f"ret={data['ret']}: {data['msg']}")task = data["data"]["ent"]print(task["task_id"], task["status"], task["credits"])const resp = await fetch("https://maxaeo.cn/geoapi/geodata/developer/task/submit", { method: "POST", headers: { Authorization: `Bearer ${process.env.MAXAEO_API_KEY}`, "Content-Type": "application/json", }, body: JSON.stringify({ platform: "doubao", query: "适合程序员的机械键盘推荐", priority: 2 }),});const data = await resp.json();if (data.ret !== 1) throw new Error(`ret=${data.ret}: ${data.msg}`);const task = data.data.ent;console.log(task.task_id, task.status, task.credits);data.ent 是任务对象。不使用同步等待时,刚提交的任务:
status为queued;task_id形如task_加一个 UUID,后续查询都用它;credits为预占的点数,即该平台、该档位当前的单价;thinking为你请求的思考模式,没传时为false;answer、result_json等结果字段为空,raw_result不出现。
{ "ret": 1, "data": { "ent": { "thinking": false, "task_id": "task_3f6c1d2e-8a4b-4c1f-9e2d-7b5a0c9d1e23", "platform": "doubao", "query": "适合程序员的机械键盘推荐", "status": "queued", "answer": "", "result_json": "", "share_link": "", "error_code": "", "error_message": "", "started_at": 0, "finished_at": 0, "created_at": 1793018425, "updated_at": 1793018425, "monitor_date": "2026-10-26", "priority": 2, "country": "", "credits": 3 } }}以下错误发生在创建任务之前:不会创建任务,也不扣点数。
ret |
原因 | 处理 |
|---|---|---|
1001 |
参数不合法,msg 会写明字段,例如 query 为空或过长、priority 不是 1 或 2、country 不是两位字母、monitor_date 格式不对、wait_seconds 超出 0–120;请求体含未定义字段,或字段类型不对(如 thinking 传了字符串 "true")时也返回 1001 |
修正参数 |
1022 |
开发者 API 计费未开通 | 联系商务 |
1023 |
可用点数不足以支付这次的单价 | 充值或改用更便宜的平台 / 档位 |
1024 |
同时进行的任务数已达上限 | 等部分任务结束后重试 |
1025 |
提交过于频繁 | 降低速率,退避后重试 |
1029 |
平台未开放(未配置单价或已下线),或正在维护 | 重新获取平台列表,换平台 |
1030 |
API Key 无效 | 检查 Key |
1003 |
账户权限异常(少见) | 请联系我们 |
-1 |
服务暂时不可用 | 任务可能已创建,先用任务列表确认,再决定是否重新提交 |
还有一类情况:请求通过了校验、任务也创建了,但之后派发或执行失败。这时提交接口返回成功,任务最终 status 为 failed,原因在 error_code(例如平台已下线时为 crawler_rejected),同样不扣点数。见错误处理。
