Staffs
Staffs are the team members of your account. Use their ids to book appointments with a given person, assign chats, or block time on their calendar (time off, meetings) so no one can book it. Team members are read only through the API; blocking time needs the Bookings add-on.
api.whautomate.comList staff
/v1/staffsLists team members.
x-api-keystringrequiredlocationIdstringlimitintegerpageintegersearchTextstringidstringfirstNamestringrequiredlastNamestringemailstringgenderstring (enum)Male, Female, Unknown, Other.countryCodestringphonestringrequiredactivebooleanlocationsstring[]requiredcurl -X GET "https://api.whautomate.com/v1/staffs?locationId=Le6dWjQF9K&limit=3" \
-H "x-api-key: YOUR_API_KEY"
[
{
"id": "XCRbjjnGrB",
"firstName": "Maya",
"lastName": "Lim",
"email": "maya@serenewellness.example",
"countryCode": "+65",
"phone": "81234567",
"active": true,
"locations": [
"Le6dWjQF9K",
"xP9JwUC8Ss"
]
},
{
"id": "ZxkrjyVgDE",
"firstName": "Aisha",
"lastName": "Rahman",
"email": "aisha@serenewellness.example",
"countryCode": "+65",
"phone": "84001371",
"active": true,
"locations": [
"Le6dWjQF9K"
]
}
]
Get a staff member
/v1/staffs/{staffId}Gets one team member by id.
x-api-keystringrequiredstaffIdstringrequiredidstringfirstNamestringrequiredlastNamestringemailstringgenderstring (enum)Male, Female, Unknown, Other.countryCodestringphonestringrequiredactivebooleanlocationsstring[]requiredcurl -X GET "https://api.whautomate.com/v1/staffs/XrHPepEL8A" \
-H "x-api-key: YOUR_API_KEY"
{
"id": "XrHPepEL8A",
"firstName": "Wei Jie",
"lastName": "Tan",
"email": "weijie@serenewellness.example",
"countryCode": "+65",
"phone": "84002742",
"active": true,
"locations": [
"Le6dWjQF9K"
]
}
List blocked time
/v1/staffs/{staffId}/availabilityBlocksLists a team member's blocked time in a date range.
x-api-keystringrequiredstaffIdstringrequiredstartDatestringendDatestringidstringstaffobjectrequiredtimezonestringdatestringrequiredslotsobject[]requiredTimes as 'hh:mm AM/PM' in the timezone. An endTime at or before the startTime ends the next day ('10:00 PM' to '02:00 AM' is overnight, '12:00 AM' to '12:00 AM' is 24 hours).
curl -X GET "https://api.whautomate.com/v1/staffs/XrHPepEL8A/availabilityBlocks?startDate=2026-11-13&endDate=2026-11-20" \
-H "x-api-key: YOUR_API_KEY"
[
{
"id": "tw5rzdZNzA",
"staff": {
"id": "XrHPepEL8A",
"firstName": "Wei Jie",
"lastName": "Tan"
},
"timezone": "Asia/Singapore",
"date": "2026-11-13",
"slots": [
{
"startTime": "01:00 PM",
"startTimeUTC": "05:00 AM",
"endTime": "02:30 PM",
"endTimeUTC": "06:30 AM"
}
]
}
]
Block time
/v1/staffs/{staffId}/availabilityBlocksBlocks time on a team member's calendar so it cannot be booked.
x-api-keystringrequiredstaffIdstringrequiredidstringstaffobjectrequiredtimezonestringdatestringrequiredslotsobject[]requiredTimes as 'hh:mm AM/PM' in the timezone. An endTime at or before the startTime ends the next day ('10:00 PM' to '02:00 AM' is overnight, '12:00 AM' to '12:00 AM' is 24 hours).
idstringstaffobjectrequiredtimezonestringdatestringrequiredslotsobject[]requiredTimes as 'hh:mm AM/PM' in the timezone. An endTime at or before the startTime ends the next day ('10:00 PM' to '02:00 AM' is overnight, '12:00 AM' to '12:00 AM' is 24 hours).
curl -X POST "https://api.whautomate.com/v1/staffs/XrHPepEL8A/availabilityBlocks" \
-H "x-api-key: YOUR_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"date": "2026-11-13",
"timezone": "Asia/Singapore",
"slots": [
{
"startTime": "01:00 PM",
"endTime": "02:30 PM"
}
]
}'
{
"id": "tw5rzdZNzA",
"staff": {
"id": "XrHPepEL8A",
"firstName": "Wei Jie",
"lastName": "Tan"
},
"timezone": "Asia/Singapore",
"date": "2026-11-13",
"slots": [
{
"startTime": "01:00 PM",
"startTimeUTC": "05:00 AM",
"endTime": "02:30 PM",
"endTimeUTC": "06:30 AM"
}
]
}
Get blocked time
/v1/staffs/{staffId}/availabilityBlocks/{availabilityBlockId}Gets one block of time by id.
x-api-keystringrequiredstaffIdstringrequiredavailabilityBlockIdstringrequiredidstringstaffobjectrequiredtimezonestringdatestringrequiredslotsobject[]requiredTimes as 'hh:mm AM/PM' in the timezone. An endTime at or before the startTime ends the next day ('10:00 PM' to '02:00 AM' is overnight, '12:00 AM' to '12:00 AM' is 24 hours).
curl -X GET "https://api.whautomate.com/v1/staffs/XrHPepEL8A/availabilityBlocks/tw5rzdZNzA" \
-H "x-api-key: YOUR_API_KEY"
{
"id": "tw5rzdZNzA",
"staff": {
"id": "XrHPepEL8A",
"firstName": "Wei Jie",
"lastName": "Tan"
},
"timezone": "Asia/Singapore",
"date": "2026-11-13",
"slots": [
{
"startTime": "01:00 PM",
"startTimeUTC": "05:00 AM",
"endTime": "02:30 PM",
"endTimeUTC": "06:30 AM"
}
]
}
Delete blocked time
/v1/staffs/{staffId}/availabilityBlocks/{availabilityBlockId}Frees a block of time again.
x-api-keystringrequiredstaffIdstringrequiredavailabilityBlockIdstringrequiredsuccessbooleancurl -X DELETE "https://api.whautomate.com/v1/staffs/XrHPepEL8A/availabilityBlocks/tw5rzdZNzA" \
-H "x-api-key: YOUR_API_KEY"
{
"success": true
}