Skip to main content

build-zoom-rest-api-app

Provides expert guidance for building server-side integrations with the Zoom REST API, covering endpoint management and OAuth requirements.

Install this skill

or
0/100

Security score

The build-zoom-rest-api-app skill was audited on May 23, 2026 and we found 58 security issues across 4 threat categories. Review the findings below before installing.

Categories Tested

Security Issues

medium line 207

Template literal with variable interpolation in command context

SourceSKILL.md
207const url = `https://api.zoom.us/v2/meetings/${encoded}`;
medium line 82

Curl to non-GitHub URL

SourceSKILL.md
82curl -X POST "https://zoom.us/oauth/token" \
medium line 101

Curl to non-GitHub URL

SourceSKILL.md
101curl -X POST "https://api.zoom.us/v2/users/HOST_USER_ID/meetings" \
medium line 121

Curl to non-GitHub URL

SourceSKILL.md
121curl "https://api.zoom.us/v2/users?page_size=300&status=active" \
medium line 229

Curl to non-GitHub URL

SourceSKILL.md
229curl -L -H "Authorization: Bearer ACCESS_TOKEN" "https://zoom.us/rec/download/..."
medium line 26

Webhook reference - potential data exfiltration

SourceSKILL.md
26- "webhook verification"
medium line 50

Webhook reference - potential data exfiltration

SourceSKILL.md
503. **[Meeting Lifecycle](examples/meeting-lifecycle.md)** - Create → Update → Start → End → Delete with webhooks
medium line 69

Webhook reference - potential data exfiltration

SourceSKILL.md
69- Webhooks not arriving → [Webhook Server](examples/webhook-server.md)
medium line 74

Webhook reference - potential data exfiltration

SourceSKILL.md
74- [Webhook Server](examples/webhook-server.md) - Express.js server with CRC validation
medium line 75

Webhook reference - potential data exfiltration

SourceSKILL.md
75- [Recording Pipeline](examples/recording-pipeline.md) - Auto-download via webhook events
medium line 161

Webhook reference - potential data exfiltration

SourceSKILL.md
161| **Webhooks** | Real-time event notifications for 100+ event types |
medium line 232

Webhook reference - potential data exfiltration

SourceSKILL.md
232### Use Webhooks Instead of Polling
low line 238

Webhook reference - potential data exfiltration

SourceSKILL.md
238// DO: Receive webhook events in real-time
low line 239

Webhook reference - potential data exfiltration

SourceSKILL.md
239app.post('/webhook', (req, res) => {
medium line 247

Webhook reference - potential data exfiltration

SourceSKILL.md
247> **Webhook setup details:** See the **[zoom-webhooks](../webhooks/SKILL.md)** skill for comprehensive webhook implementation.
medium line 259

Webhook reference - potential data exfiltration

SourceSKILL.md
259- **[Meeting Lifecycle](examples/meeting-lifecycle.md)** - Full Create → Update → Start → End → Delete flow with webhook events
medium line 261

Webhook reference - potential data exfiltration

SourceSKILL.md
261- **[Recording Pipeline](examples/recording-pipeline.md)** - Download recordings via webhooks + API
medium line 262

Webhook reference - potential data exfiltration

SourceSKILL.md
262- **[Webhook Server](examples/webhook-server.md)** - Express.js server with CRC validation and signature verification
medium line 332

Webhook reference - potential data exfiltration

SourceSKILL.md
332| Webhook Sample | [webhook-sample-node.js](https://github.com/zoom/webhook-sample-node.js) |
medium line 371

Webhook reference - potential data exfiltration

SourceSKILL.md
371- Webhook event integration
medium line 376

Webhook reference - potential data exfiltration

SourceSKILL.md
3766. **Set up webhooks** → [examples/webhook-server.md](examples/webhook-server.md)
low line 399

Webhook reference - potential data exfiltration

SourceSKILL.md
399│ ├── recording-pipeline.md # Download recordings via webhooks
low line 400

Webhook reference - potential data exfiltration

SourceSKILL.md
400│ ├── webhook-server.md # Express.js CRC + signature verification
medium line 443

Webhook reference - potential data exfiltration

SourceSKILL.md
4432. [Meeting Lifecycle](examples/meeting-lifecycle.md) - Full CRUD + webhook events
medium line 451

Webhook reference - potential data exfiltration

SourceSKILL.md
4511. [Recording Pipeline](examples/recording-pipeline.md) - Webhook-triggered downloads
medium line 455

Webhook reference - potential data exfiltration

SourceSKILL.md
4551. [Webhook Server](examples/webhook-server.md) - CRC validation, signature check
medium line 456

Webhook reference - potential data exfiltration

SourceSKILL.md
4562. Cross-reference: [zoom-webhooks](../webhooks/SKILL.md) for comprehensive webhook docs
medium line 510

Webhook reference - potential data exfiltration

SourceSKILL.md
510Complete CRUD with webhook integration — the pattern most developers need first.
medium line 568

Webhook reference - potential data exfiltration

SourceSKILL.md
568### "Webhooks not arriving"
medium line 569

Webhook reference - potential data exfiltration

SourceSKILL.md
569→ [Webhook Server](examples/webhook-server.md) - CRC validation required
medium line 584

Webhook reference - potential data exfiltration

SourceSKILL.md
584| **[zoom-webhooks](../webhooks/SKILL.md)** | Deep webhook implementation, event catalog |
medium line 594

Access to .env file

SourceSKILL.md
594- See [references/environment-variables.md](references/environment-variables.md) for standardized `.env` keys and where to find each value.
low line 39

External URL reference

SourceSKILL.md
39**Official Documentation**: https://developers.zoom.us/api-hub/
low line 40

External URL reference

SourceSKILL.md
40**API Hub Reference**: https://developers.zoom.us/api-hub/meetings/
low line 41

External URL reference

SourceSKILL.md
41**OpenAPI Inventories**: `https://developers.zoom.us/api-hub/<domain>/methods/endpoints.json`
low line 82

External URL reference

SourceSKILL.md
82curl -X POST "https://zoom.us/oauth/token" \
low line 101

External URL reference

SourceSKILL.md
101curl -X POST "https://api.zoom.us/v2/users/HOST_USER_ID/meetings" \
low line 121

External URL reference

SourceSKILL.md
121curl "https://api.zoom.us/v2/users?page_size=300&status=active" \
low line 128

External URL reference

SourceSKILL.md
128https://api.zoom.us/v2
low line 137

External URL reference

SourceSKILL.md
137| Global (default) | `https://api.zoom.us/v2` |
low line 138

External URL reference

SourceSKILL.md
138| Australia | `https://api-au.zoom.us/v2` |
low line 139

External URL reference

SourceSKILL.md
139| Canada | `https://api-ca.zoom.us/v2` |
low line 140

External URL reference

SourceSKILL.md
140| European Union | `https://api-eu.zoom.us/v2` |
low line 141

External URL reference

SourceSKILL.md
141| India | `https://api-in.zoom.us/v2` |
low line 142

External URL reference

SourceSKILL.md
142| Saudi Arabia | `https://api-sa.zoom.us/v2` |
low line 143

External URL reference

SourceSKILL.md
143| Singapore | `https://api-sg.zoom.us/v2` |
low line 144

External URL reference

SourceSKILL.md
144| United Kingdom | `https://api-uk.zoom.us/v2` |
low line 145

External URL reference

SourceSKILL.md
145| United States | `https://api-us.zoom.us/v2` |
low line 147

External URL reference

SourceSKILL.md
147**Note:** You can always use the global URL `https://api.zoom.us` regardless of the `api_url` value.
low line 170

External URL reference

SourceSKILL.md
170- App registered on [Zoom App Marketplace](https://marketplace.zoom.us/)
low line 207

External URL reference

SourceSKILL.md
207const url = `https://api.zoom.us/v2/meetings/${encoded}`;
low line 229

External URL reference

SourceSKILL.md
229curl -L -H "Authorization: Bearer ACCESS_TOKEN" "https://zoom.us/rec/download/..."
low line 337

External URL reference

SourceSKILL.md
337- **API Reference**: https://developers.zoom.us/api-hub/
low line 338

External URL reference

SourceSKILL.md
338- **GraphQL Playground**: https://nws.zoom.us/graphql/playground
low line 339

External URL reference

SourceSKILL.md
339- **Postman Collection**: https://marketplace.zoom.us/docs/api-reference/postman
low line 340

External URL reference

SourceSKILL.md
340- **Developer Forum**: https://devforum.zoom.us/
low line 341

External URL reference

SourceSKILL.md
341- **Changelog**: https://developers.zoom.us/changelog/
low line 342

External URL reference

SourceSKILL.md
342- **Status Page**: https://status.zoom.us/
Scanned on May 23, 2026
View Security Dashboard
Installation guide →