Om toegang te krijgen tot de api is een applicatie token (appToken) nodig. Deze wordt verstrekt door Stichting EPS. Met het appToken kan een deviceToken worden verkregen die nodig is voor alle verdere communicatie.
appToken
Het appToken is uniek per deelnemende app en is nodig om het deviceToken op te halen.
Voorbeeld: eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJBUEkgRGV2IFN3YWdnZXIiLCJpc3MiOiJtc21wIiwidHlwZSI6ImFwcFRva2VuIiwiZXhwIjoxNTE4MjA3MTcyLCJpYXQiOjE0ODY2NzExNzJ9.Q7TKFGcJ5uS6HMifPgccCLf-TeCqVprKE61hluSW7nQ
deviceToken
Elke instantie van een app heeft een deviceToken nodig om te kunnen communiceren met de api.
om een deviceToken op te vragen moet een HTTP POST
worden uitgevoerd naar:
/v2/devices
In de header
moet in ieder geval het appToken aanwezig zijn:
'appToken' : 'eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJBUEkgRGV2IFN3YWdnZXIiLCJpc3MiOiJtc21wIiwidHlwZSI6ImFwcFRva2VuIiwiZXhwIjoxNTE4MjA3MTcyLCJpYXQiOjE0ODY2NzExNzJ9.Q7TKFGcJ5uS6HMifPgccCLf-TeCqVprKE61hluSW7nQ',
'Accept' : 'application/json',
'Content-Type': 'application/json'
Bij een geldig appToken zal een geldig deviceToken worden verstrekt in het token
veld:
{
"token":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJuYW1lLTIwMTctMDYtMjdUMTU6MzY6MjEsMTc2NDE3OTU4KzAyOjAwIiwiaXNzIjoibXNtcCIsInR5cGUiOiJkZXZpY2VUb2tlbiIsImV4cCI6MTUzMDEwNjU4MSwiaWF0IjoxNDk4NTcwNTgxLCJzZXEiOjI1OH0.O6zMiIKTD9432TUwFgviXtEkS12es646d3E5dkcy0z0",
"uuid":"e6c65f1c-6890-4f63-8111-7b66ec445a45"
}
Voorbeeld code voor javascript:
var _msmpRequest = function () {
// Construct the http config object
var config = {};
config.headers = {
'appToken': 'eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJBUEkgRGV2IFN3YWdnZXIiLCJpc3MiOiJtc21wIiwidHlwZSI6ImFwcFRva2VuIiwiZXhwIjoxNTE4MjA3MTcyLCJpYXQiOjE0ODY2NzExNzJ9.Q7TKFGcJ5uS6HMifPgccCLf-TeCqVprKE61hluSW7nQ',
'Accept': 'application/json',
'Content-Type': 'application/json'
};
config.method = 'POST';
config.url = 'apitest.msmplatform.nl/v2/devices';
config.data = {};
// Send the request angular
return $http(config).then(function(response){
return response;
});
// Send the request ajax
return $.ajax(_constructUrl(target), config)
.done(/*function for done*/)
.fail(/*function for fail*/)
.always(/*function for always*/);
});