peshkova - stock.adobe.com
Leitfaden zur Ausarbeitung und Umsetzung einer API-Strategie
In der digitalen Welt von heute verlassen sich Unternehmen zunehmend auf APIs, um Daten und Dienste bereitzustellen. Ein Guide zur Entwicklung einer erfolgreichen API-Strategie.
Die Unternehmen von heute arbeiten mit Software, die mit unzähligen Plattformen zusammenarbeiten muss. Doch wie kann ein Unternehmen seine wertvollen Daten und Rechenkapazitäten zahllosen potenziellen Benutzern zur Verfügung stellen, ohne den zugrunde liegenden Quellcode offenzulegen und mit unzähligen Mitwirkenden zusammenzuarbeiten?
Die Programmierschnittstelle (Application Programming Interface, API) definiert verfügbare Interaktionen zwischen Teilen separater und unterschiedlicher Software, um Dienste anzufordern und zu präsentieren, ohne dass diese etwas über den anderen wissen. Diese Abstraktionsebene ermöglicht die einfache Ausführung komplexer Interaktionen.
Nehmen wir ein Restaurant: Die Gäste interagieren mit der Bedienung, bestellen von einer Speisekarte und lassen sich dann das Essen bringen. Die Gäste wissen jedoch nicht, wie die Bestellungen zubereitet werden, wie die Küche arbeitet oder welche komplizierten Aufgaben im Restaurant anfallen, und müssen dies auch nicht wissen. Die Bedienung und die Speisekarte sind die API: Die Speisekarte legt die Auswahlmöglichkeiten fest, und die Bedienung kommuniziert und liefert diese Auswahlmöglichkeiten und wickelt die Zahlungen ab.
So wie eine gut gestaltete Speisekarte und eine aufmerksame Bedienung das Restauranterlebnis verbessern, bestimmt eine gut entwickelte Unternehmens-API den Umfang, die Qualität und die Sicherheit der Interaktionen des Anbieters mit den Endnutzern.
Wie profitieren Unternehmen von APIs?
Da Unternehmen zunehmend von Softwarediensten abhängig sind, um Einnahmen zu erzielen, ist die Erstellung und Pflege von APIs zu einem wichtigen Bestandteil der Unternehmensstrategie geworden. Ein reichhaltiges und vielfältiges API-Ökosystem ermöglicht es einem Unternehmen, auf Daten zuzugreifen, sie zu verarbeiten und bereitzustellen und dann aus diesen Aktivitäten entweder direkt durch Verkäufe oder indirekt durch eine bessere Effizienz Einnahmen zu erzielen; dies wird als API-Economy bezeichnet. APIs können schneller erstellt, aktualisiert und genutzt werden als physische Produkte.
Unternehmen können eine Reihe von API-Typen einsetzen, um die gewünschte Schnittstelle zu erreichen. Offene APIs (Public API) sind in der Regel uneingeschränkt und für jeden Entwickler, jedes Unternehmen oder jeden Nutzer öffentlich zugänglich. Partner-APIs sind für die Nutzung durch externe Geschäftspartner oder speziell autorisierte Organisationen vorgesehen. Interne APIs sind private Schnittstellen für die Kommunikation und Zusammenarbeit zwischen den internen Systemen eines Unternehmens. Zusammengesetzte APIs (Composite APIs) fassen mehrere API-Aufrufe in einer Antwort zusammen, um die Verarbeitung und Leistung von zusammenhängenden Aufgaben zu verbessern.
API-Entwickler können auch mit vier gängigen Arten von Webservice-APIs arbeiten:
- SOAP-APIs (Simple Object Access Protocol) tauschen Daten im XML-Format aus und werden am häufigsten für Messaging und Kommunikation verwendet.
- XML-RPC verwendet ein spezielles und proprietäres XML-Format, das einfacher ist als SOAP-basierte APIs.
- JSON-RPC ist ein ähnliches Protokoll wie XML-RPC, verwendet aber ein JSON-Format zur Datenübertragung.
- REST (Representational State Transfer) bietet eine Reihe von Architekturen und Prinzipien, die HTTP-Anfragen für den Zugriff auf und die Nutzung von Daten verwenden, darunter PUT, GET, POST und DELETE.
Die Beliebtheit von APIs und die Vielfalt der Typen und Protokolle, die Entwicklern zur Verfügung stehen, ermöglichen es Unternehmen, schnell verschiedene Kombinationen für bestimmte Geschäftszwecke oder Benutzergruppen zu entwickeln und einzusetzen, ohne dass die Software neu entworfen werden muss. Unternehmen jeder Größe und mit jeder Erfahrung in der Softwareentwicklung können ihr Geschäft auf eine Art und Weise aufbauen und verbessern, die mit traditioneller proprietärer Softwareentwicklung unmöglich ist.
Letztlich bringen APIs mehrere wichtige Vorteile für das Unternehmen mit sich:
- B2B-Zusammenarbeit. Unternehmen erstellen Software, um Geschäftsprobleme zu lösen oder Geschäftsaufgaben zu erfüllen. Die Lösung kann mit externer Software und Daten bestehen. APIs ermöglichen es einem Unternehmen, an der Software und den Daten eines anderen Unternehmens teilzuhaben. Cloud-Anbieter wie AWS bieten API-Gateways an, mit denen Entwickler sichere APIs erstellen und anbieten können.
- Kundenerfahrung. Die Interoperabilität einer API und ihre Fähigkeit, einen Mehrwert zu schaffen, führt zu einer besseren Benutzererfahrung, Kundenzufriedenheit und Support. Ein Beispiel: Ein Transportunternehmen nutzt eine API eines Kartendatenunternehmens, um Fahrern Routen anzuzeigen, mit einer anderen API, um Straßen- und Verkehrswarnungen für Fahrer einzublenden, und einer weiteren API, um Wetterbedingungen einzublenden. Diese Kombination macht das Fahren sicherer, effizienter und produktiver. Ein weiteres Beispiel ist die Software von Gesundheitsdienstleistern, die APIs einsetzt, um Patientendaten von mehreren Anbietern zu bündeln und den Ärzten eine umfassendere Patientenhistorie zu präsentieren.
- Produkt- und Dienstleistungsinnovation. Das schnellere Geschäftstempo lässt wenig Raum für Fehltritte oder gescheiterte Projekte. Viele Unternehmen können keine herkömmliche proprietäre Software entwickeln oder bereitstellen. APIs ermöglichen es auch kleinen Unternehmen, auf demselben Niveau zu operieren wie größere Unternehmen. APIs sind kleiner und einfacher zu aktualisieren oder zu ändern als vollständig entwickelte Anwendungen, was es API-Anbietern ermöglicht, mit neuen oder verbesserten API-Angeboten schnell auf veränderte Kundenbedürfnisse oder neue Geschäftsmöglichkeiten zu reagieren.
- Einstieg in die Public Cloud. Unternehmen, die die Einführung der Cloud erkunden, erkennen schnell, dass APIs für die Cloud-Entwicklung für die Erstellung und Bereitstellung von Diensten über das Internet unerlässlich sind. APIs wickeln jede Anmeldung, jede bereitgestellte Ressource und jeden Datenaustausch zwischen einer Public Cloud und dem Cloud-Nutzer ab. Unternehmen können eine anbieterspezifische API wie die Microsoft Azure REST API oder plattformübergreifende APIs wie jclouds und Libcloud von Apache wählen.
Was sind Anwendungsfälle für APIs im Unternehmen?
APIs stellen Daten zur Verfügung und unterstützen die Interaktion mit dem Unternehmen und den Anfragenden. Private APIs, die innerhalb des Unternehmens erstellt und eingesetzt werden, ermöglichen die Interaktion zwischen zwei oder mehreren internen Softwareplattformen. Öffentliche APIs, die zur Unterstützung von Interaktionen außerhalb des Unternehmens oder mit Drittanbietern erstellt und eingesetzt werden, ermöglichen anderen Programmen, wie zum Beispiel Benutzerendpunkten, die Nutzung von Unternehmensdaten und -diensten.
Ein Unternehmen kann Dutzende oder sogar Hunderte von öffentlichen und privaten APIs entwickeln, pflegen und nutzen. Der generische Charakter von APIs macht sie für eine Vielzahl von Anwendungsfällen unentbehrlich. Einige Unternehmen, zum Beispiel im Einzelhandel, bei Finanzdienstleistungen, im Transportwesen und im Gesundheitswesen, verwenden branchenspezifische APIs.
Warum ist es wichtig, eine API-Strategie zu haben?
Die wachsende Bedeutung von APIs erfordert von Unternehmen eine intelligente Planung von API-Entwicklung und -Management. Es reicht nicht aus, einfach eine API zu erstellen und freizugeben – oder eine externe API zu übernehmen – und auf das Beste zu hoffen. Ein umfassendes API-Management unterstützt dabei, die Anforderungen von Entwicklern, Anwendungen, Benutzern und dem Unternehmen in einer kohärenten Weise zu erfüllen.
Eine formelle, detaillierte API-Managementstrategie definiert die gewünschten API-Funktionen und -Roadmaps und kodifiziert und umreißt die Schlüsselelemente von API-Design, Sicherheit und Dokumentation. Auf diese Weise kann ein Unternehmen seine APIs standardisieren, Komponenten und Entwicklungspersonal gemeinsam nutzen, die gewünschten Qualitäts- und Leistungsstandards erfüllen und die Anforderungen an Sicherheit und Einhaltung gesetzlicher Vorschriften erhöhen.
API-Management sollte sich mit den wichtigsten geschäftlichen Fragen befassen, einschließlich:
- Bietet die API die Merkmale und Funktionen, die Anwendungen und Benutzer benötigen?
- Wie steuert das Unternehmen die Freigabe und zukünftige Entwicklung der API?
- Bietet die API genügend Autorisierung und Authentifizierung, um Geschäftsdaten und Workloads vor unbefugtem Zugriff oder Änderungen zu schützen? Wird die API-Sicherheit während der Entwicklung angemessen getestet?
- Wie wird die API genutzt? Wie viele API-Aufrufe verarbeitet das Unternehmen Monat für Monat? Welche Tools sind verfügbar und werden eingesetzt, um die Nutzung und Leistung der API zu überwachen?
- Unterstützt die API die Geschäftsstrategie? Unterstützt die API die Anforderungen des Unternehmens an die Einhaltung von Gesetzen? Wird die Nutzung der API protokolliert und geprüft?
Management des API-Lifecycle
Genauso wie Unternehmen Techniken zum Management des Softwarelebenszyklus anwenden, setzen sie identische Praktiken zum Management des API-Lifecycle ein, um APIs von der Planung bis zur Ausmusterung zu begleiten. Eine API-Lifecycle-Strategie umfasst in der Regel fünf Phasen:
- Planung. In dieser Planungsphase erörtert ein Unternehmen seine technischen und geschäftlichen Anforderungen, formalisiert die grundlegenden Anforderungen an die API und genehmigt die Entwurfsspezifikationen und die Dokumentation. Zu den gängigen Best Practices für das API-Design gehört die Festlegung von Präferenzen in Bezug auf API-Sprache, Benennungsstandards, Layout, Messaging und Architektur.
- Entwicklung. Die Entwickler codieren die API mit gängigen Entwicklungs-Tools und Programmiersprachen wie PHP, Python, Ruby, Visual C# .NET, Java, Perl und anderen.
- Tests. Die Organisation testet gründlich die Funktionalität, Leistung und Sicherheit des API-Builds. Das Testen ist eine wichtige Phase für Unternehmenssoftware und erfordert die sorgfältige Arbeit von qualifizierten Softwaretestern.
- Bereitstellung. Sobald eine Version der API für die Bereitstellung freigegeben ist, muss das Entwicklungsteam wissen, wie die API im Rechenzentrum eingesetzt oder für die externe Nutzung durch Geschäftspartner und andere Benutzer freigegeben werden soll. Dazu gehört auch die Verwendung öffentlicher oder privater Repositories.
- Abschaltung. Mit der Zeit werden Support und Entwicklung der API, zum Beispiel Fehlerbehebungen und Leistungsverbesserungen, eingestellt und sie wird aus dem Verkehr gezogen. Oft wird sie durch eine neuere Version oder ein völlig anderes API-Produkt ersetzt, das ähnliche Dienste bietet.
Wie bei jeder Software handelt es sich auch bei APIs um einen iterativen Prozess, und diese Schritte des Lebenszyklus können sich während der Lebensdauer eines APIs unzählige Male wiederholen. Die Entwicklung und das Testen von APIs können sich viele Male wiederholen, bevor eine einzige Version zur Freigabe akzeptiert wird.
APIs haben zwei akute Anforderungen, die bei anderen Softwareprodukten möglicherweise fehlen: Abwärtskompatibilität und eine solide Dokumentation. Beide Faktoren sollten in einer API-Strategie und im Lebenszyklus eine wichtige Rolle spielen.
APIs sind der Klebstoff, der verschiedene Softwarekomponenten miteinander verbindet. Jede Änderung an einem API-Aufruf kann ein anderes Unternehmen dazu zwingen, seine Software unerwartet zu ändern, oder sogar dazu führen, dass diese Benutzer eine andere API-Option suchen. Bei der API-Planung müssen die möglichen Auswirkungen auf die Anwender und die Benutzerzufriedenheit sorgfältig berücksichtigt werden.
In ähnlicher Weise erfordern APIs eine ausführliche Dokumentation, in der die Parameter und Argumente jedes Aufrufs detailliert beschrieben werden. Sie sollte klare Beispiele für jeden Aufruf sowie zahlreiche Aufrufe im Kontext enthalten, zum Beispiel Beispielsoftwarecode, der die API verwendet. Andere Entwickler müssen eine klare Referenz und einen Leitfaden haben, um Software zu schreiben, die die API effektiv nutzen kann.
Herausforderungen beim Management von APIs
Obwohl sie grundsätzlich als Software entwickelt und vertrieben werden und einige Schwierigkeiten aufweisen, die Softwareentwicklern vertraut sind, stellen APIs mehrere besondere Herausforderungen dar.
Security. APIs stellen Geschäftsdaten und Arbeitslasten für andere Anwendungen, einschließlich Webbrowsern, zur Verfügung. Folglich sind APIs eine empfindliche Angriffsfläche für böswillige Aktivitäten, wie zum Beispiel Datendiebstahl. Entwickler müssen den Schwerpunkt auf API-Security legen und ausgefeilte Methoden anwenden, die Folgendes umfassen:
- Open Authorization (OAuth) für die Authentifizierung per Token und Autorisierung im Internet;
- Multifaktor-Authentifizierung (MFA) und Transport Layer Security (TLS) für Authentifizierung, Datensicherheit und Datenintegrität zwischen zwei kommunizierenden Computeranwendungen und
- Security Assertion Markup Language (SAML) für den Austausch von Sicherheitsinformationen über Identität, Authentifizierung und Autorisierung zwischen verschiedenen Systemen.
Wie lässt sich diese Herausforderung lösen? Erstellen Sie API-Sicherheitsrichtlinien, um die Mindestanforderungen und Präferenzen für die API-Authentifizierung und -Autorisierung festzulegen. Verwenden Sie zum Beispiel OAuth oder MFA zusammen mit Verschlüsselung wie Secure Sockets Layer (SSL) oder TLS; implementieren Sie den Zugriff mit den geringsten Rechten; und legen Sie Anforderungen für eine zuverlässige Fehlerbehandlung und Zugriffsberichte/Protokollierung fest.
Testen. Nichts entmündigt Benutzer schneller als eine API, die Fehler produziert oder nicht wie versprochen funktioniert. Es ist wichtig, APIs gründlich zu testen, um sicherzustellen, dass jede Version ordnungsgemäß funktioniert. API-Tests sollten häufig oder sogar kontinuierlich und in kurzen Zyklen durchgeführt werden. API-Tests sollten nach jeder größeren Codeänderung und nach jeder Datenbankänderung durchgeführt werden, um sicherzustellen, dass die Datenbank wie erwartet mit der Anwendung funktioniert.
Wie lässt sich diese Herausforderung lösen? Kodifizieren Sie API-Testverfahren, um sicherzustellen, dass APIs ähnlich rigorosen Tests und einer umfassenden Testfallerstellung unterzogen werden. Legen Sie zum Beispiel die Verwendung von API-Test-Tools fest, die Arten von Tests, die durchgeführt werden sollten, wie zum Beispiel Security-, Smoke- oder Canary-Tests, die zu verwendenden Testfälle, wie zum Beispiel gemeinsame Testdatenbanken, und bestimmen Sie einen Speicherort für Testergebnisse und die Aufbewahrung von Testergebnissen.
Versionskontrolle. Um Aufrufe und Antworten zwischen mehreren Computer- und Softwaresystemen zu managen, müssen APIs vollständig vorhersehbar sein. Jedes System muss genau wissen, wie die API-Schnittstelle funktioniert, zusammen mit allen verfügbaren Aufrufen, Argumenten, Parametern und Meldungen Änderungen an der API-Software wirken sich auf all diese Elemente aus, was den Datenzugriff und -fluss unterbrechen oder stören und die API-Benutzer zwingen kann, ihre Systeme anzupassen.
Wie lässt sich diese Herausforderung lösen? Eine klar definierte API-Versionsstrategie und eine sorgfältige Versionskontrolle bieten den Nutzern Abwärtskompatibilität und ausreichend Zeit, um die notwendigen Änderungen vorzunehmen, damit neue Aufrufe und Funktionen in der neuesten API-Version berücksichtigt werden können.
Dokumentation. APIs sind in besonderem Maße von der Dokumentation abhängig, in der die verfügbaren Aufrufe, Argumente, Parameter, Meldungen und andere Elemente im Zusammenhang mit einer API beschrieben werden. Die Dokumentation muss klar und präzise sein und Beispiele und Erklärungen bieten, die den Entwicklern helfen, die API zu übernehmen und zu integrieren.
Die Dokumentation ist eng mit der Versionskontrolle verknüpft. Änderungen an einem Aspekt der API oder eine neue API-Version können die Interaktion dieser API mit anderen Systemen verändern und zu Fehlern oder Ausfällen führen, wenn diese Änderungen nicht ordnungsgemäß dokumentiert sind.
Wie lässt sich diese Herausforderung lösen? Eine ordnungsgemäße API-Dokumentation ermöglicht es den Benutzern, eine API schnell und vollständig zu testen und zu übernehmen, ohne dass es zu Fehlern und Frustrationen kommt. Typische API-Dokumentationsrichtlinien umfassen Referenzdaten, die sich auf API-Aufrufe und -Syntax konzentrieren, Beispiele, die zeigen, wie API-Aufrufe verwendet werden, und Anleitungen, die umfassendere Beispiele im Kontext bieten und Zugang zum API-Entwickler-Support oder zu zusätzlichen Informationen bieten.
Management. Ein Unternehmen muss alle APIs – und deren Versionen – sowie die verschiedenen Anwendungen und Datensätze, die diese APIs verbinden, verfolgen. Es muss auch sicherstellen, dass nur autorisierte API-Benutzer Anfragen stellen und dass API-Aufrufe und -Antworten ebenfalls verfolgt werden. Wenn ein Unternehmen nicht weiß, wie viele API-Nutzer Anfragen stellen, kann es diesen Nutzern die API-Nutzung nicht in Rechnung stellen.
Wie lässt sich diese Herausforderung lösen? API-Mapping-Tools können Entwickler unterstützen, die zwischen APIs übermittelten Nachrichten zu verstehen und zu veranschaulichen, wie APIs miteinander interagieren. Generell wird API-Management durch eine Reihe von Tools oder eine kombinierte Plattform durchgeführt, die koordinierte Aspekte des API-Managements übernimmt.
Komponenten einer erfolgreichen API-Strategie
Die meisten Unternehmen setzen auf eine API-Managementplattform, um die zahlreichen Aufgaben zu unterstützen, die beim Management von APIs während ihres gesamten Lebenszyklus anfallen. Eine API-Managementplattform kann dabei helfen, einige der Aufgaben zu rationalisieren und sogar zu automatisieren, die mit der Entwicklung, dem Testen und der Bereitstellung von APIs verbunden sind. API-Managementplattformen versprechen in der Regel fünf große Vorteile für das Unternehmen:
- Entdeckung. Eine API-Managementplattform kann den Austausch zwischen Anwendungen, Diensten und anderen APIs überwachen und neue APIs erkennen, die verfügbar sind.
- Versionskontrolle. Versionskontrolle stellt sicher, dass die richtigen API-Versionen in der Umgebung vorhanden sind. Sie informiert darüber, wann Aktualisierungen verfügbar sind, und hilft dabei, diese Aktualisierungen bei Bedarf zu beschaffen.
- API-Verteilung. Die API-Managementplattform kann Benutzern dabei unterstützen, eine API bereitzustellen und Dienste auf die neue API zu portieren.
- Security. Die API-Managementplattform kann bei der Bewertung der API-Sicherheit helfen, indem sie Aufrufe oder Antworten aufspürt, die Daten oder eine potenzielle Angriffsfläche in einer Arbeitslast, die die API verwendet, offenlegen.
- Tool-Integration. Die API-Managementplattform lässt sich häufig in andere Softwareentwicklungs-Toolkits wie Git oder Gradle integrieren, um sicherzustellen, dass die Managementfunktionen ein integraler Bestandteil des API-Lebenszyklus sind.
API-Management-Tools können komplex sein, aber sie verwenden in der Regel mehrere Hauptkomponenten zur Unterstützung einer API-Managementstrategie: ein API-Entwicklerportal, eine API-Testumgebung, ein API-Gateway oder ein API-Proxy, eine API-Dokumentations-Engine und mehr.
API-Entwicklerportal. Dabei handelt es sich im Wesentlichen um ein Schaufenster, über das Unternehmen verfügbare APIs anzeigen, auswählen, beziehen und nutzen können. Es bietet Details zu den verfügbaren APIs, Zugang zu Dokumentationen wie Leitfäden und Tutorials sowie Anleitungen für die Installation und Integration mit Entwickler-Tools. Das Portal enthält außerdem häufig ein Änderungsprotokoll, damit Entwickler nachvollziehen können, wie sich die API-Versionen im Laufe der Zeit verändert und weiterentwickelt haben, sowie alle relevanten API-Statusinformationen, zum Beispiel ob die API nicht unterstützt wird oder sich im End-of-Life-Modus befindet.
API-Lifecycle-Manager. Alle APIs haben einen Lebenszyklus, der ein API-Produkt von der Entstehung bis zum Ende seiner Lebensdauer begleitet. Zentralisierte Lifecycle-Management-Funktionen in einer solchen Plattform helfen Unternehmen sicherzustellen, dass APIs die richtigen Daten aus den richtigen Anwendungen bereitstellen und verarbeiten.
API-Policy-Manager. Richtlinien verwenden logische Anweisungen, die über das API-Gateway gesteuert werden, um die Verfügbarkeit und das Verhalten einer API zu bestimmen – wie sie den Datenfluss steuert, Aufrufe drosselt, Variablen behandelt und so weiter. Ein API-Management-Tool enthält in der Regel eine Reihe von Standardrichtlinien, aber Unternehmen können Richtlinien ändern und hinzufügen, um sie an die individuellen Anforderungen des Unternehmens anzupassen.
API-Analyse. Eine API-Analyse-Engine sammelt und analysiert Metriken, die sich auf die API-Nutzung beziehen, und erstellt Berichte für API-Entwickler und andere Beteiligte. Zu den API-Metriken gehören die Anzahl der Aufrufe, die Benutzer, die API-Aufrufe tätigen, Latenz, Betriebszeit und Verfügbarkeit, CPU-Speicherauslastung, Fehler und Trends im Zeitverlauf.
API-Testumgebung. Die Validierung einer API auf Zuverlässigkeit, Sicherheit und Leistung ist ein zentraler Bestandteil jeder API-Strategie. Eine API-Testumgebung ist oft mit anderen Tools innerhalb der Entwickler-Toolchain verknüpft und unterstützt mehrere Testtypen: Funktionstests zur Validierung der API-Funktionen, der Sicherheit und der Fehlerbehandlung; Leistungstests, um festzustellen, wie die API mit Arbeitslasten unter Stress und variablen Verkehrsbedingungen umgeht; und Akzeptanztests, um zu prüfen, ob der Benutzer die API für den vorgesehenen Zweck einsetzen und nutzen kann.
API-Gateway. Das API-Gateway ist der zentrale Punkt für den API-Nachrichtenaustausch. Es nimmt API-Aufrufe entgegen, leitet sie an die entsprechende API weiter, empfängt die Antwort und leitet sie an die aufrufende Software weiter. Mit einem API-Gateway kann ein Unternehmen ein breites Spektrum von APIs und Integrationen zentral einsehen und steuern, anstatt zu versuchen, APIs innerhalb der Umgebung einzeln zu verfolgen und zu managen. API-Gateways umfassen in der Regel Überwachungs- und Protokollierungsfunktionen zur Aufzeichnung und Analyse von Aufrufen und Antworten, um die Sicherheit zu gewährleisten und Fehler zu bewerten.
Eine Alternative zum API-Gateway ist ein API-Proxy, bei dem es sich im Grunde um eine Teilmenge oder eine spezialisierte Version eines API-Gateways handelt, die nur eine minimale Verarbeitung von API-Aufrufen bietet. Der API-Proxy wickelt die Kommunikation, einschließlich der Protokollübersetzung, zwischen bestimmten Softwareplattformen ab, zum Beispiel zwischen einem Proxy-Endpunkt und einer Ziel-API. Er kann auch den Verkehrsfluss zwischen Sende- und Empfangspunkten steuern.
API-Dokumentation. API-Management-Tools nutzen zunehmend Dokumentations-Engines, um gängige Aufgaben zu automatisieren, zum Beispiel Referenzdaten, die sich auf API-Aufrufe und Syntax konzentrieren, Beispiele, die zeigen, wie API-Aufrufe verwendet werden, und Tutorials, die umfassendere Beispiele im Kontext bieten. Dies gewährleistet Genauigkeit, Aktualität und Konsistenz, insbesondere in Unternehmen, in denen mehrere Entwickler an APIs arbeiten.
Heute gibt es zahlreiche API-Managementplattformen, darunter Apigee (im Besitz von Google), Akana, Azure API Management, MuleSoft Anypoint Platform, Postman, Tibco Cloud Mashery, Workato und andere. Public-Cloud-Anbieter bieten API-Tools zur Verbindung von Diensten und Daten auf ihren jeweiligen Plattformen an, wie Amazon API Gateway, Google Cloud Endpoints und Microsoft Azure API Management. Unternehmen können auch bestimmte eigenständige API- Managementkomponenten wie API-Gateway-Tools erwerben und verwenden. Beispiele hierfür sind Oracle API Gateway, Kong Gateway, Tyk API Gateway und Express Gateway. Zu den Cloud-Plattform-spezifischen Optionen gehören Amazon API Gateway und Azure API Gateway.
Wie man eine API-Managementstrategie aufbaut
Erfolgreiches API-Management ist kein Zufall. Ein Unternehmen, das erfolgreich an dem sich entwickelnden digitalen Ökosystem teilnimmt, benötigt eine erfolgreiche API-Strategie, die in der Regel fünf Phasen umfasst:
- Setzen Sie Ziele. Beginnen Sie mit einem Geschäftsziel, zum Beispiel der Schaffung einer neuen Einnahmequelle für die unternehmenseigenen Daten und Dienste oder der Rationalisierung eines Geschäftsprozesses durch die Automatisierung des Datenaustauschs, der derzeit mit manuellen Verfahren erfolgt. An diesen Zielen orientieren sich die technischen Entscheidungen über die Erstellung und Bereitstellung von APIs, zum Beispiel welche API-Designattribute am besten geeignet sind, um die erforderlichen Daten mit internen oder externen Benutzern gemeinsam zu nutzen.
- Berücksichtigen Sie die Infrastruktur. APIs arbeiten innerhalb der Grenzen der IT- und Geschäftsinfrastruktur. Daher sollten Sie sich darüber im Klaren sein, welche Ressourcen und Leistung die APIs benötigen. Berücksichtigen Sie zum Beispiel, welche Daten offengelegt werden, wo sie sich befinden, ob sie in separaten Finanz-, Personal- oder anderen Systemen sind, ob die Daten einzeln oder zusammengefasst sind und ob sie lokal, remote oder in einer Cloud gespeichert sind. Weitere Überlegungen zur Infrastruktur betreffen die Netzwerkanforderungen, die der API-Zugang mit sich bringt, sowie die Richtlinien, Sicherheits- und Regulierungsanforderungen, die ein Unternehmen erfüllen muss.
- Fangen Sie klein an. Beginnen Sie mit kleinen und internen API-Projekten, um die Investitionen und Risiken zu senken, schnelle Erfolge zu erzielen und wertvolle API-Erfahrungen zu sammeln, vom Design bis zu den Managementprozessen und Plattformen. Experimentieren Sie und verfeinern Sie die Komponenten der API-Entwicklung, wie zum Beispiel Design, Sicherheit, Test- und Dokumentationsverfahren. Arbeiten Sie mit API-Metriken und -Analysen, um Erfahrungen mit der API-Überwachung zu sammeln. Wenn die APIs die anfänglichen Anforderungen erfüllen, führen Sie eine Evaluierungs- (oder Beta-) Version für ein breiteres Publikum ein und nutzen Sie deren Feedback, um das API-Design und den Funktionsumfang zu verfeinern – und geben Sie die API schließlich für Live-Benutzer für die echte Produktionsarbeit frei.
- Managen und wiederholen. Jede API-Freigabe erfordert Management, Überwachung und Analyse. In dieser umfassenden Phase können Unternehmen die API-Akzeptanz verfolgen, Helpdesk-Tickets bearbeiten, Leistungstrends messen, potenzielle Sicherheitsbedrohungen erkennen und sicherstellen, dass jede API wie vorgesehen funktioniert. Analysen helfen dem Unternehmen, Pläne für die API-Einführung zu erstellen, die weitere API-Entwicklung auf wünschenswerte neue Funktionen und Möglichkeiten auszurichten und die Infrastruktur im Laufe der Zeit nach Bedarf zu skalieren. Die Ergebnisse von Managementdaten und Analysen fließen auch in die Festlegung neuer Ziele und Pläne ein.
- Ausbauen. Auf der Grundlage der ersten Erfolge und der gewonnenen Erkenntnisse kann ein Unternehmen seine API-Strategie durch breitere Veröffentlichungen, verbesserte API-Versionen mit zusätzlichen Funktionen und Möglichkeiten und eine Roadmap mit zusätzlichen neuen APIs erweitern, die die Gesamtziele des Unternehmens unterstützen und vorantreiben.