A Python module for communicating with the Twilio API and generating TwiML.
Python Makefile
Latest commit fd20d3e Feb 21, 2017 @efossier efossier committed on GitHub Merge pull request #298 from remik/feature/py36
Python 3.6 support



Build Status PyPI

A module for using the Twilio REST API and generating valid TwiML. Click here to read the full documentation.


Install from PyPi using pip, a package manager for Python.

pip install twilio

Don't have pip installed? Try installing it, by running this from the command line:

$ curl https://raw.github.com/pypa/pip/master/contrib/get-pip.py | python

Or, you can download the source code (ZIP) for twilio-python, and then run:

python setup.py install

You may need to run the above commands with sudo.

Getting Started

Getting started with the Twilio API couldn't be easier. Create a TwilioRestClient and you're ready to go.

API Credentials

The TwilioRestClient needs your Twilio credentials. You can either pass these directly to the constructor (see the code below) or via environment variables.

from twilio.rest import TwilioRestClient

client = TwilioRestClient(account, token)

Alternately, a TwilioRestClient constructor without these parameters will look for TWILIO_ACCOUNT_SID and TWILIO_AUTH_TOKEN variables inside the current environment.

We suggest storing your credentials as environment variables. Why? You'll never have to worry about committing your credentials and accidentally posting them somewhere public.

from twilio.rest import TwilioRestClient
client = TwilioRestClient()

Make a Call

from twilio.rest import TwilioRestClient

client = TwilioRestClient(account, token)

call = client.calls.create(to="9991231234",

Send an SMS

from twilio.rest import TwilioRestClient

client = TwilioRestClient(account, token)

message = client.messages.create(to="+12316851234", from_="+15555555555",
                                 body="Hello there!")

Handling a call using TwiML

To control phone calls, your application needs to output TwiML. Use twilio.twiml.Response to easily create such responses.

from twilio import twiml

r = twiml.Response()
r.say("Welcome to twilio!")
<?xml version="1.0" encoding="utf-8"?>
<Response><Say>Welcome to twilio!</Say></Response>

Getting help

If you need help installing or using the library, please contact Twilio Support at help@twilio.com first. Twilio's Support staff are well-versed in all of the Twilio Helper Libraries, and usually reply within 24 hours.

If you've instead found a bug in the library or would like new features added, go ahead and open issues or pull requests against this repo!

Digging Deeper

The full power of the Twilio API is at your fingertips. The full documentation explains all the awesome features available to use.