Schedules

Schedule management operations

Schedule management operations

List all scheduled workflows

Retrieve a list of all scheduled workflows with their current status and override information

GET
/schedules

Response Body

curl -X GET "https://loading/api/v0/schedules"
{
  "data": {
    "schedules": [
      {
        "cron": "0 0 9 * * 1-5",
        "enabled": true,
        "is_override": false,
        "last_run_status": "success",
        "last_run_time": "2024-01-14T09:00:00-05:00",
        "next_run_time": "2024-01-15T09:00:00-05:00",
        "schedule_id": "schedule-my-project-daily-report",
        "timezone": "America/New_York",
        "workflow_id": "daily-report",
        "yaml_config": {
          "cron": "string",
          "enabled": true,
          "end_at": "string",
          "input": {
            "property1": null,
            "property2": null
          },
          "jitter": "string",
          "overlap_policy": "skip",
          "start_at": "string",
          "timezone": "string"
        }
      }
    ],
    "total": 5
  },
  "error": {
    "code": "string",
    "details": "string",
    "message": "string"
  },
  "message": "string",
  "status": 0
}
{
  "data": null,
  "error": {
    "code": "string",
    "details": "string",
    "message": "string"
  },
  "message": "string",
  "status": 0
}

Get schedule by workflow ID

Retrieve detailed information about a specific scheduled workflow including YAML configuration

GET
/schedules/{workflow_id}

Path Parameters

workflow_idstring

Workflow ID

Response Body

curl -X GET "https://loading/api/v0/schedules/string"
{
  "data": {
    "cron": "0 0 9 * * 1-5",
    "enabled": true,
    "is_override": false,
    "last_run_status": "success",
    "last_run_time": "2024-01-14T09:00:00-05:00",
    "next_run_time": "2024-01-15T09:00:00-05:00",
    "schedule_id": "schedule-my-project-daily-report",
    "timezone": "America/New_York",
    "workflow_id": "daily-report",
    "yaml_config": {
      "cron": "string",
      "enabled": true,
      "end_at": "string",
      "input": {
        "property1": null,
        "property2": null
      },
      "jitter": "string",
      "overlap_policy": "skip",
      "start_at": "string",
      "timezone": "string"
    }
  },
  "error": {
    "code": "string",
    "details": "string",
    "message": "string"
  },
  "message": "string",
  "status": 0
}
{
  "data": null,
  "error": {
    "code": "string",
    "details": "string",
    "message": "string"
  },
  "message": "string",
  "status": 0
}
{
  "data": null,
  "error": {
    "code": "string",
    "details": "string",
    "message": "string"
  },
  "message": "string",
  "status": 0
}
{
  "data": null,
  "error": {
    "code": "string",
    "details": "string",
    "message": "string"
  },
  "message": "string",
  "status": 0
}

Update schedule

Update a scheduled workflow's enabled state and/or cron expression. At least one field must be provided. This creates a temporary override that persists until the next YAML reload.

PATCH
/schedules/{workflow_id}

Path Parameters

workflow_idstring

Workflow ID

Update request with at least one field (enabled or cron)

cron?string
enabled?boolean

Response Body

curl -X PATCH "https://loading/api/v0/schedules/string" \
  -H "Content-Type: application/json" \
  -d '{}'
{
  "data": {
    "cron": "0 0 9 * * 1-5",
    "enabled": true,
    "is_override": false,
    "last_run_status": "success",
    "last_run_time": "2024-01-14T09:00:00-05:00",
    "next_run_time": "2024-01-15T09:00:00-05:00",
    "schedule_id": "schedule-my-project-daily-report",
    "timezone": "America/New_York",
    "workflow_id": "daily-report",
    "yaml_config": {
      "cron": "string",
      "enabled": true,
      "end_at": "string",
      "input": {
        "property1": null,
        "property2": null
      },
      "jitter": "string",
      "overlap_policy": "skip",
      "start_at": "string",
      "timezone": "string"
    }
  },
  "error": {
    "code": "string",
    "details": "string",
    "message": "string"
  },
  "message": "string",
  "status": 0
}
{
  "data": null,
  "error": {
    "code": "string",
    "details": "string",
    "message": "string"
  },
  "message": "string",
  "status": 0
}
{
  "data": null,
  "error": {
    "code": "string",
    "details": "string",
    "message": "string"
  },
  "message": "string",
  "status": 0
}
{
  "data": null,
  "error": {
    "code": "string",
    "details": "string",
    "message": "string"
  },
  "message": "string",
  "status": 0
}

Delete schedule

Remove a scheduled workflow from Temporal. The schedule will be recreated on the next YAML reload if still defined.

DELETE
/schedules/{workflow_id}

Path Parameters

workflow_idstring

Workflow ID

Response Body

curl -X DELETE "https://loading/api/v0/schedules/string"
Empty
{
  "data": null,
  "error": {
    "code": "string",
    "details": "string",
    "message": "string"
  },
  "message": "string",
  "status": 0
}
{
  "data": null,
  "error": {
    "code": "string",
    "details": "string",
    "message": "string"
  },
  "message": "string",
  "status": 0
}
{
  "data": null,
  "error": {
    "code": "string",
    "details": "string",
    "message": "string"
  },
  "message": "string",
  "status": 0
}