Video SDK issues

I have tried to implement cloud recording feature to our app face some issues when i tried to list the recorded session using the REST api provided:

  1. When we record, we are not able to see our custom UI (Exam time, documents which we are seeing in our web page). Did not see any documentation to include web page. This requires support from Zoom team.
  2. When I try to fetch all recording using the API: , I got the following response from the server :

“code”: 200,

“message”: “Access restricted.”


I have passed SDK JWT token in header part, but still error. Need to know there any option needs to enable from zooms side?

Other than the above issue, I would also like to request a complete documentation of all available events(eg: events like ‘user-aded’, ‘peer-video-state-change’, etc.) for the web video sdk platform. I looked through Zoom’s official documentation and was unable to find the information I needed. For example are there any events being triggered when a meeting ends or when the video/audio of the user has been loaded etc. I have also tried asking in the zoom dev forum for the above information and was unable to get any response.

Also i occasionally get an error :
“reason”: “duplicated operation”
when i try to join or create a meeting using client.join() as host or participant. Could you please let me know the reason and possible resolutions to the error.

Please share any zoom video sdk event that return the network status of the participant asynchronously throughout the duration of the meeting. I searched through web sdk docs and was not able to find any such event. if it is not available please let me know.

PS: i am unable to embed images in this forum? please comment how to share error images if possible

Hi @ashish.beetle ,

Thanks for your post here in the forum. I want to make sure I’m understanding the issues your facing correctly, so I’ll ask a few clarifying questions:
-Is the custom UI disappearing once you click the record button, or it’s gone from the viewed recording?
-For the account recording the meetings, are you the account owner?
-Which version of the Video SDK are you using?

When I’ve seen the “duplicated operation error”, it usually has to do the application attempting to join a session that’s already in-session. I’d be interested to see your code snippet for when you’re calling client.join(). I know you mentioned having issued embedding photos, but could you try to drag and drop a screenshot onto your reply to this (I’m wondering if the same error will still occur in a reply)?

Lastly, thank you for documentation requests! With that, I wanted to also ask, have you had a chance to look at the reference guide for the Video SDK? While maybe not answering all your questions, they may provide some additional insight.


Custom UI is not disappearing when I click record button, but no custom UI is coming when I recording. I’m not sure we can record custom UI also. Im only getting participants video and voice. Can you conform that?

Zoom provided me an account and Im able to see all the recording in there. Thats what you mean account owner ?

We are using video sdk 1.4.1 (npm package)

" attempting to join a session that’s already in-session." can you elaborate? shouldn’t i still be able to join a session even if it has already started?

With regards to the reference guide, i already looked through it and most of the listed functions are actions we can call and not “on event triggers” that fits my use case. Could you please point me to the url if such a list exists?

Tried to share images as you instructed. It did not go through and i got the following error:
“Sorry, you can’t embed media items in a post.”


Hi Ashish & Rehema,

I am also looking for similar thing, custom UI built in web shall be available in recording as well as in RTMP out. Take the example of streamyard, where host is able to select grid view and that is applicable for recording and stream both.

Hi @ashish.beetle,

Thank you for answering my questions so I could better understand the issues. Cloud recording for the Video SDK only records the created sessions (i.e.; screen sharing and active speaker, gallery view, speaker audio, etc.). This is why any UI outside of the session isn’t being kept in your recording. If the UI is captured in a screen share, this could be a possible workaround to maintain your custom UI.

If you’re able to see the recordings on your account page, then yes, it sounds like you are the account owner. I’ll have to do some more digging into the specific error you’re receiving and reach back out.

In regards to the ‘duplicate operation’, what I meant (but poorly explained) was that if a user is already in the session and your application attempts to call the join function for the same user, that can cause that error to appear. How are you calling client.join() (for example, is it being called inside a react hook, or something similar)?

Thank you for letting me know you’ve gone through the reference guide. I will note your documentation requests.



Hi Rehema,

I am also facing similar issue wrt custom UI in recording, I have attached a reference of sample layout we are aiming for.
Is there any way through which we can have a little control over layout?

HI @nikhil3 ,

Thanks for your question and screenshot! At this time, unless your additional UI is capture in the screen share, it will not be saved in your recording. This section of our docs may provide some additional insight.


Hi Rehema
Thanks for clarifying the recording ui availability. Could you look back to point no.2 in the first post. We are unable to list our recorded sessions via the api provided. We have followed the official documentation procedure. Are we missing something?

We are calling the client.join function on page init (Angular frontend) and it is only being called once and is not a duplicated operation. Is there any workaround to this issue? For instance if user is already present can we still join the session without the error?
I have noticed that the error is only popping up on our hosted server and not on local testing.


Hey @ashish.beetle

Could you add a breakpoint on the line of the client.join(...) method? To make sure call join method only once.


1 Like

Hi Vic & Rehema
Thanks for the tip. Tried it and confirmed that client.join() is only being called once.
Our use case requires a user to join 2 sessions back to back. The leave function after first session was not being called due to a bug. Thanks for pointing me in the right direction. Was able to fix the issue.

P.S: Sharing the link to another ticket we raised regarding video quality as per instructions from your team–


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