Vad är ett API?

API är en term du kan stöta på ofta i sammanhang kring webbutveckling.

Det står för Application Programming Interface. Enkelt förklarat är det en brygga för olika system att utbyta data mellan varandra.

Okej, det kanske går att förklara ännu enklare. Vi tittar på ett exempel!

Exempel: Trafiklab

Trafiklab beskriver sig som en community för öppen trafikdata. Dom tillhandahåller bland annat API:er med information om SL:s lokaltrafikstatus, så som stationsnamn och realtidsinfo om hur många minutrar det är kvar tills din buss ska avgå.

I samband med att jag ville utvärdera frontend-ramverket Vue.js blev jag nyfiken på att testa detta API och märkte att delar av SL:s realtidsinfo hade avgångsinfo ner på sekundnivå. Det var något jag saknat i dom lokaltrafiks-appar jag testat tidigare och jag ville dra nytta av det.

Genom att läsa API:ets dokumentation kunde jag lära mig hur man gör anrop till deras servrar för att få ut informationen. Jag kunde sedan bygga en web-app och använda mig av informationen till mitt egna gränssnitt.

Visuellt exempel på appen in action:

Det du ser i videon är anrop till två olika API:er. Ett för att söka efter hållplatsnamn via fritext-sök, och ett för att hämta realtidsinfo om avgångarna på valda stationer.

Möjligheter

Trafiklabs API tillåter mig att använda mig av trafikdatan på helt valfria sätt. I detta fall bara en test-applikation (som jag visserligen använder till och från jobbet), men det hade lika gärna kunna slipats ännu mer på och blivit ett nytt tillskott på iTunes och Google Play för andra att dra nytta av.

Det här är bara ett exempelområde. API:er möjliggör också mycket annat. Smarta assistenter i hemmet som Google Home och Alexa är andra exempel. När en användare säger "Alexa, beställ fler post-its" så är det en lång kedja av API-anrop fram och tillbaka som möjliggör att ditt Amazon-konto beställer något hem till dig.

Kanske har din affärsverksamhet data eller funktionalitet som skulle lämpa sig att göra öppen och tillgänglig? Det kan vara ett sätt att öppna upp för innovation och nytänkande som din produkt kan dra nytta av.

Har du frågor om vad API:er är bra för eller är nyfiken att kika på källkoden för min web-app är du välkommen att höra av dig!

Kalle Macklin

kalle@delorean.se