Zoom Cobrowse SDK
OpenAIOfficialCreated by ZoomDistributed by OpenAI
- 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 a structured approach to implementing the Zoom Cobrowse SDK. It covers the end-to-end lifecycle of a co-browsing session, including initialization, session management, event handling, and privacy configuration. It is designed to assist developers in setting up secure, browser-based co-browsing experiences between agents and customers.
What it does
- Provides a workflow for initializing and managing co-browsing sessions.
- Details configuration options for SDK keys, JWT tokens, and feature flags.
- Outlines methods for starting, pausing, resuming, and ending sessions.
- Explains how to implement privacy masking using CSS selectors.
- Offers guidance on handling session events such as agent joins and departures.
- Includes troubleshooting steps for common integration issues like CORS and token errors.
When to use it
- When you need to integrate co-browsing capabilities into a web application.
- When configuring privacy and masking rules for sensitive user data during sessions.
- When debugging session connectivity, authentication, or event handling issues.
- When implementing custom session PINs or remote assist features.
Advantages
- Provides a clear, step-by-step implementation lifecycle.
- Centralizes configuration and API usage patterns.
- Includes specific guidance on security and privacy controls.
- Offers a structured approach to troubleshooting common SDK errors.
Usage examples
- “How do I initialize the Zoom Cobrowse SDK?”
- The agent provides the initialization code snippet using the ZoomCobrowse constructor, including required configuration options like sdkKey and token.
- “How can I mask sensitive elements during a co-browsing session?”
- The agent explains how to use the masking.selectors configuration option to define CSS selectors that should be hidden from the agent.
- “What events should I listen for to track session status?”
- The agent lists the available event listeners such as sessionStarted, agentJoined, and sessionEnded to monitor the session lifecycle.
- “How do I start a session programmatically?”
- The agent demonstrates the use of the startSession method and explains how to handle the returned session object containing the PIN and session ID.
Install
Download the skill as a ZIP:
https://mp-staging.autogineer.com/agent-skills/openai/zoom-cobrowse-sdk/downloadUnzip it into the cross-client skills folder of your project:
mkdir -p .agents/skills && unzip zoom-cobrowse-sdk.zip -d .agents/skills
Documentation by Zoom
Zoom Cobrowse SDK
Use this skill after the support workflow is clearly a browser co-browsing experience. If the user is still choosing between Zoom Contact Center, Virtual Agent, Video SDK, or Cobrowse, route through start or plan-zoom-product first.
Workflow
Confirm the role model: customer page, agent console, session initiation, and how the PIN or link is handed off.
Check auth and session setup before UI work: tokens, allowed origins, environment variables, and SDK loading.
Design privacy controls early: masking rules, blocked elements, remote-assist permission boundaries, and audit requirements.
Implement the minimal lifecycle first: initialize, start or join, subscribe to events, reconnect, and end.
Add advanced capabilities only after the base session is stable: annotations, multi-tab persistence, custom PINs, and remote assist.
When debugging, isolate browser support, CORS/CSP, token generation, third-party cookie behavior, and SDK event errors.
References
Full preserved guide: references/full-guide.md
API reference: references/api-reference.md
Session lifecycle: concepts/session-lifecycle.md
Privacy masking: examples/privacy-masking.md
Remote assist: examples/remote-assist.md
Common issues: troubleshooting/common-issues.md
Files
- ATTRIBUTION.mdAdded by AutoGineer876 B
- LICENSELicence file added by AutoGineer1.1 KiB
- RUNBOOK.md2.7 KiB
- SKILL.md1.5 KiB
- agents/openai.yaml134 B
- concepts/distribution-methods.md348 B
- concepts/jwt-authentication.md362 B
- concepts/session-lifecycle.md360 B
- concepts/two-roles-pattern.md1.4 KiB
- examples/agent-integration.md217 B
- examples/annotations.md224 B
- examples/auto-reconnection.md213 B
- examples/byop-custom-pin.md223 B
- examples/customer-integration.md222 B
- examples/multi-tab-persistence.md228 B
- examples/privacy-masking.md218 B
- examples/remote-assist.md231 B
- examples/session-events.md220 B
- get-started.md14.5 KiB
- references/api-official.md1.6 KiB
- references/api-reference.md117 B
- references/api.md74 B
- references/authorization-official.md2.0 KiB
- references/authorization.md104 B
- references/environment-variables.md778 B
- references/error-codes.md190 B
- references/features-official.md1.9 KiB
- references/features.md89 B
- references/full-guide.md31.8 KiB
- references/get-started-official.md1.9 KiB
- references/get-started.md98 B
- references/session-events.md150 B
- references/settings-reference.md193 B
- troubleshooting/browser-compatibility.md227 B
- troubleshooting/common-issues.md2.5 KiB
- troubleshooting/cors-csp.md283 B
- troubleshooting/error-codes.md216 B
concepts/two-roles-pattern.md
Two Roles Pattern
Zoom Cobrowse uses two roles:
role_type=1: customer sessionrole_type=2: agent session
Use separate JWTs for each role and keep token generation on the server.
What Is Usually Created
In most real implementations, you create these objects in order:
Customer session record (server-side)
session_idgenerated PIN
status (
active/revoked)expiry timestamp
Customer token (
role_type=1)used by customer browser SDK to start/share session
Agent token (
role_type=2)created after PIN validation
used to load agent desk iframe or custom agent UI
PIN Source of Truth
In practice, the PIN you should hand to agents is the value emitted by customer SDK event:
session.on("pincode_updated", ...)
Do not rely on placeholder/provisional PIN values from pre-start backend records for user-facing flows. Always show one clearly labeled PIN in UI (for example, "Support PIN") and reuse that same value in agent links.
Recommended Endpoint Split
POST /api/customer/start-> create session + customer token + PINPOST /api/agent/connect-> validate PIN + issue agent tokenPOST /api/session/revoke-> end sessionGET /api/session/list-> operational visibility
See:
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/cobrowse-sdk · 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 zoom-cobrowse-sdk.zip