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 the 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 Server-to-Server-OAuth token that is used as a Bearer token to hit the API for getting the Account Id. The bearer token is available in the APP Credentials tab under the installed Server-to-Server-OAuth App in Zoom App Marketplace.
The required API is https://api.zoom.us/v2/users/{userId}. For user-level applications, pass the me value instead of userId parameter. The response of the API contains the account_id of the customer.
If you want the userId of the user, hit API https://api.zoom.us/v2/users.
Supported Metrics
Click here to view the supported metrics
Resource | Metric Name | Metric Display Name | Units | Description | |
---|---|---|---|---|---|
Cloud Provider | zoom_TotalUsersCount | TotalUsersCount | count | Total number of users on the account. | |
zoom_ActiveUsersCount | ActiveUsersCount | count | The number of active users on the account. | ||
zoom_MeetingsCount | MeetingsCount | count | The number of meetings hosted on the account. | ||
zoom_MeetingParticipantsCount | MeetingParticipantsCount | count | The count of the participants in a meeting. | ||
zoom_FreeStorageUsed | FreeStorageUsed | gb | Amount of free cloud storage used. | ||
zoom_FreeStorageTotal | FreeStorageTotal | gb | Total amount of free storage of a recording. | ||
zoom_PlanStorageUsed | PlanStorageUsed | gb | The cloud recording storage used by users on the account. | ||
zoom_PlanStorageTotal | PlanStorageTotal | gb | The total cloud recording storage available on the account. | ||
zoom_ClientSatisfactionPercent | ClientSatisfactionPercent | percentage | Percentage of satisfaction of a client. | ||
zoom_WebinarsCount | WebinarsCount | count | The number of webinars hosted on the account. | ||
zoom_WebinarParticipantsCount | WebinarParticipantsCount | count | The count of webinar participants. | ||
zoom_PlanHostsTotal | PlanHostsTotal | count | Total number of hosts in a plan. | ||
zoom_PlanHostsUsed | PlanHostsUsed | count | Total number of hosts used. | ||
zoom_PlanRoomsTotal | PlanRoomsTotal | count | Number of rooms in a plan. | ||
zoom_PlanRoomsUsed | PlanRoomsUsed | count | The number of rooms used. | ||
zoom_PlanWebinarsTotal | PlanWebinarsTotal | count | Total number of webinars in a plan. | ||
zoom_PlanWebinarsUsed | PlanWebinarsUsed | count | Number of Webinars used in a plan. | ||
Zoom Room | zoom_room_audio_not_meet_usability_threshold | Audio device has quality issues | None | Send an alert when the audio echo test result does not meet the usability threshold. | |
zoom_room_controller_scheduling_disconnected | Controller or Scheduling display disconnected | None | Send an alert when the connection to the Controller or Scheduling Display cannot be detected. | ||
zoom_room_cpu_usage_high_detected | High CPU usage detected | None | Send an alert when CPU usage is above 90%. | ||
zoom_room_mic_speaker_camera_disconnected | Microphone, Speaker, or Camera disconnected | None | Send an alert when the mic, speaker, or camera is disconnected in the Zoom Room. | ||
zoom_room_network_unstable_detected | Low bandwidth network detected | None | Send an alert when a low bandwidth network is detected. | ||
zoom_room_offline | Zoom Room offline | None | Indicates status of the Zoom Room. Possible values are, 0 - Offline, 1 - Available, 2 - In Meeting, and 3 - Under Construction. |
Types of Authentication
OpsRamp supports Server-to-Server OAuth Authentication.
Server-to-Server OAuth authentication
The administrator for a Zoom account must enable the view and edit permissions for Server-to-Server OAuth applications.
To do this, the administrator must enable the Server-to-Server OAuth application role. Go to User Management > Roles > Role Settings > Advanced features and select the View and Edit check boxes for Server-to-Server OAuth app.
Steps to Create a Server-to-Server OAuth Application
- Choose the Server-to-Server OAuth app type under Build App section.
- Click Create.
- Add a name for your application.
- Add the following details to activate your application to enable access for using ZOOM APIs:
- App credentials — View your Account ID, Client ID and Client Secret.
- Information — Add information about your app, such as a short description and developer contact information (name and email address is required for activation).
- Scopes - If you have the role permission to add scopes, add scopes that you would like to enable.
Choose Add Scopes to search for and add scopes:Note: You need to add below permissions to get discovery and monitoring data from the Zoom app:- account:read:admin
- dashboard_home:read:admin
- dashboard_meetings:read:admin
- dashboard_webinars:read:admin
- dashboard_zr:read:admin
- room:master
- room:read:admin
- user:master
- user:read:admin
- Click Activate your app to activate the app.
- Your appliation should be activated. You will not be able to generate an access token to make API calls unless your application is activated. If your application is deactivated, existing tokens will no longer work. You can also choose to Deactivate your app in the section.
For more information, refer Server-to-Server-OAuth App.
Use account credentials to get an access token
To use account credentials to get an access token for your application, call the Zoom OAuth token API with the account_credentials
grant_type
and your account_id
:
POST https://zoom.us/oauth/token?grant_type=account_credentials&account_id={accountId}HTTP/1.1
Host: zoom.us
Authorization: Basic Base64Encoder(clientId:clientSecret)
The successful response will be the access token, which is a Bearer token type that expires in an hour, with the scopes that you chose in your application settings screen:
{
“Access_token“: String,
“Token_type”: “bearer”,
“Expire_in”: long,
“scope” : [String]
}
Note
To get a new access token, your application should call the/oauth/token
endpoint again with the account_credentials
grant.Make API calls to Zoom endpoints
Use OAuth 2.0 to make API calls to Zoom endpoints. Send the access token in the Authorization header as a Bearer token:
For example:
GET https://api.zoom.us/v2/users/{userID}
HTTP/1.1
Host: api.zoom.us
Authorization: Bearer
Configure the integration
From All Clients, select a client.
Navigate to Setup > Account.
Select the Integrations and Apps tab.
The Installed Integrations page, where all the installed applications are displayed. If there are no installed applications, it will navigate to the Available Integrations and Apps page.
Click + ADD on the Installed Integrations page. The Available Integrations and Apps page displays all the available applications along with the newly created application with the version.
Note: Search for the application using the search option available. Alternatively, use the All Categories option to search.Click ADD in the Zoom tile:
In Add ZOOM page, 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 Steps to Create a Server-to-Server OAuth App step 4 Security Key (required) Enter API Secret from Steps to Create a Server-to-Server OAuth App step 4 Confirm Security Key (required) Re-enter the API Secret. Click Next.In the RESOURCE TYPE section, select:
- ALL: All the existing and future resources will be discovered.
- SELECT: You can select one or multiple resources to be discovered.
In the DISCOVERY SCHEDULE section, select Recurrence Pattern to add one of the following patterns:
- Minutes
- Hourly
- Daily
- Weekly
- Monthly
Click Finish.The application is now installed and displayed on the Installed Integration page. Use the search field to find the installed application.
After configuring the integration, Zoom metrics can be viewed from the Infrastructure page.
The Zoom integration enables discovery of the Zoom Rooms resource.