任務和手動觸發
目的:建立明確任務記錄並觸發關聯的佇列工作。
使用者介面流程
- 使用者定義任務負載和優先權。
- UI 呼叫
POST /api/accounts/:account_id/tasks。 - UI 顯示
/api/accounts/:account_id/tasks的任務時間軸。 - 使用者可以使用
POST /api/tasks/:task_id/trigger觸發任務。 - UI 將任務連結到按
task_id過濾的作業清單。
客戶端庫流程
const task = await api.tasks.create(accountId, {
task_type: "imap_sync_messages",
target_credential_id: imapCredentialId,
payload: { folder: "INBOX" },
priority: 0,
});
await api.tasks.trigger(task.data.id);
const refreshed = await api.tasks.get(task.data.id);
HTTP/curl 流程
API_BASE_URL="https://api.inbox-manager.com"
curl -sS -X POST "${API_BASE_URL}/api/accounts/${ACCOUNT_ID}/tasks" \
-H "authorization: Bearer ${BEARER_TOKEN}" \
-H "content-type: application/json" \
--data '{
"task_type":"imap_sync_messages",
"target_credential_id":"'"${IMAP_CREDENTIAL_ID}"'",
"payload":{"folder":"INBOX"},
"priority":0
}'
curl -sS -X POST "${API_BASE_URL}/api/tasks/${TASK_ID}/trigger" \
-H "authorization: Bearer ${BEARER_TOKEN}" \
-H "content-type: application/json" \
--data '{}'
curl -sS "${API_BASE_URL}/api/accounts/${ACCOUNT_ID}/tasks?limit=20&offset=0" \
-H "authorization: Bearer ${BEARER_TOKEN}"
註釋
- 提供者操作路由仍然是 IMAP/SMTP 操作的主要客戶端路徑。
- 通用任務對於明確佇列工作流程和操作工具非常有用。