Messenger API

Your Facebook Page, answered from your code

Connect a Page once with Meta's consent flow and Messenger becomes a channel like any other: the same send request, the same webhook envelope, the same inbox, bot journeys and AI agent behind it.

Meta Technology Partner ✦ Same API as WhatsApp and Instagram ✦ One bot journey per channel

send-message.js

            
Run200 · queuedPOST /messaging/send-message
Acme Hotels
Webhooksyourapp.com/hooks/lodgestory

The most guest-obsessed brands trust Lodgestory to power 50M+ conversations a year

Bombay Shaving Company ELIVAAS Lyskraft COYU BBingo Hotels Bloom Hotels
Connect

A Page, a consent screen, a channel

An Admin adds Messenger from Connections, approves Meta's consent flow and picks the Page. The card comes back connected with the webhook subscribed, and inbound messages flow into the unified inbox. Assign a bot journey on the same card to answer first, hand to Kaylee, or route to a team.

  • Reconnect is a button. Expired credentials show as Needs Reconnect; refresh and traffic resumes.
  • Clean disconnect: Lodgestory unsubscribes from Meta and keeps past conversations for reference.
  • channel.connected and channel.disconnected webhooks for your own records.
Connections in the docs
ConnectionsSettings · Acme Hotels
Messenger · Acme HotelsNot connected
WhatsApp OfficialConnected · Reservations journey
Instagram · acmehotelsConnected · comments on
Add Messenger
Acme Hotels

Why teams build on it

Send with the universal request

organisationId, channelId, chatId, a type and a message. The Messenger channel id is the only difference.

Receive as webhooks

message.received with the text, sender and thread id; statuses as message.status_updated.

Hand off to bots, Kaylee or people

One live bot journey per channel, escalation to the AI agent, team routing and tickets, all on the same thread.

Webhooks

The same envelope as every channel

Messenger events ride the standard signed envelope: message.received, message.sent and message.status_updated for the thread, chat.assigned and chat.team_assigned when ownership changes, ticket.created when a conversation becomes an issue, and chat.resolved at the end.

  • channel_type on every message tells you which channel it came from.
  • Thirty endpoints per organisation, each with its own event selection.
  • Six retries, thirty-day log, replay.
Webhook event catalogue
POST yourapp.com/hooks/lodgestory

                
X-Webhook-Signature · sha256=…
Delivery logMessenger API · 30 days

Ready to build on Messenger?

Create an organisation, enable Developer Access and run your first request against your own workspace today.

Questions, answered

What engineering teams ask before they integrate.

From Settings, Connections, add Messenger, approve Meta's consent flow and pick the Page. The channel card shows connected with the webhook subscribed, and you can assign a bot journey on the same card.

No. POST /messaging/send-message with your organisation id, the Messenger channel id, the chat id, a type and a message. Create the chat first with POST /messaging/create-chat.

message.received, message.sent and message.status_updated for the thread, plus the chat, ticket, assignment and resolution events that apply to any conversation, all signed with your endpoint's secret.

Yes. Assign one live bot journey to the Messenger channel. It can answer, collect details, escalate to Kaylee, open a ticket or hand the thread to a team without the customer noticing a hand-off.

Facebook Messenger API | Lodgestory