Datatyper og dataformat
Dataformat
Encoding
APIet returnerer data med UTF-8-encoding, og forventer at all input er UTF-8.
Dersom din applikasjon bruker en annen encoding, må du konvertere til / fra din interne encoding når du bruker APIet.
Input: XML
Alle inndata til APIet skal være XML.
Output: XML eller JSON
APIet returnerer XML som standard.
Dersom du i stedet ønsker å få returnert JSON, legger du til en Accept-header i HTTP-forespørselen:
Accept: application/json
Datatyper
Tabellen nedenfor viser de datatypene som APIet bruker for input/output:
| Datatype | Format | Eksempel |
|---|---|---|
| alphanumeric | N/A | Dette er beskrivelse 123 |
| date | yyyy-mm-dd | 2011-03-29 |
| datetime | yyyy-mm-dd hh:ii:ss | 2011-03-29 23:48:16 |
| boolean | 1 = true, 0 = false | 1 |
Content-Type
Content-type i retur angir innholdet i HTTP-respons:
Content-Type: text/xml - Respons er XML-data
Content-Type: application/json - Respons er JSON-data
Content-Type: application/pdf - Respons er PDF-data
Endringer i dataformat
Etter at betaperioden er avsluttet vil vi kun gjøre endringer i APIet som er bakoverkompatible. Med bakoverkompatible endringer mener vi endringer av de typene vi har beskrevet nedenfor.
1. Rekkefølgen av elementer og attributter kan bli endret
Eksempel: Denne XML'en:
<invoice attrA="1">
<apple>A</apple>
<banana>B</banana>
</invoice>
kan bli endret til:
<invoice attrA="1">
<banana>B</banana>
<apple>A</apple>
</invoice>
2. Nye elementer og attributter kan legges til i datastrukturen
Eksempel: Denne XML'en:
<invoice attrA="1">
<apple>A</apple>
<banana>B</banana>
</invoice>
kan bli endret til:
<invoice attrB="1" attrA="1">
<banana>B</banana>
<guava>D</guava>
<apple>A</apple>
</invoice>
3. "Pretty-print" av XML kan bli fjernet
Det kan bli aktuelt å fjerne formatering av XML. Det betyr at:
<invoice attrA="1">
<apple>A</apple>
<banana>B</banana>
</invoice>
kan bli endret til
<invoice attrA="1"><apple>A</apple><banana>B</banana></invoice>
4. Nye verdier for konstanter
Eksisterende konstanter (f.eks. transaksjonstyper, status for fakturaer etc) vil aldri bli fjernet, men det vil kunne bli aktuelt å legge til nye verdier, f.eks. for status på en faktura.
Opp til toppen av siden