Skip to main content

Fully typed, async client library for Technical Master Data Service (TMDS)

Project description

tmdsclient.py

License: MIT Python Versions (officially) supported Pypi status badge Unittests status badge Coverage status badge Linting status badge Black status badge

This repository contains the package tmdsclient. It is an async, fully typed Python client for the Technical Master Data Service (TMDS).

Its features are handwritten and extended as we need them. So it is not autogenerated from the TMDS OpenAPI.

Installation

Install it from PyPI:

pip install tmdsclient

Usage

from yarl import URL
from tmdsclient import BasicAuthTmdsClient, BasicAuthTmdsConfig

tmds_config = BasicAuthTmdsConfig(
    server_url=URL("https://my-tmds.xtk-test.org/"),
    usr="my-usr",
    pwd="my-pwd",
)
client = BasicAuthTmdsClient(tmds_config)
netzvertrage = await client.get_netzvertraege_for_melo("DE1234567890123456789012345678901")

Even though we did not fully replicate the TMDS data model (mainly BO4E.net + some wrapper classes), we tried to make the client as flexible as possible. You can use any unmapped field returned by TMDS by using the model_extra property of pydantic.

Development

For development of this library, follow the instructions in our Python Template Repository. tl;dr: tox -e dev will set up a development environment for you.

Release (CI/CD)

To release a new version of this library, create a new release in GitHub. Make sure its tag starts with v and the version number, e.g. v1.2.3. Releases are not restricted to the main branch, but we prefer them to happen there.

Contribute

You are very welcome to contribute to this template repository by opening a pull request against the main branch.

Project details


Download files

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

Source Distribution

tmdsclient-0.3.1.tar.gz (23.4 kB view details)

Uploaded Source

Built Distribution

tmdsclient-0.3.1-py3-none-any.whl (23.9 kB view details)

Uploaded Python 3

File details

Details for the file tmdsclient-0.3.1.tar.gz.

File metadata

  • Download URL: tmdsclient-0.3.1.tar.gz
  • Upload date:
  • Size: 23.4 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/5.1.1 CPython/3.12.7

File hashes

Hashes for tmdsclient-0.3.1.tar.gz
Algorithm Hash digest
SHA256 9e4da6d57ddf541328827d4b4754d4fcf96d6f349d8fec567de9c6d5abe91722
MD5 2d4547f2eceea44cc2a60ccf5cfae9d6
BLAKE2b-256 18f99df65957e12afe0d9923f0abe5e7f2210cfa9b73d5c01ae08459842dade0

See more details on using hashes here.

File details

Details for the file tmdsclient-0.3.1-py3-none-any.whl.

File metadata

  • Download URL: tmdsclient-0.3.1-py3-none-any.whl
  • Upload date:
  • Size: 23.9 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/5.1.1 CPython/3.12.7

File hashes

Hashes for tmdsclient-0.3.1-py3-none-any.whl
Algorithm Hash digest
SHA256 ce6478c3adb624a8ea9835d4f1e0790c42223e0a01df5ee4b303c55b7cf5662c
MD5 680f286e8afbe490f7468c2bb8852e72
BLAKE2b-256 2002717f82280f9b044216eb85fc0d4420140e409e02c230d4c3dd3e930e38e5

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page