API Endpoint(s) and/or Zoom API Event(s)
v2/calendars/freeBusy
Description
I have a server to server oauth app that I’m using to pull voicemail, call history, call queue, and user information. All of that is working fine. However, we now need the ability to get user availability. When I try to call the /calendars/freeBusy endpoint I get an “Unauthorized” error, which you can see below. I’ve added all the following scopes to the app:
- calendar:read:setting:admin
- calendar:read:list_acl:admin
- calendar:read:instance_event:admin
- calendar:read:calendar:admin
- calendar:read:event:admin
- calendar:read:calendar_list:admin
- calendar:read:acl:admin
- calendar:read:color:admin
- calendar:read:list_events:admin
There are no other calendar:read:* scopes that I can add.
Error?
{
"error": {
"code": 401,
"errors": [
{
"appCode": 0,
"domain": "global",
"message": "Failed to pack result",
"reason": "unauthorized"
}
],
"message": "Failed to pack result",
"reqId": "ZMAIL_59a5d1b4ad1d9a64006265b1691c1076",
"status": "UNAUTHORIZED"
}
}
How To Reproduce
Steps to reproduce the behavior:
1. Request URL / Headers (without credentials or sensitive info like emails, uuid, etc.) / Body
POST v2/calendars/freeBusy
Content-Type: application/json
Accept: application/json
Authorization: Bearer [token]
Cache-Control: no-cache
Host: api.zoom.us
Accept-Encoding: gzip, deflate, br
Connection: keep-alive
Content-Length: 196
{
"timeMax": "2025-03-11",
"timeMin": "2025-03-12",
"calendarExpansionMax": "50",
"groupExpansionMax": "100",
"items": [
{
"id": "[useremail]"
}
]
}
2. Authentication method or app type
Server-to-server oauth app
3. Any errors
posted above