WiggleDesk's API makes it easy to integrate with thousands of web services to automate hybrid working.
WiggleDesk's API allows users to do things like:
Our API includes REST endpoints and Webhooks:
REST endpoints listen to any request that you or your data pipelines send us and respond with a json array of objects.
Our REST endpoints are called:
Webhooks fire whenever certain actions occur within WiggleDesk, they send a json array of objects to a listening endpoint that you have set up to receive them.
API access is turned off at an organisational level by default. Admin users can activate the API features via the API section of the 'Manage Organisation' page within their WiggleDesk account.
At this point users will need individual API access provisioned on a per individual basis. This is done via the 'Manage Users' page.
API endpoints are authorised via secret tokens that are unique to each user.
Users can find their secret token via their profile page if API access has been turned on for their account.
It's important to handle these with the same amount of care as personal passwords as the tokens provide read and write access to your organisation's booking data and can provision user access.
We limit users to 1,000 requests per day, please contact support if you require this to be increased.
It's unlikely that you'll need to build data pipelines that continuously poll for updated events. We have built WebHooks which fire in real time when events such as new bookings are created. This gives you the latest data as and when changes are made, meaning your always up to date.
Please see our Zapier tutorial here.
Please see our 'My Upcoming Bookings' turorial here.
Read More
With hundreds of employees it can quickly become time consuming giving them access whenever someone joins. It's easy to automate adding users with our API.
https://wiggledesk.com/api/create_membership_invitation/
Our create_membership_invitation endpoint automates the invitations of new users to WiggleDesk.
If you have thousands of users it can incrementally add more overhead to your onboarding teams when getting them set up with internal services. WiggleDesk saves time by automating the provision of access to your spaces.
The API endpoint listens for POST requests containing an email addresses of users that you'd like to invite.
Shortly after (usually a few seconds), an email will be sent to the email provided, with an invitation to join your organisation's WiggleDesk account.
The invited user can then finalise their account settup either by creating a username/password or clicking 'sign on with Microsoft / Google'.
This is equivilent to inviting a user via our 'Manage Users' page:
First grab your API key from your profile page. If you don't see it, you'll need to double check with a WiggleDesk Admin that your account has been given access and that the steps outlined in our 'Getting started' page have been followed.
WiggleDesk's API can be tested with httpie which is a basic http client written in Python.
You can install httpie using pip:
pip install httpie
The below example uses HTTPIE to illustrate how to connect to this endpoint. Simply swap out 'YOUR_SECRET_TOKEN' with your secret token and 'EXAMPLE@EXAMPLE.COM' with the email address of the user that you'd like to invite.
http POST https://wiggledesk.com/api/create_membership_invitation/ "Authorization: token YOUR_SECRET_TOKEN" email_invited=EXAMPLE@EXAMPLE.COM
A successful response will return something like this:
HTTP/1.1 201 Created
Allow: POST, HEAD, OPTIONS
Content-Length: 119
Content-Type: application/json
Date: Tue, 14 Jun 2022 09:24:17 GMT
Location: https://wiggledesk.com/api/create_membership_invitation/membership_id/
Referrer-Policy: same-origin
Server: Google Frontend
Vary: Accept
X-Cloud-Trace-Context:
X-Content-Type-Options: nosniff
X-Frame-Options: SAMEORIGIN
{
"email_invited": "example@example.com",
"url": "https://wiggledesk.com/api/create_membership_invitation/membership_id/"
}
Coming Soon: Example of how we can listen to new users being added to a Teams directory and automatically inviting them to WiggleDesk.
Read More
Find a team's upcoming bookings.
https://wiggledesk.com/api/teams_upcoming_bookings/
This endpoint returns all upcoming bookings for a specific team. This can be helpful to integrate with calendaring tools or build workflows highlighting a team's schedule.
The API endpoint listens for GET requests, identifies which team the requester is looking for and returns data on all the team member's upcoming bookings that have an end date beyond the time of the request.
First grab your API key from your profile page. If you don't see it, you'll need to double check with a WiggleDesk Admin that your account has been given access and that the steps outlined in our 'Getting started' page have been followed.
WiggleDesk's API can be tested with httpie which is a basic http client written in Python.
You can install httpie using pip:
pip install httpie
You can get a list of all your upcoming bookings by running this command in your command line / terminal (remember to swap out 'YOUR_SECRET_TOKEN' with your secret token and 'TEAM_NAME' with the name of the team). Note no apostrophees are used around the team_name parameters and no spaces around the equals sign:
http GET https://wiggledesk.com/api/teams_upcoming_bookings/ "Authorization: token YOUR_SECRET_TOKEN" team_name=TEAM_NAME
It should return a json array like this (Assuming the team has any upcoming bookings):
HTTP/1.1 200 OK
“count": 3,
"next": null,
"previous": null,
"results":
[
{
"event_id": "1",
"event_desk": "11",
"start_date": "2022-08-27 09:00",
"end_date": "2022-08-27 17:00",
"user": "William",
"event_details": "Client meeting",
"booking_reason", "Other"
},
{
"event_id": "2",
"event_desk": "9",
"start_date": "2022-08-28 09:00",
"end_date": "2022-08-29 17:00",
"user": "William",
"event_details": "",
"booking_reason", "WFO"
},
{
"event_id": "3",
"event_desk": "13",
"start_date": "2022-08-30 09:00",
"end_date": "2022-08-30 17:00",
"user": "William",
"event_details": "",
"booking_reason", "WFO"
},
]
Coming Soon
Read More
Find all your bookings, past, present and future.
https://wiggledesk.com/api/bookings/
This endpoint returns all your bookings; past, present and future. This can be helpful to integrate with calendaring tools or build workflows highlighting your upcoming schedule.
The API endpoint listens for GET requests, identifies who the request has come from and returns data on all the requester's bookings.
First grab your API key from your profile page. If you don't see it, you'll need to double check with a WiggleDesk Admin that your account has been given access and that the steps outlined in our 'Getting started' page have been followed.
WiggleDesk's API can be tested with httpie which is a basic http client written in Python.
You can install httpie using pip:
pip install httpie
You can get a list of all your upcoming bookings by running this command in your command line / terminal (remember to swap out 'YOUR_SECRET_TOKEN' with your secret token):
http https://wiggledesk.com/api/bookings/ "Authorization: token YOUR_SECRET_TOKEN"
It should return a json array like this (Assuming you have any bookings):
HTTP/1.1 200 OK
“count": 4,
"next": null,
"previous": null,
"results":
[
{
"event_id": "1",
"event_desk": "11",
"start_date": "2022-08-27 09:00",
"end_date": "2022-08-27 17:00",
"user": "William",
"event_details": "Client meeting",
"booking_reason", "Other"
},
{
"event_id": "2",
"event_desk": "9",
"start_date": "2022-08-28 09:00",
"end_date": "2022-08-29 17:00",
"user": "William",
"event_details": "",
"booking_reason", "WFO"
},
{
"event_id": "3",
"event_desk": "13",
"start_date": "2022-08-30 09:00",
"end_date": "2022-08-30 17:00",
"user": "William",
"event_details": "",
"booking_reason", "WFO"
},
{
"event_id": "4",
"event_desk": "9",
"start_date": "2022-08-20 09:00",
"end_date": "2022-08-24 17:00",
"user": "William",
"event_details": "",
"booking_reason", "WFO"
},
]
Coming Soon
Read More
Find all your upcoming bookings.
https://wiggledesk.com/api/my_upcoming_bookings/
This endpoint returns all your upcoming bookings. This can be helpful to integrate with calendaring tools or build workflows highlighting your upcoming schedule.
The API endpoint listens for GET requests, identifies who the request has come from and returns data on all the requester's upcoming bookings that have an end date beyond the time of the request.
First grab your API key from your profile page. If you don't see it, you'll need to double check with a WiggleDesk Admin that your account has been given access and that the steps outlined in our 'Getting started' page have been followed.
WiggleDesk's API can be tested with httpie which is a basic http client written in Python.
You can install httpie using pip:
pip install httpie
You can get a list of all your upcoming bookings by running this command in your command line / terminal (remember to swap out 'YOUR_SECRET_TOKEN' with your secret token):
http https://wiggledesk.com/api/my_upcoming_bookings/ "Authorization: token YOUR_SECRET_TOKEN"
It should return a json array like this (Assuming you have any upcoming bookings):
HTTP/1.1 200 OK
“count": 3,
"next": null,
"previous": null,
"results":
[
{
"event_id": "1",
"event_desk": "11",
"start_date": "2022-08-27 09:00",
"end_date": "2022-08-27 17:00",
"user": "William",
"event_details": "Client meeting",
"booking_reason", "Other"
},
{
"event_id": "2",
"event_desk": "9",
"start_date": "2022-08-28 09:00",
"end_date": "2022-08-29 17:00",
"user": "William",
"event_details": "",
"booking_reason", "WFO"
},
{
"event_id": "3",
"event_desk": "13",
"start_date": "2022-08-30 09:00",
"end_date": "2022-08-30 17:00",
"user": "William",
"event_details": "",
"booking_reason", "WFO"
},
]
Coming Soon
Read More
Find all users expected to be in office.
https://wiggledesk.com/api/users_in_office/
This endpoint returns all bookings happening today in your organisation. This can be helpful to quickly identify where people currently are expected to be.
The API endpoint listens for GET requests, identifies which users are in the same organisation as the requester and returns data on all users bookings happening during the day of the request.
First grab your API key from your profile page. If you don't see it, you'll need to double check with a WiggleDesk Admin that your account has been given access and that the steps outlined in our 'Getting started' page have been followed.
WiggleDesk's API can be tested with httpie which is a basic http client written in Python.
You can install httpie using pip:
pip install httpie
You can get a list of all your upcoming bookings by running this command in your command line / terminal (remember to swap out 'YOUR_SECRET_TOKEN' with your secret token:
http https://wiggledesk.com/api/users_in_office/ "Authorization: token YOUR_SECRET_TOKEN"
It should return a json array like this (Assuming there are any current bookings):
HTTP/1.1 200 OK
“count": 3,
"next": null,
"previous": null,
"results":
[
{
"email": "william@test.com",
"username": "William"
},
{
"email": "susam@test.com",
"username": "Susan"
},
{
"email": "benjamin@test.com",
"username": "Benjamin"
},
]
Coming Soon
Read More
Save time in revoking booking permissions whenever someone leaves. Automate user removal with our API.
https://wiggledesk.com/api/remove_membership/
Our remove_membership endpoint automates the removal of existing users in WiggleDesk.
If you have thousands of users it can add more overhead to your offboarding teams when removing their set up with internal services. WiggleDesk saves time by automating the provision of access to your spaces.
The API endpoint listens for POST requests containing an email addresses of users that you'd like to remove.
The removed user's historical data will still exist but they will not be able to make new bookings.
This is equivilent to removing a user via our 'Manage Users' page:
First grab your API key from your profile page. If you don't see it, you'll need to double check with a WiggleDesk Admin that your account has been given access and that the steps outlined in our 'Getting started' page have been followed.
WiggleDesk's API can be tested with httpie which is a basic http client written in Python.
You can install httpie using pip:
pip install httpie
The below example uses HTTPIE to illustrate how to connect to this endpoint. Simply swap out 'YOUR_SECRET_TOKEN' with your secret token and 'EXAMPLE@EXAMPLE.COM' with the email address of the user that you'd like to invite.
http POST https://wiggledesk.com/api/remove_membership/ "Authorization: token YOUR_SECRET_TOKEN" email_invited=EXAMPLE@EXAMPLE.COM
A successful response will return something like this:
HTTP/1.1 201 Created
Allow: POST, HEAD, OPTIONS
Content-Length: 119
Content-Type: application/json
Date: Tue, 14 Jun 2022 09:24:17 GMT
Location: https://wiggledesk.com/api/remove_membership/membership_id/
Referrer-Policy: same-origin
Server: Google Frontend
Vary: Accept
X-Cloud-Trace-Context:
X-Content-Type-Options: nosniff
X-Frame-Options: SAMEORIGIN
{
"email_invited": "example@example.com",
"url": "https://wiggledesk.com/api/remove_membership/membership_id/"
}
Read MoreDid you know, according to a recent McKinsey study, 47% of all jobs in the UK alone can be performed at least 1 day a week at home, without losing any measurable productivity?
WiggleDesk is the easiest way to roll out and manage hybrid working in your organisation.
Get set up in 10 minutes, more info here.