Twilio Migration Guide
Upgrading to 1.0.0
Version 1.0.0 migrates the services and roles streams from Twilio's
deprecated Programmable Chat REST API
(base URL https://chat.twilio.com/v2) to the
Twilio Conversations API
(base URL https://conversations.twilio.com/v1).
What changed
- The
servicesstream now reads fromGET https://conversations.twilio.com/v1/Servicesinstead ofGET https://chat.twilio.com/v2/Services. - The
rolesstream now reads fromGET https://conversations.twilio.com/v1/Services/{ChatServiceSid}/Rolesinstead ofGET https://chat.twilio.com/v2/Services/{ServiceSid}/Roles. - The record schemas for both streams have been simplified to match what the
Conversations API actually returns. For the
servicesstream, the Conversations API returns a much smaller set of fields than the deprecated Chat API — for example,consumption_report_interval,default_service_role_sid,default_channel_role_sid,default_channel_creator_role_sid,limits,notifications,pre_webhook_url,post_webhook_url,pre_webhook_retry_count,post_webhook_retry_count,reachability_enabled,read_status_enabled,typing_indicator_timeout,webhook_filters,webhook_method, andmediaare no longer declared on Service records. - On the
rolesstream, theservice_sidfield has been renamed tochat_service_sidto match the Conversations API response. - The
chat.twilio.comhost has been removed from the connector'sallowedHostslist and replaced withconversations.twilio.com.
Known limitations
[!WARNING] The
account_sidfield onservicesrecords is now alwaysnull. The Twilio Conversations API does not populateaccount_sidfor Service resources, whereas the deprecated Chat API returned the actual account SID. If your downstream pipelines or dashboards rely onaccount_sidfrom theservicesstream, you will need to update them. Therolesstream is not affected and continues to returnaccount_sidwith the correct value.This is a Twilio API behavior, not an Airbyte connector bug. The field is documented in Twilio's API reference but consistently returns
nullin practice, including for newly created services.
Why we made this change
Twilio
deprecated the Programmable Chat API in 2021
and has now
scheduled its final end of life — including Programmable Chat in Flex — for June 1, 2026.
After that date, requests to chat.twilio.com/v2 will fail and any sync that
includes the services or roles streams would break. Twilio's official
replacement for these resources is the Conversations API.
Per Twilio's
migration guide,
"the Conversations API is built on the Programmable Chat foundation, and most
of your existing messaging and user data is going to be made available
automatically, with no data migration required." Service SIDs (IS...) and
Role SIDs (RL...) are preserved across the migration, so existing records
keep the same primary keys after the upgrade.
Who is affected
Only users who have the services or roles streams enabled in their Twilio
source connections are impacted. All other streams (for example, accounts,
calls, messages, conversations, users, verify_services) are
unchanged.
Migration steps
Take these steps after upgrading the connector to version 1.0.0:
- Open the Twilio source in the Airbyte UI.
- Click Refresh source schema so Airbyte picks up the updated
servicesandrolesschemas. - For each connection that syncs the
servicesorrolesstreams, clear data for those two streams so that the next sync repopulates them using the new Conversations API shape. Records from the deprecated Chat API endpoint may reference fields that no longer exist in the destination schema. - Trigger a sync. The
servicesandrolesstreams will now read fromconversations.twilio.com/v1and produce records matching the Conversations API schema.
No credential changes are required. HTTP Basic authentication with your Twilio Account SID and Auth Token continues to work against the Conversations API.
Connector upgrade guide
Review the following information to prepare for and execute your upgrade.
Review the changelog
Before updating a connector, review the changelog to understand the changes and their potential impact on your existing connections. Find the changelog for any connector by navigating to the bottom of the documentation for that connector. Major version releases also include a migration guide.
Plan for major updates
Major updates may require you to adjust connection settings or even make changes to your data pipelines. Allocate enough time and resources for this. Use the migration guide to ensure your transition process goes smoothly.
Airbyte provides tooling that guarantees safe connector version bumps and enforces automated version bumps for minor and patch updates. You always need to manually update for major version bumps.
Self-managed plans: pin a specific version if you can't update
If you're unable to upgrade to the new version of a connector, you can pin that connector to a specific version.
-
In the navigation bar:
-
If you're on the Self-Managed Enterprise plan, click Organization settings > Sources/Destinations.
-
If you're on any other plan, click Workspace settings > Sources/Destinations.
-
-
Edit the entry for the connector you want to pin.
-
Set the Default Version to the version you want to use.
Self-managed plans: update the local connector image
If you self-manage Airbyte, you must manually update the connector image in your local registry before proceeding with the migration. Follow the steps below.
-
In the navigation bar:
-
If you're on the Self-Managed Enterprise plan, click Organization settings > Sources/Destinations.
-
If you're on any other plan, click Workspace settings > Sources/Destinations.
-
-
Find the connector you want to update in the list of connectors.
noteAirbyte lists two versions, the current in-use version and the latest version available.
-
Click Change to update your OSS version to the latest available version.
Update the connector version
Update each instance of the connector separately. If you have multiple instances of a connector, updating one doesn't affect the others.
-
In the navigation bar:
-
If you're on the Self-Managed Enterprise plan, click Organization settings > Sources/Destinations.
-
If you're on any other plan, click Workspace settings > Sources/Destinations.
-
-
Select the instance of the connector you wish to upgrade.
-
Select Upgrade.
-
Follow the prompt to confirm you are ready to upgrade to the new version.
Clear data from affected streams
After upgrading a connector with a breaking change, you must refresh affected schemas and clear your data.
-
In the nav bar, click Connections.
-
Find the connection affected by the upgrade.
-
Click the Schema tab.
-
Click Refresh source schema (looks like ). When Airbyte finishes, it shows you any detected schema changes.
-
Click OK.
-
Click Save changes
-
Clear the data for the streams affected by this upgrade.
Once the clear is complete, you can begin syncing your data again as usual.