Twilio Changelog

Additions and changes to the Twilio platform

Filter by:Clear all

Updates to your Super SIM’s status or Fleet are completed asynchronously. Its status first transitions to ‘scheduled’ while the update procedures complete at which point the status reaches the desired state (e.g. ‘active’).    

You can now provide a callback URL when making the update request using the Super SIM API. When the update finishes, we will send a HTTP request to the provided URL letting your application know that the update is finished.


To learn more about this new feature, see the documentation.


Make Super SIM API Calls with API Explorer Beta

Super SIM has been added to the API Explorer.  Use the API Explorer to test out Super SIM API calls from Console.  

You can use the API Explorer to perform actions that can currently only be done through the API, such as sending SMS Commands to your Super SIMs, from Console.


Programmable Voice

Voice Insights Subaccount Dashboard GA

Voice Insights Subaccount Dashboard provides an overview of subaccounts and the ability to identify those subaccounts which are performance outliers for common metrics including call volume, average length of call, answer ratio, post-dial delay, SIP responses, and more. 

The dashboard displays subaccount performance over defined time periods and can help shine a light on accounts disproportionately impacted by call quality and subjective user experience degradation.

Voice Insights Subaccount Dashboard provides multiple views of the data with export capability. Filtering is available for date range, time zone, account SIDs, and call volume percentiles. 

For more information see the documentation.


Control what notifications you receive from Twilio GA

You and your team can now control who receives what critical communications from Twilio.

Earlier, we were sending emails like developer updates and pricing changes to the account owner.
Now, we will let you decide what notifications you want to receive, through role based access control. 

As the Owner or Administrator of your account, you can customize which roles in your organization will receive each of these five types of Twilio notifications

  • Pricing Updates: Updates to product prices and rates
  • Regulatory and Compliance Alerts: Alerts on regulatory and compliance issues/requests
  • Developer Updates: Updates to Twilio APIs, helper libraries and other developer tools
  • Legal and Privacy Updates: Updates to our legal terms, such as a our Terms of Service or Privacy Notices
  • Security and Fraud Alerts: Warnings about active fraudulent attacks and potential security vulnerabilities

As the Developer, Billing Manager, or Support person, you can manage the notifications that the Owner or Administrator of your account has already opted you into. 

Start managing your notification preferences now.

Check out this blogpost to learn more about managing your notifications. 

Questions/Feedback? Reach out to asriram@twilio.com.


It is now possible to track the status of each message in a Conversation with the Delivery Receipts feature for the Conversations API.

The same statuses you rely on for your messaging functionality are now supported for the Conversations API, offering instant status updates like "sent" or "delivered" via REST API. These Receipts show detailed information on each message in a conversation, including the "read" status for WhatsApp.

Aggregated statuses are visible directly in the REST API Messages resource and you are able to see individual receipts by setting up a dedicated webhook or through the Receipts API resource. Direct SDK exposure is also to follow soon.

Check documentation and use-cases for more information!


Twilio Voice Client Mobile SDK  for Android and iOS  now have the CallerInfo object and TVOCallerInfo class to represent information about the caller. It can be used to display a trust indicator to the recipient when an incoming call, from the public telephone network, has been verified under the SHAKEN/STIR framework.

A verified call that has been given the highest attestation under SHAKEN/STIR means that the carrier that originated the call both (1) knows the identity of the caller, and (2) knows the caller has the right to use the phone number as the caller ID.

When your application receives a request webhook that has the new StirStatus parameter, all you have to do is <Dial><Client> and Twilio will implicitly pass the StirStatus to the Mobile Client.


Twilio SendGrid now provides two security features that allow you to verify that email event data is being posted by Twilio SendGrid: a Signed Event Webhook and OAuth 2.0. These security features are independent of one another and can be used together.

Twilio SendGrid’s Signed Event Webhook uses the Elliptic Curve Digital Signature Algorithm to sign requests. The signature allows customers to verify that event data is being posted by Twilio SendGrid.

OAuth 2.0 for the Twilio SendGrid Event Webhook allows customers to verify that Twilio SendGrid is properly authorized by them to post to their URLs using the Client Credentials grant type.

To learn more about these new features, visit our documentation.


We have updated all Flex projects that use Automatic Updates to Flex UI 1.20.

This release of Flex UI introduces image and file sharing for chat channels in Flex. Agents and webchat users can now share images, documents, and other files during a chat conversation. This is currently available as a Pilot feature. You can learn more about this feature and how to enable it within our documentation

Other notable features include:

  • Notification to signal connectivity issues: Users will now be notified if Flex UI has lost network connectivity and is trying to reconnect.
  • Initialization error page:  If Flex UI encounters an error during initialization, users will now see details of the error and they can download a report which will provide technical details for troubleshooting.
  • FlexError class:  Developers can use a new API to unify the experience when working with Flex exceptions.

For a full changelog, visit client libraries release notes:

Flex UI 1.20

Flex WebChat 2.5

Reminder: You can pin to individual versions of the Flex UI or manage your Automatic Updates within the Flex Admin UI.


Programmable Messaging

Twilio Edge Locations Available for Programmable Messaging & Notify GA

This release includes support for the expansion of Twilio’s Global Infrastructure via Edge Locations which allows connectivity control into and out of Twilio’s platform. These changes will provide an improved experience bringing Twilio’s public and private connectivity closer to your application. 

Note: All these changes are backward compatible and will not impact existing configurations. 

Programmable Messaging supports Edge Locations for connections to Twilio’s infrastructure via the Base URL in Twilio's API api.{edge}.us1.twilio.com.

Example

// eg: api.{edge}.us1.twilio.com

https://api.ashburn.us1.twilio.com/2010-04-01

Notify supports  Edge Locations for connections to Twilio’s infrastructure via the Notify Base URL in Twilio’s API notify.{edge}.us1.twilio.com. 

Example

//eg: notify.{edge}.us1.twilio.com

https://notify.ashburn.us1.twilio.com/2010-04-01

Click here to see the Edge Locations Blog Post and here for additional details on Edge Locations.


Programmable Voice

Twilio Edge Locations Available for Programmable Voice GA

This release includes support for the expansion of Twilio’s Global Infrastructure via Edge Locations which allows connectivity control into and out of Twilio’s platform. These changes will provide an improved experience bringing Twilio’s public and private connectivity closer to your application. 

Note: All these changes are backward compatible and will not impact existing configurations. 

Programmable Voice supports Edge Locations for connections to Twilio’s infrastructure via the Base URL in Twilio's API api.{edge}.us1.twilio.com.

Example

// eg: api.{edge}.us1.twilio.com

https://api.ashburn.us1.twilio.com/2010-04-01

Receiving SIP from Twilio using the edge parameter. To specify the geographic edge from which Twilio will send SIP-out traffic towards your communication infrastructure, you must include the edge parameter in your SIP URI.

Example

<?xml version="1.0" encoding="UTF-8"?>
<Response>
    <Dial>
        <Sip>sip:alice@example.com;edge=frankfurt</Sip>
    </Dial>
</Response>

Click here to see the Edge Locations Blog Post and here for additional details on Edge Locations.


Elastic SIP Trunking

Twilio Edge Locations Available for Elastic SIP Trunking GA

This release includes support for the expansion of Twilio’s Global Infrastructure via Edge Locations which allows connectivity control into and out of Twilio’s platform. These changes will provide an improved experience bringing Twilio’s public and private connectivity closer to your application. 

Note: All these changes are backward compatible and will not impact existing configurations. 

The Elastic SIP Trunking API supports  Edge Locations for connections to Twilio’s infrastructure via the Trunking Base URL in Twilio's API https://trunking.{edge}.us1.twilio.com.

Example

// eg: trunking.{edge}.us1.twilio.com

https://trunking.ashburn.us1.twilio.com/2010-04-01

Termination and Origination calls will also leverage Edge Locations

Example

Termination over an Edge

// eg: {example}.pstn.{edge}.twilio.com

INVITE sip:+15108675309@{example}.pstn.ashburn.twilio.com SIP/2.0

Origination with an Edge parameter

//eg: sip:tom@172.56.42.132;edge={edge}

sip:tom@172.56.42.132;edge=frankfurt

Click here to see the Edge Locations Blog Post and here for additional details on Edge Locations.


Programmable Voice

Open Source Voice Notification App GA

Twilio is open sourcing a Voice Notification App built in ReactJS for the Web. This reference app can be deployed to Heroku in minutes and demonstrates how to leverage Programmable Voice and Twilio SDKs to create a voice notification system to make calls to your customers to deliver time-sensitive messages. Whether you are building a voice notifications solution for Emergency Alerts, Appointment Reminders or Sales & Marketing use cases, this reference app can be used as a starting point.

Access to the source code will help customers understand how to use Twilio “building blocks” and Programmable Voice APIs to build an application for their own notification use case and accelerate development.

For additional information on getting started see the source code repo here.


This release of Flex UI and WebChat UI introduces a pilot release of image and file sharing for chat channels in Flex. Agents and webchat users can now share images, documents, and other files during a chat conversation. Visit our web chat documentation for more details and steps to enable this feature.

Other notable changes in this release:

  • Notification to signal connectivity issues - Users will now be notified if Flex UI has lost network connectivity and is trying to reconnect.

Connection notification.png

  • Initialization error page - If Flex UI encounters an error during initialization, users will now see details of the error and they can download a report which will provide technical details for troubleshooting.

Flex-Supportability.png

  • FlexError class - Developers can use a new API to unify the experience when working with Flex exceptions.


For more details on this release, please visit the release notes for Flex UI and WebChat UI.


Programmable Messaging

Messaging Insights General Availability GA

We are excited to announce the General Availability of Messaging Insights for all customers in console. Messaging Insights offers unprecedented transparency for customers to monitor, troubleshoot, and optimize message deliverability and engagement on Twilio.     

The GA launch enables multidimensional filters, a Message List view and the following four reports. 

  1. Overview: high-level view of your outgoing and incoming messages
  2. Delivery & Errors: deep dive into factors that affect deliverability to help you identify what is causing an issue 
  3. Responses: visualize and filter the inbound messages that you’re receiving back from your end users
  4. OTP Conversion: aggregate and visualizes the information that you have sent to Twilio about successful OTP messages

Messaging Insights is available on the Twilio console for all customers. To learn more see the Messaging Insights docs.


Programmable Video

Default Concurrency Limits for Rooms & Participants GA

We are introducing limits for the number of Rooms and Participants that an account can have in flight at the same time. These concurrency limits ensure a smooth consistent operation of the Twilio Video platform and prevent erroneous behavior on any one account from impacting the experience of other accounts. 

The limits for all existing accounts have been set to at least double their peak production traffic, which ensures sufficient headroom for growth. These account limits can be increased on request. If a limit is reached an error code (53119, 53206) is returned and it is also displayed in the Console Debugger.    

To learn more, visit the Programmable Video Limits page in our developer documentation.


Programmable Voice

Jitter buffer controls for Conferences GA

Twilio Conferences use a jitter buffer to smooth out irregularity in voice packet arrival times to conference participants. This results in better audio quality but introduces a fixed delay for each participant. 

When a participant's media stream displays extremely high jitter the jitter buffer may swell to compensate, and at sizes of ~250ms the jitter buffer can be perceived by the conference participants as audio latency. 

We have added a parameter to conferences that allows the buffer setting to be configured. The buffer size can be explicitly set or the buffer can be disabled outright which will reduce the perceived latency at the expense of potentially introducing degraded audio artifacts. For more information see our blog post.


Programmable Voice

Conference Participant Labels GA

The Programmable Voice Conference REST API and <Conference> TwiML now supports adding custom labels when creating and adding participants into a conference. Prior to this change, developers were required to use Participant’s Call Sid to read or update specific participants in a conference. Developers can now provide a label to a participant at the time of adding them into the conference. The label can then be used to read, update or delete participants. The custom participant label means developers no longer have to use Twilio identifiers, and instead use participant labels that make sense for your specific use case. 


For example, if you have access to the Participant’s CallSid, this code snippet shows how to mute a participant using the CallSid. Alternatively, this code snippet demonstrates how to mute a participant that was given the label of Customer at the time of being added  into the conference.


Programmable Voice

CallerId Parameter with Conference Create Participant API GA

The Programmable Voice Conference REST API now supports a new CallerId Parameter with Conference Create Participant REST API. This change allows developers to set the CallerId to a different phone number from the one used for the identity of the call in the From parameter. Prior to this change, the phone number in the From parameter was the Caller Id displayed on the end device, as well as the identifier used by carriers to calculate charges for that call. This change is specifically important for outbound dialing in European destinations where you could take advantage of Origin-Based Pricing for lower rates. 

The CallerId parameter is already supported when making an outbound call using the REST API and now also when making outbound calls from a conference using Create Participant REST API

Click here to learn more about how to reduce your bill with Origin-Based Pricing.

Please note that the phone number used in both the CallerId and From number must be a Twilio verified Phone number


Programmable Voice

Bi-directional Streaming support with Media Streams GA

Twilio Media Streams is now bi-directional. Developers can now stream audio from their own or third party apps back to Twilio enabling use cases such as conversational IVR, integrations with a regional provider for custom Text-to-Speech, and a lot more. This builds on existing support for forking the audio stream of your Programmable Voice calls in real-time and sending the stream to the destination of your choosing to build use cases such as real-time transcriptions, voice authentication, sentiment analysis, speech analytics, and more.

Bi-directional streaming with <Connect> <Stream> TwiML is a synchronous API, giving developers full control over the phone call. In addition, the new <Connect><Stream> API supports new event messages such as Mark and Clear allowing you to build barge-in functionality from within your application.

Check out connect-basic for basic use of the bi-directional streaming API. To learn more about building a conversational IVR using Dialogflow and using mark & clear to implement barge-in functionality, please visit Dialogflow integration GitHub code sample. 


Twilio Voice Client JS SDK (twilio.js) Connection class now has Connection.callerInfo.isVerified, that can be used to display a trust indicator to the recipient when an incoming call, say from the public telephone network, has been verified under the SHAKEN/STIR framework.

A verified call that has been given the highest attestation under SHAKEN/STIR means that the carrier that originated the call both (1) knows the identity of the caller, and (2) knows the caller has the right to use the phone number as the caller ID.

When your application receives a request webhook that has the new StirStatus parameter, all you have to do is <Dial><Client> and Twilio will implicitly pass the StirStatus to the Javascript Client.


Show more