Generated banner for Build Zoom Contact Center App
Generated logo for Build Zoom Contact Center App

Build Zoom Contact Center App

OpenAIOfficialCreated by ZoomDistributed by OpenAI

  • Skill
  • Tool integration
  • Automation and integrations
  • MIT
  • No issues found

From the author

Use when using Contact Center.
— the description by Zoom

AutoGineer summary

Written by AutoGineer from the skill’s own files, not by the author

This skill provides a systematic approach to building applications for Zoom Contact Center. It emphasizes identifying the correct client surface (web, mobile, or embed) and managing the engagement lifecycle, from initialization to cleanup. It helps developers navigate platform-specific SDKs, handle engagement context, and troubleshoot common integration issues like version drift, authentication errors, and event handling gaps.

What it does

  • Guides the selection of the appropriate SDK based on the target platform.
  • Defines the standard lifecycle stages for Contact Center engagements.
  • Provides a checklist for troubleshooting common integration and authentication failures.
  • Outlines best practices for managing engagement context across CRM and analytics systems.
  • Offers guidance on handling event listeners and state transitions.

When to use it

  • When building custom integrations for Zoom Contact Center.
  • When debugging issues with SDK events or lifecycle hooks.
  • When setting up environment variables for OAuth and campaign-based integrations.
  • When resolving 401 errors or token scope issues in Contact Center APIs.
  • When implementing web embeds or campaign-based chat/video flows.

Advantages

  • Reduces development friction by clarifying platform-specific requirements.
  • Provides a clear path for debugging complex state-change and event-gap issues.
  • Ensures consistent handling of sensitive OAuth and API credentials.
  • Helps align development efforts with documented SDK patterns.

Usage examples

“How do I start building a web-based Zoom Contact Center integration?”
The agent will guide you through identifying your channel, setting up the required environment variables like ZCC_WEB_API_KEY, and selecting the appropriate Web SDK lifecycle hooks.
“My Contact Center API calls are returning 401 errors, what should I check?”
The agent will provide a troubleshooting checklist, including verifying Contact Center scopes on your token, confirming admin permissions, and checking for account context drift.

Install

  1. Download the skill as a ZIP:

    https://mp-staging.autogineer.com/agent-skills/openai/build-zoom-contact-center-app/download
  2. Unzip it into the cross-client skills folder of your project:

    mkdir -p .agents/skills && unzip build-zoom-contact-center-app.zip -d .agents/skills

Documentation by Zoom

Build Zoom Contact Center App

Use this skill when the integration targets Zoom Contact Center rather than general meetings, chat, or phone. Route to the platform-specific skill once the client surface is clear.

Workflow

  1. Identify the channel and client: web, Android, iOS, campaign embed, video engagement, chat engagement, Virtual Agent handoff, or scheduled callback.

  2. Confirm the lifecycle: initialization, engagement start, context retrieval, state changes, transfer or handoff, and cleanup.

  3. Choose the platform reference before coding; Contact Center SDKs differ by event names, lifecycle hooks, and wrapper requirements.

  4. Treat engagement context as shared state and validate how it flows into CRM, ticketing, analytics, or AI workflows.

  5. Debug version drift by checking SDK version, documented event names, app settings, campaign configuration, and browser or mobile lifecycle behavior.

References

Files

RUNBOOK.md

Contact Center 5-Minute Preflight Runbook

Use this before deep debugging. It catches the most common Zoom Contact Center integration failures quickly.

Skill Doc Standard Note

  • Skill entrypoint is SKILL.md.

  • This runbook is an operational convention (recommended), not a required skill file.

  • SKILL.md is a navigation convention for larger skill docs.

1) Confirm Integration Path

  • Contact Center app inside Zoom client: use Zoom Apps SDK APIs/events (getEngagementContext, onEngagementStatusChange, etc.).

  • Website embed: use Contact Center web SDK/campaign script path.

  • Native mobile app: use Android/iOS Contact Center SDK binaries and service lifecycle.

Wrong path is the top source of confusion.

2) Confirm Required Credentials

  • entryId for chat/video/ZVA channels.

  • apiKey for scheduled callback and campaign/web-tag scenarios.

  • If building a Contact Center app in Zoom client, validate app credentials and OAuth setup in Marketplace.

3) Confirm Lifecycle Order

Common native/mobile order:

  1. Initialize SDK context early.

  2. Get service instance.

  3. Initialize service with ZoomCCItem.

  4. Register listener/delegate.

  5. login() where required (typically chat/ZVA).

  6. fetchUI() to present the channel view.

Web app path:

  1. zoomSdk.config(...)

  2. getEngagementContext() and getEngagementStatus()

  3. subscribe to onEngagementContextChange and onEngagementStatusChange

  4. persist state keyed by engagementId

4) Confirm Context Switching Behavior

  • A single app instance can receive multiple engagement contexts.

  • Persist draft/workflow state by engagementId.

  • Do not assume only one active engagement for chat/SMS/email workflows.

5) Confirm Cleanup Semantics

  • End action (endChat, endVideo, endScheduledCallback) is not the same as service release.

  • Apply platform-specific cleanup (logout/logoff, release/uninitialize APIs).

  • On iOS, forward app lifecycle callbacks (appDidBecomeActive, appWillTerminate, etc.) to ZoomCCInterface.

6) Version + Drift Checks

  • Zoom enforces minimum SDK versions quarterly (first weekend of February, May, August, November).

  • Re-check docs and changelog before release; naming and signatures can drift.

  • Watch deprecations:

    • iOS onService:error:detail: is deprecated in favor of onService:error:detail:description:.

7) Quick Probes

  • App context/status APIs return valid values.

  • Engagement events fire when agent switches engagements.

  • Chat/video/scheduled callback can be started and ended once each without stale state.

  • No CSP or domain allow-list blocks for web integrations.

8) Fast Decision Tree

  • No engagement data in Contact Center app -> missing SDK config capabilities or wrong runtime context.

  • Channel UI does not open -> invalid entryId/apiKey, missing init, or wrong service/channel mapping.

  • Events not firing on switch/end -> listeners not attached early enough or removed incorrectly.

  • Rejoin fails on mobile -> deep-link/scheme configuration mismatch.

Requirements and compatibility

Written for: OpenAI Codex

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
OpenAI (Official)
Distributed by
OpenAI
Source
openai/plugins · plugins/zoom/skills/contact-center · commit d420d13
Licence
MIT License (redistribution allowed)
  • LICENSE (added by AutoGineer from plugins/zoom/LICENSE)
  • ATTRIBUTION.md (written by AutoGineer)
Synced

AutoGineer is not affiliated with or endorsed by Zoom or OpenAI.

Download ZIP

The ZIP holds the skill’s files, its licence files and an ATTRIBUTION.md. Download build-zoom-contact-center-app.zip