Was ist eine API?

Stell dir vor, du gehst in ein Restau­rant. Du sitzt am Tisch und schaust dir die Spei­se­kar­te an, um zu ent­schei­den, was du bestel­len möch­test. Die Spei­se­kar­te ist wie eine API.

War­um?

Die Spei­se­kar­te beschreibt die ver­schie­de­nen Gerich­te, die du bestel­len kannst, und wie du dei­ne Bestel­lung auf­gibst. Du musst nicht wis­sen, wie der Koch das Essen zube­rei­tet oder wel­che Zuta­ten er ver­wen­det. Du brauchst nur die Infor­ma­tio­nen auf der Kar­te und gibst dei­ne Bestel­lung auf. Der Kell­ner bringt dir dann das fer­ti­ge Essen aus der Küche.

In der Welt der Soft­ware funk­tio­niert eine API (Appli­ca­ti­on Pro­gramming Inter­face) genau­so. Sie ist eine Art „Menü“ für Soft­ware-Pro­gram­me und beschreibt, wie Pro­gram­me mit­ein­an­der kom­mu­ni­zie­ren kön­nen, ohne dass du wis­sen musst, wie sie intern funktionieren.


Wie funk­tio­niert eine API?

Stell dir vor, du möch­test ein Wet­ter­pro­gramm auf dei­nem Smart­phone ver­wen­den. Anstatt dass das Pro­gramm selbst auf kom­ple­xe Wet­ter­da­ten zugreift, nutzt es eine API, um mit einem Wet­ter­dienst-Ser­ver zu kom­mu­ni­zie­ren. Du gibst in das Pro­gramm an, wel­che Daten du benö­tigst, z.B. das Wet­ter für dei­ne Stadt, und die API sorgt dafür, dass das Pro­gramm die Daten vom Wet­ter­dienst erhält und dir anzeigt.

Die API ist also wie eine Ver­mitt­le­rin zwi­schen dei­nem Pro­gramm und einem ande­ren Sys­tem (z.B. einem Web-Ser­vice, einer Daten­bank oder einem ande­ren Pro­gramm). Sie stellt sicher, dass du die rich­ti­gen Infor­ma­tio­nen bekommst, ohne dass du wis­sen musst, wie die Infor­ma­tio­nen intern gespei­chert oder ver­ar­bei­tet werden.


War­um sind APIs wichtig?

  1. Ver­ein­fa­chung: Sie ver­ein­fa­chen die Kom­mu­ni­ka­ti­on zwi­schen Pro­gram­men. Du musst nicht alles selbst bau­en oder ver­ste­hen – du nutzt die API, um Daten und Funk­tio­nen zu erhalten.

  2. Wie­der­ver­wend­bar­keit: APIs ermög­li­chen es, Funk­tio­nen von ande­ren Pro­gram­men zu ver­wen­den, ohne sie neu zu pro­gram­mie­ren. Zum Bei­spiel kannst du mit einer Goog­le Maps API Kar­ten­funk­tio­nen in dei­ne eige­ne App einbauen.

  3. Fle­xi­bi­li­tät: Mit APIs kön­nen Pro­gram­me pro­blem­los mit­ein­an­der „spre­chen“, selbst wenn sie auf ver­schie­de­nen Sys­te­men oder in ver­schie­de­nen Pro­gram­mier­spra­chen laufen.


Ein ein­fa­ches Bei­spiel für eine API:

  • Du möch­test eine Rei­se­bu­chungs-App nut­zen. Die App benö­tigt Infor­ma­tio­nen zu Flug­ver­füg­bar­kei­ten und Prei­sen. Statt die Daten selbst zu spei­chern und zu aktua­li­sie­ren, ruft die App über eine Flug­ha­fen-API die aktu­el­len Flug­in­for­ma­tio­nen von einer Flug­ge­sell­schaft ab.

  • Du kannst mit einer Social Media API (z.B. von Face­book oder Twit­ter) dei­ne eige­nen Apps oder Web­sites erstel­len, die es ermög­li­chen, Posts zu tei­len, Nach­rich­ten zu sen­den oder Daten von Social-Media-Kon­ten anzu­zei­gen, ohne die gan­ze Social-Media-Platt­form selbst erstel­len zu müssen.


Zusam­men­ge­fasst:

Eine API ist eine Art „Brü­cke“ oder „Ver­mitt­le­rin“, die es ver­schie­de­nen Soft­ware-Anwen­dun­gen ermög­licht, mit­ein­an­der zu kom­mu­ni­zie­ren. Sie gibt genau vor, wie zwei Sys­te­me mit­ein­an­der spre­chen, wel­che Infor­ma­tio­nen sie aus­tau­schen und wie die­se Infor­ma­tio­nen ange­for­dert und zurück­ge­ge­ben werden.