• Projects
  • Service
  • About
  • branding.bz
  • Podcast
  • Tips
  • FAQ
  • Recruit
  • Download
  • Contact
  • branding.bz(ブランド構築SaaS)
  • DESIGN NOW(デザインメディア)
  • X
  • LinkedIn
  • Spotify
  • Facebook

213-0011 神奈川県川崎市高津区久本3-6-7-303

© 2026 ID INC. All rights reserved

claude-skills/スキル
SKILLKnowledge Work

setup-zoom-webhooks

プラグイン
Zoom
ソース
GitHub で見る ↗
説明

Zoomウェブフック(イベント発生時に自動実行される通知機能)の参考スキル。 次のような場合に使用: イベント駆動型ワークフロー(発生したイベントに応じて動作するプログラム流程)にルーティング(振り分け)した後で、購読設定、署名認証、配信処理、再試行、またはイベントタイプの選択を実装する際。

原文を表示

Reference skill for Zoom webhooks. Use after routing to an event-driven workflow when implementing subscriptions, signature verification, delivery handling, retries, or event-type selection.

ユースケース
  • イベント駆動型ワークフローにルーティングするとき
  • 購読設定を実装するとき
  • 署名認証を実装するとき
  • 配信処理を実装するとき
  • イベントタイプを選択するとき
本文

/setup-zoom-webhooks

Background reference for Zoom event delivery over HTTP. Prefer workflow skills first, then use this file for verification, subscription, and delivery details.

Prerequisites

  • Zoom app with Event Subscriptions enabled
  • HTTPS endpoint to receive webhooks
  • Webhook secret token for verification

Need help with authentication? See the zoom-oauth skill for OAuth setup.

Quick Start

// Express.js webhook handler
const crypto = require('crypto');

// Capture raw body for signature verification (avoid re-serializing JSON).
app.use(require('express').json({
  verify: (req, _res, buf) => { req.rawBody = buf; }
}));

app.post('/webhook', (req, res) => {
  // Verify webhook signature
  const signature = req.headers['x-zm-signature'];
  const timestamp = req.headers['x-zm-request-timestamp'];
  const body = req.rawBody ? req.rawBody.toString('utf8') : JSON.stringify(req.body);
  const payload = `v0:${timestamp}:${body}`;
  const hash = crypto.createHmac('sha256', WEBHOOK_SECRET)
    .update(payload).digest('hex');
  
  if (signature !== `v0=${hash}`) {
    return res.status(401).send('Invalid signature');
  }

  // Handle event
  const { event, payload } = req.body;
  console.log(`Received: ${event}`);
  
  res.status(200).send();
});

Common Events

Event Description
meeting.started Meeting has started
meeting.ended Meeting has ended
meeting.participant_joined Participant joined meeting
recording.completed Cloud recording ready
user.created New user added

Detailed References

  • references/events.md - Complete event types reference
  • references/verification.md - Webhook URL validation
  • references/subscriptions.md - Event subscriptions API

Troubleshooting

  • RUNBOOK.md - 5-minute preflight checks before deep debugging
  • troubleshooting/common-issues.md - Signature verification, retries, URL validation

Sample Repositories

Official (by Zoom)

Type Repository Stars
Node.js webhook-sample 34
PostgreSQL webhook-to-postgres 5
Go/Fiber Go-Webhooks -
Header Auth zoom-webhook-verification-headers -

Community

Language Repository Description
Laravel binary-cats/laravel-webhooks Laravel webhook handler
AWS Lambda splunk/zoom-webhook-to-hec Serverless to Splunk HEC
Node.js Will4950/zoom-webhook-listener Webhook forwarder
Express+Redis ojusave/eventSubscriptionPlayground Socket.io + Redis

Multi-Language Samples (by tanchunsiong)

Language Repository
Node.js Zoom-Webhook-Signature-OAuth-and-REST-API-Development-Sample-In-NodeJS
C# Zoom-Webhook-Signature-OAuth-and-REST-API-Development-Sample-In-ASP.NET-Core-C-
Java Zoom-Webhook-Signature-OAuth-and-REST-API-Development-Sample-In-Java-Spring-Boot
Python Zoom-Webhook-Signature-OAuth-and-REST-API-Development-Sample-In-Python
PHP Zoom-Webhook-Signature-OAuth-and-REST-API-Development-Sample-In-PHP

Full list: See general/references/community-repos.md

Resources

  • Webhook docs: https://developers.zoom.us/docs/api/webhooks/
  • Event reference: https://developers.zoom.us/docs/api/rest/reference/zoom-api/events/
  • Developer forum: https://devforum.zoom.us/

Environment Variables

  • See references/environment-variables.md for standardized .env keys and where to find each value.

原文・著作権は Anthropic および各プラグイン作者に帰属します。日本語訳は Claude API による自動翻訳です。