Skip to main content

Async Python client for the Timebutler API

Project description

timebutler_client

Async Python client for the Timebutler API (official docs).

[!IMPORTANT] This is NOT an official client by Timebutler GmbH, just a community project.

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

Installation

pip install timebutler_client

Usage

from timebutler_client import TimebutlerClient

# Create client with your API key
client = TimebutlerClient(api_key="your-api-key")

# Fetch absences for a specific year
absences = await client.get_absences(year=2026)

for absence in absences:
    print(f"{absence.employee_number}: {absence.from_date} - {absence.to_date} ({absence.absence_type})")

Features

[!NOTE]
We only implemented the get_absences so far, because the API is not very convenient to develop against (no OpenAPI, no sandbox or test system, only admin API keys).

  • Async HTTP client using aiohttp
  • Typed responses using Pydantic models
  • Strict date parsing (European dd/mm/yyyy format)
  • Employee number handling with leading zeros preserved

Development

This project is based on the Hochfrequenz Python Template Repository. Refer to that repository for detailed setup instructions including tox configuration and IDE setup.

Quick Start

# Create dev environment
tox -e dev

# Run tests
tox -e tests

# Run linting
tox -e linting

# Run type checking
tox -e type_check

License

MIT

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

timebutler_client-0.0.1.tar.gz (12.8 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

timebutler_client-0.0.1-py3-none-any.whl (7.5 kB view details)

Uploaded Python 3

File details

Details for the file timebutler_client-0.0.1.tar.gz.

File metadata

  • Download URL: timebutler_client-0.0.1.tar.gz
  • Upload date:
  • Size: 12.8 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for timebutler_client-0.0.1.tar.gz
Algorithm Hash digest
SHA256 e97229e350adb803602308e5dc718e328fc77e7ed74a5504a6591d4f52422273
MD5 158374315490ca7833a9f413bcddf696
BLAKE2b-256 1c54d5ea3204a5085c4082bd4403226eea04c6b7ebcd5e8717bc450fc1919cc2

See more details on using hashes here.

Provenance

The following attestation bundles were made for timebutler_client-0.0.1.tar.gz:

Publisher: python-publish.yml on Hochfrequenz/timebutler_client.py

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file timebutler_client-0.0.1-py3-none-any.whl.

File metadata

File hashes

Hashes for timebutler_client-0.0.1-py3-none-any.whl
Algorithm Hash digest
SHA256 6fa25527abfdee10e6a1485c82206413cfca716cd20c1262aab3559df7566b4b
MD5 2ff1f5d19c829c811e49b7ec2c2a183f
BLAKE2b-256 2ba4bd1e09eba88415f70a0cbdb6fc5643d91d758dc95da8b597152c7cc2db4b

See more details on using hashes here.

Provenance

The following attestation bundles were made for timebutler_client-0.0.1-py3-none-any.whl:

Publisher: python-publish.yml on Hochfrequenz/timebutler_client.py

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

Supported by

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