# Creating Zoom Apps for Zoom Room Controllers Creating apps for Zoom Room Controllers follows the standard process for creating a Zoom app. In this article, we call out only information specific to creating apps for Zoom Room Controllers. Ensure you have read [Create a Zoom app](/docs/zoom-apps/create/) before continuing. ## Prerequisites - You have read [Key Concepts](/docs/platform/key-concepts/). - You have read [Create OAuth client apps for users](/docs/build-flow/create-oauth-apps/). - You have a [Zoom account](https://zoom.us/). - Zoom Apps SDK 0.16.8 or higher. - Zoom Rooms client 5.13.1 or later. - Zoom Desktop client 5.13 or later. - You are either the Zoom account owner, account admin, or have been assigned the **Zoom for developers** role. - The administrator has enabled _view_ and _edit_ permissions for the **Zoom for developers** role. To enable permissions for roles, log into the Zoom web portal and go to **User Management** > **Roles** > **Role Settings** > **Advanced features**, and select the **View** and **Edit** checkboxes for **Zoom for developers**. For more information, see [Using role management](https://support.zoom.us/hc/en-us/articles/115001078646). ![](/img/UBF-role-prerequisite.png) --- ## Step 1 - Create a general Zoom app Follow the instructions in [Create OAuth client apps for users](/docs/build-flow/create-oauth-apps/) to create a general app. Make these selections to create an app for Zoom Room Controllers: - On the **Basic Information** page, under **Select how the app is managed**, select **Admin-managed**. ![](/img/UBF-admin-managed.png) - On the **Features** page, **Surface**, **In-client App Features**, enable **Zoom App SDK**. Select **Add APIs** and add the APIs and events used by your app. ![](/img/UBF-zoom-apps-sdk.png) - (optional) Enable **In-client OAuth** to allow users to complete the authorization process in the client. ![](/img/UBF-in-client-oauth.png) - On the **Features **page, go to **Surface** > **Zoom Client Support**, enable **Zoom Rooms**, and select **Zoom Rooms Controller**. ![](/img/UBF-zoom-rooms-controller.png) Complete the steps in [Create OAuth client apps for users](/docs/build-flow/create-oauth-apps/) and then proceed to **Step 2**. ## Step 2 - Download and install the Zoom Apps SDK Download and install the [Zoom Apps SDK](https://appssdk.zoom.us/classes/ZoomSdk.ZoomSdk.html). ## Step 3 - Get the Zoom Room context In your app, use the `getZoomRoomContext()` method to get the device ID and room information from the Zoom Room device. > **Note:** > > This feature is still in early release phase. You may see a message that the method is not available in the SDK. You can ignore the message.{" "} **Example usage:** `zoomSdk.getZoomRoomContext()` **Data inputs:** None **Data outputs:** - `deviceId` (string) - id of the Zoom Room device - `roomId` (string) - id of the Zoom Room ## Step 4 - Get the Zoom Room Controller credentials In your app, use the `getZoomRoomControllerCredentials` method to request configuration credentials for in-room control processors. > **Note:** > > This feature is still in early release. You may see a message displayed that the feature is not available in the SDK. **Example usage:** `zoomSdk.getZoomRoomControllerCredentials()` **Data outputs:** Response if app is configured with username/password/URL credentials: ```javascript { type: zrcUsernamePassword, token: { appConfigUserName: string, appConfigPassword: string, appConfigDeviceUrl: string, }, } ``` Response if app is configured with authToken/URL credentials: ```javascript { type: zrcAuthToken, token: { appConfigAuthToken: string, appConfigDeviceUrl: string, }, } ``` --- ## Resources - [Sharing beta and private apps](/docs/distribute/sharing-private-and-beta-apps) - [Authorization URL FAQ](/docs/distribute/app-submission/authorization-url-faq) - [Create general apps](/docs/build-flow/create-oauth-apps/) - [Submit apps for review](/docs/build-flow/submitting-apps-for-review/) - [Publish your apps](docs/distribute/app-submission/submit-apps-review/)