Was ist eine API?
API steht für Application Programming Interface und ist eine Programmierschnittstelle. Schnittstellen ermöglichen Modularisierung von Software und die Anbindung von Drittprogrammen auf der Quelltextebene. Modularisierung bedeutet, die Software in mehrere Programmbausteine zu zerlegen. Da sie von der restlichen Anwendung getrennt sind, benötigt es eine Schnittstelle. Diese ermöglicht nämlich die Kommunikation dieser Bausteine.
Durch die Schnittstelle kann ein:e Nutzer:in auf verschiedene Komponenten zugreifen. Das sind zum Beispiel Datenbanken, Oberflächen, Hardware oder einzelne Funktionen einer Anwendung. Die Schnittstelle besteht aus einer Syntax, die zum Beispiel auch für Geschäftskund:innen dokumentiert wird. Insbesondere SaaS-Produkte und Cloudsoftware-Unternehmen nutzen APIs, weil sie so leichter Anwendungen integrieren können.
Wie funktioniert eine API?
Schnittstellen arbeiten mit Protokollen oder Regeln, um Daten anzufordern und diese zwischen Anwendungen auszutauschen. Aus der Entwicklungsperspektive haben sie den Vorteil, Dienste integrieren zu können, um auf deren neue Entwicklung zu verzichten. Das können zum Beispiel Bezahlsysteme von Drittanbietern sein. Dabei werden nur die notwendigen Informationen ausgegeben, während interne Systemdetails verborgen bleiben. Meistens fordern die Anfragen nur kleine Datenpakete an.
Wenn zum Beispiel im Bezahlprozess auf die Zahlungsschaltflächen geklickt wird, wird ein Aufruf gesendet, um Informationen abzurufen. Diese Anforderung wird an den Webserver weitergeleitet. Bei einer gültigen Anforderung ruft die API den Webserver oder das Programm auf, also das Zahlungssystem. Der Server sendet dann eine Antwort mit den angeforderten Daten an die API.
Was sind typische Beispiele?
Klassische Anwendungsfelder bilden neben Zahlungsdiensten die Integration von Paketdiensten zur Sendungsverfolgung oder Navigationsapps. Auch die Buttons für Social Media werden über APIs des jeweiligen Unternehmens auf Websites eingebettet und aktualisiert. Navigationsapps verwenden Schnittstellen, um Nutzer:innen interaktive Karten mit weiteren Funktionen wie zum Beispiel Wegbeschreibungen oder Sehenswürdigkeiten anzuzeigen.
Welche Arten von API gibt es?
APIs können funktionsorientiert sein, dateiorientiert, objektorientiert oder protokollorientiert. Sie können offen sein, nur für die interne Nutzung oder für Partner zugänglich sein. Sie werden zudem danach kategorisiert, wie sie eingesetzt werden: So gibt es Datenbank-APIs, Betriebssystem-APIs, Remote-APIs und Web-APIs.
Außerdem gibt es verschiedene API-Typen: SOAP (simple object access protocol), GraphQL, WebSocket und RPC (remote procedure call) sowie REST-API.
REST-API steht für Representational State Transfer und sorgt für den Datenaustausch von verteilten Systemen. Dabei werden Aufgaben oder Daten auf unterschiedliche Server verteilt oder von ihnen angefordert, sogenannte HTTP-Requests.