Skip to main content

A dead simple Python interface to the Alwaysdata API.

Project description

alwaysdata_api

A dead simple Python interface to the Alwaysdata API

PyPI version

Installation

pip install alwaysdata_api

(Use flag --user if you can't install globally.)

Usage

If you store your API key and account name in the ALWAYSDATA_API_KEY and ALWAYSDATA_ACCOUNT environment variables, the following example works out of the box:

from alwaysdata_api import Domain
Domain.list(name='paul')[0].name
# 'paulkoppen.com'

Alternatively, you can provide the authentication via code. The above example then needs to be expanded to include the extra configuration:

from alwaysdata_api import Auth, Domain
auth = Auth('account_name', 'api_key')
Domain.list(name='paul', auth=auth)[0].name
# 'paulkoppen.com'

See demo.py for more examples.

Every resources in the API docs has a class in this package (such as Domain, Record, Mailbox, etc) and all resources share the same set of methods. To give you a quick idea:

  • Resource.get(id) retrieves the instance.
  • Resource.list(**query_kwargs) finds and returns the list of resources.
  • res.post() submits the resource instance to the server to be created.
  • res.put() updates the instance on the server.
  • Resource.delta(res1, res2).patch() sends the changes from res1 to res2 to the server.
  • res.delete() deletes it.

Development

Although it is a simple bit of code, surely it can be improved. Contributions are very welcome. Just send a PR (please include tests). It would be equally great to have some instructions in this repo Wiki (I would have to find out how that works though :-))

Code style follows PEP accurately and uses Google style docstrings.

For testing:

python -m unittest

Licence

MIT

Project details


Download files

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

Filename, size & hash SHA256 hash help File type Python version Upload date
alwaysdata_api-0.9.4-py3-none-any.whl (12.9 kB) Copy SHA256 hash SHA256 Wheel py3
alwaysdata_api-0.9.4.tar.gz (12.0 kB) Copy SHA256 hash SHA256 Source None

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