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.4.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.4-py3-none-any.whl (14.3 kB view details)

Uploaded Python 3

File details

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

File metadata

  • Download URL: kovnet-1.1.4.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.4.tar.gz
Algorithm Hash digest
SHA256 0b8c78ddab1893b46f67f7819bac96519cf8df7c0d987344da0f0a0ae797b757
MD5 2b0462725d706fdd729bfe5219349b5f
BLAKE2b-256 3bfc232cb238c1ae65a24006f3834d0c7981209852905f52d5ce4384c8e18169

See more details on using hashes here.

Provenance

The following attestation bundles were made for kovnet-1.1.4.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.4-py3-none-any.whl.

File metadata

  • Download URL: kovnet-1.1.4-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.4-py3-none-any.whl
Algorithm Hash digest
SHA256 77e17749407727eb57256c42cd535a8ffe2dbc1d19ecbca5a62515ffda880ece
MD5 fe0e1ea5e19726c4ae0ef079479b93ce
BLAKE2b-256 223f53eba8a10f600d5a8e055369e7467feb84c6587cbe01487f29e5896a2e59

See more details on using hashes here.

Provenance

The following attestation bundles were made for kovnet-1.1.4-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