Documentation · Integrations
Zoom Phone integration guide
Prerequisites
- An active SPARK company with the SPARK Phone module turned on.
- Users and number listing require Pro or higher plus Zoom Phone licensing. Official account-call-history requirements specify Business or Enterprise, a Phone license and an account owner or role with Zoom Phone management. Check the current Zoom requirements for your account.
- A Zoom account owner or administrator who can approve apps for the account.
- A SPARK user with the "Connect Zoom" permission for that company.
SPARK permissions
Each is turned on per position or person in Staff settings:
- View Zoom connection — see status, account and allowed scopes.
- Connect Zoom — start or redo the Zoom sign-in.
- Disconnect Zoom — stop the connection and remove stored keys.
- Retry updates and diagnostics — retry stuck updates and see the last error.
- Call, voicemail, recording, transcript and AI summary viewing each have their own permission. Staff without them see only what they are allowed to.
Requested Zoom scopes and the data they cover
The exact scopes are shown by Zoom on its approval screen and are listed afterwards in SPARK's Zoom settings. SPARK requests read access only:
- phone:read:list_users:admin — GET /phone/users, for Zoom user IDs, display names and extensions; never automatic staff assignment by email.
- phone:read:list_numbers:admin — GET /phone/numbers, for company-connected Zoom numbers and labels.
- phone:read:list_call_logs:admin — GET /phone/call_history, for bounded call times, direction, caller/callee and reported outcome.
Only those three scopes are recommended for this release. Unused queue, detail, voicemail, SMS, recording and transcript scopes should be removed from the Marketplace selection; this guide does not establish that those external settings have been saved. Optional retrieval and selective reauthorization are not released. SPARK never requests permission to place calls or send texts.
Add and authorize the app
- Sign in at sparkboss.app. If you belong to more than one company, choose the company you mean to connect. SPARK never guesses.
- Open Settings → Integrations → Zoom Phone.
- Press Connect Zoom. You are sent to Zoom.
- Review the requested scopes on Zoom's screen and approve.
- Zoom returns you to SPARK. SPARK re-checks that it is the same person, the same company and that you still have permission. Each sign-in link works once and expires after a short time.
- Confirm the Zoom account ID shown in SPARK is the account you intended.
A Zoom account can be connected to only one SPARK company at a time.
Configure
- On the same settings page, check the connection status, who connected it and when, the last update received, and the scopes Zoom allowed.
- Configure internal missed-call follow-ups and grant only the current core permissions. Optional voicemail/SMS/media retrieval is not released, even where historical settings or records remain.
- Give each position or person only the Zoom and call permissions they need.
- Initial synchronization is queued after OAuth. Synchronize Zoom Phone permits Sync with Zoom now for up to three immediate pages; larger runs continue on the ten-minute worker. Configure Zoom synchronization controls the initial 1–30 day lookback (seven days by default). Results show attempt/request IDs, HTTP evidence and checked/new/changed/unchanged counts.
Use it
| Capability | Status | Notes |
|---|---|---|
| Connect with Zoom sign-in (OAuth) | In testing | A Zoom administrator approves access for one SPARK company. |
| Call updates (answered and missed calls) | In testing | Calls appear in SPARK Phone and are matched to a customer by exact phone number within the same company. |
| Missed-call follow-up tasks | In testing | A missed call can create a callback task. |
| Users, extensions and phone numbers | In testing | Core API synchronization is implemented; real production retrieval is not yet verified. |
| Voicemail and SMS | Planned | Not included in core API synchronization. Existing event handlers are not proof of available external data. |
| Call queues | Planned | No released queue retrieval path; do not request the queue-list scope for this version. |
| Recordings and transcripts | Planned | No released optional API retrieval path; existing media handlers remain permission restricted. |
| Automatic removal when the app is uninstalled in Zoom | Planned | Until available, also disconnect in SPARK (see below). |
| Placing calls or sending texts from SPARK | Planned | Not available. |
How live updates (webhooks) work
- Zoom sends signed call events to https://sparkboss.app/api/integrations/zoom/webhooks. Accepted core events are phone.callee_missed, phone.callee_rejected, phone.callee_answered, phone.callee_ended, phone.caller_connected and phone.caller_ended. Optional subscriptions should be removed for this review; unreleased events are refused.
- The company is worked out only from the Zoom account already connected in SPARK — never from anything in the update itself. Updates for an unknown Zoom account are refused and never shown to any company.
- Accepted updates are queued and processed in the background, normally within about 10 minutes. Repeated updates are recognized and not recorded twice.
- Failed updates retry automatically after 1, 5, 15, 60, 240 and 720 minutes, then wait for a person with permission to press Retry stuck updates.
Reconnect or reauthorize
If Zoom permissions change or the connection shows an error, press Reconnect Zoom on the same settings page and approve again.
Disconnect and remove the app
- In SPARK, open Settings → Integrations → Zoom Phone and press Disconnect. Stored Zoom keys are removed immediately and waiting updates stop.
- In Zoom, remove the app from the account's installed apps.
Do both. Removing the app in Zoom does not yet disconnect SPARK automatically.
Retention, export and deletion
Zoom sign-in tokens are encrypted, kept only on the server and deleted when you disconnect. Call history already saved stays with the company's SPARK records after disconnecting, under the retention terms in the privacy policy. Last-observed directory records and safe append-only API evidence are retained; there is no timed purge in this release. External recording/transcript retrieval is disabled, without deleting historical references. A company administrator may request export or deletion of Zoom-derived records by emailing support@sparkboss.app; individuals can use the privacy rights process.
Limitations
- Real read-only Happy’s Sandbox checks returned HTTP 200 for the three core endpoints on November 6, 2026. Updated production deployment, external OAuth and seeded-call/UI tests remain unverified; empty history does not prove test-call retrieval.
- SPARK is an external web application. Andrew must unselect Phone under Features → Surface, while retaining Phone OAuth/API/webhooks. Future external Smart Embed is separate and not implemented.
- Isolated staging is paused and planned post-review before a future material update, with separate deployment/database/authentication/storage/secrets. Separate redirects were recommended, not required for this review; production URLs are unchanged.
- GET /phone/numbers is marked deprecated in the current official reference; a verified replacement is a future compatibility task.
- Core grants do not authorize /users/me, which is skipped unless a documented profile grant exists. The existing issued-token account-identity fallback is not guaranteed in current OAuth documentation; Zoom confirmation or a documented minimal alternative remains necessary.
- The integration is in testing and is not generally available.
- Ringing calls are not counted live; dashboards update once Zoom reports the call.
- Queue detail retrieval is not released. Per-employee visibility requires verified staff mappings, never an inferred email match.
- Customer matching uses exact phone numbers only; unmatched calls still appear.
- SPARK cannot place calls or send texts through Zoom.
- Uninstalling the app in Zoom does not yet disconnect SPARK automatically.
Get support
See the Zoom Phone section of the Support Center for status checks and common errors, or email support@sparkboss.app.
