任务
任务功能在执行进入队列之前定义意图级提供程序工作请求。 它为您提供了明确的编排控制,因此可以确定性地创建、检查和触发收件箱操作。
为什么这很重要
此功能通过使任务记录所请求工作的真实来源,将业务意图与队列执行细节分开。它支持作业扇出之前的显式触发和可审核性,从而在自动化需要干预时保持操作员控制清晰。
核心流程
客户端创建一个具有类型、目标和负载的任务,然后使用该记录作为执行的规范意图。触发后,将从任务创建队列作业,后续读取反映任务状态和链接的作业结果。
操作
| 运营 | 端点 | 目的 |
| -------- | --------------------------------------------- | -------------------------- | ------------------ |
| 创建任务 | POST /api/accounts/:account_id/tasks | 注册新的帐户范围的任务意图 |
| 列出任务 | GET /api/accounts/:account_id/tasks | 获取帐户的任务时间表 |
| 搜索任务 | POST /api/accounts/:account_id/tasks/search | 按类型/状态过滤器查询任务 |
| 获取任务 | GET /api/tasks/:task_id | 检索一项任务 |
| 更新任务 | PATCH /api/tasks/:task_id | 修改可变任务字段 |
| 删除任务 | DELETE /api/tasks/:task_id | 删除任务 |
| 触发任务 | POST /api/tasks/:task_id/trigger | 从任务 | 开始或重新启动执行 |
关键数据和状态
{
id: "tsk_...",
account_id: "acc_...",
task_type: "imap_sync_messages",
target_credential_id: "pc_...",
payload: { folder: "INBOX" },
priority: 0
}
故障模式和控制
在队列执行开始之前,无效的任务负载或目标引用将被拒绝。触发操作是明确的并且是任务范围的,帐户访问检查适用于创建/读取/改变边界,并且任务删除不会作为不相关作业清理的副作用而发生。