API Endpoint(s) and/or Zoom API Event(s)
/chat/channels/:channelId/members?page_size=50
Description
I am recieving the follow error : “message”: “No permission to access the channel members.”
according to the API for this call, I need scope for Scopes:chat_channel:read which I have. But I continue to get an error saying I dont have permission. Is there another scope or some kind of security I need for this?
Error?
“message”: “No permission to access the channel members.”
Hey @DarylH
Thanks for reaching out to us!
Could you please make sure that you have all chat permissions enabled in the Web portal?
Under the admin tab > account management > account settings > team chat
Hey @DarylH
I am trying to replicate what you are seeing with my account, but I can not. So I have another question, what kind of app are you using? are you working with the Server to Server App or Team Chat App??
If it is a team chat app is it a user level?
it is a server to Server-to-Server OAuth. Account-Level
here is the scopes that return from my Postman call for getting the 0AuthAccess Token:
We tried adding extra stuff just to try to get it to work, but the API says all I should need is chat_channel:read:admin
it appears I can get the members of the chat channel i’m in, but not the ones i’m personally not in, but since i have admin, shouldnt I be able to?
Another option to get trascripts could be to just get all the chat sessions, but because we are only trying to archive certain individuals, it would be very helpful to just check each sessions’ users before bothering to archive the transcript. is this possible? something like /report/chat/sessions/{{sessionId}}/members?
Unfortunatly, I don’t think List a user’s chat chat sessions would be efficient because there could be thousands of users who are “tagged” as needing to be archived who dont actually use zoom chat. So I’d have to make thousands of calls daily when a great majority of them would return nothing.
My ideal happy path would be to get All Chat Sessions (using the above mentioned “Get Chat sessions report”), then get all the users for each chat session (this is the part I’m unable to find a good call to do), and if that session contains a user that needs to be archived, then we get the actual transcript (using “Get Chat Messages Reports”)
I COULD get every single chat message via Get Chat Messages Reports and traverse through all the “sender” variables in the JSON, but that seems less efficient too since many sessions are probably not going to qualify for archving.
You are right, there would be a lot of information @DarylH
I am not just thinking if you have been able to work on the initial error you were having (I do not know if got distracted from the original problem )
thats true
I think the original issue is the same though, being unable to get the members of a channel/session that I am not in. Is that possible? And without knowing who is in it? it does seem that this call works, but I’d have to already know someone who is in it. /chat/users/{userId}/channels/{channelId}
Hi @DarylH
I was able to replicate this issue with my test account, even using a Server to Server OAuth app that is an account-level app when I tried to call the chat channel users endpoint, I got a 200 No permission to access the channel members.
Let me take a look into my account settings and see if there is any settings we can change to access other channels
this a great news, well, great that you found it
Thank you for your help!
please continue to let me know what you find, I appreciate your help.
Ideally the call would look like something based off this {{baseUrl}}/chat/channels/:channelId/members?page_size=20
but with session ID would be better, this would then work from 1:1 and every other type, so the call would maybe look something like this…
I have created an internal ticket with our Engineering team to understand this API behavior
(ZSEE-91917 for reference) I will update you as soon as I have more information