Skip to contentSkip to navigationSkip to topbar
Rate this page:
On this page

Common Use Cases


This guide covers useful commands for interacting with your Flex plugins that are managed with the Flex Plugins CLI.


View all versions of a Flex plugin

view-all-versions-of-a-flex-plugin page anchor

_10
twilio flex:plugins:list:plugin-versions --name <plugin name>

plugin versions.

View all Flex plugins you have deployed

view-all-flex-plugins-you-have-deployed page anchor

The list command displays all the plugins that can be enabled or disabled.


_10
twilio flex:plugins:list:plugins

All Plugins.

View your active plugins

view-your-active-plugins page anchor

_10
twilio flex:plugins:describe:release --active

Active Release.

Sometimes you push changes to your application that need to be reverted and fixed. You can use the Plugins CLI to return to a previous version of your plugin configuration.

Fetch previous releases

fetch-previous-releases page anchor

_10
twilio flex:plugins:list:releases

Choose a prior configuration

choose-a-prior-configuration page anchor

From the list of Releases, choose the one that you want to rollback to. Copy the configuration_sid of that release.

Use the describe command to get details on the Configuration.


_10
twilio flex:plugins:describe:configuration --sid <Configuration Sid>

Describe Configuration.

Create a new release from your prior configuration

create-a-new-release-from-your-prior-configuration page anchor

Create a new Release with the copied configuration_sid.


_10
twilio flex:plugins:release --configuration-sid <Configuration Sid>

Whew! You've successfully rolled back your Contact Center to an operational version. Go hunt down that bug, and get ready to cut a new Release with the revised Plugin Code!


Use the disable-plugin argument on the release command to disable a plugin on your Flex application. The format it takes is pluginName.


_10
twilio flex:plugins:release --disable-plugin plugin-agent-autoresponse --name "Flex Next" --description "Remove Agent Autoresponse Plugin"



_10
twilio flex:plugins:release --plugin <plugin-name1>@<version> --plugin <plugin name2>@<version> --name "Sprint Snow Leopard" --description "Agent Productivity Tools"

You can group multiple plugins into a single Release. The twilio flex:plugins:release command takes multiple plugin names in its argument. Keep in mind that you need to first deploy the versions of the plugins being referred in the command before using it in the release command.


Compare your configuration with the active release

compare-your-configuration-with-the-active-release page anchor

Use the diff command to compare two configurations in your Flex application. If you leave the second parameter blank, it will compare the Configuration to the active Release.


_10
twilio flex:plugins:diff <Configuration SID>


There are two mechanisms you can use to serve plugins external to Twilio Assets. The Flex Configuration Resource provides plugin_service_attributes, which can be used to register external assets for Flex to load.

AttributeTypePurpose
custom_pluginsJSON array of Flex Pluginscustom_plugins enable you to statically define a list of Flex Plugins to return to Flex, this may be particularly useful to incorporate as part of a CI/CD workflow.
custom_plugins_urlA valid URLcustom_plugins_url must also return a JSON Array of plugins, but by leveraging the JWE token provided via the X-Flex-JWE header you may choose to conditionally return plugins to certain agents to satisfy use-cases such as segmentation by department or canary deployments.

Only one of these fields is required. This curl example demonstrates the syntax for updating either attribute.


_10
curl https://flex-api.twilio.com/v1/Configuration -X POST -u ACxx:auth_token \
_10
-H 'Content-Type: application/json' \
_10
-d '{
_10
"account_sid": "ACxx",
_10
"plugin_service_attributes": {
_10
"custom_plugins": [{"name": "My Plugin", "version": "0.0.1", "src": "https://example.com/my-self-hosted-plugin-0.0.1.js"}],
_10
"custom_plugins_url": "https://example.com/plugins-list.json"
_10
}
_10
}'

custom_plugins_url takes precedence over custom_plugins in the event that both appear. This allows you to leverage custom_plugins as a fallback if your URL is inaccessible.


Rate this page: