Library - Feature
Preview
- Added
Dispatchversion topreview
Studio
- Reroute Create Execution for V2 to the V2 downstream
Supersim
- Add Networks resource
Note: This release contains breaking changes, check our upgrade guide for detailed migration notes.
Library - Feature
- PR #623: add custom header support. Thanks to @eshanholtz! (breaking change)
Library - Chore
- PR #625: remove S3 URLs from test data. Thanks to @childish-sambino!
Api
- Updated description for property
call_reasonin the call create request
Contacts
- Added Read, Delete All, and Delete by SID docs
- Initial Release
Studio
- Rename
flow_validtoflow_validate - Removed
errorsandwarningsfrom flows error response and added new property nameddetails - Add Update Execution endpoints to v1 and v2 to end execution via API
- Add new
warningsattribute v2 flow POST api
Twiml
- Add enhanced attribute to use with
speech_modelfor theGatherverb
Library - Chore
- PR #621: regenerate the library after generator refactor. Thanks to @eshanholtz!
Library - Fix
- PR #620: php array types. Thanks to @eshanholtz!
Api
- Add optional 'secure' parameter to SIP Domain
Authy
- Added an endpoint to list the challenges of a factor
- Added optional parameter
Pushwhen updating a service to send the service level push factor configuration
Bulkexports
- exposing bulk exports (vault/slapchop) API as public beta API
Flex
- Adding
queue_stats_configurationandwfm_integrationsto Flex Configuration
Serverless
- Add Function Version Content endpoint
- Allow build_sid to be optional for deployment requests
Supersim
- Remove
deactivatedstatus for Super SIM which is replaced byinactive(breaking change)
Library - Fix
- PR #617: rename the TwiML 'Echo.php' filename to 'Echo_.php' to match the class name. Thanks to @childish-sambino!
Api
- Add optional
emergency_calling_enabledparameter to SIP Domain - Add optional property
call_reasonin the call create request
Authy
- Added
friendly_nameandconfigas optional params to Factor update - Added
configparam to Factor creation (breaking change)
Preview
- Renamed
SuccessRateendpoint toImpressionsRatefor Branded Calls (fka. Verified by Twilio) (breaking change)
Library - Chore
- PR #611: simplify Travis configuration. Thanks to @childish-sambino!
Authy
- Added the
configurationproperty to services to return the service level configurations - Added optional parameter
Pushwhen creating a service to send the service level push factor configuration - Remove FactorStrength support for Factors and Challenges (breaking change)
Messaging
- Correct the alpha sender capabilities property type (breaking change)
Preview
- Removed
/Devicesregister Branded Calls endpoint, as per iOS sample app deprecation (breaking change) - Removed
Twilio-Sandbox-Moderequest header from the Branded Calls endpoints, as not officially supported (breaking change) - Removed
Verifyversion frompreviewsubdomain in favor toverifysubdomain. (breaking change)
Serverless
- Add UI-Editable field to Services
Supersim
- Add
inactivestatus for Super SIM which is an alias fordeactivated
Taskrouter
- Adding value range to
priorityin task endpoint
Verify
- Fix
SendCodeAttemptstype. It's an array of objects instead of a unique object. (breaking change)
Library - Fix
- PR #607: migrate to phpdox for source code doc generation. Thanks to @childish-sambino!
- PR #602: only pass query option to Guzzle client if it is provided. Thanks to @childish-sambino!
Library - Feature
- PR #606: add scalar param type declarations to generated API code. Thanks to @childish-sambino! (breaking change)
- PR #605: add scalar param type declarations. Thanks to @childish-sambino! (breaking change)
Library - Chore
- PR #604: add return types, drop 'array()' syntax, and address linter warnings in generated API code. Thanks to @childish-sambino! (breaking change)
- PR #603: add return types, drop 'array()' syntax, and address linter warnings. Thanks to @childish-sambino! (breaking change)
- PR #595: drop support for EOL versions of PHP. Thanks to @childish-sambino! (breaking change)
Api
- Make call create parameters
async_amd,async_amd_status_callback, andasync_amd_status_callback_methodpublic - Add
trunk_sidas an optional field to Call resource fetch/read responses - Add property
queue_timeto successful response of create, fetch, and update requests for Call - Add optional parameter
byocto conference participant create.
Authy
- Added support for challenges associated to push factors
Flex
- Adding
ui_dependenciesto Flex Configuration
Messaging
- Deprecate Session API (breaking change)
Numbers
- Add Regulations API
Studio
- Add Execution and Step endpoints to v2 API
- Add webhook_url to Flow response and add new /TestUsers endpoint to v2 API
Taskrouter
- Adding
longest_relative_task_age_in_queueandlongest_relative_task_sid_in_queueto TaskQueue Real Time Statistics API. - Add
wait_duration_in_queue_until_acceptedaggregations to TaskQueues Cumulative Statistics endpoint - Add TaskQueueEnteredDate property to Tasks.
Video
- [Composer] Clarification for the composition hooks creation documentation: one source is mandatory, either the
audio_sourcesor thevideo_layout, but one of them has to be provided - [Composer]
audio_sourcestype on the composer HTTP POST command, changed fromsid[]tostring[](breaking change) - [Composer] Clarification for the composition creation documentation: one source is mandatory, either the
audio_sourcesor thevideo_layout, but one of them has to be provided
Library - Fix
- PR #599: handle '200 Tunnel established header'. Thanks to @alimohammad1995!
Api
- Making content retention and address retention public
- Update
statusenum for Messages to include 'partially_delivered'
Authy
- Added support for push factors
Autopilot
- Add one new property in Query i.e dialogue_sid
Verify
- Add
SendCodeAttemptsto create verification response.
Video
- Clarification in composition creation documentation: one source is mandatory, either
audio_sourcesorvideo_layout, but on of them has to be provided
Twiml
- Add Polly Neural voices.
Library - Docs
- PR #597: baseline all the templated markdown docs. Thanks to @childish-sambino!
Api
- Add payments public APIs
- Add optional parameter
byocto call create request.
Flex
- Updating a Flex Flow
creation_on_messageparameter documentation
- Removed Verify v2 from preview in favor of its own namespace as GA (breaking change)
Studio
- Flow definition type update from string to object
Verify
- Add
AppHashparameter when creating a Verification. - Add
DoNotShareWarningEnabledparameter to the Service resource.
Twiml
- Add
trackattribute to siprec noun. - Add attribute
byocto<Number>
Library - Chore
- PR #594: remove deprecated code. Thanks to @childish-sambino! (breaking change)
Numbers
- Add Regulatory Compliance CRUD APIs
Studio
- Add parameter validation for Studio v2 Flows API
Twiml
- Add support for
speech_modeltoGatherverb
Preview
- Add
/Insights/SuccessRateendpoint for Businesses Branded Calls (Verified by Twilio)
Studio
- StudioV2 API in beta
Verify
- Add
MailerSidproperty to Verify Service resource.
Wireless
- Added
data_limit_strategyto Rate Plan resource.
Api
- Make
twimlconditional for create. One ofurl,twiml, orapplication_sidis now required. - Add
bundle_sidparameter to /IncomingPhoneNumbers API - Removed discard / obfuscate parameters from ContentRetention, AddressRetention (breaking change)
Chat
- Added
last_consumed_message_indexandlast_consumption_timestampparameters in update method for UserChannel resource (breaking change)
Conversations
- Add Participant SID to Message properties
Messaging
- Fix incorrectly typed capabilities property for ShortCodes. (breaking change)
Library
- PR #588: docs: add supported language versions to README. Thanks to @childish-sambino!
- PR #586: fix: Curl client now handles proxy responses over HTTP/1.0. Thanks to @ytetsuro!
- PR #584: fix: update native_function_invocation calls to be fully qualified. Thanks to @draco2003!
Api
- Add optional
twimlparameter for call create
Chat
- Added
deletemethod in UserChannel resource
Conversations
- Allow Messaging Service update
Taskrouter
- Support ReEvaluateTasks parameter on Workflow update
Twiml
- Remove unsupported
mixed_trackvalue from<Stream>(breaking change) - Add missing fax
<Receive>optional attributes
Library
- PR #583: Notice of BREAKING CHANGE for PHP version 5. Thanks to @thinkingserious! (breaking change)
Api
- Make
persistent_actionparameter public - Add
twimloptional private parameter for call create
Autopilot
- Add Export resource to Autopilot Assistant.
Flex
- Added Integration.RetryCount attribute to Flex Flow
- Updating a Flex Flow
channel_typeoptions documentation
Insights
- Added edges to events and metrics
- Added new endpoint definitions for Events and Metrics
Messaging
- create support for sender registration
- fetch support for fetching a sender
- update support for sender verification
Supersim
- Add
Directionfilter parameter to list commands endpoint - Allow filtering commands list by Sim Unique Name
- Add
Iccidfilter parameter to list sims endpoint
Twiml
- Add support for
<Refer>verb
Library
- PR #581: Update resources after sorting. Thanks to @childish-sambino!
Api
- Add new usage categories to the public api
sms-messages-carrierfeesandmms-messages-carrierfees
Conversations
- Add ProjectedAddress to Conversations Participant resource
Preview
- Implemented different
Sidfor Current Calls (Verified by Twilio), instead of relying inCall.Sidfrom Voice API team (breaking change)
Supersim
- Add List endpoint to Commands resource for Super Sim Pilot
- Add UsageRecords resource for the Super Sim Pilot
- Add List endpoint to UsageRecords resource for the Super Sim Pilot
- Allow assigning a Sim to a Fleet by Fleet SID or Unique Name for Super SIM Pilot
- Add Update endpoint to Fleets resource for Super Sim Pilot
- Add Fetch endpoint to Commands resource for Super Sim Pilot
- Allow filtering the Sims resource List endpoint by Fleet
- Add List endpoint to Fleets resource for Super Sim Pilot
Wireless
- Added
account_sidto Sim update parameters.
Twiml
- Add new locales and voices for
Sayfrom Polly
Library
- PR #579: Update instance property ordering. Thanks to @childish-sambino!
- PR #578: added validation of signature without stripping port number. Thanks to @eshanholtz!
- PR #577: breaking: Correct video composition date types. Thanks to @childish-sambino! (breaking change)
- PR #576: Fix curl client fails through squid proxy. Thanks to @jmo161!
- PR #574: Do not update new dependencies or versioning during testing and doc generation. Thanks to @childish-sambino!
Api
- Add new property
attemptto sms_messages - Fixed a typo in the documentation for Feedback outcome enum (breaking change)
- Update the call price to be optional for deserializing (breaking change)
Flex
- Added
JanitorEnabledattribute to Flex Flow - Change
features_enabledFlex Configuration key to private (breaking change)
Supersim
- Add Fetch endpoint to Fleets resource for Super Sim Pilot
- Allow assigning a Sim to a Fleet for Super Sim Pilot
- Add Create endpoint to Fleets resource for Super Sim Pilot
Twiml
- Update
<Conference>rename "whisper" attribute to "coach" (breaking change)
Library
- PR #572: Dependency Fix for PHPUnit. Thanks to @thinkingserious!
Conversations
- Add media to Conversations Message resource
Supersim
- Add List endpoint to Sims resource for Super Sim Pilot
Library
- PR #570: Revert to using composer to install apigen for doc generation. Thanks to @childish-sambino!
- PR #569: Re-add DeserializeTest.php. Thanks to @thinkingserious!
- PR #568: Update the Dockerfile for PHP 7.1 and new code structure. Thanks to @childish-sambino!
- PR #567: Put back the parent directory directive in 'autoload'. Thanks to @childish-sambino!
- PR #563: Support running docker tests in Jenkins. Thanks to @thinkingserious!
- PR #562: Allow for usage of older PHP unit versions. Thanks to @thinkingserious!
- PR #561: Make docker-build work with new Dockerfile format. Thanks to @thinkingserious!
- PR #560: Loosen hard php version restriction. Thanks to @thinkingserious!
- PR #557: Prevent null date-time strings from deserializing to 'now'. Thanks to @childish-sambino!
- PR #549: [RFC] Test SDK on PHP 7.2 and 7.3. Thanks to @rvanlaak!
Numbers
- Add v2 of the Identites API
Preview
- Changed authentication method for SDK Trusted Comms endpoints:
/CPS,/CurrentCall, and/Devices. Please useAuthorization: Bearer <xCNAM JWT>(breaking change)
Voice
- Add Recordings endpoints
Library
- PR #558: Adds local dockerized tests for configurable PHP versions. Thanks to @thinkingserious!
- PR #552: GuzzleClient - change body retrieval to rewind stream. Thanks to @DavidGoodwin!
- PR #551: Request validator small changes. Thanks to @Mcgurk-Adam!
- PR #555: Correct the 'array' type hint for a few resource instance properties. Thanks to @childish-sambino!
Api
- Pass Twiml in call update request
Conversations
- Add attributes to Conversations resources
Flex
- Adding
features_enabledandserverless_service_sidsto Flex Configuration
Messaging
- Message API required params updated (breaking change)
Preview
- Added support for the optional
CallSidto/BrandedCallsendpoint
Library
- PR #554: Update the IP messaging domain name to be 'chat'. Thanks to @childish-sambino!
Conversations
- Add Chat Conversation SID to conversation default output properties
Flex
- Adding
outbound_call_flowsobject to Flex Configuration - Adding read and fetch to channels API
Supersim
- Add Sims and Commands resources for the Super Sim Pilot
Sync
- Added configuration option for enabling webhooks from REST.
Wireless
- Added
usage_notification_methodandusage_notification_urlproperties torate_plan.
Twiml
- Add support for
ach-debittransactions inPayverb
Preview
- Added support for the header
Twilio-Sandbox-Modeto mock all Voice dependencies
Twiml
- Add support for
<Siprec>noun - Add support for
<Stream>noun - Create verbs
<Start>and<Stop>
Insights
- Added
propertiesto summary.
Preview
- Added endpoint to brand a call without initiating it, so it can be initiated manually by the Customer
Twiml
- Update
<Conference>recording events (breaking change)
Api
- Make
friendly_nameoptional for applications create - Add new property
as_ofdate to Usage Record API calls
Wireless
- Added Usage Records resource.
Library
Autopilot
- Adds two new properties in Assistant i.e needs_model_build and development_stage
Preview
- Changed phone numbers from URL|Path to
X-XCNAM-Sensitiveheaders (breaking change)
Verify
- Add
MessagingConfigurationresource to verify service
Autopilot
- Add Webhooks resource to Autopilot Assistant.
Flex
- Added missing 'custom' type to Flex Flow
- Adding
integrationsto Flex Configuration
Insights
- Added attributes to summary.
Messaging
- Message API Create updated with conditional params (breaking change)
Proxy
- Document that Proxy will return a maximum of 100 records for read/list endpoints (breaking change)
- Remove non-updatable property parameters for Session update (mode, participants) (breaking change)
Sync
- Added reachability debouncing configuration options.
Verify
- Add
RateLimitsandBucketsresources to Verify Services - Add
RateLimitsoptional parameter onVerificationcreation.
Twiml
- Fix
<Room>participantIdentity casing
Library
- PR #545: Commonize usage of 'TwilioException' in doc strings. Thanks to @childish-sambino!
- PR #514: Fix wrong twilio exception namespace in doc. Thanks to @brainrepo!
- PR #544: Add missing dollar sign to property doc tags. Thanks to @childish-sambino!
- PR #512: Properties should use dollar sign ($) in phpDoc. Thanks to @andreshg112!
- PR #542: Update TwiML doc types. Thanks to @childish-sambino!
- PR #541: Switch boolean and integer to using primitive types in doc tags. Thanks to @childish-sambino!
- PR #499: Fix doc blocks typing for TwiML. Thanks to @erickskrauch!
Verify
- Add
approvedto status enum
Library
- PR #540: Update Readme TwiML Documentation. Thanks to @gjrdiesel!
Api
- Make
methodoptional for queue members update
Chat
- Removed
webhook.*.formatupdate parameters in Service resource from public library visibility in v1 (breaking change)
Insights
- Added client metrics as sdk_edge to summary.
- Added optional query param processing_state.
Numbers
- Add addtional metadata fields on a Document
- Add status callback fields and parameters
Taskrouter
- Added
channel_optimized_routingattribute to task-channel endpoint
Video
- [Rooms] Add Video Subscription API
Wireless
- Added
imeito Data Session resource. - Remove
imeisvfrom Data Session resource. (breaking change)
Serverless
- Documentation
Wireless
- Added
imeisvto Data Session resource.
Library
- PR #539: Drop all the unused 'read_the_docs' stuff. Thanks to @childish-sambino!
Api
- Add
verifiedproperty to Addresses
Numbers
- Add API for Identites and documents
Proxy
- Add in use count on number instance
Flex
- Adding PluginService to Flex Configuration
Numbers
- Add API for Proof of Addresses
Proxy
- Clarify documentation for Service and Session fetch
Serverless
- Serverless scaffolding
Api
- Remove optional
if_machinecall create parameter from helper libraries (breaking change) - Changed
call_sidpath parameter type on QueueMember fetch and update requests (breaking change)
Voice
- changed file names to dialing_permissions prefix (breaking change)
Wireless
- Added
ResetStatusproperty to Sim resource to allow resetting connectivity via the API.
Library
- PR #536: Add Help Center and Support Ticket links to the README. Thanks to @childish-sambino!
Api
- Add
machine_detection_speech_threshold,machine_detection_speech_end_threshold,machine_detection_silence_timeoutoptional params to Call create request
Flex
- Adding Flex Channel Orchestration
- Adding Flex Flow
Twiml
- Add
de1to<Conference>regions
Api
- Make conference participant preview parameters public
Authy
- Added support for FactorType and FactorStrength for Factors and Challenges
Iam
- First public release
Verify
- Add endpoint to update/cancel a Verification (breaking change)
Video
- [Composer] Make RoomSid mandatory (breaking change)
- [Composer] Add
enqueuedstate to Composition
Twiml
- Update message body to not be required for TwiML
Dialnoun.
Library
- PR #533: Pin hhvm to pre-4.0 because of lack of composer support. Thanks to @cjcodes!
Api
- Add
force_opt_inoptional param to Messages create request - Add agent conference category to usage records
Flex
- First public release
Taskrouter
- Adding
reject_pending_reservationsto worker update endpoint - Added
event_date_msandworker_time_in_previous_activity_msto Events API response - Add ability to filter events by TaskChannel
Verify
- Add
EnablePsd2optional parameter for PSD2 on Service resource creation or update. - Add
Amount,Payeeoptional parameters for PSD2.
Library
- PR #523: Switch body validator to use hex instead of base64. Thanks to @cjcodes!
Video
- [Recordings] Add media type filter to list operation
- [Composer] Filter Composition Hook resources by FriendlyName
Twiml
- Update
languageenum forGatherto fix language code for Filipino (Philippines) and include additional supported languages (breaking change)
Verify
- Add
lookupinformation in the response when creating a new verification (depends on the LookupEnabled flag being enabled at the service level) - Add
VerificationSidoptional parameter on Verification check.
Chat
- Mark Member attributes as PII
Proxy
- Remove unsupported query parameters (breaking change)
- Remove invalid session statuses in doc
Insights
- Initial revision.
Authy
- Reverted the change to
FactorTypeandFormType, avoiding conflicts with Helper Libraries reserved words (type) (breaking change)
Proxy
- Remove incorrect parameter for Session List
Studio
- Support date created filtering on list of executions
Taskrouter
- Adding ability to Create, Modify and Delete Task Channels.
Verify
- Add
SkipSmsToLandlines,TtsName,DtmfInputRequiredoptional parameters on Service resource creation or update.
Wireless
- Added delete action on Command resource.
- Added delete action on Sim resource.
Twiml
- Change
currencyfrom enum to string forPay(breaking change)
Api
- Add
interactive_dataoptional param to Messages create request
Authy
- Required authentication for
/v1/Forms/{type}endpoint (breaking change) - Removed
Challenge.reasontoChallenge.responded_reason - Removed
verification_sidfrom Challenge responses - Removed
configparam from the Factor creation - Replaced all occurrences of
FactorTypeandFormTypein favor of a unifiedType(breaking change)
Chat
- Add Member attributes
Preview
- Removed
Authyversion frompreviewsubdomain in favor toauthysubdomain. (breaking change)
Verify
- Add
CustomCodeoptional parameter on Verication creation.
Messaging
- Session API
Twiml
- Change
master-cardtomastercardascardTypeforPayandPrompt, remove attributecredential_sidfromPay(breaking change)
Library
- PR #511: Include composer require command. Thanks to @cjcodes!
- PR #503: Fix invalid generated XML in README. Thanks to @giggsey!
Api
- Add new Balance resource:
- url: '/v1/Accounts/{account sid}/Balance'
- supported methods: GET
- returns the balance of the account
Proxy
- Add chat_instance_sid to Service
Verify
- Add
Localeoptional parameter on Verification creation.
Api
- Add Verb Transactions category to usage records
Twiml
- Add support for
Payverb
Api
- Add
coachingandcall_sid_to_coachto participant properties, create and update requests.
Authy
- Set public library visibility, and added PII stanza
- Dropped support for
FactorTypeparam given new Factor prefixes (breaking change) - Supported
DELETEactions for Authy resources - Move Authy Services resources to
authysubdomain
Autopilot
- Introduce
autopilotsubdomain with all resources frompreview.understand
Preview
- Renamed Understand intent to task (breaking change)
- Deprecated Authy endpoints from
previewtoauthysubdomain
Taskrouter
- Allow TaskQueue ReservationActivitySid and AssignmentActivitySid to not be configured for MultiTask Workspaces
Verify
- Add
LookupEnabledoptional parameter on Service resource creation or update. - Add
SendDigitsoptional parameter on Verification creation. - Add delete action on Service resourse.
Twiml
- Add custom parameters to TwiML
Clientnoun and renamed the optionalnamefield toidentity. This is a breaking change in Ruby, and applications will need to transition fromdial.client ''anddial.client 'alice'formats todial.clientanddial.client(identity: alice)formats. (breaking change)
Preview
- Renamed response headers for Challenge and Factors Signatures
Video
- [Composer] Add Composition Hook resources
Twiml
- Add
debugtoGather - Add
participantIdentitytoRoom
Api
- Set
call_sid_to_coachparameter in participant to bepreview
Preview
- Supported
totpin Authy preview endpoints - Allowed
latestin Authy Challenges endpoints
Voice
- changed path param name from parent_iso_code to iso_code for highrisk_special_prefixes api (breaking change)
- added geo permissions public api
Preview
- Add
Formresource to Authy preview given aform_type - Add Authy initial api-definitions in the 4 main resources: Services, Entities, Factors, Challenges
Pricing
- add voice_numbers resource (v2)
Verify
- Move from preview to beta (breaking change)
Api
- Add
call_sid_to_coachparameter to participant create request - Add
voice_receive_modeparam to IncomingPhoneNumbers create
Video
- [Recordings] Expose
offsetproperty in resource
Chat
- Add User Channel instance resource
Api
- Add Proxy Active Sessions category to usage records
Preview
- Add
Actionsendpoints and removeResponseUrlfrom assistants on the Understand api
Pricing
- add voice_country resource (v2)
Library
- PR #498: Add deprecation warning to the old Twiml class. Thanks to @ekarson!
- PR #497: Add tests for namespacing and twiml constructors. Thanks to @cjcodes!
Studio
- Studio is now GA
Library
- PR #492: Tag and push Docker latest image when deploying with TravisCI. Thanks to @jonatasbaldin!
Api
- Add support for sip domains to map credential lists for registrations
Chat
- Make message From field updatable
- Add REST API webhooks
Notify
- Removing deprecated
segments,users,segment_memberships,user_bindingsclasses from helper libraries. (breaking change)
Preview
- Add new Intent Statistics endpoint
- Remove
ttlfrom Assistants
Proxy
- Enable setting a proxy number as reserved
Video
- Add
group-smallroom type
Twiml
- Add
ConnectandRoomfor Programmable Video Rooms - Add support for SSML lang tag on Say verb
Library
- PR #489: Add a request body validator. Thanks to @cjcodes!
Twiml
- Add support for SSML on Say verb, the message body is changed to be optional (breaking change)
Api
- Add
cidr_prefix_lengthparam to SIP IpAddresses API
Studio
- Add new /Execution endpoints to begin Engagement -> Execution migration
Video
- [Rooms] Allow deletion of individual recordings from a room
Library
- PR #483: Add Dockerfile and related changes to build the Docker image. Thanks to @jonatasbaldin!
Api
- Release
Call Recording Controlsfeature support in helper libraries - Add Voice Insights sub-category keys to usage records
Library
- PR #484: Fixes for adding child nodes / text. Thanks to @ekarson!
- PR #482: Allow adding TwiML children with generic tag names. Thanks to @yannieyip!
Api
- Add Fraud Lookups category to usage records
Video
- Allow user to set
ContentDispositionwhen obtaining media URLs for Room Recordings and Compositions - Add Composition Settings resource
Library
- PR #480: Allow adding mixed content in TwiML nodes. Thanks to @ekarson!
- PR #481: Add method to validate ssl certificate. Thanks to @yannieyip!
- PR #469: Ability to specify custom claims when creating ClientToken. Thanks to @erickskrauch!
Twiml
- Add methods to helper libraries to inject arbitrary text under a TwiML node
Chat
- Add Binding and UserBinding documentation
Lookups
- Add back support for
fraudlookup type
Studio
- Add endpoint to delete engagements
Api
- Add more programmable video categories to usage records
- Add 'include_subaccounts' parameter to all variation of usage_record fetch
Trunking
- Added cnam_lookup_enabled parameter to Trunk resource.
- Added case-insensitivity for recording parameter to Trunk resource.
Library
- PR #472: Added @throws PHPDoc tags to Sync API Context and Version classes. Thanks to @lamungu!
Chat
- Add Channel Webhooks resource
Monitor
- Update event filtering to support date/time (breaking change)
Wireless
- Updated
maturitytogafor all wireless apis
Video
- Redesign API by adding custom
VideoLayoutobject. (breaking change)
Twiml
- Gather input Enum: remove unnecessary "dtmf speech" value as you can now specify multiple enum values for this parameter and both "dtmf" and "speech" are already available.
Library
- PR #468: Add incoming.allow to AccessToken VoiceGrant. Thanks to @ryan-rowland!
Preview
- Support for Understand V2 APIs - renames various resources and adds new fields
Studio
- Change parameters type from string to object in engagement resource
Video
- [Recordings] Change
sizetype tolong. (breaking change)
Lookups
- Disable support for
fraudlookups (breaking change)
Preview
- Add
BuildDurationandErrorCodeto Understand ModelBuild
Studio
- Add new /Context endpoint for step and engagement resources.
Api
- Add
caller_idparam to Outbound Calls API - Release
trimrecording Outbound Calls API functionality in helper libraries - Add
trimparam to Outbound Calls API
Lookups
- Add support for
fraudlookup type
Numbers
- Initial Release
Video
- [composer] Add
room_sidto Composition resource. - [composer] Add
SEQUENCEvalue to available layouts, andtrimandreuseparams.
Twiml
- Adds support for passing in multiple input type enums when setting
inputonGather
Api
- Add
AnnounceUrlandAnnounceMethodparams for conference announce
Chat
- Add support to looking up user channels by identity in v1
Api
- Add
studio-engagementsusage key
Preview
- Remove Studio Engagement Deletion
Studio
- Initial Release
Video
- [omit] Beta: Allow updates to
SubscribedTracks. - Add
SubscribedTracks. - Add track name to Video Recording resource
- Add Composition and Composition Media resources
Api
- Add
conference_sidproperty on Recordings - Add proxy and sms usage key
Chat
- Make user channels accessible by identity
- Add notifications logs flag parameter
Fax
- Added
ttlparameterttlis the number of minutes a fax is considered valid.
Preview
- Add
call_delay,extension,verification_code, andverification_call_sids. - Add
failure_reasonto HostedNumberOrders. - Add DependentHostedNumberOrders endpoint for AuthorizationDocuments preview API.
Taskrouter
- Less verbose naming of cumulative and real time statistics (breaking change)
Api
- Add
voip,national,shared_cost, andmachine_to_machinesub-resources to/2010-04-01/Accounts/{AccountSid}/AvailablePhoneNumbers/{IsoCountryCode}/ - Add programmable video keys
Preview
- Add
verification_typeandverification_document_sidto HostedNumberOrders.
Proxy
- Fixed typo in session status enum value
Twiml
- Fix Dial record property incorrectly typed as accepting TrimEnum values when it actually has its own enum of values. (breaking change)
- Add
priorityandtimeoutproperties to Task TwiML. - Add support for
recording_status_callback_eventfor Dial verb and for Conference
Api
- Use the correct properties for Dependent Phone Numbers of an Address (breaking change)
- Update Call Recordings with the correct properties
Preview
- Add
statusandemailquery param filters for AuthorizationDocument list endpoint
Proxy
- Added DELETE support to Interaction
- Standardized enum values to dash-case
- Rename Service#friendly_name to Service#unique_name
Video
- Remove beta flag from
media_regionandvideo_codecs
Wireless
- Bug fix: Changed
operator_mccandoperator_mncinDataSessionssubresource fromintegertostring
Sync
- Add TTL support for Sync objects (breaking change)
- The required
dataparameter on the following actions is now optional: "Update Document", "Update Map Item", "Update List Item" - New actions available for updating TTL of Sync objects: "Update List", "Update Map", "Update Stream"
- The required
Video
- [bi] Rename
RoomParticipanttoParticipant - Add Recording Settings resource
- Expose EncryptionKey and MediaExternalLocation properties in Recording resource
Accounts
- Add AWS credential type
Preview
- Removed
iso_countryas required field for creating a HostedNumberOrder.
Proxy
- Added new fields to Service: geo_match_level, number_selection_behavior, intercept_callback_url, out_of_session_callback_url
Library
- Issue 451: Do not set CURLOPT_INFILESIZE by default
- PR #454: Fix the JsonSerializable. Thanks @vinu!
Api
- Add programmable video keys
Video
- Add
Participants
Chat
- Add Binding resource
- Add UserBinding resource
Api
- Add
address_sidparam to IncomingPhoneNumbers create and update - Add 'fax_enabled' option for Phone Number Search
Api
- Add
smart_encodedparam for Messages - Add
identity_sidparam to IncomingPhoneNumbers create and update
Preview
- Make 'address_sid' and 'email' optional fields when creating a HostedNumberOrder
- Add AuthorizationDocuments preview API.
Proxy
- Initial Release
Wireless
- Added
ip_addressto sim resource
Preview
- Add
acc_security(authy-phone-verification) initial api-definitions
Taskrouter
- [bi] Less verbose naming of cumulative and real time statistics
Library
- Add warnings when trying to import/use objects from legacy versions of the library.
Chat
- Make member accessible through identity
- Make channel subresources accessible by channel unique name
- Set get list 'max_page_size' parameter to 100
- Add service instance webhook retry configuration
- Add media message capability
- Make
bodyan optional parameter on Message creation. (breaking change)
Notify
data,apn,gcm,fcm,smsparameters inNotificationscreate resource now accept objects instead of strings. Passing manually stringified json objects will continue to work.
Taskrouter
- Add new query ability by TaskChannelSid or TaskChannelUniqueName
- Move Events, Worker, Workers endpoint over to CPR
- Add new RealTime and Cumulative Statistics endpoints
Video
- Create should allow an array of video_codecs.
- Add video_codecs as a property of room to make it externally visible.
Api
- Add
sip_registrationproperty on SIP Domains - Add new video and market usage category keys
TwiML
- Add classes for all TwiML verbs.
Sync
- Add support for Streams
Wireless
- Added DataSessions sub-resource to Sims.
Library
- Add
lastRequestandlastResponseproperties toCurlClientto help debugging.
Api
- Update
statusenum for Recordings to include 'failed' - Add
errorCodeproperty on Recordings
Chat
- Add mutable parameters for channel, members and messages
Video
- New
media_regionparameter when creating a room, which controls which region media will be served out of.
Api
- Add VoiceReceiveMode {'voice', 'fax'} option to IncomingPhoneNumber UPDATE requests
Chat
- Add channel message media information
- Add service instance message media information
Preview
- Removed 'email' from bulk_exports configuration api [bi]. No migration plan needed because api has not been used yet.
- Add DeployedDevices.
Sync
- Add support for Service Instance unique names
Api
- Add New wireless usage keys added
- Add
auto_correct_addressparam for Addresses create and update - Add ChatGrant to Grants and deprecate IpMessagingGrant
Video
- Add
video_codecenum andvideo_codecsparameter, which can be set to eitherVP8orH264during room creation. - Restrict recordings page size to 100
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
- Remove unused
encryption_typeproperty on Recordings (breaking change) - Update
statusenum for Messages to include 'accepted'
Messaging
- Fix incorrectly typed capabilities property for PhoneNumbers.
Notify
- Add
ToBindingoptional parameter on Notifications resource creation. Accepted values are json strings.
Preview
- Add
sms_application_sidto HostedNumberOrders.
Taskrouter
- Fully support conference functionality in reservations.
- This release drops official support for PHP 5.3 and PHP 5.4, which were EOL'd in 2014 and 2015 respectively.
- Reinstate
getPagefunctionality.
Api
- Update
AnnounceMethodparameter naming for consistency
Notify
- Add
ToBindingoptional parameter on Notifications resource creation. Accepted values are json strings.
Preview
- Add
verification_attemptsto HostedNumberOrders. - Add
status_callback_urlandstatus_callback_methodto HostedNumberOrders.
Video
- Filter recordings by date using the parameters
DateCreatedAfterandDateCreatedBefore. - Override the default time-to-live of a recording's media URL through the
Ttlparameter (in seconds, default value is 3600). - Add query parameters
SourceSid,Status,DateCreatedAfterandDateCreatedBeforeto the convenience method for retrieving Room recordings.
Wireless
- Added national and international data limits to the RatePlans resource.
- Add
localityfield toAvailablePhoneNumbers. - Add
originfield toIncomingPhoneNumbers. - Add
in_localityparameter toAvailablePhoneNumbers. - Add
originparameter toIncomingPhoneNumbers. - Add
announce_urlparameter toParticipants. - Add
announce_url_methodparameter toParticipants. - Add
getPage()methods to lists to begin paging starting from a given url.
- Rename room
Recordingsresource toRoomRecordingsto avoid class name conflict (backwards incompatible).
- Add support for video.twilio.com.
- Add support for Twilio Chat v2
- Add
recordingChannels,recordingStatusCallback,recordingStatusCallbackMethod,sipAuthUsername,sipAuthPassword,region,conferenceRecordingStatusCallback,conferenceRecordingStatusCallbackMethodoptional parameters to conference participant resource. - Add support for setting
DEBUG_HTTP_TRAFFIC=trueenvironment varibale to dump request and response information. Thanks @kevinburke, PR #394. - Add deprecation warning to
ConversationsGrant, it is being replaced byVideoGrant.
- Add TaskRouterGrant.
- Update VideoGrant.
- Add
roomas preferred grant granularity. - Deprecate setting
configurationProfileSidon grant.
- Add
- Add
validityPeriodparameter to Message creation
-
Add Answering Machine Detection to Call creation
-
Add
WRAPPINGentry to Status for Task -
Twilio Chat
- Add
limitsmap to Service - Add
limitsChannelMembersandlimitsUserChannelsfield to ServiceUpdater
- Add
Breaking Changes, refer to Upgrade Guide
- Restore ability to transfer IncomingPhoneNumbers between accounts.
Breaking Changes, refer to Upgrade Guide
- Remove end of life Sandbox resource (backwards incompatible).
- Support new
accounts.twilio.comsubdomain and products.client->accountsnow referencesaccounts.twilio.cominstead of Accounts resource (backwards incompatible).
- Fix resources throwing error on instantiation when response is missing a field.
- Chat:
- Add
orderas filter when listing Messages. - Messages
.read(),.stream(),.page()now accept options array as first parameter (backwards incompatible).
- Add
Breaking Changes, refer to Upgrade Guide
-
Fix broken default page size for all reads, thanks @rtek! Issue [#388] (twilio#388)
- Credential List Mappings, IP ACL Mappings, SIP Domains.
-
Fix incorrect types documentation of
links/subresourceUrifields on various resources. Was incorrectly documented as string, actual type was an array. -
Fix some properties incorrectly documented as
stringwhen actually werearraytypes. -
Fix boolean parameters did not accept boolean values, now accept both boolean and strings for backwards compatibility.
-
Add
emergencyEnabledfield to Addresses. -
Add
priceandcallSidfields to Recordings.- Allow filtering recordings list by call sid.
-
Add
trunkSid,emergencyStatus, andemergencyAddressSidfields to IncomingPhoneNumbers. -
Add
messagingServiceSidfield to Messages. -
Add
urland/orlinksfields to various resources which were missing them.- Lookups PhoneNumber, Monitor Events.
-
Add
subresourceUrifields to resources where missing. -
Accept DateTime inputs for date parameters for various resources, previously expected strings.
-
Remove
urifield 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
bodyparameter now required on update (backwards incompatible). -
Require
friendlyNameon Queue creation (backwards incompatible). -
Taskrouter
- Add
urland/orlinksfields to resources where missing.- Activities, Reservations, TaskQueue Statistics, WorkerStatistics, WorkersStatistics, Worker, Workflow, WorkflowStatistics, WorkspaceStatistics, Tasks, TaskQueues, Workspaces.
- Add
addons,taskQueueFriendlyName,workflowFriendlyNamefields to Tasks. - Add
taskOrderfield to TaskQueues, allow updatingtaskOrder. - Add
prioritizeQueueOrderfield to Workspace. - Allow filtering Tasks list by
evaluateTaskAttributes,ordering,hasAddons. - Disallow filtering Tasks list by
taskChannel, was never supported. - Allow filtering TaskQueues list by
workerSidandtaskOrder. - Allow updating
prioritizeQueueOrderon Workspaces. - Demote
friendlyNameto optional parameter when updating Activities (backwards incompatible). - Demote
availableto optional parameter when creating Activities (backwards incompatible). - Demote
workflowSidandattributesto optional parameters when creating a Task (backwards incompatible). - Remove
friendlyNameas optional parameter when fetching Task Queue Statistics (backwards incompatible). - WorkspaceStatistics now take
DateTimeobjects when filtering bystartDateandendDate(backwards incompatible).
- Add
-
Chat
- Add
Secretfield to Chat credentials and allow setting on create and update. - Add Channel Invite resource.
- Add
lastConsumedMessageIndexandlastConsumptionTimestampfields to Channel Members. Bodyparameter no longer required for updating a message.- Add
attributesandindexfields to Messages. - Add
membersCountandmessagesCountto Channels. - Add UserChannel resource.
- Add
attributes,friendlyName,isOnline,isNotifiable,linksto Users. - Add
reachabilityEnabled,preWebhookUrl,postWebhookUrl,webhookMethod,webhookFilters,notificationsto Services. - Fix webhooks, notifications updating on Service by separating into individual parameters.
- Remove ability to update
typeon Channels, was never supported by api (backwards incompatible). - Demote update Message
bodyto optional parameter (backwards incompatible).
- Add
-
Conferences
- Add
statusfield to Participants. - Add ability to add/remove Participants via the API.
- Add ability to end Conferences via the API.
- Add
regionandsubresourceUrifields to Conference.
- Add
-
Marketplace
- Add resources for Recording AddOns.
- AddOnResults.
- AddOnResultPayloads.
- Add
getAddOnResultshelper to Recordings.
- Add resources for Recording AddOns.
- Add
InstanceResource::toArray()
Thanks to @johnpaulmedina for this suggestion.
- Add Video Grant
Breaking Changes, refer to Upgrade Guide
- Remove required parameter
friendlyNameon IP Messaging/Chat Role update. - Alphabetize domain mounts
- Better exceptions when an error is encountered loading a page of records,
the exception class has been corrected from
DeserializeExceptiontoRestException.
Breaking Changes, refer to Upgrade Guide
- Demote
passwordto optional and remove unsupportedusernameon SIP Credential Update - Demote
RoleSidto optional and add optionalattributes,friendlyNameparameters on IP Messaging/Chat User creation - Add optional
attributesparameter on IP Messaging/Chat message creation
Breaking Changes, refer to Upgrade Guide
- New options for Conference Participant management.
- Adds support for
hold,holdUrl,holdMethod
- Adds support for
- Mount
ip-messagingunder the newchatdomain - Demote
assignmentCallbackUrlfrom a required argument to optional for Taskrouter Workflows to better support client managed reservations.
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.
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.
- Adds the ability to pass options into
Twilio\Http\CurlClient. This feature bringsCurlClientcloser to parity withServices_Twilio_TinyHttp.
- Fixes a bug where reading lists with a
$limitand no$pageSizewould cause a divide by zero error. - Sanity check in the
Twimlgenerator - Better tests for
TwimlandVersion
Add the VERSIONS.md to explain the versioning strategy, first alpha release.
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.
Released August 9, 2016
- Add
synchronizemethod to InstanceResoure
Released January 28, 2016
- Add support for filter_friendly_name in WorkflowConfig
- Load reservations by default in TaskRouter
Released January 22, 2016
- Fix Address instance reference
Released January 19, 2016
- Add missing create/delete methods on Address
Released December 18, 2015
- Add IP Messaging capability
Released December 8, 2015
- Fix issue with empty grant encoding
Released December 8, 2015
- Update access tokens to support optional NBF
Released December 3, 2015
- Add access tokens
Released November 9, 2015
- Secured Signature header validation from timing attack
Released October 30, 2015
- Add support for Keys
Released September 21, 2015
- Add support for messaging in Twilio Pricing API
- Add support for Elastic SIP Trunking API
Released August 11, 2015
- Add support for new Taskrouter JWT Functionality, JWTs now grant access to
- Workspace
- Worker
- TaskQueue
Released June 9, 2015
- Update install documentation
Released May 19, 2015
- Add support for the beta field in IncomingPhoneNumbers and AvailablePhoneNumbers
Released May 7, 2015
- Add support for Twilio Monitor Events and Alerts
Released May 6, 2015
- Add support for the new Pricing API.
Released on April 29, 2015
- Fix to add rawurlencoding to phone number lookups to support spaces
Released on April 27, 2015
- Fix the autoloading so that Lookups_Services_Twilio and TaskRouter_Services_Twilio are available independently of Services_Twilio
Released on April 22, 2015
- Make Lookups_Services_Twilio and TaskRouter_Services_Twilio available through Composer.
Released on April 16, 2015
- Removes counts from ListResource
- Change Services_Twilio::getRequestUri() from a static method to an instance method.
Released on March 31, 2015
- Add new Lookups API client
Released on February 18, 2015
- Add new TaskRouter API client
- Miscellaneous doc fixes
Released on December 4, 2014
- Add support for the new Addresses endpoints.
Released on November 21, 2014
- Add support for the new Tokens endpoint
Released on November 13, 2014
- Add support for redacting Messages and deleting Messages or Calls
- Remove pinned SSL certificates
Released on July 15, 2014
- Changed the naming of the SIP class to comply with PSR-0
Released on January 30, 2014
- Fix incorrect use of static:: which broke compatibility with PHP 5.2.
Released on January 28, 2014
- Add link from recordings to associated transcriptions.
- Document how to debug requests, improve TwiML generation docs.
Released on January 5, 2014
- Fixes string representation of resources
- Support PHP 5.5
Released on October 21, 2013
- Add support for filtering by type for IncomingPhoneNumbers.
- Add support for searching for mobile numbers for both IncomingPhoneNumbers and AvailablePhoneNumbers.
Released on September 18, 2013
-
Support MMS
-
Support SIP In
-
$params arrays will now turn lists into multiple HTTP keys with the same name,
array("Twilio" => array('foo', 'bar'))will turn into Twilio=foo&Twilio=bar when sent to the API.
-
Update the documentation to use php-autodoc and Sphinx.
Released on June 13
- Support Streams when curl is not available for PHP installations
Released on February 2, 2013
- Uses the HTTP status code for error reporting, instead of the
statusattribute of the JSON response. (Reporter: Ruud Kamphuis)
Released on December 30, 2012
- Adds a
$last_responseparameter to the$clientobject that can be used to retrieve the raw API response. (Reporter: David Jones)
Released on December 20, 2012
- Fixes TwiML generation to handle non-ASCII characters properly. Note that as of version 3.9.0, the library requires PHP version 5.2.3, at least for TwiML generation. (Reporter: Walker Hamilton)
Released on December 15, 2012
- Fixes the ShortCode resource so it is queryable via the PHP library.
Released on November 26, 2012
- Fixes an issue where you could not iterate over the members in a queue. (Reporter: Alex Chan)
Released on November 23, 2012
- Implements the Countable interface on the ListResource, so you can call count() on any resource.
- Adds a convenience method for retrieving a phone number object, so you can retrieve all of a number's properties by its E.164 representation.
Internally:
- Adds unit tests for url encoding of Unicode characters.
- Updates Travis CI configuration to use Composer, shortening build time from 83 seconds to 21 seconds.
Released on October 17, 2012
- Support the new Usage API, with Usage Records and Usage Triggers. Read the PHP documentation for usage records or usage triggers
- The library will now use a standard CA cert whitelist for SSL validation, replacing a file that contained only Twilio's SSL certificate. (Reporter: Andrew Benton)
Released on August 16, 2012
- Fix a bug in the 3.5.0 release where updating an instance resource would cause subsequent updates to request an incorrect URI. (Reporter: Dan Bowen)
Released on August 6, 2012
- Add retry support for idempotent HTTP requests that result in a 500 server error (default is 1 attempt, however this can be configured).
- Throw a Services_Twilio_RestException instead of a DomainException if the response content cannot be parsed as JSON (usually indicates a 500 error)
Released on August 5, 2012
- Add support for Queues and Members. Includes tests and documentation for the new functionality.
Released on July 23, 2012
-
Fix an issue introduced in the 3.5.0 release where updating or muting a participant would throw an exception instead of muting the participant. (Reporter: Alex Chan)
-
Fix an issue introduced in the 3.5.0 release where filtering an iterator with parameters would not work properly on subsequent HTTP requests. (Reporters: Alex Chan, Ivor O'Connor)
Released on July 2, 2012
- Fix an issue introduced in the 3.5.0 release that would cause a second HTTP request for an instance resource to request an incorrect URI.
Released on June 30, 2012
- Support paging through resources using the
next_page_uriparameter instead of manually constructing parameters using thePageandPageSizeparameters. Specifically, this allows the library to use theAfterSidparameter, which leads to improved performance when paging deep into your resource list.
This involved a major refactor of the library. The documented interface to twilio-php will not change. However, some undocumented public methods are no longer supported. Specifically, the following classes are no longer available:
Services/Twilio/ArrayDataProxy.phpServices/Twilio/CachingDataProxy.phpServices/Twilio/DataProxy.php
In addition, the following public methods have been removed:
-
setProxy, inServices/Twilio/InstanceResource.php -
getSchema, inServices/Twilio/ListResource.php,Services/Twilio/Rest/AvailablePhoneNumbers.php,Services/Twilio/Rest/SMSMessages.php -
retrieveData, inServices/Twilio/Resource.php -
deleteData, inServices/Twilio/Resource.php -
addSubresource, inServices/Twilio/Resource.php
Please check your own code for compatibility before upgrading.
Released on May 3, 2012
- If you pass booleans in as TwiML (ex transcribe="true"), convert them to the strings "true" and "false" instead of outputting the incorrect values 1 and "".
Released on May 1, 2012
- Use the 'Accept-Charset' header to specify we want to receive UTF-8 encoded data from the Twilio API. Remove unused XML parsing logic, as the library never requests XML data.
Released on March 14, 2012
- If no version is passed to the Services_Twilio constructor, the library will default to the most recent API version.