Twilio Understand API

The Understand API from Twilio — 21 operation(s) for understand.

Operations 46

Each operation below carries the questions people ask an LLM about it and the instructions they give an agent to run it. Generated by API Evangelist overlay

GET /understand/Assistants/{Sid} View an Understand assistant · Fetch understand assistant #
Ask an LLM
“What name, callback URL and query logging setting does my Understand assistant have?”
“Can I look up an Understand assistant by its SID?”
Tell an agent
Show Understand assistant {assistant}.
Get the configuration of natural language assistant {assistant}.
POST /understand/Assistants/{Sid} Change an Understand assistant's settings · Update understand assistant #
Ask an LLM
“Can I turn off query logging on my assistant so user input isn't stored?”
“Where do I set the callback URL and events an assistant reports to?”
Tell an agent
Rename Understand assistant {assistant} to {name}.
Set query logging on assistant {assistant} to {log_queries}.
DELETE /understand/Assistants/{Sid} Delete an Understand assistant · Delete understand assistant #
Ask an LLM
“How do I get rid of an assistant I no longer use?”
“Can I delete a whole Understand assistant?”
Tell an agent destructive · confirm first
Delete Understand assistant {assistant}.
Remove the unused natural language assistant {assistant}.
GET /understand/Assistants/{AssistantSid}/FallbackActions See what an assistant does when it doesn't understand · Fetch understand assistant fallback actions #
Ask an LLM
“What does my assistant say when user input matches no task?”
“Can I read the fallback actions JSON for an assistant?”
Tell an agent
Show the fallback actions for assistant {assistant}.
Get what assistant {assistant} does when nothing matches.
POST /understand/Assistants/{AssistantSid}/FallbackActions Set an assistant's fallback actions · Update understand assistant fallback actions #
Ask an LLM
“How do I change the reply an assistant gives when it can't match any task?”
“Can I replace just the fallback actions without touching the rest of the assistant?”
Tell an agent
Set the fallback actions of assistant {assistant} to {actions}.
Replace what assistant {assistant} does on unrecognized input with {actions}.
GET /understand/Assistants/{AssistantSid}/InitiationActions See an assistant's opening actions on calls · Fetch understand assistant initiation actions #
Ask an LLM
“What does my assistant say first when it answers an inbound phone call?”
“Can I read the initiation actions JSON for an assistant?”
Tell an agent
Show the initiation actions for assistant {assistant}.
Get the greeting assistant {assistant} uses on inbound calls.
POST /understand/Assistants/{AssistantSid}/InitiationActions Set an assistant's opening actions on calls · Update understand assistant initiation actions #
Ask an LLM
“Can I change what my assistant says first on an inbound call?”
“What endpoint replaces only the initiation actions of an assistant?”
Tell an agent
Set the initiation actions of assistant {assistant} to {actions}.
Make assistant {assistant} open inbound calls with {actions}.
GET /understand/Assistants/{AssistantSid}/Dialogues/{Sid} View a dialogue with an assistant · Fetch understand dialogue #
Ask an LLM
“What happened in a specific conversation between a user and my assistant?”
“Can I pull up one dialogue by its SID?”
Tell an agent
Show dialogue {dialogue} from assistant {assistant}.
Get the conversation data for dialogue {dialogue} on {assistant}.
GET /understand/Assistants/{AssistantSid}/Tasks/{TaskSid}/Fields/{Sid} View a field on a task · Fetch understand field #
Ask an LLM
“What field type does one of my task's fields use?”
“Can I look up a single task field by SID?”
Tell an agent
Show field {field} on task {task} of assistant {assistant}.
Get the type of field {field} in task {task} for {assistant}.
DELETE /understand/Assistants/{AssistantSid}/Tasks/{TaskSid}/Fields/{Sid} Remove a field from a task · Delete understand field #
Ask an LLM
“How do I stop a task from collecting a particular field?”
“Can I delete one field without deleting the task?”
Tell an agent destructive · confirm first
Delete field {field} from task {task} on assistant {assistant}.
Remove task field {field} under {task} in {assistant}.
GET /understand/Assistants/{AssistantSid}/Tasks/{TaskSid}/Fields List the fields of a task · List understand field #
Ask an LLM
“Which fields does a task extract from what the user says?”
“What values is a task set up to capture?”
Tell an agent
List the fields on task {task} of assistant {assistant}.
Show every field task {task} collects in {assistant}.
POST /understand/Assistants/{AssistantSid}/Tasks/{TaskSid}/Fields Add a field to a task · Create understand field #
Ask an LLM
“How do I make a task capture a date or a city from the user's words?”
“Can I add a field that uses one of my custom field types?”
Tell an agent
Add field {name} of type {field_type} to task {task} on assistant {assistant}.
Create a {field_type} field called {name} in task {task} for {assistant}.
GET /understand/Assistants/{AssistantSid}/FieldTypes/{Sid} View a custom field type · Fetch understand field type #
Ask an LLM
“What are the name and details of one of my custom field types?”
“Can I look up a field type by its SID?”
Tell an agent
Show field type {field_type} on assistant {assistant}.
Get the details of custom field type {field_type} in {assistant}.
POST /understand/Assistants/{AssistantSid}/FieldTypes/{Sid} Rename a custom field type · Update understand field type #
Ask an LLM
“Can I change the unique name of a field type I already created?”
“Is it possible to relabel an existing custom field type?”
Tell an agent
Rename field type {field_type} on assistant {assistant} to {name}.
Change the unique name of existing field type {field_type} in {assistant} to {unique_name}.
DELETE /understand/Assistants/{AssistantSid}/FieldTypes/{Sid} Delete a custom field type · Delete understand field type #
Ask an LLM
“How do I remove a custom field type I no longer need?”
“Can I delete a field type and all its values?”
Tell an agent destructive · confirm first
Delete field type {field_type} from assistant {assistant}.
Remove the custom field type {field_type} in {assistant}.
GET /understand/Assistants/{AssistantSid}/FieldTypes List an assistant's custom field types · List understand field type #
Ask an LLM
“Which custom field types have I defined for my assistant?”
“What vocabularies like product names or store locations does my assistant know?”
Tell an agent
List the custom field types on assistant {assistant}.
Show all field types defined in {assistant}.
POST /understand/Assistants/{AssistantSid}/FieldTypes Create a custom field type · Create understand field type #
Ask an LLM
“How do I teach my assistant a custom list of things, like my product names?”
“Can I define my own field type beyond the built-in ones?”
Tell an agent
Create a field type named {name} on assistant {assistant}.
Add custom field type {name} labeled {label} to {assistant}.
GET /understand/Assistants/{AssistantSid}/FieldTypes/{FieldTypeSid}/FieldValues/{Sid} View one value of a field type · Fetch understand field value #
Ask an LLM
“What language and synonym is set on a particular field value?”
“Can I look up one field value by its SID?”
Tell an agent
Show value {value} of field type {field_type} on assistant {assistant}.
Check whether field value {value} in {field_type} for {assistant} is a synonym.
DELETE /understand/Assistants/{AssistantSid}/FieldTypes/{FieldTypeSid}/FieldValues/{Sid} Remove a value from a field type · Delete understand field value #
Ask an LLM
“How do I drop one entry or synonym from a custom field type?”
“Can I delete a single field value and keep the rest of the type?”
Tell an agent destructive · confirm first
Delete value {value} from field type {field_type} on assistant {assistant}.
Remove entry {value} under {field_type} in {assistant}.
GET /understand/Assistants/{AssistantSid}/FieldTypes/{FieldTypeSid}/FieldValues List the values of a field type · List understand field value #
Ask an LLM
“What entries and synonyms make up one of my custom field types?”
“Can I list only the Spanish values of a field type?”
Tell an agent
List the values of field type {field_type} on assistant {assistant}.
Show {language} values for field type {field_type} in {assistant}.
POST /understand/Assistants/{AssistantSid}/FieldTypes/{FieldTypeSid}/FieldValues Add a value or synonym to a field type · Create understand field value #
Ask an LLM
“How do I add a new product name to a custom field type?”
“Can I register a synonym so two words map to the same field value?”
Tell an agent
Add {value} in {language} to field type {field_type} on assistant {assistant}.
Add {value} ({language}) as a synonym of {synonym_of} in field type {field_type} for {assistant}.
GET /understand/Assistants/{AssistantSid}/ModelBuilds/{Sid} Check a model build · Fetch understand model build #
Ask an LLM
“Has my assistant's latest model build finished training?”
“Can I see the status of one model build by SID?”
Tell an agent
Show model build {build} for assistant {assistant}.
Check whether build {build} of {assistant} is completed.
POST /understand/Assistants/{AssistantSid}/ModelBuilds/{Sid} Rename a model build · Update understand model build #
Ask an LLM
“Can I give an existing model build a new unique name, like a version tag?”
“Is it possible to relabel a build after it was created?”
Tell an agent
Rename model build {build} on assistant {assistant} to {name}.
Tag existing build {build} of {assistant} as {name}.
DELETE /understand/Assistants/{AssistantSid}/ModelBuilds/{Sid} Delete a model build · Delete understand model build #
Ask an LLM
“How do I clean up old model builds for my assistant?”
“Can I delete one outdated model build?”
Tell an agent destructive · confirm first
Delete model build {build} from assistant {assistant}.
Remove the old build {build} of {assistant}.
GET /understand/Assistants/{AssistantSid}/ModelBuilds List an assistant's model builds · List understand model build #
Ask an LLM
“Which model builds have been trained for my assistant?”
“What is the build history of an assistant?”
Tell an agent
List the model builds for assistant {assistant}.
Show every training build of {assistant}.
POST /understand/Assistants/{AssistantSid}/ModelBuilds Train a new model build · Create understand model build #
Ask an LLM
“How do I retrain my assistant after adding new samples?”
“Can I get a callback when a model build finishes training?”
Tell an agent
Start a new model build for assistant {assistant}.
Train {assistant} as build {name} and notify {callback} when done.
GET /understand/Assistants/{AssistantSid}/Queries/{Sid} View one query sent to an assistant · Fetch understand query #
Ask an LLM
“Which task did my assistant match for a particular query?”
“Can I look up one logged query by its SID?”
Tell an agent
Show query {query} on assistant {assistant}.
Get the matched task and fields for query {query} in {assistant}.
POST /understand/Assistants/{AssistantSid}/Queries/{Sid} Review or discard a logged query · Update understand query #
Ask an LLM
“Can I mark a logged query as reviewed after checking it?”
“Can a query be linked to the sample I created from it?”
Tell an agent
Set the status of query {query} on assistant {assistant} to {status}.
Link query {query} in {assistant} to sample {sample}.
DELETE /understand/Assistants/{AssistantSid}/Queries/{Sid} Delete a logged query · Delete understand query #
Ask an LLM
“How do I delete a stored user query from my assistant's logs?”
“Can I remove one query that contains something sensitive?”
Tell an agent destructive · confirm first
Delete query {query} from assistant {assistant}.
Remove logged query {query} in {assistant}.
GET /understand/Assistants/{AssistantSid}/Queries List queries an assistant received · List understand query #
Ask an LLM
“Which user queries are still pending review for my assistant?”
“Can I see the queries answered by one specific model build?”
Tell an agent
List queries on assistant {assistant} with status {status}.
Show {language} queries handled by build {build} in {assistant}.
POST /understand/Assistants/{AssistantSid}/Queries Test what an assistant understands from a phrase · Create understand query #
Ask an LLM
“What task would my assistant pick for a sentence a user might say?”
“Can I test a phrase against only a few tasks or a single field?”
Tell an agent
Ask assistant {assistant} to interpret {text} in {language}.
Test {text} ({language}) on {assistant} limited to tasks {tasks}.
GET /understand/Assistants/{AssistantSid}/Tasks/{TaskSid}/Samples/{Sid} View a training sample · Fetch understand sample #
Ask an LLM
“What tagged text and channel does one training sample have?”
“Can I look up a single sample by its SID?”
Tell an agent
Show sample {sample} on task {task} of assistant {assistant}.
Get the tagged text of sample {sample} in {task} for {assistant}.
POST /understand/Assistants/{AssistantSid}/Tasks/{TaskSid}/Samples/{Sid} Edit a training sample · Update understand sample #
Ask an LLM
“Can I fix the wording or field tags of a sample I already added?”
“Is it possible to change the channel an existing sample came from?”
Tell an agent
Change the text of sample {sample} on task {task} in {assistant} to {tagged_text}.
Set the source channel of existing sample {sample} in {task} for {assistant} to {channel}.
DELETE /understand/Assistants/{AssistantSid}/Tasks/{TaskSid}/Samples/{Sid} Delete a training sample · Delete understand sample #
Ask an LLM
“How do I remove a bad training sample that confuses my assistant?”
“Can I delete one sample from a task?”
Tell an agent destructive · confirm first
Delete sample {sample} from task {task} on assistant {assistant}.
Remove training sample {sample} in {task} for {assistant}.
GET /understand/Assistants/{AssistantSid}/Tasks/{TaskSid}/Samples List a task's training samples · List understand sample #
Ask an LLM
“What example phrases is a task trained on?”
“Can I list only the French samples for a task?”
Tell an agent
List the samples for task {task} on assistant {assistant}.
Show {language} training samples of task {task} in {assistant}.
POST /understand/Assistants/{AssistantSid}/Tasks/{TaskSid}/Samples Add a training sample to a task · Create understand sample #
Ask an LLM
“How do I teach a task a new way users might phrase a request?”
“Can I tag field values inside a sample's text?”
Tell an agent
Add sample {tagged_text} in {language} to task {task} on assistant {assistant}.
Train task {task} in {assistant} with the {channel} phrase {tagged_text} ({language}).
GET /understand/Assistants/{AssistantSid}/StyleSheet View an assistant's style sheet · Fetch understand style sheet #
Ask an LLM
“What voice and style settings does my assistant's style sheet define?”
“Can I read the style sheet JSON for an assistant?”
Tell an agent
Show the style sheet for assistant {assistant}.
Get the style sheet JSON of {assistant}.
POST /understand/Assistants/{AssistantSid}/StyleSheet Replace an assistant's style sheet · Update understand style sheet #
Ask an LLM
“How do I change the voice my assistant uses through its style sheet?”
“Can I update only the style sheet without editing other assistant settings?”
Tell an agent
Set the style sheet of assistant {assistant} to {style_sheet}.
Replace the style sheet on {assistant} with {style_sheet}.
GET /understand/Assistants/{AssistantSid}/Tasks/{Sid} View a task · Fetch understand task #
Ask an LLM
“What is a task's unique name and where do its actions come from?”
“Can I look up one assistant task by SID?”
Tell an agent
Show task {task} on assistant {assistant}.
Get the name and actions URL of task {task} in {assistant}.
POST /understand/Assistants/{AssistantSid}/Tasks/{Sid} Rename a task or change its actions URL · Update understand task #
Ask an LLM
“Can I point an existing task at a different URL that serves its actions?”
“Is renaming a task possible after it's been trained?”
Tell an agent
Rename task {task} on assistant {assistant} to {name}.
Point task {task} in {assistant} at actions URL {actions_url}.
DELETE /understand/Assistants/{AssistantSid}/Tasks/{Sid} Delete a task · Delete understand task #
Ask an LLM
“How do I remove a task my assistant no longer handles?”
“Can I delete a task along with its samples and fields?”
Tell an agent destructive · confirm first
Delete task {task} from assistant {assistant}.
Remove the unused task {task} in {assistant}.
GET /understand/Assistants/{AssistantSid}/Tasks List an assistant's tasks · List understand task #
Ask an LLM
“Which tasks can my assistant recognize?”
“What intents is my assistant set up to handle?”
Tell an agent
List the tasks on assistant {assistant}.
Show every task defined in {assistant}.
POST /understand/Assistants/{AssistantSid}/Tasks Create a task for an assistant · Create understand task #
Ask an LLM
“How do I add a new thing my assistant can do, like booking an appointment?”
“Can I give a new task its actions inline or from a URL?”
Tell an agent
Create task {name} on assistant {assistant}.
Add task {name} to {assistant} with actions served from {actions_url}.
GET /understand/Assistants/{AssistantSid}/Tasks/{TaskSid}/Actions View a task's actions · Fetch understand task actions #
Ask an LLM
“What does my assistant do once a task is matched?”
“Can I read the actions JSON of a single task?”
Tell an agent
Show the actions for task {task} on assistant {assistant}.
Get the actions JSON of task {task} in {assistant}.
POST /understand/Assistants/{AssistantSid}/Tasks/{TaskSid}/Actions Replace a task's actions · Update understand task actions #
Ask an LLM
“How do I change what the assistant says or does when a task fires?”
“Can I update only a task's actions JSON without touching its name?”
Tell an agent
Set the actions of task {task} on assistant {assistant} to {actions}.
Replace the actions JSON of task {task} in {assistant} with {actions}.
GET /understand/Assistants/{AssistantSid}/Tasks/{TaskSid}/Statistics Get sample and field counts for a task · Fetch understand task statistics #
Ask an LLM
“Does a task have enough training samples yet?”
“Can I see how many samples and fields a task has?”
Tell an agent
Show the statistics for task {task} on assistant {assistant}.
Count the samples and fields of task {task} in {assistant}.

Documentation

Specifications

Other Resources

Work with this as data

Every API here is available over the APIs.io API and to AI agents over MCP.

MCP server

One button, every client — Claude, Cursor, VS Code and the rest.

https://apis.io/mcp

Tools for apis

7 MCP tools reach this
  • find_apisBrowse and filter every API in the catalog.
  • get_api_artifactsOne API's artifacts, grouped by type.
  • get_openapiThe primary OpenAPI for this API.
  • find_similar_apisAPIs that look like this one.
  • apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.
  • resolveTurn a domain, URL or GitHub org into the provider it belongs to.
  • find_cohortsEvery scored population of providers in the catalog.
All 92 tools →

Call it yourself

curl for this page
This API
curl "https://apis.io/api/v1/apis/twilio-understand-api"
All apis
curl "https://apis.io/api/v1/apis?limit=25"

Discovery needs no key. Ratings and market analysis are Pro.

Get an API key

Free tier, no form to fill in. Signing in shares your email address with us — we store it to create your key and to recognise you if you sign in with another provider. See our Privacy Policy and Terms.

A second provider on the same verified email joins the account you already have.

OpenAPI Specification

twilio-understand-api-openapi.yml Raw ↑
openapi: 3.2.0
info:
  title: Twilio Assistants Understand API
  description: Needs description.
  termsOfService: https://www.twilio.com/legal/tos
  contact:
    name: Twilio Support
    url: https://support.twilio.com
    email: support@twilio.com
  license:
    name: Apache 2.0
    url: https://www.apache.org/licenses/LICENSE-2.0.html
  version: 1.52.0
servers:
- url: https://preview.twilio.com
tags:


# --- truncated at 32 KB (86 KB total) ---
# Full source: https://raw.githubusercontent.com/api-evangelist/twilio/refs/heads/main/openapi/twilio-understand-api-openapi.yml