Skip to content
masterclassBuddyTech Buzz5 fresh blogs · 5:00 AM IST

Better Auth · Const

zoom

Better Auth’s Zoom provider enables OAuth sign-in through a Zoom app. Configure the app credentials under socialProviders.zoom, then start authentication with signIn.social({ provider: "zoom" }).

How it works

The Zoom provider is enabled by placing its client ID and client secret under the auth instance's socialProviders configuration. Client code starts OAuth by calling signIn.social with provider set to zoom; the redirect URL and required Zoom scopes must also be configured in the Zoom app.

Syntax

zoom: { clientId: string, clientSecret: string }
authClient.signIn.social({ provider: "zoom" })

Parameters

NameTypeDescription
clientIdstringOAuth client identifier for the Zoom application.
clientSecretstringOAuth client secret for the Zoom application.

Returns

The page does not specify a return type or response shape for the Zoom provider configuration or sign-in call.

Key points

  • The page is dedicated to setting up and using Zoom as a Better Auth social provider.
  • Zoom is configured by adding its provider object to the auth instance’s socialProviders option.
  • The provider configuration supplies the Zoom client ID from an environment variable.
  • The provider configuration supplies the Zoom client secret from an environment variable.
  • The client authentication request must identify Zoom explicitly as its provider.

Common mistakes

  • The callback URL configured in the Zoom app must match the application's callback endpoint.
  • Add the user-read scope required by the documented setup, along with any additional scopes the application needs.

Example: Configure and sign in with Zoom

import { betterAuth } from "better-auth"
import { createAuthClient } from "better-auth/client"

export const auth = betterAuth({
  socialProviders: {
    zoom: {
      clientId: process.env.ZOOM_CLIENT_ID as string,
      clientSecret: process.env.ZOOM_CLIENT_SECRET as string,
    },
  },
})

const authClient = createAuthClient()
await authClient.signIn.social({ provider: "zoom" })

Configure Zoom with its OAuth credentials, then invoke the client social sign-in method with Zoom selected.

When to use it

Zoom social login

A web application needs users to authenticate with their Zoom accounts.

OAuth provider configuration

An application is integrating Zoom OAuth credentials into its Better Auth server configuration.

Client-side sign-in

A client needs to launch the browser-based Zoom authentication flow.

Interview questions

QHow do you configure Zoom sign-in?

Add a zoom entry inside socialProviders with clientId and clientSecret values, then call the client’s signIn.social method using provider: "zoom". The provider credentials come from the Zoom app configuration.

Follow-up: What OAuth app setting is needed beyond credentials? The Zoom app must include the Better Auth callback URL under OAuth Redirect URL.

QHow does the client start Zoom authentication?

The client sign-in call is await authClient.signIn.social({ provider: "zoom" }). This selects Zoom as the OAuth provider for the authentication flow.

Follow-up: Which permission should the Zoom app include? The documented setup instructs selecting the user:read:user scope and adding other application-required scopes.

QWhat preparation is required in Zoom before configuring Better Auth?

Create a Zoom Marketplace General App, choose User-managed, copy its Client ID and Client Secret, and configure the OAuth redirect URL. Then pass those credentials to Better Auth’s zoom provider configuration.

Follow-up: Where should credentials be stored? The page instructs copying them and storing them in a safe location; the example reads them from environment variables.

  • betterAuth
  • socialProviders
  • signIn.social
  • createAuthClient
  • clientId
  • clientSecret

Source: Zoom | Better Auth. Checked 2026-10-15.