Core Concepts: Chat and Messaging

This guide is for Flex UI 1.x and channels that use Programmable Chat and Proxy. If you are using Flex UI 2.x or you are starting out, we recommend that you build with Flex Conversations.

Twilio Flex includes messaging capabilities that allow your contact center agents to chat with customers through:

  • SMS
  • A chat widget on your website
  • Digital messaging channels

Flex currently supports inbound messaging (initiated by a customer). You can initiate messaging conversations as they arrive or append incoming messages to existing conversations, depending on your Chat channel configuration.

Learn more about messaging in Flex.

Chat Channels

Flex stores and manages all messaging interactions in Chat Channels. Flex creates Chat Channels as private by default. Messages are sent, received, and archived for later viewing by offline clients in the Chat Channels.

By default, Flex ships with sms and web channels integrated with Studio. To enable additional messaging flows in Flex, you can programmatically create Chat Channels (such as Facebook or WhatsApp).

Flex Flows

A Flex Flow is the logic linking a messaging channel to Flex. It also describes how Flex should handle messages on a particular channel. You can configure a Flex Flow via the Twilio Console or via the REST API.


To learn more about different integration types and managing messaging channels, see Managing Flex Flows.

To preserve a customer's message history between multiple interactions (even if the subsequent interactions are handled by different agents), you can set up long-lived channels.

Use the Channel Janitor to clean up inactive chat channels. This will ensure new messages from customers don’t get lost by being routed to inactive channels. Channel Janitor is now enabled for Flex Flows by default and we recommend you leave it on.

Webchat Widget

Flex Webchat is a chat widget that you can embed on your website. The widget helps your customers chat with an agent without having to leave your web site. It is natively integrated with Flex.

After deploying your Flex instance, you can test the chat widget that comes out of the box and is integrated with Studio by default (via the Webchat Flow). You can launch the demo chat widget from the Admin panel of the Flex UI and test your agents' default interaction experience.


Webchat widget is fully customizable with code. Refer to the Webchat developer documentation for details.

Chat Encryption

Twilio takes data security seriously. All customer assets—including text, media, and most metadata—are encrypted at rest. We also encrypt all data at the volume level.

Twilio's servers and Flex, including the customer Webchat widget, communicate using secure WebSockets. These connections are authenticated using the same JWT token security as the rest of Flex, meaning they are governed by the same Single Sign On (SSO).

For guidance on frequently asked questions, see Flex Messaging FAQ and Troubleshooting.

Rate this page:

Need some help?

We all do sometimes; code is hard. Get help now from our support team, or lean on the wisdom of the crowd by visiting Twilio's Stack Overflow Collective or browsing the Twilio tag on Stack Overflow.

Thank you for your feedback!

Please select the reason(s) for your feedback. The additional information you provide helps us improve our documentation:

Sending your feedback...
🎉 Thank you for your feedback!
Something went wrong. Please try again.

Thanks for your feedback!