Account-level vs User-managed level

Hi there Zoom support team,

We are building a web application on Bubble and are looking to integrate with Zoom via API. We are unsure about what account type between account-level and user-managed level is most appropriate for our use case. Specifically, we also read that you would have to incur 149USD/Month running on a pro account on Zoom if configuring an account-level app. These are costs we could not take on at this stage and most importantly we just need to ensure that users can log in with their zoom account on our app and schedule, manage and run online classes.

Could I kindly ask you to review the context of our application concept below and give us some feedback on the above, please?

Thank you very much,
Robin Christopher


App concept in short:

We have two user types: (1) students and (2) teachers

For (1) we need to ensure these users can

  • purchase attendance to a scheduled meeting
  • receive the code/access required to the meeting scheduled upon purchase/successfully processed payment (we are going to handle the purchasing with a Stripe integration)
  • attend the meeting at the time it is scheduled. This is all for now.

For (2) these users must be able to

  • schedule meetings, modify meetings, cancel meetings (of course issue refunds as a result of cancellation)
  • each user would require to have their own Zoom account. Logging in to schedule a meeting would redirect and then once logged in redirect back to our web app to fill out:
    1. Meeting Title, Description, setting the date (setting recurring dates possibly too), handle meeting options
    2. host and participants video should be always on and therefore the default…

hoping you can help me, im not too familiar with coding, though with everything going on I have to quickly put together a website to host multiple zoom meetings im using Squarespace . Pretty much the page will look like tiles of meetings and the end user will just click and choose the meeting…

Hey @seveneight and @pankajmcaniet,

Thank you for reaching out to the Zoom Developer Forum. I’m happy to help!

Even with a free Zoom account, you should be able to test our APIs by creating account-level or user-level apps. Once you’re done testing, based on your use case, it sounds like you will want a Pro Plan or higher.

You can absolutely accomplish this with our APIs! With this app, either a user level or account level app would make sense. With a user level app, each student and teacher would need to install the app. With an account level app, an admin would only have to install the app on the account once.

Further, if you wish to embed Zoom on your site or app, you will likely want to use a combination of our APIs (for creating and scheduling live meetings) and our Web SDK (for embedding the Zoom Meeting/video experience on your site/app). Details below on each of these.

API and SDK Overview
We offer both APIs and SDKs for you to consider when planning an integration/implementation in an application. You may find the below information helpful for your web developer.

Here are some APIs that you can consider using within your application:
Create Meetings: To create a meeting (including instant meetings)
List Meetings: To Display the schedule Meetings
Retrieve Meeting: To get a specific meeting

Some additional tips:
Once the meeting is created you can send the “start_url” to the hosts and “join_url” to the participants.
To get a list of past meeting participants, you can use this endpoint.
To display live meetings you can use the meeting started webhook.

To get real-time participant events, please use:
https://marketplace.zoom.us/docs/api-reference/webhook-reference/meeting-events/participant-joined-meeting and
https://marketplace.zoom.us/docs/api-reference/webhook-reference/meeting-events/participant-left

You can find our webhook meeting events here and a list of all our APIs here.

We also have a Web SDK that you can consider integrating into your website:

Authentication Methods
We have two authentication types:

JSON Web Token (JWT):
JWT is an account-wide app and is available to all the admins and owners of the account. You can have only 1 JWT marketplace app registered in your account. You can generate multiple JWT tokens using the JWT keys, and the tokens operate independently of each other until expired or the credentials have been changed.

A JWT token will contain all the permissions, and there is no way to restrict it. A JWT token is only valid for your account.

To know more, please visit: https://marketplace.zoom.us/docs/guides/auth/jwt

OAuth 2.0:
You can use an OAuth App if you want to have limited permissions for your token. To set up access credentials and request scopes for your app, create an OAuth app on the Marketplace. Follow the Create an OAuth App guide for a full walkthrough.
OAuth2 endpoints are located at https://zoom.us/oauth/.

Depending on the App type (Account Level or User Managed), the app needs to be authorized by either the account admin or the user. To know more, please visit: https://marketplace.zoom.us/docs/guides/build#understanding-app-types

I hope that helps! Let me know if you have any questions.

Thanks,
Max

Hi Max,

This is fantastic help and insight. Really appreciate the time you have taken to outline this so comprehensively. Obviously quite a bit to digest but I’ll go through the documentation and start taking steps towards this. Thank you for contextualizing the supporting documentation based on the setup requirements.

Have a great week ahead and should we encounter any other barriers, I’ll get in touch.

Happy Tuesday.

Thanks,
Robin Christopher

Great! I’m glad to hear that was helpful. I know that’s a lot of information at once so please do reach out if you encounter any further issues or questions.

Max