Do I need two Marketplace Apps to use both SDK and API?

I want to create meetings for users via the API, so I need an OAuth client. I also want to embed the SDK in my app so that these users can join the meetings I’ve created inside my app. I think this means I need a JWT client.

The only way I’ve found so far to get both an OAuth client & a JWT client is to make two separate Marketplace apps.

A) Is this right, or can I do it with a single app?
B) If it’s right, would I need to get both Marketplace apps published, and would users have to install both of them?

Hi @riley,

A) Yes in your case, you would need two separate apps. However, you can create meetings with a JWT app if that is allowed within your use case but you could do that same with OAuth as well.
B) You don’t need to publish the JWT app or OAuth app, they can both be used internally. The only way you would need to publish the OAuth app is if you plan on having other users outside of your account install the app.

Let us know if you have any other questions.


Thanks Michael,

I am specifically thinking of making a website with users outside my Zoom account. The users would bring their own zoom account to log in to my website, and I would like to create meetings with the API and then have them host and join the meeting inside the SDK (on my website).

In that case would I need them to install both the OAuth and JWT apps to use both the API and SDK together?

1 Like

Hey @riley,

They would only need to install the OAuth app. The JWT app cannot be “installed” by a user, it is used on your end to integrate with the Web SDK.

So the answer is you need to create both an OAuth and JWT app, but the user only needs to install the OAuth app to login to your site. :slight_smile:


Ah, that makes sense - fantastic!

How do I tell the SDK to log in a particular user who has OAuthed in from a different Zoom account? Is this what UUID is in ZoomMtg.join()?

Thanks so much for the step-by-step walkthrough, I appreciate it

Hey @riley,

The Web SDK and OAuth are separate, meaning there is no functionality to “log in to the web sdk”.

That being said, you can use info you can get from the OAuth flow like the name, id, and email of the user and pass that into the Web SDK in the ZoomMtg.join() function.