Zoom
Zoom is a cloud-based video conferencing platform that can be used for video conferencing meetings, audio conferencing, webinars, meeting recordings, and live chat.
Zoom has become a critical piece of IT infrastructure for many businesses. Having accessible data on the usage, billing, and performance of Zoom as a communications tool will relieve pressure from IT teams who otherwise have to spend time and toil logging in to multiple tools and running reports.
Zoom Account creation
Create a Zoom Account in Zoom App Marketplace.
Pre-requisites
Account Id of the customer is required. Hit an API to get Account Id. You will be able to see the JWT token that is used as a Bearer token to hit the API for getting the Account Id. The bearer token is available in APP Credentials tab under the installed JWT App in Zoom App Marketplace.
The required API is https://api.zoom.us/v2/users/{userId}. For user-level apps, pass the me value instead of userId parameter. The response of the API contains account_id of the customer.
If you want userId of the user, hit API https://api.zoom.us/v2/users.
Types of Authentication
OpsRamp supports JWT (JSON Web Tokens) based authentication.
JWT based authentication
JWT App creation
To register your app, visit the Zoom App Marketplace and click 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 Create.
App Info
After creating your app, in Basic information, your first step is to fill out descriptive and contact information. Here you enter a short description along with our company name. This is also where you can change the name you have just given to your app. Note that this unique app name will be visible, even if your app is not submitted publicly.
Next, in Developer Contact Information add Developer Contact name and Email, which may be used by the Zoom Marketplace Team or your users for any inquiries regarding your app.
In Links, you can also include optional links for our users to access your Privacy Policy or Support pages. You can also upload an optional App Icon for your app.
App Credentials
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. Click View JWT Token. You will 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 have accessed your API Key and Secret and copied over any needed tokens, click Continue.
App Event subscription
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 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. Once you enter your Event types and Destination URL, you must click Save. Once you are completed here, click Continue. Your app is now activated on the account.
Authentication and API calls
The JWT Token created in step-3 is used as a Bearer token for authentication in postman. The API calls can be performed using Postman. All APIs under the Zoom API are based on REST architecture and are accessed via HTTPS at specified URLs. The base URL for all requests is https://api.zoom.us/v2/. For instance, you can list all users on an account via a GET request to this URL: https://api.zoom.us/v2/users/. The API reference Pages are available for Zoom.
Configure the integration
From All Clients, select a client.
Go to Setup > Integrations > Integrations.
In the Saas Application section, select Zoom:
Enter your account information:
Property Description Name (required) User-defined, descriptive integration name. Account Number (required) Enter UserId. Client ID (required) Enter API Key from JWT based Authentication step 3 Security Key (required) Enter API Secret from JWT based Authentication step 3 Confirm Security Key (required) Re-enter the API Secret. Click Next.
Choose the discovery schedule period:
Click Finish.
After configuring the integration, Zoom metrics can be viewed from the Infrastructure page.
Supported metrics
Metric Name | Metric Display Name | Units |
---|---|---|
Total Users Total number of users on the account | TotalUsersCount | count |
Active Users The number of active users on the account | ActiveUsersCount | count |
Number of Meetings The number of meetings hosted on the account | MeetingsCount | count |
Meeting Participants Meeting participant count | MeetingParticipantsCount | count |
Free Storage Used Amount of free cloud storage used | FreeStorageUsed | gb |
Free Storage Total Total Recording free storage | FreeStorageTotal | gb |
Plan Storage Used The Cloud recording storage used by users on the account | PlanStorageUsed | gb |
Plan Storage Total The total Cloud recording storage available on the account | PlanStorageTotal | gb |
Client satisfaction % Satisfaction Percentage of the client | ClientSatisfactionPercent | percentage |
Number of Webinars The number of webinars hosted on the account | WebinarsCount | count |
Number of Webinar Participants Webinar participant count | WebinarParticipantsCount | count |
Number of Hosts in Plan Total number of hosts in a plan | PlanHostsTotal | count |
Number of Hosts Used Total number of hosts used | PlanHostsUsed | count |
Number of Zoom Rooms in Plan Number of rooms in the plan | PlanRoomsTotal | count |
Number of Zoom Rooms Used The number of rooms used | PlanRoomsUsed | count |
Number of Webinars in Plan Total number of webinars in the plan | PlanWebinarsTotal | count |
Number of Webinars Used Number of Webinars used in a plan | PlanWebinarsUsed | count |