Was ist eine API?
APIs ermöglichen einen einfachen und sicheren Austausch von Daten und Funktionalitäten zwischen Anwendungen. Das vereinfacht die Software- und Innovationsentwicklung.
Erfahren Sie mehr über Lösungen zum API Management von IBM
Eine Person arbeitete an einem Stehpult an einem Computer.
Was ist eine API?

Eine Anwendungsprogrammierschnittstelle (API) ist eine Reihe von definierten Regeln für die Kommunikation zwischen verschiedenen Anwendungen. Sie fungiert als Vermittlungsebene und verarbeitet als solche Datenübertragungen zwischen Systemen. Auf diese Weise können Unternehmen ihre Anwendungsdaten und Funktionalität für externe Entwickler, Geschäftspartner und auch interne Abteilungen in ihren jeweiligen Unternehmen zugänglich machen.

Die Definitionen und Protokolle innerhalb einer API helfen Unternehmen, die vielen verschiedenen Anwendungen, die sie im Tagesgeschäft verwenden, miteinander zu verbinden. Das reduziert Arbeitszeit und bricht Silos auf, die Zusammenarbeit und Innovation im Weg stehen. Entwickler finden in der API-Dokumentation die Schnittstelle für die Kommunikation zwischen Anwendungen, was die Anwendungsintegration erleichtert.

So funktioniert eine API

Die Funktionsweise einer API lässt sich leicht nachvollziehen, wenn man ein gängiges Beispiel betrachtet – zum Beispiel die Abwicklung von Zahlungen an Dritte. Wenn ein Benutzer auf einer E-Commerce-Website ein Produkt kauft, wird er möglicherweise aufgefordert, über PayPal oder ein anderes externen Zahlungssystem zu bezahlen. Möglich ist das dank APIs, die diese Verbindung herstellen.

  • Wenn der Käufer auf die Schaltfläche zur Zahlung klickt, erfolgt ein API-Aufruf zum Abrufen von Informationen. Das ist auch bekannt als Anforderung. Diese Anforderung wird von einer Anwendung über den URI der API an den Web-Server weitergeleitet und enthält ein Anforderungsverb, Kopfzeilen und manchmal einen Anforderungshauptteil.
     

  • Nach Erhalt einer gültigen Anforderung von der Produktwebseite ruft die API das externe Programm oder den Web-Server auf – in diesem Fall das Zahlungssystem eines anderen Anbieters.
     

  • Der Server sendet eine Antwort mit den angeforderten Informationen an die API.
     

  • Die API überträgt die Daten an die Anwendung, von der die ursprüngliche Anforderung kam. In diesem Beispiel wäre das die Website des Produkts.

Während sich die Datenübertragung je nach verwendetem Web-Service unterscheidet, werden die Anforderungen und Antworten immer über eine API abgewickelt. Das ist auf der Benutzeroberfläche nicht sichtbar: APIs tauschen Daten innerhalb eines Computers oder einer Anwendung aus. Benutzer erleben sie in Form einer nahtlosen Verbindung.

Vorteile einer API

APIs vereinfachen das Entwerfen und Entwickeln neuer Anwendungen und Services sowie die Integration und Verwaltung bestehender Anwendungen. Für Entwickler und Unternehmen im Allgemeinen bieten sie aber noch weitere erhebliche Vorteile.

Verbesserte Zusammenarbeit. Ein durchschnittliches Unternehmen verwendet fast 1.200 Cloud-Anwendungen (Link befindet sich außerhalb von ibm.com). Viele davon sind nicht miteinander verbunden. APIs ermöglichen hier eine Integration, sodass diese Plattformen und Apps nahtlos miteinander kommunizieren können. Durch diese Integration können Firmen Workflows automatisieren und die Zusammenarbeit am Arbeitsplatz verbessern. Ohne APIs würde es vielen Unternehmen an Konnektivität mangeln. So würden Informationssilos entstehen, die Produktivität und Leistung beeinträchtigen.

Beschleunigte Innovation. APIs bieten Flexibilität und ermöglichen es Firmen, Kontakte zu neuen Geschäftspartnern zu knüpfen, neue Services für ihren bestehenden Markt anzubieten und letztendlich neue Märkte zu erschließen, die enorme Erträge generieren und die digitale Transformation vorantreiben können. Die Firma Stripe zum Beispiel begann zunächst mit einer API mit nur sieben Zeilen Code. Seitdem hat die Firma Partnerbeziehungen zu vielen der größten Unternehmen der Welt aufgebaut und ihr Angebot um Kredite und Firmenkarten erweitert. Erst kürzlich wurde Stripe mit 36 Milliarden US-Dollar bewertet (Link befindet sich außerhalb von ibm.com).

Monetarisierung von Daten. Viele Firmen entscheiden sich zumindest anfangs dafür, APIs kostenlos anzubieten. So können sie eine Entwicklerzielgruppe rund um ihre Marke sowie Beziehungen zu potenziellen Geschäftspartnern aufbauen. Wenn die API Zugriff auf wertvolle digitale Assets gewährt, monetarisiert das Unternehmen diese, indem es diese Zugriffsmöglichkeit zum Kauf anbietet. Dies wird als API-Economy bezeichnet. So brachte AccuWeather (Link befindet sich außerhalb von ibm.com) beispielsweise ein Self-Service Developer Portal auf den Markt, um eine breite Palette von API-Paketen zu verkaufen. Es dauerte nur 10 Monate, bis über dieses Portal 24.000 Entwickler angelockt, 11.000 API-Schlüssel verkauft und gleichzeitig eine florierende Community aufgebaut war.

Systemsicherheit. APIs trennen die anfordernde Anwendung von der Infrastruktur des antwortenden Services und bieten während der Kommunikation Ebenen der Sicherheit zwischen beiden Anwendungen. Beispielsweise erfordern API-Aufrufe in der Regel Authentifizierungsnachweise. HTTP-Header, Cookies oder Abfragezeichenfolgen können zusätzliche Sicherheit während des Datenaustauschs bieten. Zudem kann ein API-Gateway den Zugriff steuern, um Sicherheitsbedrohungen noch stärker zu minimieren.

Benutzersicherheit und Datenschutz. Genau wie APIs für zusätzlichen Schutz innerhalb eines Netzes sorgen, können sie auch eine weitere Schutzebene für persönliche Benutzer darstellen. Wenn eine Website den Standort eines Benutzers anfordert und dieser über eine Standort-API bereitgestellt wird, kann der Benutzer entscheiden, ob diese Anforderung zugelassen oder abgelehnt werden soll. Viele Web-Browser und Betriebssystem für mobile Geräte wie iOS verfügen über integrierte Berechtigungsstrukturen, wenn APIs Zugriff auf Anwendungen und deren Daten anfordern. Dateisystem wie Windows, Mac und Linux verwenden Berechtigungen, um den Zugriff einer Anwendung auf Dateien über eine API zu regeln.

Bekannte Beispiele für APIs in Aktion

Da APIs es Firmen ermöglichen, den Zugang zu ihren Ressourcen zu öffnen, ohne Sicherheit und Kontrolle aufzugeben, sind sie zu einem wertvollen Aspekt moderner geschäftlicher und persönlicher Anwendungen geworden. Hier sind einige gängige Beispiele für API-Anwendungen, denen Benutzer fast täglich begegnen:

  • Universelle Anmeldungen: Ein beliebtes API-Beispiel ist die Funktion, mit der sich Personen mit ihren Facebook-, Twitter- oder Google-Anmeldedaten auf Websites anmelden können. Diese praktische Funktion ermöglicht es jeder Website, eine API von einem der vielfach eingesetzten Services zu nutzen, um eine schnelle Authentifizierung zu ermöglichen. Das spart Zeit und Mühe, da nicht für jede Webanwendung oder neue Mitgliedschaft ein neues Profil eingerichtet werden muss.
     

  • Internet der Dinge (IoT): Diese intelligenten mobilen Endgeräte nutzen APIs für eine erweiterte Funktionalität wie z. B. internetfähige Touchscreens und Datenerfassung. Ein smarter Kühlschrank kann sich beispielsweise mit Rezeptanwendungen verbinden oder Notizen aufnehmen und per Nachricht an Handys senden. Interne Kameras stellen eine Verbindung zu verschiedenen Anwendungen her, sodass Benutzer den Inhalt des Kühlschranks von überall aus sehen können.
     

  • Vergleiche bei der Reisebuchung: Seiten zur Reisebuchung liefern gesammelte Informationen zu Tausenden von Flügen und zeigen die günstigsten Optionen für jedes Datum und jedes Reiseziel an. Dieser Service wird durch APIs ermöglicht, die den Anwendungsnutzern Zugang auf aktuelle Informationen zur Verfügbarkeit von Hotels und Flügen bieten – entweder über einen Web-Browser oder über eine eigene Anwendung der Reisebuchungsfirma. Durch den autonomen Austausch von Daten und Anforderungen reduzieren APIs den Zeit- und Arbeitsaufwand für die Suche nach verfügbaren Flügen oder Unterkünften erheblich.
     

  • Karten-Apps: Zusätzlich zu den Kern-APIs, die statische oder interaktive Karten anzeigen, verwenden diese Apps andere APIs und Funktionen, um Benutzern Wegbeschreibungen, Geschwindigkeitsbegrenzungen, Sonderziele, Verkehrswarnungen und mehr bereitzustellen. Benutzer kommunizieren mit einer API, wenn sie Reiserouten planen oder den Weg verfolgen, den Artikel zurücklegen – beispielsweise in einem Lieferfahrzeug.
     

  • Twitter: Jeder Tweet enthält beschreibende Kernattribute wie einen Autor, eine eindeutige ID, eine Nachricht, einen Zeitstempel für den Zeitpunkt des Posts und Metadaten zur Geoortung. Twitter macht die Kernattribute öffentlicher Tweets und Antworten für Entwickler zugänglich und ermöglicht es diesen, Tweets über die API des Unternehmens auf anderen Webseiten zu veröffentlichen.
     

  • SaaS-Anwendungen: APIs sind ein integraler Bestandteil des Wachstums von Software-as-a-Service-Produkten (SaaS). Plattformen wie CRM-Systeme (Tools für das Customer-Relationship-Management) umfassen oft eine Reihe integrierter APIs. Das ermöglicht Firmen Integrationen Anwendungen, die sie bereits nutzen, z. B. Apps in den Bereichen Messaging, soziale Medien und E-Mail. Bei Vertriebs- und Marketingaufgaben reduziert sich dadurch der Zeitaufwand drastisch, da nicht zwischen verschiedenen Anwendungen hin und her gewechselt werden muss. Zudem trägt es dazu bei, Datensilos zu reduzieren oder zu verhindern, die möglicherweise zwischen Abteilungen bestehen, die unterschiedliche Anwendungen verwenden.

API-Typen

Heutzutage handelt es sich bei den meisten APIs um Web-APIs, die die Daten und Funktionen einer Anwendung über das Internet bereitstellen. Die vier Haupttypen von Web-API sind folgende:

  • Offene APIs sind Open-Source-Anwendungsprogrammierschnittstelle, auf die mit dem HTTP-Protokoll zugegriffen werden kann. Sie sind auch bekannt alsöffentliche APIs und verfügen über definierte API-Endpunkte sowie Anforderungs- und Antwortformate.
     

  • Partner-APIs verbinden strategische Geschäftspartner. Normalerweise greifen Entwickler über ein öffentliches API-Entwicklerportal im Self-Service-Modus auf diese APIs zu. Dennoch müssen sie einen Onboarding-Prozess durchlaufen und Anmeldeberechtigungsnachweise erhalten, um auf Partner-APIs zugreifen zu können.
     

  • Interne APIs bleiben für externe Benutzern verborgen. Diese privaten APIs sind für Benutzer außerhalb der jeweiligen Firma nicht verfügbar und sollen stattdessen die Produktivität und Kommunikation zwischen verschiedenen internen Entwicklungsteams verbessern.
     

  • Composite-APIs kombinieren mehrere Daten- oder Service-APIs. Sie ermöglichen Programmierern den Zugriff auf mehrere Endpunkte mit einem einzigen Aufruf. Composite-APIs sind in Microservices-Architekturen nützlich, wo für die Ausführung einer einzelnen Aufgabe möglicherweise Informationen aus mehreren Quellen erforderlich sind.

API-Protokolle

Mit zunehmender Nutzung von Web-APIs wurden bestimmte Protokolle entwickelt, um Benutzern eine Reihe von definierten Regeln oder API-Spezifikationen für das Erstellen von zulässigen Datentypen, Befehlen und Syntax-Strukturen zur Verfügung zu stellen. Tatsächlich erleichtern diese API-Protokolle einen standardisierten Datenaustausch.

  • SOAP (Simple Object Access Protocol): SOAP wurde mit XML entwickelt und ermöglicht Endpunkten das Senden und Empfangen von Daten über SMTP und HTTP. SOAP-APIs erleichtern den Austausch von Informationen zwischen Apps oder Softwarekomponenten, die in verschiedenen Umgebungen ausgeführt werden oder in verschiedenen Sprachen geschrieben sind.
     

  • XML-RPC (XML Remote Procedure Call): Das XML-RPC-Protokoll nutzt ein bestimmtes XML-Format, um Daten zu übertragen. XML-RPC ist älter als SOAP, aber viel einfacher und auch relativ schlank, da es nur minimale Bandbreite benötigt.
     

  • JSON-RPC: Wie XML-RPC ist auch JSON-RPC ein Remote Procedure Call, allerdings wird hier JSON (JavaScript Object Notation) anstelle von XML verwendet, um die Daten zu übertragen.

  • REST (Representational State Transfer): REST enthält eine Reihe von Prinzipien für die Web-API-Architektur. REST-APIs– auch bekannt als REST-konforme APIs – sind APIs, die bestimmte REST-Architekturbeschränkungen einhalten. Es ist möglich, REST-konforme APIs mit SOAP-Protokollen zu erstellen. Allerdings werden beide Standards in der Regel als konkurrierende Spezifikationen betrachtet.

Traditionell bezeichnete API eine Schnittstelle, die mit einer Anwendung verbunden ist, die wiederum mit einer der Low-Level-Programmiersprache wie z. B. Javascript erstellt wurde. Moderne APIs nutzen jedoch die REST-Prinzipien und das JSON-Format. Sie sind in der Regel für HTTP konzipiert. So entstehen entwicklerfreundliche Schnittstellen, die für Anwendungen, die in Java, Ruby, Python und vielen anderen Sprachen geschrieben sind, leicht zugänglich und verständlich sind.

APIs vs. Web-Services

Ein Web-Service ist eine Softwarekomponente, die über eine Webadresse abrufbar ist und Datenübertragungen ermöglicht. Da ein Web-Service die Daten und Funktionen einer Anwendung für andere Anwendungen verfügbar macht, ist jeder Web-Service eine API. Allerdings ist nicht jede API auch ein Web-Service.

APIs sind Softwarekomponente, die als Vermittler zwischen zwei getrennten Anwendungen dienen. Web-Services verbinden zwar auch Anwendungen, benötigen dafür allerdings ein Netz. Einige APIs sind Open Source, Web-Services hingegen sind in der Regel privat und nur für zugelassene Partner zugänglich.

APIs, Microservices und cloudnative Entwicklung

Microservices stehen für einen Architekturstil, der eine Anwendung in handlichere und unabhängige Komponenten (die sogenannten Microservices) unterteilt. Diese Microservices sind über REST-APIs verbunden. Wenn eine Anwendung als Sammlung separater Services entwickelt wird, können Entwickler an einer Anwendungskomponente arbeiten – und zwar unabhängig von anderen Anwendungen. Das ermöglicht ein einfacheres Testen, Warten und Skalieren von Anwendungen.

Die Microservices-Architektur hat mit dem Aufkommen des Cloud Computing an Bedeutung gewonnen und bildet zusammen mit Containern und Kubernetes die Grundlage für die Entwicklung nativer Cloud-Anwendungen.

Weiterführende Lösungen
IBM Cloud-Automatisierung

Entscheiden Sie sich für intelligente Automatisierung, um den Geschäfts- und IT-Betrieb im gesamten Unternehmen im großen Maßstab abzuwickeln.

Erkunden Sie Cloud-Automatisierung
IBM® API Connect

Verwalten Sie Ihren API-Lebenszyklus über mehrere Clouds hinweg, fördern Sie die Sozialisierung und optimieren Sie die Monetarisierung in Ihrem gesamten Geschäftsökosystem.

Erkunden Sie IBM® API Connect
IBM Cloud Pak for Integration

Verwenden Sie die einen geschlossenen KI-Automatisierungskreislauf, um mehrere Arten der Integration zu unterstützen.

Cloud Pak for Integration kennenlernen
Integrationslösungen

Verbinden, automatisieren und erschließen Sie Geschäftspotenziale mit Integrationslösungen

Erkunden Sie Integrationslösungen
Ressourcen Was sind Container?

Container sind ausführbare Dateien, die Anwendungscode zusammen mit seinen Bibliotheken und Abhängigkeiten als Paket enthalten und auf herkömmlicher IT oder in jeder beliebigen Cloud ausgeführt werden können.

Was ist Kubernetes?

Kubernetes ist eine Open-Source-Plattform für die Containerorchestrierung, die die Bereitstellung, Verwaltung und Skalierung von containerisierten Anwendungen automatisiert.

The Forrester Wave™: API Management Solutions, Q3 2022

Erfahren Sie, warum API Management für die Entwicklung digitaler Geschäftsmodelle entscheidend ist und wie IBM im Vergleich zu anderen Anbietern aus dem API Management im Hinblick auf aktuelle Angebote, Strategie und Marktpräsenz abschneidet.

Gehen Sie den nächsten Schritt

IBM® API Connect ist eine sichere Lösung für Ihr API Management, die über eine intuitive Benutzeroberfläche die konsistente Erstellung, Verwaltung, Sicherung, Zurverfügungstellung und Monetarisierung von APIs ermöglicht und so die digitale Transformation lokal und in der Cloud unterstützt. So können Sie und Ihre Kunden digitale Apps nutzen und Innovationen in Echtzeit vorantreiben. Außerdem ist IBM® API Connect mit anderen Funktionen als Teil von IBM Cloud Pak for Integration verfügbar, damit Sie beim Umstieg in die Cloud die Anwendungsmodernisierung und das API Management automatisieren können.

Erkunden Sie IBM® API Connect