Change Host of Existing Meeting Using Api

If post users/{user id}/meetings is used to create a meeting, is it possible to use the API to change the host?

Hey @helen_arditi,


Yes, you can use the schedule_for property in the Update Meeting endpoint:

Let me know if this helps!


Can a alternate host also start the session, like a host would do. Would he have a seperate URL to launch or can he use the same URL as that of the host to launch.?

Hey @sabahubs,

The alternate host can start the meeting. Just have them use the start url, or the url sent in the alternate host confirmation email.


If the alternate host is a pro user. What is the uses of main pro account multiple hosts?

Hey @esa, thanks for posting and using Zoom!

Can you share your use case so I understand what you are trying to do?


Hi Tommy
Is changing the host via API still not possible? The problem with alternate hosts is that I can only run 2 meetings in parallel, where as I want to run all my hosts (10 as of now) to run parallel meetings.

You can change the host by updating the meeting with the schedule_for parameter.

Hey @chetangoel,

Please see @stephane.lux answer above ^


Except you can’t. When I send a request to update the meeting and set schedule_for to another user I get back: {“code”:1110,“message”:“Not assigned scheduler.”}

Hey @gtantum,

Please see the prerequisites to the scheduler feature:


Hi @tommy,

It would be a huge help to me if I could change the host of an existing meeting via the Zoom api. Reading through this thread it seems like initially the answer was that you can’t change the host, but then that @stephane.lux’s suggestion that the schedule_for parameter used with the PATCH endpoint sets the host is actually correct?

It seems like using the schedule_for parameter requires that the person you’re scheduling for have a paid account and that they’ve given you permission to schedule for them. If that’s the only way to change the host on a meeting, that’s kind of limiting for my use case.

Also, I’m curious what the purpose of the schedule_for parameter is when used with the create meeting endpoint. The endpoint URL, /users/{userId}/meetings, already has a userId param in the URL that corresponds to who the host is. So what is the point of the schedule_for param in that case?


Hey @elyes,

Yes, you can use the schedule_for property in the Meeting Update endpoint to change the host. (I have updated my original message, I posted that when this option was not available yet).

You can see the prerequisites for using the schedule_for property here:

The use case I can think of is for user level apps that are creating a meeting (/users/me/meetings), but need to create it for another user other than themselves.



Thanks for the explanation! That clears up a lot.

I have one last question: Am I correct in assuming that an app must authenticate at the user level via the oauth flow to take advantage of schedule_for when PATCHing a meeting? Or can a JWT app use it? I imagine you have to authenticate at the user-level so that the API knows which user is trying to change the host and can make sure they have “schedule for” privileges for the host they’re trying to set?

1 Like

Jumping on the bandwagon, trying to reschedule a meeting using a JWT app I’ve built. Getting "Not assigned scheduler." error message as expected from what I read in your documentation.

So can a JWT app have the scheduling permissions?

If not, what’s our alternative? I want to certain users of my app to be able to schedule meetings for others and then assign those meetings to them.

I can think of two options:

  1. Making them a second host would be a limited option, as you can only have 100 meetings a day per user as far as I know
  2. Replacing old meeting with a new one. This is suboptimal as the meeting url was already communicated to third parties, so would have to change my flow somehow.

I would appreciate some help with this @tommy please. Happy to start another thread if I’m hijacking this one too much :slight_smile:

I have the same question (re using JWT to perform this action). This was working just fine until a few weeks ago. I already posted this question on another thread here.

Thanks for any help on this one!

Hey @elyes, @mac, @christian.delaune,

When using JWT, the API should know which user is trying to change the host and can make sure they have “schedule for” privilege because when you create the meeting you are passing in the original host userId.

Make sure you have followed this document to turn setup the schedule for feature: