Skip to main content

Availability

Fetch slots

GET /resources/slots?srvIds={serviceIds}&resIds={resourceIds}&fromDate={date}&toDate={date}

Returns the available slots for the given services, resources and date range.

ParameterRequiredFormatDescription
srvIdsYesComma separated service idsThe selected service, plus any addon services
resIdsNoComma separated resource idsLimit the search to specific resources. Omit to search all resources that can perform the service
fromDateYesYYYY-MM-DDFirst date to search
toDateYesYYYY-MM-DDLast date to search

The date range can be at most 31 days. Search one calendar week at a time, like the booking widget does. Example:

curl "{baseUrl}/resources/slots?srvIds=46368&resIds=8274&fromDate=2026-07-27&toDate=2026-08-02"
{
"resourceSlots": [
{
"hashId": "QPEGJ3",
"slots": [
{
"key": "MTo4Mjc0OjQ2MzY4OjE3ODU0ODEyMDAwMDA6MzA6ZmFsc2U6NTAwLjAwOk5VTEw6",
"date": "2026-07-31",
"time": "09:00:00",
"length": 30,
"resource": "",
"resourceId": 8274,
"serviceIds": [46368],
"price": 500.0,
"priceFrom": false,
"notAvailable": false,
"maxSlots": 1,
"bookedSlots": 0,
"resourceHashId": "QPEGJ3"
}
]
}
],
"nextAvailable": null
}

The example is shortened to one slot.

Slots are grouped per resource in resourceSlots. Times are local to the account's time zone (see timeZone in settings). When you search several resources, the same start time can appear once per resource. Deduplicate by date and time if your UI does not show who performs the service.

FieldDescription
keyOpaque identifier for the slot. Pass it unchanged to reserve
date, time, lengthStart date, start time and length in minutes
price, priceFromPrice for the selected services with this resource. priceFrom means the price is a starting price
notAvailableThe time is shown but cannot be booked. Skip these slots
maxSlots, bookedSlotsCapacity information, used for class bookings with more than one seat
resourceId, resourceHashIdThe resource this slot belongs to

When the range contains no available slots, nextAvailable holds the next date that has one. Use it to jump your calendar forward instead of searching week by week.

Slot availability changes constantly, so do not cache slot responses. A slot is only guaranteed once it is reserved.