Join as panelist


Is it possible to a panelist join a webinar via Web SDK?

I was trying to transform an attendee (who was accessing the meeting via web) in a panelist. When I set him as panelist, his webpage reloads and he needs to reenter the meeting. After he connects, he’s still an attendee.

At “My webinars”, I can see his name and e-mail listed as panelist.

Is there any other info I need to pass to the SDK to connect him as panelist?


Hi @ricardo.brunoro,

Right now it is not possible to join as a Panelist with the WebSDK. We are working on this feature for our next release. You can checkout our upcoming changes page & change log page for when we release the features.
2 -

Let us know if you have any other questions.


Hi, can the user join as a panelist if he is invited as a panelist via web sdk? Also, is this feature going to be released in April stil?

Hi @mlingwood,

The webSDK doesn’t support panelist at this time. Right now due to the enhancement freeze we will most likely delay the April release. We have not timetable as of right now, however, you can subscribe to your change log to receive notifications of any new changes[1].

1 -


Hi @Michael_Purnell

As far as I can see, the panelist role is still not available for webSDK, right?

I am looking for an alternative way of how we can use webSDK though. Our use case is hosting online events with many presenters in a row.

So my idea was:
If presenters come into the webapp with attendee role, is it possible for me (host) to enable screen sharing, audio and video for them manually? I would see the names of my presenters and then I enable the functionalties at the right time.

If this is not possible, do you have any other suggestion of how we can make it work for our use case?

I’m looking forward to your reply, it would help us very much!


Hey @UlrikeWilke,

Correct. You can only be an attendee of a webinar when using the Web SDK.

This is not possible. Web SDK webinar attendees are view only and cannot be promoted or allowed to talk yet.

I suggest the host and panelist use the Zoom App.


Hey @tommy ,

thank you so much for you reply, very helpful.

Best regards

1 Like

You are welcome!

Version 1.8.0 currently slated for June release will support Panelists, stay updated here:

Let us know if you have any additional questions! :slight_smile:


1 Like

I see this is now scheduled for August 22nd - do you know whether it is likely to be pushed back again? This is pretty critical functionality for Zoom webinars so it would be great to get it included in the SDK.


Hey @alexmayo,

Currently August 22nd is the timeline. If something pushes it back again, we will update the page.


Hi @tommy Seems like this was added with the new build that went out August 25. For some reason, I still cannot join as a panelist. When I join with an email address that belongs to a panelist, it adds me as a regular attendee.

If the host promotes an attendee to a panelist, then re-joining starts them up as a panelist.

Am I missing something here?

Hey @hassan2,

You should be able to pass in the same panelist email to the Web SDK via the userEmail value and the user will join as a panelist.

Can you share your Web SDK code snippets so I can help debug?


Hi @tommy

Thanks for responding!

That’s exactly what I am doing but unfortunately the user joins as an attendee. This is after the fact that they have been added as a panelist using the API.

My web SDK code is pretty simple; it’s a straight copy / paste from the docs.

Here is the proof of concept I am working with. Nothing special; passing in the same userEmail as the panelist.

Also, is there any way to disable the invite that zoom sends to panelists? We want to be able to send that ourselves.


        ZoomMtg.setZoomJSLib('', '/av');


        const signature = "<?= \app\services\zoom\ZoomMeetingService::generateMeetingSignature(91751780826, $_GET['role']) ?>";

        function beginJoin(signature) {
                debug: true,
                leaveUrl: '/meow',
                success: function () {
                    console.log("signature", signature);
                        userName: "<?= $_GET['name'] ?>",
                        signature: signature,
                        passWord: "<?= \app\services\zoom\ZoomMeetingService::PASSWORD ?>",
                        apiKey: "<?= \app\services\zoom\ApiWrapper::API_KEY ?>",
                        userEmail: "<?= $_GET['email'] ?>",
                        success: function (res) {
                            console.log("join meeting success");
                            console.log("get attendeelist");
                                success: function (res) {
                                    console.log("success getCurrentUser", res.result.currentUser);
                        error: function (res) {
                error: function (res) {



Hey @hassan2,

Thanks for sharing your code. Can you share your Web SDK signature to for a panelist for a test meeting so I can debug further?