Skip to main content

Command-line interface for the KovNet childcare platform (kinderopvang)

Project description

🏠 kovnet

A CLI and Python SDK for KovNet, the Dutch childcare (kinderopvang) platform.
Contracten bekijken, facturen downloaden en kinderinfo ophalen — zonder de app te openen.

CI PyPI Python License


Wat doet het?

kovnet geeft je toegang tot het KovNet kinderopvangplatform vanuit de terminal:

  • Kinderen bekijken met geboortedatums
  • Contracten tonen met start/einddatums
  • Facturen bekijken en PDF's downloaden
  • Vakanties tonen
  • Explore modus om nieuwe endpoints te ontdekken
  • JSON output voor scripting en automatisering

Authenticatie gaat via session cookies — geen browser nodig.

Installatie

# CLI (met pip)
pip install kovnet[cli]

# CLI (met uv, aanbevolen)
uv tool install kovnet[cli]

# CLI (met Homebrew)
brew install anneschuth/tap/kovnet

# Alleen SDK (geen rich/click)
pip install kovnet

# Vanuit source
git clone https://github.com/anneschuth/kovnet-cli.git
cd kovnet-cli
uv tool install .[cli]

Snel aan de slag

# Inloggen
kovnet login

# Kinderen bekijken
kovnet children

# Contracten
kovnet contracts

# Facturen
kovnet invoices

# Factuur PDF openen (nummer uit de output)
kovnet open 1

# Endpoint verkennen
kovnet explore /parents/contracts/123/invoices

Alle commando's

Commando Wat het doet
kovnet login Inloggen bij KovNet
kovnet logout Sessie verwijderen
kovnet children Kinderen tonen
kovnet contracts Contracten tonen
kovnet invoices Facturen tonen (--contract ID)
kovnet holidays Vakanties tonen (--contract ID)
kovnet open <ref> Factuur PDF openen op nummer
kovnet explore <url> URL verkennen met sessie cookies
kovnet completion <shell> Shell completion script genereren

JSON output

Elke data-commando ondersteunt --json voor machine-leesbare output:

kovnet --json contracts
kovnet --json invoices | jq '.[0].bedrag'

Configuratie

Credentials

Drie manieren om in te loggen:

# 1. Interactief (prompts)
kovnet login

# 2. Command-line opties
kovnet login -u je@email.nl -p geheim

# 3. Environment variabelen of .env bestand
export KOVNET_USERNAME=je@email.nl
export KOVNET_PASSWORD=geheim
kovnet login

Voor .env bestanden: plaats ze in ~/.config/kovnet/.env of in je huidige directory.

Sessie

Na het inloggen worden session cookies opgeslagen in ~/.config/kovnet/session.json (mode 0600). De CLI probeert automatisch opnieuw in te loggen als de sessie verlopen is (met opgeslagen .env credentials).

Shell completion

# bash — toevoegen aan ~/.bashrc
eval "$(kovnet completion bash)"

# zsh — toevoegen aan ~/.zshrc
eval "$(kovnet completion zsh)"

# fish
kovnet completion fish > ~/.config/fish/completions/kovnet.fish

SDK gebruik

Het kovnet package kan ook als Python SDK gebruikt worden, zonder CLI-afhankelijkheden:

from kovnet import KovNetClient, KovNetAuth

# Inloggen (eenmalig)
session = KovNetAuth.login("je@email.nl", "geheim")

# API gebruiken
with KovNetClient(session) as client:
    for child in client.get_children():
        print(child.get("nickname", child.get("name", "")))

    for contract in client.get_contracts():
        print(contract["start_date"], contract["end_date"])

Development

git clone https://github.com/anneschuth/kovnet-cli.git
cd kovnet-cli
uv sync --extra dev
uv run pre-commit install
uv run pytest
uv run kovnet --help

See CONTRIBUTING.md for more details.

Licentie

MIT — see LICENSE.

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

kovnet-1.1.5.tar.gz (34.9 kB view details)

Uploaded Source

Built Distribution

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

kovnet-1.1.5-py3-none-any.whl (14.3 kB view details)

Uploaded Python 3

File details

Details for the file kovnet-1.1.5.tar.gz.

File metadata

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

File hashes

Hashes for kovnet-1.1.5.tar.gz
Algorithm Hash digest
SHA256 fec107e164ceb812c0b147f7453d45b4f82619c5577e5abbb623476a9640e9e7
MD5 bca2ebfd5cbb80b7fd731b09786459f5
BLAKE2b-256 27996d2d2f286d258cb1181c3ff3f01a6f7ad686dfb07a46e96ceb7deacf016e

See more details on using hashes here.

Provenance

The following attestation bundles were made for kovnet-1.1.5.tar.gz:

Publisher: release.yaml on anneschuth/kovnet-cli

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

File details

Details for the file kovnet-1.1.5-py3-none-any.whl.

File metadata

  • Download URL: kovnet-1.1.5-py3-none-any.whl
  • Upload date:
  • Size: 14.3 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for kovnet-1.1.5-py3-none-any.whl
Algorithm Hash digest
SHA256 8b495602652410765a56c2d8703c123088021694233fbaae2dc0e1933312ea92
MD5 18f585ce9a8dcd72dbc1a895c4f7adc5
BLAKE2b-256 24cbe5b4460a1eb6b267aa0c01ce402897b4fe40f92c1abc412a6ea4ed15d253

See more details on using hashes here.

Provenance

The following attestation bundles were made for kovnet-1.1.5-py3-none-any.whl:

Publisher: release.yaml on anneschuth/kovnet-cli

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