Retrieve a list of all webinars across all Zoom users on an account?

Description
I currently would like a list of all webinars across all users on a zoom account, but it seems I have to make many individual API requests to get this data

  1. Retrieve all active users /v2/users
  2. Check each of those users’ settings for the webinar feature /v2/users/{user_id}/settings
  3. For each user with the webinar feature, get a list of webinars /v2/users/{user_id}/webinars

For a specific account I’m working with, that takes 18-34 seconds to make all those 250+ API requests. Plus, the webinars returned may be in the past, so it would also be nice to only return webinars that are occurring in the future so I do not have to page through past webinar results with more API requests

Error
No error.

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

Which Endpoint/s?
/v2/users
/v2/users/{user_id}/settings
/v2/users/{user_id}/webinars

How To Reproduce (If applicable)
See description

Screenshots (If applicable)
None

Additional context
None

Hey @contextking

Thanks for posting on the Zoom Devforum! I am still learning, but I will try my best to help answer your question. :slightly_smiling_face:

Checkout these related threads that may have the answer you are looking for:

If these threads did not help, please let us know by replying back here and someone from the Developer Relations team will get back to you shortly.

Thanks,
DeveloperBot

Hm, I wonder if this will work?

# List all the live or past webinars from a specified period of time. 
get /metrics/webinars?from=yyyy-mm-dd&to=yyyy-mm-dd&type=...&page_size=...&next_page_token=...

From this other post: Get all meeting and webinars

API reference page:

Update 1
It seems that endpoint can only retrieve webinars within a month’s timeframe. As in, the delta between “from” and “to” querystring parameters can be, at most, a month.

Update 2
Oh, I missed the part where it only lists live or PAST webinars. Nothing in the future. This will not help. I need live or FUTURE webinars.

Hey @contextking,

Your other option is to use the Webinar Created Webhook and store the response so you know about the future webinars.

Feel free to add a Account Level Get Upcoming Webinar API to our feature request list: #feature-requests

Thanks,
Tommy

Thanks for that, Tommy, but for my particular use-case that is not ideal. I’m building a SaaS tool that allows users to connect their Zoom account to it, and then register visitors to upcoming Zoom meetings when they sign up via a form within the tool. That’s why we need a list of all upcoming zoom webinars, so that the customer of our SaaS tool can select which webinar they want to register visitors to.

I’ll look at adding this as a feature request. Thanks!

Update 1
Added feature request: Account Level Get Upcoming Webinar API

Hey @contextking,

Thanks for sharing your use case. Another thought, if you use Webinar Registration, you can save the response of when that webinar is for the registrant.

Thanks,
Tommy

Thanks for that, Tommy, but we do not use that feature of the API.

We simply need a list of all webinars starting today or in the future, for any user on the current account that the current API credentials has access to “see”. That way, our customers can select the webinar they’d like to use to enroll users into that sign up on their SaaS pages.

If a customer of ours already has Zoom, and has future webinars, and the connect their Zoom account to our SaaS tool today, we need to be able to query all of those webinars today. We won’t have any other ability to “wait for webinars to be registered” or to “register new webinars”. The customer has already done that in most situations, and they simply need to be presented with a list of webinars to choose from. That is why we need to query all users on their Zoom account, then find all users with the “webinar” feature enabled, then for those users, list all webinars.

Hey @contextking,

Gotcha. Since Zoom does not have a “List all upcoming webinars on account” API you will have to handle this on your end. You can use the List User Webinars endpoint or just save the response when a Webinar is created in your database and use the start_time to determine when to display it in your application.

Thanks,
Tommy

Since Zoom does not have a “List all upcoming webinars on account” API

Yeah, that’s why I made a feature request for it. At least a single endpoint to query all webinars across a single account.

And the way I’ve temporarily fixed the current issue I was having, was by parallelizing my requests to /users/{user-id}/settings, while also trying to stay under the rate-limit of 20-60 requests per second. The original implementation I was using was making the requests in a serialized way. By parallelizing 5 requests at a time, I got a huge speed-up in response time and can process the remaining data that I need this way.

Thanks.

1 Like

Hey @contextking,

Thanks for making the feature request! :slight_smile:

Glad to hear you found a decent workaround in the meantime.

-Tommy

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