Carriers route any landline or mobile call to the Twilio cloud.
Twilio receives the call and makes a request to your application.
Your app receives that request and responds with XML back to Twilio.
curl -X POST https://api.twilio.com/2010-04-01/Accounts/{AccountSid}/Calls \
--data-urlencode "To=+14155551212" \
--data-urlencode "From=+14158675309" \
--data-urlencode "Url=http://www.drawtheowl.com/ahoy.php" \
-u {AccountSid}:{AuthToken}
The number you want to ring. Can be any valid number in supported countries.
The number you'd like to appear in the recipient's caller ID. Can be any purchased or validated number.
The URL Twilio should retrieve TwiML from to decide how to proceed with the phone call when answered.
Twilio talks to your web app via webhooks - realtime HTTP requests to your web app. When your users call, Twilio will answer and synchronously make a webhook request to your app and ask for TwiML instructions about how to proceed with the call. The platform is a well-behaved HTTP client, and even supports cookies.
We designed Twilio for web developers like you who want to build applications that communicate. That's why Twilio supports a rich REST API as well as helper libraries for your favorite programming language. No need to learn some foreign software or hardware stack to make a phone ring. Use the tools you know, and rock the phone grid.
If robustness and reliability are as important to your application as they are to us, you'll be writing tests to ensure your customers always have a great experience. With Twilio's Test Credentials you can test those pesky telecom edge-cases, from buying a phone-number in Portugal to placing a call to Peru. All without spending a penny.
REST API request & parameter details and examples of constructing requests
Step by step guides walk through building basic web apps that control the phone network.
Create an account. Build an app that makes phone calls in under five minutes flat. No credit card required.