Changelog
This changelog lists API changes introduced in version 2026-04-16.
New Endpoints
/v3/did_history added read endpoints
/v3/did_history read endpoints are available.
What changed
Added
GET/v3/did_history.Added
GET/v3/did_history/{id}.The resource returns DID history records from the last
90days.The default sort order is
created_atin descending order.Pagination defaults to
50records per page.GET/v3/did_historysupports filtering byid,did_number,action,method,created_at_gteq, andcreated_at_lteq.GET/v3/did_historysupports sorting bycreated_at.
Behavior notes
Records are sourced from events shown on the billing Histories page.
Supported
actionvalues areassigned,renewed,canceled,removed,billing_cycles_count_changed, andrestored.Supported
methodvalues aresystem,api2,api3,staff, anduser_panel.Records with
action = billing_cycles_count_changedalso returnmeta.fromandmeta.to.idis the UUID of the DID history event.Older billing history records in the
90-day window are backfilled with UUID values.
Affected resources
/v3/emergency_calling_services added read and delete endpoints
/v3/emergency_calling_services read and delete endpoints are available.
What changed
Added
GET/v3/emergency_calling_services.Added
GET/v3/emergency_calling_services/{id}.Added
DELETE/v3/emergency_calling_services/{id}.Emergency calling service responses include
name,reference,status,activated_at,canceled_at,created_at, andrenew_date.Responses include
meta.setup_priceandmeta.monthly_price.Supported relationships are
country,did_group_type,order,emergency_requirement,emergency_verification, anddids.Collection filters include
status,country.id,did_group_type.id,name,reference,address.id, andidentity.id.Collection sorting includes
name,status,country.name,renew_date, andcreated_at.
Affected resources
/v3/emergency_requirement_validations added write endpoint
/v3/emergency_requirement_validations write endpoint is available.
What changed
Added
POST/v3/emergency_requirement_validations.The request validates an
addressand / oridentityagainst a selectedemergency_requirement.Successful validation returns a JSON:API resource with type
emergency_requirement_validations.Validation failures return JSON:API
422error objects.
Affected resources
/v3/emergency_requirements added read endpoints
/v3/emergency_requirements read endpoints are available.
What changed
Added
GET/v3/emergency_requirements.Added
GET/v3/emergency_requirements/{id}.Emergency requirement responses include
identity_type,address_area_level,personal_area_level,business_area_level,address_mandatory_fields,personal_mandatory_fields,business_mandatory_fields,estimate_setup_time, andrequirement_restriction_message.Responses include
meta.setup_priceandmeta.monthly_price.Supported relationships are
countryanddid_group_type.Collection filters include
id,country.id, anddid_group_type.id.
Behavior notes
meta.setup_priceis returned as0when the customer’s emergency plan has a matching rate for the requirement, even if the configured setup price is greater than zero.meta.monthly_pricereturns the monthly price from the matching emergency plan rate.meta.setup_priceandmeta.monthly_priceare bothnullwhen the customer has no matching emergency plan rate for that country and DID group type.
Affected resources
/v3/emergency_verifications added read, write, and update endpoints
/v3/emergency_verifications read, write, and update endpoints are available.
What changed
Added
GET/v3/emergency_verifications.Added
GET/v3/emergency_verifications/{id}.Added
POST/v3/emergency_verificationsfor create and resubmission flows.Added
PATCH/v3/emergency_verifications/{id}.Only
external_reference_idcan be updated through the emergency verification update flow.Emergency verification responses include
reference,status,reject_reasons,reject_comment,callback_url,callback_method,created_at, andexternal_reference_id.Supported relationships are
address,emergency_calling_service, anddids.Collection filters include
statusandemergency_calling_service.id.
Behavior notes
The verification flow supports creating a new Emergency Calling Service by sending
addressplusdids.The same endpoint supports resubmitting / updating an existing calling service by sending
emergency_calling_serviceplusaddress.Emergency Calling Services support filtering by
address.idandidentity.idof the last linked verification.Requests can return per-DID validation errors under pointers like
/data/relationships/dids/{uuid}.
Affected resources
Breaking Changes
/v3/requirement_validations changed to /v3/address_requirement_validations
/v3/requirement_validations is renamed to /v3/address_requirement_validations.
Why this is a breaking change
Requests sent to the previous validation endpoint are no longer valid..
What changed
Renamed
POST/v3/requirement_validationstoPOST/v3/address_requirement_validations.Requests to the previous endpoint path now return
400 Bad Request.
Affected resources
Upgrade
Replace
/v3/requirement_validationswith/v3/address_requirement_validationsin validation requests and tests.
/v3/requirements changed to /v3/address_requirements
/v3/requirements is renamed to /v3/address_requirements.
Why this is a breaking change
Requests sent to the previous requirements endpoints are no longer valid.
What changed
Renamed
GET/v3/requirementstoGET/v3/address_requirements.Renamed
GET/v3/requirements/{id}toGET/v3/address_requirements/{id}.Requests to the previous endpoint path now return
400 Bad Request.
Affected resources
Upgrade
Replace
/v3/requirementswith/v3/address_requirementsin all requests, tests, and internal references.
/v3/address_requirement_validations rename requirement relationship to address_requirement
/v3/address_requirement_validations now uses address_requirement instead of requirement for this relationship.
Why this is a breaking change
Integrations that still send or parse the requirement relationship must switch to address_requirement.
What changed
Renamed the
requirementrelationship in validation payloads toaddress_requirement.DID group responses also use
address_requirementin place of the previous requirement relationship name.The JSON:API resource type now uses
address_requirements/address_requirement_validations.
Affected resources
Upgrade
Replace the
requirementrelationship key withaddress_requirementin request payloads and response parsing.Update JSON:API
typevalues and fixtures accordingly.
/v3/address_verifications attribute reject_reasons changed from string to array of strings
/v3/address_verifications now returns reject_reasons as an array of strings.
Why this is a breaking change
Integrations that still parse reject_reasons as a single string must update their response handling.
What changed
reject_reasonsis now returned as an array of strings instead of a single string.
Affected resources
Upgrade
Update response parsing, serializers, and tests to treat
reject_reasonsas an array.
/v3/available_dids filter did_group.features no longer include sms_out value
/v3/available_dids no longer supports sms_out for the did_group.features filter.
Why this is a breaking change
Requests that still use sms_out in filter[did_group.features] must be updated to the supported values.
What changed
GET/v3/available_dids?filter[did_group.features]no longer acceptssms_out.
Affected resources
Upgrade
Replace
sms_outin available DID feature filtering with the supported values.
/v3/dids filter did_group.features no longer includes sms_out value
/v3/dids no longer supports sms_out for the did_group.features filter.
Why this is a breaking change
Requests that still use sms_out in DID feature filtering must be updated to the supported values.
What changed
GET/v3/dids?filter[did_group.features]no longer acceptssms_out.
Affected resources
Upgrade
Replace
sms_outin DID feature filters with the supported values.
/v3/did_groups features attribute and filter no longer include sms_out value
/v3/did_groups features attribute and filter no longer include sms_out value.
Why this is a breaking change
Integrations that still read or send sms_out in DID group feature values or feature filters must switch to the updated feature set.
What changed
DID group
featuresno longer includesms_out.DID group feature filtering no longer accepts
sms_out.
Affected resources
Upgrade
Remove
sms_outfrom DID group feature parsing and feature filters.Update any typed models or tests that still expect
sms_out.
/v3/did_reservations attribute expire_at renamed to expires_at
/v3/did_reservations now uses expires_at instead of expire_at.
Why this is a breaking change
Integrations that still read expire_at from DID reservation responses must switch to expires_at.
What changed
Renamed the DID reservation expiry attribute from
expire_attoexpires_at.GETandPOSTDID reservation responses now returnexpires_at.
Affected resources
Upgrade
Replace
expire_atwithexpires_atin response parsing, typed models, and tests.
/v3/encrypted_files attribute expire_at renamed to expires_at
/v3/encrypted_files now uses expires_at instead of expire_at.
Why this is a breaking change
Integrations that still read expire_at from encrypted file responses must switch to expires_at.
What changed
Renamed the encrypted file expiry attribute from
expire_attoexpires_at.GET/v3/encrypted_filesnow returnsexpires_at.GET/v3/encrypted_files/{id}now returnsexpires_at.
Affected resources
Upgrade
Replace
expire_atwithexpires_atin response parsing, typed models, and tests.
/v3/encrypted_files POST request body format changed: single file per request instead of batch items array
/v3/encrypted_files now uses the updated POST request body format.
Why this is a breaking change
API no longer uses the legacy batch request format or plain JSON response bodies for POST /v3/encrypted_files.
What changed
POST/v3/encrypted_filesnow accepts flat single-file parameters: -encrypted_files[encryption_fingerprint]-encrypted_files[description]-encrypted_files[file]POST/v3/encrypted_filesnow returns a JSON:API resource object on success.POST/v3/encrypted_filesnow returns JSON:API error objects for400and422responses.Legacy batch parameters such as
encrypted_files[items][][file]are not supported.
Affected resources
Upgrade
Stop sending legacy batch parameters such as
encrypted_files[items][][file].Send exactly one file per request using
encrypted_files[file].Parse successful and error responses as JSON:API documents.
/v3/exports filters year and month replaced with from and to datetime filters for cdr_in and cdr_out export types
/v3/exports now uses from and to datetime filters for cdr_in and cdr_out export types instead of year and month.
Why this is a breaking change
Requests that still use the previous year and month filters for cdr_in and cdr_out exports must be updated.
What changed
Replaced the previous
yearandmonthfilters withfromandtodatetime filters forcdr_inandcdr_outexport types.
Affected resources
Upgrade
Replace
yearandmonthwithfromandtoin export creation and filtering workflows.
/v3/voice_out_trunks attributes allowed_sip_ips, allowed_rtp_ips, username, password removed in favor of authentication_method object
/v3/voice_out_trunks now uses authentication_method object instead of the previous attributes.
Why this is a breaking change
Integrations must stop reading or writing top-level authentication fields and must move authentication handling into authentication_method. allowed_rtp_ips is now handled as a top-level outbound trunk attribute.
What changed
Added the
authentication_methodobject with supported typescredentials_and_ip,ip_only, andtwilio.GETendpoints return authentication data only insideauthentication_method.allowed_rtp_ipsis now a top-level outbound trunk attribute.Changing the authentication type clears the previous authentication attributes.
PATCH/v3/voice_out_trunks/{id}does not allow changingauthentication_method.typetoip_only.
Behavior notes
credentials_and_ipreturnsallowed_sip_ips,tech_prefix,username, andpasswordinsideauthentication_method.attributes.ip_onlyreturnsallowed_sip_ipsandtech_prefixinsideauthentication_method.attributesand does not return credentials.twilioreturns onlytwilio_account_sidinsideauthentication_method.attributes.
Affected resources
Upgrade
Move outbound trunk authentication parsing and request building into
authentication_method.Move any
allowed_rtp_ipshandling todata.attributes.allowed_rtp_ips.Update tests and serializers to stop expecting flat authentication fields.
multiple resources attribute values standardized to lowercase snake_case format
Multiple APIv3 resources now use lowercase snake_case values consistently in responses, write requests, filters, and sorting-related value descriptions.
Why this is a breaking change
Integrations that still send or parse Title Case, uppercase, or space-separated values must update to the normalized lowercase snake_case values.
What changed
Order statuses now use
pending,completed, andcanceled.Export statuses now use
pending,processing, andcompleted.Address verification statuses now use
pending,approved, andrejected.Emergency Calling Service statuses now use
new,in_process,changes_required,active,pending_update, andcanceled.Outbound trunk status and enum-like attributes now use lowercase snake_case values such as
active,blocked,reject_call,replace_cli,send_original_cli,allow_all,reject_all,disabled,srtp_sdes,srtp_dtls, andzrtp.Identity types now use
personalandbusiness.Callback methods now use
getandpost.Requirement area-level values now use
world_wide,country,area, andcitywhere applicable.
Behavior notes
The normalization applies to
GETresponses, supportedPOST/PATCHrequest values, filter values, and the documented value sets used in collection sorting and query parameter tables.Values that were already using lowercase snake_case, such as
cdr_in,cdr_out,voice_inandcredentials_and_ip, are unchanged.
Affected resources
Upgrade
Update request payloads, filter values, response parsing, fixtures, and tests to use lowercase snake_case values only.
Treat previous Title Case, uppercase, and space-separated values as obsolete.
Enhancements
/v3/address_verifications attribute external_reference_id added
/v3/address_verifications now supports external_reference_id.
What changed
Added
external_reference_idto address verification requests and responses.external_reference_idis optional and has a maximum length of100characters.
Affected resources
/v3/address_verifications added update endpoint
PATCH /v3/address_verifications/{id} is available and only external_reference_id can be changed.
What changed
Added
PATCH/v3/address_verifications/{id}.Only
external_reference_idcan be updated through the address verification update flow.
Affected resources
/v3/address_verifications attribute reject_comment added
/v3/address_verifications now supports reject_comment.
What changed
Added
reject_commenttoaddress_verificationsresponses.Added
reject_commenttoemergency_verificationsresponses.Address verification callbacks now include
reject_commentalongside the rejection fields.Emergency verification callbacks now include
reject_commentalongside the rejection fields.
Behavior notes
reject_commentprovides the detailed compliance comment shown for rejected verifications.
Affected resources
/v3/addresses attribute external_reference_id added
/v3/addresses now supports external_reference_id.
What changed
Added
external_reference_idto address requests and responses.Added exact-match
external_reference_idfiltering on collection responses where supported.external_reference_idis optional and has a maximum length of100characters.
Affected resources
/v3/available_dids filter did_group.features support new values emergency, cnam_out, a2p and p2p
/v3/available_dids now supports additional values for the did_group.features filter.
What changed
GET/v3/available_dids?filter[did_group.features]now supportsemergency.GET/v3/available_dids?filter[did_group.features]now supportscnam_out.GET/v3/available_dids?filter[did_group.features]now supportsa2pandp2p.
Affected resources
/v3/did_groups attribute service_restrictions added
/v3/did_groups now supports service_restrictions.
What changed
Added the
service_restrictionsattribute to DID group responses.service_restrictionsreturns the DID group service restriction message when restrictions apply.service_restrictionscan benullwhen no restriction message applies.
Affected resources
/v3/did_groups features attribute and filter support new values emergency, cnam_out, a2p and p2p
/v3/did_groups features attribute and filter support new values emergency, cnam_out, a2p and p2p.
What changed
DID group
featuresnow supportemergency.DID group
featuresnow supportcnam_out.DID group
featuresnow supporta2pandp2pfor outbound messaging capabilities.GET/v3/did_groups?filter[features]=emergencyfilters DID groups that support the emergency feature.
Affected resources
/v3/dids attribute emergency_enabled added
/v3/dids now supports emergency_enabled.
What changed
Added the
emergency_enabledattribute to DID responses.filter[emergency_enabled]can be used to find DIDs that are or are not assigned to an Emergency Calling Service.
Affected resources
/v3/dids filter did_group.features support new values emergency, cnam_out, a2p and p2p
/v3/dids now supports additional values for the did_group.features filter.
What changed
GET/v3/dids?filter[did_group.features]now supportsemergency.GET/v3/dids?filter[did_group.features]now supportscnam_out.GET/v3/dids?filter[did_group.features]now supportsa2pandp2p.
Affected resources
/v3/dids filter emergency_calling_service.id and filter emergency_enabled added
/v3/dids now supports the emergency_calling_service.id and filter emergency_enabled filter.
What changed
Added
filter[emergency_calling_service.id].Added
filter[emergency_enabled].
Affected resources
/v3/dids relationship emergency_calling_service added
/v3/dids now exposes the emergency_calling_service relationship.
What changed
Added the
emergency_calling_servicerelationship to DID responses.When a DID is assigned to an Emergency Calling Service, relationship data identifies that service.
When a DID is not assigned to an Emergency Calling Service, relationship data is
nullwhen relationship data is present.
Affected resources
/v3/dids relationship emergency_verification added
/v3/dids now exposes the emergency_verification relationship.
What changed
Added the
emergency_verificationrelationship to DID responses.
Affected resources
/v3/dids relationship identity added
/v3/dids now exposes the identity relationship.
What changed
Added the
identityrelationship to DID responses.GET/v3/dids?include=identityreturns included identity resources.
Behavior notes
The relationship represents the main identity assigned to the DID, or the porting identity as a fallback.
Affected resources
/v3/exports attribute external_reference_id added
/v3/exports now supports external_reference_id.
What changed
Added
external_reference_idto export requests and responses.external_reference_idis optional and has a maximum length of100characters.
Affected resources
/v3/exports added update endpoint
/v3/exports update is available and only external_reference_id can be changed.
What changed
Added an export update endpoint.
Only
external_reference_idcan be updated through the export update flow.
Affected resources
/v3/exports attribute filters added
/v3/exports now supports filters.
What changed
Added the
filtersattribute to export responses.
Affected resources
/v3/exports cdr_in export CSV columns renamed and new columns added
/v3/exports cdr_in export CSV columns renamed and new columns added.
What changed
cdr_inexport CSV columns were renamed.Additional columns were added to
cdr_inexport files.
Affected resources
/v3/exports cdr_out export CSV columns renamed and new columns added
/v3/exports cdr_out export CSV columns renamed and new columns added.
What changed
cdr_outexport CSV columns were renamed.Additional columns were added to
cdr_outexport files.
Affected resources
/v3/exports export callback includes url attribute with the download link
/v3/exports callbacks now include additional export file information.
What changed
Added
urlto the export callback payload for supported export types.The callback can include a direct download link to the exported file.
Affected resources
/v3/identities relationship birth_country added
/v3/identities now exposes the birth_country relationship.
What changed
Added the
birth_countryrelationship toGET/v3/identitiesandGET/v3/identities/{id}.POST/v3/identitiessupports sendingbirth_countryseparately fromcountry.PATCH/v3/identities/{id}supports updatingbirth_countryseparately fromcountry.PATCH/v3/identities/{id}supports removingbirth_countryby sending an empty string.birth_countryis no longer auto-assigned whencountryis set.
Affected resources
Upgrade
Send and parse
birth_countryindependently fromcountry.
/v3/orders attribute external_reference_id added
/v3/orders now supports external_reference_id.
What changed
Added
external_reference_idto order requests and responses.external_reference_idis optional.external_reference_idhas a maximum length of100characters.
Affected resources
/v3/orders added update endpoint
/v3/orders update is available and only external_reference_id can be changed.
What changed
Added an order update endpoint.
Only
external_reference_idcan be updated through the order update flow.
Affected resources
/v3/orders filter external_reference_id added
/v3/orders now supports the external_reference_id filter.
What changed
Added the
external_reference_idcollection filter to orders.
Affected resources
/v3/orders insufficient funds error response includes meta with total_cost and available_balance
/v3/orders now returns additional metadata in insufficient funds error responses.
What changed
Added
errors[].meta.total_cost.Added
errors[].meta.available_balance.Both values are returned as strings.
This applies to both DID order creation and capacity order creation.
Behavior notes
meta.total_costcontains the cost of the current order only.meta.available_balancecontains the customer’s available balance, including credit, at the time of the check.
Affected resources
Upgrade
Read
errors[].meta.total_costanderrors[].meta.available_balancewhen presenting insufficient balance failures to users.Update automated tests for insufficient balance responses.
/v3/orders attribute allow_back_ordering defaults to true when not provided in request
/v3/orders attribute allow_back_ordering defaults to true when not provided in request.
What changed
POST/v3/ordersnow defaultsallow_back_orderingtotrue.If
allow_back_orderingis omitted, a DID order with pending inventory can be created instead of returning a validation error.To limit ordering to currently available inventory only, requests must explicitly send
allow_back_ordering: false.
Affected resources
Upgrade
Explicitly send
allow_back_ordering: falseif your workflow must reject out-of-stock DID orders.
/v3/orders Emergency order item attribute emergency_calling_service_id added
/v3/orders Emergency order item attribute emergency_calling_service_id added.
What changed
GET/v3/ordersandGET/v3/orders/{id}can now returnemergency_order_items.emergency_order_itemsincludeemergency_calling_service_id.Orders created by the Emergency Calling activation flow return
callback_method: nullandcallback_url: null.meta.api_versionreflects the actual API version used to produce the response.
Behavior notes
Earlier API versions may continue to return emergency charges as
generic_order_itemsfor backward compatibility.
Affected resources
/v3/permanent_supporting_documents attribute external_reference_id added
/v3/permanent_supporting_documents now supports external_reference_id.
What changed
Added
external_reference_idto permanent supporting document requests and responses.external_reference_idis optional and has a maximum length of100characters.
Affected resources
/v3/permanent_supporting_documents added read endpoints
/v3/permanent_supporting_documents read endpoints are available.
What changed
Added
GET/v3/permanent_supporting_documents.Added
GET/v3/permanent_supporting_documents/{id}.The collection endpoint supports JSON:API pagination and sparse fieldsets.
The collection endpoint supports exact-match filtering by
external_reference_id.
Affected resources
/v3/proofs attribute external_reference_id added
/v3/proofs now supports external_reference_id.
What changed
Added
external_reference_idto proof requests and responses.external_reference_idis optional and has a maximum length of100characters.
Affected resources
/v3/proofs added read endpoints
/v3/proofs read endpoints are available.
What changed
Added
GET/v3/proofs.Added
GET/v3/proofs/{id}.The collection endpoint supports JSON:API pagination and sparse fieldsets.
The collection endpoint supports exact-match filtering by
external_reference_id.
Affected resources
/v3/shared_capacity_groups attribute external_reference_id added
/v3/shared_capacity_groups now supports external_reference_id.
What changed
Added
external_reference_idto Shared Capacity Group requests and responses.Added exact-match
external_reference_idfiltering on collection responses where supported.external_reference_idis optional and has a maximum length of100characters.
Affected resources
/v3/voice_in_trunk_groups attribute external_reference_id added
/v3/voice_in_trunk_groups now supports external_reference_id.
What changed
Added
external_reference_idto Inbound Trunk Group requests and responses.Added exact-match
external_reference_idfiltering on collection responses where supported.external_reference_idis optional and has a maximum length of100characters.
Affected resources
/v3/voice_in_trunks SIP configuration attributes network_protocol_priority, enabled_sip_registration, use_did_in_ruri, diversion_relay_policy, diversion_inject_mode, and cnam_lookup added
/v3/voice_in_trunks now supports additional SIP configuration attributes.
What changed
Added
network_protocol_priority.Added
enabled_sip_registration.Added
use_did_in_ruri.Added
diversion_relay_policy.Added
diversion_inject_mode.Added
cnam_lookup.
Behavior notes
use_did_in_ruriworks only whenenabled_sip_registrationistrue.
Affected resources
/v3/voice_out_trunks attribute authentication_method added with support for ip_only, credentials_and_ip, and twilio types
/v3/voice_out_trunks attribute authentication_method added with support for ip_only, credentials_and_ip, and twilio types.
What changed
Added the
authentication_methodobject.Supported authentication method types are
ip_only,credentials_and_ip, andtwilio.POST/v3/voice_out_trunkssupports creation withcredentials_and_ipandtwilio.PATCH/v3/voice_out_trunks/{id}supports switching between supported updatable authentication types.
Affected resources
/v3/voice_out_trunks attribute emergency_enable_all added
/v3/voice_out_trunks now supports emergency_enable_all.
What changed
Added the
emergency_enable_allattribute to outbound trunk requests and responses.
Affected resources
/v3/voice_out_trunks attribute rtp_timeout added
/v3/voice_out_trunks now supports rtp_timeout.
What changed
Added the
rtp_timeoutattribute to outbound trunk requests and responses.
Affected resources
/v3/voice_out_trunks attribute tech_prefix added
/v3/voice_out_trunks now supports tech_prefix.
What changed
Added
tech_prefixinsideauthentication_method.attributesforcredentials_and_ipandip_only.
Affected resources
/v3/voice_out_trunks filter authentication_method.type added
/v3/voice_out_trunks now supports the authentication_method.type filter.
What changed
Added
filter[authentication_method.type].Supported values are
credentials_and_ip,ip_only, andtwilio.
Affected resources
/v3/voice_out_trunks relationship emergency_dids added
/v3/voice_out_trunks now exposes the emergency_dids relationship.
What changed
Added the
emergency_didsrelationship to outbound trunk responses.GET/v3/voice_out_trunks?include=emergency_didsandGET/v3/voice_out_trunks/{id}?include=emergency_didsreturn related DID data in theincludedarray.
Affected resources