定时任务 API
定时任务的创建、管理、执行历史查询。
定时任务 API
定时任务 API 支持以 cron 表达式、固定间隔或单次执行的方式创建自动化任务,并提供执行历史查询。
获取任务列表
GET /api/admin/schedules
响应示例:
{
"items": [
{
"id": 1,
"name": "每日站会提醒",
"trigger_type": "cron",
"trigger_value": "0 9 * * 1-5",
"enabled": true,
"next_run_at": "2025-03-18T09:00:00Z",
"created_at": "2025-01-10T08:00:00Z"
}
],
"total": 5
}
创建定时任务
POST /api/admin/schedules
Cron 类型示例:
{
"name": "周报生成",
"trigger_type": "cron",
"trigger_value": "0 18 * * 5",
"action": "generate_weekly_report",
"params": {"channel": "feishu"},
"enabled": true
}
trigger_type 支持三种模式:
cron:标准 cron 表达式(如0 9 * * 1-5表示工作日早9点)interval:固定间隔执行(如30m每30分钟、2h每2小时)once:单次执行,trigger_value为 ISO 8601 时间字符串
更新定时任务
PUT /api/admin/schedules/:id
请求体与创建接口一致,仅传入需要修改的字段。
删除定时任务
DELETE /api/admin/schedules/:id
启用/禁用
POST /api/admin/schedules/:id/toggle
切换任务的启用状态。禁用后任务不会被调度执行,但保留配置信息。
立即执行
POST /api/admin/schedules/:id/run
手动触发一次任务执行,不影响后续调度计划。
执行历史
GET /api/admin/schedules/:id/history
响应示例:
{
"items": [
{
"id": 101,
"schedule_id": 1,
"status": "success",
"started_at": "2025-03-17T09:00:00Z",
"finished_at": "2025-03-17T09:00:12Z",
"result": "已发送站会提醒至飞书群"
}
],
"total": 30
}