Ein Application Programming Interface (API) lässt sich mit den Worten Anwendungs-Programmierschnittstelle beschreiben. Was leistet so eine Schnittstelle? Diese Schnittstelle eines Programmes steht anderen Programmen zur Anbindung an das schnittstellen-führende System bereit. Und zwar zwischen Programmen auf einem Betriebssystem ebenso wie über Betriebssystemgrenzen und -arten hinaus. Software-Entwickler und Programmierer usw. nutzen diese APIs – manchmal schreiben sie diese auch.
Ein API veranschaulicht
Wenn man zum Beispiel eine Grafik aus einem Dateimanager (Finder, Datei-Explorer etc.) per Drag-and-drop herauszieht und in Word-Dokument fallen lässt, sieht das selbstverständlich aus. Tatsächlich ist dies aber nur möglich, weil ein API dazu existiert. Um beim eben erwähnten Beispiel zu bleiben: Man hat zwei Anwendungen, den Dateimanager und ein Word-Programm. Und beide Programme greifen in diesem Fall auf ein API zu. In diesem Fall auf ein API des Betriebssystems. Eine Schnittstelle macht also die Programmgrenzen an dieser Stelle durchlässig. Konkreter: Eine Programmierschnittstelle beschreibt mit festen Regeln, was wie angesprochen und verarbeitet werden kann.
In der Regel zeichnet sich eine Schnittstelle durch ihre – hoffentlich gute – Dokumentation und Stabilität in der Zeit aus. Der interessierte Leser verschafft sich hier einen Überblick: Clipboard für Windows und Pasteboard für MacOS. Unschwer zu erkennen, dass selbst so simpel erscheinende Operationen wie Copy-und-paste sehr umfänglich dokumentiert sind und viele Seiten füllen. Andere ebenso selbstverständlich erscheinende Programmierschnittstellen stellen zum Beispiel das DOM eines HTML-Dokuments oder die Art und Weise dar, wie man Kartendienste ansprechen kann.