Suomi.fi för tjänsteutvecklare
Gå direkt till innehållet.
God praxis för utvecklare
Planering av programmeringsgränssnitt i den offentliga förvaltningen

Publicera livscykeln och skapa versioneringen

Gör versioneringen systematiskt

Versionering av programmeringsgränssnitt är ett sätt att hantera och uppdatera funktioner. Med hjälp av versionering kan ändringar göras i programmeringsgränssnittet utan att de skadar de applikationer som använder programmeringsgränssnittet.

Versioneringen gör det möjligt för olika användare att använda olika versioner utan att ständigt behöva uppdatera koden i takt med att nya ändringar görs.

Med hjälp av versioneringen kan man

  • erbjuda nya egenskaper
  • se till kompatibiliteten bakåt
  • ge utvecklarna tid att gå från gamla versioner till nyare.

När datamodellen görs omsorgsfullt minskar behovet av versionering.

Uppdaterad: 5.5.2026

Olika versioneringsstilar

Olika versioneringsstilar har både för- och nackdelar.

Med RESTful-arkitekturstilen behövs ofta versionering. I GraphQL-programmeringsgränssnitt är behovet av versionering mindre och i dem utnyttjas ofta den första metoden i tabellen nedan.

Versioneringsstilar för programmeringsgränssnitt med RESTful-arkitektur

Metod

Praktiska exempel

Beskrivning

Via URL-adressen

https://esimerkki.fi/fi/v1/

https://esimerkki.fi/fi/v2/

Fördelar: Det är lätt att använda cacheminnet.
Nackdelar: Versionsuppdateringen kan kräva stora ändringar i kundprogrammen.

Med hjälp av parametern för förfrågan

api/…/tuotteet?versio=1

api/…/tuotteet?versio=2

Fördelar: Linjärt genomförande.

Nackdelar: Svårare att utnyttja om det finns många parametrar.

Med hjälp av HTTP-sidhuvudet (header)

curl -H “Accepts-version: 1.0
http://www.example.com
/api/products

curl -H “Accepts-version: 2.0
http://www.example.com
/api/products

Fördelar: URL-adressen blir inte längre.

Nackdelar: Använder skräddarsydda sidhuvuden.

Versionering i samband med begäran om resursformat

curl -H “Accept: application/vnd.xm.device+json;
version=1

curl -H “Accept: application/vnd.xm.device+json;
version=2

Fördelar: URL-adressen ändras inte.

Nackdelar: Svårare att testa och prova med en webbläsare.


Tabellen visar olika mekanismer för versionsangivelse. Utöver detta är det bra att fundera på vilka innehållsmässiga ändringar som ska versioneras och hur de ska versioneras. I fråga om detta kan man få hjälp till exempel av semantisk versionering (Semantic Versioning 2.0.0 | Semantic VersioningÖppnas i ett nytt fönster.).

Uppdaterad: 5.5.2026

Kom ihåg att kommunicera om versionering och livscykel

En fungerande API-version bygger på livscykeltänkande, rätt tekniska lösningar och tillräcklig kommunikation.

Det är viktigt att informera om

  • publicering av en ny version
  • ändringar som gjorts i versionen
  • hur länge den gamla versionen stöds.

Uppdaterad: 5.5.2026

Är du nöjd med innehållet på denna sida?

Ordlista