Skip to content

availableSlotsForRange

Get open appointment times for a date range. Returns array of dates sorted in ascending order (considered public)

Arguments

appointment_to_reschedule_id · ID · (optional) The ID of the appointment that will be rescheduled. Only needed if you want to use appointment-specific rescheduling restrictions
appointment_type_ids · [ID] · An array of group appointment type IDs can be passed in. When passed in, will return availability for multiple group appointment Overrides appt_type_id.
end_date · String · If not provided, defaults to the current date
end_date_boundary · String · When passed in, slots after this will not be returned. Inclusive. YYYY-MM-DD format
licensed_in_state · String · Two letter state abbreviation (e.g. "CA", "NY")
make_unique · Boolean · When false, multiple slots for the same time (for different providers) will be returned.
provider_id · String · Required
tag_ids · [ID] · Filters the provider list to only include users who have all of the specified tags applied. Ignored if org_level is not true
start_date · String · If not provided, defaults to the current date
start_date_boundary · String · When passed in, slots before this will not be returned. YYYY-MM-DD format
timezone · String · When passed in, slots will be calculated with the specified timezone

Returns

[PotentialAppointmentSlot!]

Example

query availableSlotsForRange(
$appointment_to_reschedule_id: ID
$appointment_type_ids: [ID]
$appt_loc_id: String
$appt_type_id: String
$clients_can_join_waitlist: Boolean
$contact_type: String
$end_date: String
$end_date_boundary: String
$length: String
$licensed_in_state: String
$make_unique: Boolean
$org_level: Boolean
$outside_factors: Boolean
$provider_id: String
$provider_ids: [String]
$tag_ids: [ID]
$start_date: String
$start_date_boundary: String
$timezone: String
) {
availableSlotsForRange(
appointment_to_reschedule_id: $appointment_to_reschedule_id
appointment_type_ids: $appointment_type_ids
appt_loc_id: $appt_loc_id
appt_type_id: $appt_type_id
clients_can_join_waitlist: $clients_can_join_waitlist
contact_type: $contact_type
end_date: $end_date
end_date_boundary: $end_date_boundary
length: $length
licensed_in_state: $licensed_in_state
make_unique: $make_unique
org_level: $org_level
outside_factors: $outside_factors
provider_id: $provider_id
provider_ids: $provider_ids
tag_ids: $tag_ids
start_date: $start_date
start_date_boundary: $start_date_boundary
timezone: $timezone
) {
appointment_id
appointment_type
color
date
has_waitlist_enabled
is_fully_booked
length
user_id
}
}