The Messenger Platform’s policies are designed to help people and businesses connect in ways that drive meaningful outcomes. At the heart of this is the understanding that people and businesses need a seamless, reliable way to get something done - whether it is getting a question answered, making a purchase, or communicating important and relevant updates. The following policy update is designed to make communication between people and businesses on Messenger relevant, important and timely.
Apps have until January 15th, 2020 to migrate to the new policy. We highly encouraged developers to adopt these policies right away to ensure a smooth transition. See Messenger Platform Policy Overview
Effective January 15, 2020.
For more details, see the Messenger Platform Policy Overview
Discovering Businesses on Messenger As a part of our continued commitment to simplify the Messenger experience for people, we are removing the Discover tab from the Messenger app. We will continue to invest in more and better ways to help businesses connect with their customers wherever they are, including updates to m.me links, various entry points across our family of apps, as well as ad products that lead to Messenger.
The following APIs are deprecated on v4.0+
The following APIs are deprecated on v4.0+ and will be removed from all versions on October 29th, 2019
During F8 2019, we announced our plans to launch a lighter, better and simpler Messenger designed to build closer connections between people and businesses. Starting August 15, 2019, updated versions of the Messenger app will reflect the following changes:
Won't render on the new app
Won't function with the new app
Will render differently in the new app
Messenger Bot Reviews will be removed on August 15, 2019. They allowed people to leave a star rating and review for a bot. Page owners will no longer be able to view these ratings for their app and Page in the Page Settings or in App Dashboard.
Effective as of today, the parameter
seq will always be 0 for all Messenger webhook events. This deprecation was announced on November 8, 2016. After Jul 31, 2019 the
seq parameter will no longer be included in webhook events. To de-duplicate messages use the
The following breaking changes apply to version 3.3+ of the Graph API, and will apply to all lower versions on July 31st, 2019.
pages_messaging_subscriptionspermission has been deprecated.
The following breaking changes apply to version 3.3+ of the Graph API, and will apply to all lower versions on December 31st, 2019.
pages_messagingpermission as we deprecate
read_page_mailboxeson April 30th, 2019. For apps previously approved with
pages_messaging, we encourage developers to apply for the permission as soon as possible to avoid any service disruption.
conversationsis deprecated. Please migrate to use other webhook fields supported in Messenger platform instead.
profile_pic. Effective as of today, all apps shall have access to additional profile fields if they have been approved in app review. You may apply for access to additional fields in the Messenger Platform tab of your app console.
sdk/xfbml.customerchat.jslibrary in order to render the customer chat plugin on your website. You'll no longer be able to use
sdk.jsto load the plugin.
User Profile API: The following changes to the Messenger Platform's User Profile API have been announced:
is_payment_enabledfields are now deprecated, and will be removed from the API on October 30, 2018.
For apps created before the release of Graph API v3.1 on July 26, 2018, these changes will go into effect on January 8, 2019. Apps must be resubmitted and be approved for extended profile fields before this date.
For apps created after the release of Graph API v3.1 on July 26, 2018, these changes are in effect immediately.
message_idproperty of responses from the Send API has been changed.
sentimententity to default NLP.
page_messages_total_messaging_connectionsmetric. This replaces the
page_messages_open_conversations_uniquemetric, which is now deprecated.
messaging_typeproperty. Developers should continue to implement
messaging_typeas soon as possible.
minimizedattribute is now deprecated; developers should migrate to using
greeting_dialog_displayas soon as possible.
Email and phone number quick replies now enable a simple way to ask the user to provide their email or phone number. The content of the quick replies are auto-populated from the user's Facebook profile. If the person has more than one email or phone number associated with their account, a separate quick reply will be shown for each.
Customer chat plugin (beta) introduces additional enhancements that will roll out this week, including an easy setup tool, in-browser notifications, and persistent menu support.
Messaging Insights API is updated with two new metrics: open conversations, and new conversations.
Page Inbox support for request thread control is now included in the handover protocol. Moving the conversation from 'Done' to 'Inbox' now automatically triggers a
messaging_handovers webhook event.
Message Tags are updated for three new use cases based on your recommendations:
Checkbox Plugin now supports customization, including light and dark themes, a transparent background, and center alignment of the plugin content.
Broadcast API is officially released from beta. Thanks to all the great developers that implemented and gave us feedback!
Page-level Subscription Messaging: Access to send subscription messages must now be applied for at the Page-level. Bots may continue to send subscription messages with the app-level permission until Dec 31, 2018, but Page admins that wish to continue sending subscription messages should apply for the new Page-level access as soon as possible. Page admins may apply for subscription messaging in the Messenger Platform tab of their Page settings.
NON_PROMOTIONAL_SUBSCRIPTION message tag: Pages that send subscription messages, are now asked to implement
NON_PROMOTIONAL_SUBSCRIPTION as a message tag, rather than a messaging type. Beginning May 7, 2018, all Pages must include this message tag to flag all messages sent under subscription messaging policy.
Send API requests that use
user_ref from the checkbox plugin or
phone_number from customer matching to identify the message recipient will no longer trigger delivery of
message_echoes events to your webhook.
Send API requests that use
user_ref from the checkbox plugin or
phone_number from customer matching to identify the message recipient, the Send API will no longer include the
recipient_id property in the API response.
Broadcast API is an open beta release that allows bots with the
pages_messaging_subscriptions permission to send subscription messages to a multiple recipients with one API call. Messages can be sent to all open conversations or a set of PSIDs by using custom labels. You can also estimate the reach of a broadcast before it is sent and get the actual reach after the send takes place.
Customer chat plugin (beta) is a closed beta release that lets you add a Messenger chat window to your website. New users can start a conversation with your bot, and returning users will see recent chat history. The plugin is also optimized for the mobile web.
Media template is a new structured message template for sending images and video. The template supports sending images, videos, and animated gifs using an
attachment_id, or the Facebook URL for any media that you have uploaded to Facebook, which means no more limits on the length of videos. The media template also supports adding an optional button.
Sending sponsored messages can now be done via the Messenger Platform with a single API request to the
/sponsored_message_ads endpoint. This API is a thin wrapper that accepts a reduced number of properties, then calls the existing Marketing API on your behalf. Access to the API is already available to many developers, and will roll out to 100% over the next month.
Page-level feedback is a new addition to your Page settings, available under the 'Messenger Reviews' tab, that offers page-level aggregation of ratings and reviews. Before Platform v2.2, user feedback was only aggregated at an app-level.
Handover protocol is officially out of beta, and includes support for passing thread control to both the current and previous version of the page inbox. Rollout of support for the previous version of the inbox is expected to be available to 100% by mid-November.
Messaging Insights API now includes additional metrics:
page_messages_reported_conversations_by_report_type_unique. These metrics replace
page_messages_feedback_by_action_unique, which is now deprecated and will be removed in Graph API v2.12.
Message tags for non-promotional use cases that require messages to be sent outside the 24-hour standard messaging window now include
messaging_type property should be included in the body of the request for all message sends, as of this release. Beginning May 7, 2018 the messaging_type property will be mandatory and all messages sent without it will not be delivered. For more information, see Sending Messages - Messaging Types.
page_messages_feedback_by_action_unique metric in the Messaging Insights API is now deprecated and will be removed in Graph API v2.12. For more information, see Analytics.
Three new message tags are available for sending non-promotional messages outside the 24-hour standard messaging window:
ACCOUNT UPDATE: Used to confirm updates to a user's account setting. For example, when there is a change in account settings and preferences of a user profile, notification of a password change, or membership expiration.
PAYMENT_UPDATE: Used to provide payment updates to existing transactions. For example, it can be used to send a receipt, out-of-stock, auction ended, refund, or a status change in an existing purchase transaction.
PERSONAL_FINANCE_UPDATE: Used to confirm a user's financial activity. For example, it can be used to send notifications on bill pay reminders, scheduled payments, receipts of payment, transfer of funds, or other transactional activities in financial services.
For complete details, see Message Tags.
Built-in NLP is a simple way for developers to incorporate natural language processing into their bots. Built-in NLP automatically detects meaning and information in the text of messages, before it gets passed to the bot.
Handover protocol enables cross app collaboration within a single Messenger experience. The handover protocol enables businesses to create multiple experiences within a single bot.
Discover tab added to Messenger, showcasing popular bots in our ecosystem, nearby places that people can message, and businesses that offer support or answer questions.
Chat Extensions lets bots build interactive, social features that users can invoke directly into their conversations via the composer.
Parametric Messenger Codes let a bot dynamically generate multiple Messenger codes that provide different functionality when they are scanned. Users can also now scan codes by holding down on the main camera interface in Messenger.
The ID Matching API enables the pairing of ASIDs and PSIDs between an app and a bot belonging to the same business
Open Graph Template lets bots send open graph content directly to threads. Currently supports only music URLs natively with inline playback.
Bots can now access referral information when users enter via a Messenger Ads.
Released the Platform Design Kit, a library of components for designing bots.