Query availability

Query the availability of resources

❗️

This endpoint is deprecated

If you are setting up a new integration with Timekit, please use the (POST /availability)[ref:query-availability-v2) instead of this endpoint. This endpoint is only documented as a reference for legacy integrations.

📘

Available until blocked

The default notion in Timekit is that a resource is available until blocked. Blocked meaning that an event is reserving time in the calendar or that some general business-rules, like opening-hours have been applied.
This is contrary to the use-cases where the baseline is: A given resource is only available in these pre-defined time-slots.

The "all_solutions" option

By default, the algorithm will return sequential available time-slots in the length duration you've specified. The available time-slots will not overlap, which means that some potential time-slots are ignored. If you want ALL time-slots (based on 15-minute intervals), then set "all_solutions" to true.

Example:
If we request time-slots of 1 hours length, from 10 to 12, without "all_solutions", these 2 time-slots will be returned:

  • 10:00-11:00
  • 11:00-12:00

If we request with "all_solutions":true, these 5 time-slots will be returned:

  • 10:00-11:00
  • 10:15-11:15
  • 10:30-11:30
  • 10:45-11:45
  • 11:00-12:00

Buffer Time

The buffer option makes sure that you have some breathing time between each available booking and any existing events in the calendar included in the availability check. Once an available time-slot has been booked and turned into a calendar event, it will too be included in the buffer time calculation.

You define buffer like you define length: "15 minutes", "1 hour" etc.

The "no_day_span" option

The "no_day_span" option means that no time-slots that start in one day end in another.
With the option being omitted(default) or set to false, these time-slots could be returned (looking for 2 hours):

  • 21:00-23:00
  • 23:00-01:00
  • 01:00-03:00

With "no_day_span" set to true, the same request would return these timeslots:

  • 21:00-23:00
  • 00:00-02:00

📘

Mutual availability

You can search for mutual availability, in other words, find time-slots where several resources are simultaneously available. All you need to do is to add the ids of the resources you want to search for mutual availability, to resource_ids array.

Note that there can still only be one resource as "owner" of the booking, so if you include more resources, make sure to add them as customers to the final event to make sure their calendar is blocked too.

Body Params
resource_ids
array of strings

Array of resource-uuid's. Will look in all the resource's calendars for blocking events

resource_ids
string
Defaults to 1 hour

How much time must each available time-slot contain.

filters
array of strings

Filters to apply, see filter reference page

filters
string
Defaults to Now

Defines the beginning of the search-space Written is human language, eg. 1 day, tomorrow, 2 weeks

string
Defaults to 4 weeks

Defines the end of the search-space (max 6 months)

string
Defaults to desc

Chronological ascending (asc) or desceding (desc) order of results

boolean
Defaults to false

Do you want to ignore all day event in this query?

boolean
Defaults to false

Return all overlapping timeslots? (see note)

emails
array of strings

Array of emails to check for mutual availability

emails
calendar_ids
array of strings

Array of uuid of calendars to check for mutual availability. Use this instead of resource_ids if you only want to look for availability in specific calendars

calendar_ids
string

The amount of buffer you want to add to each booking. (see note)

boolean
Defaults to false

If you do not want to get time-slots that span days. (see note)

Responses

Language
Credentials
Header
Request
Response
Click Try It! to start a request and see the response here! Or choose an example:
application/json