Skip to main content
The Check Appointment Availability endpoint returns every possible appointment slot for a given professional on a specific date, indicating whether each slot is open or already taken. Slots are calculated from the professional’s configured working hours and filtered against existing bookings, blocked time, and holidays — so what you receive is an accurate, real-time picture of what can be offered to a patient.

Endpoint

Authentication

Query Parameters

string
required
UUID of the professional whose availability you want to check. You can find this value in the professional_id field returned by GET /schedules.
string
required
The date to query in YYYY-MM-DD format, interpreted in the professional’s configured timezone (e.g. America/Sao_Paulo). For example, 2025-02-10.
integer
Desired slot duration in minutes. When omitted, the professional’s default appointment_duration is used. Supplying a custom value lets you query availability for longer or shorter appointment types without changing the professional’s default settings.

Response Fields

string
required
The queried date echoed back in YYYY-MM-DD format.
string
required
UUID of the professional whose availability is represented.
array
required
Ordered array of time slot objects covering the professional’s full working window for the given date.
Always call this endpoint before creating an appointment via POST /appointments. Even if a slot appears available in your UI, another booking may have been made in the milliseconds since you last polled. If you attempt to book an unavailable slot, the Appointments API returns a 409 Conflict — checking availability first lets you surface a friendly message to the patient and offer alternatives without an extra round-trip.

Error Responses

Example Request

Example Response

The example above shows Dra. Mariana Costa’s afternoon availability on 10 February 2025 (UTC times reflect the America/Sao_Paulo offset of −3 h). Slots at 11:30, 12:00, and 15:00 UTC are already booked; all others are open.