New — webhooks your AI agents can wait on. Hook & Sense opening to early access.

Meta (WhatsApp / Messenger) Webhooks

How to Test Meta / WhatsApp Webhooks Locally (2026)

Meta's Graph API sends webhooks for WhatsApp, Messenger, and Instagram events. Meta signs each payload with HMAC-SHA256 using your app secret (X-Hub-Signature-256), and requires a one-time GET handshake that echoes a hub.challenge value before it will deliver events.

With HookSense, point Meta (WhatsApp / Messenger) at a callback endpoint and let an AI agent await the result over MCP: create_callback_endpointwait_for_callbackverify_signature. Run npx @hooksense/mcp in Claude Desktop, Cursor, or any MCP client. No polling.

Signature Header

X-Hub-Signature-256

Algorithm

HMAC-SHA256 (app secret)

Setup Guide

  1. 1Create a free HookSense endpoint at hooksense.com
  2. 2In the Meta App Dashboard → your app → Webhooks (or WhatsApp → Configuration)
  3. 3Set the Callback URL to your HookSense URL and choose a Verify Token
  4. 4Meta sends a GET handshake with hub.challenge — configure a HookSense custom response to echo it back (or forward to your app)
  5. 5Once verified, subscribe to the fields you need (e.g. messages, message_status)
  6. 6Send a test message to see the webhook land in HookSense

Common Meta (WhatsApp / Messenger) Webhook Events

messages
message_status
message_template_status_update
phone_number_quality_update
account_update
messaging_postbacks
feed

Forward to Localhost

Use HookSense CLI to forward Meta (WhatsApp / Messenger) webhooks directly to your local development server:

npx hooksense listen -p 3000 --path /api/integrations/meta

No ngrok or tunnel setup required. Install with npm i -g hooksense or use npx.

Tips & Best Practices

  • Meta signs with HMAC-SHA256 over the raw body using your app secret — the header is X-Hub-Signature-256 (sha256=...)
  • The initial GET handshake must echo hub.challenge and match your hub.verify_token, or Meta won't enable the subscription
  • WhatsApp Cloud API, Messenger, and Instagram all share this same webhook scheme
  • Use HookSense to inspect the entry/changes payload structure before writing your handler

Related

Give your agent a Meta (WhatsApp / Messenger) callback

Create a free callback endpoint and have an agent await its first verified Meta (WhatsApp / Messenger) webhook over MCP. Paid plans are early-access.

Get Started Free