build-zoom-contact-center-app
Reference skill for Zoom Contact Center. Use after routing to a contact-center workflow when implementing app, web, or native integrations; engagement context and state handling; campaigns; callbacks; or version-drift troubleshooting.
Install
npx skills add https://github.com/anthropics/knowledge-work-plugins --skill build-zoom-contact-center-appSKILL.md
/build-zoom-contact-center-app
Background reference for Zoom Contact Center integrations across app, web, and native mobile surfaces.
Implementation guidance for Zoom Contact Center across:
- Contact Center apps in the Zoom client (Zoom Apps SDK path)
- Web channel embeds (chat/video/campaign)
- Native mobile SDKs (Android/iOS)
Official docs:
- https://developers.zoom.us/docs/contact-center/
- https://developers.zoom.us/docs/contact-center/web/sdk-reference/
- https://marketplacefront.zoom.us/sdk/contact/android/index.html
- https://marketplacefront.zoom.us/sdk/contact/ios/index.html
Routing Guardrail
- If the user is building an app inside the Zoom Contact Center desktop client, stay on the Zoom Apps SDK path and use this skill plus
zoom-apps-sdk. - If the user is embedding chat/video widgets on a website, route to web/SKILL.md.
- If the user is integrating native Android or iOS SDK binaries, route to android/SKILL.md or ios/SKILL.md.
- If the user needs Contact Center call-control or queue APIs, chain with ../rest-api/SKILL.md.
Quick Links
Start here:
- concepts/architecture-and-lifecycle.md
- scenarios/high-level-scenarios.md
- references/forum-top-questions.md
- references/versioning-and-compatibility.md
- references/samples-validation.md
- references/environment-variables.md
- troubleshooting/common-drift-and-breaks.md
- RUNBOOK.md
Platform skills:
Documentation Structure
contact-center/
├── SKILL.md
├── RUNBOOK.md
├── concepts/
│ └── architecture-and-lifecycle.md
├── scenarios/
│ └── high-level-scenarios.md
├── references/
│ ├── versioning-and-compatibility.md
│ ├── samples-validation.md
│ └── environment-variables.md
├── troubleshooting/
│ └── common-drift-and-breaks.md
├── android/
│ ├── SKILL.md
│ ├── concepts/sdk-lifecycle.md
│ ├── examples/service-patterns.md
│ ├── references/android-reference-map.md
│ └── troubleshooting/common-issues.md
├── ios/
│ ├── SKILL.md
│ ├── concepts/sdk-lifecycle.md
│ ├── examples/service-patterns.md
│ ├── references/ios-reference-map.md
│ └── troubleshooting/common-issues.md
└── web/
├── SKILL.md
├── concepts/lifecycle-and-events.md
├── examples/app-context-and-state.md
├── references/web-reference-map.md
└── troubleshooting/common-issues.md
Common Lifecycle Pattern
- Initialize platform context early.
- Build a channel item (
entryIdfor chat/video/ZVA,apiKeyfor scheduled callback and campaign flows). - Get service/client instance.
- Register listeners/delegates before user interaction.
- Start flow (
fetchUI,startVideo, or web SDK open/show path). - Handle engagement state changes (
start,hold,resume,end) and context switching. - End flow and release resources (
endChat/endVideo,logout/logoff, uninitialize/release).
High-Level Scenarios
- Agent side-panel app that stores notes per
engagementIdand survives context switching. - Browser chat/video campaigns launched from web tags.
- Native mobile customer app for chat/video/scheduled callback.
- Campaign-driven channel selection (chat, ZVA, video, scheduled callback).
- Rejoin flow for dropped video engagements on mobile.
- Smart Embed CRM softphone with postMessage event contracts.
See scenarios/high-level-scenarios.md for details.
Chaining
- Auth and in-client app identity: ../zoom-apps-sdk/SKILL.md and ../oauth/SKILL.md
- Contact Center REST workflows: ../rest-api/SKILL.md
- Cobrowse on web voice/chat channels: ../cobrowse-sdk/SKILL.md
Environment Variables
- See references/environment-variables.md for standardized
.envkeys and where to find each value.
Related skills
entra-app-registrationmicrosoft606KGuides Microsoft Entra ID app registration, OAuth 2.0 authentication, and MSAL integration. USE FOR: create app registration, register Azure AD app, configure OAuth, set up authentication, add API permissions, generate service principal, MSAL example, console app auth, Entra ID setup, Azure AD authentication. DO NOT USE FOR: Key Vault secrets (use azure-keyvault-expiration-audit), general Azure resource security guidance.azure-messagingmicrosoft595KTroubleshoot and resolve issues with Azure Messaging SDKs for Event Hubs and Service Bus. Covers connection failures, authentication errors, message processing issues, and SDK configuration problems. WHEN: event hub SDK error, service bus SDK issue, messaging connection failure, AMQP error, event processor host issue, message lock lost, message lock expired, lock renewal, lock renewal batch, send timeout, receiver disconnected, SDK troubleshooting, azure messaging SDK, event hub consumer, servicentra-agent-idmicrosoft328KProvision Microsoft Entra Agent Identity Blueprints, BlueprintPrincipals, and per-instance Agent Identities via Microsoft Graph, and configure OAuth 2.0 token exchange (fmi_path, OBO, cross-tenant) including the Microsoft Entra SDK for AgentID sidecar. USE FOR: Agent Identity Blueprint, BlueprintPrincipal, agent OAuth, fmi_path token exchange, agent OBO, Workload Identity Federation for agents, polyglot agent auth, Microsoft.Identity.Web.AgentIdentities. DO NOT USE FOR: standard Entra app registsupabasesupabase298KUse when doing ANY task involving Supabase. Triggers: Supabase products (Database, Auth, Edge Functions, Realtime, Storage, Vectors, Cron, Queues); client libraries and SSR integrations (supabase-js, @supabase/ssr) in Next.js, React, SvelteKit, Astro, Remix; auth issues (login, logout, sessions, JWT, cookies, getSession, getUser, getClaims, RLS); Supabase CLI or MCP server; schema changes, migrations, declarative schemas, security audits, Postgres extensions (pg_graphql, pg_cron, pg_vector); deb