Availability
Availability
The availability engine calculates which time slots are open for booking on a given day at a given location, for a given employee and service.
How It Works
A slot is considered available when all of the following are true:
1. The location is open on that day (work hours marked active for that day of week).
2. The employee is on shift — either following the location's work hours, or their own shift rotation if one is configured.
3. The slot is not already taken — no overlapping confirmed or pending appointment exists for that employee.
4. The location has capacity — the number of concurrent bookings does not exceed the location's concurrent capacity limit.
Browsing Available Days
The list days endpoint returns a list of dates within a range that have at least one open slot. This is used to populate the date picker in the booking flow — days with no availability are greyed out.
Browsing Available Hours
The list hours endpoint returns the specific time slots available on a chosen date. The slot size is determined by the service duration. For example, a 30-minute service with a location open 09:00–17:00 would return up to 16 slots (09:00, 09:30, 10:00… 16:30), minus any already booked.
Buffer Time
Slot generation uses the service duration exactly. If you need a gap between appointments (e.g. 10 minutes for cleaning between clients), extend the service duration to include that buffer.