Skip to main content
Join the official 2019 Python Developers SurveyStart the survey!

Python client for Phaxio

Project description

A Python module for interacting with the Phaxio API.

Installation

Via pip:

$ pip install pyphaxio

Usage

Send a fax to multiple people using HTML message:

from phaxio import PhaxioApi

api = PhaxioApi(key, secret)
r = api.send(to=['4141234567', '5141234567', '6151234567'],
    string_data='Hello World!',
    string_data_type='text')
print(r.get('faxId'))

Generally, each supported method takes keyword arguments with the exact same names of the API method parameters as they’re described in the documentation. One exception to this rule is that filename is instead referred to as files. For example, to send a fax using files:

llama = os.path.join(os.path.dirname(__file__), 'tests/llama.pdf')
alpaca = os.path.join(os.path.dirname(__file__), 'tests/alpaca.pdf')
f = open(alpaca, 'rb')
r = api.send(to='4141234567', files=(llama, f))

See the tests for additional examples.

Error Handling

By default, the api calls return a dictionary. However, you can use PhaxioApi(key, secret, raise_errors=True) which will raise the following errors: * AuthenticationError - key/secret are invalid * APIError - error with api call * ServerError - server had an error and could not complete your request

Errors can be imported from the phaxio.exceptions module.

Currently Supported API Calls

Implemented and tested:

  • send
  • testReceive
  • faxStatus
  • faxFile

Implemented and untested:

  • attachPhaxCodeToPdf
  • createPhaxCode
  • getHostedDocument
  • provisionNumber
  • releaseNumber
  • numberList
  • faxList
  • faxCancel
  • accountStatus

Testing

python setup.py test

You will be prompted for a test api key and secret

Contributing

  1. Fork it
  2. Create your feature branch (git checkout -b my-new-feature)
  3. Commit your changes (git commit -am 'Added some feature')
  4. Push to the branch (git push origin my-new-feature)
  5. Create new Pull Request

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Files for pyphaxio, version 0.11
Filename, size File type Python version Upload date Hashes
Filename, size pyphaxio-0.11-py2-none-any.whl (7.8 kB) File type Wheel Python version 2.7 Upload date Hashes View hashes
Filename, size pyphaxio-0.11.tar.gz (4.7 kB) File type Source Python version None Upload date Hashes View hashes

Supported by

Elastic Elastic Search Pingdom Pingdom Monitoring Google Google BigQuery Sentry Sentry Error logging AWS AWS Cloud computing DataDog DataDog Monitoring Fastly Fastly CDN SignalFx SignalFx Supporter DigiCert DigiCert EV certificate StatusPage StatusPage Status page