# Build with Zoom Meeting SDK and APIs ## Prerequisites: - You have an ISV test account from Zoom. - You have familiarized yourself with the features available on the Zoom platform. After receiving your ISV test account and exploring the available developer tools, you're ready to start building and testing your integration. The following section provides a high-level overview of building with the Zoom Meeting SDK and using APIs. It isn’t a step-by-step guide. Instead, it outlines the overall process. ## Create a Zoom Marketplace App To integrate with the Zoom Platform and obtain authorization to use Zoom APIs, create an app on the Zoom App Marketplace. 1. Log in to the [Zoom app Marketplace](https://marketplace.zoom.us/) with your developer account. 2. Click **Develop** → **Build App**. 3. Choose [Server-to-Server OAuth](/docs/internal-apps/s2s-oauth/) app (backend only) and click **Create**. > **Choosing a server-to-server vs general app** > Choose a **Server-to-Server OAuth** app for secure, automated backend integrations that don't require user interaction. > > Use a **General App** when you need user-facing integrations that require user authorization and interaction within Zoom, such as Meeting SDK and Zoom's Realtime Media Streams. For this overview we are using a server-to-server app. The server-to-server app type: - Uses account-level credentials for secure communication. - Removes the need for user authorization. - Supports automated backend workflows. ## Authorize and obtain tokens - For each embedded app session, use the [OAuth 2.0 flow](/docs/integrations/oauth/) to obtain an access token for the `custCreate` user. - If your app is backend‑driven, use the [Server‑to‑Server OAuth token](/docs/integrations/oauth/#request-an-access-token) to act on behalf of the `custCreate` user. > **Refresh tokens** > > Store tokens securely and [refresh](/docs/integrations/oauth/#refresh-an-access-token) them as they expire. ## Embed with an SDK The [Zoom Rivet SDK](/docs/rivet/javascript/) allows you to create users and meeting directly within your server side app and the [Zoom Meeting SDK](/docs/meeting-sdk/) enables you to embed Zoom's meeting experience directly into your application. ## Test your Application 1. Use the Meeting SDK to embed Zoom meeting functionality into your own web or native app. 2. Generate a meeting signature using your app’s **Client ID** and **Secret**. These are available in your Zoom app's [App credentials](/docs/build-flow/basic-info/app-credentials/) page. 3. Join meetings as the `custCreate` user using the SDK. ## custCreate method - All non-admin users must be created using the custCreate method of user creation. The custCreate API to create users programmatically without the need to log into the Zoom web portal or the Zoom client. These API users are able to host and join meetings (see start meeting and join meeting workflows for details). - Users created through custCreate cannot login directly through Zoom web or client portals. On your development environment, verify: - custCreate users can join meetings. - OAuth tokens are valid. - Embedded app UI loads correctly in the Zoom client or browser. ## Contact ISV Team After you complete your integration with Zoom, contact the ISV Team to formalize your Partner Agreement.