Twilio's Programmable SMS API helps you add robust messaging capabilities to your applications.
All URLs referenced in the API documentation have the following base:
This REST API is served over HTTPS. To ensure data privacy, unencrypted HTTP is not supported.
You can control your connectivity into Twilio’s platform by including your specific edge location in the subdomain. This will allow you to bring Twilio’s public or private network connectivity closer to your applications for improved performance.
For instance customers with infrastructure in Germany can make use of the
frankfurt edge location by using the base url of:
In short, you will use your Twilio Account SID as the username and your Auth Token as the password for HTTP Basic authentication with Twilio.
curl -G https://api.twilio.com/2010-04-01/Accounts \ -u '[YOUR ACCOUNT SID]:[YOUR AUTH TOKEN]'
You can find your account SID and auth token in your console.
Twilio's SMS API helps you send and manage messages programmatically:
You can also leverage the REST API to query metadata and manage your messages:
- Delete or redact content from an existing message
- Track message feedback
- Fetch, update, or delete media associated with a message
- Fetch and update the short codes tied to your account
- Manage your account's messaging services
You'll be able to find all relevant SMS API resources in the "API Reference" folder in the left nav on this page.
Send and receive messages directly from your web application with the SMS API. For step-by-step instructions on how to do this with one of our supported helper libraries, check out the SMS quickstarts for:
Not using one of the supported helper libraries? Check out these additional articles that teach you how to send an SMS with:
Missing a language you like? If you follow the conventions in our curl code snippets throughout the documentation, you can translate the API call to your programming language of choice.
With Twilio Autopilot, you can build SMS Bots that use machine learning and natural language understanding to naturally interact with your SMS application. For example, if you're sending appointment reminders over SMS, an SMS bot can let users confirm, change or cancel their appointment by responding with messages like 'That works', 'I need to change my appointment' or 'Please cancel my appointment', instead of requiring them to respond with hard-coded responses like 'Yes', 'Change' or 'Cancel'.
- Learn how to track the delivery status of messages sent with the Twilio API
- Send an SMS message during a phone call with Python and Flask
- Build SMS-powered appointment reminders
- Send ETA notifications to keep your users up to date
- Browse all SMS tutorials
Twilio's SMS API is a flexible building block which can take you from sending your first text message all the way to sending and receiving millions.
While we hope this page gives a good overview of what you can do with the API, we're only scratching the surface. For help troubleshooting the API, see our SMS troubleshooting tips and learn how to use Twilio's debugging tools.
If you need any help integrating the SMS API or want to talk best practices, please get in touch. You can give us feedback using the survey on this page, speaking with support, talking to sales, or reaching out on Twitter.
We can't wait to see what you build!