Intelligence API (v3) - Configurations endpoints
Legal information
Conversation Intelligence, including the APIs, may use artificial intelligence or machine learning technologies and is subject to the terms of the Predictive and Generative AI/ML Features Addendum. For more details on AI usage and data, see AI Nutrition Facts for Conversation Intelligence.
Conversation Intelligence is not PCI compliant or a HIPAA Eligible Service and should not be used in workflows that are subject to HIPAA or PCI.
Define and manage intelligence configuration. The Configurations resource defines how and when language operators execute on conversations via rules that encapsulate triggers, context, and actions.
An intelligence configuration is a container for one or more rules. Each rule specifies:
- Which language operators to execute
- Which conversation lifecycle event triggers the rule
- Which contextual data language operators can access at runtime
- Which action to take on the results
Configurations are evaluated automatically as conversation activity occurs, providing consistent, reusable intelligence logic across channels and over time.
Create an Intelligence Configuration
Retrieve a list of Intelligence Configurations
Retrieve an Intelligence Configuration
Update an Intelligence Configuration
Delete an Intelligence Configuration
POST/v3/ControlPlane/Configurations
Base url: https://intelligence.twilio.com (Twilio Intelligence API)
Create an Intelligence Configuration to control how and when language operators analyze conversations.
You must include the rules field in the request. You can pass an empty array ("rules": []), but an Intelligence Configuration with an empty rules array doesn't execute any language operators. To add rules later, make a PUT /v3/ControlPlane/Configurations/{id} request.
After creating an Intelligence Configuration, you must attach it to a Conversations Configuration by using the Conversations API.
application/jsonThe display name of the Intelligence Configuration describing its purpose.
1Max length: 128The description of the Intelligence Configuration further explaining its purpose.
List of Intelligence Configuration Rules that govern when and how Language Operators run. Each Rule represents a bundle of Operators, Triggers, Context, and Actions to be executed by the Intelligence Configuration on a Conversation. A maximum of five (5) Rules are allowed per Intelligence Configuration.
To create an Intelligence Configuration without any Rules configured yet, pass an empty array
("rules": []). The Configuration will not execute any Language Operators until at least one Rule
has been added.
5Intelligence Configuration resource created.
The ID of the Account that created the Intelligence Configuration.
ACaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaThe unique identifier for the Intelligence Configuration. Assigned by Twilio (TTID).
The display name of the Intelligence Configuration describing its purpose.
1Max length: 128The description of the Intelligence Configuration further explaining its purpose.
The numeric version of the Intelligence Configuration. Automatically incremented with each update on the resource, used to ensure integrity when updating the Configuration.
List of Intelligence Configuration Rules that govern when and how Language Operators run. Each Rule represents a bundle of Operators, Triggers, Context, and Actions to be executed by the Intelligence Configuration on a Conversation. A maximum of five (5) Rules are allowed per Intelligence Configuration.
5Timestamp of when the Intelligence Configuration was created.
Timestamp of when the Intelligence Configuration was last updated.
1// Download the helper library from https://www.twilio.com/docs/node/install2const twilio = require("twilio"); // Or, for ESM: import twilio from "twilio";34// Find your Account SID and Auth Token at twilio.com/console5// and set the environment variables. See http://twil.io/secure6const accountSid = process.env.TWILIO_ACCOUNT_SID;7const authToken = process.env.TWILIO_AUTH_TOKEN;8const client = twilio(accountSid, authToken);910async function createConfiguration() {11const configuration = await client.intelligence.v3.configurations.create({12displayName: "displayName",13rules: [14{15operators: [16{17id: "id",18version: 42,19parameters: {},20},21],22triggers: [23{24on: "COMMUNICATION",25parameters: {26count: 1,27},28},29],30actions: [31{32type: "WEBHOOK",33method: "POST",34url: "https://www.example.com",35},36],37context: {38memory: {39enabled: false,40},41knowledge: {42bases: ["bases"],43},44},45},46],47});4849console.log(configuration.accountId);50}5152createConfiguration();
Response
1{2"accountId": "AC00000000000000000000000000000000",3"id": "intelligence_configuration_01kermhm82e5mr98nbeh1hpmbn",4"displayName": "real-time-intelligence-config",5"description": "Intelligence configuration to trigger real-time script adherence operator",6"version": 1,7"rules": [8{9"operators": [10{11"id": "id",12"version": 42,13"parameters": {}14}15],16"triggers": [17{18"on": "COMMUNICATION",19"parameters": {20"count": 121}22}23],24"actions": [25{26"type": "WEBHOOK",27"method": "POST",28"url": "https://www.example.com"29}30],31"context": {32"memory": {33"enabled": false34},35"knowledge": {36"bases": [37"bases"38]39}40}41}42],43"dateCreated": "2026-01-12T08:18:17Z",44"dateUpdated": "2026-01-12T08:18:17Z"45}
GET/v3/ControlPlane/Configurations
Base url: https://intelligence.twilio.com (Twilio Intelligence API)
The maximum number of resources to return
50Minimum: 1Maximum: 1000Token for pagination
1// Download the helper library from https://www.twilio.com/docs/node/install2const twilio = require("twilio"); // Or, for ESM: import twilio from "twilio";34// Find your Account SID and Auth Token at twilio.com/console5// and set the environment variables. See http://twil.io/secure6const accountSid = process.env.TWILIO_ACCOUNT_SID;7const authToken = process.env.TWILIO_AUTH_TOKEN;8const client = twilio(accountSid, authToken);910async function listConfigurations() {11const configurations = await client.intelligence.v3.configurations.list({12limit: 20,13});1415configurations.forEach((c) => console.log(c.accountId));16}1718listConfigurations();
Response
1{2"items": [3{4"accountId": "AC00000000000000000000000000000000",5"id": "intelligence_configuration_01kermhm82e5mr98nbeh1hpmbn",6"displayName": "real-time-intelligence-config",7"description": "Intelligence configuration to trigger real-time script adherence operator",8"version": 1,9"rules": [10{11"id": "intelligence_configurationrule_01kermhm81fwfvy7j0f7h7v5mr",12"operators": [13{14"id": "intelligence_operator_01kcgy1ew0e9x8re6jq542zt8b",15"version": 4,16"parameters": {17"scale": 218}19}20],21"triggers": [22{23"on": "COMMUNICATION",24"parameters": {25"count": 326}27}28],29"actions": [30{31"type": "WEBHOOK",32"method": "POST",33"url": "https://my-webhook-endpoint.com/rule-action"34}35],36"context": {37"memory": {38"enabled": true39},40"knowledge": {41"bases": [42"knowledge_base_id"43]44}45}46}47],48"dateCreated": "2026-01-12T08:18:17Z",49"dateUpdated": "2026-01-12T08:18:17Z"50},51{52"accountId": "AC00000000000000000000000000000000",53"id": "intelligence_configuration_01kermhm92e5mr98nbeh1hpmbz",54"displayName": "post-call-analytics-config",55"description": "Intelligence configuration for post-call analytics",56"version": 2,57"rules": [58{59"id": "intelligence_configurationrule_01kermhm91fwfvy7j0f7h7v5ms",60"operators": [61{62"id": "intelligence_operator_01kcgy1ew0e9x8re6jq542zt9c"63}64],65"triggers": [66{67"on": "CONVERSATION_END"68}69],70"actions": [71{72"type": "WEBHOOK",73"method": "POST",74"url": "https://my-webhook-endpoint.com/analytics"75}76],77"context": {78"memory": {79"enabled": false80}81}82}83],84"dateCreated": "2026-01-10T10:30:00Z",85"dateUpdated": "2026-01-11T14:22:00Z"86}87],88"meta": {89"key": "items",90"pageSize": 2,91"nextToken": "next_page_token_example"92}93}
GET/v3/ControlPlane/Configurations/{id}
Base url: https://intelligence.twilio.com (Twilio Intelligence API)
The unique identifier of the Intelligence Configuration.
intelligence_configuration_01k6fc25s7epm9qtk8rszbv3q5Pattern: ^intelligence_configuration_[0-7][0-9a-z]{25}$A single Intelligence Configuration resource.
The ID of the Account that created the Intelligence Configuration.
ACaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaThe unique identifier for the Intelligence Configuration. Assigned by Twilio (TTID).
The display name of the Intelligence Configuration describing its purpose.
1Max length: 128The description of the Intelligence Configuration further explaining its purpose.
The numeric version of the Intelligence Configuration. Automatically incremented with each update on the resource, used to ensure integrity when updating the Configuration.
List of Intelligence Configuration Rules that govern when and how Language Operators run. Each Rule represents a bundle of Operators, Triggers, Context, and Actions to be executed by the Intelligence Configuration on a Conversation. A maximum of five (5) Rules are allowed per Intelligence Configuration.
5Timestamp of when the Intelligence Configuration was created.
Timestamp of when the Intelligence Configuration was last updated.
1// Download the helper library from https://www.twilio.com/docs/node/install2const twilio = require("twilio"); // Or, for ESM: import twilio from "twilio";34// Find your Account SID and Auth Token at twilio.com/console5// and set the environment variables. See http://twil.io/secure6const accountSid = process.env.TWILIO_ACCOUNT_SID;7const authToken = process.env.TWILIO_AUTH_TOKEN;8const client = twilio(accountSid, authToken);910async function fetchConfiguration() {11const configuration = await client.intelligence.v312.configurations("intelligence_configuration_01k6fc25s7epm9qtk8rszbv3q5")13.fetch();1415console.log(configuration.accountId);16}1718fetchConfiguration();
Response
1{2"accountId": "AC00000000000000000000000000000000",3"id": "intelligence_configuration_01k6fc25s7epm9qtk8rszbv3q5",4"displayName": "real-time-intelligence-config",5"description": "Intelligence configuration to trigger real-time script adherence operator",6"version": 1,7"rules": [8{9"id": "intelligence_configurationrule_01kermhm81fwfvy7j0f7h7v5mr",10"operators": [11{12"id": "intelligence_operator_01kcgy1ew0e9x8re6jq542zt8b",13"version": 4,14"parameters": {15"scale": 216}17}18],19"triggers": [20{21"on": "COMMUNICATION",22"parameters": {23"count": 324}25}26],27"actions": [28{29"type": "WEBHOOK",30"method": "POST",31"url": "https://my-webhook-endpoint.com/rule-action"32}33],34"context": {35"memory": {36"enabled": true37},38"knowledge": {39"bases": [40"knowledge_base_id"41]42}43}44}45],46"dateCreated": "2026-01-12T08:18:17Z",47"dateUpdated": "2026-01-12T08:18:17Z"48}
PUT/v3/ControlPlane/Configurations/{id}
Base url: https://intelligence.twilio.com (Twilio Intelligence API)
Update an Intelligence Configuration, including its metadata and rules. The request must include all required fields.
The unique identifier of the Intelligence Configuration.
intelligence_configuration_01k6fc25s7epm9qtk8rszbv3q5Pattern: ^intelligence_configuration_[0-7][0-9a-z]{25}$application/jsonThe display name of the Intelligence Configuration describing its purpose.
1Max length: 128The description of the Intelligence Configuration further explaining its purpose.
List of Intelligence Configuration Rules that govern when and how Language Operators run. Each Rule represents a bundle of Operators, Triggers, Context, and Actions to be executed by the Intelligence Configuration on a Conversation. A maximum of five (5) Rules are allowed per Intelligence Configuration.
5Intelligence configuration resource updated.
The ID of the Account that created the Intelligence Configuration.
ACaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaThe unique identifier for the Intelligence Configuration. Assigned by Twilio (TTID).
The display name of the Intelligence Configuration describing its purpose.
1Max length: 128The description of the Intelligence Configuration further explaining its purpose.
The numeric version of the Intelligence Configuration. Automatically incremented with each update on the resource, used to ensure integrity when updating the Configuration.
List of Intelligence Configuration Rules that govern when and how Language Operators run. Each Rule represents a bundle of Operators, Triggers, Context, and Actions to be executed by the Intelligence Configuration on a Conversation. A maximum of five (5) Rules are allowed per Intelligence Configuration.
5Timestamp of when the Intelligence Configuration was created.
Timestamp of when the Intelligence Configuration was last updated.
1// Download the helper library from https://www.twilio.com/docs/node/install2const twilio = require("twilio"); // Or, for ESM: import twilio from "twilio";34// Find your Account SID and Auth Token at twilio.com/console5// and set the environment variables. See http://twil.io/secure6const accountSid = process.env.TWILIO_ACCOUNT_SID;7const authToken = process.env.TWILIO_AUTH_TOKEN;8const client = twilio(accountSid, authToken);910async function updateConfiguration() {11const configuration = await client.intelligence.v312.configurations("intelligence_configuration_01k6fc25s7epm9qtk8rszbv3q5")13.update({14displayName: "displayName",15rules: [16{17id: "id",18operators: [19{20id: "id",21version: 42,22parameters: {},23},24],25triggers: [26{27on: "COMMUNICATION",28parameters: {29count: 1,30},31},32],33actions: [34{35type: "WEBHOOK",36method: "POST",37url: "https://www.example.com",38},39],40context: {41memory: {42enabled: false,43},44knowledge: {45bases: ["bases"],46},47},48},49],50});5152console.log(configuration.accountId);53}5455updateConfiguration();
Response
1{2"accountId": "AC00000000000000000000000000000000",3"id": "intelligence_configuration_01k6fc25s7epm9qtk8rszbv3q5",4"displayName": "real-time-intelligence-config",5"description": "Intelligence configuration to trigger real-time script adherence operator",6"version": 1,7"rules": [8{9"id": "id",10"operators": [11{12"id": "id",13"version": 42,14"parameters": {}15}16],17"triggers": [18{19"on": "COMMUNICATION",20"parameters": {21"count": 122}23}24],25"actions": [26{27"type": "WEBHOOK",28"method": "POST",29"url": "https://www.example.com"30}31],32"context": {33"memory": {34"enabled": false35},36"knowledge": {37"bases": [38"bases"39]40}41}42}43],44"dateCreated": "2026-01-12T08:18:17Z",45"dateUpdated": "2026-01-12T08:18:17Z"46}
DELETE/v3/ControlPlane/Configurations/{id}
Base url: https://intelligence.twilio.com (Twilio Intelligence API)
The unique identifier of the Intelligence Configuration.
intelligence_configuration_01k6fc25s7epm9qtk8rszbv3q5Pattern: ^intelligence_configuration_[0-7][0-9a-z]{25}$Intelligence Configuration resource deleted.
1// Download the helper library from https://www.twilio.com/docs/node/install2const twilio = require("twilio"); // Or, for ESM: import twilio from "twilio";34// Find your Account SID and Auth Token at twilio.com/console5// and set the environment variables. See http://twil.io/secure6const accountSid = process.env.TWILIO_ACCOUNT_SID;7const authToken = process.env.TWILIO_AUTH_TOKEN;8const client = twilio(accountSid, authToken);910async function deleteConfiguration() {11await client.intelligence.v312.configurations("intelligence_configuration_01k6fc25s7epm9qtk8rszbv3q5")13.remove();14}1516deleteConfiguration();