I am writing an asynchronous integration for scheduling Zoom Room meetings from an external program. I have been developing my meeting generation elements using the ZoomRoom API Schedule endpoint. It does everything I need it to, but it will only work if the controller for the Zoom Room I am scheduling a meeting for is “online”, meaning the hardware for that room has to be booted up and running. This is not optimal as my “job” that creates future meetings may run when the Zoom Room hardware is shut down temporarily.
To remedy this, I was thinking of using the Zoom API Meetings > Create A Meeting endpoint instead. My only concern is that I might miss something the Schedule endpoint does. Can someone please explain to me if I can use the Create A Meeting endpoint to do the same thing I would use Zoom Room “Schedule” to do? And if so, what do I need to make sure of to get the same results (i.e the Zoom Room controller can properly detect the new meeting and add it to any appropriate integrations).
I know that the host_id of the meeting must be set to the Zoom Room’s User account Id. Is there anything else I need to account for?
Which App Type (OAuth / Chatbot / JWT / Webhook)?
Zoom Room API - Schedule, Zoom API Create A Meeting
Thank you for reaching out to the Zoom Developer Forum. There are a couple of solutions that may work out here. First, you should be able to add an event to the calendar that the room uses. If you set the location to the Zoom Room this would schedule a meeting for that room at that time.
Another option is using the Create a Meeting API with the email that is created for the Zoom Room. However, I’ve seen users have issues with this method in some instances lately and the recommended method is to add an event to the calendar.
Another option is using the Create a Meeting API with the email that is created for the Zoom Room.
Where can I access the email that is set for a Zoom room?
Where would I pass the zoom room email in the Create a meeting endpoint, as the “schedule_for” property or somewhere else? If it is the schedule_for, the docs say I can pass an email address or user id. Should it work if I set the Zoom Room user id in that field instead of the email?
We don’t have an API endpoint to add an event to the calendar but typically the calendar provider (Outlook, Google, etc.) provides a method to add calendar events.
I’ll clarify that no longer support this method and instead events should be added to the calendar.
However, to answer your questions, you can find the email of a Zoom Room user under the User Management page. Typically it’s something like rooms_[ROOM ID]@[CALENDAR].tld
You would then call the Create a Meeting API and replace the User ID field in the URL with the email of the Zoom Room user. In that fashion, the room user would become the host of the newly scheduled meeting.