We’re trying to implement the Zoom Meeting SDK for web, following the documentation provided online by Zoom.
What we’re trying to do is have users JOIN a meeting using the Client View.
We have reached the point of calling the ZoomMtg.join()
function with all its parameters, but we receive the following error: Invalid sdkkey
We have followed the guide in that documentation that explains how to get our credentials (SDK key), creating an app in the Zoom Marketplace and getting the Client ID and the Client Secret. That Client ID is what we’re using as SDK Key in our implementation. We have created the app as General type, Admin-managed.
What’s not very clear to us is:
- Do we need to actually publish the app or is it enough to where we got to (getting the credentials)?
- The app seems to require OAuth Redirect URL, but nowhere in the Zoom Meeting SDK for web documentation talks about that, do we need to put something here? If so what?
- Same with Scopes, that’s not mentioned anywhere in that documentation.
Any help trying to figure out what we’re doing wrong would be much appreciated.
Hi @bcntechs ,
For your sdkKey, you will need to create a General app, and you will thereafter need to enable Meeting SDK in the embed tab.
The sdkKey is the ClientID found in your Development Tab.
You will only need to publish your app if you want to join externally hosted meetings.
The OAuth Redirect URL is optional. It is only necessary if you are using our REST API.
Hello @chunsiong.zoom ,
Thank you for your response. Here’s the message I was trying to get to support because our app got rejected and it doesn’t make sense to us:
We want to implement the following: have multiple users (non-Zoom users to clarify, they are users of a website we own) join a Zoom meeting that’s been started via de Zoom app by a Zoom user in our Zoom account. These users will join the meeting from within our website, meaning it will be embedded in our website (they won’t use a Zoom meeting to join).
In order to achieve this we have followed the following documentation for implementing the Client View. We actually already what we need mostly working, but we have some issues with the credentials.
In one of the steps of that documentation it’s asking to generate a JWT using our Meeting SDK credentials, which takes us to this page to learn how to get those. As you can see, the way of getting credentials is by publishing an app on the Zoom App Marketplace. We follow the steps there, which tell us to create an app to get the credentials, and we do. The problem is, we’ve realized that the documentation there isn’t nearly enough or complete, since it doesn’t say anything about having to actually publish the app in the Marketplace, which is a very involved process asking for things that we don’t have because they’re not necessary in our case.
Right now we’ve gotten to the point where our Zoom App is approved to be used in beta, and the Zoom Meeting SDK for web is working on our website using the production keys (which is good).
So, questions:
-
We don’t need a Zoom app to share with others in the Marketplace, we literally only need the credentials that are required in the documentation I shared above, do we really need to publish the app in the Marketplace? Or can we just use it in beta indefinitely?
-
Are there any real limitations of using it in beta?
-
If we HAVE to publish the app, what do we put in all the sections that don’t apply to us? Our app submission was rejected because some things that we don’t need.
This is the message we got as rejection: Thank you for your submission to be considered for our Beta program. In reviewing the content and information you shared, the Technical Design section indicated that you do not have a Secure SDLC process, do not conduct vulnerability scans (SAST/DAST), and do not perform ongoing pen testing for your application.
What do those things mean? Why do we need them for an app that’s not going to be shared publicly? Why does the documentation for the Zoom Meeting SDK for Web mention NOTHING about all this?
Thank you
@bcntechs responses are inline
So, questions:
- We don’t need a Zoom app to share with others in the Marketplace, we literally only need the credentials that are required in the documentation I shared above, do we really need to publish the app in the Marketplace? Or can we just use it in beta indefinitely?
If you do not publish your applicaiton, your Meeting SDK will not be able to join external meetings. In other words, joining meetings which are created outside of the your tenant will fail.
- Are there any real limitations of using it in beta?
Cross account join will disabled. See above for restrictions in joining externally created meetings.
- If we HAVE to publish the app, what do we put in all the sections that don’t apply to us? Our app submission was rejected because some things that we don’t need.
Publishing an applications means the Meeting SDK will be able to join external meeting. Hence the requirement for SDLC.
Hello @chunsiong.zoom,
Thank you for your reply. Based on your answers, my understanding is that the only limitation of being in beta is that our app will not be able to join other meetings, but everything else will work the same? No additional limits on how many meetings we can have with that app, duration, frequency, number of users that can join, etc…
Again, we use that app just to have the necessary credentials for hosting web embedded meetings in our website, that’s it, we’re not using it to join other meetings with this app.
Please could you confirm if my understanding is correct?
Thanks!
@bcntechs
This is a key difference between published an unpublished app
Thank you for your reply. Based on your answers, my understanding is that the only limitation of being in beta is that our app will not be able to join other meetings, but everything else will work the same?
Everything else is more or less the same.
Again, we use that app just to have the necessary credentials for hosting web embedded meetings in our website, that’s it, we’re not using it to join other meetings with this app.
The embedded meeting must be an internal meeting.