Core Concepts

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.