View Categories

How to set up the Zoom Meeting SDK for Join in browser in ZooMeet

This guide sets up the Meeting SDK card in ZooMeet > Settings > Connect. With the Meeting SDK keys in place, ZooMeet adds a Join in browser button to every meeting page. Attendees type their name and join the meeting inside your site, without installing the Zoom app.

This needs a second Zoom app, a General App with the Meeting SDK turned on, next to the Server-to-Server OAuth app you already connected. Keys from the Server-to-Server OAuth app do not work here. You set it up once.

By the end of this guide, you will have:

  • A General App with the Meeting SDK turned on in the Zoom App Marketplace
  • Your site’s redirect URL added to that app
  • The Meeting SDK Client ID and Client secret saved in ZooMeet, with a Connected badge
  • A Join in browser button on your meeting pages
  • A clear picture of what attendees see when they join in the browser

Estimated setup time: 5 to 10 minutes. The Meeting SDK is optional. Without it, meeting pages keep working and people join through the Zoom app or zoom.us.

Before you begin #

Make sure you have:

  • Zoom connected with Server-to-Server OAuth first. See How to connect Zoom with ZooMeet using Server-to-Server OAuth.
  • A Zoom account where you are the owner or an admin, with permission to build apps in the Zoom App Marketplace
  • An administrator account on your WordPress site
  • A site served over HTTPS. Browsers only allow camera and microphone access on secure pages.

Let’s get started.

Step 1: Check whether the SDK keys are missing #

While the Meeting SDK keys are empty, ZooMeet shows a notice at the top of ZooMeet > Settings.

Join In Browser Not Configured notice at the top of ZooMeet Settings
The notice reads “To allow joining events directly on your site, please configure the Zoom Meeting SDK credentials.”

The clock icon hides the notice for a while, and the × dismisses it. Neither one adds the keys, so the in-browser join stays off until you finish this guide.

Step 2: Open the Meeting SDK card #

The card carries a short checklist of this guide and your site’s redirect URL. Keep it open in its own tab while you work in Zoom.

  1. Go to ZooMeet > Settings > Connect.
  2. On the Meeting SDK card, marked Optional, click Edit (or the card itself if it is not connected yet).
  3. Click Where do I get these keys? to open the built-in checklist.

Step 3: Build a General App #

Zoom now builds Meeting SDK apps as a General App with the Meeting SDK feature turned on.

  1. Go to https://marketplace.zoom.us/ and sign in with the same Zoom account.
  2. In the left menu, click Developers, click + next to Developer, then Build app.
  3. Select General App and click Create.
The app type dialog with General App selected and the Create button highlighted
General App is the first option in the dialog.

Zoom creates the app straight away with a default name such as General app 123.

  1. Click the pencil icon next to the app name.
  2. Type ZooMeet SDK and press Enter.
The app name field in edit mode with ZooMeet SDK typed in
Rename the app so you can tell it apart from the Server-to-Server OAuth app.

Step 4: Make the app admin-managed #

  1. On Basic Information, under Select how the app is managed, choose Admin-managed.
  2. Click Save.
Basic Information with Admin-managed selected and the Save button highlighted
Zoom warns that features and scopes need to be set up again. On a new app that is fine.

The subtitle under the app name changes to Admin-managed app.

Step 5: Add your site’s redirect URL #

Zoom only redirects to addresses you register in advance. ZooMeet shows your site’s exact address on the Meeting SDK card.

  1. In the ZooMeet tab, in step 3 of the checklist, click Copy next to the redirect URL. The button briefly reads Copied.
The Meeting SDK card with the setup guide open and the Copy button next to the redirect URL highlighted
The redirect URL sits in step 3 of the checklist.

The URL looks like this:

https://brightpath.example.com/zmeet-zoom-oauth/

Your actual URL may look different. Always copy it from your own ZooMeet settings.

  1. Back in Zoom, on Basic Information, scroll to OAuth Information.
  2. Paste the URL into OAuth Redirect URL and click outside the field. Zoom saves it and adds the same URL under OAuth Allow Lists for you.
  3. If OAuth Allow Lists stays empty, click Add Allow List and paste the URL there too.
OAuth Information with the redirect URL in OAuth Redirect URL and OAuth Allow Lists highlighted
The same address goes in both places. The OAuth URL below it is generated by Zoom.

Important: Never type this URL by hand. Zoom needs an exact match, including https, www and the trailing slash.

Step 6: Turn on the Meeting SDK #

  1. In the left menu, under Features, click Embed.
  2. Switch on Meeting SDK. Zoom shows Saved next to the app name.
  3. Leave the other switches on this page off.
Embed page with the Meeting SDK switch turned on and highlighted
Only the Meeting SDK switch is needed. Contact Center SDK and Phone SDK stay off.

Step 7: Add the ZAK scope #

  1. In the left menu, click Scopes, then Add Scopes.
  2. Search for user:read:zak:admin and tick View a user’s Zoom Access Key.
  3. Click Done.
Add Scopes dialog with user:read:zak:admin searched and View a user's Zoom Access Key ticked
This is the only scope the Meeting SDK app needs.

After this, the status box on the right reads Ready for local test.

Step 8: Add the app to your account #

A General App only works on your account once you add it. Zoom calls this Local Test.

  1. In the left menu, under Add your app, click Local Test.
  2. Click Add app now.
Local Test page with the Add app now button highlighted
Add app now opens Zoom’s permission screen in a new tab.
  1. Check that Zoom asks for View a user’s Zoom Access Key and nothing else.
  2. Click Allow.
Zoom permission screen asking for permission to view a user's Zoom Access Key, with the Allow button highlighted
After you click Allow, Zoom sends you back to ZooMeet Settings through your redirect URL.

Step 9: Copy the SDK keys and save them in ZooMeet #

  1. In Zoom, open Basic Information and scroll to App Credentials.
  2. Click Copy next to Client ID and paste it into Client ID on the ZooMeet Meeting SDK card.
  3. Click Copy next to Client Secret and paste it into Client secret.
App Credentials of the ZooMeet SDK app with the Client ID and Client Secret highlighted and their values hidden
Use the keys from this app, not the ones from ZooMeet Integration.
  1. In ZooMeet, click Save keys. The button stays greyed out until both fields are filled.
The Meeting SDK card with the two masked key fields and the Save keys button highlighted
The keys stay hidden as dots once saved.

If you paste the Server-to-Server OAuth keys here by mistake, the card warns: These match the Server-to-Server OAuth keys above. A Meeting SDK app issues its own pair.

Note: Zoom cannot be asked whether SDK keys work, because they sign a token on your server rather than being swapped for one. Connected on this card means both keys are saved. The real test is joining a meeting, in Step 11.

Step 10: Confirm both cards are connected #

  1. On ZooMeet > Settings > Connect, check that both cards show Connected.
Connect screen with Connected badges highlighted on the Server-to-Server OAuth and Meeting SDK cards
Both apps are connected. ZooMeet is ready to create meetings and run them in the browser.

Step 11: Test the in-browser join #

Open any public meeting page in a private browser window, the way a visitor sees it.

  1. On the meeting page, click Join in browser. It opens in a new tab.
Meeting page card with Join in browser highlighted next to Join in Zoom app
Join in browser keeps people on your site. Join in Zoom app opens the desktop or mobile app instead.
  1. Type your Name. Email is optional, and both are filled in for logged-in users.
  2. Pick a Language for the Zoom controls.
  3. Click Join Event via Browser.
Join form with Name, Email and Language fields and the Join Event via Browser button highlighted
The join page shows the meeting title and three fields.

If the host has not started yet, Zoom shows the meeting name, the scheduled time and Waiting for the host to start the meeting. The attendee is let in as soon as the host starts.

Zoom in-browser waiting screen reading Waiting for the host to start the meeting
Attendees wait inside your site. When the host starts, the meeting opens in the same tab.

To leave the waiting screen, click Exit. Zoom sends the attendee back to the meeting page.

Inside the meeting #

Once the meeting is running, attendees go through a short preview and then land in the meeting itself, all in the same browser tab.

  1. On the preview screen, check the name on the tile. Use Mute and Stop Video to choose how you enter.
  2. Click Join.
Zoom preview screen in the browser with the attendee name, Mute and Stop Video buttons, and the Join button
The preview lets attendees set their microphone and camera before they enter. Without a camera, Zoom shows a short warning and the name instead.

The meeting fills the tab. The person speaking or the active tile is shown large, and each tile carries the attendee’s name.

In-browser Zoom meeting with a large name tile and the toolbar along the bottom
An attendee inside the meeting, on your own site.

The toolbar along the bottom holds every control:

  • Mute turns your microphone on and off. The small arrow next to it picks the microphone and speaker.
  • Video turns your camera on and off. A warning sign on it means the browser cannot find or use a camera.
  • Participants shows who is in the meeting. The number shows how many people are there.
  • Share Screen shares a window, a tab or your whole screen, if the host allows it.
  • Chat opens the meeting chat.
  • Show Captions turns on live captions, when the account has them.
  • Reactions sends a quick emoji reaction.
  • Settings and More hold audio, video and view options.
  • Leave, at the far right, leaves the meeting.

To see who is in the meeting, click Participants. The panel opens on the right with each person’s initials, name and microphone and camera status. Your own row ends in (Me).

Participants panel open on the right, listing Liam Carter (Me) and Noah Kim with their microphone and camera status
The Participants panel lists everyone in the meeting.

To talk in writing, click Chat, type in the box at the bottom of the panel and press Enter. Messages go to everyone in the meeting.

Chat panel open on the right with the message Hi everyone, ready when you are, sent to Meeting Group Chat
Messages sent here reach everyone in the meeting.

Tip: If Participants, Chat or Leave does not respond to the first click, click it once more. The browser client sometimes needs a moment to take focus.

When you are done:

  1. Click Leave.
  2. Click Leave Meeting to confirm, or Cancel to stay.
Leave Meeting confirmation button above Cancel at the bottom right of the meeting
Zoom asks once before you leave.

After leaving, Zoom sends the attendee back to the meeting page on your site.

On a phone, the meeting uses the full screen. The toolbar shrinks to Mute, Video, More and Leave, and More holds participants, chat and the other controls.

Phone view of the in-browser meeting with a large name tile and the Mute, Video, More and Leave buttons
The same meeting on a phone browser.

What visitors see #

  • On the meeting page: Join in browser, Join in Zoom app, the meeting link with a Copy button, and a calendar button.
  • After Join in browser: a short form, then the Zoom meeting itself, with camera, microphone, chat and screen sharing in the browser.
  • When they leave the meeting, Zoom sends them back to the meeting page.

Join buttons only appear to people who are allowed to join. If a meeting needs registration, a purchase or a course enrolment, visitors see that step first.

Benefits of joining in the browser #

  • No download: Attendees join from any modern browser, even on locked-down computers.
  • People stay on your site: The meeting runs inside your own page, under your address.
  • Same access rules: The browser join checks the same rules as the meeting page, so a private meeting stays private.
  • The secret stays on your server: ZooMeet signs each join on the server. The SDK secret is never sent to the browser.

Troubleshooting #

There is no Join in browser button #

ZooMeet only shows Join in browser when both Meeting SDK keys are saved, the visitor can join, and the meeting has a Zoom join link.

Check that:

  • The Meeting SDK card shows Connected.
  • You clicked Save keys after pasting the keys.
  • The meeting is published, has not ended, and the visitor passes its access rules.

“Zoom SDK credentials are not configured.” #

The join page could not find both SDK keys. Open Settings > Connect > Meeting SDK, paste the Client ID and Client secret, and click Save keys.

“You do not have access to this event.” #

The meeting is limited to certain people, for example students enrolled in a course, and the visitor is not one of them. This is expected. Log in as an allowed user to test.

“Cannot detect your camera” or a warning sign on Video #

The browser cannot reach a camera. Check that a camera is connected, that no other app is using it, and that the browser has permission for this site (the camera icon in the address bar). Attendees can still join with audio only.

“An unknown error has occurred, please try to refresh this page to rejoin the meeting.” #

This usually means the page was opened over plain http. The Zoom browser client needs HTTPS. Open the meeting page with https:// and join again.

Join in browser fails to start or the meeting never loads #

The Meeting SDK app is not set up the way Zoom expects.

Check that:

  • OAuth Redirect URL and OAuth Allow Lists contain the exact URL you copied from ZooMeet.
  • Meeting SDK is switched on under Embed in the Zoom app.
  • You added the app on Local Test and clicked Allow.
  • The keys on the Meeting SDK card come from the ZooMeet SDK app, not from the Server-to-Server OAuth app.
  • Your site uses HTTPS.
  • Another Zoom plugin is not active on the same site. Two Zoom SDKs on one site can clash.

Zoom asks attendees to sign in #

The meeting has Require authentication to join turned on. Turn it off on the meeting’s Access and controls step if guests should join without a Zoom account.

Frequently asked questions #

Is the Meeting SDK required? #

No. Without it, meeting pages still work and people join through the Zoom app or zoom.us.

Can I use the same keys for both cards? #

No. Each app issues its own Client ID and Client Secret. ZooMeet warns you if you paste the same pair into both cards.

Does the browser join work on phones? #

Yes, in a modern mobile browser. Many people on phones still prefer Join in Zoom app, which ZooMeet shows right below.

Can hosts start the meeting from the browser join page? #

No. The browser join always signs people in as attendees. Hosts start the meeting with Start meeting on the meeting page, or from Zoom.

Security best practices #

  • Keep the SDK Client secret private. ZooMeet keeps it on the server and never prints it in the page.
  • Use a separate Meeting SDK app for each site.
  • If the secret leaks, regenerate it in Zoom, paste the new one, and click Save keys.
  • Keep Waiting room or a passcode on for meetings that are not meant to be public.
  • Deactivate or delete the Meeting SDK app in Zoom if you stop using Join in browser.

You’re ready to let people join in the browser #

Your meeting pages now offer Join in browser next to Join in Zoom app, and attendees can join without installing anything. Next, create a meeting and try it end to end.

Powered by BetterDocs