---
title: "Facebook Messenger Webhook Setup"
img: https://unified.to/images/logo.svg
date: 2026-08-24T02:20:00.000Z
tag: Guides
description: "Messenger delivers events to a single app-level callback URL. Configure it once in the Meta App"
url: "https://unified.to/blog/facebook_messenger_webhook_setup"
---

# Facebook Messenger Webhook Setup
------
_August 24, 2026_

Messenger delivers events to a single **app-level** callback URL. Configure it once in the Meta App
Dashboard; each connected Page is then subscribed programmatically by this integration.


## App-level configuration (once per Meta App)

1. In the Meta App Dashboard, add the **Messenger** product.
2. Under **Messenger → Settings → [Webhooks](/blog/replacing_polling_with_unified_webhooks_and_virtual_streams)** (or **App → Webhooks**, object **Page**), set:
    - **Callback URL**: `https://api.unified.to/webhook/workspace/facebookmessenger?workspace_id=<workspace_id>`
    - **Verify Token**: any non-empty string. The integration echoes `hub.challenge`; token equality is not enforced.
3. Subscribe the Page object to these fields: `messages`, `messaging_postbacks`, `message_reactions`.
4. Ensure the connection's [OAuth](/embeddedauth) scopes include `pages_messaging`, `pages_manage_metadata`, and `pages_read_engagement`.

## Routing

- `messages` (non-echo) → `messaging_message` (created) **and** `messaging_event` (MESSAGE_RECEIVED)
- `messaging_postbacks` / quick replies → `messaging_event` (BUTTON_CLICK)
- `message_reactions` → `messaging_event` (REACTION_ADDED / REACTION_REMOVED)