Metadata-Version: 2.1
Name: twilio
Version: 6.44.2
Summary: Twilio API client and TwiML generator
Home-page: https://github.com/twilio/twilio-python/
Author: Twilio
Author-email: help@twilio.com
License: UNKNOWN
Description: # twilio-python
        
        [![Build Status](https://secure.travis-ci.org/twilio/twilio-python.png?branch=master)](https://travis-ci.org/twilio/twilio-python)
        [![PyPI](https://img.shields.io/pypi/v/twilio.svg)](https://pypi.python.org/pypi/twilio)
        [![PyPI](https://img.shields.io/pypi/pyversions/twilio.svg)](https://pypi.python.org/pypi/twilio)
        [![Learn OSS Contribution in TwilioQuest](https://img.shields.io/static/v1?label=TwilioQuest&message=Learn%20to%20contribute%21&color=F22F46&labelColor=1f243c&style=flat-square&logo=data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAIAAAACACAMAAAD04JH5AAAASFBMVEUAAAAZGRkcHBwjIyMoKCgAAABgYGBoaGiAgICMjIyzs7PJycnMzMzNzc3UoBfd3d3m5ubqrhfrMEDu7u739/f4vSb/3AD///9tbdyEAAAABXRSTlMAAAAAAMJrBrEAAAKoSURBVHgB7ZrRcuI6EESdyxXGYoNFvMD//+l2bSszRgyUYpFAsXOeiJGmj4NkuWx1Qeh+Ekl9DgEXOBwOx+Px5xyQhDykfgq4wG63MxxaR4ddIkg6Ul3g84vCIcjPBA5gmUMeXESrlukuoK33+33uID8TWeLAdOWsKpJYzwVMB7bOzYSGOciyUlXSn0/ABXTosJ1M1SbypZ4O4MbZuIDMU02PMbauhhHMHXbmebmALIiEbbbbbUrpF1gwE9kFfRNAJaP+FQEXCCTGyJ4ngDrjOFo3jEL5JdqjF/pueR4cCeCGgAtwmuRS6gDwaRiGvu+DMFwSBLTE3+jF8JyuV1okPZ+AC4hDFhCHyHQjdjPHUKFDlHSJkHQXMB3KpSwXNGJPcwwTdZiXlRN0gSp0zpWxNtM0beYE0nRH6QIbO7rawwXaBYz0j78gxjokDuv12gVeUuBD0MDi0OQCLvDaAho4juP1Q/jkAncXqIcCfd+7gAu4QLMACCLxpRsSuQh0igu0C9Svhi7weAGZg50L3IE3cai4IfkNZAC8dfdhsUD3CgKBVC9JE5ABAFzg4QL/taYPAAWrHdYcgfLaIgAXWJ7OV38n1LEF8tt2TH29E+QAoDoO5Ve/LtCQDmKM9kPbvCEBApK+IXzbcSJ0cIGF6e8gpcRhUDogWZ8JnaWjPXc/fNnBBUKRngiHgTUSivSzDRDgHZQOLvBQgf8rRt+VdBUUhwkU6VpJ+xcOwQUqZr+mR0kvBUgv6cB4+37hQAkXqE8PwGisGhJtN4xAHMzrsgvI7rccXqSvKh6jltGlrOHA3Xk1At3LC4QiPdX9/0ndHpGVvTjR4bZA1ypAKgVcwE5vx74ulwIugDt8e/X7JgfkucBMIAr26ndnB4UCLnDOqvteQsHlgX9N4A+c4cW3DXSPbwAAAABJRU5ErkJggg==)](https://twil.io/learn-open-source)
        
        **The default branch name for this repository has been changed to `main` as of 07/27/2020.**
        
        ## Documentation
        
        The documentation for the Twilio API can be found [here][apidocs].
        
        The Python library documentation can be found [here][libdocs].
        
        ## Versions
        
        `twilio-python` uses a modified version of [Semantic Versioning](https://semver.org) for all changes. [See this document](VERSIONS.md) for details.
        
        ### Migrating from 5.x
        
        Please consult the [official migration guide](https://www.twilio.com/docs/libraries/python/migration-guide) for information on upgrading your application using twilio-python 5.x to 6.x
        
        ### Supported Python Versions
        
        This library supports the following Python implementations:
        
        * Python 2.7
        * Python 3.4
        * Python 3.5
        * Python 3.6
        * Python 3.7
        * Python 3.8
        
        ## Installation
        
        Install from PyPi using [pip](http://www.pip-installer.org/en/latest/), 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)](https://github.com/twilio/twilio-python/zipball/master "twilio-python
        source code") 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
        `Client` and you're ready to go.
        
        ### API Credentials
        
        The `Twilio` needs your Twilio credentials. You can either pass these
        directly to the constructor (see the code below) or via environment variables.
        
        ```python
        from twilio.rest import Client
        
        account = "ACXXXXXXXXXXXXXXXXX"
        token = "YYYYYYYYYYYYYYYYYY"
        client = Client(account, token)
        ```
        
        Alternatively, a `Client` 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.
        
        
        ```python
        from twilio.rest import Client
        client = Client()
        ```
        
        ### Specify Region and/or Edge
        
        To take advantage of Twilio's [Global Infrastructure](https://www.twilio.com/docs/global-infrastructure), specify the target Region and/or Edge for the client:
        
        ```python
        from twilio.rest import Client
        
        client = Client(region='au1', edge='sydney')
        ```
        A `Client` constructor  without these parameters will also look for `TWILIO_REGION` and `TWILIO_EDGE` variables inside the current environment.
        
        Alternatively, you may specify the edge and/or region after constructing the Twilio client:
        
        ```python
        from twilio.rest import Client
        
        client = Client()
        client.region = 'au1'
        client.edge = 'sydney'
        ```
        
        This will result in the `hostname` transforming from `api.twilio.com` to `api.sydney.au1.twilio.com`.
        
        ### Make a Call
        
        ```python
        from twilio.rest import Client
        
        account = "ACXXXXXXXXXXXXXXXXX"
        token = "YYYYYYYYYYYYYYYYYY"
        client = Client(account, token)
        
        call = client.calls.create(to="9991231234",
                                   from_="9991231234",
                                   url="http://twimlets.com/holdmusic?Bucket=com.twilio.music.ambient")
        print(call.sid)
        ```
        
        ### Send an SMS
        
        ```python
        from twilio.rest import Client
        
        account = "ACXXXXXXXXXXXXXXXXX"
        token = "YYYYYYYYYYYYYYYYYY"
        client = Client(account, token)
        
        message = client.messages.create(to="+12316851234", from_="+15555555555",
                                         body="Hello there!")
        ```
        
        ### Handling Exceptions
        
        ```python
        from twilio.rest import Client
        from twilio.base.exceptions import TwilioRestException
        
        account = "ACXXXXXXXXXXXXXXXXX"
        token = "YYYYYYYYYYYYYYYYYY"
        client = Client(account, token)
        
        try:
          message = client.messages.create(to="+12316851234", from_="+15555555555",
                                           body="Hello there!")
        except TwilioRestException as e:
          print(e)
        ```
        
        For more descriptive exception types, please see the [Twilio documentation](https://www.twilio.com/docs/libraries/python/usage-guide#exceptions).
        
        ### Generating TwiML
        
        To control phone calls, your application needs to output [TwiML][twiml].
        
        Use `twilio.twiml.Response` to easily create such responses.
        
        ```python
        from twilio.twiml.voice_response import VoiceResponse
        
        r = VoiceResponse()
        r.say("Welcome to twilio!")
        print(str(r))
        ```
        
        ```xml
        <?xml version="1.0" encoding="utf-8"?>
        <Response><Say>Welcome to twilio!</Say></Response>
        ```
        
        ### Using a Custom HTTP Client
        
        To use a custom HTTP client with this helper library, please see the [Twilio documentation](https://www.twilio.com/docs/libraries/python/custom-http-clients-python).
        
        ### Docker Image
        
        The `Dockerfile` present in this repository and its respective `twilio/twilio-python` Docker image are currently used by Twilio for testing purposes only.
        
        ### Getting help
        
        If you need help installing or using the library, please check the [Twilio Support Help Center](https://support.twilio.com) first, and [file a support ticket](https://twilio.com/help/contact) if you don't find an answer to your question.
        
        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!
        
        [apidocs]: https://www.twilio.com/docs/api
        [twiml]: https://www.twilio.com/docs/api/twiml
        [libdocs]: https://twilio.github.io/twilio-python
        
Keywords: twilio,twiml
Platform: UNKNOWN
Classifier: Development Status :: 5 - Production/Stable
Classifier: Intended Audience :: Developers
Classifier: License :: OSI Approved :: MIT License
Classifier: Operating System :: OS Independent
Classifier: Programming Language :: Python
Classifier: Programming Language :: Python :: 2.7
Classifier: Programming Language :: Python :: 3.4
Classifier: Programming Language :: Python :: 3.5
Classifier: Programming Language :: Python :: 3.6
Classifier: Programming Language :: Python :: 3.7
Classifier: Programming Language :: Python :: 3.8
Classifier: Programming Language :: Python :: Implementation :: CPython
Classifier: Topic :: Software Development :: Libraries :: Python Modules
Classifier: Topic :: Communications :: Telephony
Description-Content-Type: text/markdown
