Zoom (Server-to-Server OAuth App) Integration

Create, manage and process CPE for Zoom meetings and webinars in LCvista. This integration uses the Server-To-Server OAuth application)

Integrations
Gathering API Information
Entering Provider Credentials
Creating a Session
Launching a Session
Best Practices
Processing CPE

 

Please Note: Zoom has updated the scope list for their Server-to-Server application. Customers creating a NEW Zoom OAuth application should follow the process outlined below.

Customers with an existing Zoom OAuth Server-to-Server application can continue using their existing credentials until 2025. After this time, customers will be required to update their credentials using the process outlined below, when Zoom ends support.

Integrations

For more information on the Integrations feature, and best practices for using this workflow, please refer to our article on Integrations

Continue reading this article to learn more about creating, managing and processing CPE for Zoom (Server-to-Server OAuth app) sessions in LCvista.

Gathering API Information

Before entering your Provider Credentials into LCvista, take note of the items which will be requested by Zoom (Server-to-Server OAuth app) :

  • Account ID: provided by Zoom
  • Client ID: provided by Zoom
  • Client Secret: provided by Zoom

To get the above information, you will need to enable the Zoom Marketplace App using the Server-to-Server OAuth application.

Note: It is recommended that your firm's Zoom Account Owner create this application for your organization, as the Account Owner will have the permissions required to set up this application. If you are your firm's Zoom Account Owner, you can jump to Step 6.

 

If that is not possible at your organization, your firm's Zoom Account Owner will need to assign you the appropriate permissions to set up this application. The steps to complete this process begin below.

 

Step 1: From User Management, select Roles, and Add Role.

 

Step 2: Select Application developer from the Role Name dropdown.

 

Step 3: From the Role Settings tab, select the following and Save Changes.

  • Edit, Users
  • View, Meetings
  • View, Usage Reports
  • Edit, Zoom for Developers
    • Edit, Server-to-Server OAuth App

 

Step 4: Within the Role Members tab, select Add Members

Caution: Adding a user to a role will remove that user from their existing role. Please ensure that the new role includes any existing permissions that the user previously held in addition to the permissions required to create the OAuth app.

 

Step 5: Enter the appropriate member email address, and select Add.

 

Step 6: Access the Zoom App Marketplace. From your Zoom account within the Develop dropdown, select Build Server-to-Server App.

step-6

 

Step 7: Provide a Name, in order to Create.

 

Step 8: Within App Credentials, document your Account ID, Client ID and Client Secret to enter within LCvista.

 

Step 9: Within Information, populate required fields below.

step-10

Step 10: Within Scopes, select Add Scopes.

 

Step 11: The following scopes should be added. Once added, select Done

  • meeting:read:meeting:admin
  • meeting:read:list_polls:admin
  • meeting:read:list_registrants:admin
  • meeting:read:list_registration_questions:admin
  • meeting:write:registrant:admin
  • report:read:list_meeting_participants:admin
  • report:read:list_meeting_polls:admin
  • report:read:list_webinar_participants:admin
  • report:read:list_webinar_polls:admin
  • report:read:meeting:admin
  • report:read:meeting_qna:admin
  • report:read:webinar:admin
  • report:read:webinar_qna:admin
  • webinar:read:webinar:admin
  • webinar:read:list_polls:admin
  • webinar:read:list_registrants:admin
  • webinar:read:list_registration_questions:admin
  • webinar:write:registrant:admin

step-12a

step-12b

step-12c

 

Step 12: Within Activation, select Activate your app.

Entering Provider Credentials

From the Provider menu within LCvista, click on the Add Provider button and select Zoom (OAuth Credential). Enter the credentials requested below. 

  • Account ID: provided by Zoom
  • Client ID: provided by Zoom
  • Client Secret: provided by Zoom

Select Validate to confirm credentials. Once they are approved, you can save. You will only need to do this once per provider.

If your firm uses more than one provider, you may add multiple providers upon setup.

Creating a Session

Once set up of Provider and Rulesets are complete, you can begin to create sessions within LCvista. For more information on creating Integrated Provider sessions, see article Integrations and the section on Creating Your Session.

In addition to the standard fields Webcast Credentials and Integration Provider Ruleset, you will be asked to provide the following additional data when creating a Zoom session within LCvista:

  • Event ID. This is Meeting ID within Zoom.

Please find a helpful screenshot on where you can retrieve this Meeting ID (Event ID) from Zoom:

 

Launching a Session

Once this webcast session has been created and released to end users for enrollment on LCvista, enrolled professionals will have access to a Launch button which will appear on the day of the event, an hour ahead of the event's start time. Professionals will be navigated to Zoom's interface upon launch.

 

Best Practices

There are a few items to be aware of when working with Zoom Meetings and Webinars. 

  • Restarting an event. If an event is ended and restarted during the Zoom scheduled start and end time, Zoom will create two separate sessions. The latter session created will be the only data retrievable through the API. Please be aware of this before you choose to end a session and restart it.
  • Polling questions.
    • Require registration. Poll results cannot be generated from Zoom meetings to the LCvista Raw Data report unless you require registration within the event setup.

    • Counting a Poll Response. As is the case with other integrated providers, the system only considers whether someone responded to a polling question or not, when the suggested credit is calculated. There isn't an additional layer available to determine whether that response has been deemed 'correct'.
    • Create unique polling questions. Due to limitations with Zoom, please make sure your polling questions are unique. This will ensure that the responses are captured and associated properly in the Raw Data Report. Should you choose to repeat a polling question we suggest adding a number (1, 2, 3, etc.) to the beginning of your polling question.
    • Polls with multiple questions. In situations where you have included multiple questions for a single poll, LCvista will return the name of the poll and question on the raw data report, example: “Today’s First Poll/Question One” (where Poll name was “Today’s First Poll”, and the question title was “Question One”). Responses to polls with multiple questions will be returned for each user with answers separated by a semicolon (i.e., “yes; no”).

    • Polls used from Saved Library. Polls used from your Zoom Saved Library are not accessible through the existing API calls that allow our system to expose all information about your event. Polls used from the Saved library will not be visible or accounted for within the Raw Data or Completion reports. To ensure poll questions and responses are visible and accounted for, use polls outside of your saved library.
  • Meeting data. Zoom retains meeting reports up to 30 days after the scheduled meeting date. Please be sure to refresh the Raw Data Report within this window to guarantee data is pulled into LCvista.
Given this limitation, an error will appear should you refresh the Raw Data Report more than 30 days after the scheduled meeting date. For this reason, we recommend that you do not refresh the Raw Data Report outside of this Zoom activity window.

 

 

Processing CPE

What happens after the event concludes? Once your event is over, you will have access to both the Raw Data report as well as the Completion report. Both will assist in processing CPE for your participants.

To learn more about reviewing the Raw Data and Completion reports and processing CPE please review article on Integrations, specifically the section on Reports: Completion Data Report.