OpenAPI 3.0.3Apache 2.0raw.githubusercontent.com2026-08-148263541004.1 KB

096d6a8830b7

schedule

list schedules

get/w/{workspace}/schedules/list

Path parameters

workspacestring required

Query parameters

pageinteger

which page to return (start at 1, default 1)

per_pageinteger

number of items to return for a given page (default 30, max 100)

argsstring

filter on jobs containing those args as a json subset (@> in postgres)

pathstring

filter by path (script path)

is_flowboolean

filter schedules by whether they target a flow

path_startstring

filter schedules by path prefix

schedule_pathstring

exact match on the schedule's path

descriptionstring

pattern match filter for description field (case-insensitive)

summarystring

pattern match filter for summary field (case-insensitive)

broad_filterstring

broad search across multiple fields (case-insensitive substring match)

labelstring

Filter by label

include_draft_onlyboolean

When true, append per-user draft schedules whose path has no deployed schedule. Synthesized rows carry draft_only: true.

Response

schedule list

pathstring required

The unique Windmill path for this schedule. Must be of the form u/<user>/<path> or f/<folder>/<path>.

edited_bystring required

Username of the last person who edited this schedule

edited_atstring date-time required

Timestamp of the last edit

schedulestring required

Cron expression with 6 fields (seconds, minutes, hours, day of month, month, day of week). Example '0 0 12 * * *' for daily at noon

timezonestring required

IANA timezone for the schedule (e.g., 'UTC', 'Europe/Paris', 'America/New_York')

enabledboolean required

Whether the schedule is currently active and will trigger jobs

script_pathstring required

Path to the script or flow to execute when triggered

is_flowboolean required

True if script_path points to a flow, false if it points to a script

argsScriptArgs

The arguments to pass to the script or flow

extra_permsobject required

Additional permissions for this schedule

emailstring required

Email of the user who owns this schedule, used for permissioned_as

permissioned_asstring required

The user or group this schedule runs as (e.g., 'u/admin' or 'g/mygroup')

errorstring nullable

Last error message if the schedule failed to trigger

on_failurestring nullable

Path to a script or flow to run when the scheduled job fails

on_failure_timesnumber nullable

Number of consecutive failures before the on_failure handler is triggered (default 1)

on_failure_exactboolean nullable

If true, trigger on_failure handler only on exactly N failures, not on every failure after N

on_failure_extra_argsScriptArgs

The arguments to pass to the script or flow

on_recoverystring nullable

Path to a script or flow to run when the schedule recovers after failures

on_recovery_timesnumber nullable

Number of consecutive successes before the on_recovery handler is triggered (default 1)

on_recovery_extra_argsScriptArgs

The arguments to pass to the script or flow

on_successstring nullable

Path to a script or flow to run after each successful execution

on_success_extra_argsScriptArgs

The arguments to pass to the script or flow

ws_error_handler_mutedboolean

If true, the workspace-level error handler will not be triggered for this schedule's failures

retryRetry — unresolved $ref
summarystring nullable

Short summary describing the purpose of this schedule

descriptionstring nullable

Detailed description of what this schedule does

no_flow_overlapboolean

If true, skip this schedule's execution if the previous run is still in progress (prevents concurrent runs)

tagstring nullable

Worker tag to route jobs to specific worker groups

paused_untilstring date-time nullable

ISO 8601 datetime until which the schedule is paused. Schedule resumes automatically after this time

cron_versionstring nullable

Cron parser version. Use 'v2' for extended syntax with additional features

dynamic_skipstring nullable

Path to a script that validates scheduled datetimes. Receives scheduled_for datetime and returns boolean to skip (true) or run (false)

labelsstring[]
draft_onlyboolean

True when this row is a per-user draft with no deployed schedule at the same path. Frontend renders a "Draft" badge.

is_draftboolean

True when the authed user has a per-user draft at this path (over a deployed row or a synthesized draft-only row). Frontend appends a * to the displayed name.

inherited_labelsstring[]

Labels inherited from the parent folder, computed at read time. Read-only — edit them on the folder.