Client Scheduler Availability

The Availability API is used to display a list of dates and times that are available for a service or class to be booked for a Staff, Reason, and/or Location.

These are the endpoints that are available under the /scheduling/availability path, which lists all the availability for the provided filters.

Endpoint

Description

Endpoint

Description

POST /scheduling/availability/month/{year}/{month}

Returns availability for provided parameters for a month.

POST /scheduling/availability/day/{year}/{month}/{day}

Returns availability for provided parameters for a day.

Data points passed in the request URL or post body portion of the API call that are used to filter the data being requested. 

Parameter

Type

Endpoints to be used with

Description

Parameter

Type

Endpoints to be used with

Description

year

integer

ALL

Parameter provided in the URL to limit the year that availability is being searched on.

month

integer

ALL

Parameter provided in the URL to limit the month that availability is being searched on.

day

integer

POST /scheduling/availability/day/{year}/{month}/{day}

Parameter provided in the URL to limit the day that availability is being searched on.

staffIdList

integer array

ALL

List of Staff IDs to limit the availability search.

reasonIdList

integer array

ALL

List of Reason IDs to limit the availability search.

**Required

locationIdList

integer array

ALL

List of Reason IDs to limit the availability search.

locationGroupIdList

integer array

ALL

List of Location Group IDs to limit the availability search.

reasonGroupIdList

integer array

ALL

List of Reason Group IDs to limit the availability search.

classScheduleIdList

integer array

ALL

List of Classs Schedule IDs to limit the availability search.

locationSuperGroupIdList

integer array

ALL

List of Location Super Group IDs to limit the availability search.

reasonSuperGroupIdList

integer array

ALL

List of Reason Super Group IDs to limit the availability search

locale

String

ALL

Displays as general preferred country and language of specified staff person; by default this value is read from their browser settings  - for more info, see Locale API page. 

clientTimeZone

String

ALL

The timezone of the client to search availability.

duration

Integer

ALL

The duration of the appointment to search availability.


[{ "businessId": 43111, "currentMonth": 1675209600000, "endDate": { "date": 1708041600000, "dateId": null, "day": 16, "dayOfWeek": 5, "month": 2, "openSlotCount": 0, "year": 2024 }, "filledDays": [], "locationList": null, "month": 2, "openDays": [{ "date": 1676592000000, "dateId": null, "day": 17, "dayOfWeek": 5, "month": 2, "openSlotCount": 0, "year": 2023, }], "staffList": null, "startDate": { "date": 1676505600000, "dateId": null, "day": 16, "dayOfWeek": 4, "month": 2, "openSlotCount": 0, "year": 2023 }, vacationDays: [], year: 2023 }]
[{ "clientEndDate": "2023-02-21", "clientEndTime": 1450, "clientStartDate": "2023-02-21", "clientStartTime": 1400, "endTime": 1450, "staffEndDate": "2023-02-21", "staffEndDateTimeUTC": 1677009000000, "staffEndTime": 1500, "staffStartDate": "2023-02-21", "staffStartDateTimeUTC": 1677006000000, "staffStartTime": 1400, "startTime": 1400, "timeString": "14:00 - 14:50 America/New_York (14:00 - 14:50 ET)", "units": [{ "bundleResourceIdList": [2556], "locationId": 282639, "professionalId": 298660, "reasonId": 159330, "resourceId": 16450, "roundRobin": false, "tandemStaffIdList": null }] }]

Â