At a glance
- Availability: Experimental (how to enable).
- Auth: OAuth 2.0.
- Connection: A user authorizes the connection in the provider’s consent screen.
- Scopes:
user:read:user,meeting:read:meeting,meeting:read:list_meetings,meeting:write:meeting,cloud_recording:read:list_user_recordings. - Docs: https://developers.zoom.us/docs/integrations/oauth/
Credentials
Set these per environment. See Connect an integration. With a managed OAuth app, Connect works without these variables; set them to use your own OAuth app instead.Setup
- Create a Zoom app: Sign in at https://marketplace.zoom.us/ (a free Zoom account works) and choose Develop → Build App → General App (user-managed).
- Configure the redirect URL: In the app’s OAuth settings, set the OAuth Redirect URL to your app URL ending in /api/auth/zoom/callback and add it to the allow list.
- Add scopes: Under Scopes, add the granular scopes user:read:user, meeting:read:meeting, meeting:read:list_meetings, meeting:write:meeting, and cloud_recording:read:list_user_recordings.
- Copy credentials and verify: Copy the Client ID and Client Secret into ZOOM_CLIENT_ID and ZOOM_CLIENT_SECRET, connect your account, and run the Get My Profile tool.
- The token endpoint authenticates the client with HTTP Basic (base64 of client_id:client_secret)
- Access tokens expire after 1 hour; refresh tokens are issued and expire after 90 days
- Apps created since 2024 use granular scopes (e.g. meeting:read:list_meetings) instead of classic scopes like meeting:read
Tools
| Tool | Access | Description |
|---|---|---|
| List Meetings | Read | List scheduled or upcoming Zoom meetings for the authenticated user |
| Get Meeting | Read | Get details of a Zoom meeting by ID |
| Create Meeting | Write | Schedule a new Zoom meeting for the authenticated user |
| List Recordings | Read | List cloud recordings for the authenticated user |
| Get My Profile | Read | Get the authenticated Zoom user’s profile |
Example prompts
- List my upcoming Zoom meetings with their start times and join links.
- Schedule a Zoom meeting with a topic, start time, and duration.