Token genereren voor de Profit Rest Services
Bij een app connector vindt authenticatie plaats op basis van tokens, niet op basis van gebruikersnamen en wachtwoorden. Een token is een sleutel die geldt voor een combinatie van omgeving/app connector/gebruiker/device.
Als een gebruiker een externe app in gebruik neemt, vraagt hij eerst een token aan via de externe app. Je moet hiervoor zelf een geautomatiseerd proces opzetten. Het is wel mogelijk om op ad-hoc basis handmatig tokens toe te voegen bij een app connector. Als een bepaalde token niet meer gebruikt mag worden, verwijder je deze.
Let op:
De rest van deze beschrijving heeft betrekking op het aanvragen van een token via een geautomatiseerd proces.
Een gebruiker vraagt een token aan via een externe applicatie. Deze applicatie roept de Profit REST Services aan. Bij een geslaagde aanvraag krijgt de gebruiker een e-mailbericht met een activatiecode. Door het toepassen van de activatiecode krijgt de gebruiker een token. Deze token moet voortaan met elke aanroep worden meegestuurd.
Je kunt dit proces alleen gebruiken als bij de gebruiker een geldig e-mailadres ingevuld is in Algemeen / Beheer / Autorisatie tool. De gebruiker moet lid zijn van de gebruikersgroep die gekoppeld is aan de app connector.
Sleutels opvragen in Profit:
- Ga naar: Algemeen / Beheer / App connector.
- Open de eigenschappen van de app connector.
- Je hebt de velden API-sleutel en Omgevingssleutel nodig.
Geautomatiseerd een token aanvragen en registeren in Profit:
- Roep de Profit REST Service aan via de volgende URL.
<endpoint>/profitrestservices/otprequest
Let op:
Je vindt alle eindpoints voor connectoren op de centrale pagina URL's van REST Services.
De onderstaande afbeelding is gemaakt op basis van AFAS Connect.
- Bij een geslaagde aanroep bevat de response een one-time password (OTP)
- Roep de Profit REST service aan via de volgende URL. Gebruik hierbij het one-time password.
<endpoint>/profitrestservices/otpvalidation
Bij een geslaagde aanroep bevat de response een token.
Voorbeeldcode otprequest:
var otprequest = {
apiKey: ‘AF2F…’,
userid: ‘314565.DavidB’,
apiToken: ‘820DBB..’
};
$http.post("https://<endpoint>/otprequest", otprequest).then(function () {
alert("Check your e-mail for OTP pasword");
});