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 Professional account to respond to people who are interested in your business or social media. Conversations between a person and your account must be initiated by the person.
The Messenger Platform is free for you to use.
A person sends a message to your business Page or Instagram Professional account while logged in to Facebook or Instagram, or via a Meta plugin while visiting your mobile app or website. Your business Page or Instagram Professional account can use the Messenger Platform to handle the person's message, either sending an automatic reply, having a live agent respond, or a combination of automation and live agent.
When a person sends your business Page or Instagram Professional account 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 person within 24 hours. The platform allows you to do this at scale and provides a wide variety of conversation entry points and message types.
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 person 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 Page or Instagram Professional account to send and receive messages from persons. Learn more.
There are two access levels for apps for business Pages or Instagram Professional accounts, Standard Access and Advanced Access. Standard Access is the default access level when you first register your app with Meta. Standard Access allows you to get data for people who have a Role on your app, such as a developer, tester, or administrator, or a Role on a business Page or Instagram Professional account 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 on the business Page or Instagram Professional account 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 Page or Instagram Professional account that has claimed the app. Learn more.
If you are developing the app to send and receive messages for your own page, you will not have to go through app review. Note that if you are planning to fetch user profile information, you still need to go through app review for the permissions required for accessing the User Profile API.
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.
Messenger Platform leverages Content Delivery Network (CDN) URLs which allow you to retrieve rich media content shared by Instagram users. The CDN URL is privacy-aware and will not return the media when the content has been deleted or has expired.
In order for a person to allow your Page or Instagram Professional account to send the person a message, 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 your Page or Instagram Professional account sends or receives a high volume of messages, the inbox will no longer be able to display new messages or send new messages until the message volume decreases.
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 cannot 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 cannot 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 Instagram messages, you must have a Instagram Professional account. This allows your app to access data from the Meta social graph endpoints using the Facebook Page linked to your account. Learn more.
When a person sends a message to an Instagram Professional account, an Instagram-scoped ID is created that represents that person on that app. This ID is specific for the person 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 person sends a message to a Facebook Page, a Page-scoped ID is created that represents that person on that Page. This ID is specific for the person 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
business_management
To access Instagram Messaging, you must also ask for:
instagram_basic
instagram_manage_messages
business_management
permissionWhen requesting the business_management
permission, call out the following in your app review submission:
pages_messaging
and pages_show_list
permissions.instagram_manage_messages
permission.In your app, make sure to inform the Page admin that they need to explicitly provide permissions to the app to manage their business assets. You will need to add the business_management
permission as part of the Facebook Login for Business flow.
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 Page or Instagram Professional account. Please familiarize yourself with these policies as well as other platform policies that we enforce.
Rate limits for the Messenger Platform are dependent on the API used and, in some instances, the message content.
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.
Requests made by your app are counted against the number of calls your app can make per Instagram professional account and the API used.
Conversations API
Send API
Private Replies API
Meta Webhooks are real-time notifications that allow you to get information about messages sent to your business Page or Instagram Professional account 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 Page or Instagram Professional account to avoid rate limits.
Learn more about the Messenger Platform from our Developer Videos . These videos include walkthroughs, best practices, recorded events, and more.