REST-API

Ud over OData udstiller OS2sofd et REST-API til udvalgte skrive- og udtræks-operationer. Det er dokumenteret med OpenAPI/Swagger, og den fulde, altid-aktuelle beskrivelse (endpoints, parametre og dataformater) findes i Swagger-grænsefladen:

https://kommune.sofd.io/swagger-ui.html

Alle kald autentificeres med ApiKey-headeren (se API-nøgler og adgang).

Sporbarhed i auditloggen#

Ændringer foretaget via API’et skrives til auditloggen i OS2sofd med navnet på den API-klient, kaldet kom ind på. Handler integrationen på vegne af en konkret bruger, fx en leder i en selvbetjeningsløsning, kan den sende brugerens id i headeren OnBehalfOf. Auditloggen viser så den bruger som ophav til ændringen i stedet for “system”, mens klientnavnet stadig fremgår af kolonnen “Klient”. Headeren er informativ og giver ikke adgang ud over klientens egne rettigheder.

API’et er opdelt i følgende grupper:

Klassifikationer#

/api/classifications – opret, læs, opdatér og slet klassifikationer og deres items.

Organisatoriske enheder#

/api/orgUnit/... – vedligehold af visningsnavn og lokale udvidelser (localextensions) på en organisatorisk enhed.

Personer#

/api/persons/... – vedligehold af kaldenavn (chosen name) og lokale udvidelser (localextensions) på en person.

Brugernavne#

/api/account/generateUsername – dan det brugernavn, OS2sofd selv ville give en person for en given kontotype. Parameteren external tvinger den interne eller eksterne navneregel (særskilt præfiks/suffiks eller “Skabelon (eksterne)”) uanset tilhørsforholdets type. Udelades den, afgør tilhørsforholdet reglen. forceNewUsername danner et helt nyt brugernavn i stedet for at genbruge et tidligere reserveret, også når det tidligere brugernavn tilhører en deaktiveret konto.

Excel-rapporter#

/api/excel/... – hent bestillingsregler og rapporter som Excel-filer samt en liste over tilgængelige rapporter.

Øvrige /api/*-endpoints i OS2sofd er til intern brug og indgår ikke i det udstillede API. Brug Swagger-grænsefladen som den autoritative reference for, hvad der er tilgængeligt.