跳到主要内容

使用指南

完整工作流程

# 步骤1: 提交批量监控任务
curl -X POST "https://business-api.molizhishu.com/api/business/monitor/task/batch/shared" \
-H "Authorization: Bearer YOUR_TOKEN" \
-H "Content-Type: application/json" \
-d '{
"prompts": ["人工智能发展趋势", "机器学习应用"],
"platforms": [
{"platform": "deepseek", "mode": "search", "screenshot": 1}
]
}'

# 步骤2: 查询任务状态
curl -X GET "https://business-api.molizhishu.com/api/business/monitor/task/status/550e8400-e29b-41d4-a716-446655440000" \
-H "Authorization: Bearer YOUR_TOKEN"

# 步骤3: 获取完整结果
curl -X GET "https://business-api.molizhishu.com/api/business/monitor/task/result/550e8400-e29b-41d4-a716-446655440000" \
-H "Authorization: Bearer YOUR_TOKEN"

# 步骤4: 获取单个子任务结果
curl -X GET "https://business-api.molizhishu.com/api/business/monitor/task/result/550e8400-e29b-41d4-a716-446655440000/660e8400-e29b-41d4-a716-446655440001" \
-H "Authorization: Bearer YOUR_TOKEN"

# 步骤5: 获取任务列表
curl -X GET "https://business-api.molizhishu.com/api/business/monitor/task/list?page=1&size=10&status=completed" \
-H "Authorization: Bearer YOUR_TOKEN"

注意事项

认证与权限

  • 所有接口都需要有效的认证 Token
  • Token 通过 Authorization: Bearer <token> 头传递
  • Token 过期后需要重新获取

任务执行流程

  1. 任务提交后初始状态为 pending,系统异步处理
  2. 建议每 5-10 秒轮询一次状态接口,避免过于频繁的请求
  3. statuscompletedpartial_completedfailed 时,可以获取最终结果

数据保留

  • 任务结果数据会保留一定时间
  • 建议及时获取和备份重要数据

回调机制(可选)

系统支持在任务完成后主动将结果推送到指定的回调地址,无需轮询查询。

回调地址配置

  • 提交时指定:在请求参数中传入 callbackUrl,仅对当前任务生效。
  • 用户默认地址:未提供 callbackUrl 时,系统自动使用用户配置的默认回调地址(如已配置)。
  • 两者都未配置时,不触发回调。

回调触发条件

当所有子任务都已完成时(包括多轮重试,最终失败的任务)才会触发回调,最终回调的状态:

状态说明
completed所有子任务成功完成
partial_completed部分子任务成功,部分失败
failed所有子任务失败

默认回调数据格式

系统以 HTTP POST 方式发送 JSON 数据到回调地址:

POST {callbackUrl}
Content-Type: application/json

请求体结构:

{
"taskId": "ec617e1996174c129a872680fa27078e",
"userId": 123,
"timestamp": 1707388800000,
"status": "completed",
"totalItems": 6,
"completedItems": 6,
"failedItems": 0,
"subTaskList": [
{
"subTaskId": "4124831",
"platform": "deepseek",
"mode": "reasoning",
"prompt": "请帮我搜索最新款 iPhone型号,以及 iOS 版本",
"status": "completed",
"time": 1707388750000,
"pageScreenshot": "https://example.com/screenshot.png",
"answerContent": "AI 回答内容...",
"referenceList": [],
"citationList": [],
"reasoningProcess": null,
"recommendedQuestions": [],
"mediaContent": [],
"errorMessage": null
}
]
}

回调数据字段说明:

字段类型说明
taskIdString批量任务ID
userIdLong用户ID
timestampLong回调发送时间戳(毫秒)
statusString任务最终状态(completed/partial_completed/failed)
totalItemsInteger子任务总数
completedItemsInteger已完成子任务数
failedItemsInteger失败子任务数
subTaskListArray子任务结果列表,结构与「获取任务结果」接口返回一致

回调成功判定

系统根据 HTTP 响应状态码判定回调是否成功:

  • 2xx(200-299):视为成功
  • 其他状态码或超时:视为失败,进入重试流程

超时设置:连接超时 10 秒,读取超时 30 秒。

重试策略

回调失败后系统会自动重试,采用递增间隔策略:

重试次数间隔时间说明
第 1 次15 秒快速重试,应对临时网络问题
第 2 次1 分钟短期等待
第 3 次5 分钟中期等待
第 4 次15 分钟较长等待
第 5 次1 小时长期等待
第 6 次4 小时更长等待
第 7 次12 小时最后尝试

超过 7 次重试后,回调状态标记为 FAILED,不再重试。

自定义回调

系统支持为自定义回调实现,包括但不限于:

  • 自定义数据结构:按客户需求转换回调数据格式
  • 自定义认证方式:支持客户端要求的签名、Token 等认证机制
  • 自定义传输协议:根据业务场景适配不同的传输方式

如需定制回调,请联系管理员配置。未配置自定义回调的用户默认使用上述标准 JSON 格式推送。