---
title: "Update schedule"
method: PUT
path: "/schedules/{idOrName}"
---

# Update schedule

`PUT /schedules/{idOrName}`

Update an existing schedule for an app.

## Path parameters

- `idOrName` string, required — The ID or name of the schedule to update.

## Headers

- `X-Tower-Request-Number` integer — Optional account-scoped monotonic sequence token used to reject out-of-order writes. See the fence documentation for the acceptance window and retry behavior.

## Request body

- UpdateScheduleParams
  - `$schema` string, uri — A URL to the JSON Schema for this object.
  - `app_version` string, nullable — This property is deprecated and ignored. Schedules inherit the version from their environment.
  - `cron` string — The cron expression defining when the app should run
  - `environment` string — The environment to run the app in
  - `name` string, nullable — The name for this schedule. Must be unique per environment.
  - `overlap_policy` 'skip' | 'allow', nullable — The overlap policy for the schedule
  - `owner` ScheduleOwner
    - `name` string, required — The owner's name: a user's full name (first + last) or a service account's name. Must identify exactly one member of the account.
    - `type` 'user' | 'service_account', required — The kind of owner: 'user' or 'service_account'
  - `parameters` RunParameter[] — Parameters to pass when running the app
    - `hidden` boolean — Whether this parameter is hidden/secret. Defaults to false.
    - `is_override` boolean, nullable — Whether this parameter's value was supplied as an override at run/schedule creation time (true) or comes from the app version's default (false).
    - `name` string, required
    - `value` string, required
  - `status` 'active' | 'disabled', nullable — The status of the schedule
  - `timezone` string, nullable — The IANA timezone identifier that the cron expression should be evaluated in (e.g., 'America/New_York', 'Europe/London').

## Response `200`

OK

- UpdateScheduleResponse
  - `$schema` string, uri — A URL to the JSON Schema for this object.
  - `schedule` Schedule, required
    - `app_name` string, required — The name of the app that will be executed
    - `app_status` 'active' | 'disabled', required — The status of the app
    - `app_version` string — This property is deprecated. Schedules inherit the version from their environment. This field returns the environment's current version.
    - `created_at` string, date-time, required — The timestamp when the schedule was created
    - `cron` string, required — The cron expression defining when the app should run
    - `environment` string, required — The environment to run the app in
    - `id` string, required — The unique identifier for the schedule
    - `name` string, required — The name of this schedule
    - `overlap_policy` 'allow' | 'skip', required — The policy for handling overlapping runs
    - `owner` ScheduleOwner
      - `name` string, required — The owner's name: a user's full name (first + last) or a service account's name. Must identify exactly one member of the account.
      - `type` 'user' | 'service_account', required — The kind of owner: 'user' or 'service_account'
    - `parameters` RunParameter[] — The parameters to pass when running the app
      - `hidden` boolean — Whether this parameter is hidden/secret. Defaults to false.
      - `is_override` boolean, nullable — Whether this parameter's value was supplied as an override at run/schedule creation time (true) or comes from the app version's default (false).
      - `name` string, required
      - `value` string, required
    - `status` 'active' | 'disabled', required — The status of the schedule
    - `timezone` string, required — The IANA timezone identifier that the cron expression is evaluated in (e.g., 'America/New_York', 'Europe/London'). Defaults to 'UTC'.
    - `updated_at` string, date-time, required — The timestamp when the schedule was last updated

## Other responses

- `412` — Precondition Failed
- `422` — Unprocessable Entity
- `500` — Internal Server Error

---

[API](https://skmtc.net/tower/apis/tower-api.md) · [All operations](https://skmtc.net/tower/apis/tower-api/llms.txt) · [OpenAPI document](https://skmtc-service-staging.skmtc.workers.dev/v1/apis/tower/tower-api/revisions/0e42b0fb26d9/schema)
