Skip to end of metadata
Go to start of metadata

You are viewing an old version of this page. View the current version.

Compare with Current View Page History

« Previous Version 281 Next »

Ansvarsfriskrivning

Arbetet med detta dokument pågår fortfarande och vissa förändringar kan komma att genomföras.

Funktionalitetsomfång

Detta API är inte tänkt att helt ersätta användandet av BRP-klienten utan tänkt som ett komplement till och utökning av för att backa webbaserade tjänster. Man kan därför inte göra allt med hjälp av endast API:t. Det är däremot ett pågående arbete att utöka API:t med önskad/användbar funktionalitet. Önskemål och synpunkter mottas tacksamt.

Autentisering

Basic HTTP-autentisering används. Username kan vara email, kortnummer eller kundnummer.

Felhantering

Engelska används som språk för eventuella felmeddelanden.
 

Exempel

<errors>
   <error>
      <code>1001</code>
      <message>Invalid parameter, firstname</message>
      <debuginfo>field=firstname</debuginfo>
   </error>
</errors>

 

Format

Datatyp

Format

Exempel

Kommentar

Datum

yyyy-MM-DD

2012-12-24

GMT+1 (Stockholm) ink. justering för sommar/vintertid

Tid

HH:mm

14:54

GMT+1 (Stockholm) ink. justering för sommar/vintertid

Tidstämpel

nnnnnnnnnnnnn

1298023236

Unix Epoch, Antal sekunder sedan 1/1 1970, 00:00:00 GMT

Boolean

true/false

true

 

ID-lista

n,n,n....

1,2,45

Lista med objekt-idn

Sträng

 

Spinningsal

Textsträng UTF8 av godtycklig längd. Tecken escapeas enligt xml respektive json-standard

Heltal

nnnnnnnnn

124234

Heltal anges alltid utan tusentalsavskiljare eller tiopotenser

Decimaltal

nnnn.nnn

34.45

Inga begränsningar i antal decimaler. Ingen tusenavskiljare eller tiopotens. Saknas decimala siffror skickas ingen decimalavskiljare.

ID

nnnn

43

Heltal som är ett object-id

Produkttyp

groupActivity/ subscription/ package/ article/ service/ event/ stockProduct/ valueCard/ entry

groupActivity

Textsträngar som motsvarar produktgrupper

Kön

male/female

female

Textsträng motsvarande ett kön

E-post

 

test@test.com

Giltig e-postadress

Personnummer

 

850101-123X

Giltigt svenskt, norskt eller finskt personnummer, beroende på anläggning. Om personen är kopplad till en svensk anläggning ska personnumret vara svenskt.

Telefonnummer

 

013-342 00 20

Giltigt telefonnummer


Generellt

När ett pris eller en kostnad avses så anges det i ören/cents, exempelvis 34,99 kr blir 3499.

Kort om encoding

Vid förändring av information där HTML-encoding används för text får denna inte skickas i request-strängen, utan måste gå via bodyn. Konsekvensen blir annars en latin1-tolkning av UTF-8 texten, t.ex. Göteborg i stället för Göteborg.

Anrop

Parametrar

Alla parameternamn anges med små bokstäver.

Andra parametrar är att betrakta som filtrerande parametrar vid list-anrop.

Om en parameter skickas med så ska den vara av korrekt format, annars får man ett felsvar.

Det finns stöd för att skicka parametrar i request-strängen eller i bodyn med Content-Type application/x-www-form-urlencodedapplication/json eller application/xml

 OBS: Det rekommenderas att man inte blandar och skickar parametrar både i request-strängen och i bodyn, speciellt inte vid PUT.

 

https://api.brpsystems.se/brpgog/api/ver2/baz

Apinyckel

Api-nyckel krävs för alla anrop.

Exempel:

APIURL/restobjects.xml?apikey=3389367678838

Api-nyckel finns i 3 nivåer:

  • Nivå 1: Krävs för Get-anrop, det vill säga anrop som listar eller visar objekt. Används t.ex. för att visa dagens schema på hemsidan.
  • Nivå 2: Krävs för Put-,Delete- och Post-anrop, det vill säga anrop som kan skapa eller ändra på ett objekt. Används för appar där användarens inloggningsuppgifter sparas i telefonen.
  • Nivå 3: Nivå tre är till för system-till-system anrop där man inte känner till slutanvändarens lösenord i klartext. Denna nyckel tillåts endast från i förväg anmälda IP-adresser.

 

Svar

Svarstaggar som representerar riktiga objekt har alltid taggen id som innehåller objektets unika id. Unikt id är alltid ett heltal.
Alla taggar och attributnamn anges med små bokstäver.
Svaret kodas enligt samma kodning som anropet har. Om anropet inte har någon encoding specificerad så är svaret i UTF-8.
Du kan få svaret i xml eller json genom att lägga till det i urlen.

APIURL/restobjects.xml?apikey=123
APIURL/restobjects.json?apikey=123

Vokabulär

Ord

Betydelse

Kommentar

activitybooking

Passbokning

Passbokning och bokning på väntelista

purchase

Köp

Köp av tjänster, arrangemang, varor, abonnemang, värdekort och paket

person

Användare/bokare

 

resource

Resurs

Lokal, instruktör, maskiner m.m.

activity

Gruppaktivitet/Pass

 

event

Arrangemang

 

order

Order

Avslutad order, antingen betald eller bekräftad

bokning

bokning

Baserad på produkttyperna; tjänst, vara, abonnemang, värdekort och paket

receipt

Kvitto

 

item

order eller kvitto rad

 

timeslotsuggestions

Tidsförslag till tjänstebokning

 

 

Felkoder

Felkoder

 

Vanliga flöden

Exempel på vanliga flöden

Sidoeffekter och begränsningar för köpflöde, bokningar

Sidoeffekter och begränsningar för köpflöde och bokningar

Rest-objekt

 

Skapa

Ändra

Lista

Tabort

Kräver inlogging

Extra information om apikey nivå treNivå 3 person id

Abonnemang

 

 

X1

X1

X

 userid

Anläggningar

 

 

X

 

 

  

Arrangemang

 

 

X

 

 

 personid3

Arrangemangsbokningar

 

 

X

 

X

 personid
AutogiromedgivandenXXX X personid
AvtalegironX X X personid
Dokument  X X personid

Fakturor

X

 

X*

 

X

 orderedbyid

Gruppaktiviteter

 

 

X

 

 

 personid3

Gruppaktivitetsbokningar

X1

 

X

X1

X

 personid
Egendefinerade fält  X    
InpasseringX      
Kortläsare  X    

Produkter

 

 

X

 

 

  

Meddelanden

 

 

X

 

 

  

NoShow

  X   personid

Personer

X2

X1

X

 

X

Använda apikey nivå 3 för personerpersonid

Produktgrupper

 

 

X

 

 

  

Ordrar

X1

X1

X1

X1

X

Använda nivå 3 nyckel för ordrarorderedbyid

Orderrader

X1

 

 

X1

X

  

Resurs

 

 

X

 

 

  

Lediga tider

 

 

X

 

 

  

Produktetiketter

 

 

X

 

 

  

Resurstyper

 

 

X

 

 

  
KvittoX X X customerid

Träningstillfällen

 

 

X

 

X

Använda nivå 3 nyckel för träningstillfällenpersonid

Tjänstebokningar

 

 

X

 

X

 personid
Värdekort  X1 X customerid

1Med apikey nivå tre kan relevant person anges med id för personen. Id:t heter olika beroende på vad man försöker nå: Exempelvis för abonnemang:

APIURL/subscription.xml?apikey=338934897438&subscriberid=2345

2Kräver inte inloggning

3Krävs när parametern includebooking anges

 

  • No labels