The Unified Profiles container is the parent container for all Unified Profiles-related UI components:
Customer header
Customer details
Customer history
Custom highlights (provided by Agent Copilot)
The Unified Profiles container is turned off by default, meaning that none of these UI components are visible to your agents until you turn on the Unified Profiles container.
Use Unified Profiles container capabilities to programmatically customize your agent experiences in Unified Profiles.
With the UnifiedProfilesContainer.ProfileTabs component, you can:
Add a new custom tab
Update the tab display name
Remove an existing tab by child key
Update the order (index) of the built-in tabs
All normal programmability actions (add, remove, replace) are also available for this component and its content.
If you want to use the right side of your agent desktop for tabbed content (for example, multiple plugins and custom tabs), we recommend adopting the Unified Profiles container. This provides an out-of-the-box way to integrate Twilio-provided UI components with your custom plugins in a tabbed panel. It also enables admin-level control over the built-in UI components from the Flex Console, without needing code changes to your contact center to turn components on or off.
Using the Unified Profiles container as a tabbed container
Additionally, you can use the Unified Profiles container solely as a tabbed container for the Flex UI, without adopting any of the Twilio-provided Unified Profiles UI components. We recommend this over creating your own tabbed container, as this approach makes it easier to enable Twilio-provided UI components (like Customer details or Customer history) going forward. To do so, follow the documentation below to add your custom tabs.
Maintaining compatibility for your Flex UI plugins
If you're not going to use the Unified Profiles container now, there are steps you can take to make Unified Profiles or other tabbed content on the right side of the Flex agent desktop easier to adopt in the future.
If you're customizing the Panel2 area of the agent desktop, we recommend putting your customizations into the CRMContainer component (and not replacing the whole Panel2). This provides future flexibility to switch to the Unified Profiles container and allows your customizations to automatically move to the In-house tab.
Turn on the Unified Profiles container
After you've connected your Unified Profiles space, you need to turn on the Unified Profiles container, which is off by default. This allows your agents to use the Unified Profiles-related agent UI.
To turn on the Unified Profiles container:
In Console, navigate to Flex > Unified Profiles.
Toggle on Enable Unified Profiles container in Flex UI to turn on the Unified Profiles container.
The CRMContainer, a child component of the Panel2, moves from Panel2 into the In-house tab of the Unified Profiles container.
1
2
// With Unified Profiles container off. Any customizations outside of this CRMContainer will be replaced if you turn on the Unified Profiles container.
3
4
<Panel2>
5
<crmContainer></crmContainer>
6
</Panel2>
7
8
// With the Unified Profiles container on. Custom content inside the CRMContainer is moved into a tab within the Unified Profiles container.
9
10
<Panel2>
11
<UnifiedProfilesContainer>
12
<ProfileTabs>
13
<InHouseTab>
14
<crmContainer></crmContainer>
15
</InHouseTab>
16
</ProfileTabs>
17
</UnifiedProfilesContainer>
18
</Panel2>
19
If you had previously placed Flex UI customizations onto the Panel2 level (and not in the CRMContainer level), your customizations are hidden when the Unified Profiles container is on.
If you have agent UI customizations for your Flex instance, test the effect of turning on the Unified Profiles container in your staging environment or during periods of reduced activity first.
If enabling the Unified Profiles container unexpectedly hides any of your customizations, update your plugin code to attach the customizations to either the CRMContainer, which becomes the In-house tab, or add them as a custom tab on the Unified Profiles container.
If turning on the Unified Profiles container has any adverse effects on your Flex agent UI, you can use the same toggle as above to turn it off again. Note that Unified Profiles UI components such as Customer details and Customer history are not displayed when the Unified Profiles container is off.
Unified Profiles container programmability
The Unified Profiles container has the following child keys:
Name
Key
Notes
Alert Banner
alert
Can only be removed/styled
Loading View
loading-view
Can only be removed/styled
Profile Header and Link Menu
profile-header-and-link-menu
Can only be removed/styled
Removing this key affects the replace/unlink profiles experience
Profile Highlights
profile-highlights
Can only be removed/styled
Profile Connector Tabs
profile-connector-tabs
Can only be removed/styled
Profile Not Found View
profile-not-found-view
Can only be removed/styled
Removing this key affects the profile search experience
Profile Unlink Modal
profile-unlink-modal
Can only be removed/styled
Removing this key affects the replace/unlink profile experience
Search View
search-view
Can only be removed/styled
Removing this key affects the profile search experience
Profile Highlights
Use ProfileHighlights to update the highlights component in your container.
Profile Highlights has the following child keys:
Name
Key
Notes
Highlights Icon
highlights-icon
Can only be removed/styled
Highlights Title
highlights-title
Can be renamed with the title default prop in the profileHighlightsTitle component
Can only be removed/styled
Highlights Chevron
highlights-chevron
Can only be removed/styled
Highlights Summary
highlights-summary
Can only be removed/styled
Profile Header
You can use ProfileHeader to update the profile header. For example:
Note that you must set all container tabs together to reorder them.
Add a custom tab
Depending on your use case, you might want to add a custom tab alongside the tabs provided out of the box, giving you more control over your experience.
To create a custom tab, first create a new Tab component in your plugin code:
1
importReactfrom"react";
2
//IMPORTANT: The top most element in your component must be the <Tab> from "@twilio/flex-ui", or the custom tab will not work.
//Add any additional content you want. The div above this creates an 80X80 pixel box, colored by the prop, so that you can more easily visualize the content area of your new tab.
9
</Tab>
10
);
11
Next, import the component and add it to the ProfileTabs:
This displays a new custom tab in the far-left (first) position of all of the tabs, with a red 80x80 pixel square. You can add whatever custom properties you want to pass in data, customize the look and feel, and more.