Python-klientbibliotek til STIL UniLogin-webservicen, der giver maskintypad adgang til institutionsdata (elever, medarbejdere og grupper) via SOAP.
Denne klient er ikke officielt støttet eller godkendt af STIL (Styrelsen for IT og Læring). Brug på eget ansvar.
- Autentificering mod STIL UniLogin SOAP-webservicen via Basic Auth
- Hentning af fuld institutionseksport (
eksporterXmlFuldMyndighed) for et givent institutionsnummer - Parsing af SOAP XML-svar til typede Python-dataklasser:
Elev(elev inkl. CPR, adresse og tilknyttede værger)Medarbejder(medarbejder inkl. kontaktoplysninger)Gruppe(gruppe med medlemslister)Vaerge(værge/forældrerepr. med juridisk forældremyndighed)
- HTTP-primitiver (GET, POST, PUT, DELETE samt SOAP POST) via
StilClientmed automatisk response-logging - Lazy-loadede under-klienter via
StilClientManager-facaden (designet til fremtidig udvidelse)
uv add git+https://github.com/odense-rpa/stil-client- Python ≥ 3.13
- Adgang til STIL UniLogin SOAP-webservicen samt gyldige legitimationsoplysninger
Følgende miljøvariabler skal sættes (f.eks. via .env):
| Variabel | Beskrivelse |
|---|---|
BASE_URL |
URL til STIL UniLogin SOAP-webservicen |
USERNAME |
Brugernavn til webservicen |
PASSWORD |
Adgangskode til webservicen |
from dotenv import load_dotenv
import os
from stil_client import StilClientManager
load_dotenv()
manager = StilClientManager(
base_url=os.environ["BASE_URL"],
username=os.environ["USERNAME"],
password=os.environ["PASSWORD"],
)
institution = manager.institutioner.hent_institution("12345")
for elev in institution.elever:
print(elev.navn, elev.cpr)
for medarbejder in institution.medarbejdere:
print(medarbejder.navn)Biblioteket håndterer særligt følsomme personoplysninger for elever og medarbejdere ved danske uddannelsesinstitutioner, herunder CPR-numre, fulde navne, hjemmeadresser, postnumre, køn, e-mailadresser, telefonnumre samt oplysninger om forældrerepr. og juridisk forældremyndighed. Data hentes direkte fra STIL og må udelukkende behandles i overensstemmelse med gældende databeskyttelseslovgivning (GDPR).
MIT