Zoom Video REST API’s and SDK — Part 1

Over the last few months, we have received several queries about how to properly use Zoom’s REST API’s and mobile SDK to create custom apps. I have seen some interesting applications that use Zoom’s mobile SDK in the health care/HR/edu space beyond just creating a meeting or webinar. I want to address the common use cases and the administrative framework that these apps need to comply to.

On a basic level, Zoom’s REST API’s let the application manage users, manage meetings/webinars, pull meeting reports and manage groups and recordings (few other functions but not that important to this discussion). However, in order to launch a meeting/webinar from your web app, the users of the app needs to have the Zoom client running in their desktop (Zoom does not have the windows or Mac SDK — yet). If it’s a mobile app, you can download zoom’s iOS/Android SDK and bundle it in your mobile app. The SDK contains the zoom core client engine with a functional wrapper on top of it to let your app customize the engine to some extent. The combination of the API’s and the mobile SDK provides some compelling user experiences.

Few other basics you need to be aware of before diving into the implementation details:

- you need to have a Zoom paid account (a PRO or Business or API plan) to access the API and SDK. If you have one, then you can find the REST API’s and mobile SDK once you log into the zoom user portal

- You need to get the API key and secret for the REST calls and for the SDK. Note that the key/sec is different for REST API access and mobile SDK. This key/sec combination identifies your zoom account

- A key point is to realize that you can use the API key/sec or SDK key/sec to create and join sessions for your account and all the sub-accounts under your account (called administrative domain) — you cannot use this key/sec on behalf of other zoom accounts (or users) which are NOT part of your account — In other words, there is no “super” key/sec which can be used to create or join session on behalf of users who are not part of your administrative domain. This is a not a limitation but part of Zoom’s security framework

An example app using Zoom REST API’s and mobile SDK

Let’s take an example of a tele-health platform we are going to develop called “TeleCall”. The app let’s Doctors and Patients do video consultation over zoom. The workflow of the app layer has two parts — physicians can start the session by signing into my web application and the patients can join the session by using Telecall Android or iOS apps. I created my own paid Zoom account, got my API key/sec and SDK key/sec by logging into Zoom. All the user accounts I create through API’s will show up in my Zoom account -

In the next set of posts, we will go through the details of creating the web workflow using Zoom REST API’s and also create an iOS app for patients. I will be publishing the source code written in node.js to Github soon.