---
title: "Update a schedule"
method: PATCH
path: "/schedules/{id}"
tags: ["Schedules"]
---

# Update a schedule

`PATCH /schedules/{id}`

## Request

- Base URL: `https://api.crevio.co/v1`
- URL: `https://api.crevio.co/v1/schedules/{id}`
- Auth: API key in header `Authorization`

Updates a schedule. Passing `availability` or `overrides` replaces that set wholesale.

## Path parameters

- `id` string, required

## Request body

- object
  - `name` string
  - `time_zone` string: IANA timezone the availability is expressed in
  - `availability` object[]: Weekly recurring availability windows. Replaces the existing set.
    - `day_of_week` integer, required: 0 = Sunday … 6 = Saturday
    - `start_time` string, required: 24h local time HH:MM
    - `end_time` string, required
  - `overrides` object[]: Per-date exceptions (days off or custom hours).
    - `date` string, date, required
    - `unavailable` boolean
    - `start_time` string, nullable
    - `end_time` string, nullable

## Response `200`

The updated schedule

- Schedule
  - `object` string, required
  - `id` string, required
  - `name` string, required
  - `time_zone` string, required
  - `created_at` string, date-time, required
  - `updated_at` string, date-time, required
  - `availability` object[], required
  - `overrides` object[], required

## Other responses

- `400`: Bad request
- `401`: Authentication required
- `403`: Forbidden
- `404`: Resource not found
- `422`: Validation error
- `429`: Rate limit exceeded — 600 requests per minute per credential. Retry after the number of seconds in `Retry-After`.
- `500`: Internal server error

---

[API](https://skmtc.dev/crevio/apis/crevio-api-v1.md) · [All operations](https://skmtc.dev/crevio/apis/crevio-api-v1/llms.txt) · [OpenAPI document](https://skmtc.dev/crevio/apis/crevio-api-v1/revisions/2219f18ad651?raw)
