Was ist eine API?
APIs vereinfachen die Softwareentwicklung und -innovation, indem sie den einfachen und sicheren Austausch von Daten und Funktionen über Anwendungen ermöglichen.
Person bei der Arbeit am Stehpult mit einem Computer
Was ist eine API?

Eine API (Application Programming Interface) – ermöglicht es Unternehmen, die Daten und Funktionen ihrer Anwendungen für externe Entwickler, Geschäftspartner und interne Abteilungen ihres Unternehmens zu öffnen. Dadurch können Services und Produkte über eine dokumentierte Schnittstelle miteinander kommunizieren und die jeweiligen Daten und Funktionen gemeinsam nutzen. Entwickler müssen nicht wissen, wie eine API implementiert ist. Sie verwenden einfach die Schnittstelle, um mit anderen Produkten und Services zu kommunizieren. Die Nutzung von APIs hat im letzten Jahrzehnt so stark zugenommen, dass viele der heute vielfach eingesetzten Webanwendungen ohne APIs nicht funktionsfähig wären.

Funktionsweise einer API

Eine API ist ein Satz von definierten Regeln, die erklären, wie Computer oder Anwendungen miteinander kommunizieren. APIs sitzen zwischen einer Anwendung und dem Webserver und fungieren als Zwischenschicht, die die Datenübertragung zwischen Systemen verarbeitet.

So funktioniert eine API:

  1. Eine Clientanwendung initiiert einen API-Aufruf zum Abrufen von Informationen, der auch als Anforderung bezeichnet wird. Diese Anforderung wird von einer Anwendung über den Uniform Resource Identifier (URI) der API an den Web-Server weitergeleitet und enthält ein Anforderungsverb, Kopfzeilen und manchmal auch einen Anforderungshauptteil.
  2. Nach Eingang einer gültigen Anforderung ruft die API das externe Programm oder den Web-Server auf.
  3. Der Server sendet eine Antwort mit den angeforderten Informationen an die API.
  4. Die API überträgt die Daten an die ursprüngliche anfordernde Anwendung.

Die Datenübertragung ist zwar je nach verwendetem Web-Service etwas anders, dieser Prozess von Anforderungen und Antworten erfolgt jedoch über eine API. Während eine Benutzerschnittstelle für die Verwendung durch Menschen konzipiert ist, sind APIs auf die Verwendung durch einen Computer oder eine Anwendung ausgelegt.

APIs bieten eine „eingebaute“ Sicherheit, da ihre Position als Verbindungsglied die Abstraktion der Funktionalität zwischen zwei Systemen erleichtert: Der API-Endpunkt entkoppelt sozusagen die konsumierende Anwendung von der Infrastruktur, die den Service bereitstellt. API-Aufrufe enthalten in der Regel Berechtigungsnachweise, um das Risiko von Angriffen auf den Server zu reduzieren. Ein API-Gateway kann den Zugriff begrenzen, um Sicherheitsbedrohungen zu minimieren. Außerdem bieten HTTP-Header, Cookies oder Parameter der Abfragezeichenfolge während des Austauschs zusätzliche Sicherheitsebenen für die Daten.

Stellen Sie sich zum Beispiel eine API vor, die von einem Zahlungsabwicklungsservice angeboten wird. Kunden können ihre Kartendaten am Front-End einer Anwendung für einen E-Commerce-Shop eingeben. Der Zahlungsabwickler benötigt keinen Zugriff auf das Bankkonto des Benutzers; die API erstellt ein eindeutiges Token für diese Transaktion und fügt es in den API-Aufruf an den Server ein. Dies gewährleistet ein höheres Maß an Sicherheit gegen potenzielle Hackerangriffe.

Warum wir APIs brauchen

Unabhängig davon, ob Sie bestehende Tools verwalten oder neue entwickeln, können Sie API verwenden, um den entsprechenden Prozess zu vereinfachen. Nachfolgend sind einige der wichtigsten Vorteile von APIs aufgeführt:

  • Verbesserte Zusammenarbeit: Ein durchschnittliches Unternehmen nutzt fast 1.200 Cloud-Anwendungen, von denen viele nicht miteinander verbunden sind. APIs ermöglichen die Integration, so dass diese Plattformen und Anwendungen nahtlos miteinander kommunizieren können. Durch diese Integration können Unternehmen ihre Arbeitsabläufe automatisieren und die Zusammenarbeit am Arbeitsplatz verbessern. Ohne APIs hätten viele Unternehmen Konnektivitätsprobleme und würden unter Informationssilos leiden, die ihre Produktivität und Leistung beeinträchtigen.
  • Leichtere Innovation: APIs bieten ein hohes Maß an Flexibilität und ermöglichen es Unternehmen so, Kontakte mit neuen Geschäftspartnern zu knüpfen, neue Services für ihren bestehenden Markt anzubieten und letztlich neue Märkte mit enormen Gewinnchancen zu erschließen und die digitale Transformation voranzutreiben. Das Unternehmen Stripe beispielsweise hatte seine Anfänge als API mit nur sieben Codezeilen. Seitdem ist das Unternehmen Partnerschaften mit vielen der größten Unternehmen der Welt eingegangen und hat sein Angebot um Kreditvergaben und Firmenkarten erweitert. Der Wert des Unternehmens wurde vor kurzem auf 36 Milliarden US-Dollar geschätzt.
  • Monetarisierung von Daten: Viele Unternehmen entscheiden sich dafür, APIs zumindest anfangs kostenlos anzubieten, damit sie eine Entwicklergemeinde rund um ihre Marke herum aufbauen und Beziehungen zu potenziellen Geschäftspartnern knüpfen können. Wenn die API jedoch Zugriff auf wertvolle digitale Assets gewährt, können Sie sie durch den Verkauf des Zugriffs monetarisieren (dies wird als API-Economy bezeichnet). Als AccuWeather sein Self-Service-Entwicklerportal startete, um eine breite Palette von API-Paketen zu verkaufen, dauerte es nur 10 Monate, um 24.000 Entwickler anzuziehen, 11.000 API-Schlüssel zu verkaufen und gleichzeitig eine blühende Community aufzubauen.
  • Zusätzliche Sicherheit: Wie bereits erwähnt, schaffen APIs eine zusätzliche Sicherheitsebene zwischen Ihren Daten und einem Server. Entwickler können die API-Sicherheit weiter erhöhen, indem sie Token, Signaturen und Transport Layer Security-Verschlüsselung (TLS) verwenden, API-Gateways zur Verwaltung und Authentifizierung des Datenverkehrs implementieren und ein effektives API-Management betreiben.
Gängige Beispiele für APIs

Da APIs es Unternehmen ermöglichen, den Zugriff auf ihre Ressourcen zu öffnen und gleichzeitig die Sicherheit und Kontrolle aufrechtzuerhalten, sind sie mittlerweile zu einem wertvollen Aspekt der modernen Geschäftswelt geworden. Im Folgenden finden Sie einige gängige Beispiele für APIs:

  • Universelle Anmeldungen: Ein häufig angeführtes API-Beispiel ist die Funktion, mit der sich Benutzer auf Websites mit den Anmeldedaten ihrer Facebook-, Twitter- oder Google-Profile anmelden können. Mit dieser praktischen Funktion kann jede Website eine API von einem der beliebteren Services nutzen, um den Benutzer schnell zu authentifizieren. Dadurch spart der Benutzer die Zeit und den Aufwand, für jeden Website-Service oder jede neue Mitgliedschaft ein neues Profil einrichten zu müssen.
  • Zahlungsabwicklung durch Dritte: Beispielsweise greift die mittlerweile allgegenwärtige Funktion zur Zahlung mit PayPal, die auf vielen E-Commerce-Websites zu finden ist, auf eine API zurück. So können Kunden online für Produkte bezahlen, ohne sensible Daten preiszugeben oder Unbefugten Zugang zu gewähren.
  • Vergleiche von Reisebuchungen: Websites für Reisebuchungen zeigen aus einer Ansammlung von Tausenden von Flügen die günstigsten Optionen für jedes Datum und jedes Reiseziel an. Ermöglicht wird dieser Service durch APIs, die den Anwendungsbenutzern Zugriff auf die neuesten Informationen über die Verfügbarkeit von Hotels und Flügen bieten. Durch den autonomen Austausch von Daten und Anfragen verringern APIs den Zeit- und Arbeitsaufwand bei der Suche nach verfügbaren Flügen oder Unterkünften erheblich.
  • Google Maps: Eines der bekanntesten Beispiele für eine gute API ist der Google Maps-Service. Zusätzlich zu den wichtigsten APIs, die statische oder interaktive Karten anzeigen, nutzt die App weitere APIs und Funktionen, um den Benutzern Wegbeschreibungen oder interessante Sehenswürdigkeiten anzuzeigen. Durch Geoortung und mehrere Datenschichten können Sie mit der Maps-API kommunizieren, wenn Sie Reiserouten planen oder bewegliche Objekte, wie z. B. ein Lieferfahrzeug, verfolgen.
  • Twitter: Jeder Tweet enthält beschreibende Kernattribute, einschließlich eines Autors, einer eindeutigen ID, einer Nachricht, eines Zeitstempels, wann er gepostet wurde, und Metadaten der Geoortung. Twitter stellt Entwicklern öffentliche Tweets und Antworten zur Verfügung und ermöglicht es ihnen, Tweets über die API des Unternehmens zu veröffentlichen.
Gängige Beispiele für APIs

Da APIs es Unternehmen ermöglichen, den Zugriff auf ihre Ressourcen zu öffnen und gleichzeitig die Sicherheit und Kontrolle aufrechtzuerhalten, sind sie mittlerweile zu einem wertvollen Aspekt der modernen Geschäftswelt geworden. Im Folgenden finden Sie einige gängige Beispiele für APIs:

  • Universelle Anmeldungen: Ein beliebtes API-Beispiel ist die Funktion, mit der sich Benutzer auf Websites mit den Anmeldedaten ihrer Facebook-, Twitter- oder Google-Profile anmelden können. Mit dieser praktischen Funktion kann jede Website eine API von einem der beliebteren Services nutzen, um den Benutzer schnell zu authentifizieren. Dadurch spart der Benutzer die Zeit und den Aufwand, für jeden Website-Service oder jede neue Mitgliedschaft ein neues Profil einrichten zu müssen.
  • Zahlungsabwicklung durch Dritte: Beispielsweise greift die mittlerweile allgegenwärtige Funktion zur Zahlung mit PayPal, die auf vielen E-Commerce-Websites zu finden ist, auf eine API zurück. So können Kunden online für Produkte bezahlen, ohne sensible Daten preiszugeben oder Unbefugten Zugang zu gewähren.
  • Vergleiche von Reisebuchungen: Websites für Reisebuchungen zeigen aus einer Ansammlung von Tausenden von Flügen die günstigsten Optionen für jedes Datum und jedes Reiseziel an. Ermöglicht wird dieser Service durch APIs, die den Anwendungsbenutzern Zugriff auf die neuesten Informationen über die Verfügbarkeit von Hotels und Flügen bieten. Durch den autonomen Austausch von Daten und Anfragen verringern APIs den Zeit- und Arbeitsaufwand bei der Suche nach verfügbaren Flügen oder Unterkünften erheblich.
  • Google Maps: Eines der bekanntesten Beispiele für eine gute API ist der Google Maps-Service. Zusätzlich zu den wichtigsten APIs, die statische oder interaktive Karten anzeigen, nutzt die App weitere APIs und Funktionen, um den Benutzern Wegbeschreibungen oder interessante Sehenswürdigkeiten anzuzeigen. Durch Geoortung und mehrere Datenschichten können Sie mit der Maps-API kommunizieren, wenn Sie Reiserouten planen oder bewegliche Objekte, wie z. B. ein Lieferfahrzeug, verfolgen.
  • Twitter: Jeder Tweet enthält beschreibende Kernattribute, einschließlich eines Autors, einer eindeutigen ID, einer Nachricht, eines Zeitstempels, wann er gepostet wurde, und Metadaten zur Geoortung. Twitter stellt Entwicklern öffentliche Tweets und Antworten zur Verfügung und ermöglicht es ihnen, Tweets über die API des Unternehmens zu veröffentlichen.
Arten von APIs und Arten von API-Protokollen
Arten von APIs

Heutzutage sind die meisten Web-APIs, die die Daten und Funktionen einer Anwendung über das Internet zugänglich machen. Nachfolgend finden Sie die vier wichtigsten Arten von Web-APIs:

  • Offene APIs sind quelloffene APIs, auf die Sie über das HTTP-Protokoll zugreifen können. Sie werden auch als öffentliche APIs bezeichnet und verfügen über definierte API-Endpunkte sowie Anforderung/Antwort-Formate.
  • Partner-APIs sind APIs, die für oder von strategischen Unternehmen genutzt werden. In der Regel können Entwickler auf diese APIs im Self-Service-Modus über ein öffentliches API-Entwicklerportal zugreifen. Sie müssen jedoch trotzdem einen Onboarding-Prozess durchlaufen und Anmeldedaten für den Zugriff auf Partner-APIs erhalten.
  • Interne APIs sind APIs, die für externe Benutzer verborgen bleiben. Diese privaten APIs stehen Benutzern außerhalb des Unternehmens nicht zur Verfügung und zielen stattdessen darauf ab, die Produktivität und Kommunikation zwischen verschiedenen internen Entwicklungsteams zu verbessern.
  • Zusammengesetzte APIs kombinieren mehrere Daten- oder Service-APIs. Diese Services ermöglichen es Entwicklern, mit einem einzigen Aufruf auf mehrere Endpunkte zuzugreifen. Zusammengesetzte APIs sind in Architekturen mit Mikroservices nützlich, in denen für die Ausführung einer einzigen Aufgabe Informationen aus mehreren Quellen erforderlich sein können.
Arten von API-Protokollen

Mit der zunehmenden Nutzung von Web-APIs wurden bestimmte Protokolle entwickelt, um den Benutzern eine Reihe von definierten Regeln bereitzustellen, in denen die akzeptierten Datentypen und Befehle festgelegt sind. Diese API-Protokolle erleichtern den standardisierten Informationsaustausch:

  • SOAP (Simple Object Access Protocol) ist ein auf XML basierendes API-Protokoll, mit dem Benutzer Daten über SMTP und HTTP senden und empfangen können. Mit SOAP-APIs ist es einfacher, Informationen zwischen Anwendungen oder Softwarekomponenten auszutauschen, die in unterschiedlichen Umgebungen aufgeführt werden oder in verschiedenen Sprachen geschrieben sind.
  • XML-RPC ist ein Protokoll, das ein bestimmtes XML-Format für die Datenübertragung benötigt, während SOAP ein proprietäres XML-Format verwendet. XML-RPC ist älter als SOAP, aber viel einfacher und relativ schlank, da es ein Minimum an Bandbreite benötigt.
  • JSON-RPC ist ein ähnliches Protokoll wie XML-RPC, da es sich bei beiden um Remote Procedure Calls (RPCs) handelt. Allerdings wird hier JSON statt des XML-Formats zur Datenübertragung verwendet. Beide Protokolle sind einfach. Die Aufrufe können zwar mehrere Parameter enthalten, erwarten aber nur ein Ergebnis.
  • REST (Representational State Transfer) ist ein Architekturprinzip für Web-APIs. Das bedeutet, dass es keine offiziellen Standards gibt (im Gegensatz zu denen mit einem Protokoll). Als REST-API (auch als REST-konforme API bezeichnet) muss die Schnittstelle bestimmten architektonischen Rahmenbedingungen entsprechen. Es ist möglich, REST-konforme APIs mit SOAP-Protokollen zu erstellen, die beiden Standards werden normalerweise jedoch als konkurrierende Spezifikationen betrachtet.
APIs, Web-Services und Mikroservices

Ein Web-Service ist eine Softwarekomponente, auf die über eine Webadresse zugegriffen werden kann. Daher benötigen Web-Services per Definition ein Netz. Da ein Web-Service die Daten und Funktionen einer Anwendung offenlegt, ist jeder Web-Service eine API. Allerdings ist nicht jede API auch ein Web-Service.

Ursprünglich bezeichnete der Begriff API eine Schnittstelle, die mit einer Anwendung verbunden ist, die mit einer Low-Level-Programmiersprache, wie z. B. JavaScript, erstellt wurde. Die moderne API basiert auf REST-Prinzipien und dem JSON-Format. Sie ist in der Regel für HTTP ausgelegt, was zu entwicklerfreundlichen Schnittstellen führt, die für Anwendungen, die in Java, Ruby, Python und vielen anderen Sprachen geschrieben wurden, leicht zugänglich und allgemein verständlich sind. 

Bei der Verwendung von APIs werden häufig zwei Architekturansätze verfolgt: die serviceorientierte Architektur (SOA) und die Mikroservices-Architektur.

  • SOA ist ein Software-Designstil, bei dem die Funktionen aufgeteilt und als separate Services innerhalb eines Netzes zur Verfügung gestellt werden. Typischerweise wird SOA mit Web-Services implementiert, wobei die funktionalen Bausteine über Standardkommunikationsprotokolle zugänglich gemacht werden. Entwickler können diese Services von Grund auf neu erstellen. In der Regel aber erstellen sie sie, indem sie Funktionen von traditionellen Systemen als Serviceschnittstellen bereitstellen.
  • Die Mikroservices-Architektur ist ein alternativer Architekturstil, bei dem eine Anwendung in kleinere, unabhängige Komponenten aufgeteilt wird. Der Einsatz der Anwendung als eine Sammlung separater Services macht es einfacher, sie zu testen, zu warten und zu skalieren. Diese Methode ist in der gesamten Cloud-Computing-Branche zu einer festen Größe geworden und ermöglicht es Entwicklern, an einer Komponente unabhängig von den anderen zu arbeiten.

Während SOA ein wichtiger evolutionärer Schritt bei der Anwendungsentwicklung war, ist die  Mikroservices-Architektur auf Skalierbarkeit ausgelegt. Sie bietet Entwicklern und Unternehmen die Agilität und Flexibilität, die sie benötigen, um Anwendungen auf granularer Ebene zu erstellen, zu ändern, zu testen und bereitzustellen, und dies mit kürzeren Iterationszyklen und einer effizienteren Nutzung von Cloud-Computing-Ressourcen.

Einen tieferen Einblick in die Beziehung zwischen diesen Architekturansätzen erhalten Sie unter „SOA vs. Mikroservices: Was ist der Unterschied?“.

APIs und Cloudarchitektur

Es ist wichtig, APIs zu entwickeln, die in der heutigen Welt ihren vorgesehenen Zweck erfüllen. Ein wichtiger Aspekt bei der Entwicklung nativer Cloudanwendungen ist es, eine Mikroservices-Anwendungsarchitektur über Ihre APIs zu verbinden, um Daten mit externen Benutzern, z. B. Ihren Kunden, zu teilen.

Die Services innerhalb der Mikroservices-Architektur nutzen ein gemeinsames Messaging-Framework (ähnlich den REST-konformen APIs), das die offene Kommunikation in einem Betriebssystem ermöglicht, ohne dass zusätzliche Integrationsschichten oder Datenkonvertierungstransaktionen diesen Prozess stören. Außerdem können Sie jeden Service oder jede Funktion löschen, ersetzen oder verbessern, ohne dass dies Auswirkungen auf die anderen Services hat. Diese schlanke Dynamik verbessert die Optimierung von Cloudressourcen und ebnet den Weg für bessere API-Tests, Leistung und Skalierbarkeit.

Relevante Lösungen
Neue APIs erstellen

Erstellen Sie mit IBM API Connect APIs, die Anwendungsentwickler nutzen möchten

Erstellung neuer APIs erkunden
Ihre APIs verwalten

Monetarisieren Sie Ihre API-Strategie mit einer umfassenden Verwaltung Ihres API-Ökosystems

Verwaltung Ihrer APIs erkunden
API Connect Test and Monitor

Upgrade auf den automatisierten, kollaborativen und leistungsfähigen Service IBM API Connect Test and Monitor

API Connect Test and Monitor erkunden
Ressourcen The Forrester Wave™: API Management Solutions, Q3 2022

Erfahren Sie, wie wichtig API Management für die Weiterentwicklung des digitalen Geschäfts ist und wie IBM im Vergleich zu anderen Anbietern in der API Management-Landschaft im Hinblick auf aktuelle Angebote, Strategie und Marktpräsenz abschneidet.

Mikroservices-Architektur

Verwenden Sie eine Mikroservices-Architektur, um cloudnative mobile Anwendungen und Webanwendungen zu entwickeln.

Machen Sie den nächsten Schritt

APIs werden auch in Zukunft nur einen Teil der Anwendungsmodernisierung und Transformation Ihres Unternehmens ausmachen, da die Nachfrage nach besseren Kundenerlebnissen und mehr Anwendungen die Geschäfts- und IT-Abläufe beeinflusst.Erfahren Sie, wie Sie Ihre Geschäftsabläufe noch weiter automatisieren können.Durch die Zusammenarbeit mit IBM haben Sie Zugriff auf die KI-gestützten Automatisierungsoptionen, einschließlich vorgefertigter Workflows, mit denen Sie Innovationen durch eine intelligentere Gestaltung Ihrer Prozesse beschleunigen können.

IBM API Connect kennenlernen