Real-Time Transcriptions, including the <Transcriptions>
TwiML noun and API, use artificial intelligence or machine learning technologies. By enabling or using any of the features or functionalities within Programmable Voice that are identified as using artificial intelligence or machine learning technology, you acknowledge and agree that your use of these features or functionalities is subject to the terms of the Predictive and Generative AI/ML Features Addendum.
Real-Time Transcriptions is not PCI compliant or a HIPAA Eligible Service and should not be used in Voice Intelligence workflows that are subject to HIPAA or PCI.
Real-Time Transcription is currently available as a Public Beta product and information contained in this document is subject to change. This means that some of the features are not yet implemented and others may be changed before the product is declared as Generally Available. Public Beta products are not covered by a Twilio Service Level Agreement.
The RealtimeTranscription resource represents a live audio transcription during a live call. You can start and stop a RealtimeTranscription on any in-progress call via API or via the <Transcription> TwiML Noun.
To start a Real-Time Transcription on a live call, you create a RealtimeTranscription resource.
To stop the Real-Time Transcription, you update the RealtimeTranscription resource's status.
The SID of the Transcription resource.
^GT[0-9a-fA-F]{32}$
Min length: 34
Max length: 34
The SID of the Account that created this Transcription resource.
^AC[0-9a-fA-F]{32}$
Min length: 34
Max length: 34
The SID of the Call the Transcription resource is associated with.
^CA[0-9a-fA-F]{32}$
Min length: 34
Max length: 34
The user-specified name of this Transcription, if one was given when the Transcription was created. This may be used to stop the Transcription.
The status - one of stopped
, in-flight
in-progress
stopped
The date and time in GMT that this resource was last updated, specified in RFC 2822 format.
POST https://api.twilio.com/2010-04-01/Accounts/{AccountSid}/Calls/{CallSid}/Transcriptions.json
The SID of the Account that created this Transcription resource.
^AC[0-9a-fA-F]{32}$
Min length: 34
Max length: 34
application/x-www-form-urlencoded
The user-specified name of this Transcription, if one was given when the Transcription was created. This may be used to stop the Transcription.
One of inbound_track
, outbound_track
, both_tracks
.
inbound_track
outbound_track
both_tracks
The http method for the status_callback (one of GET, POST).
GET
POST
Indicates if partial results are going to be sent to the customer
Language code used by the transcription engine, specified in BCP-47 format
Definition of the transcription engine to be used, among those supported by Twilio
indicates if the server will attempt to filter out profanities, replacing all but the initial character in each filtered word with asterisks
Recognition model used by the transcription engine, among those supported by the provider
A Phrase contains words and phrase "hints" so that the speech recognition engine is more likely to recognize them.
The provider will add punctuation to recognition result
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 createRealtimeTranscription() {11const transcription = await client12.calls("CAaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa")13.transcriptions.create();1415console.log(transcription.sid);16}1718createRealtimeTranscription();
1{2"account_sid": "ACaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa",3"call_sid": "CAaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa",4"sid": "GTaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa",5"name": null,6"status": "in-progress",7"date_updated": "Thu, 30 Jul 2015 20:00:00 +0000",8"uri": "/2010-04-01/Accounts/ACaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa/Calls/CAaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa/Transcriptions/GTaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa.json"9}
POST https://api.twilio.com/2010-04-01/Accounts/{AccountSid}/Calls/{CallSid}/Transcriptions/{Sid}.json
The SID of the Account that created this Transcription resource.
^AC[0-9a-fA-F]{32}$
Min length: 34
Max length: 34
The SID of the Call the Transcription resource is associated with.
^CA[0-9a-fA-F]{32}$
Min length: 34
Max length: 34
The SID of the Transcription resource, or the name
used when creating the resource
application/x-www-form-urlencoded
The status. Must have the value stopped
stopped
You can stop an in-progress Real-Time Transcription by updating the status
to stopped
. You can also use TwiML to stop a Real-Time Transcription.
When making this request, you can use the RealtimeTranscription resource's SID or the name
(if one was given when the Real-Time Transcription was created).
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 updateRealtimeTranscription() {11const transcription = await client12.calls("CAaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa")13.transcriptions("GTaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa")14.update({ status: "stopped" });1516console.log(transcription.sid);17}1819updateRealtimeTranscription();
1{2"account_sid": "ACaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa",3"call_sid": "CAaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa",4"sid": "GTaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa",5"name": null,6"status": "stopped",7"date_updated": "Thu, 30 Jul 2015 20:00:00 +0000",8"uri": "/2010-04-01/Accounts/ACaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa/Calls/CAaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa/Transcriptions/GTaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa.json"9}
Real-Time Transcriptions, including <Transcriptions>
TwiML noun and API, uses third-party artificial technology and machine learning technologies.
Twilio's AI Nutrition Facts provide an overview of the AI feature you're using, so you can better understand how the AI is working with your data. Real-Time Transcriptions AI qualities are outlined in the following Speech to Text Transcriptions - Programmable Voice Nutrition Facts label. For more information and the glossary regarding the AI Nutrition Facts Label, please refer to Twilio's AI Nutrition Facts page.
Voice Intelligence and Programmable Voice only use the default Base Model provided by the Model Vendor. The Base Model is not trained using customer data.
Voice Intelligence and Programmable Voice only use the default Base Model provided by the Model Vendor. The Base Model is not trained using customer data.
Base Model is not trained using any customer data.
Transcriptions are deleted by the customer using the Voice Intelligence API or when a customer account is deprovisioned.
The customer views output in the Voice Intelligence API or Transcript Viewer.
Compliance
The customer can listen to the input (recording) and view the output (transcript).
The customer can listen to the input (recording) and view the output (transcript).
The customer is responsible for human review.
Learn more about this label at nutrition-facts.ai