Conversation Routing
Updated
Meta has introduced Conversation Routing as a replacement for the now-deprecated Handover Protocol. With this new model, Facebook Pages can assign control of user conversations to different connected apps—such as Sprinklr—based on the entry point of the message. This article outlines how Sprinklr supports this updated routing mechanism, what configuration steps are required, and how agents can manage thread control.
Conversation Routing allows Facebook Pages to route user messages to different apps based on how the user initiated the conversation:
Default App: Handles conversations started via organic entry points like direct messages.
Marketing App: Gets control when the user enters via sponsored messages or ads linked to a specific campaign.
Each app must be configured in Meta Business Manager, and apps can pass control to each other or end conversations explicitly.
For more information, refer to Meta's Conversation Routing Documentation.
Conversation Routing Flow
Here is the flow diagram for Conversation Routing
1. User interacts - The user sends a message or clicks on an ad campaign.
2. Routing decision: Is a Marketing App configured for this entry
Yes → route to Marketing App
No → route to Default App
3. Default App handles the conversation from start to finish.
4. Marketing App steps in when relevant (example, ad click):
Manages the flow.
Periodically checks if control should be transferred:
Yes - can hand over to *another Marketing App* or back to *Default App*
No - continue handling
5. End result: The active app at that point handles the remainder of the conversation.
Key Points
No idle state — every incoming interaction gets routed immediately.
Entry context (like ad click) triggers the Marketing App; otherwise, the Default App takes over.
Enabling Conversation Routing in Sprinklr
Note: The Conversation Routing option is only available for Facebook accounts.
Under the Sprinklr Social tab, click Owned Social Accounts within Listen.
From the All Channels drop-down available on the top of the page, select Facebook pages. The list of Facebook accounts will be displayed.
Hover over the three dots of the Facebook account for which you want to enable Conversation Routing. Click Enable Converation Routing.
A prompt will be displayed that this action is irreversible. This action is irreversible once saved, as Meta does not support switching back to Handover Protocol. Click Enable.
Configuring Conversation Routing
Sprinklr allows partners to register and manage connected apps associated with a Facebook Page. This setup ensures smooth handover of conversations between multiple apps such as marketing apps and the default app, based on user entry points and business needs.
Perform the following steps to configure conversation routing:
On the Accounts page, click on the three dots corresponding to the Facebook page for which want to configure Conversation Routing. Note that you can configure Conversation Routing only for the pages that have Conversation Routing enabled.
Click Configure Conversation Routing.
In the Configure Conversation Routing Settings page, enter Application ID, Application Name, and Role (Default or Marketing App).
Note that this is not actual app integrations in Sprinklr. Sprinklr uses this metadata to:
Recognize which apps are associated with the page.
Allow thread control actions (pass/release) to target the correct app using its ID
When an agent passes control of a conversation in Sprinklr, the system uses the App ID configured here to send the correct signal to Meta’s Conversation Routing APIs.
Granting permission to take control
This is a feature provided by Meta where you can give permission to one of your app to take thread control. This setting must also be enabled in Meta Business Manager.
On the Accounts page, click on the three dots corresponding to the Facebook page for which you want to grant permission to take control. Note that Conversation Routing must be enabled and configured to allow App to take control.
Click Allow App to take Thread control.
If enabled, the app can interject and take control of the thread even when another app currently owns the conversation.
Example Scenario:
Imagine you have a Facebook Page with the following apps configured in Meta Business Manager:
Sprinklr App (Default App)
XYZ Marketing App (Marketing App for Ad Campaigns)
To reflect this setup in Sprinklr:
Enable Conversation Routing.
Grant the Sprinklr app permission to take control.
In the Connected Apps section:
Add:
App ID: 123456789
Name: Sprinklr Default
Role: Default
Add:
App ID: 987654321
Name: XYZ Marketing
Role: Marketing
Now, if the XYZ Marketing App initially receives the conversation (when a user clicking on an ad), agents in that app can pass control back to the Sprinklr Default App, and Sprinklr will use the App ID you entered (123456789) to complete the action via Meta APIs.
Agent Experience in Care Console
Reply Box Toggle - Pass/Release Conversation Control
For accounts with Conversation Routing enabled, agents will see a Pass/Release Conversation Control toggle in the reply box.
To Pass/Release Conversation Control,
Click the New Tab icon. Under Sprinklr Service, select Care Console within Resolve.
Open the required case, and in the reply box, click Pass/Release Conversation Control.
On the Update Thread Control window, select the options based on the description and then click Update.
Pass Control: Lets agents pass the thread to another connected app selected from the App drop-down.
Release Control: Ends the conversation and releases control back to the default app.
Select App: Passes the control to the app selected. The apps that are populated are the apps configured in the Configure Conversation Routing page.
After passing or releasing control, send the message to proceed, as control will only be passed or released after the message is successfully sent.