Ciaren

Schedules API

Schedules API

Run a flow automatically on a cron schedule. A schedule carries a cron expression, a timezone, an optional engine, and reliability settings (max_retries, retry_delay_seconds, catch_up, run_timeout_seconds). See Scheduling for the behavior.

A schedule for a parameterized flow may also carry a parameters object — flow-parameter overrides applied to every run it fires. Blank/omitted values fall back to each parameter's declared default.

MethodPathDescription
GET/api/flows/{flow_id}/schedulesList a flow's schedules
POST/api/flows/{flow_id}/schedulesCreate a schedule for a flow
GET/api/schedulesList all schedules (optionally ?flow_id=)
GET/api/schedules/{schedule_id}Get one schedule
PATCH/api/schedules/{schedule_id}Update a schedule (cron, engine, is_enabled, …)
DELETE/api/schedules/{schedule_id}Delete a schedule
POST/api/schedules/{schedule_id}/run-nowTrigger a one-off run immediately
GET/api/schedules/{schedule_id}/runsList runs created by this schedule

A manual run-now stays out of the retry/auto-disable machinery — it's a plain one-off execution.

Schedule reads include a recent_runs array — the last five runs the schedule fired, newest first, each with id, status, and created_at. The UI uses it for the run-history icons on the Schedules page; for the full history use GET /api/schedules/{schedule_id}/runs.

GET /api/schedules/{schedule_id}/runs accepts the same pagination shape as the runs list: limit (1-10000, default 100) and offset (default 0).

See also