ROBIOTIC

Lexikon

Application-Programming-Interface (API)

Auf einen Blick

Bei einem Application-Programming-Interface – oder kurz API – handelt es sich um den etablierten Fachbegriff einer Programmier- oder auch Anwendungsschnittstelle. Solche Schnittstellen werden in der Regel dazu verwendet, um Anwendungen auf Quelltextebene in Softwaresysteme einbinden zu können. Kurz gesagt kommunizieren über eine API zwei Programme miteinander. Der Informationsaustausch zwischen dem Softwaresystem und der Anwendung erfolgt dabei in der Regel komplett standardisiert in Echtzeit.

Abgrenzung API vs. UI

Eine API ist klar von einer UI (User Interface) abzugrenzen. Das User Interface dient dem menschlichen Nutzer einer Anwendung dazu, Daten mit einem Programm auszutauschen. Nach der Eingabe von Daten im Frontend erhält der Nutzer eine Antwort bzw. ein Ergebnis des Programms aus dem Backend zurück. Eine API kommuniziert im Gegensatz zum User Interface nicht mit einem echten Menschen, sondern ermöglicht den standardisierten Datenaustausch zwischen dem Backend einer Software und einer anderen Software.

Einteilung in vier API-Typen

Das Konzept einer API ist abstrakt und kommt in der Entwicklung an vielen verschiedenen Stellen zum Einsatz. Was die verschiedenen Ausprägungen von APIs eint, ist die Kommunikation zwischen zwei nicht-menschlichen „Partnern“. So kann z. B. Software auf einem PC über eine API mit der Hardware kommunizieren, zwei Programme auf einem PC untereinander oder auch Server im Internet miteinander. Diese unterschiedlichen Ausprägungen sollen hier kurz anhand der vier API-Typen dargestellt werden:

  • Funktionsorientierte API: Die Kommunikation von funktionsorientierten APIs wird durch den Austausch von Funktionen und Funktionsparametern realisiert.
  • Dateiorientierte API: Die dateiorientierten APIs tauschen Informationen aus, indem Dateisystemaufrufe (open, read, write oder close) verwendet werden.
  • Objektorientierte API: Objektorientierte APIs funktionieren über sogenannte Schnittstellenzeiger, die größere Flexibilität ermöglichen.
  • Protokollorientierte API: Protokollorientierte APIs können unabhängig von Betriebssystem oder Hardware implementiert werden.

Vorteile von APIs

Die Verwendung von APIs hat viele Vorteile: Ein Hauptvorteil ist die Auslagerung umfangreicher Software in einzelne, überschaubare Programmmodule. Durch diese Auslagerung in Fragmente der Gesamtsoftware ist die Schnittstelle einfacher zu warten, was wiederum zu einer geringeren Fehleranfälligkeit führt. Darüber hinaus wird eine API an zentraler Stelle bereitgestellt, kann aber dezentral genutzt werden. Dadurch sind APIs besonders für verschiedene Cloud-Modelle interessant, die Nutzern ermöglichen Dienste ohne eigene Hardware in Anspruch zu nehmen.

Anwendungsbeispiele Web-API

Um den Sinn und Zweck einer API zu veranschaulichen, sollen hier nun einige Anwendungsbeispiele von APIs dargestellt werden. Dabei stehen an dieser Stelle die Web-APIs im Fokus. Ein Anwendungsbeispiel für eine webbasierte API ist Google Maps, das Bestandteil des großen Google Kosmos ist. Möchte der Betreiber eines Ladengeschäfts in einer Einkaufsstraße den Kartendienst auf seiner Webseite integrieren, um von seinen Kunden gefunden zu werden, muss er keinen Zugang zu allen Google Diensten haben. Durch die Bereitstellung der Google Maps API kann der Betreiber des Geschäfts einfach die Google Maps Schnittstelle für seine Seite nutzen, wodurch er und seine Kunden von dem Kartendienst profitieren.

Darüber hinaus können APIs auch dazu verwendet werden, Nutzer im Netz zu authentifizieren. Auch hier liefert Google ein passendes Beispiel: Viele Nutzer nehmen die Dienste des Anbieters in Anspruch und besitzen dort einen universellen Login, in dem alle Nutzerdaten hinterlegt sind. Diese Daten können durch eine API auch für andere Anwendungen nutzbar gemacht werden. Dabei kann es sich z. B. um einen Onlineshop handeln, der seinen Kunden einen möglichst leichten Weg bieten möchte, um sich zu authentifizieren ohne ein neues Login zu erstellen.

ROBIOTIC API als Draht zu den Netzbetreibern

Bei den genannten Anwendungsbeispielen handelt es sich um offene APIs, also Schnittstellen, die öffentlich zugänglich sind. Im Gegensatz zu offenen APIs gibt es auch geschlossene oder private APIs für die ausschließliche Nutzung durch berechtigte Personen. Solche geschlossenen APIs nutzen wir bei ROBIOTIC, um die Systeme unserer Kunden per Schnittstelle an die Systeme der führenden Netzbetreiber anzubinden. Hier erfahren Sie mehr zur weltweit einsetzbaren und ortsungebundenen Datenübertragung via Mobilfunk bei Ihren IoT-Projekten.

Kontakt