# API User creation reports missing scopes in token

**URL:** <https://devforum.zoom.us/t/api-user-creation-reports-missing-scopes-in-token/111592>\
**Category:** API and Webhooks\
**Created:** [June 9, 2024, 8:17pm UTC](https://devforum.zoom.us/t/api-user-creation-reports-missing-scopes-in-token/111592 "2024-06-09T20:17:53Z")\
**Posts on this page:** 4\
**Page:** 1

<div class="post-metadata">

**Author:** ![stephane](https://sea2.discourse-cdn.com/flex016/user_avatar/devforum.zoom.us/stephane/32/60473_2.png) [@stephane](https://devforum.zoom.us/u/stephane)\
**Post date:** [June 9, 2024, 8:17pm UTC](https://devforum.zoom.us/t/api-user-creation-reports-missing-scopes-in-token/111592/1 "2024-06-09T20:17:53Z")

</div>

Hi all,

After two days trying to understand what could be wrong and not finding similar topic here, I hope some fresh eyes could help on this one. May be I’m missing something obvious.

The goal I’m pursuing is creating users in our account via integrations.  
We are on a Pro-Plan.

Steps I’ve followed:  
1- With the Owner account I’ve created an Account-Level app  
2- Added the Scopes that make sense for creating a user and for the rest of our context  
3- Integration performs two steps:  
a) API call to obtain an access token \> OK  
b) API call to create the user \> NOK

a) Is successful and returns token consistent with Scopes selected in the App  
Call used:  
/zoom.us/oauth/token  
with grant\_type = account\_credentials (provided in the header)

Response:  
“access\_token”: TOKEN,  
“token\_type”: “bearer”,  
“expires\_in”: 3600,  
“scope”: “user:read:list\_users:admin user:write:user:admin user:read:user:admin user:update:user:admin user:delete:user:admin user:update:status:admin user:update:password:admin user:read:list\_assistants:admin user:write:assistant:admin user:delete:assistant:admin user:write:profile\_picture:admin user:read:token:admin user:read:zak:admin user:delete:token:admin user:read:list\_permissions:admin user:read:list\_schedulers:admin user:delete:scheduler:admin user:update:email:admin user:read:email:admin user:read:pm\_room:admin user:update:presence\_status:admin user:read:settings:admin user:update:settings:admin user:write:virtual\_background\_files:admin user:delete:virtual\_background\_files:admin user:read:summary:admin user:write:feature:admin user:read:list\_collaboration\_devices:admin user:read:collaboration\_device:admin user:update:user\_account:admin user:read:presence\_status:admin user:read:personal\_note:admin”

b) **Fails** due to missing Scopes?  
Call used:  
/api.zoom.us/v2/users?action=create&email=testeng@test.com&first\_name=Test&last\_name=Eng&type=1  
Error returned:  
{“code”:4711,“message”:“Invalid access token, does not contain scopes:[user:write:admin, user:write].”}

According to the error user:write:admin and user:write are missing, but  
I’ve found no “user:write:admin” and “user:write” alone when filtering Scopes to add to my app 🤷‍♂️🤷‍♂️.  
And this documentation (/developers.zoom.us/docs/integrations/oauth-scopes-granular/) don’t list these scope neither.

Thanks for any idea 🧐🤔

---

<div class="post-metadata">

**Author:** ![stephane](https://sea2.discourse-cdn.com/flex016/user_avatar/devforum.zoom.us/stephane/32/60473_2.png) [@stephane](https://devforum.zoom.us/u/stephane)\
**Post date:** [June 10, 2024, 8:30am UTC](https://devforum.zoom.us/t/api-user-creation-reports-missing-scopes-in-token/111592/2 "2024-06-10T08:30:14Z")

</div>

Just read the change from classic to granular scopes in documentation and posts.  
Being my first attempt with Zoom API I wasn’t aware of that change.

I’m confused now where to go between documentation and scopes the app created being a new one using granular scopes (i.e. not a legacy app).  
Even more confused by error messages that seem to speak “classic scope language” 🤔.

Any pointers much appreciated.

---

<div class="post-metadata">

**Author:** ![stephane](https://sea2.discourse-cdn.com/flex016/user_avatar/devforum.zoom.us/stephane/32/60473_2.png) [@stephane](https://devforum.zoom.us/u/stephane)\
**Post date:** [June 10, 2024, 12:52pm UTC](https://devforum.zoom.us/t/api-user-creation-reports-missing-scopes-in-token/111592/3 "2024-06-10T12:52:29Z")

</div>

Ok, I think that reading posts in several directions led me to understand that -additionally to the scope change- the message error is not consistent with what is happening.  
Using postman workspace allowed me to make some successful tests not triggering the error.

Thank you @stephane for you help 😅

---

<div class="post-metadata">

**Author:** ![system](https://us1.discourse-cdn.com/flex016/uploads/zoomdeveloper/original/3X/6/1/614bdd549b610bbaa46ff934617683a02bdaa03c.png) [@system](https://devforum.zoom.us/u/system)\
**Post date:** [June 11, 2024, 12:53pm UTC](https://devforum.zoom.us/t/api-user-creation-reports-missing-scopes-in-token/111592/4 "2024-06-11T12:53:26Z")

</div>

Closed on June 11, 2024, 12:53pm UTC

This topic was automatically closed 24 hours after the last reply. New replies are no longer allowed.
