API – hverdagshelten få kjenner

Nesten hver gang du bruker en tjeneste på nettet våkner et API opp i bakgrunn uten at du vet det. Men hva gjør det?

Del
Nesten hver gang du bruker en tjeneste på nettet våkner et API opp i bakgrunn uten at du vet det.

Selv om denne teknologien for de fleste er ganske usynlig er det vanskelig å tenke seg hvordan verden ville vært uten bruk av API, og livene våre ville ganske sikkert sett annerledes ut uten. Dette er tjenester de fleste nyter godt av, men få vet noe om.

Begrepet API dukker etter hvert opp på konferanser og i diskusjoner, og mange er usikre på hva som skjuler seg bak de tre bokstavene. Nedenfor følger en gjennomgang som ikke krever forkunnskaper. Målet er å gi deg nok kunnskap til å i grove trekk vite hva et API er, og hva det brukes til.

I en senere artikkel vil vi gå i dybden og se på ulike former for API og bruksområdene, samt implikasjonene for regnskapsbransjen.

Først en konseptuell gjennomgang

De tre bokstavene API står for «Application Protocol Interface. På norsk kan vi kanskje si «programmeringsgrensesnitt». Kort sagt vil det si en beskrivelse av et grensesnitt mellom to elektroniske systemer.

Hva betyr så det? Jo, tenk deg at du har to dataprogrammer som er laget av forskjellige utviklere, og som bygger på forskjellige dataspråk. Så trenger det ene systemet å snakke til det andre for å utveksle data. Da er det viktig at det ene programmet skjønner hva det andre forsøker å si. Det vil si at de to programmene må ha et felles grensesnitt. Et API.

Eksempel fra den fysiske verden

Når du kommer hjem fra butikken med et nytt elektrisk apparat, enten det er en ny lampe eller en vaskemaskin, så vet du at du enkelt kan koble til det elektriske nettet ved å stikke kontakten inn i støpslet på veggen.

Grunnen til at det er mulig er at noen har laget et felles grensesnitt slik at alle elektriske apparater som selges i Norge følger samme standard for tilkobling. Noen har tenkt at det ville være greit om kontakten passer i vegguttaket, at de benytter samme spenning, og at det finnes sikringer slik at man minimerer faren for overbelastning og brann. Med andre ord en rekke standarder som regulerer hele verdikjeden fra apparatet ditt via kontakten, gjennom strømkabler i veggen til sikringsskap og videre til de som lager strømmen.

På samme måte kan en som utvikler datasystemer benytte seg av ferdige standarder for å lage koblinger mellom datasystemer. Det kan selvsagt være mer komplisert og annerledes enn i eksemplet over, men prinsippet er det samme. Det defineres et sett med regler som må følges på begge sider av grensesnittet.

Historien

Man har koblet sammen datamaskiner før noen snakket om API, men da ble det gjort ved at man laget spesialtilpassede koblinger for de systemene det var snakk om. Slike sammenkoblinger kan sammenlignes med at du kommer hjem med den nye lampen din og må bestille en elektriker for å koble den opp mot e-verket, og kanskje du også må ha utstyr til å justere spenningen – noe som er relativt komplisert og kostbart.

Historien til API bygger på fremveksten av teknologier som i seg selv kunne trenge grundig forklaring, og vi dveler derfor bare ved noen større historiske byggesteiner.

Selve tanken bak API starter etter manges oppfatning på 70-tallet med fremveksten av distribuerte systemer, det vil si selvstendige datamaskiner som var koblet sammen via et nettverk for å løse en eller flere oppgaver. I årene som fulgte spilte innføringen av objektorientert programmering, fremveksten av internett og andre trender viktige roller både i å drive behovet for API samt videreutvikle teknologien.

Web API

Når vi i dag snakker om API er det kanskje først og fremst Web-API vi tenker på. Et Web-API er et API som fungerer via kommunikasjonsprotokollen HTTP (HyperText Transfer Protocol), det vil si at det kan tilby kommunikasjon mellom to system som begge er koblet til internett. I praksis vil overføringen også være sikret med en underliggende sikkerhetsprotokoll, noe som indikeres med en «s», det vil si https.

Vi kan si at vi nå lever i Web-APIets tidsalder, og etter 2005 begynte ting å skje virkelig fort. Innen e-handel har sider som Amazon og Alibaba vokst frem som to av mange globale aktører som forener selgere og kjøpere på gigantiske markedsplasser.

Amazon for eksempel, holder sin plattform åpen for en myriade av virksomheter som tilbyr sine varer gjennom Amazon som plattform. Dette kan de gjøre nettopp ved å benytte et felles grensesnitt som lar alle aktørene koble seg til deres plattform gjennom deres API.

Flere arenaer for bruk av API

På samme måte ser vi at sosiale nettverk som Facebook, Twitter og Instagram benytter samme teknologi for å koble sammen annonsører, innholdsprodusenter og konsumenter.

Sky-teknologi er også et godt eksempel. Tjenester som Microsoft Azure, Amazon AWS og Google tilrettelegger for at deres kunder kan integrere sine tjenester i skyen via API. Strømmetjenester som Netflix og Spotify, og finansielle aktører som banker og forsikringsselskap benytter også API. Det samme er tilfellet med leverandører av skybaserte regnskapssystemer.

Regnskap Norge benytter mange APIer for at våre tjenester skal kunne snakke sammen. Når du ser et kurs du vil delta på i vår kursoversikt på regnskapnorge.no, kommer informasjonen egentlig fra en underliggende kursdatabase, men hentes til nettsiden via et API.

Fremtiden

Mange mener at man vil se flere åpne API i fremtiden. Det vil si at organisasjoner tilbyr sine data fritt ut til andre som vil benytte dem. På denne måten kan driftige entreprenører og startups bruke data fra ulike kilder inn i sine tjenester og tilby nye produkter på toppen av disse. Et eksempel på dette er kartdata, som tilbys fra det offentlige, slik at andre kan bruke denne dataen i sine tjenester. Slik kan du blant annet få opp kart på mobilen som viser eiendommer til salgs i nærområdet ditt. Da er det eiendomsmegleren som benytter kartdata fra det offentlige som basis for sin egen tjeneste. Brønnøysundregistret er et annet eksempel på offentlige instanser som tilbyr data.

Vil du vite mer?

Utveksling av regnskapsinformasjon mellom systemer og det offentlige vil i fremtiden bli støttet av det nye SAF-T-formatet, som vi vil komme inn på i en senere artikkel.

For de som straks vil vite mer finnes det masse bra informasjon på nettet, og YouTube kan være en god start. Det kommer også mer om temaet på regnskapnorge.no.

For de som er opptatt av rettslige aspekter rundt bruk av API setter Regnskap Norge denne høsten opp kurset IT-juss for regnskapsførere i Oslo, Stavanger og Trondheim.

Aktuelle kurs

Aktuelle kurs