Guides

Hvad er en API? En forklaring for app-byggere

En API (application programming interface) er en defineret måde, ét stykke software kan bede et andet om data eller få det til at gøre noget. Din app sender en forespørgsel i et aftalt format — "giv mig morgendagens bookinger", "træk 20 € fra dette kort", "opsummér denne tekst" — og det andet system sender et struktureret svar tilbage. API'er er sådan, dele af en app taler sammen, og hvordan din app bruger eksterne tjenester som betalinger, e-mail, kort og AI.

Hvorfor API'er betyder noget, når du bygger med AI

Næsten alle nyttige apps er bygget af dele, der kommunikerer gennem API'er:

  • Inde i din app kalder skærmene i browseren din egen backends API for at hente og gemme data.
  • Uden for din app kalder din backend andre virksomheders API'er: Stripe til at tage betalinger, en e-mailudbyder til at sende kvitteringer, en AI-modeludbyder til at generere tekst.

Når du beder en AI-builder om at "tage betalinger" eller "tilføje et AI-resumé", skriver den i virkeligheden kode, der kalder en API. Med de grundlæggende begreber forstår du bedre, hvad AI'en har brug for fra dig (typisk en konto hos tjenesten og en API-nøgle), hvor tingene kan gå galt, og hvad de koster.

En hverdagsanalogi

Tænk på en restaurant. Du går ikke ind i køkkenet og laver mad. Du læser menuen, fortæller tjeneren, hvad du vil have, på en måde køkkenet forstår, og tjeneren bringer din mad tilbage — eller fortæller dig, at retten er udsolgt.

  • Menuen er API-dokumentationen: en liste over, hvad du kan bede om, og hvordan.
  • Tjeneren er API'en: den ene aftalte måde, forespørgsler kommer ind på, og svar kommer ud.
  • Køkkenet er det andet system: du behøver ikke vide, hvordan det fungerer indvendigt.
  • Din bestilling er forespørgslen; tallerkenen er svaret.

Køkkenet kan skifte ovne og personale uden at påvirke dig, så længe menuen forbliver den samme. Det er API'ens egentlige værdi: den lader to systemer arbejde sammen, uden at nogen af dem behøver at vide, hvordan den anden er bygget.

Sådan virker en web-API-forespørgsel

De fleste API'er, du støder på, er web-API'er, der virker over HTTP, den samme protokol din browser bruger. Hver forespørgsel har nogle få dele:

DelHvad det erEksempel
MetodeTypen af handlingGET (læs), POST (opret)
URL / endpointAdressen på det, du handler påhttps://api.example.com/bookings
HeadersEkstra information, inklusive hvem du erAuthorization: Bearer <din nøgle>
BodyDe data, du sender, ved oprettelse og opdatering{"name": "Lena", "time": "14:00"}

Og hvert svar har:

DelHvad det erEksempel
StatuskodeEt tal, der siger, hvordan det gik200 OK, 201 Created, 404 Not Found
BodyDe data, der returneres, typisk som JSON{"id": 5001, "status": "confirmed"}

JSON (JavaScript Object Notation) er et simpelt tekstformat med navne og værdier i krølleparenteser. Det er standarden for, hvordan web-API'er udveksler data.

REST: den mest almindelige stil

REST er en udbredt konvention til at designe web-API'er. Hver type ting får sin egen URL, og standardmetoder siger, hvad du gør med den. Her er, hvordan en REST-API til en bookingapp kunne se ud:

MetodeEndpointHvad den gør
GET/api/bookingsLister bookinger
GET/api/bookings/5001Henter én booking
POST/api/bookingsOpretter en ny booking
PATCH/api/bookings/5001Ændrer en del af en booking, fx tidspunktet
DELETE/api/bookings/5001Annullerer (sletter) en booking

PUT findes også og erstatter typisk en hel post, mens PATCH kun ændrer de felter, du sender.

Statuskoder, du oftest ser:

KodeBetydning
200 / 201Succes / oprettet
400Ugyldig forespørgsel — noget i det, du sendte, var forkert eller manglede
401Ikke autentificeret — intet gyldigt login eller nøgle
403Forbudt — du er kendt, men må ikke gøre dette
404Ikke fundet
429For mange forespørgsler — du har ramt en hastighedsgrænse
500Serveren havde en fejl

Når din app går i stykker, er statuskoden ofte det hurtigste fingerpeg. En 401 fra en betalingsudbyder betyder typisk en manglende eller forkert API-nøgle; en 429 betyder, at du kalder for ofte.

REST er ikke den eneste stil — GraphQL og RPC-lignende API'er findes også — men REST er det, de fleste tjenester og AI-byggede backends bruger.

Et eksempel: en bookingbekræftelse

Når en kunde booker en klipning i en frisørapp, kan flere API-kald ske på et sekund eller to:

  1. Booking-siden i browseren sender POST /api/bookings med ydelse, tidspunkt og kundeoplysninger til din backend.
  2. Din backend tjekker, at tidsrummet er ledigt, gemmer bookingen i databasen og returnerer 201 Created.
  3. Din backend kalder en e-mailudbyders API med sin hemmelige nøgle: "send denne bekræftelse til lena@example.com."
  4. Hvis der er en depositum, beder din backend betalingsudbyderens API om at oprette en checkout-session og sender kunden derhen.
  5. Senere kalder betalingsudbyderen din app for at sige, at betalingen lykkedes. Det omvendte kald er en webhook.

De første to trin er din egen API mellem frontend og backend. Trin 3–5 er tredjeparts-API'er.

Almindelige begreber forklaret

BegrebBetydning
EndpointÉn bestemt URL, en API svarer på.
API-nøgleEn hemmelig streng, der identificerer din app over for en tjeneste. Behandl den som en adgangskode.
AutentificeringAt bevise, hvem der kalder — med en nøgle, et token eller et login. Se hvad autentificering er.
HastighedsgrænseEt loft over, hvor mange forespørgsler du kan sende i en periode.
SDKEt færdigt kodebibliotek, der gør det nemmere at kalde en bestemt API.
Dokumentation"Menuen": hvilke endpoints der findes, hvad de accepterer og returnerer.
Sandkasse / testmodeEn version af en tjeneste til test uden rigtige penge eller rigtige data.
WebhookEt kald fra en anden tjeneste ind i din app, når noget sker.

Almindelige fejl og misforståelser

  • At putte hemmelige nøgler i frontend'en. Alt i kode, der kører i browseren, kan ses af enhver, der besøger siden. Hemmelige nøgler skal blive på serveren, i miljøvariabler eller hemmeligheder.
  • At indsætte nøgler i chatten. Chathistorikken kan gemmes. Brug i stedet din builders hemmelighedsfunktion, og roter enhver nøgle, du har afsløret.
  • At antage, at en API er gratis. Mange API'er tager betaling pr. forespørgsel eller pr. forbrugsenhed — AI-model-API'er tager betaling pr. token. Tjek priserne, og sæt forbrugsgrænser. Se sådan bruger du LLM-API'er.
  • At ikke håndtere fejl. Eksterne tjenester går ned, får timeouts og rammer grænser. Bed om fornuftige fejlmeddelelser og nye forsøg.
  • At stole på browseren. Din egen API skal selv tjekke tilladelser. At skjule en knap stopper ikke nogen i at kalde endpointet direkte.
  • At bruge live-nøgler under test. Brug testmode-nøgler, indtil du er klar til lancering.

Hvad du skal bede din AI-builder om

  • "Hvilke eksterne API'er bruger denne app, og hvad koster hver af dem?"
  • "Kald betalings-API'en kun fra serveren. Læs nøglen fra en miljøvariabel."
  • "List hvert endpoint i vores API, hvad det gør, og hvem der må kalde det."
  • "Tjek på serveren, at den indloggede bruger ejer bookingen, før den opdateres eller slettes."
  • "Hvis e-mail-API'en fejler, så gem bookingen alligevel og log fejlen."
  • "Brug udbyderens testmode indtil videre."

API'er i Mythex

Mythex kan bygge din egen API — som en del af en webapp eller som en separat backend i Node, Python (FastAPI), C# eller Java, der kører ved siden af din frontend — og skrive koden, der kalder eksterne tjenester. Du tilføjer deres nøgler som projekthemmeligheder i stedet for i chatten, og de er tilgængelige for din app i preview og, når den er publiceret. Dokumentationen har opskrifterne integrer enhver API og byg en REST-API-backend.

Spørgsmål

Hvad er en API i enkle termer?

En API (application programming interface) er en defineret måde, ét stykke software kan bede et andet om data eller om at gøre noget. Din app sender en forespørgsel i et aftalt format, og det andet system sender et svar tilbage — fx vejrdata, et betalingsresultat eller et AI-genereret svar.

Hvad er en REST-API?

En REST-API er en almindelig stil for web-API'er, hvor hver type ting (bookinger, kunder) har sin egen URL, og du bruger standard-HTTP-metoder — GET for at læse, POST for at oprette, PUT eller PATCH for at opdatere og DELETE for at fjerne. Data kommer typisk tilbage som JSON.

Hvad er en API-nøgle, og hvor skal jeg opbevare den?

En API-nøgle er en hemmelig streng, der identificerer din app over for en tjeneste, og som ofte giver adgang til at bruge penge eller data. Opbevar den i miljøvariabler eller din projekts hemmeligheder på serveren — aldrig i kode, der kører i browseren, og aldrig i et offentligt repository.

Hvad er forskellen på en API og en webhook?

Med en API spørger din app en anden tjeneste om noget, når den har brug for det. Med en webhook kalder den anden tjeneste din app, når noget sker — fx at en betalingsudbyder giver besked om, at en betaling lykkedes.

Mythex · Pricing · Byg hvad som helst med AI · Skabeloner til websites og apps · Mythex sammenlignet · Ordliste for app-bygning med AI · Gratis værktøjer til app-bygning med AI · English

English አማርኛ العربية Български বাংলা Bosanski Català Čeština Deutsch Ελληνικά Español Español (España) Eesti فارسی Suomi Français Français (Canada) ગુજરાતી हिन्दी Hrvatski Magyar Հայերեն Bahasa Indonesia Íslenska Italiano 日本語 ქართული Қазақ тілі ಕನ್ನಡ 한국어 Lietuvių Latviešu Македонски മലയാളം Монгол मराठी Bahasa Melayu မြန်မာ Norsk bokmål Nederlands ਪੰਜਾਬੀ Polski Português (Brasil) Português (Portugal) Română Русский Slovenčina Slovenščina Soomaali Shqip Srpski Svenska Kiswahili தமிழ் తెలుగు ไทย Tagalog Türkçe Українська اردو Tiếng Việt 简体中文 繁體中文(香港) 繁體中文(台灣)