Testapi

Spelinspektionens Test-API för marknadsföring v1.0

Spelinspektionens Test-API för marknadsföring är ett REST-baserat API för kontroll av personnummer som är blockerade för spel. Via Test-API't kan en aktör testa att dess system kommer fungera med Spelinspektionens produktionstjänst.

Beskrivning

API:et har två metoder (endpoints) beroende på om man vill fråga med ett enstaka personnummer eller flera personnummer samtidigt.

Välj en av nedanstående tabbar för att se beskrivningen av motsvarande API

Marknadföringsfråga med ett enstaka personnummer

API:et anropas genom att skicka in ett JSON-objekt med requestId och subjectId via HTTP POST till https://.../api/marketing-single-subjectid/{actorId}.

  • requestId är ett id som kommer skickas med i svaret på anropet
  • subjectId är personnumret på personen som ska kontrolleras
  • actorId är ett unikt id som identifierar vilken licenshavare som anropar.

Svaret på anropet är ett JSON-objekt med följande fält:

  • isBlocked anger om personen är blockerad från att spela
  • requestId är samma id som skickades in i anropet
  • responseId är ett unikt id för anropet genererat av Test-API't

Identifiering och Autentisering

Identifiering sker via att ange actorId i url-raden Autentisering sker genom att skicka med en API-nyckel i authorization-headern i API-anropet Actor-id för testsystemet finns listade nedan tillsammans med motsvarande API-nycklar

En request med felaktig autentisering besvaras med statuskod 401 (Unauthorized) En request med saknad requestId besvaras med statuskod 400 (Bad request)

Personnummer

subjectId anges med 12 tecken i formatet ÅÅÅÅMMDDXXXX Felaktig längd på subjectId besvaras med statuskod 400 (Bad request) Vid ett subjectId som är 12 tecken men inte är ett korrekt personnummer returneras status 200 och isBlocked sätts till false

Testanrop

Via powershell

Invoke-RestMethod -Method POST -Uri https://testapi.spelpaus.se/api/marketing-single-subjectid/22 -H @{ "accept" = "application/json"; "authorization" = "suPei2qGuxEVX0U5t8Xr5MHTbRWJrbKJLEZTPD21mLhSca0a7qGtnkvPyEEf"; "Content-Type" = "application/json" } -Body "{ 'requestId': '144x25', 'subjectId': '182701303378' }"

Via swagger-gränsnittet

  • Gå till url https://testapi.spelpaus.se/swagger
  • Klicka knappen authorize (Dialogruta öppnas)
  • Värdet för token ska in i rutan under value. Ange API-nyckel för företag 22: "suPei2qGuxEVX0U5t8Xr5MHTbRWJrbKJLEZTPD21mLhSca0a7qGtnkvPyEEf"
  • Klicka Autorize för att sätta aukoriseringsvärdet
  • Klicka Close för att stänga dialogrutan
  • Klicka på knappen "Post" under stycket "MarketingSingleSubjectId" (Ett nytt avsnitt öppnas)
  • Klicka på knappen "Try it out"
  • Ange 22 i rutan "Id för licenshavare"
  • I rutan för "BlockingInfoRequest" behöver json anges. Exempel nedan inklusive citattecken
{
"requestId": "144x25",
"subjectId": "182701303378"
}

"requestId" är valfritt id som ni kan använda för att t.ex. spåra en request. Det enda vi gör är att returnera detta Id i response. "subjectId" är personnumret som ska testas

  • Klicka den långa blå knappen där det står "Execute" Under "Server response", "Response body" ska det stå:
{
"isBlocked": true,
"requestId": "144x25",
"responseId": "xxx"
}

(responseId är spelinspektionens id för transaktionen, så den varierar.)

Marknadföringsfråga med flera personnummer samtidigt

API:et anropas genom att skicka in ett JSON-objekt till https://.../api/marketing-subjectid/{actorId}.

Frågan ska innehålla requestId och en samling "items". Varje item består av itemId och subjectId

  • requestId är ett id som kommer skickas med i svaret på anropet
  • itemId är ett id som sänds tillbaka via response till licenshavaren om personnumret är godkänt för marknadsföring
  • subjectId är personnumret på en person som ska kontrolleras
  • actorId är ett unikt id som identifierar vilken licenshavare som anropar.

Maximalt antal "items" i samma fråga är 10000.

Svaret på anropet är ett JSON-objekt med följande fält:

  • requestId är samma id som skickades in i anropet
  • responseId är ett unikt id för anropet genererat av Test-API't
  • allowedItemIds är en lista med godkända idn som motsvarar itemId i frågan. Observera att listan innehåller de som är godkända, inte de som är blockerade.

Licenshavaren ansvarar för att personnumren är kopplade mot ItemId unikt. Personnummer returneras alltså inte i svaret.

Personnummer

Personnummer anges med 12 tecken i formatet ÅÅÅÅMMDDXXXX Felaktig längd på personnummer besvaras med statuskod 400 (Bad request) Vid ett subjectId som är 12 tecken men inte är ett korrekt personnummer inkluderas detta ItemId i svaret, dvs det är inte blockerat.

Testanrop

Via swagger-gränsnittet

  • Gå till url https://testapi.spelpaus.se/swagger
  • Klicka knappen authorize (Dialogruta öppnas)
  • Värdet för token ska in i rutan under value. Ange API-nyckel för företag 22: "suPei2qGuxEVX0U5t8Xr5MHTbRWJrbKJLEZTPD21mLhSca0a7qGtnkvPyEEf"
  • Klicka Autorize för att sätta aukoriseringsvärdet
  • Klicka Close för att stänga dialogrutan
  • Klicka på knappen "Post" under stycket "MarketingSubjectId" (Ett nytt avsnitt öppnas)
  • Klicka på knappen "Try it out"
  • Ange 22 i rutan "Id för licenshavare"
  • I rutan för "BlockingInfoRequest" behöver json anges. Exempel nedan inklusive citattecken
{
"requestId": "myRequestId",
"items": [
{
"itemId": "testsubject1",
"subjectId": "182701303378" },
{
"itemId": "testsubject2",
"subjectId": "182701303379" },
{
"itemId": "testsubject3",
"subjectId": "195201282232" },
{
"itemId": "testsubject4",
"subjectId": "195201282233" }
]
}

"requestId" är valfritt id som ni kan använda för att t.ex. spåra en request. Det enda vi gör är att returnera detta Id i response. "subjectId" är personnumren som ska testas. "itemId" är det värde som tjänsten returnerar om det är ok att marknadsföra mot den personen.

  • Klicka den långa blå knappen där det står "Execute" Under "Server response", "Response body" ska det stå:
{
"requestId": "myRequestId",
"allowedItemIds": [
"testsubject2",
"testsubject4"
],
"responseId": "xxxx"
}

(responseId är spelinspektionens id för transaktionen, så den varierar.) Svaret innebär i detta fall att systemet godkänner marknadsföring mot personnummer "182701303379" och "195201282233". Således är "182701303378" och "195201282232" spärrade för marknadsföring.

Swagger

En teknisk API-specifikation finns publicerad på https://testapi.spelpaus.se/swagger.

Testdata

API-nycklar

Företag ActorId API-nyckel
Casíno höghuset 20 rxCzrck6ggsJPbb5YGdKLFs1LJmaMWPkKM3YJnl3vX6iakjArIhW6noOOzZH
TigerVegas 21 4r70tJMR4JOWtfr1creX3rHWsbqQydsuj5kAPW009EerStdFxJONfmZSuCAm
Svens Spel 22 suPei2qGuxEVX0U5t8Xr5MHTbRWJrbKJLEZTPD21mLhSca0a7qGtnkvPyEEf
GTA 23 9GkTRpPVVqnpxonfXOooAZ5sSr3u6OpwyUB2xJPlCY73dJ8Fphh5TFf9OayW

Personuppgifter för spärrade testpersoner

Testsystemet innehåller ett antal fingerade personer. Personnnumren är testpersonnummer som inte tillhör någon faktisk person. Personuppgifterna kan hämtas som json eller formatterad html.