zoom-apps-sdk
Reference skill for Zoom Apps SDK. Use after routing to an in-client app workflow when building web apps that run inside Zoom meetings, webinars, the main client, or Zoom Phone.
Security Assessment
About zoom-apps-sdk
The zoom-apps-sdk skill is a comprehensive reference for building web apps that run inside the Zoom client, covering meetings, webinars, the main client, and Zoom Phone. It solves the problem of learning the @zoom/appssdk JavaScript API and its runtime constraints, which differ substantially from ordinary web development because the app runs inside Zoom's embedded browser with domain allowlisting, running-context awareness, and specific security requirements.
The skill is organized as a documentation hub with concept guides (architecture, running contexts, security, Meeting SDK versus Zoom Apps), worked examples (quick start Express + SDK app, in-client OAuth with PKCE, Layers immersive and camera modes, Collaborate Mode, breakout rooms, guest mode, app communication), API and events references, and troubleshooting guides for common issues, debugging, and migration. It documents SDK capability groups including context APIs, meeting actions, in-client OAuth authorization, the Layers API for immersive video layouts, Collaborate Mode for shared app state, app communication between instances, media controls, and UI controls. Its security concept file is notably defensive, prescribing OWASP response headers, TLS 1.2 minimum, SameSite=None Secure cookies for cross-origin embedding, PKCE for OAuth, server-side token storage (never in frontend storage), OAuth state parameter validation against CSRF, least-privilege scopes, and a marketplace security review checklist.
Intended users are web developers building in-client Zoom apps who need both a getting-started path and deep reference material. Prerequisites include a Zoom App type registration in the Marketplace, OAuth credentials, a Node.js/Express backend, a whitelisted domain, and an HTTPS tunnel such as ngrok for local development. The credential handling it documents is standard and security-conscious, using environment variables for secrets and explicitly warning against logging sensitive data.
FAQ
What can I build with the Zoom Apps SDK?
Web apps that run inside the Zoom client, including in meetings, webinars, the main client, and Zoom Phone, using APIs for meeting context, meeting actions, in-client OAuth, the Layers API for immersive and camera-mode video, Collaborate Mode, app communication, and media/UI controls.
What are the prerequisites?
A Zoom App type app in the Marketplace, OAuth credentials with Zoom Apps scopes, a web app (Node.js and Express recommended), your domain whitelisted in the Marketplace domain allowlist, an HTTPS tunnel such as ngrok for local development, and Node.js 18 or later.
How does authentication work inside the client?
It uses in-client OAuth with PKCE so users can authorize without leaving Zoom. The skill's security guidance stresses storing tokens server-side, validating the OAuth state parameter against CSRF, and using SameSite=None Secure cookies because the app is embedded cross-origin.
Why won't my app load inside Zoom?
The most common cause is the domain allowlist and the Content-Security-Policy frame-ancestors directive. The app must allowlist its domain in the Marketplace and set frame-ancestors to allow zoom.us and *.zoom.us so Zoom's embedded browser can frame it.
Does the skill cover security requirements for Marketplace approval?
Yes. It includes a security checklist covering OWASP headers, HTTPS enforcement, PKCE, state validation, server-side token storage, token refresh, secure cookies, CSP, no sensitive console logging in production, and environment variables for all secrets.
All Files
24 filesInstall zoom-apps-sdk
Quick Setup:
- Copy the skill folder to
.claude/skills/ - Claude will automatically detect and use the skill
Repository
anthropics/knowledge-work-plugins