Creating a Scheduled meeting with an alternate host is not working for me

I am creating a scheduled meeting with an alternate host.

What I have done so far:

Setup the alternate host in question as a user in the relevant a/c. The user has been “accepted” via the invite email.

I uncomment the alternate host line below and get a Bad Request. If I comment out the alternate host line it sets up the meeting no problem.

Please can you say where I am going wrong with the settings?

                PieceBook.Library.NET.Zoom.JWTData.CreateAMeeting loCreateAMeeting = new JWTData.CreateAMeeting(loCalendarItem.Start);
            loCreateAMeeting.duration = (int)(loCalendarItem.End - loCalendarItem.Start).Minutes;
            loCreateAMeeting.topic = loCalendarItem.Title;
            loCreateAMeeting.agenda = loCalendarItem.Description;
            loCreateAMeeting.password = lsPassword;
            loCreateAMeeting.type = 2;
            loCreateAMeeting.timezone = "Europe/London";
            //loCreateAMeeting.settings.host_video = true;
            //loCreateAMeeting.settings.participant_video = true;
            //loCreateAMeeting.settings.cn_meeting = false;
            //loCreateAMeeting.settings.in_meeting = false;
            loCreateAMeeting.settings.join_before_host = true;
            //loCreateAMeeting.settings.mute_upon_entry = false;
            //loCreateAMeeting.settings.watermark = false;
            //loCreateAMeeting.settings.use_pmi = true;
            loCreateAMeeting.settings.approval_type = 0;
            loCreateAMeeting.settings.registration_type = 2;
            // = "both";
            //loCreateAMeeting.settings.auto_recording = "none";
            //loCreateAMeeting.settings.enforce_login = false;
            //loCreateAMeeting.settings.enforce_login_domains = string.Empty;
            loCreateAMeeting.settings.alternative_hosts = "";
            //loCreateAMeeting.settings.close_registration = false;
            //loCreateAMeeting.settings.waiting_room = false;
            //loCreateAMeeting.settings.global_dial_in_countries = new string[] { "GB" };
            loCreateAMeeting.settings.contact_name = lsName;
            loCreateAMeeting.settings.contact_email = lsCoordinatorEmail;
            //loCreateAMeeting.settings.registrants_email_notification = false;
            //loCreateAMeeting.settings.meeting_authentication = true;
            //loCreateAMeeting.settings.authentication_option = string.Empty;
            //loCreateAMeeting.settings.authentication_domains = string.Empty;

Bad Request

Which App Type (OAuth / Chatbot / JWT / Webhook)?

Which Endpoint/s?
/users/{email address of zoom a/c}/meetings

How To Reproduce (If applicable)
To reproduce simple uncomment the alternate hosts line above.

Screenshots (If applicable)

Additional context
Works if alternate hosts line is commented out.

Hi @hkdave95, can you give additional clarity on the setup of this host?

Alternate hosts are required to be active users on the Zoom account. If these users are not active on the account (could potentially be active on their own, separate, Zoom account from your own) they would not be able to be set as alternate hosts in the scheduling of the meeting.

TY Michael for reply…

The user in question is set up as a user in their own right, as well as a basic user on the a/c which we are adding them as alternate host.

I shall try removing them as basic user and try again.

I shall do this on Monday.



Thanks @hkdave95, let us know if that worked.

You can also see the prerequisites for alternative hosts here:


TY … It is the licensed user bit we fall down on.

We might be in a position to get another licensed user soon. Although the way our software works we have many people that could be alternate hosts.

The idea we are exploring is an unattended licensed user, on at meeting time / people join and a nominated host controls the proceedings with a attendee level of control over the software.

I am now thinking of building my own interface that works through the API as far as controlling the meeting features are concerned. Then any registrant can operate the meeting features with the remote connection of the licensed host.

If when designing the API you can continue the approach of opening up the features enabling a programmer to control the software from a 3rd party perspective I would appreciate.



Hey @hkdave95,

You can also checkout our SDKs which allow you to control functionality within a meeting hosted and embedded on your platform.