Python interface for IARP's myDATA service
Project description
CLI / HTTP client for myDATA
This project allows users to interact with myDATA ("my Digital Accounting and Tax Application") either via a Python HTTP client or from the CLI.
Install
Install it with pip
:
python -m pip install mydata-client
Usage
[!WARNING] The tool is not suitable yet for production use. We strongly suggest that you use it for experimenting only with the development sandbox that myDATA provides.
[!NOTE] Oh, you may also find the docs a bit... lacking :grimacing:
If you want to interact programmatically with myDATA's API, you can use the HTTP
client under mydata/client.py
. The Python dataclasses that bind to XML
documents can be found in the mydata/models*
modules, depending on which
version of the API you want to use.
There is also a proof-of-concept CLI that you can use:
mydata --username <username> <command>
There are two command groups that you can invoke:
- The
api
command group, which is unopinionated and straight up hits the endpoint that you ask. - The
invoice
command group, which is heavily opinionated and adds some helper commands to work with invoices. Basically, it's there to assist the list -> retrieve -> copy -> edit -> validate -> send lifecycle of an invoice.
Building
Install Poetry. Then, install the project dependencies:
poetry install
Adding new XSD schemas
Whenever there's an API update, myDATA devs include the XML schemas for the latest API. You can include them in the project as follows:
-
Add the XML schemas under
schemas/<version>
dir. For example, for the 1.0.8 XSDs, we added them with:cp -r '/path/to/version v1.0.8 XSDs' schemas/1.0.8
-
Generate Python classes from the new XSDs. For example, for the 1.0.8 XSDs, we generated Python classes with:
poetry run xsdata -ss single-package -ds Google -r schemas/1.0.8/ -p mydata.models_v1_0_8
-
Generate Markdown documentation from the generated Python classes with:
poetry run pydoc-markdown -m mydata.models_v1_0_8 --render-toc > docs/models_v1_0_8.md
License
Licensed under MPL-2.0. Please read the NOTICE.md
and
LICENSE
files for the full copyright and license information.
Useful links
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Hashes for mydata_client-0.1.2-py3-none-any.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 63b3da56659c18f7aabaa94a8d051fcf8a54dc077a57f14ea1909906038a59fe |
|
MD5 | 52d98873fbf8a86eeeccf2072c1d8da1 |
|
BLAKE2b-256 | 32bcb392934894b8b4f1f5e9cc607cbe221a4494d450b0a692c4af1295fa4518 |