Session

Skapad 4 år sedan, uppdaterad 4 år sedan · Läst av 982

GetSession

När du som användare gör anrop mot de tjänster som finns i denna web-api katalog så behöver varje anrop vara säkert. Därför behöver varje anrop som görs innehålla en "access-token". En access-token är en lång krypterad sträng som du börjar att hämta upp innan du startar dina normala anrop. För att hämta en access-token så behöver du givetvis först ha ett konto uppsatt. Detta konto skapas av mcparkens administratör som du enklast kontaktar på admin@mcparken.se.

När du har ansökt och fått ett konto så kan du arbeta vidare med att göra ditt första anrop:

GEThttps://mcparken.se/api/session/getsession

För att få en access_token så behöver du skicka med 1 header och två parametrar i ditt anrop. Dessa fält är: 

apikey(header) Den säkerhetsnyckel som du tilldelats för att få åtkomst till våra öppna API:er
username(params) Användarnamn på detta konto som ger dig rätt att göra anrop mot tjänsten (tilldelas av administratören för tjänsten)
password(params) Lösenordet på detta konto som ger dig rätt att göra anrop mot tjänsten (observera att användarnamn och lösenord syns om de lagras på en webbsida). Detta måste ni hålla skyddat.
Felkoder

Dessa felkoden kan returneras om det finns några fel i anropet

401.1apikey är inte godkänd, felaktigt formaterad eller har utgått. Denna sessionsnyckel är giltig 90 dagar. Kontakta support för att få reda på vad som hänt med nyckeln
403.0Du skickar inte med något headerobjekt med namnet apikey
405.0Parametrarna username eller password är tomma alternativt saknas i anropet
401.2Felaktigt användarnamn eller lösenord
Kalla med javascript

Här är ett exempel som visar hur ett anrop kan göras med javascript

var myHeaders = new Headers();
myHeaders.append("apikey", "yoursecretapikey");

var requestOptions = {
  method: 'GET',
  headers: myHeaders,
  redirect: 'follow'
};

fetch("https://mcparken.se/api/session/getsession?username=email&password=yourpassword", requestOptions)
  .then(response => response.text())
  .then(result => console.log(result))
  .catch(error => console.log('error', error));
Resultat

Det ni får tillbaka när en korrekt inloggning har gjorts är det viktigaste fältet access_token

{
    "access_token": "ZEFiWDA0QjJYekNZVjNsYnF3YjRYejMyZnMwY2RVV......",
    "expires_in": "1640557975",
    "token_type": "bearer",
    "userid": "72",
    "issued": "2021-12-26 23:31:55 +01:00",
    "expires": "2021-12-26 23:32:55 +01:00"
}

Resultatet access_token är det du identifierar dig med i de anrop som du kommer göra framöver. Här ses när denna token utgår (fältet expires). När du använder din access_token då den har upphört så kommer du att få ett svar från tjänsten med fältet errormessage och errorcode som förklarar vad det är för fel med din token. När detta händer, kalla återigen på denna rutin för att hämta upp en ny access_token som kan användas tills även den utgår, och så vidare.

felmeddelande

Så här ser ett typiskt felmeddelande ut. Det innehåller dessa fält. Om anropet är korrekt kommer inte något av dessa fält returneras.

{
    "errormessage": "Your access token has expired...",
    "errorcode": 401
}

skydda dina kontouppgifter

Du måste alltid vara väldigt försiktig med att hålla dina nycklar privata och hemligt så att de inte lagras på någon webbsida och blir tillgängligt. API har en mycket hög säkerhet men om dina uppgifter skulle röjas så måste du omedelbart kontakta mcparken för att stänga kontot. Så lagra aldrig dessa uppgifter på webben.

 Obs! Lagra aldrig kontoinformation på någon webbsida. Kontouppgifter måste alltid hanteras mycket varsamt och aldrig lagras så att det på något sätt kan kommas åt av en icke behörig person via en publik sida, fil eller tjänst