Oauth koppeling maken met KlasCement

Stap 1: authorize

Stuur jullie gebruiker door naar onze pagina op

https://www.klascement.net/oauth/authorize?client_id=NAME&redirect_uri=URI&response_type=code&state=STATE&scope=name

om zijn aanmeldgegevens bij KlasCement te controleren.

Volgende parameters in bovenstaande URL moeten aangevuld worden:

  • NAME: naam van uw organisatie
  • URI: adres van een pagina bij jullie waarnaar wij redirecten na controle van de gegevens
  • STATE: verplicht mee te geven token dat jullie zelf kunnen kiezen om dit request te identificeren

Als de gebruiker toestemming geeft om toegang te verlenen aan jullie, wordt er geredirect naar URI met deze extra GET-parameters:
code: authorization code waarmee jullie een token kunnen aanvragen
state: het token dat jullie gekozen hebben

Stap 2: token

De authorization code kan gebruikt worden om een access token en een refresh token op te vragen. Het access token heeft een korte levensduur, het refresh token blijft langer geldig.

Bij de aanvraag geef je de AUTHORIZATION_CODE (verkregen in stap 1) en een redirect URI (wordt niets mee gedaan, maar is verplicht) mee.

curl -u ‘NAME:xxx‘ https://www.klascement.net/oauth/token -d “grant_type=authorization_code&code=AUTHORIZATION_CODE&redirect_uri=URI

Ons antwoord is in JSON.

{
   "access_token": "3b647efe5b7f1ab0729d2ed31027b1999a4a3c9a",
   "expires_in": 3600,
   "token_type": "bearer",
   "user_id": "532abc50af2c8",
   "scope": name,
   "refresh_token": "9da9014d4be3213ede4fcecae26e8665df43555f"
}

Stap 3: refreshtoken

Het refresh token kan gebruikt worden om nieuwe access tokens op te vragen.

Bij de aanvraag geef je het REFRESH_TOKEN (verkregen in stap 2) en een redirect URI (wordt niets mee gedaan, maar is verplicht) mee.

curl -u ‘NAME:xxx‘ https://www.klascement.net/oauth/refreshtoken -d “grant_type=refresh_token&refresh_token=REFRESH_TOKEN&redirect_uri=URI

Ons antwoord is in JSON.

{
   "access_token": "28a0d5308a7d30875cc982fc3033a0ac7fed7989",
   "expires_in": 3600,
   "token_type": "bearer",
   "user_id": "532abc50af2c8",
   "scope": name
}

Stap 4: profielgegevens ophalen

Een access token kan gebruikt worden om de profielgegevens van dat KlasCementlid op te vragen via onze API.

Bij de aanvraag geef je het USER_ID en een geldig ACCESS_TOKEN (verkregen in stap 2 of 3) mee.

curl https://www.klascement.net/api/users/USER_ID?access_token=ACCESS_TOKEN