![]() | Overview for the Messenger Platform |
The Messenger Platform Overview details how the platform works and what you need to successfully implement the platform.
Messenger from Meta is a messaging service that allows a business' Facebook Page or Instagram Business account to respond to customer questions about goods and services the business provides. Conversations between a customer, or potential customer, and a business must be initiated by the customer.
The Messenger Platform is free for businesses and customers.
A customer sends a message to your business while logged in to Facebook or Instagram, or via a Meta plugin while visiting your mobile app or website. Your business can use the Messenger Platform to handle customer messages, either sending automatic replies, having a live agent respond, or a combination of automation and live agent.
When a customer sends your business a message, a webhook is triggered and sends you a notification that your Business Page or Instagram Professional account has received a message. Your app can then make calls to the Meta social graph to get this conversation, determine the appropriate reply, and send a response to the customer. The platform allows you to do this at scale and provides a wide variety of conversation entry points and message templates.
A customer logged in to Facebook can not send a message to your Instagram Professional account nor can a customer send a message to your Facebook Business Page while logged in to Instagram.
To successfully implement the Messenger Platform you will need to understand the following components.
An access token is an opaque string that identifies an app, Facebook Page, or customer and can be used by an app to securely call the Meta social graph. An access token provides temporary, secure access to specific endpoints that allows a business to send and receive messages from customers. Learn more.
There are two access level for Business type apps, Standard Access and Advanced Access. Standard Access is the default access level when you first register your app with Meta and allows you to get data for people who have a Role on your app, such as a developer, tester, or administrator, or a Role in a Business that has claimed the app. Advanced Access allows your app to get data for people who use your app but do not have a Role on your app or a Role in the Business that claimed the app. Learn more about
App Roles
,
App Types
, and
Advanced and Standard Access
.
Due to the limited scope for Standard Access, some features may not work properly until your app has been granted Advanced Access. This may limit any test apps you use.
You must complete App Review if your app will need Advanced Access to get data about or for app users who do not have a Role on the app itself, or a Role in a Business that has claimed the app. Learn more.
You must complete Business Verification if your app will be used by app users who do not have a Role on the app itself, or a Role in a Business that has claimed the app. Learn more.
Instagram Messaging leverages Content Design Network (CDN) URLs which allow you to retrieve rich media content shared by users. The CDN URL returned via webhooks, and the Conversation API, is privacy-aware. This means, the CDN URL will not return the media when the content is deleted or expired. You must not download, retain, or otherwise store on your system the media content sent or made accessible by any user via the API (or enable any third party to do so) and you, or any third party, must not do anything to circumvent expiration and/or removal of any link to such media content. Instead, if your app requires continued access to the media made available via the IG Messaging API, you must only store the privacy aware CDN URL in your system and use that to render the media made accessible via the API.
In order for customers to allow your Page to send them messages, you will need to ask for their permission to do so. To ask for these permissions you will need to implement Facebook Login. Learn more.
A Facebook Page is required to send and receive messages using the Messenger Platform. Learn more.
If you have more than one app handling messages, for example, one app handles automated responses and one app handles escalations to a human agent, then you will need to implement the Handover Protocol to pass the conversation from one app to another. For an app to reply to a message it must control the conversation and the Handover Protocol allows your app to request control from another app when it needs to reply to a message, accept control from another app, and to release control of the conversation when the app has sent the reply.
If a Page sends more than 40 messages per second or is constantly sending or receiving messages in a large number of conversations at the same time, new messages will not be displayed in the Page Inbox and the Page can not send new messages until the message volume decreases.
If a Page hits the high volume limit, API calls to get all conversations will fail, however, you can still call a single conversation to get new messages for that conversation.
If an Instagram Professional account sends and receives more than 72,000 messages, new messages will not be displayed in the Instagram Inbox and your Instagram Professional account can not send new messages until the message volume decreases.
The banners are displayed in the conversation indicating the limit has been reach. These banners will stop showing when the message volume decreases.
Your Message May Be Delayed Your message may take longer than usual to be delivered because [your-account-name] is receiving a large number of messages.
Your Message Wasn’t Delivered Your messages wasn't delivered because [your-account-name] is receiving a large number of messages. Please try again later.
To send and receive messages using an Instagram account it must be a Instagram Professional account. This allows your app to access data from the Meta social graph endpoints.
Learn more.
When a customer sends a message to an Instagram Professional account, an Instagram-scoped ID is created that represents that customer on that app. This ID is specific for the customer and the Instagram account they are interacting with. This allows an Instagram Professional account to map interactions for the same person across multiple messaging apps.
You will need to register as a developer and register your app with Meta to make calls to the Meta social graph. Learn more.
When a customer sends a message to a Facebook Page, a Page-scoped ID is created that represents that customer on that Page. This ID is specific for the customer and the Page they are interacting with. This allows a Page to map interactions for the same person across multiple messaging apps.
The person requesting the Page access token must be able to perform the MESSAGING
to send messages and MODERATE
task to respond to comments on the Facebook Page linked to your messaging app.
Learn more.
Find a partner with expertise in the Messenger Platform in our
Meta Partner Directory
.
Your app will need to ask for the following permissions via Facebook Login for Messenger conversations:
pages_show_list
pages_manage_metadata
pages_messaging
pages_read_engagement
To access Instagram Messaging, you must also ask for:
instagram_basic
instagram_manage_messages
To gain and retain access to the Meta social graph you must adhere to the Messenger Platform Policies, the Meta Platform Terms and Policies, and our Community Standards. Learn more.
Different countries may have different requirements for messages that are sent from a business. Please familarize yourself with these
policies
as well as other
platform policies
that we enforce.
Requests made by your app are counted against the number of calls your app can make in a rolling 24 hour period and is calculated as follows:
Calls within 24 hours = 200 * Number of Engaged Users
The Number of Engaged Users is the number of people the business can message via Messenger.
Your app can send 100 calls per second per Instagram Professional account.
Meta Webhooks are real-time notifications that allow you to get information about messages sent to your business without having to make calls to the Meta social graph which could result in rate limiting. You will need to set up Webhooks to receive notifications about messages sent to your business to avoid rate limits.
Learn more about the Messenger Platform from our
Developer Videos
. These videos include walkthroughs, best practices, recorded events, and more.