mcpField
W
webhook-integration

webhook-integration

github.com/aj-geddes開発375458 回インストール35 週間前に更新
リポジトリ

webhook-integration について

Webhook システムを構築する開発者向けスキルで、イベント駆動型の連携における送信、受信、キュー処理、テストを扱います。署名検証、冪等性、再試行、確実な処理に関する指針も含みます。

主な機能

  1. 01TypeScript の送信側ガイド
  2. 02Express の受信側実装
  3. 03Bull によるキュー処理
  4. 04Webhook テストユーティリティ
  5. 05署名・再試行・冪等性の指針

活用シーン

  1. 01Stripe、GitHub、Shopify との連携
  2. 02イベント通知とデータ同期の構築
  3. 03自動ワークフローの起動
  4. 04決済コールバックや CI/CD 通知の処理

インストール

コマンドをコピーしてターミナルで実行します。

$npx skills add https://github.com/aj-geddes/useful-ai-prompts --skill webhook-integration

インストール後、Claude Code で/webhook-integrationを入力して読み込まれたか確認します。

同梱ファイル

SKILL.md と一緒にインストールされる参考資料やスクリプト。

references/
webhook-queue-with-bull.md
webhook-receiver-express.md
webhook-sender-typescript.md
webhook-testing-utilities.md
scripts/
validate-pipeline.sh
templates/
pipeline.yaml

詳細

Webhook 連携

目次

概要

イベント駆動型アーキテクチャ向けに堅牢な Webhook システムを実装し、サービス間およびサードパーティ連携とのリアルタイム通信を可能にします。

使用する場面

  • サードパーティサービスとの連携(Stripe、GitHub、Shopify)
  • イベント通知システム
  • リアルタイムデータ同期
  • 自動ワークフローのトリガー
  • 決済処理のコールバック
  • CI/CD パイプラインの通知
  • ユーザーアクティビティの追跡
  • マイクロサービス間の通信

クイックスタート

最小限の動作例:

import crypto from "crypto";
import axios from "axios";

interface WebhookEvent {
  id: string;
  type: string;
  timestamp: number;
  data: any;
}

interface WebhookEndpoint {
  url: string;
  secret: string;
  events: string[];
  active: boolean;
}

interface DeliveryAttempt {
  attemptNumber: number;
  timestamp: number;
  statusCode?: number;
  error?: string;
  duration: number;
}

// ... (see reference guides for full implementation)

リファレンスガイド

references/ ディレクトリにある詳細な実装:

ガイド内容
Webhook 送信側(TypeScript)Webhook 送信側(TypeScript)
Webhook 受信側(Express)Webhook 受信側(Express)
Bull を使った Webhook キューBull を使った Webhook キュー
Webhook テストユーティリティWebhook テストユーティリティ

ベストプラクティス

✅ 推奨事項
  • 検証には HMAC 署名を使用する
  • イベント ID で冪等性を実装する
  • すぐに 200 OK を返し、非同期で処理する
  • リトライには指数バックオフを実装する
  • リプレイ攻撃を防ぐためにタイムスタンプを含める
  • 確実な配信にはキューシステムを使用する
  • すべての配信試行を記録する
  • Webhook テストツールを提供する
  • Webhook ペイロードのスキーマを文書化する
  • Webhook 管理 UI を実装する
  • イベントタイプによるフィルタリングを可能にする
  • Webhook のバージョン管理に対応する
❌ 禁止事項
  • Webhook で機密データを送信する
  • 署名検証を省略する
  • 時間のかかる処理で応答をブロックする
  • 無期限にリトライする
  • 内部エラーの詳細を公開する
  • (本番環境で)Webhook を localhost に送信する
  • タイムアウト処理を忘れる
  • レート制限を省略する

コメント