Skip to main content

Setup

1

Get credentials

Go to the Zoom App Marketplace and click Develop > Build App. Choose OAuth as the app type. Add your redirect URI:
https://your-app.com/api/kavach/auth/oauth/callback/zoom
2

Configure

lib/kavach.ts
import { createKavach } from 'kavachos';
import { oauth } from 'kavachos/auth';
import { zoomProvider } from 'kavachos/auth';

const kavach = await createKavach({
  database: { provider: 'sqlite', url: 'kavach.db' },
  plugins: [
    oauth({
      providers: [
        zoomProvider(
          process.env.ZOOM_CLIENT_ID!,
          process.env.ZOOM_CLIENT_SECRET!,
        ),
      ],
    }),
  ],
});
ZOOM_CLIENT_ID=...
ZOOM_CLIENT_SECRET=...

Scopes

Default scopes: openid, profile, email
ScopeWhat it unlocks
openidOIDC identity token
profileName and profile picture
emailEmail address
meeting:readRead meeting info

Endpoints

MethodPathDescription
GET/auth/oauth/authorize/zoomRedirect to Zoom
GET/auth/oauth/callback/zoomHandle callback
Last modified on April 17, 2026