Twilio Intelligence API
Voice Intelligence API empowers you to analyze and extract actionable business intelligence from the conversations that take place every day between your customers and your agents.
Voice Intelligence API empowers you to analyze and extract actionable business intelligence from the conversations that take place every day between your customers and your agents.
components:
schemas:
intelligence.v2.transcript.media:
type: object
properties:
account_sid:
type: string
minLength: 34
maxLength: 34
pattern: ^AC[0-9a-fA-F]{32}$
nullable: true
description: The unique SID identifier of the Account.
media_url:
type: string
format: uri
nullable: true
description: Downloadable URL for media, if stored in Twilio AI.
service_sid:
type: string
minLength: 34
maxLength: 34
pattern: ^GA[0-9a-fA-F]{32}$
nullable: true
description: The unique SID identifier of the Service.
sid:
type: string
minLength: 34
maxLength: 34
pattern: ^GT[0-9a-fA-F]{32}$
nullable: true
description: The unique SID identifier of the Transcript.
url:
type: string
format: uri
nullable: true
description: The URL of this resource.
intelligence.v2.transcript.operator_result:
type: object
properties:
operator_type:
type: string
$ref: '#/components/schemas/operator_result_enum_operator_type'
nullable: true
description: >-
The type of the applied Language Understanding Operator. One of
conversation-classify, utterance-classify, extract,
extract-normalize, or pii-extract
name:
type: string
nullable: true
description: The name of the applied Language Understanding.
operator_sid:
type: string
minLength: 34
maxLength: 34
pattern: ^LY[0-9a-fA-F]{32}$
nullable: true
description: >-
A 34 character string that identifies this Language Understanding
operator sid.
extract_match:
type: boolean
nullable: true
description: >-
Boolean to tell if extract Language Understanding Processing model
matches results.
match_probability:
type: number
nullable: true
description: Percentage of 'matching' class needed to consider a sentence matches
normalized_result:
type: string
nullable: true
description: Normalized output of extraction stage which matches Label.
utterance_results:
type: array
items: {}
nullable: true
description: List of mapped utterance object which matches sentences.
utterance_match:
type: boolean
nullable: true
description: Boolean to tell if Utterance matches results.
predicted_label:
type: string
nullable: true
description: >-
The 'matching' class. This might be available on conversation
classify model outputs.
predicted_probability:
type: number
nullable: true
description: >-
Percentage of 'matching' class needed to consider a sentence
matches.
label_probabilities:
nullable: true
description: >-
The labels probabilities. This might be available on conversation
classify model outputs.
extract_results:
nullable: true
description: >-
List of text extraction results. This might be available on
classify-extract model outputs.
text_generation_results:
nullable: true
description: >-
Output of a text generation operator for example Conversation
Sumamary.
transcript_sid:
type: string
minLength: 34
maxLength: 34
pattern: ^GT[0-9a-fA-F]{32}$
nullable: true
description: A 34 character string that uniquely identifies this Transcript.
url:
type: string
format: uri
nullable: true
description: The URL of this resource.
operator_result_enum_operator_type:
type: string
enum:
- conversation_classify
- utterance_classify
- extract
- extract_normalize
- pii_extract
intelligence.v2.transcript.sentence:
type: object
properties:
media_channel:
type: integer
nullable: true
description: The channel number.
sentence_index:
type: integer
nullable: true
description: The index of the sentence in the transcript.
start_time:
type: number
nullable: true
description: >-
Offset from the beginning of the transcript when this sentence
starts.
end_time:
type: number
nullable: true
description: Offset from the beginning of the transcript when this sentence ends.
transcript:
type: string
nullable: true
description: Transcript text.
x-twilio:
pii:
handling: sensitive
deleteSla: 30
sid:
type: string
minLength: 34
maxLength: 34
pattern: ^GX[0-9a-fA-F]{32}$
nullable: true
description: A 34 character string that uniquely identifies this Sentence.
confidence:
type: number
nullable: true
intelligence.v2.service:
type: object
properties:
account_sid:
type: string
minLength: 34
maxLength: 34
pattern: ^AC[0-9a-fA-F]{32}$
nullable: true
description: The unique SID identifier of the Account the Service belongs to.
auto_redaction:
type: boolean
nullable: true
description: >-
Instructs the Speech Recognition service to automatically redact PII
from all transcripts made on this service.
media_redaction:
type: boolean
nullable: true
description: >-
Instructs the Speech Recognition service to automatically redact PII
from all transcripts media made on this service. The auto_redaction
flag must be enabled, results in error otherwise.
auto_transcribe:
type: boolean
nullable: true
description: >-
Instructs the Speech Recognition service to automatically transcribe
all recordings made on the account.
data_logging:
type: boolean
nullable: true
description: >-
Data logging allows Twilio to improve the quality of the speech
recognition & language understanding services through using customer
data to refine, fine tune and evaluate machine learning models.
Note: Data logging cannot be activated via API, only via
www.twilio.com, as it requires additional consent.
date_created:
type: string
format: date-time
nullable: true
description: The date that this Service was created, given in ISO 8601 format.
date_updated:
type: string
format: date-time
nullable: true
description: The date that this Service was updated, given in ISO 8601 format.
friendly_name:
type: string
nullable: true
description: A human readable description of this resource, up to 64 characters.
language_code:
type: string
nullable: true
description: The default language code of the audio.
sid:
type: string
nullable: true
description: A 34 character string that uniquely identifies this Service.
unique_name:
type: string
nullable: true
description: >-
Provides a unique and addressable name to be assigned to this
Service, assigned by the developer, to be optionally used in
addition to SID.
url:
type: string
format: uri
nullable: true
description: The URL of this resource.
webhook_url:
type: string
nullable: true
description: The URL Twilio will request when executing the Webhook.
webhook_http_method:
type: string
$ref: '#/components/schemas/service_enum_http_method'
nullable: true
description: The HTTP method for the Webhook. One of `GET` or `POST`.
version:
type: integer
nullable: true
description: The version number of this Service.
service_enum_http_method:
type: string
enum:
- GET
- POST
- 'NULL'
intelligence.v2.transcript:
type: object
properties:
account_sid:
type: string
minLength: 34
maxLength: 34
pattern: ^AC[0-9a-fA-F]{32}$
nullable: true
description: The unique SID identifier of the Account.
service_sid:
type: string
minLength: 34
maxLength: 34
pattern: ^GA[0-9a-fA-F]{32}$
nullable: true
description: The unique SID identifier of the Service.
sid:
type: string
minLength: 34
maxLength: 34
pattern: ^GT[0-9a-fA-F]{32}$
nullable: true
description: A 34 character string that uniquely identifies this Transcript.
date_created:
type: string
format: date-time
nullable: true
description: The date that this Transcript was created, given in ISO 8601 format.
date_updated:
type: string
format: date-time
nullable: true
description: The date that this Transcript was updated, given in ISO 8601 format.
status:
type: string
$ref: '#/components/schemas/transcript_enum_status'
nullable: true
description: >-
The Status of this Transcript. One of `queued`, `in-progress`,
`completed`, `failed` or `canceled`.
channel:
nullable: true
description: Media Channel describing Transcript Source and Participant Mapping
data_logging:
type: boolean
nullable: true
description: >-
Data logging allows Twilio to improve the quality of the speech
recognition & language understanding services through using customer
data to refine, fine tune and evaluate machine learning models.
Note: Data logging cannot be activated via API, only via
www.twilio.com, as it requires additional consent.
language_code:
type: string
nullable: true
description: The default language code of the audio.
customer_key:
type: string
nullable: true
media_start_time:
type: string
format: date-time
nullable: true
description: >-
The date that this Transcript's media was started, given in ISO 8601
format.
duration:
type: integer
nullable: true
description: The duration of this Transcript's source
url:
type: string
format: uri
nullable: true
description: The URL of this resource.
redaction:
type: boolean
nullable: true
description: >-
If the transcript has been redacted, a redacted alternative of the
transcript will be available.
links:
type: object
format: uri-map
nullable: true
transcript_enum_status:
type: string
enum:
- queued
- in-progress
- completed
- failed
- canceled
transcript_enum_call_direction:
type: string
enum:
- inbound
- outbound
- internal
- unknown
ListOperatorResultResponse:
type: object
properties:
operator_results:
type: array
items:
$ref: '#/components/schemas/intelligence.v2.transcript.operator_result'
meta:
type: object
properties:
first_page_url:
type: string
format: uri
next_page_url:
type: string
format: uri
nullable: true
page:
type: integer
page_size:
type: integer
previous_page_url:
type: string
format: uri
nullable: true
url:
type: string
format: uri
key:
type: string
ListSentenceResponse:
type: object
properties:
sentences:
type: array
items:
$ref: '#/components/schemas/intelligence.v2.transcript.sentence'
meta:
type: object
properties:
first_page_url:
type: string
format: uri
next_page_url:
type: string
format: uri
nullable: true
page:
type: integer
page_size:
type: integer
previous_page_url:
type: string
format: uri
nullable: true
url:
type: string
format: uri
key:
type: string
CreateServiceRequest:
type: object
required:
- UniqueName
properties:
UniqueName:
type: string
description: >-
Provides a unique and addressable name to be assigned to this
Service, assigned by the developer, to be optionally used in
addition to SID.
AutoTranscribe:
type: boolean
description: >-
Instructs the Speech Recognition service to automatically transcribe
all recordings made on the account.
DataLogging:
type: boolean
description: >-
Data logging allows Twilio to improve the quality of the speech
recognition & language understanding services through using customer
data to refine, fine tune and evaluate machine learning models.
Note: Data logging cannot be activated via API, only via
www.twilio.com, as it requires additional consent.
FriendlyName:
type: string
description: A human readable description of this resource, up to 64 characters.
LanguageCode:
type: string
description: The default language code of the audio.
AutoRedaction:
type: boolean
description: >-
Instructs the Speech Recognition service to automatically redact PII
from all transcripts made on this service.
MediaRedaction:
type: boolean
description: >-
Instructs the Speech Recognition service to automatically redact PII
from all transcripts media made on this service. The auto_redaction
flag must be enabled, results in error otherwise.
WebhookUrl:
type: string
description: The URL Twilio will request when executing the Webhook.
WebhookHttpMethod:
type: string
$ref: '#/components/schemas/service_enum_http_method'
description: The HTTP method for the Webhook. One of `GET` or `POST`.
ListServiceResponse:
type: object
properties:
services:
type: array
items:
$ref: '#/components/schemas/intelligence.v2.service'
meta:
type: object
properties:
first_page_url:
type: string
format: uri
next_page_url:
type: string
format: uri
nullable: true
page:
type: integer
page_size:
type: integer
previous_page_url:
type: string
format: uri
nullable: true
url:
type: string
format: uri
key:
type: string
UpdateServiceRequest:
type: object
properties:
AutoTranscribe:
type: boolean
description: >-
Instructs the Speech Recognition service to automatically transcribe
all recordings made on the account.
DataLogging:
type: boolean
description: >-
Data logging allows Twilio to improve the quality of the speech
recognition & language understanding services through using customer
data to refine, fine tune and evaluate machine learning models.
Note: Data logging cannot be activated via API, only via
www.twilio.com, as it requires additional consent.
FriendlyName:
type: string
description: A human readable description of this resource, up to 64 characters.
LanguageCode:
type: string
description: The default language code of the audio.
UniqueName:
type: string
description: >-
Provides a unique and addressable name to be assigned to this
Service, assigned by the developer, to be optionally used in
addition to SID.
AutoRedaction:
type: boolean
description: >-
Instructs the Speech Recognition service to automatically redact PII
from all transcripts made on this service.
MediaRedaction:
type: boolean
description: >-
Instructs the Speech Recognition service to automatically redact PII
from all transcripts media made on this service. The auto_redaction
flag must be enabled, results in error otherwise.
WebhookUrl:
type: string
description: The URL Twilio will request when executing the Webhook.
WebhookHttpMethod:
type: string
$ref: '#/components/schemas/service_enum_http_method'
description: The HTTP method for the Webhook. One of `GET` or `POST`.
CreateTranscriptRequest:
type: object
required:
- ServiceSid
- Channel
properties:
ServiceSid:
type: string
minLength: 34
maxLength: 34
pattern: ^GA[0-9a-fA-F]{32}$
description: The unique SID identifier of the Service.
Channel:
description: >-
JSON object describing Media Channel including Source and
Participants
CustomerKey:
type: string
description: >-
Used to store client provided metadata. Maximum of 64 double-byte
UTF8 characters.
MediaStartTime:
type: string
format: date-time
description: >-
The date that this Transcript's media was started, given in ISO 8601
format.
ListTranscriptResponse:
type: object
properties:
transcripts:
type: array
items:
$ref: '#/components/schemas/intelligence.v2.transcript'
meta:
type: object
properties:
first_page_url:
type: string
format: uri
next_page_url:
type: string
format: uri
nullable: true
page:
type: integer
page_size:
type: integer
previous_page_url:
type: string
format: uri
nullable: true
url:
type: string
format: uri
key:
type: string
securitySchemes:
accountSid_authToken:
type: http
scheme: basic
info:
title: Twilio - Intelligence
description: This is the public Twilio REST API.
termsOfService: https://www.twilio.com/legal/tos
contact:
name: Twilio Support
url: https://support.twilio.com
email: [email protected]
license:
name: Apache 2.0
url: https://www.apache.org/licenses/LICENSE-2.0.html
version: 1.52.0
openapi: 3.0.1
paths:
/v2/Transcripts/{Sid}/Media:
servers:
- url: https://intelligence.twilio.com
description: 'TODO: Resource-level docs'
x-twilio:
defaultOutputProperties:
- account_sid
- service_sid
- sid
pathType: instance
parent: /Transcripts/{Sid}
get:
description: Get download URLs for media if possible
tags:
- Transcripts
parameters:
- name: Sid
in: path
description: The unique SID identifier of the Transcript.
schema:
type: string
minLength: 34
maxLength: 34
pattern: ^GT[0-9a-fA-F]{32}$
required: true
- name: Redacted
in: query
description: >-
Grant access to PII Redacted/Unredacted Media. If redaction is
enabled, the default is `true` to access redacted media.
schema:
type: boolean
responses:
'200':
content:
application/json:
schema:
$ref: '#/components/schemas/intelligence.v2.transcript.media'
description: OK
security:
- accountSid_authToken: []
operationId: FetchMedia
x-maturity:
- Beta
/v2/Transcripts/{TranscriptSid}/OperatorResults:
servers:
- url: https://intelligence.twilio.com
description: 'TODO: Resource-level docs'
x-twilio:
defaultOutputProperties:
- operator_sid
pathType: list
parent: /Transcripts/{Sid}
get:
description: Retrieve a list of Operator Results for the given Transcript.
tags:
- Transcripts
parameters:
- name: TranscriptSid
in: path
description: A 34 character string that uniquely identifies this Transcript.
schema:
type: string
minLength: 34
maxLength: 34
pattern: ^GT[0-9a-fA-F]{32}$
required: true
- name: Redacted
in: query
description: >-
Grant access to PII redacted/unredacted Language Understanding
operator. If redaction is enabled, the default is True.
schema:
type: boolean
- name: PageSize
in: query
description: >-
How many resources to return in each list page. The default is 50,
and the maximum is 1000.
schema:
type: integer
minimum: 1
maximum: 1000
- name: Page
in: query
description: The page index. This value is simply for client state.
schema:
type: integer
minimum: 0
- name: PageToken
in: query
description: The page token. This is provided by the API.
schema:
type: string
responses:
'200':
content:
application/json:
schema:
$ref: '#/components/schemas/ListOperatorResultResponse'
description: OK
security:
- accountSid_authToken: []
operationId: ListOperatorResult
x-maturity:
- Beta
/v2/Transcripts/{TranscriptSid}/OperatorResults/{OperatorSid}:
servers:
- url: https://intelligence.twilio.com
description: 'TODO: Resource-level docs'
x-twilio:
defaultOutputProperties:
- operator_sid
pathType: instance
parent: /Transcripts/{Sid}
get:
description: Fetch a specific Operator Result for the given Transcript.
tags:
- Transcripts
parameters:
- name: TranscriptSid
in: path
description: A 34 character string that uniquely identifies this Transcript.
schema:
type: string
minLength: 34
maxLength: 34
pattern: ^GT[0-9a-fA-F]{32}$
required: true
- name: OperatorSid
in: path
description: >-
A 34 character string that identifies this Language Understanding
operator sid.
schema:
type: string
minLength: 34
maxLength: 34
pattern: ^LY[0-9a-fA-F]{32}$
required: true
- name: Redacted
in: query
description: >-
Grant access to PII redacted/unredacted Language Understanding
operator. If redaction is enabled, the default is True.
schema:
type: boolean
responses:
'200':
content:
application/json:
schema:
$ref: >-
#/components/schemas/intelligence.v2.transcript.operator_result
description: OK
security:
- accountSid_authToken: []
operationId: FetchOperatorResult
x-maturity:
- Beta
/v2/Transcripts/{TranscriptSid}/Sentences:
servers:
- url: https://intelligence.twilio.com
description: 'TODO: Resource-level docs'
x-twilio:
defaultOutputProperties:
- sid
- media_channel
- sentence_index
- transcript
- start_time
- end_time
- confidence
pathType: list
parent: /Transcripts/{Sid}
get:
description: Get all Transcript Sentences by TranscriptSid
tags:
- Transcripts
parameters:
- name: TranscriptSid
in: path
description: The unique SID identifier of the Transcript.
schema:
type: string
minLength: 34
maxLength: 34
pattern: ^GT[0-9a-fA-F]{32}$
required: true
- name: Redacted
in: query
description: >-
Grant access to PII Redacted/Unredacted Sentences. If redaction is
enabled, the default is `true` to access redacted sentences.
schema:
type: boolean
- name: PageSize
in: query
description: >-
How many resources to return in each list page. The default is 50,
and the maximum is 1000.
schema:
type: integer
minimum: 1
maximum: 1000
- name: Page
in: query
description: The page index. This value is simply for client state.
schema:
type: integer
minimum: 0
- name: PageToken
in: query
description: The page token. This is provided by the API.
schema:
type: string
responses:
'200':
content:
application/json:
schema:
$ref: '#/components/schemas/ListSentenceResponse'
description: OK
security:
- accountSid_authToken: []
operationId: ListSentence
x-maturity:
- Beta
/v2/Services:
servers:
- url: https://intelligence.twilio.com
description: 'TODO: Resource-level docs'
x-twilio:
defaultOutputProperties:
- sid
- unique_name
- friendly_name
- language_code
- date_created
- version
pathType: list
post:
description: Create a new Service for the given Account
tags:
- Services
responses:
'201':
content:
application/json:
schema:
$ref: '#/components/schemas/intelligence.v2.service'
description: Created
security:
- accountSid_authToken: []
operationId: CreateService
x-maturity:
- Beta
requestBody:
content:
application/x-www-form-urlencoded:
schema:
$ref: '#/components/schemas/CreateServiceRequest'
get:
description: Retrieves a list of all Services for an account.
tags:
- Services
parameters:
- name: PageSize
in: query
description: >-
How many resources to return in each list page. The default is 50,
and the maximum is 1000.
schema:
type: integer
minimum: 1
maximum: 1000
- name: Page
in: query
description: The page index. This value is simply for client state.
schema:
type: integer
minimum: 0
- name: PageToken
in: query
description: The page token. This is provided by the API.
schema:
type: string
responses:
'200':
content:
application/json:
schema:
$ref: '#/components/schemas/ListServiceResponse'
description: OK
security:
- accountSid_authToken: []
operationId: ListService
x-maturity:
- Beta
/v2/Services/{Sid}:
servers:
- url: https://intelligence.twilio.com
description: 'TODO: Resource-level docs'
x-twilio:
defaultOutputProperties:
- sid
- unique_name
- friendly_name
- language_code
- date_created
- version
pathType: instance
delete:
description: Delete a specific Service.
tags:
- Services
parameters:
- name: Sid
in: path
description: A 34 character string that uniquely identifies this Service.
schema:
type: string
required: true
responses:
'204':
description: The resource was deleted successfully.
security:
- accountSid_authToken: []
operationId: DeleteService
x-maturity:
- Beta
get:
description: Fetch a specific Service.
tags:
- Services
parameters:
- name: Sid
in: path
description: A 34 character string that uniquely identifies this Service.
schema:
type: string
required: true
responses:
'200':
content:
application/json:
schema:
$ref: '#/components/schemas/intelligence.v2.service'
description: OK
security:
- accountSid_authToken: []
operationId: FetchService
x-maturity:
- Beta
post:
description: Update a specific Service.
tags:
- Services
parameters:
- name: Sid
in: path
description: A 34 character string that uniquely identifies this Service.
schema:
type: string
required: true
- name: If-Match
in: header
description: The If-Match HTTP request header
schema:
type: string
responses:
'200':
content:
application/json:
schema:
$ref: '#/components/schemas/intelligence.v2.service'
description: OK
security:
- accountSid_authToken: []
operationId: UpdateService
x-maturity:
- Beta
requestBody:
content:
application/x-www-form-urlencoded:
schema:
$ref: '#/components/schemas/UpdateServiceRequest'
/v2/Transcripts:
servers:
- url: https://intelligence.twilio.com
description: 'TODO: Resource-level docs'
x-twilio:
defaultOutputProperties:
- sid
- date_created
- media_start_time
- duration
- status
pathType: list
dependentProperties:
sentences:
mapping:
transcript_sid: sid
resource_url: /v2/Transcripts/{transcript_sid}/Sentences
media:
mapping:
sid: sid
resource_url: /v2None
operator_results:
mapping:
transcript_sid: sid
resource_url: /v2/Transcripts/{transcript_sid}/OperatorResults
post:
description: Create a new Transcript for the service
tags:
- Transcripts
responses:
'202':
content:
application/json:
schema:
$ref: '#/components/schemas/intelligence.v2.transcript'
desc
# --- truncated at 32 KB (36 KB total) ---
# Full source: https://raw.githubusercontent.com/api-evangelist/twilio/refs/heads/main/openapi/intelligence-openapi-original.yml