Ohjelmointirajapinnat (englanniksi Application Programming Interface, API) ovat dokumentoituja rajapintoja, joiden avulla ohjelmistot, sovellukset tai järjestelmät voivat vaihtaa keskenään tietoa tai toiminnallisuuksia.
Julkisten hallinnon API-periaatteiden tarkoituksena on edistää julkisen hallinnon tietojen ja toimintojen tarjoamista sekä hyödyntämistä ohjelmointirajapintojen avulla. Kun uusia ratkaisuja voidaan kehittää jo olemassa olevien tietojen, toimintojen ja ohjelmointirajapintojen päälle, päällekkäinen työ ja päällekkäiset ratkaisut vähenevät, kehittämistyö nopeutuu ja tuottavuus kasvaa.
Periaatteiden tavoitteena on lisätä semanttista ja teknistä yhteentoimivuutta, uudelleenkäytettävyyttä, tietoturvan ja tietosuojan huomioimista sekä laatua ohjelmointirajapintojen kehityksessä. Periaatteita tuetaan verkostoyhteistyöllä.
Julkisen hallinnon API-periaatteet ovat saatavilla suomeksi, ruotsiksi ja englanniksi. Periaatteet on kehitetty valtiovarainministeriön Tiedon hyödyntämisen ja avaamisen hankkeessa.
Rajapintaperiaatteita on kaksitoista
Strategisen tason periaatteet organisaation johdolle
Strategiset periaatteet | |
---|---|
1.1 | Tarjoa ja hyödynnä tietoja pääsääntöisesti ohjelmointirajapintojen kautta |
1.2 | Määritä ohjelmointirajapintojen tarjoamiselle ja hyödyntämiselle tavoitteet ja mittarit sekä hanki riittävät resurssit |
1.3 | Varmista hankinnoissa yhteentoimivuus muiden tietojärjestelmien kanssa |
1.4 | Edistä sisäistä ja ulkoista yhteistyötä |
Taktisen tason periaatteet organisaation tiedonhallintaa kehittäville toimijoille
Taktiset periaatteet | |
---|---|
2.1 | Kehitä ohjelmointirajapintoja tarvelähtöisesti |
2.2 | Määritä ohjelmointirajapintojen tarjoamiseen ja hyödyntämiseen liittyvät roolit, tehtävät, vastuut ja toimintamallit |
2.3 | Kuvaa ohjelmointirajapintojen muodostama kokonaisuus |
2.4 | Tunnista ja hallitse ohjelmointirajapintoihin liittyvät riskit |
Operatiivisen tason periaatteet ohjelmointirajapintoja kehittäville ja ylläpitäville toimijoille
Operatiiviset periaatteet | |
---|---|
3.1 | Kehitä ohjelmointirajapinnat avoimilla ja teknologiariippumattomilla standardeilla ja protokollilla |
3.2 | Kuvaa ohjelmointirajapintojen käsittelemät tiedot yhteisten ja yleisten tietomallien mukaisesti |
3.3 | Turvaa, testaa, versioi, dokumentoi ja julkaise ohjelmointirajapinnat |
3.4 | Seuraa ohjelmointirajapinnoille asetettuja mittareita ja muita seurantakohteita |