webhook-setup

作成者: facebook

Metaアプリ用のwebhookをエンドツーエンドで設定 — 利用可能なトピックを発見し、フィールドに購読し、テストペイロードで検証します。webhookの設定時に使用します…

npx skills add https://github.com/facebook/agentic-tools --skill webhook-setup

Webhook Setup

Interactive wizard to configure webhooks on a Meta app from scratch.

Workflow

  1. Start tracking. Before any other work, call devtools_skill_invocation with action start and skill_name webhook-setup. Pass skill_name webhook-setup on every devtools_* tool call in the following steps.

  2. Identify the app. Ask the user for the app name or ID. If they give a name (or aren't sure of the ID), call devtools_app_list (action list) and resolve it to an app_id — match the name case-insensitively. If several apps match or it's ambiguous, show the candidates (name, ID, viewer role) and ask the user to pick. If they give a numeric ID, use it directly.

  3. Check existing state. Run in parallel:

    • devtools_webhook_list with action list_topics — show all available webhook topics
    • devtools_webhook_list with action list_subscriptions — show what's already subscribed
  4. Present the options. Show the user:

    • Available topics (e.g., page, user, instagram, whatsapp_business_account)
    • Which topics already have active subscriptions
    • For each topic, list the subscribable fields
  5. Collect subscription details. Ask the user for:

    • Topic — which webhook topic to subscribe to
    • Fields — which fields within that topic (e.g., feed, messages)
    • Callback URL — their HTTPS endpoint (must be live and pass Meta's verification challenge)
    • Verify token — the token their server expects for the verification handshake
  6. Subscribe. Call devtools_webhook_manage with action subscribe:

    • Pass topic, fields, callback_url, verify_token
    • If the subscription fails, explain the likely cause:
      • Callback URL not reachable → server must be running and publicly accessible
      • Verification failed → verify token mismatch or endpoint not responding to GET challenge
      • Invalid fields → check field names against the topic's available fields
  7. Verify with a test payload. After successful subscription:

    • Call devtools_webhook_test with action test_send for one of the subscribed fields
    • Confirm whether the test payload was delivered
    • If test fails, suggest checking server logs and endpoint configuration
  8. Summary. Show the final state:

    • Topic and fields subscribed
    • Callback URL configured
    • Test result (success/failure)
  9. End tracking. After completing all preceding steps, call devtools_skill_invocation with action end and skill_name webhook-setup.

Tips

  • If the user wants to modify an existing subscription (add/remove fields), use devtools_webhook_manage with action update_fields instead of unsubscribe + resubscribe.
  • Always verify after subscribing — a successful subscribe call doesn't guarantee payloads will be delivered correctly.
  • Remind users that their callback URL must handle both the GET verification challenge and POST event payloads.

facebookのその他のスキル

gc-safe-coding
facebook
完全な説明と根拠については、doc/GCSafeCoding.md を参照してください。
app-review-prep
facebook
MetaアプリをApp Reviewに備えて準備します — 現在のステータス、未対応の要件、付与済みの権限、提出履歴を確認します。アプリを提出する前に使用してください…
api-health
facebook
MetaアプリのAPIヘルスを監視 — レート制限、コールボリューム、APIの非推奨化をチェック。スロットリングの診断、キャパシティ計画、APIバージョンへの準備に使用…
debug-webhooks
facebook
Metaアプリのウェブフック問題をトラブルシューティング — アクティブなサブスクリプションを検査し、設定ミスを特定し、テストペイロードを送信して配信を確認します。次の場合に使用…
api-integration
facebook
開発者をMeta APIインテグレーションのゼロからのセットアップに導く — 適切なAPIを発見し、セットアップガイド、認証要件を取得し、…
test-ui
facebook
iwsdk CLIを使用して、ポークの例に対してテストUIシステム(PanelUI、ScreenSpace)をテストします。
flags
facebook
Reactのリリースチャンネル間でフィーチャーフラグの状態を検査・比較します。全チャンネル(www、www-modern、canary、next、experimental、rnバリアント)のフラグを表示するか、--diffで特定のチャンネルを比較します。出力形式はデフォルトのテーブル表示、CSVエクスポート、クリーンアップステータスグループ化から選択可能。フラグの状態は記号で示されます:有効(✅)、無効(❌)、バリアントテスト中(🧪)、プロファイリングのみ(📊)。よくある落とし穴:__VARIANT__フラグはwww上で両方の状態でテストされます。--diffを使用して意味のある差異を特定してください...
compliance-check
facebook
Metaアプリのコンプライアンス状況を確認 — 未対応の必須アクション、アクティブな違反、および改善ガイダンス付きの推奨事項を表示します。監査に使用…