Switching from non-OAuth to OAuth for macOS SDK application with active users

Description

I have a macOS SDK application (Account-level app | SDK credentials) registered about 1.5-2 years ago. Back then there was no OAuth, so users of our app could sign in using an email/password pair. The app is in active use by users both from our Zoom account organization and from other accounts too.

Now the time has come to update the SDK to using OAuth but during the process I don’t want to break the experience for existing users and I want to allow them to continue using email/password to sign in to Zoom with our application.

Ideally I would register a separate user-managed SDK application for OAuth without publishing it on Marketplace because it’s not yet available for general public. Then I would walk through the process of updating the SDK, testing and so on in parallel to the existing app. Unfortunately as I see Zoom does not allow having more than one SDK application registered so this approach won’t work and I have to deal with the application that we already have.

On my current app I see “Update” link, which opens a popup with the following text:

Your SDK app uses a JWT method, which will need to be replaced by an OAuth method. By clicking “Update App”, you confirm that your app will be updated to use OAuth. Learn More

I understand that when I press “Update app” I show my intent to switch to OAuth and new fields, options and parameters for OAuth will be added for my application, but I have some questions:

  1. Will older builds of our application with non-OAuth methods and older Zoom SDK stop allowing users to sign in with email and password? Or maybe nothing will change for existing builds with older SDK?
  2. Will my application switch from account-level to user-managed?
  3. If my application will stay “account-level” how can I switch it to “user-managed”?
  4. In general, do you have any advice on how I should approach to updating SDK and switching to OAuth in this situation, to keep the current builds working and to make sure our new OAuth app is user-managed level?
  5. Is there any way to keep the app hidden/unpublished on Zoom Marketplace if we want even the external users to sign in?
  6. Are there any changes planned for near future that may simplify or change the approach to switching from non-OAuth to OAuth SDK app, that may make us want to postpone the upgrade to OAuth for a little?

Thanks in advance, Andrew S.

Hey @andrew.sosna ,

Happy to clear up the confusion here. A doc update is coming soon that will help explain the flow better.

Per our docs, Zoom has deprecated support for user login through email with the release of Meeting SDK 5.9.0. We recommend that you upgrade to use OAuth as soon as possible.

The SDK App type was originally labeled as Account Level, but did not have any account level API or OAuth features attached to it, it was just the SDK Key and Secret, which is not changing / breaking when clicking update.

The “switch” or update is just the addition of User Level OAuth functionality and scopes to the SDK App type. The SDK Key and Secret has no change and will not break. In the photo below you can see the added OAuth functionality. This allows developers to have a single app type for SDK + OAuth use cases. (The addition of Webhooks are coming soon.)

When you update, it will have User Level OAuth functionality added, but that OAuth functionality, and publishing to the marketplace is completely optional, unless you need to get a ZAK token of an external Zoom user to start their Meeting or Webinar on their behalf.

User Level OAuth is what the update is. Click update, and then you can integrate the OAuth flow if you want to get your Zoom users ZAK tokens. You will need to publish your SDK App to the Marketplace if you want to get external Zoom users ZAK tokens on their behalf.

No, you will need to publish your app to the marketplace if you want to make API requests on an external Zoom users behalf. Reminder, with your SDK Credentials, you can join and Meeting or Webinar, but you can only start a users meeting or webinar if they have completed the OAuth flow and you pass in their ZAK Token to the Meeting SDK.

I don’t see the need to postpone the transition from user/password login directly in the SDK, to OAuth. Hopefully the clarification above helps. :slight_smile:

Feel free to chime in here @jon.zoom , @carson.zoom .

Thanks,
Tommy

4 Likes

This topic was automatically closed 30 days after the last reply. New replies are no longer allowed.