---
title: "Retrieve and search schedule blocks"
method: GET
path: "/api/schedule_blocks"
tags: ["Clinical"]
---

# Retrieve and search schedule blocks

`GET /api/schedule_blocks`

Retrieve or search schedule blocks. Schedule blocks are used to block off time on a provider's calendar to prevent appointments from being scheduled. Use this to retrieve existing blocks for lunch breaks, meetings, PTO, or other non-appointment activities. Either `date` or `date_range` parameter is recommended for efficient querying.

## Query parameters

- `cursor` string — The pagination cursor value.
- `page_size` integer — Number of results to return per page.
- `doctor` integer — ID of the provider or doctor
- `office` integer — ID of the office
- `date` string — Specific date to filter schedule blocks
- `date_range` string — Inclusive date range to filter schedule blocks

## Response `200`

OK

- object — Paginated Result
  - `previous` string — Previous paginated page
  - `data` ScheduleBlock[] — result data
    - `description` string — Description or reason for the schedule block (e.g., "Lunch Break", "Staff Meeting", "PTO")
    - `office` integer, required — ID of the office where the schedule block is applied
    - `color` string — Custom color associated with the schedule block for calendar display
    - `practice_group` integer — ID of the practice group for the associated provider (doctor)
    - `start_time` string, date-time, required — Start time of the schedule block in ISO 8601 format
    - `exam_room` integer — ID of the exam room where the schedule block is applied
    - `series` integer — Series ID if the schedule block is part of a recurring series
    - `end_time` string, date-time, required — End time of the schedule block in ISO 8601 format
    - `provider` integer, required — ID of the provider or doctor who owns this schedule block
    - `id` integer — Unique identifier for the schedule block
    - `appointment_break` integer — ID of an associated appointment break, if applicable
  - `next` string — Next Paginated page

## Other responses

- `400` — Bad Request
- `401` — Unauthorized
- `403` — Permission Denied
- `500` — Internal Server Error

---

[API](https://skmtc.net/drchrono/apis/untitled-api.md) · [All operations](https://skmtc.net/drchrono/apis/untitled-api/llms.txt) · [OpenAPI document](https://skmtc-service-staging.skmtc.workers.dev/v1/apis/drchrono/untitled-api/versions/e595797fe800/schema)
