NewYour coding agent can read the release notes before it upgrades.Set up the MCP server →
Packagist · #389 most downloaded on Packagist
A PHP wrapper for Twilio's API
Last release 5 days ago
28 Sep 2026
Release timing varies
gaps range from 2 weeks to 3 months
Nearly every release is documented
notes for 60 of the last 60 stable releases
Nothing withdrawn
no release was ever pulled
14 years old
364 releases · first in 2012
Make body an optional parameter on Message creation. *(breaking change)*
Library
Chat
body an optional parameter on Message creation. (breaking change)Notify
data, apn, gcm, fcm, sms parameters in Notifications create resource now accept objects instead of strings. Passing manually stringified json objects will continue to work.Taskrouter
Video
Add sip_registration property on SIP Domains
One column per quarter.
Api
sip_registration property on SIP DomainsAdd classes for all TwiML verbs.
TwiML
Added DataSessions sub-resource to Sims.
Sync
Wireless
Add lastRequest and lastResponse properties to CurlClient to help debugging.
Library
lastRequest and lastResponse properties to CurlClient to help debugging.Api
status enum for Recordings to include 'failed'errorCode property on RecordingsChat
Video
media_region parameter when creating a room, which controls which region media will be served out of.Add VoiceReceiveMode {'voice', 'fax'} option to IncomingPhoneNumber UPDATE requests
Api
Chat
Preview
Sync
Add ChatGrant to Grants and deprecate IpMessagingGrant
Api
auto_correct_address param for Addresses create and updateVideo
video_codec enum and video_codecs parameter, which can be set to either VP8 or H264 during room creation.Remove unused encryption_type property on Recordings *(breaking change)*
This release adds Beta and Preview products to main artifact.
Previously, Beta and Preview products were only included in the alpha
artifact. They are now being included in the main artifact to ease product
discoverability and the collective operational overhead of maintaining multiple
artifacts per library.
Api
encryption_type property on Recordings (breaking change)status enum for Messages to include 'accepted'Messaging
Notify
ToBinding optional parameter on Notifications resource creation. Accepted values are json strings.Preview
sms_application_sid to HostedNumberOrders.Taskrouter
This release drops official support for PHP 5.3 and PHP 5.4, which were EOL'd in 2014 and 2015 respectively.
getPage functionality.Nothing published for this version
Add locality field to AvailablePhoneNumbers.
locality field to AvailablePhoneNumbers.origin field to IncomingPhoneNumbers.in_locality parameter to AvailablePhoneNumbers.origin parameter to IncomingPhoneNumbers.announce_url parameter to Participants.announce_url_method parameter to Participants.getPage() methods to lists to begin paging starting from a given url.Nothing published for this version
Rename room Recordings resource to RoomRecordings to avoid class name conflict (backwards incompatible).
Recordings resource to RoomRecordings to avoid class name conflict (backwards incompatible).Nothing published for this version
Nothing published for this version
Add support for video.twilio.com.
Nothing published for this version
Add deprecation warning to ConversationsGrant, it is being replaced by VideoGrant.
recordingChannels, recordingStatusCallback, recordingStatusCallbackMethod, sipAuthUsername, sipAuthPassword, region, conferenceRecordingStatusCallback, conferenceRecordingStatusCallbackMethod optional parameters to conference participant resource.DEBUG_HTTP_TRAFFIC=true environment varibale to dump request and response information. Thanks @kevinburke, PR #394.ConversationsGrant, it is being replaced by VideoGrant.Nothing published for this version
Deprecate setting configurationProfileSid on grant.
room as preferred grant granularity.configurationProfileSid on grant.Nothing published for this version
Add validityPeriod parameter to Message creation
validityPeriod parameter to Message creationNothing published for this version
Add Answering Machine Detection to Call creation
Add Answering Machine Detection to Call creation
Add WRAPPING entry to Status for Task
Twilio Chat
limits map to ServicelimitsChannelMembers and limitsUserChannels field to ServiceUpdaterNothing published for this version
Nothing published for this version
Breaking Changes, refer to [Upgrade Guide][upgrade]
Breaking Changes, refer to [Upgrade Guide][upgrade]
Breaking Changes, refer to [Upgrade Guide][upgrade]
Breaking Changes, refer to [Upgrade Guide][upgrade]
accounts.twilio.com subdomain and products.
client->accounts now references accounts.twilio.com instead of Accounts resource (backwards incompatible).order as filter when listing Messages..read(), .stream(), .page() now accept options array as first parameter (backwards incompatible).Nothing published for this version
Breaking Changes, refer to [Upgrade Guide][upgrade]
Breaking Changes, refer to [Upgrade Guide][upgrade]
Fix broken default page size for all reads, thanks @rtek! Issue [#388] (https://github.com/twilio/twilio-php/issues/388)
Fix incorrect types documentation of links/subresourceUri fields on various resources. Was incorrectly documented as string, actual type was an array.
Fix some properties incorrectly documented as string when actually were array types.
Fix boolean parameters did not accept boolean values, now accept both boolean and strings for backwards compatibility.
Add emergencyEnabled field to Addresses.
Add price and callSid fields to Recordings.
Add trunkSid, emergencyStatus, and emergencyAddressSid fields to IncomingPhoneNumbers.
Add messagingServiceSid field to Messages.
Add url and/or links fields to various resources which were missing them.
Add subresourceUri fields to resources where missing.
Accept DateTime inputs for date parameters for various resources, previously expected strings.
Remove uri field from Pricing Phone Number Countries resource (backwards incompatible).
Properly deserialize date times for various resources (backwards incompatible).
Remove library support for date inquality for resources that don't support them (backwards incompatible).
Message body parameter now required on update (backwards incompatible).
Require friendlyName on Queue creation (backwards incompatible).
Taskrouter
url and/or links fields to resources where missing.
addons, taskQueueFriendlyName, workflowFriendlyName fields to Tasks.taskOrder field to TaskQueues, allow updating taskOrder.prioritizeQueueOrder field to Workspace.evaluateTaskAttributes, ordering, hasAddons.taskChannel, was never supported.workerSid and taskOrder.prioritizeQueueOrder on Workspaces.friendlyName to optional parameter when updating Activities (backwards incompatible).available to optional parameter when creating Activities (backwards incompatible).workflowSid and attributes to optional parameters when creating a Task (backwards incompatible).friendlyName as optional parameter when fetching Task Queue Statistics (backwards incompatible).DateTime objects when filtering by startDate and endDate (backwards incompatible).Chat
Secret field to Chat credentials and allow setting on create and update.lastConsumedMessageIndex and lastConsumptionTimestamp fields to Channel Members.Body parameter no longer required for updating a message.attributes and index fields to Messages.membersCount and messagesCount to Channels.attributes, friendlyName, isOnline, isNotifiable, links to Users.reachabilityEnabled, preWebhookUrl, postWebhookUrl, webhookMethod, webhookFilters, notifications to Services.type on Channels, was never supported by api (backwards incompatible).body to optional parameter (backwards incompatible).Conferences
status field to Participants.region and subresourceUri fields to Conference.Marketplace
getAddOnResults helper to Recordings.Nothing published for this version
Add InstanceResource::toArray()
InstanceResource::toArray()Thanks to @johnpaulmedina for this suggestion.
Nothing published for this version
- Add Video Grant
Nothing published for this version
Breaking Changes, refer to [Upgrade Guide][upgrade]
Breaking Changes, refer to [Upgrade Guide][upgrade]
friendlyName on IP Messaging/Chat Role update.DeserializeException to
RestException.Nothing published for this version
Breaking Changes, refer to [Upgrade Guide][upgrade]
Breaking Changes, refer to [Upgrade Guide][upgrade]
password to optional and remove unsupported username on
SIP Credential UpdateRoleSid to optional and add optional attributes, friendlyName
parameters on IP Messaging/Chat User creationattributes parameter on IP Messaging/Chat message creationNothing published for this version
Breaking Changes, refer to [Upgrade Guide][upgrade]
Breaking Changes, refer to [Upgrade Guide][upgrade]
hold, holdUrl, holdMethodip-messaging under the new chat domainassignmentCallbackUrl from a required argument to optional for
Taskrouter Workflows to better support client managed reservations.Nothing published for this version
Changes the way that uris are constructed to make sure that they are always rawurlencode()d by the twilio-php library
Changes the way that uris are constructed to make sure that they are always
rawurlencode()d by the twilio-php library
Updates the output of the unit tests on failure introducing a new method,
assertRequest(), that will output a friendlier error message when a request is
missing in the Holodeck network mock.
Nothing published for this version
Optional arguments are handled in the twilio-php by accepting an associative array of optional keys and values to pass to the API. This makes it easy
Optional arguments are handled in the twilio-php by accepting an associative
array of optional keys and values to pass to the API. This makes it easy to
support all the optional parameters, but lessens developer ergonomics, since it
doesn't provide any inline documentation or autocomplete for optional arguments.
This change introduces new Options builders that support 2 new ways for specifying optional arguments that provide better usability.
<?php
use Twilio\Values;
use Twilio\Rest\Client;
use Twilio\Rest\Api\V2010\Account\CallOptions;
$client = new Client();
// Original Way (5.0.x)
$client->calls->create(
'+14155551234',
'+14155557890',
array(
'applicationSid' => 'AP123',
'method' => 'POST',
)
);
// Options Factory
$client->calls->create(
'+14155551234',
'+14155557890',
CallOptions::create(
Values::NONE,
'AP123',
'POST'
)
);
// Options Builder
$client->calls->create(
'+14155551234',
'+14155557890',
CallOptions::create()->setApplicationSid('AP123')
->setMethod('POST')
);
The Options Factory provides fully documented optional arguments for every
optional argument supported by the Resource's Action. This is a fast way to
handle endpoints that have a few optional arguments.
The Options Builder provides fully documented setters for every optional
arguments, this is great for actions that support a large number of optional
arguments, so that you don't need to provided tons of default values.
Both of these options work well with autocompleting IDEs.
Nothing published for this version
Nothing published for this version
Adds the ability to pass options into Twilio\Http\CurlClient. This feature brings CurlClient closer to parity with Services_Twilio_TinyHttp.
Twilio\Http\CurlClient. This feature
brings CurlClient closer to parity with Services_Twilio_TinyHttp.Nothing published for this version
Fixes a bug where reading lists with a $limit and no $pageSize would cause a divide by zero error.
$limit and no $pageSize would cause
a divide by zero error.Twiml generatorTwiml and VersionNothing published for this version
Add the VERSIONS.md to explain the versioning strategy, first alpha release.
Add the VERSIONS.md to explain the versioning strategy, first alpha release.
Nothing published for this version
The newest version of the twilio-php helper library, supporting PHP 5.3+
New Major Version
The newest version of the twilio-php helper library, supporting PHP 5.3+
This version brings a host of changes to update and modernize the twilio-php
helper library. It is auto-generated to produce a more consistent and correct
product.
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Your coding agent can read these notes before it upgrades. Set up the MCP server →