Getting Started with Twilio Flex

Flex is Twilio’s programmable cloud contact center platform. Built to meet your customer engagement needs, Flex was created with customization in-mind, allowing you to quickly build a tailor-made agent desktop UI, and integrate data from your existing CRMs, WFO/WFM software, and more. Flex works with Twilio’s existing Engagement Cloud APIs, including Studio visual flows and Task Router skill-based routing scripts, Functions for serverless Twilio scripting in Node.js, and the world-class Communication Cloud voice, video, and messaging products we’re known for.

Setting up a Flex Project

Creating a Flex instance requires you to create a new Twilio project. Here's how to set this up:

Notice: All new Twilio projects are created as a Free Trial project, and have separate balances and billing information. Projects will remain in trial status, and subject to all of the free trial limitations, including the number verification requirement for all outgoing and reply communications. These limitations are lifted once your project is upgraded and a balance is added. For invoiced customers, please contact your sales person with your new project details. 

  1. Login to your account at
  2. Click the Project drop-down menu.
  3. Select Create New Project.
  4. Click Flex.
  5. Enter the desired project name, and then click Continue.
  6. Invite a Teammate to access your Flex project, or click Skip This Step.
    Note: You can add new users to your Flex project in Console at any time.
  7. Please wait while your new hosted Flex instance is being built. Once it's ready, click Launch Flex to get started.

Hosting Options

Flex’s customization options allow you to choose where your Flex instance is hosted. You can run your personalized Flex UI locally on your own infrastructure, host it in your own cloud environment, or you can let Twilio host your Flex UI on our existing cloud platform, without any additional server or infrastructure maintenance requirements.

With Flex, we let customers choose the best option to suit their needs, such as running everything from the cloud, or deploying Flex into production locally, but using a Twilio-hosted environment for testing and development. This option allows you to test out new configurations, changes, or customizations, without any heavy lifting from your IT teams until you’re ready to deploy in production.

Flex UI

The Flex UI is built to be modified to your liking. Our React-based architecture is based on small components that can be added, modified, or removed at will. Users can quickly and easily add a button, create new themes and styles, or even remove entire sections. For a tutorial on creating a new Flex component, please see Adding Components to Flex UI (Twilio Docs). For full details, please see the Flex UI Overview (Twilio Docs).

The Flex UI also supports Flex Plugins - self-contained code changes that allow users to continue to modify Twilio-hosted Flex environments running on our cloud infrastructure. Plugins use Flex’s core programmability model, to change or update any aspect of Flex. Flex Admins can build a new plugin with the Build Flex Plugin tool, and upload it to your Twilio Assets library to be automatically deployed to your hosted instance. For full details, please see Building Flex Plugins (Twilio Docs).

Flex Channels

No longer will agents be required to shuffle between different tabs, screens, or logins to serve customers over different channels. With Flex, agents can serve customers over voice, video, and messaging all from the same UI. A list of supported channels can be found at

Flex Routing

Flex utilizes Twilio’s TaskRouter service for distribution of incoming communications and requests. TaskRouter allows you to build custom workflows, queues, and prioritization for any type of customer contact or “event”. These “events” turn into tasks, which are assigned based on your rules, and the skills assigned to your agents. For full details, please see How TaskRouter Works (Twilio Docs).

Additional Resources

Have more questions? Submit a request
Powered by Zendesk