Was ist eine API?
Was sind APIs? Gut, dass Sie uns fragen! APIs sind Schlüsselkomponenten unserer digitalen Welt und ermöglichen täglich in jeder Minute Milliarden digitaler Erlebnisse.
API steht für „Application Programming Interface“ (Anwendungs- oder Programmierschnittstelle). Eine API ist ein zwischengeschalteter Softwarebaustein, über den zwei Anwendungen miteinander kommunizieren können. Anders formuliert: Eine API ist wie ein Kurier, der Ihre Anfrage an einen gewünschten Anbieter übermittelt und dann dessen Antwort an Sie zurückschickt.
Eine API bündelt abstrahierte Funktionen und steht wie ein neutraler, vielseitig verwendbarer Baustein für verschiedene Anwendungsfälle zur Verfügung. Solche API-Bausteine erleichtern und beschleunigen die Programmierarbeit. Dank wiederverwendbarer APIs müssen Entwickler:innen nicht jedes Projekt bei Null zu beginnen und können die Anwendungsentwicklung erheblich beschleunigen.
Zwischen den Anforderungen der Führungskräfte an die IT-Teams und dem tatsächlich Machbaren klafft eine immer größer werdende Lücke: die ‚IT Delivery Gap‘. Mit wiederverwendbaren APIs kann die Entwicklung ihre Arbeit beschleuningen und skalieren, das IT Delivery Gap schließen und die Geschäftsanforderungen erfüllen.
Geschwindigkeit und Agilität durch API-Abstraktion
Einer der Hauptvorteile von APIs ist die Abstraktion von Funktionen zwischen verschiedenen Systemen. Ein API-Endpunkt entkoppelt die konsumierende Anwendung von der Infrastruktur, die einen Service bereitstellt. Solange die Spezifikation für das, was der Dienstleister an den Endpunkt liefert, unverändert bleibt, werden Anwendungen, die auf diese API angewiesen sind, etwaige Änderungen an der Infrastruktur hinter dem Endpunkt nicht bemerken.
So kann der Dienstleister seine Angebote flexibel gestalten. Wenn also die Infrastruktur hinter der API beispielsweise aus physischen Servern in einem Rechenzentrum besteht, kann der Dienstleister nahtlos zu virtuellen Servern in der Cloud wechseln.
Wenn die Software, die auf diesen Servern läuft (etwa Software für Kreditkartenverarbeitung), z. B. in Java geschrieben ist und auf einem oraclebasierten Java-Anwendungsserver ausgeführt wird, kann der Service-Provider diese etwa auf Node.js (serverseitiges Javascript) unter Windows Azure migrieren.
Schluss mit umständlichen Punkt-zu-Punkt-Integrationen, deren Wartung Zeit und Ressourcen kostet. Mit API-basierter Konnektivität ist das Ändern von Systemen so einfach wie das Anschließen eines Steckers. Sie können sich also ganz auf den Ausbau Ihres Composable Enterprise konzentrieren.
Wie funktionieren APIs?
Stellen Sie sich eine Bedienung in einem Restaurant vor. Sie, der Gast, sitzen am Tisch und haben die Wahl zwischen verschiedenen Menüs, und die Küche ist der Dienstleister, der Ihre Bestellung ausführt.
Um Ihre Bestellung an die Küche weiterzugeben und das Essen anschließend zu Ihrem Tisch zu bringen, brauchen Sie einen Vermittler. Das kann nicht der Chefkoch sein, denn dieser ist in der Küche beschäftigt. Es braucht also eine Verbindung zwischen dem Gast, der das Essen bestellt, und dem Koch, der es zubereitet. An dieser Stelle kommt die Bedienung – oder die API – ins Spiel.
Die Bedienung nimmt Ihre Bestellung auf, gibt sie an die Küche weiter und sagt ihr, was sie tun soll. Dann liefert sie die Antwort, in diesem Fall das Essen, an Sie zurück. Und wenn die API korrekt erstellt ist, sollten Sie das bekommen, was Sie bestellt haben.
Ein echtes Beispiel für eine API
Wie werden APIs in der realen Welt genutzt? Ein häufiges Praxis-Szenario in der API Economy ist die Buchung eines Fluges.
Wenn Sie online nach Flügen suchen, steht Ihnen eine Vielzahl von Optionen zur Auswahl. Sie wählen Ort und Datum jeweils für Abflug und Rückflug, die Beförderungsklasse und andere Variablen rund um Mahlzeiten, Ihren Sitzplatz oder Ihr Gepäck.
Für die Buchung Ihres Fluges greifen Sie über die Website der Fluggesellschaft auf deren Datenbank zu, um zu prüfen, ob an den gewünschten Terminen noch Plätze verfügbar sind und wie viel der Flug abhängig von Datum, Flugzeit, Frequentierung der Strecke usw. kosten würde.
Diese Informationen müssen Sie aus der Datenbank der Fluggesellschaft abrufen, unabhängig davon, ob Sie darauf über deren Website oder über ein Online-Reiseportal zugreifen, das Informationen von mehreren Fluggesellschaften zusammenfasst. Möglicherweise fragen Sie die Informationen aber auch über Ihr Smartphone ab. Auf alle Fälle benötigen Sie die Informationen, also muss Ihre Anwendung über die API der Fluggesellschaft auf deren Daten zugreifen können.
Die API ist die Schnittstelle, die (wie Ihre hilfsbereite Bedienung) die Daten aus der von Ihnen verwendeten Anwendung über das Internet an die Systeme der Fluggesellschaft weiterleitet. Sie ermittelt dann auch die Antwort der Fluggesellschaft auf Ihre Anfrage und liefert sie direkt an die von Ihnen verwendete Reiseanwendung zurück. Darüber hinaus erleichtert sie bei sämtlichen Bearbeitungsschritten die Interaktion zwischen der Anwendung und den Systemen der Fluggesellschaft – von der Sitzplatzauswahl bis zur Bezahlung und Buchung.
APIs erfüllen für alle Interaktionen zwischen Anwendungen, Daten und Geräten den gleichen Zweck. Sie ermöglichen Datenübermittlung zwischen Systemen und schaffen so eine vernetzte Umgebung. APIs bieten eine Standardmethode zum Abrufen beliebiger Anwendungsdaten oder Geräte, z.B. beim Zugriff auf Cloud-Anwendungen wie Salesforce oder beim Shoppen über Ihr Smartphone.
API-Typen
Es gibt einige verschiedene API-Typen, mit denen Sie sich vertraut machen sollten. Sie haben vielleicht schon von Java-APIs oder Schnittstellen innerhalb von Klassen gehört, über die Objekte in der Programmiersprache Java miteinander kommunizieren können. Neben programmzentrierten APIs gibt es auch Web-APIs wie das Simple Object Access Protocol (SOAP), Remote Procedure Call (RPC) und die vielleicht populärste – zumindest dem Namen nach – Representational State Transfer (REST). Und auch heute tauchen immer wieder neue API-Technologien und -Typen auf, etwa GraphQL oder AsyncAPI, um nur ein paar zu nennen.
Weitere API-Ressourcen
Die Grundlagen über APIs und wie sie funktionieren haben wir jetzt beschrieben, doch es gibt noch viel rund um APIs zu entdecken! Beginnen Sie Ihre Reise in unserem Blog-Ressort APIs und Integration. Und in unserer Content-Bibliothek finden Sie Whitepaper, Webcasts und Reports rund um API Management und API-basierte Konnektivität. Schauen Sie rein!