Skip to main content

Salesforce <> Fullview AI Escalations

A comprehensive guide for escalating AI conversations to your support team in Salesforce

Written by Sofia
Updated this week

When Fullview's AI can't resolve a customer's issue, it can automatically escalate the conversation to a live agent in Salesforce. This guide walks you through connecting Fullview to Salesforce and choosing the escalation approach that fits your team.

Choose your integration type

When you first open the Salesforce escalation settings in Fullview, you'll be asked to choose between two approaches. Pick the one that matches how your Salesforce instance is set up.

Omni-Channel Flow

Fullview Flow

Best for

Fullview hands the conversation directly to Salesforce, which routes it to the right agent queue using its native Omni-Channel engine

If the escalation happens during business hours, Fullview creates a live Salesforce Messaging conversation. Outside of business hours, it creates a Case with the full conversation history instead

Salesforce features used

Messaging for In-App and Web, Omni-Channel routing, Apex actions

Cases, optionally Messaging for In-App and Web

Not sure which to pick? If your Salesforce team already has Omni-Channel configured with routing rules and queues, choose Omni-Channel Flow. If you'd prefer a simpler setup where Fullview automatically handles routing based on business hours — live conversation, ticket outside of those hours — choose Fullview Flow.


Prerequisites

Before you begin, ensure you have:

  • Salesforce Administrator access to your Salesforce org

  • Service Cloud or Sales Cloud enabled (Enterprise, Performance, Unlimited, or Developer Edition)

  • For messaging: Live agents available to handle escalated conversations


Option A: Omni-Channel Flow

Part 1: Salesforce Chat Configuration

To enable live messaging, you'll need to set up the following in Salesforce:

  1. Enable Messaging Settings

  2. Create a Routing Configuration (optional)

  3. Create a Queue for messaging sessions (optional)

  4. Create a Messaging Channel

  5. Create an Embedded Service Deployment

  6. Enable Pre-Chat

Step 1: Enable Messaging

  1. In Salesforce Setup, search for `Messaging Settings` in the Quick Find box

  2. Click Messaging Settings

  3. Toggle Enable Messaging to ON

  4. Click Save

Step 2: Create a Routing Configuration (optional)

  1. In Setup, search for `Routing Configurations` in the Quick Find box

  2. Click Routing Configurations

  3. Click New

  4. Configure the routing (example):

    • Routing Configuration Name: `Fullview Messaging Routing`

    • Routing Priority: `1` (should be handled before anything else)

    • Routing Model: Select `Most Available` (routes to the agent with the most available capacity)

    • Units of Capacity: `1` (each messaging session uses 1 capacity unit)

  5. Click Save

Step 3: Create a Messaging Queue (optional)

  1. In Setup, search for `Queues` in the Quick Find box

  2. Click Queues

  3. Click New

  4. Configure the queue:

    1. Label: `Fullview Messaging Queue`

    2. Queue Name: Auto-populated

    3. Under Routing Configuration select the routing configuration you created in Step 2

    4. Supported Objects: Select `Messaging Session`

    5. Queue Members: Add users or groups who will handle escalated conversations

  5. Click Save

Step 4: Create a Messaging Channel

  1. In Setup, search for `Messaging Settings` in the Quick Find box

  2. Click Messaging Settings

  3. Scroll down to the Channels section

  4. Click New Channel

  5. In the popup select Enhanced Chat

  6. Configure the channel:

    1. Messaging Channel Name: `Fullview Messaging Channel`

    2. Developer Name: Auto-populated

    3. Deployment Type: Web

    4. Click Next

    5. Routing Type: Use the routing that makes sense for your organization (e.g. see the optional steps 2 and 3 on how to set up an Omni-Queue)

  7. Click Save (this might take a while)

  8. Click Activate and accept the terms

  9. In the Channels list locate the messaging channel entry you've just created and click on the "arrow down" button on the right

  10. Click Edit

  11. Increase the Authorization Token Expiration Time for Unverified Users to 4320 (the upper limit)

  12. Scroll to the Queue Wait Time and Position section and Set the Notification dropdown to Queue Position. Once enabled, Fullview will automatically display the customer's queue position in the chat window while they wait. No additional configuration is needed on the Fullview side.

Step 5: Create an Embedded Service Deployment

  1. In Setup, search for `Embedded Service Deployments` in the Quick Find box

  2. Click Embedded Service Deployments

  3. Click New Deployment

  4. Select Enhanced Chat

  5. Click Next

  6. Select deployment type: Custom Client

  7. Click Next

  8. Configure the deployment:

    1. Embedded Service Deployment Name: e.g. `Fullview Messaging Deployment`

    2. API Name: Auto-populated

    3. Messaging Channel: Select the channel you created in Step 5

  9. Click Save

Step 6: Enable Pre-Chat

  1. From the Embedded Service Deployments list, click on your deployment you've just created e.g. Fullview Messaging Deployment

  2. Click `Edit Pre-Chat`

  3. Check the `Activate the pre-chat feature` checkbox and click Save

Step 7: Get Your Deployment Configuration

After creating the deployment, you need to retrieve the configuration details for Fullview:

  1. From the Embedded Service Deployments list, click on your deployment you've just created e.g. Fullview Messaging Deployment

  2. Click the Install Code Snippet button

In the code snippet you'll find the OrganizationId, DeveloperName and Url

Step 8: Add the information to Fullview

Part 2: Connected App Configuration (OAuth)

This section covers setting up OAuth authentication so Fullview can create Cases in your Salesforce org automatically.

Step 1: Create an External Client App

  1. Log in to Salesforce as an Administrator

  2. Click the gear icon in the top right and select Setup

  3. In the Quick Find box (left sidebar), type `App Manager`

  4. Click App Manager from the results

  5. Click the New External Client App button in the top right

Step 2: Configure Basic Information

Fill in the following details on the External Client App creation page:

  • App Name: `Fullview Integration` (or any name you prefer)

  • API Name: Leave as auto-populated

  • Contact Email: Your email address

Step 3: Enable OAuth Settings

  1. Expand the API (Enable OAuth Settings) section

  2. Check the Enable OAuth checkbox

  3. In the App Settings section set the Callback URL to `https://login.salesforce.com/services/oauth2/success`

  4. Under Selected OAuth Scopes, add the following scopes from the Available OAuth Scopes list:

    1. `Manage user data via APIs (api)`

    2. `Access the identity URL service (id, profile, email, address, phone)`

  5. Under Flow Enablement, check Enable Client Credentials Flow

  6. Click Save at the bottom of the page

Step 4: Enable Client Credentials Flow

After saving, you'll be taken to the External Client App details page.

  1. Select the Policies tab

  2. Click the Edit button

  3. Expand the OAuth Settings section and locate the OAuth Flows and External Client App Enhancements subsection

  4. Check the box for Enable Client Credentials Flow

  5. In the Run As (Username) field, input the Salesforce username that should own the API actions.

    Tip: This user needs permission to create Cases. We recommend creating a dedicated integration user for this purpose.

  6. Click Save


Step 5: Get Your Client ID and Client Secret

  1. From the External Client App details page, click Settings at the top

  2. Expand the OAuth Settings section

  3. Click Consumer Key and Secret

  4. You may need to verify your identity (enter password or use authenticator app)

  5. Copy the Consumer Key - this is your Client ID

  6. Copy the Consumer Secret - this is your Client Secret

⚠️ Important: Keep your Client Secret secure. Never share it publicly or commit it to version control.

Step 6: Find Your Salesforce Domain

  1. In the Quick Find box (left sidebar), type `My Domain`

  2. In the My Domain Details section you'll find the `My Domain Name`

Step 7: Provide Configuration to Fullview

As a last step you'll have to provide the Client ID, Client Secret and Domain from the previous steps to Fullview in the escalation configuration settings.

Part 3: Configure the apex action

Why this step exists?

When Fullview creates a conversation in Salesforce, it has no way of knowing whether any agents are available — that decision is made inside your Omni-Channel Flow. This means there are situations where the flow determines that no agent can handle the request and creates a Case instead. In those situations, Fullview needs to be notified so it can update the customer accordingly.

You do this by adding a Fullview Apex Action at the point in your flow where a Case is created and the conversation cannot be handled. Depending on how you configure the action, Fullview will either:

  • Tell the customer a case was created and that an agent will follow up asynchronously — if you pass the caseId as a parameter

  • Silently end the conversation in Fullview — if you don't pass a caseId

Step 1: Install the Fullview app from AppExchange

The Apex class used in this step is shipped as part of the Fullview managed package. You must install it before the action will be available in your flow.

  1. Make sure the installed version is v43 or higher - earlier versions do not include the Apex action. You can verify this in Setup → Installed Packages

Step 2: Update Fullview Metadata in Salesforce

  1. In Salesforce, go to Setup → Custom Metadata Types → Fullview Settings → Manage Records

  2. Create or update an existing record

  3. You can find all the information in Fullview on Configure Apex Action card, on escalation configuration page (FV Api Endpoint, Organisation Id, Escalations Token).

  4. For escalations token, copy the existing one or generate a new one

5. The setting in salesforce will look like this:

Step 3: Add a Remote Site Setting

Salesforce requires you to explicitly whitelist any external URL that your Apex code will call out to. Without this, the Apex action will fail silently when trying to notify Fullview.

  1. Go to Setup → Security → Remote Site Settings → New Remote Site

  2. Fill in:

    • Remote Site Name: Fullview (or any name you prefer)

    • Remote Site URL: copy the FV Api Endpoint value shown in the Fullview dashboard. Should be the one you've already added in the settings

Step 4: Add the Apex Action to your Omni-Channel Flow

Add this action at the point in your flow where no agent is available and a Case has been created. That is the moment Fullview needs to be notified.

  1. In Salesforce, open Process automation → Flows and edit the flow that handles your escalation queue

  2. Find the branch where the request cannot be routed to an agent and a Case is created

  3. Add a Action Step after the case is created. The action name is Fullview End Conversation.

  4. For input, we need the following values:

    • Case Id: Case > Case ID

    • Conversation Identifier: Messaging Session > Conversation ID -> Conversation Identifier

    • Record Id: Messaging Session > Messaging Session ID or recordId

Step 5: Confirm in Fullview

Back in Fullview, check the box "I have configured the Apex action" to mark this step as complete.

Part 4: Routing Attributes

Routing attributes are key-value pairs that Fullview sends to Salesforce when creating a conversation. Salesforce's Omni-Channel flow uses them to decide which queue the conversation should be routed to. For example, you might route conversations from enterprise customers to a dedicated queue, or send billing-related escalations to a specific team.

Before configuring routing attributes in Fullview, you need to set up the corresponding fields in Salesforce first.

Step 1: Enable Pre-Chat on your Embedded Service Deployment

Pre-Chat must be active for custom attributes to be passed through when a conversation starts.

  1. Go to Setup → Embedded Service Deployments

  2. Find your deployment and click Edit Pre-Chat

  3. Check Activate the pre-chat feature

  4. Save

  5. Publish the deployment

Step 2: Define a Custom Parameter on the Messaging Channel

For each value you want to route on, you need to declare it as a custom attribute on the channel.

  1. Go to Setup → Messaging Channels, find your channel and click on the Channel Name

  2. Scroll to the Custom Parameters section and click New

  3. Fill in:

    • Parameter Name

    • Parameter API Name

    • Channel Variable name: the key you will use in Fullview (e.g. plan, queueName)

    • Data Type: Text

  4. Save

  5. Repeat for each attribute you want to route on

Step 3: Add a Parameter Mapping on the Messaging channel

  1. Go to Setup → Messaging Channels, find your channel and click on the Channel Name

  2. Scroll to the Parameter Mappings section and click New

  3. Select the created parameter and choose a variable name for your flow

  4. Click Save

Step 4: Add the Custom Parameter to Pre-Chat Fields

Each custom parameter must also be added as a Pre-Chat field so that Salesforce accepts it when the conversation is initiated.

  1. Go to Setup → Embedded Service Deployments, find your deployment and click Edit Pre-Chat

  2. Scroll to the Hidden Pre-Chat Fields section and click New

  3. Make sure the attributes are selected

  4. Click Save

  5. Publish the deployment

Step 5: Configure Routing Attributes in Fullview

Once Salesforce is configured, open the Routing Attributes card in Fullview:

  1. Click + Add more to add a row

  2. For each row:

    • Attribute — select the customer property from the dropdown (this is the Fullview customer data that will be sent)

    • Value — type the value that should be mapped (must match what your Omni-Channel routing rules expect - It is the CHANNEL VARIABLE NAME

  3. Click Save

You can click any saved attribute label to copy its value to the clipboard.


Option B: Fullview Flow

This flow has two parts. Part 1 is required and handles all escalations outside of business hours by creating a Salesforce Case. Part 2 is optional and adds real-time live chat for escalations that happen during business hours.

Part 1: Oauth Setup

Follow the same steps as Part 2: Connected App configuration above to create a Connected App in Salesforce and obtain your Domain, Client ID, and Client Secret.

With Part 1 complete, Fullview will automatically create a Salesforce Case for every escalation that occurs outside of business hours, including the full conversation transcript and customer context.

Part 2: Live Chat Setup (optional)

If you want real-time live chat escalation during business hours, complete this part as well. When an escalation occurs during your configured business hours, Fullview will create a live Salesforce Messaging session and route the customer to an available agent. Outside of business hours, it falls back to creating a Case automatically — no conversation is lost either way.

Follow the same steps as Part 1: Salesforce chat configuration above to create a messaging channel, embedded deployment and other required prerequisites.

Did this answer your question?