Phone Update User Shared Access Settings fails for some privilege values

I’m attempting to use the Zoom Phone API to update delegation privileges for phone users. The relevant API endpoint is https://developers.zoom.us/docs/api/phone/#tag/users/PATCH/phone/users/{userId}/settings/{settingType}).

They privileges are represented as an array of integers in the payload. It appears the API only supports a subset of the privileges that can be set in the web UI.

For example, if I configure the privileges through the web UI and use then send a GET to ``/v2/phone/users/[userid]/settings/delegation`, the delegation privileges for a user in the response are:

{"delegation": {"privileges": [1, 2, 5]}}

If I send a PATCH to /v2/phone/users/[userid]/settings/delegation with the same values in the payload, I get a 400 “Delegation privileges error.” response.

However, if I limit privilege values to 1, 2, 3, my updates are successful. It appears the API only supports these values. Based on comparing GET responses to the Web UI configuration, the complete enum list is:

1: Place Calls
2: Answer Calls
3: Pick Up Hold Calls
4: Set Business Hours
5: Opt In/Out
6: Join and Merge Calls

Can someone confirm for me that this is an API limitation and if so, an estimate on when it may be addressed?

Please let me know if any additional information is needed.

Hi @kris.seraphine
Thanks for reaching out to us and sharing all this information! I will take a closer look to this and do some testing on my end and I will report back to you
Thanks
Elisa

Hey there! I am trying to replicate this on my end and you mentioned you are making a request to GET to ``/v2/phone/users/[userid]/settings/delegation`, but I do not think this endpoint is available. could you clarify this for me please

My bad. The GET endpoint is actually /phone/users/{userId}/settings with the relevant values in the delegation object in the response.

This is the “get a user’s profile settings” endpoint documented here:

Thanks, @kris.seraphine. I was able to replicate this issue on my end. It appears that there is a note in the UI for some of these privileges (visible when you hover over the question mark), which might explain why you can’t update them via the API. I’ve reached out to our Engineering team to learn more and will update you as soon as I hear back (internal ticket: ZSEE-159439).