Skip to main content

aula_connect

A Python client for Aula, the Danish school and institution platform. It logs in through MitID - with the MitID app's QR code or code - and reads the children's profiles, daily overviews (presence), calendars, birthdays, messages, notifications, weekly plans (Meebook, EasyIQ, MinUddannelse) and newsletters into typed models.

It is the library the Home Assistant integration ha_aula_connect is built on.

It is asynchronous, and runs on the aiohttp session the caller gives it. A login's cookies are its own, so each login and each client has a session of its own, not one shared with other services:

import aiohttp
from aula_connect import AulaClient, AulaLoginClient

async with aiohttp.ClientSession() as session:
    login = AulaLoginClient(session, mitid_username="...")  # approve in the MitID app
    tokens = (await login.authenticate())["tokens"]
    client = AulaClient(
        session,
        access_token=tokens["access_token"],
        refresh_token=tokens["refresh_token"],
        expires_at=tokens["expires_at"],
        mitid_username="...",
        login_client=login,
    )
    data = await client.login()

While the login runs, login.get_qr_codes_svg() gives the two QR codes to show in turn for the MitID app to scan.

aula_connect.testing has a simulated Aula for tests, on local test servers: SimulatedAulaLogin answers the whole login chain - Aula's OAuth, UniLogin, NemLog-in and a simulated MitID - and SimulatedAulaApi Aula's API and its widgets, with the data a test gives it. Each checks the cookies, tokens and proofs the real one checks, and takes a mitid_connect.testing.Network that gives each answer a latency and fails a share of them, for stress tests.

Origin and licence

The login and API client come from the Home Assistant integration HairingX/aula, a fork of scaarup/aula, and are licensed as it is: GNU GPL v3.0 or later (LICENSE). The MitID login started as the Aula login client by mchrdk. MitID itself is reached through mitid_connect.

Metadata

Release files for aula-connect 0.1.0

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for aula-connect 0.1.0
File Size Uploaded Provenance Actions
aula_connect-0.1.0.tar.gz 108.1 kB With provenance Details for aula_connect-0.1.0.tar.gz

Built distribution (wheel)

Table of built distributions (wheels) for aula-connect 0.1.0
File Interpreter ABI Platform Actions
aula_connect-0.1.0-py3-none-any.whl Python 3 none any Details for aula_connect-0.1.0-py3-none-any.whl

Total release size: 191.2 kB

Release files / aula_connect-0.1.0.tar.gz

Download URL aula_connect-0.1.0.tar.gz
Size 108.1 kB
Tags Source
SHA-256 checksum
How to use checksums
3be8751afb6d701a788abd382a1ba07dc9014e63c0384f3b143ef3a2f4c72ca7
BLAKE2b-256 checksum
How to use checksums
2fc25f5a0ffbf623a084321d9728fb4d4ac0068fe743a2b1f8341538edb607a2
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.16

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Oct 29, 2026.

Transparency log

Release files / aula_connect-0.1.0-py3-none-any.whl

Download URL aula_connect-0.1.0-py3-none-any.whl
Size 83.1 kB
Tags Python 3
SHA-256 checksum
How to use checksums
4e9408397ef10178c62ff79d626bdb064af24c0f38856a08b992f0c5b926c8f0
BLAKE2b-256 checksum
How to use checksums
7df7cefe5afce6f3c4c5c8e9ec31e504a39ac3176b716ee689d98bf1771bfdf1
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.16

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Oct 29, 2026.

Transparency log

Security for aula-connect 0.1.0

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

Full provenance

All 2 files in this release have been uploaded with provenance metadata.

Select from 2 files

Attestation for aula_connect-0.1.0.tar.gz

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Oct 29, 2026.

Transparency log

A note on package security

PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.

To learn more about protecting yourself from malicious actors, visit our package security documentation.

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page