Build Zoom Phone Integration
AnthropicOfficialCreated by ZoomDistributed by Anthropic
- Skill
- Tool integration
- Automation and integrations
- MIT
- No issues found
AutoGineer summary
Written by AutoGineer from the skill’s own files, not by the author
This skill provides architectural guidance and implementation patterns for developers building integrations with Zoom Phone. It covers the full lifecycle of phone-related integrations, including OAuth authentication, handling real-time events via webhooks, embedding softphone functionality in web applications, and automating call-handling settings. It serves as a central hub for navigating documentation, migration paths, and common integration scenarios like CRM softphone panes or click-to-dial functionality.
What it does
- Provides architectural patterns for Zoom Phone integrations.
- Offers guidance on choosing between Smart Embed, REST APIs, and URI schemes.
- Details the lifecycle for provisioning, authentication, and event handling.
- Includes patterns for call handling, analytics, and CRM integration.
- Provides troubleshooting and migration advice for legacy call logs.
- Links to standardized environment variable configurations.
When to use it
- When building a CRM or web application that requires embedded softphone capabilities.
- When automating call handling settings for users, auto-receptionists, or call queues.
- When implementing click-to-dial or click-to-SMS features in external interfaces.
- When setting up real-time operational dashboards using phone webhooks.
- When migrating from legacy call logs to modern call history and element APIs.
Advantages
- Centralizes complex integration documentation and best practices.
- Provides clear routing guardrails to select the right integration surface.
- Includes practical patterns for handling OAuth and event validation.
- Offers guidance on avoiding common pitfalls in API payload structures.
- Supports migration-safe data mapping for evolving API schemas.
Usage examples
- “How do I implement a click-to-dial feature in my web app for Zoom Phone?”
- The agent will guide you to use URI schemes like zoomphonecall:// and explain how to trigger them from your UI.
- “What is the best way to embed a softphone in my CRM?”
- The agent will recommend the Smart Embed approach, providing details on using iframes and the postMessage bridge for communication.
- “How do I automate call handling settings for an auto-receptionist?”
- The agent will provide the REST API pattern for reading and patching call handling settings, including validation tips.
- “I need to track call events in real-time. Where do I start?”
- The agent will direct you to the webhook and Smart Embed event documentation to capture and correlate call identifiers.
Install
Download the skill as a ZIP:
https://autogineer.com/agent-skills/anthropics/build-zoom-phone-integration/downloadUnzip it into the cross-client skills folder of your project:
mkdir -p .agents/skills && unzip build-zoom-phone-integration.zip -d .agents/skills
Documentation by Zoom
/build-zoom-phone-integration
Background reference for Zoom Phone integrations across API, webhook, Smart Embed, and URI-launch workflows.
Implementation guidance for Zoom Phone integrations across API, webhook/event, Smart Embed, and URI-launch workflows.
Official docs:
CRM sample reference: https://github.com/zoom/CRM-Sample
Routing Guardrail
If the user needs embedded softphone behavior in a web app, use Smart Embed (examples/smart-embed-postmessage-bridge.md).
If the user needs call records, analytics, or automation, use Phone REST API and webhooks (references/deprecations-and-migrations.md).
If the user needs click-to-dial/SMS launch from external UI, use URI schemes (
zoomphonecall://,zoomphonesms://).If the user mixes Zoom Phone and Contact Center, chain with ../contact-center/SKILL.md.
Quick Links
Start here:
Common Lifecycle Pattern
Provision account prerequisites (Zoom Phone license, admin setup, SMS readiness).
Create OAuth app and scopes in Marketplace.
Choose integration surface:
Smart Embed (iframe + postMessage)
REST + webhooks
URI launch (
callto,tel,zoomphonecall,zoomphonesms)
Capture real-time events (Smart Embed events and/or webhooks).
Persist call identifiers and correlate records (
call_id,call_history_uuid,call_element_id).Apply migration-safe data mapping (v1 -> v2 -> v3) and handle renamed fields.
Harden security (origin validation, webhook signature validation, least-privilege scopes).
High-Level Scenarios
CRM softphone pane using Smart Embed + contact search/match callbacks.
Click-to-call from account/contact table via
zp-make-call.Call disposition workflow using
zp-save-log-eventand custom notes page.SMS engagement workflow with
zoomphonesms://andzp-sms-log-event.Real-time operational board driven by
phone.*webhook events.Call analytics migration from legacy call logs to call history/call elements.
Admin automation for user/auto-receptionist/call-queue call-handling settings.
See scenarios/high-level-scenarios.md for details.
Chaining
OAuth setup/token lifecycle: ../oauth/SKILL.md
Phone and account resources via REST: ../rest-api/SKILL.md
Event delivery and signature validation: ../webhooks/SKILL.md
Contact Center blended journey: ../contact-center/SKILL.md
Environment Variables
See references/environment-variables.md for standardized
.envkeys and where to find each value.
Files
- ATTRIBUTION.mdAdded by AutoGineer989 B
- LICENSELicence file added by AutoGineer1.1 KiB
- RUNBOOK.md1.6 KiB
- SKILL.md4.2 KiB
- concepts/architecture-and-lifecycle.md1.4 KiB
- examples/phone-api-service-pattern.md1.3 KiB
- examples/smart-embed-postmessage-bridge.md1.2 KiB
- references/call-handling-patterns.md961 B
- references/crm-sample-validation.md1.4 KiB
- references/deprecations-and-migrations.md1.2 KiB
- references/environment-variables.md1.3 KiB
- references/forum-top-questions.md3.7 KiB
- references/smart-embed-event-contract.md1.0 KiB
- references/source-map.md888 B
- scenarios/high-level-scenarios.md1.2 KiB
- troubleshooting/common-issues.md1.2 KiB
RUNBOOK.md
Zoom Phone 5-Minute Preflight Runbook
Use this before deep debugging.
1) Confirm Product Prerequisites
Zoom Phone licenses assigned.
Admin access available for Phone settings.
If SMS is required, 10DLC/SMS setup is complete.
2) Confirm App and OAuth
App type: General OAuth app for user/admin flows.
Redirect URI and allow list are exact and current.
Required Phone scopes are added.
App is installed/re-authorized after scope changes.
3) Confirm Integration Surface
Smart Embed: iframe/script loaded and approved domain configured.
API/Webhook: access token valid and webhook endpoint reachable.
URI launch: endpoint uses supported scheme and client is signed in.
4) Confirm Event/Data Correlation
Persist
call_idfor real-time events.Persist
call_history_uuidandcall_element_idfor post-call lookup.Keep idempotency logic for duplicate event deliveries.
5) Confirm Migration Posture
Do not build new features on legacy v1 call logs.
Webhook consumers are ready for
call_elementevent names/fields.Field-mapping adapter exists for old/new payload shapes.
6) Confirm Security Controls
Smart Embed
postMessageenforces trusted origin.Webhook signatures validated with secret token.
OAuth secrets are server-side only.
7) Fast Decision Tree
Smart Embed iframe visible but no events -> missing init sequence or bad origin filtering.
OAuth works but API fails with 401/403 -> scope mismatch or stale authorization.
Data pipeline breaks after endpoint/event upgrade -> missing v2/v3 field mapping.
URI click does nothing -> unsupported platform/client state, or wrong scheme.
Requirements and compatibility
Written for: Claude Code, Claude apps
Works with: Claude Code, Claude apps, OpenAI Codex, GitHub Copilot, Cursor, Gemini CLI, Kiro, OpenCode, Goose, Amp, Roo Code, JetBrains Junie, Factory Droid, Devin (ex-Windsurf), Mistral Vibe, OpenHands, Letta
“Works with” means the tool reads the open Agent Skills format; a skill written for one tool may use features others lack.
Security
No issues found by our static scan· No issues found
A static scan is not a guarantee. Skills are third-party content: review a skill before you let an agent use it.
Attribution and licence
- Created by
- Zoom
- Publisher
- Anthropic (Official)
- Distributed by
- Anthropic
- Source
- anthropics/knowledge-work-plugins · partner-built/zoom-plugin/skills/phone · commit e050c2e
- Licence
- MIT License (redistribution allowed)
- LICENSE (added by AutoGineer from partner-built/zoom-plugin/LICENSE)
- ATTRIBUTION.md (written by AutoGineer)
- Synced
AutoGineer is not affiliated with or endorsed by Zoom or Anthropic.
Download ZIP
The ZIP holds the skill’s files, its licence files and an ATTRIBUTION.md. Download build-zoom-phone-integration.zip