JSON Web Tokens are strings of text which are passed on every request to verify the authorization of the server. They contain a combination of secrets from the API and payload data in the form of a JSON object. If you want to learn more about JWTs, we recommend our guide on Using JWT with Zoom as well as the full documentation at JWT.io.
Note: JWT may only be used for internal applications and processes. All apps created for third-party usage must use our OAuth app type.
By creating a JWT app on the Marketplace, you can build a server-server authenticated app which allows users as well as other apps to consume its services.
To register your app, visit the Zoom App Marketplace and click on the Develop option in the dropdown on the top-right corner and select Build App. A page with various app types will be displayed. Select JWT as the app type and click on Create.
After creating your app, your first step is to fill out descriptive and contact information. Here you enter a short description along with your company name. This is also where you can change the name you’ve just given to your app. Please note that this unique app name will be visible, even if your app is not submitted publicly.
Next add Developer Contact name and email, which may be used by the Zoom Marketplace Team or your users for any inquiries regarding your app.
This is also a good time to upload an optional App Icon for your app. The icon should be a square image between 160px and 400px width and height in GIF/JPG/JPEG/PNG format, and cannot be more than 1MB in size.
In order to allow your app to integrate, the Zoom platform generates a set of unique credentials used to generate the tokens needed to authorize each request.
Clicking ‘View JWT Token’, you’ll see a unique token generated for you by the Zoom Marketplace containing the API Key and API Secret based on the Expiration Time you select below. This token here is intended for temporary usage in development to test how Zoom APIs will retrieve and send information to your account.
Once you’ve accessed your API Key and Secret and copied over any needed tokens, click Continue.
Note: If you have previously created a JWT app on the Zoom Marketplace, your API Key/Secret will be shared between apps, and can be accessed by logging into Marketplace and clicking Manage.
Event Subscriptions are optional features which allow apps to use Zoom’s webhooks to return information when a certain event or action is triggered. In many cases, Event Subscriptions can replace the need for repeated API calls. For example, you might want to add a feature that sends automated notifications to your app every time a User has activated their account or every time a Recording has started.
To create an Event Subscription, click the toggle on. Click + Add new event subscription. Choose an optional Subscription Name, and add an Event Notification Endpoint URL for both development and production. These URLs will receive POST requests containing data on the notification for each subscribed event. Note: Event Notification Endpoint URLs must be secured over HTTPS.
Note: Event Subscription names have no effect on the payload of the request.
Add the event types for this Event Subscription and click Save.
To add additional Event Subscriptions, click + Add new event subscription again. Although you can subscribe to as many events as needed for each event subscription, you can only have a maximum of ten event subscriptions per app.
Event subscriptions can have duplicate Events. For example, one Event Subscription could have Meetings and User Events, and a second Event Subscription can have Meetings and Recordings events.
To utilize Event Subscriptions, you will need to provide a Destination URL to receive incoming events from Zoom. This could be a URL like "https://www.yourcompany.com/user_added", which we explore in our Webhook guide. Note: This URL must be secured over HTTPS.
Once you enter your Event types and Destination URL, you must click Save. Once you are completed here, click ‘Continue’.
Having retrieved your App Credentials and set any Event Subscriptions, your app is all set to make requests to any Zoom APIs. You may want to refer back to any of the above settings to manage your app or if you need to regenerate your API Secrets or tokens.
You also have the option to Deactivate or Reactivate your app. If Deactivated, your app will not be authorized to make requests to Zoom APIs.