Lago Python Client
This is a python wrapper for Lago API
Current Releases
Project | Release Badge |
---|
Lago | |
Lago Python Client | |
Installation
Install the lago-python-client via pip from PyPI:
$ python -m pip install "lago-python-client"
(Alternative) Install the lago-python-client via poetry from PyPI:
$ poetry add "lago-python-client"
Usage
Check the lago API reference
Development
Install the dependencies
python -m pip install --upgrade pip setuptools wheel
python -m pip install .[test]
Run tests
pytest
Documentation
The Lago documentation is available at doc.getlago.com.
Changelog
- #55 -- Error handling (
LagoApiError
)
Example, creating wallet:
try:
response = client.wallets().create(wallet)
except LagoApiError as error:
do_something(status=error.status_code)
Available properties:
>>> error.status_code
422
>>> error.detail
'Unprocessable Entity'
>>> error.headers
{'X-Frame-Options': 'SAMEORIGIN', 'X-XSS-Protection': '0', 'X-Content-Type-Options': 'nosniff', 'X-Download-Options': 'noopen', 'X-Permitted-Cross-Domain-Policies': 'none', 'Referrer-Policy': 'strict-origin-when-cross-origin', 'Content-Type': 'application/json; charset=utf-8', 'Cache-Control': 'no-cache', 'X-Request-Id': '613e7542-b29e-4224-bd19-a16dd1bfa62b', 'X-Runtime': '1.024304', 'Vary': 'Origin', 'Transfer-Encoding': 'chunked'}
>>> error.response
{'status': 422, 'error': 'Unprocessable Entity', 'code': 'validation_errors', 'error_details': {'customer': ['wallet_already_exists']}}
>>> error.response['error_details']['customer'][0]
'wallet_already_exists'
>>> error.url
'http://localhost:3000/api/v1/wallets'
Contributing
The contribution documentation is available here
License
Lago Python client is distributed under MIT license.