← All provider guides

Twilio API breaking changes (2026): complete tracker and fixes

twilio 36 breaking / deprecation entries 2026

Twilio ships API and SDK changes continuously. Most are additive — but the ones that are not can silently break integrations that worked yesterday. This page is the complete, continuously regenerated record of every Twilio breaking change and deprecation in the mendapi change database: 36 entries (36 breaking, 0 deprecation), each linked to its upstream source and, where possible, to a concrete fix.

How to read this page

Every entry carries a fixability verdict from the mendapi adjudication pipeline: code-fixable means a mechanical code change repairs the break (19 entries); not code-fixable means the change requires a business decision, credential provisioning, or upstream action that no codemod can produce (17 entries). Entries marked auto-fix pack have a deterministic, gold-tested migration pack that mendapi fix can apply locally.

Am I affected?

Reading a changelog tells you what changed — not whether your code uses the affected surface. The mendapi scanner answers that locally, in about 30 seconds, without any code leaving your machine:

npx mendapi sync
# -> one network call: pulls the change feed into a local database
npx mendapi scan
# -> N findings: file, line, provider, confidence
mendapi deps --match
# -> which of the changes below actually hit your endpoints

See Getting Started for the full workflow and the security model for why zero code upload is the default and only mode.

Complete Twilio breaking change timeline

DateChangeRef
2026-05-06 6.0.1
breaking not code-fixable
Additive TwiML attribute visibility and new recording parameters
source
2026-04-20 6.0.0
breaking not code-fixable
twilio v6: Node minimum 14->20 bump only
source
2026-03-24 5.13.1
breaking code-fixable
Data-ingress API removed estimatedCompletionTime and moved operationId from response body to headers — response-shape
source
2026-02-18 5.12.2
breaking not code-fixable
Formatting/metadata updates plus additive paths
source
2026-01-22 5.12.0
breaking not code-fixable
CVE dependency fix and additive features (pagination, response headers)
source
response-prop-removed: POST /2010-04-01/Accounts/{AccountSid}/Calls/{Sid}.json -> 200 annotation
breaking code-fixable
spec diff
response-prop-removed: POST /2010-04-01/Accounts/{AccountSid}/Calls.json -> 201 annotation
breaking code-fixable
spec diff
response-prop-removed: GET /2010-04-01/Accounts/{AccountSid}/Calls/{Sid}.json -> 200 annotation
breaking code-fixable
spec diff
response-prop-removed: GET /2010-04-01/Accounts/{AccountSid}/Calls.json -> 200 calls[].annotation
breaking code-fixable
spec diff
response-prop-removed: POST /2010-04-01/Accounts/{AccountSid}/SIP/Domains/{DomainSid}/IpAccessControlListMappings.json -> 201 subresource_uris
breaking code-fixable
spec diff
response-prop-removed: POST /2010-04-01/Accounts/{AccountSid}/SIP/Domains/{DomainSid}/CredentialListMappings.json -> 201 subresource_uris
breaking code-fixable
spec diff
response-prop-removed: POST /2010-04-01/Accounts/{AccountSid}/Calls/FeedbackSummary.json -> 201 issues[].percentage_of_total_calls
breaking not code-fixable
spec diff
response-prop-removed: POST /2010-04-01/Accounts/{AccountSid}/Calls/FeedbackSummary.json -> 201 issues[].description
breaking not code-fixable
spec diff
response-prop-removed: POST /2010-04-01/Accounts/{AccountSid}/Calls/FeedbackSummary.json -> 201 issues[].count
breaking not code-fixable
spec diff
response-prop-removed: GET /2010-04-01/Accounts/{AccountSid}/SIP/Domains/{DomainSid}/IpAccessControlListMappings/{Sid}.json -> 200 subresource_uris
breaking code-fixable
spec diff
response-prop-removed: GET /2010-04-01/Accounts/{AccountSid}/SIP/Domains/{DomainSid}/IpAccessControlListMappings.json -> 200 ip_access_control_list_mappings[].subresource_uris
breaking code-fixable
spec diff
response-prop-removed: GET /2010-04-01/Accounts/{AccountSid}/SIP/Domains/{DomainSid}/CredentialListMappings/{Sid}.json -> 200 subresource_uris
breaking code-fixable
spec diff
response-prop-removed: GET /2010-04-01/Accounts/{AccountSid}/SIP/Domains/{DomainSid}/CredentialListMappings.json -> 200 credential_list_mappings[].subresource_uris
breaking code-fixable
spec diff
response-prop-removed: GET /2010-04-01/Accounts/{AccountSid}/Calls/FeedbackSummary/{Sid}.json -> 200 issues[].percentage_of_total_calls
breaking not code-fixable
spec diff
response-prop-removed: GET /2010-04-01/Accounts/{AccountSid}/Calls/FeedbackSummary/{Sid}.json -> 200 issues[].description
breaking not code-fixable
spec diff
response-prop-removed: GET /2010-04-01/Accounts/{AccountSid}/Calls/FeedbackSummary/{Sid}.json -> 200 issues[].count
breaking not code-fixable
spec diff
response-prop-removed: POST /v1/LinkShortening/Domains/{DomainSid}/Config -> 201 messaging_service_sids
breaking code-fixable
spec diff
response-prop-removed: POST /v1/LinkShortening/Domains/{DomainSid}/Config -> 200 messaging_service_sids
breaking code-fixable
spec diff
request-prop-removed: POST /v1/LinkShortening/Domains/{DomainSid}/Config MessagingServiceSidsAction
breaking code-fixable auto-fix pack
spec diff
request-prop-removed: POST /v1/LinkShortening/Domains/{DomainSid}/Config MessagingServiceSids
breaking code-fixable auto-fix pack
spec diff
response-prop-removed: GET /v1/LinkShortening/Domains/{DomainSid}/Config -> 200 messaging_service_sids
breaking code-fixable
spec diff
request-prop-added-required: POST /v1/Services/{MessagingServiceSid}/Compliance/Usa2p MessageFlow
breaking not code-fixable
spec diff
request-prop-removed: POST /v1/a2p/BrandRegistrations A2pProfileBundleSid
breaking code-fixable auto-fix pack
spec diff
request-prop-added-required: POST /v1/a2p/BrandRegistrations A2PProfileBundleSid
breaking code-fixable auto-fix pack
spec diff
enum-value-removed: POST /v1/a2p/BrandRegistrations -> 201 status = VERIFIED
breaking not code-fixable
spec diff
enum-value-removed: POST /v1/a2p/BrandRegistrations -> 201 status = IN_PROGRESS
breaking not code-fixable
spec diff
enum-value-removed: GET /v1/a2p/BrandRegistrations/{Sid} -> 200 status = VERIFIED
breaking not code-fixable
spec diff
enum-value-removed: GET /v1/a2p/BrandRegistrations/{Sid} -> 200 status = IN_PROGRESS
breaking not code-fixable
spec diff
enum-value-removed: GET /v1/a2p/BrandRegistrations -> 200 data[].status = VERIFIED
breaking not code-fixable
spec diff
enum-value-removed: GET /v1/a2p/BrandRegistrations -> 200 data[].status = IN_PROGRESS
breaking not code-fixable
spec diff
param-removed: GET /v2/Attempts/Summary query:ServiceSid
breaking code-fixable auto-fix pack
spec diff

Automated migration packs for Twilio

mendapi ships 3 deterministic migration packs for Twilio — verified, idempotent codemods you can apply locally with mendapi fix. Full details in the pack catalog.

  • twilio-verify-attempts-summary-servicesid — Twilio Verify: Attempts Summary query param ServiceSid -> VerifyServiceSid (upstream reference)
  • twilio-messaging-brand-registration-a2p-casing — Twilio Messaging: BrandRegistrations form param A2pProfileBundleSid -> A2PProfileBundleSid (upstream reference)
  • twilio-linkshortening-messagingservicesids-removal — Twilio Messaging: LinkShortening domain config no longer accepts MessagingServiceSids / MessagingServiceSidsAction (upstream reference)

Recent Twilio releases adjudicated non-breaking

Not paging you is the other half of the job. The same pipeline that produced the timeline above also cleared 737 Twilio changes as additive or fix-only — releases an integrator can upgrade through without a migration. The most recent:

DateReleaseRef
2026-04-14 5.13.2
fix
source
2026-03-12 5.13.0
additive
source
2026-02-05 5.12.1
additive
source
2026-01-07 5.11.2
additive
source

Measured: how the Twilio spec surface actually moves

The timeline above is fed by diffing Twilio's own published OpenAPI specs, so the natural question is how trustworthy that diff engine is on Twilio specifically. Two measured answers, both from archived evidence this page reads at build time.

Adjudicated parity corridor. Across 20 consecutive spec pairs spanning 5 Twilio API families (api v2010, chat v2, messaging v1, taskrouter v1, verify v2), the mendapi engine was run head-to-head against a mature open-source comparator (oasdiff version 1.26.0). The comparator flagged 358 breaking findings to mendapi's 142; every one of the 236 comparator-only findings was bucket-classified from the comparator's own texts (169 format-annotation-only, 67 object-to-any type widenings) and driven to 0 real gaps — 100% accounted. The corridor found no breaking change the comparator saw that mendapi missed.

An honest negative. The most recent Verify v2 corridor (twilio-oai 1.49 to main) produced 49 raw diff records and 0 breaking changes: 21 request-prop-added, 13 response-prop-added, 11 enum-value-added, 4 path-added. That is the Passkeys and RCS rollout — purely additive surface growth. A detection engine that cannot report “nothing broke here” is not measuring; the 36 entries in the timeline above are what remains after exactly this kind of adjudication.

Monitoring Twilio going forward

This page is regenerated from the change database, which is fed by release feeds, changelog capture and OpenAPI spec diffing — so it does not depend on Twilio writing a perfect changelog. mendapi monitors 84125 change records across 20 providers; hosted plans watch your repos continuously and open fix PRs when a change lands. See pricing.

Frequently asked questions

How do I check if my codebase is affected by Twilio breaking changes?

Run npx mendapi scan in your repo. It statically matches your files against the 36 Twilio breaking changes and deprecations in this tracker and reports file, line and confidence for every hit — locally, in about 30 seconds, with zero network calls.

How many Twilio API breaking changes are on record?

This tracker records 36 entries for Twilio (36 breaking changes and 0 deprecations, 2026). Each entry is adjudicated: 19 are code-fixable, 17 require a decision no codemod can make.

Are there automated fixes for Twilio breaking changes?

Yes — mendapi ships 3 deterministic migration packs for Twilio. mendapi fix applies them locally as reviewable diffs; every pack is gold-tested and idempotent.

Does my code get uploaded when scanning for Twilio changes?

No. mendapi scan, deps and fix run with zero network code, mechanically enforced by the test suite. Optional hosted reporting is metadata-only, secrets-redacted, and requires an explicit flag.

Related

Every entry on this page is generated from the mendapi change database at build time and links its upstream source.