Time Slot Object


A time slot represents a specific time period when a service is available for booking. It provides all the information needed to display availability to customers, including whether customers can actually book it, the remaining capacity, and which staff members or resources are available. Available time slots may not always be bookable due to service booking policies. When this occurs, the time slot includes information about the specific booking restrictions.

For multi-service bookings, the top-level time slot acts as a container spanning the entire service sequence (from the start of the first service to the end of the last service). Individual service details are provided in nested time slots.

Properties
allDayboolean

Whether this time slot spans one or more full days. Populated only for class- and course-based services. Not populated for appointment-based services. When true, localStartDate is 00:00:00 of the first day and localEndDate is 00:00:00 of the day after the last day (exclusive). Midnight boundaries are interpreted in the event's timeZone. The time component should be ignored for display purposes.

Default: false


availableResourcesArray <AvailableResources>minItems 0

List of resources available during the time slot.

Available only for single-service bookings. For multi-service bookings, resource information is provided in nestedTimeSlots.

Note: Behavior varies by method:

  • For List Availability Time Slots, this list is empty by default. To include resource details, specify includeResourceTypeIds or resourceIds in the request.
  • For Get Availability Time Slot, all resources are returned by default.
  • End options (ListAvailabilityTimeSlotEndOptions): Always empty. The response does not surface resource lists for end options. If the customer hasn't already picked a resource earlier in the flow, call GetAvailabilityTimeSlot with the picked localEndDate to retrieve candidate resources before booking; if a resource is already chosen, pass it through to booking directly.

bookableboolean

Whether customers can book the slot according to the service's booking policies.

For multi-service bookings, this is true only when all services in the sequence comply with their respective booking policies.


bookableCapacityintegerformat int32

Number of spots that customers can book for the slot. Calculated as the remaining capacity minus the spots reserved for the waitlist. If the service has no waitlist, identical to remainingCapacity.

For multi-service bookings, this is either 1 (sequence can be booked) or 0 (sequence can't be booked).

In ListAvailabilityTimeSlotEndOptions, capacity reflects whether at least one resource can cover [localStartDate, localEndDate]; the specific resource is selected later via GetAvailabilityTimeSlot.


bookingPolicyViolationsBookingPolicyViolations

Information about booking policy violations for the slot.

For multi-service bookings, this aggregates violations from all services in the sequence.


eventInfoEventInfo

Information about the event related to the slot. Available only for classes. Not available for appointment-based services and courses.


localEndDatestringformat LOCAL_DATE_TIME

Local end date of the time slot in YYYY-MM-DDThh:mm:ss ISO-8601 format. For example, 2026-01-30T14:00:00.

For multi-service bookings, this represents the end time of the last service in the sequence.


localStartDatestringformat LOCAL_DATE_TIME

Local start date of the time slot in YYYY-MM-DDThh:mm:ss ISO-8601 format. For example, 2026-01-30T13:30:00.

For multi-service bookings, this represents the start time of the first service in the sequence.

In ListAvailabilityTimeSlotEndOptions, this is identical on every entry and equals the request's localStartDate.


locationLocation

Information about where the business provides the service to the customer.

In ListAvailabilityTimeSlotEndOptions, this is the requested location, identical on every entry.


nestedTimeSlotsArray <NestedTimeSlot>maxItems 8

Nested time slots for multi-service bookings. Each nested slot represents 1 service in the sequence, ordered according to the service sequence specified in the request.

Available only for multi-service bookings. Empty for single-service bookings.


nonBookableReasonsNonBookableReasons

Information about why customers can't book the time slot.


remainingCapacityintegerminimum 0maximum 1000format int32

Remaining number of spots for the slot.

  • For appointment bookings: Either 1 (available) or 0 (unavailable).
  • For classes: Total capacity minus booked spots. Doesn't account for waitlist reservations. For classes with waitlists, use bookableCapacity to get the actual number of spots customers can book.
  • For courses: Total capacity minus booked spots. Courses don't currently support waitlists.

In ListAvailabilityTimeSlotEndOptions, capacity reflects whether at least one resource can cover [localStartDate, localEndDate]; the specific resource is selected later via GetAvailabilityTimeSlot.


scheduleIdstringformat GUID

Schedule ID associated with this time slot. Same as the service's schedule ID.


serviceIdstringformat GUID

[Service ID] (https://dev.wix.com/docs/api-reference/business-solutions/bookings/services/services-v2/introduction).

Available only for single-service bookings. For multi-service bookings, this field is empty and individual service IDs are provided in nestedTimeSlots.


totalCapacityintegerminimum 1maximum 1000format int32

Total number of spots for the slot.

For multi-service bookings, this is always 1 because customers book the entire service sequence as a single unit.

In ListAvailabilityTimeSlotEndOptions, capacity reflects whether at least one resource can cover [localStartDate, localEndDate]; the specific resource is selected later via GetAvailabilityTimeSlot.

Did this help?