Unauthorized trying to get freeBusy

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

Hey @Daniel.Brown
Thanks for reaching out to us! Let me troubleshoot this on my end and will get back to you with an update

Hey @Daniel.Brown
I am able to troubleshoot this on my end.
I will DM you for more details, follow up accordingly please