Eine Anwendungsprogrammierschnittstelle oder API ist ein Satz von Definitionen, Regeln und Protokollen, die die Kommunikation zwischen zwei Entitäten ermöglichen: Benutzern (entweder Menschen oder Software) und Informationen (Datenressourcen, die von Online- und Webanwendungen bereitgestellt werden).
Heute bilden APIs das Grundgerüst moderner Anwendungen, verbessern das Benutzererlebnis und erweitern Geschäftsmodelle. Manchmal kann eine API sogar das Geschäftsmodell selbst sein.
APIs sind das „öffentliche Gesicht“ von Anwendungen. Sie zeigen die Funktionen an, die sie ausführen, die Informationen, die sie bereitstellen können, und definieren das richtige Format für Anfragen. Wenn ein Entwickler die API für eine Anwendung erstellt und verfügbar macht, können andere Anwendungen mit ihr kommunizieren.
In vielen Fällen sparen APIs Entwicklern wertvolle Zeit, da sie häufig verwendete Funktionen sofort verfügbar machen. Anstatt die Funktionalität einer vorhandenen Anwendung zu duplizieren, können Entwickler die Funktionalität in ihre Anwendungen integrieren, indem sie die API der vorhandenen Anwendung aufrufen.
Die Art und Weise, wie jede API entworfen, bereitgestellt und funktioniert, hängt von ihrem Architekturstil oder Protokoll ab.
Eine API-Architektur oder ein Architekturstil bezieht sich auf das High-Level-Design einer API. Dies umfasst, wie die API strukturiert und organisiert ist und ihr Anforderungs-/Antwortformat. Ein API-Protokoll gibt auch das Format vor und beschreibt zusätzlich die genauen Nachrichten.
Zu den gängigen API-Architekturen und -Protokollen gehören:
APIs sind ein entscheidender Bestandteil moderner Software. Heutzutage erstellen oder verwenden Organisationen und Unternehmen je nach Bedarf viele unterschiedliche Arten von APIs.
Die vier häufigsten API-Typen, die heute in Organisationen zu finden sind, sind öffentliche APIs, private APIs, Partner-APIs und APIs von Drittanbietern.
Öffentliche APIs sind für Benutzer außerhalb Ihres Unternehmens zugänglich (entweder monetarisiert oder kostenlos) und ermöglichen Ihnen, Partnerschaften mit externen Entwicklern aufzubauen und Ihr gesamtes Geschäftsökosystem zu erweitern.
Da öffentliche APIs von externen Entwicklern zum Erstellen neuer Produkte genutzt werden können, tragen sie zur Innovation bei und sind ein wichtiges Instrument zum Aufbau neuer Partnerschaften.
Auf private APIs können nur interne Teams in Ihrem Unternehmen zugreifen. Sie helfen Ihnen beim Zugriff auf Daten und fördern die interne Zusammenarbeit oder unterstützen unsichtbar die öffentlichen Anwendungen Ihres Unternehmens (beispielsweise Ihre Website).
Da private APIs nur internen Benutzern zur Verfügung stehen, können Unternehmen sie unter Berücksichtigung der Optimierung erstellen. Private APIs ermöglichen außerdem eine bessere Zusammensetzbarkeit moderner Anwendungen, sodass Unternehmen sich an aktuelle Anforderungen anpassen können. Entwickler können beim Erstellen von Microservices problemlos private APIs integrieren, was die Doppelarbeit in verschiedenen Teams reduziert.
Partner-APIs dienen der direkten Integration mit Geschäftspartnern (beispielsweise wenn eine Fluggesellschaft eine Partnerschaft mit einer Hotelkette eingeht und Sie gleichzeitig Ihren Flug und Ihre Unterkunft buchen können). Partner-APIs sind nicht öffentlich verfügbar. Sie sind für ausgewählte Entwickler zugänglich, die die Authentifizierungs- (AuthN) und Autorisierungsanforderungen (AuthZ) beider Unternehmen erfüllen.
Interoperabilität stärkt die Beziehungen zu Partner-APIs, da sie Silos aufbrechen und es verschiedenen Organisationen ermöglichen, miteinander zu kommunizieren.
Ihre Organisation nutzt APIs von Drittanbietern, um auf Daten oder Funktionen zuzugreifen, die in Ihren Anwendungen und Diensten fehlen. Diese APIs werden auf dem Server des Drittanbieters ausgeführt und stellen normalerweise einen häufig benötigten Dienst bereit (ein Beispiel ist die Stripe-API zur Zahlungsabwicklung, die von vielen E-Commerce-Websites verwendet wird). Je nach API können sie von Ihrer Organisation gebührenpflichtig oder gebührenfrei genutzt werden.
Da APIs von Drittanbietern bereits von einem anderen Entwickler oder Unternehmen erstellt wurden, liegt einer ihrer klaren Vorteile in der Kostenersparnis. Darüber hinaus sind APIs von Drittanbietern für Unternehmen eine wichtige Möglichkeit, Apps schneller zu entwickeln, da Entwickler eine Funktionalität sofort nutzen können, anstatt sie selbst zu codieren.
Zum Codieren einer API kann fast jede moderne Programmiersprache verwendet werden. Viele Entwickler entscheiden sich beim Codieren einer API für die Verwendung eines Frameworks. Frameworks stellen Bausteine wie Codebibliotheken und andere notwendige Dienstprogramme bereit, die das Erstellen von Anwendungen mit der Sprache schneller und einfacher machen.
Jede Programmiersprache verfügt im Allgemeinen über ein oder mehrere Frameworks, die bei Entwicklern beliebt sind. Die Tabelle listet mehrere Framework-Optionen auf (viele davon sind Open Source).
Die Wahl der Sprache und des Frameworks hängt normalerweise von den Anforderungen des Projekts oder den persönlichen Vorlieben des Entwicklers ab.
Heutzutage benötigen Organisationen eine moderne API-Strategie , die auf ihre Ziele abgestimmt ist. Eine API-Strategie legt einen Plan fest, wie ein Unternehmen seine APIs entwirft, entwickelt, verwaltet, steuert und sichert.
Laut Gartners Top 5 API Lessons for Software Engineering Leaders gibt es fünf bewährte Methoden zur Gewährleistung einer starken API-Strategie:
Unabhängig davon, welche Art von API-Architektur Sie wählen oder welche Art von API Sie codieren, ist es wichtig, die API-Sicherheit von Anfang an und nicht erst im Nachhinein zu berücksichtigen. Weitere Informationen dazu, wie Sie Ihre APIs von Anfang an sicher halten und häufige Probleme wie die Ausbreitung von APIs bekämpfen, finden Sie unter API-Sicherheit: Best Practices zum Schutz von APIs .
Und nicht alle Metriken sind gleich. Weitere Informationen finden Sie in „Welche 12 Metriken Sie für eine erfolgreiche API-Strategie überwachen sollten“ .
Ursprünglich waren APIs ein Tool für Entwickler, mittlerweile haben sie sich jedoch zu strategischen Geschäftsgütern entwickelt, die den Umsatz steigern und die Agilität von Unternehmen fördern. API-Konnektivität bezieht sich auf die Verwendung modularer und wiederverwendbarer APIs zum Verknüpfen von Daten und Anwendungen in Cloud-nativen Umgebungen mit dem Ziel, Herausforderungen hinsichtlich Sichtbarkeit, Sicherheit und Governance zu lösen.
NGINX bietet eine Vielzahl kostenloser Ressourcen, die Sie an jedem Punkt Ihrer API-Reise unterstützen.