JWT or OAuth

I am able to successfully use APIs when using the token generated by using API Key/Secret from the Developer console (JWT), but am unable to use those same APIs when using an OAuth access token generated for an admin user. I’m using curl in the following format - 





curl -X GET -H "Authorization: Bearer {token}" https://api.zoom.us/v2/users

I’m getting the error message - 

{"code":124,"message":"Invalid access token, does not contain scopes: [user:write:admin, user:read:admin]"}

Other APIs that work when using the JWT Token but not w/ the OAuth Token -

GET https://api.zoom.us/v2/users/{userId}
GET https://api.zoom.us/v2/users/{userId}/settings
GET https://api.zoom.us/v2/users/{userId}/meetings ({"code":124,"message":"Invalid access token, does not contain scopes: [meeting:read:admin, meeting:write:admin]"})
GET https://api.zoom.us/v2/users/{userId}/recordings ({"code":124,"message":"Invalid access token, does not contain scopes: [recording:write:admin, recording:read:admin]")

The only API that I’ve found that works with both tokens is - 

GET https://api.zoom.us/v2/users/me

Appreciate any insight on why there might be a difference or things to try. Thanks.

Hi Dayal , 

You will have to register you app with out marketplace. From there you can use select the scopes to get access to our APIs via OAuth. To get started with our marketplace you can visit here.


Thanks for the response Michael, but the Client ID/Secret I’m using are from an app I created on the marketplace. For testing purposes, I’ve selected _ all _ the scopes and still have the same issues.

Hi Dayal, 

How are you making the OAuth calls, are you using the access token to access the APIs? Would you be able to share the request/response payload flow? 

Hi Michael, 

In my original post I mentioned that I’m using curl, but I’ve also in other channels (Postman, app code, etc). The app has been created in the marketplace and I am authorizing using a Zoom admin user. Here is a specific example that does not work for me - 

curl -X GET -H "Authorization: Bearer {token}" https://api.zoom.us/v2/users/\<adminUserEmail\>/settings

and this is the response I get - 

{"code":124,"message":"Invalid access token, does not contain scopes: [user:write:admin, user:read:admin]"}  

Note, the same token is used successfully used on the “me” endpoint - 

curl -X GET -H "Authorization: Bearer {token}" https://api.zoom.us/v2/users/me

this returns the expected user json.

Hi Dayal, 

Can you send your access token/refresh token and a screenshot of the scopes you selected to developersupport@zoom.us? From there we can take an in-depth look at the issue. 


Email sent. Thanks.