メインコンテンツへスキップ

概要

Webhook を使うと、変換が完了するたびに、指定したエンドポイントへ HTTP POST の通知を受け取れます。Zapier、Make、n8n、または独自のバックエンドでワークフローをトリガーするのに活用できます。
Webhook は PRO プランの機能です。ユーザーごとに最大 3 つの Webhook エンドポイントを登録できます。

セットアップ

  1. Web2MD 拡張機能を開き、Settings に移動します。
  2. Webhooks セクションまでスクロールします。
  3. エンドポイント URL を入力し、Add Webhook をクリックします。
  4. 署名シークレットをコピーします — 受信リクエストの検証に必要です。

ペイロード

変換が完了すると、Web2MD は次の JSON ボディを含む POST リクエストをエンドポイントに送信します。

セキュリティ

すべての Webhook リクエストには X-Web2MD-Signature ヘッダーが含まれ、Webhook の署名シークレットでリクエストボディ(生データ)に署名した HMAC-SHA256 署名が入っています。
Webhook を処理する前に、必ず署名を検証してください。これにより、攻撃者が偽造リクエストをエンドポイントに送るのを防げます。

検証例 (Node.js)

署名の比較には、タイミング攻撃を防ぐため === ではなく crypto.timingSafeEqual を使用してください。

リトライの挙動

両方の試行が失敗した場合(2xx 以外のレスポンスまたはタイムアウト)、その配信は破棄されます。Web2MD は 1 回のリトライ以上の再送は行いません。

ユースケース

Zapier / Make / n8n

自動化プラットフォームの Webhook トリガーを使い、ページが変換されるたびにワークフローを開始できます — Slack への投稿、スプレッドシートへの行追加、Notion への保存など。

Slack 通知

チームメンバーがページを変換するたびに Slack チャンネルにメッセージを送り、全員が状況を把握できるようにします。

外部ストレージへの自動保存

REST API(conversionId を使用)で Markdown 全文を取得し、S3、Google Drive、または独自のデータベースに保存します。

分析パイプライン

Webhook イベントを分析バックエンドに転送して、変換ボリュームやコンテンツの種類を追跡します。

Webhook のテスト

開発中は、webhook.sitengrok などのツールでローカルエンドポイントを公開し、ハンドラーを本番にデプロイする前に受信ペイロードを確認してください。