tech-dansk ordbog
Hvad er et API? Vi oversætter det til dig!
Læs med her og Få bedre styr på Det tekniske ord API
API’er er meget populære og mange inden for programmering snakker om det. Derfor skal du selvfølgelig også være en del af den samtale, og du kommer allernemmest i gang ved at læse vores blogpost! I dette blogpost vil vi kradse i overfladen af, hvad et API er. Det vil hjælpe dig til at kunne snakke med, når en kollega, ven eller onkel ryster et term som API ud af ærmet til frokosten.
Kort fortalt står API for Application Programming Interface,og det generelle koncept for et API er, at det er software, som faciliterer interaktion med et andet stykke software, som f.eks en server eller database. For bedre at forstå det koncept kan en ikke it-relateret analogi hjælpe en del!
Restaurant-analogi
Forestil dig, at du sidder på en dejlig restaurant. På restauranten interagerer vi med en tjener. Her kan vi få information om menuen, bestille vores mad, betale regningen og så videre. Tjeneren går derefter ud i køkkenet for at give din bestilling videre, for at få information om maden, og for at give dig din bestilling, når det er tilberedt.
Tjeneren skærmer dig for at skulle forstå alt det komplekse, som foregår ude bagved i restauranten: om ovnene er tændt, hvordan grøntsagerne tilberedes, hvordan anretning skal være, have styr på beholdningen af fødevarer, eller hælde drikke op.
Tjeneren fungerer som et interface mellem dig og den service, som restauranten tilbyder. Du kan derfor stadig interagere med restauranten uden at skulle have forståelse for alt dens kompleksitet.
Vi kan derfor sige, at tjeneren fungerer som restaurantens API.
Restaurant-analogi
Forestil dig, at du sidder på en dejlig restaurant. På restauranten interagerer vi med en tjener. Her kan vi få information om menuen, bestille vores mad, betale regningen og så videre. Tjeneren går derefter ud i køkkenet for at give din bestilling videre, for at få information om maden, og for at give dig din bestilling, når det er tilberedt.
Tjeneren skærmer dig for at skulle forstå alt det komplekse, som foregår ude bagved i restauranten: om ovnene er tændt, hvordan grøntsagerne tilberedes, hvordan anretning skal være, have styr på beholdningen af fødevarer, eller hælde drikke op.
Tjeneren fungerer som et interface mellem dig og de servicer restauranten tilbyder. Du kan derfor stadig interagere med restauranten uden at skulle have forståelse for alt dens kompleksitet.
Vi kan derfor sige, at tjeneren fungerer som restaurantens API.
Hvorfor er API’er smarte?
API’er er brugbare for mange, og de bliver brugt konstant. API’ets facilitering af interaktionen mellem et stykke software med et andet stykke software kan nemlig bruges til at give adgang til data eller en evne fra andet software. Hvis du vil lave en app, der skal fortælle om, der er solskin over Aarhus, kan du gøre brug af Vejrdata i Din Bys API. Her vil API’et være tjeneren på restauranten, som går til køkkenet eller Vejrdata i Din Bys server og viderebringer din anmodning om at få data om Aarhus’ vejr. Serveren processerer anmodningen og giver svaret til tjeneren eller API’et, som serverer data til dig. API’et gemmer kompleksiteten og gør det muligt for dig at bygge software uden f.eks. at skulle være ekspert i, hvordan man måler vejrdata oveni.
REST og HTTP
I din videre forståelse af API’er vil du måske også støde på en betegnelse kaldet REST. REST står for REpresentational State Transfer, det er en softwarearkitektur og mange API’er er lavet herefter. Det vil sige, at de overholder nogle regler og krav, som gør, at de er RESTful. Grunden til, at man bruger REST, er for at gøre det enklere for udviklere at interagere med API’er og de ressourcer, som de kan tilbyde over nettet. Du behøver ikke at vide mere foreløbigt om REST end, at informationen eller data fra REST API’et bliver leveret i et af flere dataformater (se vores blogindlæg om dataformater) via HTTP protokollen.
HTTP står for HyperText Transfer Protocol og er den protokol eller kontrakt, som er grundlaget for enhver dataudveksling på nettet. Du kan måske også genkende det fra din adresselinje på din webbrowser, hvor der står “https” foran URL’en, som er siden du vil tilgå (det kan f.eks. se sådan ud: https://www.google.dk/). HTTP gør, at vi kan anmode et web-baseret API om data ved brug af dets URL, det kan du gøre både gennem din egen browser eller programmatisk. En offentlig API har en dokumentationsside tilknyttet, hvor du kan finde, hvad URL’en skal bestå af for at hente data.
Hop ud i det!
Dyk gerne mere ned i REST, HTTP og deres forbindelser til API, men vi er også af den tro, at alt bliver sjovere, hvis man hurtigst muligt selv får fingrene ned i det. Ved at følge vores guide “Få fingrene i noget JSON” på dataformat-blogindlægget, kan du hurtigt komme i gang og både få kaldet et API, tilgå noget data, samt præsentere det.
Hvis du gerne vil se et eksempel på, hvad man kan bygge ved hjælp af et API, kan vi anbefale et interaktivt verdenskort, som viser, hvor SMK’s malerier af C.W. Eckersberg har været udstillet. Kortet er lavet af Max Odsbjerg Pedersen fra Aarhus Universitets Bibliotek ved hjælp af Statens Museum for Kunsts API, som også har en god dokumentationsside.
Psst: Hvis du leger med API’er i din browser, kan et gratis plugin gøre det hele mere læsevenligt f.eks. JSONview (til Google Chrome) eller JSON Peep (til Safari).
Hvorfor er API’er smarte?
API’er er brugbare for mange, og de bliver brugt konstant. API’ets facilitering af interaktionen mellem et stykke software med et andet stykke software kan nemlig bruges til at give adgang til data eller en evne fra andet software. Hvis du vil lave en app, der skal fortælle om, der er solskin over Aarhus, kan du gøre brug af Vejrdata i Din Bys API. Her vil API’et være tjeneren på restauranten, som går til køkkenet eller Vejrdata i Din Bys server og viderebringer din anmodning om at få data om Aarhus’ vejr. Serveren processerer anmodningen og giver svaret til tjeneren eller API’et, som serverer data til dig. API’et gemmer kompleksiteten og gør det muligt for dig at bygge software uden f.eks. at skulle være ekspert i, hvordan man måler vejrdata oveni.
REST og HTTP
I din videre forståelse af API’er vil du måske også støde på en betegnelse kaldet REST. REST står for REpresentational State Transfer, det er en softwarearkitektur og mange API’er er lavet herefter. Det vil sige, at de overholder nogle regler og krav, som gør, at de er RESTful. Grunden til, at man bruger REST, er for at gøre det enklere for udviklere at interagere med API’er og de ressourcer, som de kan tilbyde over nettet. Du behøver ikke at vide mere foreløbigt om REST end, at informationen eller data fra REST API’et bliver leveret i et af flere dataformater (se vores blogindlæg om dataformater) via HTTP protokollen.
HTTP står for HyperText Transfer Protocol og er den protokol eller kontrakt, som er grundlaget for enhver dataudveksling på nettet. Du kan måske også genkende det fra din adresselinje på din webbrowser, hvor der står “https” foran URL’en, som er siden du vil tilgå (det kan f.eks. se sådan ud: https://www.google.dk/). HTTP gør, at vi kan anmode et web-baseret API om data ved brug af dets URL. En offentlig API har en dokumentationsside tilknyttet, hvor du kan finde, hvad URL’en skal bestå af for at hente data.
Hop ud i det!
Dyk gerne mere ned i REST, HTTP og deres forbindelser til API, men vi er også af den tro, at alt bliver sjovere, hvis man hurtigst muligt selv får fingrene ned i det. Ved at følge vores guide “Få fingrene i noget JSON” på dataformat-blogindlægget, kan du hurtigt komme i gang og både få kaldet et API, tilgå noget data samt præsentere det.
Hvis du gerne vil se et eksempel på, hvad man kan bygge ved hjælp af et API, kan vi anbefale et interaktivt verdenskort, som viser, hvor SMK’s malerier af C.W. Eckersberg har været udstillet. Kortet er lavet af Max Odsbjerg Pedersen fra Aarhus Universitets Bibliotek ved hjælp af Statens Museum for Kunsts API, som også har en god dokumentationsside.
Psst: Hvis du leger med API’er i din browser, kan et gratis plugin gøre det hele mere læsevenligt f.eks. JSONview (til Google Chrome) eller JSON Peep (til Safari).
Hvordan kommer jeg videre?
Efter dette blogindlæg har du fået et bedre kendskab til API’er. For at dykke mere ned i den tekniske del af det og lege videre kan du f.eks.:
Lære mere om HTTP for bedre at forstå, hvordan et webbaseret API fungerer her
Gøre brug af lærerige Youtube-videoer
Hoppe ind på vores Discord-server og spørge løs, hvis du møder udfordringer
Vi hepper på dig!
De bedste hilsner fra
Idéer til nye blogindlæg?
Skriv til os på hi@cocoders.dk og del dine ønsker til nye blogindlæg og guides.