A number of the Timekit endpoints provide the ability to search on relevant attributes.
You specify your search criteria with the value for the query parameter "search". Each search criteria is a key-value pair separated by colon, like so: ?search=name:timekit
, which will find anything with the name-attribute having the value timekit.
You can add multiple criteria to a search, by separating each criterion with a semicolon (;
) like so:
?search=name:timekit;length:1hour
this results in anand search,
Each endpoint will specify which attributes are searchable.
Ex. 1 Search on a given resource
This is the most common search throughout API requests since most of the time you'll be requesting data only for a specific resource.
curl --request GET
--url https://api.timekit.io/v2/bookings?search=resource.id:78a4d873-2a68-41c6-bdd4-c0ca5b35efd3 \
--header 'Content-Type: application/json' \
--user :live_api_key_7nzvc7wsBQQISLeFSVhROys9V1bUJ1z7
Ex. 2: Search based on graph
Let's say we want to find all bookings based on their graph.
curl --request GET \
--url https://api.timekit.io/v2/bookings?search=graph:confirm_decline \
--header 'Content-Type: application/json' \
--user :live_api_key_7nzvc7wsBQQISLeFSVhROys9V1bUJ1z7
Ex. 3: Search based on graph and state
If we want to filter based on graph and state, we can send the following request:
curl --request GET \
--url https://api.timekit.io/v2/bookings?search=graph:confirm_decline;state:tentative \
--header 'Content-Type: application/json' \
--user :live_api_key_7nzvc7wsBQQISLeFSVhROys9V1bUJ1z7
Which would return all bookings using the confirm_decline
graph that are in a tentative
state.