About Zoom
Zoom is a video communications platform covering meetings, phone, and conference rooms. Serval connects to your Zoom account through a Server-to-Server OAuth app that you create in the Zoom App Marketplace, then calls the Zoom REST API on your account’s behalf. The integration spans three Zoom product areas - users, meetings, and rooms - so workflows can read meeting history and reports, manage user settings, and work with Zoom Rooms. Authentication: Server-to-Server OAuth (OAuth 2.0 client credentials). You provide the Account ID, Client ID, and Client Secret from a Server-to-Server OAuth app in the Zoom App Marketplace - no browser sign-in is involved. Data sync: On-demand only. Serval runs no background sync, polling, or webhook ingestion for Zoom - data is read or written at the moment a workflow runs.What the Zoom integration enables
Get your credentials
Serval authenticates with a Server-to-Server OAuth app that lives in your Zoom account. You create the app once, enable the scopes your workflows need, and copy three values from its App Credentials page. Zoom’s official guide: Create a Server-to-Server OAuth app.Open the Zoom App Marketplace
Start a new app
Create a Server to Server OAuth app
Select scopes
Activate the app
Copy your credentials
Connect in Serval
The Zoom connect form has four fields. None of them display inline validation messages, but all four are needed for a working connection - Serval sends the Account ID with every token request and uses the Client ID and Client Secret to mint access tokens.Account ID
Account Name
Client ID
Client Secret
Verifying the connection
Zoom does not surface named health checks in Serval - there is no built-in connection test with success or failure messages. The most direct way to confirm the connection works end-to-end is to run one of the shipped read-only workflows (for example, List Zoom Meetings for a known user) and check that it returns results.Gotchas and troubleshooting
Scopes are configured in Zoom, not in Serval
Scopes are configured in Zoom, not in Serval
Re-enter all credentials when editing the connection
Re-enter all credentials when editing the connection
Lists are paginated - read every page
Lists are paginated - read every page
No root zoom.apiRequest - use the product submodules
No root zoom.apiRequest - use the product submodules
zoom.users.apiRequest, zoom.meeting.apiRequest, or zoom.rooms.apiRequest - there is no top-level zoom.apiRequest. Meeting reports (past meetings, participants, attendance, Q&A) live under zoom.meeting.API paths already include the v2 base - don't add it again
API paths already include the v2 base - don't add it again
Client Secret looks like bullets after saving
Client Secret looks like bullets after saving
Need help? Contact support@serval.com for assistance with your Zoom integration.

