Metadata-Version: 2.4
Name: aula_connect
Version: 0.0.1rc1
Summary: Client for the Danish school platform Aula: MitID login, and the children's profiles, calendars, messages, notifications and weekly plans as typed models.
Author: HairingX
License-Expression: GPL-3.0-or-later
Project-URL: Homepage, https://github.com/HairingX/aula_connect
Project-URL: Source, https://github.com/HairingX/aula_connect
Project-URL: Issues, https://github.com/HairingX/aula_connect/issues
Project-URL: Releases, https://github.com/HairingX/aula_connect/releases
Keywords: aula,mitid,school,denmark
Classifier: Development Status :: 3 - Alpha
Classifier: Intended Audience :: Developers
Classifier: Operating System :: OS Independent
Classifier: Programming Language :: Python :: 3
Classifier: Programming Language :: Python :: 3 :: Only
Classifier: Programming Language :: Python :: 3.12
Classifier: Programming Language :: Python :: 3.13
Classifier: Programming Language :: Python :: 3.14
Classifier: Topic :: Software Development :: Libraries
Classifier: Topic :: Home Automation
Classifier: Typing :: Typed
Requires-Python: >=3.12
Description-Content-Type: text/markdown
License-File: LICENSE
Requires-Dist: beautifulsoup4>=4.12.0
Requires-Dist: lxml>=5.0.0
Requires-Dist: pycryptodomex>=3.24.1
Requires-Dist: qrcode>=8.2
Requires-Dist: requests>=2.31.0
Dynamic: license-file

# aula_connect

A Python client for [Aula](https://www.aula.dk), 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](https://github.com/HairingX/ha_aula_connect) is built on.

```python
from aula_connect import AulaClient, AulaLoginClient

login = AulaLoginClient(mitid_username="...")   # approve in the MitID app
tokens = login.authenticate()["tokens"]
client = AulaClient(
    access_token=tokens["access_token"],
    refresh_token=tokens["refresh_token"],
    expires_at=tokens["expires_at"],
    mitid_username="...",
    login_client=login,
)
data = client.login()
```

## Origin and licence

The login and API client come from the Home Assistant integration
[HairingX/aula](https://github.com/HairingX/aula), a fork of
[scaarup/aula](https://github.com/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; the MitID browser client
(`aula_connect.login.mitid`) is the work of Hundter, under the MIT licence.
