Boost recurring donations this giving season with the new upsell prompt!Learn How >>

Connecting the Events app to a Server-to-Server OAuth app in your Zoom account

updated

The Events app integrates with Zoom so that you can associate a Soapbox Event with a Zoom Meeting or Webinar and have registered attendees of a Soapbox Event automatically created as Zoom registrants. This will create personalized Zoom Meeting or Webinar links for each attendee. This will also allow you to track attendance in Soapbox and in Salesforce.

To connect the Events app to your Zoom account, you must have a Zoom paid account of the Pro level or higher and have access to the Zoom user that is the owner of your account. To connect the Events app to Zoom Webinars, you must have the Webinars paid add on with Zoom.

To connect your Zoom account with Soapbox, you must first create a Server-to-Server OAuth app in Zoom through the following steps:

1. Create your Zoom Server-to-Server OAuth app

  1. Go to https://marketplace.zoom.us/
  2. Login as the Zoom user that is the owner of your account
  3. Click the Develop drop down to open it
  4. Click Build App
  5. For "Choose your app type", click Create for Server-to-Server OAuth (Note: Do not create "OAuth" app - it must be a Server-to-Server OAuth app)
  6. In the popup, enter an App Name. This will be for internal use only so you can name it whatever you'd like.
  7. Click Create
  8. On the next screen under App Credentials, copy and paste the values for the Account ID, Client ID, and Client Secret in a temporary place for use later
  9. Click Continue
  10. On the next screen for Information, enter the Basic Information and Developer Contact Information. This will be for internal use only so you can name it whatever you'd like.
  11. Click Continue
  12. On the next screen for Features, copy and paste the value for the Secret Token for the App Feature in a temporary place for use later
  13. Click Continue
  14. On the next screen for Scope, click Add Scopes
  15. In the popup, select each of the following:
    1. Meeting > View all user meetings
    2. Meeting > View and manage all user meetings
    3. Webinar > View all user webinars
    4. Webinar > View and manage all user webinars
    5. User > View all user information
    6. User > View users information and manage users
    7. Account > View account info
  16. In the popup, click Done
  17. On the main page, click Continue
  18. On the next screen, click Activate Your App
  19. Keep the Zoom Server-to-Server OAuth app browser tab open

2. Add your Zoom credentials to Soapbox

Once you have created your Server-to-Server OAuth app in Zoom, you're ready to add your Zoom credentials to the Soapbox Engage Events app. To do so:

  1. Open a new browser tab and keep the Zoom Server-to-Server OAuth app open in the original tab
  2. Login to your Soapbox administrator
  3. Open the Configuration for the Events app
  4. Click the Integration tab
  5. For Enable Zoom Integration by Default, choose the default setting for your Zoom integration Keep the default of No if you plan to use the Zoom integration for a subset of your events. You will then enable the integration on an event by event basis. If you will be using the Zoom integration for most or all of your events, you may wish to set it as Yes. In either case, you can override this default for each event.
  6. For Zoom App Type, select Server-to-Server OAuth. NOTE: If you are updating your integration from JWT to Server-to-Server OAuth, you may wish to leave the Zoom App Type as blank or JWT until you have confirmed the credentials in step 9.
  7. For Server-to-Server OAuth Account ID, enter the Account ID you copied from your Zoom app
  8. For Server-to-Server OAuth Client ID, enter the Client ID you copied from your Zoom app
  9. For Server-to-Server OAuth Client Secret, enter the Client Secret you copied from your Zoom app
  10. For App Feature Secret Token, enter the secret token you copied from the Feature page of your Zoom app
  11. To confirm that the credentials successfully authenticate to Zoom, click Test Server-to-Server OAuth credentials. If updating your integration from JWT to Server-to-Server OAuth and you waited to set the Zoom App Type to Server-to-Server, you may wish to select that now.
  12. For Restricted Users, if you wish to limit the integration to only specific Zoom Users, enter a comma-separated list of their Zoom User Ids. The Zoom User Id can be found by those with admin privileges in Zoom by going to Admin > User Management > Users. From there, click on a user to open their detail view. Their Zoom User Id will be included in the URL for the detail view.
  13. Click Apply
  14. Once the page refreshes after applying these settings, the name of the Zoom Account Owner should appear under the credentials, if Soapbox was successful in connecting to your Zoom account

3. Add Event Subscription and Validate URL in Zoom Server-to-Server OAuth app

  1. In the browser tab with your Server-to-Server OAuth app, click Features in the left column
    NOTE: If you exited the tab, you can access the app again by logging into https://marketplace.zoom.us/, clicking Manage in the upper right, and click your app in the Created Apps list.
  2. On Features, under General Features, enable Event Subscriptions
  3. Click Add Event Subscription
  4. For Subscription Name, enter "Attendance Join/Left Meeting/Webinar" or another name of your choosing
  5. For Select a Method, confirm that Webhook is selected
  6. For Event Notification Endpoint URL, enter your Soapbox Engage domain followed by ?option=com_zoom&view=webhook

    Soapbox prefix domain example:
    https://{myaccountprefix}.secure.nonprofitsoapbox.com/?option=com_zoom&view=webhook

    Custom domain example:
    https://{www.myorg.org}/?option=com_zoom&view=webhook
  7. Click Validate
  8. Click Add Events
  9. In the popup, select the following:
    1. Meeting > Participant / Host joined meeting
    2. Meeting > Participant / Host left meeting
    3. Webinar > Participant / Host joined webinar
    4. Webinar > Participant / Host left webinar
  10. Click Done
  11. Click Save

If you are updating your integration from JWT to Server-to-Server OAuth, it is highly recommended that you confirm that integration is working. You can do so by confirming that you are able to select a Zoom Meeting or Webinar for a given event and / or registering for an event that is integrated with Zoom and confirming that a registrant is created in Zoom.

Have more questions? Submit a request
Article is closed for comments.