Call Redirection via the Twilio REST API
Time to read: 1 minute
Twilio is excited to announce the addition of asynchronous call redirection to the Twilio REST API. This feature opens a wide range of advanced call queuing, call center, and enterprise uses. Using the call redirect API, you can interrupt an in-progress call and have it begin executing a new TwiML document of your choice, simply by POSTing to the Call Instance Resource.
This API gives you realtime control over running calls. You can put calls in and out of hold music, transfer a call from one <Dial> to another, hangup a call and so forth – all by making a simple REST API request.
Placing the Caller on Hold
Here is a simple example:
Lets say you receive an incoming call and want to put the caller on hold until someone can answer. You can simply drop them into a TwiML document like this:
<Response>
<Say> Thank you for calling, a representative will be with you shortly</Say>
<Play loop="100">http://www.mydomain.foo/hold-music.mp3</Play>
</Response>
The caller will sit in a loop of hold music, patiently waiting.
Taking a Caller Off Hold
When a representative becomes available or other external event to occurs, your Twilio application can issue the following REST API request:
POST https://api.twilio.com/2008-08-01/Account/{YourAccountSid}/Calls/{WaitingCallersCallSid}
CurrentUrl=http://www.mydomain.com/dial-representitive
This will interrupt the looping Play verb and begin executing the following "dial-representive" TwiML for the caller.
<Response>
<Dial>415-555-6666</Dial>
</Response>
The end result is that the caller has been removed from the <Play> loop and placed into a <Dial>, taking he or she off hold and connecting the call to the representative at 415-555-6666.
Hanging Up on the Caller
If instead you wanted to hang up on the caller, you could make a similar REST API request which redirects the call to this TwiML document:
<Response>
<Say>Thank you for calling. Goodbye</Say>
<Hangup/>
</Response>
Simple as that! For more information on this feature, see the "Redirect a Call" section of the REST API documentation. We also have example code for a simple call queue in our HowTo section.
Related Posts
Related Resources
Twilio Docs
From APIs to SDKs to sample apps
API reference documentation, SDKs, helper libraries, quickstarts, and tutorials for your language and platform.
Resource Center
The latest ebooks, industry reports, and webinars
Learn from customer engagement experts to improve your own communication.
Ahoy
Twilio's developer community hub
Best practices, code samples, and inspiration to build communications and digital engagement experiences.