Om toegang te verkrijgen tot de API van Logic4 moet een autorisatieheader aan elk request moeten worden toegevoegd. Deze header moet aan volgens een door ons gedefinieerde structuur voldoen, hieronder beschreven. Voor elk request moet een nieuwe waarde voor de autorisatieheader worden aangemaakt.
Het authenticatieschema van de autorisatie header is X-LOGIC4-Authorization
.
De waarde van de autorisatie header moet als volgt worden opgebouwd:
PublicKey:CompanyKey:Hash:Nonce:RequestTimestamp:AdministrationId:UserId
Deze wordt aangeleverd door Logic4 nadat u een Developer account heeft aangevraagd bij Logic4.
De key die bepaald voor welk bedrijf u het request wilt versturen.
String die volgens het HMACSHA256 encryptiemethodiek versleuteld moet worden. De encryptiesleutel (private key) die hiervoor gebruikt moet worden is door Logic4 aangeleverd nadat u een Developer account heeft aangevraagd. De ruwe data die wordt versleuteld is op volgende manier opgebouwd:
publickey + companyKey + requestmethod + requestTimestamp + nonce
Aantal seconden sinds 1 jan 1970 om problemen met verschillende tijdzones te voorkomen.
Random nonce die voor elk request uniek moet zijn.
Standaard is het administratienummer in een systeem 1. Wanneer het bedrijf meerdere administraties heeft kan een andere waarde worden gebruikt.
Om de gebruikers binnen Logic4 meer inzicht te geven over hoe data in het systeem is gekomen, wordt er geadviseerd om een aparte gebruiker voor de API aan te maken en deze te gebruiken in de header. Gebruik de waarde 0 wanneer er geen userId bekend is.
De userId in de authenticatieschema is vrij te kiezen en niet beschermd. Om toegang tot bepaalde API-functie te krijgen is een tweede header nodig, de UserBearer token. Deze kan worden opgevraagd bij de API met de request /User/GetUserBearerToken
. Hiervoor is de gebruikersnaam en wachtwoord nodig.
De UserBearer kan worden hergebruikt voor meerdere requests. We bevelen aan voor elk request een UserBearer toe te voegen.