# Get started with the Meeting SDK for macOS > **Beginning March 2, 2026**, apps joining meetings outside their account must be authorized. Authorize apps by using either ZAK or OBF tokens, or RTMS. [Learn more](/docs/meeting-sdk/obf-faq/). > **Requirements for external meeting access** > > To join meetings outside of your developer account, your app must: > > - Be [reviewed by Zoom](/docs/build-flow/submitting-apps-for-review/). > - Authenticate with either a ZAK or On Behalf Of (OBF) token to attribute to a user in a meeting. > > You can: > > - [Publish the approved app on the Zoom App Marketplace](/docs/distribute/). > - Set your app to [unlisted](/docs/build-flow/app-listing/eu-and-discoverability/#app-discoverability). > - Contact the [Integrated Software Vendor (ISV) sales team](https://explore.zoom.us/en/isv/#isv) for other options. ## Prerequisites See the [Changelog](/changelog) for the **latest** supported Zoom Meeting SDK version. See [Minimum SDK version](/docs/meeting-sdk/minimum-version/) for the **minimum** supported version. To use the Meeting SDK 7.0.0 and later, you'll need to meet these requirements. - [Xcode](https://developer.apple.com/xcode/), version 26 or later required. - For the Intel package, set the target of your app project with **Always embed Swift standard libraries** to `YES`. - A macOS device running 10.15 or later. - Valid SDK credentials. - A [JWT token](/docs/meeting-sdk/auth) to authenticate the app. - **For individual users, a Zoom Access Key (ZAK)** - send a **GET** request to the https://api.zoom.us/v2/users/{userId}/token with `type="zak"` and pass it to the SDK with [JoinMeetingParam4WithoutLogin](https://marketplacefront.zoom.us/sdk/meeting/macos/interface_zoom_s_d_k_join_meeting_elements.html)'s [zak](https://marketplacefront.zoom.us/sdk/meeting/macos/interface_zoom_s_d_k_join_meeting_elements.html#a8a93c24e7dfcdb764388b037a731b009) or [StartMeetingParamsWithoutLogin](https://marketplacefront.zoom.us/sdk/meeting/macos/interface_zoom_s_d_k_start_meeting_use_zak_elements.html)'s [zak](https://marketplacefront.zoom.us/sdk/meeting/macos/interface_zoom_s_d_k_start_meeting_use_zak_elements.html#a3e262c4d103ec330498e18f311cab657). - **For apps that need to join the meeting as individual users, an OnBehalf Of (OBF) token** - send a GET request to https://api.zoom.us/v2/users/{userId}/token with `type="onbehalf"` and pass it to the SDK with [JoinMeetingParam4WithoutLogin](https://marketplacefront.zoom.us/sdk/meeting/macos/interface_zoom_s_d_k_join_meeting_elements.html)'s [onBehalfToken](https://marketplacefront.zoom.us/sdk/meeting/macos/interface_zoom_s_d_k_join_meeting_elements.html#a6067b62f370b88ea262968363791568b). - To run the demo app, you'll need a meeting ID and passcode. **The Meeting SDK for macOS does not support running in a sandbox environment.** > **Note** The Meeting SDK for macOS supports the same versions as the Zoom client. See [Zoom system requirements: Windows, macOS, Linux](https://support.zoom.com/hc/en/article?id=zm_kb&sysparm_article=KB0060748) for details. ## Download the Meeting SDK for macOS If you **don't already have at least one registered app**, follow these steps to create an app and download the SDK files.
  1. Sign in to your developer account on the Zoom App Marketplace.
  2. On the **Created apps** page, select the blue plus sign in the upper left corner next to the word **Developer**.
  3. Select **Build App > General app**, and then select **Create**.
  4. Go to **Features** and select **Embed**.
  5. On the **Embed** page, enable **Meeting SDK**.
  6. Under the **Meeting SDK** section, configure the settings as appropriate for your app.
  7. To download the SDK files, select the platform **macOS**. This page displays available SDK versions for the selected platform, along with links to their corresponding release notes.
  8. Finally, select the **Download** button.
If you **already have at least one registered app**, follow these steps to download the SDK files using your existing app.
  1. Sign in to your developer account on the Zoom App Marketplace.
  2. On the **Created Apps** page, select your SDK app to open its configuration pages.
  3. Go to **Features** and select **Embed**.
  4. On the **Embed** page, go to the **Meeting SDK** section.
  5. To download the SDK files, select the platform **macOS**. This page displays available SDK versions for the selected platform, along with links to their corresponding release notes.
  6. Finally, select the **Download** button.
## Verify files The download includes SDK libraries - in the `SampleApp/ZoomSDK` folder - and a sample app - in the `ZoomSDKSample` folder. 1. In Xcode, add the files in the `Plugin` folder to the app's plugins and foundation. 2. Select your project and go to the **Build Phases** tab. Open **Link Binary With Libraries** and check that only these SDK files are present. - `libcrypto.dylib` - `libjson.dylib` - `libminizip.dylib` - `Libssl.dylib` - `libcares.dylib` - `libzoombase_crypto_shared.dylib` - `ZoomSDK.framework` - `Cocoa.framework` If you see other files in this location, remove them. If you are missing any files, download the SDK from the [App Marketplace](https://marketplace.zoom.us/) again. 3. After adding the SDK files, go back to the **Build Phases** tab. Ensure that `ZoomSDK.framework` and all of the `.dylib` files are included under **Link Binary With Libraries**. Add all files to the **Copy Files** step with a **Destination** set to **Frameworks**. The listed SDK files should already be present under **Link Binary With Libraries**. - If there are additional phases containing the SDK files, such as **Copy Bundle Resources**, remove those SDK files from those phases. Confirm that the SDK was correctly added to your project by importing it in any file. ```swift import ZoomSDK ``` > In order to use some features in the Meeting SDK for macOS, you must re-sign all SDK files. ## Initialize the Meeting SDK for macOS Complete these two steps to be able to use the Meeting SDK for macOS: **Initialization** and **Authorization**. SDK initialization is done synchronously with an instance of **ZoomSDKInitParams**. ```swift let zoomSdk = ZoomSDK.shared() let initParams = ZoomSDKInitParams() initParams.enableLog = true // Optional for debugging zoomSdk.initSDK(with: initParams) zoomSdk.zoomDomain = "zoom.us" ``` After initializing the SDK, you need to successfully authorize the SDK instance with your [developer credentials](/docs/meeting-sdk/auth/#generate-the-sdk-jwt). ```swift if let authService = zoomSdk.getAuthService() { authService.delegate = self let authContext = ZoomSDKAuthContext() authContext.jwtToken = "" // Input your JWT authService.sdkAuth(authContext) } ``` To determine whether auth was successful, ensure your class conforms to the **ZoomSDKAuthDelegate** protocol to listen for a result of `ZoomSDKAuthError_Success`: ```swift extension AppDelegate : ZoomSDKAuthDelegate { func onZoomSDKAuthReturn(_ returnValue: ZoomSDKAuthError) { if (returnValue == ZoomSDKAuthError_Success) { // SDK auth was successful } } func onZoomAuthIdentityExpired() { } } ``` ---