Skip to content
This repository has been archived by the owner on Aug 30, 2019. It is now read-only.

Latest commit

 

History

History
67 lines (50 loc) · 1.97 KB

README.md

File metadata and controls

67 lines (50 loc) · 1.97 KB

Travis CI build status

Deprecation notice

This library is unmaintained! My employer stopped using billomat services. Therefore no fix or update will be done on this project anymore. If you're interested in taking over maintenance, let me know.

Python client for the billomat.com API

The syntax of the client is inspired by the great Django ORM.

Example usage

from billomat import models
from billomat.base import Client

Client.api_name = 'apiname'
Client.api_key = 'apikey'

# set optional app-id and -secret
Client.app_id = 'app_id'
Client.app_secret = 'app_secret'

articles = models.Article.objects.all()
for article in articles:
    print unicode(article.title)
articles = articles.filter(title='Awesome')
for article in articles:
    print unicode(article.title)

article = models.Article.objects.get(article_number=2)
article.title = u'This is an awesome article'
article.save()

article = models.Article.objects.create(
    title=u'This is an awesome article',
)
article.delete()

Django support

Automatic client configuration by django config is supported

BILLOMAT_API_NAME = 'aaa'
BILLOMAT_API_KEY = 'bbb'
BILLOMAT_APP_ID = 'ccc'
BILLOMAT_APP_SECRET = 'ddd'

The client sends 3 django signals:

  • billomatclient_request, send before the request
  • billomatclient_response, send after the request containing the response
  • billomatclient_error, send after a request error containing the exception

Each signal sends a request_id which is a unique identifier (uuid4) for each request to track the status along the signal flow.

License

MIT