wiki:Documentatie/Beheerder/HowTos/ApiDocumentatie

Version 6 (modified by henk, 4 years ago) (diff)

--

API-documentatie

OpenAC 3 is volledig API-gebaseerd. Dat betekent dat de gebruikersinterface gebruikt maakt van API's die ook door externe applicaties kan worden geconsumeerd die aan OpenAC willen koppelen. OpenAC maakt gebruik van technologie waarmee API-documentatie automatisch wordt gegenereerd. Deze documentatie is daarom altijd up-to-date voor de versie die u gebruikt. De documentatie is te vinden via menu Beheer -> API-documentatie. Veel API's kunnen via deze pagina ook gelijk worden getest.

Voor de meeste API's moet eerst worden ingelogd. Gebruik hiervoor de login-api. Hieronder volgt een beschrijving, maar raadpleeg voor de API die voor u geldt altijd de API-documentatie van OpenAC 3 zelf, onder de kop "Login"

Authenticatie

JWT token

Login-API met cookie

Met de login-API kan een sessie worden opgebouwd met de OpenAC 3 server. De API kan zowel met als zonder Two Factor Authentication gebruikt worden. De returnwaarde van de API is gelijk aan het model dat als payload moet worden meegegeven met de POST. Bij Two Factor Authentication moet het teruggekregen model opnieuw worden meegegeven met een tweede aanroep van de API, aangevuld met het beveiligingstoken.

Zonder Two Factor Authentication

“success” en “complete” zijn beide true bij een succesvolle login. “success” en “complete” zijn beide false bij een niet-succesvolle login.

Met Two Factor Authentication

Het inloggen gebeurt in twee fasen, de API moet twee keer worden aangeroepen, de tweede aanroep bevat het bevat het beveiligingstoken. “success” is true bij een succesvolle login. “success” is false bij een niet-succesvolle login.

Als “fase” 2 is dan bevat “message” een bericht aan de gebruiker met informatie over de manier waarop het beveiligingstoken is verstuurd. Hierna moet opnieuw de login API worden aangeroepen met het eerder teruggekregen login-model en “challenge” gevuld met het door de gebruiker ingevulde beveiligingstoken. Als “complete” true is dan is het inlogproces voltooid.

Voorbeeld gebruik

            POST /api/login
           {
              "username": "mkaleb",
              "password": "Ackn0wledge!",
              "agbLocatie": "19009338",
              "agendaLocatie": "h",
              "challenge": "",
              "fase": 0,
              "session": "",
              "success": false,
              "message": "",
              "complete": false
            }

Attachments (1)

Download all attachments as: .zip