How Zoom manages the API rate limit

Description
I am integrating Zoom APIs in our portal. For this, we have made an OAuth Application in Zoom’s marketplace.

Now, our users need to login to our portal and install that zoom application with their zoom account, so that we can create meetings on behalf of them. But there is a limit of calling “create a meeting” API of 100 Req. per day and 20 Req. per second.

Now the query is if zoom will deduct the limit from the application owner’s account ie us or from our user’s account who installed that application.

For eg: If I create an Oauth Application using an account abc@gmail.com and I have 2 clients whose email id is as follows:

Client 1: test@gmail.com
Client 2: xyz@gmail.com

Now if I hit “create a meeting” API for Client 1 (test@gmail.com), then the limit quota will decrease from our account ie abc@gmail.com, or from Client 1 (test@gmail.com) account.

Which App Type (OAuth / Chatbot / JWT / Webhook)?
We are using OAuth Application

Hi @solution,

Good question—happy to clarify.

To that end, I should note that the 100 meetings per day limit (create or modify) is applied on a User-level basis. So, if you’re updating/creating meetings on behalf of a user, this will apply to their individual quota of 100 meetings per day, per user.

Let me know if this helps to clarify,
Will

Hi, Thanks for your reply.

How can I check the remaining user limit of creating a meeting?

Also please let me know how can I get the account id of a user. I have tried to decode the access token and use the “aid” key as account id but when I tried to get the plan details of that user using the aid key, it always returning code 124, invalid access token error.

Hey @solution,

Thank you for your question. When it comes to checking if a user has hit the limit, you check the response when creating a meeting to see if a 300 HTTP status is returned which would mean the limit was hit. Alternatively, you can use the Get Active/inactive Hosts Report API and check the total_meetings field to see how many meetings that the user has created.

That being said, we don’t have an endpoint to specifically check how many meetings a user has created. This will need to be implemented using logic in your code using the above methods.

When it comes to retrieving the account_id you can use the Get a User API and use the account_id from that.

Let me know if that helps.

Thanks,
Max