Configuration prerequisites
To receive Instagram events via webhook, your Meta app must have:instagram_basic,instagram_manage_messages, andpages_messagingpermissions- A Facebook Page linked to the Instagram Business profile
- The
instagramfield selected in webhook subscriptions
Timely.ai handles all this configuration automatically when you connect Instagram via the dashboard under Settings → Channels → Instagram. You only need this documentation if you are integrating directly with the Graph API.
Signature validation
Identical to WABA: Meta uses the App Secret with HMAC-SHA256 in theX-Hub-Signature-256 header.
Python
Payload: direct message (DM)
A message sent directly to the inbox of your Instagram Business account.Message with attached media
type field can be image, video, audio, or file.
Payload: story reply
When a user replies to a story from your profile, the event arrives with a reference to the original story.The story link in
reply_to.story.url expires. Do not store the URL — store only the story id for future reference.Payload: story mention
When a user mentions your profile in their own story.Payload: message reaction
action field can be react or unreact.
Key fields
Difference between messaging and changes events
Meta uses two different envelope formats for Instagram:entry[].messaging— direct messages, story replies, reads, and reactions. Contains themessagingarray with sender and recipient.entry[].changes— mentions and comment updates. Contains thechangesarray withfieldandvalue.
Node.js
Next steps
Platform webhooks
Normalized events that Timely.ai sends to your server.
Channels — API Reference
Connect and manage Instagram channels via API.