Skip to main content

Use case

Trigger a workflow on a recurring cadence without polling or external cron infrastructure. Use these endpoints to create, list, inspect, update, and delete schedules bound to a workflow.

API Reference

See the full request/response schema and parameters in the API Reference.

Pricing

Scheduled runs are billed the same as manual runs. See Credits & Pricing Guide for credit costs.

Errors

For error responses (400, 401, 403, 422, etc.), see Handling Errors.

Schedule definition

A schedule binds a workflow_id to a cron_expression and timezone:
  • workflow_id — the workflow to run. The workflow must already exist.
  • name — required, up to 120 characters.
  • cron_expression — standard 5-field cron (minute hour day month weekday).
  • timezone — IANA timezone, e.g. America/Los_Angeles. Defaults to UTC.
  • description — optional free-form text.
  • is_active — defaults to true. Set to false to save a schedule without activating it.
A schedule is bound to the creating user or API key. If that entity loses access to the organization, the schedule is automatically paused and disabled_reason is set on the response.

Create schedule

Create a new schedule for a workflow.
Required body fields: workflow_id, name, and cron_expression.

Example request

Example response


List schedules

Retrieve all schedules for your organization.
Optional query parameter: workflow_id — filter to schedules for a single workflow.

Get schedule

Retrieve a single schedule by ID.

Update schedule

Update a schedule’s name, cadence, timezone, description, or active state.
All body fields (name, cron_expression, timezone, description, is_active) are optional — only include what you want to change.
Reactivating a schedule that was auto-paused also transfers ownership to the reactivating user or API key.

Example request


Delete schedule

Permanently delete a schedule.
Deleting a schedule does not affect the underlying workflow or its run history.

Example usage