---
title: "View available slots"
method: GET
path: "/available_slots"
tags: ["Available Slots"]
---

# View available slots

`GET /available_slots`

This endpoint returns the bookable slots for the requested locations over the given date range, computed from provider availabilities and existing appointments. At least one of pids or appointment_type_id must be provided.

## Query parameters

- `subdomain` string, required
- `start_date` string, date, required
- `days` integer, required
- `appointment_type_id` integer
- `working_hour_label_id` integer
- `working_hour_source` 'manual' | 'synced'
- `slot_length` integer
- `slot_interval` integer
- `overlapping_operatory_slots` boolean
- `appointments_per_timeslot` integer
- `lids[]` integer[], required
- `pids[]` integer[]
- `operatory_ids[]` integer[]

## Headers

- `Nex-Api-Version` string, required

## Response `200`

Successful

- APIV20240412EntitiesAvailableSlotResponseCollectionResponse — API_V20240412_Entities_AvailableSlotResponse_Collection_Response model
  - `code` boolean — Indicates the success or failure of the request
  - `description` string — Additional context on the request to help with debugging.
  - `error` string[] — Any errors that occur during the execution of the request.
  - `data` APIV20240412EntitiesAvailableSlotResponse[]
    - `lid` integer — Relevant location id
    - `pid` integer, nullable — Relevant providers id. Omitted when slots are not grouped by provider
    - `operatory_id` integer, nullable — Relevant operatory id. Omitted when slots are not grouped by operatory
    - `slots` APIV20240412EntitiesAvailableSlot[] — Array of available start times
      - `time` string — Start time of the slot in the practices timezone
      - `end_time` string — End time of the slot in the practices timezone
      - `operatory_id` integer — Operatory id for the slot. Omitted when the slot is not tied to an operatory
      - `provider_id` integer — Provider id for the slot, if available. Omitted when the slot is not tied to provider
      - `working_hour_label_id` integer, nullable — ID of working hour label of this slot
    - `next_available_date` string, date, nullable — The earliest date when a valid slot exists
  - `count` integer — Number of total objects, in case of collection.

## Other responses

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

---

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