Was ist eine API?

APIs sind Mechanismen, die es zwei Software-Komponenten ermöglichen, über eine Reihe von Definitionen und Protokollen miteinander zu kommunizieren. Beispielsweise enthält das Software-System des Wetteramtes tägliche Wetterdaten. Die Wetter-App auf Ihrem Telefon „spricht“ über APIs mit diesem System und zeigt Ihnen tägliche Wetteraktualisierungen auf Ihrem Telefon an.

Wofür steht die Abkürzung API?

Die Abkürzung API steht für Application Programming Interface. Im Zusammenhang mit APIs bezieht sich das Wort Anwendung auf jede Software mit einer bestimmten Funktion. Das Interface bzw. die Schnittstelle kann als ein Servicevertrag zwischen zwei Anwendungen betrachtet werden. Dieser Vertrag definiert, wie die beiden über Anfragen und Antworten miteinander kommunizieren. Ihre API-Dokumentation enthält Informationen darüber, wie Entwickler diese Anfragen und Antworten strukturieren sollen.

Wie funktionieren APIs?

Die API-Architektur wird normalerweise in Bezug auf Client und Server erklärt. Die Anwendung, die die Anfrage sendet, wird als Client bezeichnet und die Anwendung, die die Antwort sendet, wird als Server bezeichnet. Im Beispiel mit dem Wetter ist also die Wetterdatenbank des Büros der Server und die mobile App der Client. 

Es gibt vier verschiedene Möglichkeiten, wie APIs funktionieren können, je nachdem, wann und warum sie erstellt wurden.

SOAP-APIs 

Diese APIs verwenden das Simple Object Access Protocol (SOAP, Einfaches Objektzugriffsprotokoll). Client und Server tauschen Nachrichten über XML aus. Dies ist eine weniger flexible API, die früher bekannter war.

RPC-APIs

Diese APIs werden Remote Procedure Calls (Remote-Verfahrensaufrufe) genannt. Der Client führt eine Funktion (oder ein Verfahren) auf dem Server aus, und der Server sendet die Ausgabe an den Client zurück.

WebSocket-APIs

Die WebSocket-API ist eine weitere moderne Web-API-Entwicklung, die JSON-Objekte zum Übergeben von Daten verwendet. Eine WebSocket-API unterstützt die bidirektionale Kommunikation zwischen Client-Apps und dem Server. Der Server kann Rückrufnachrichten an verbundene Clients senden und ist damit effizienter als die REST-API.

REST-APIs

Dies sind die beliebtesten und flexibelsten APIs, die heute im Internet zu finden sind. Der Client sendet Anforderungen als Daten an den Server. Der Server verwendet diese Client-Eingabe, um interne Funktionen auszuführen und gibt Ausgabedaten an den Client zurück. Sehen wir uns die REST-APIs unten genauer an.

Was sind REST-APIs?

REST steht für Representational State Transfer (repräsentative Zustandsübertragung). REST definiert eine Reihe von Funktionen wie GET, PUT, DELETE usw., mit denen Clients auf Serverdaten zugreifen können. Clients und Server tauschen Daten über HTTP aus.

Das Hauptmerkmal der REST-API ist die Zustandslosigkeit. Zustandslosigkeit bedeutet, dass Server keine Clientdaten zwischen Anfragen speichern. Client-Anfragen an den Server ähneln URLs, die Sie in Ihren Browser eingeben, um eine Website zu besuchen. Die Antwort vom Server sind einfache Daten ohne die typische grafische Darstellung einer Webseite.

Was ist eine Web-API?

Eine Web-API oder Webservice-API ist eine Anwendungs-Verarbeitungsschnittstelle zwischen einem Webserver und einem Webbrowser. Alle Webservices sind APIs, aber nicht alle APIs sind Webservices. Die REST-API ist eine spezielle Art von Web-API, die den oben erläuterten Standard-Architekturstil verwendet.

Die verschiedenen Begriffe rund um APIs, wie Java-API oder Service-APIs, existieren, weil APIs historisch gesehen vor dem World Wide Web erstellt wurden. Moderne Web-APIs sind REST-APIs und diese Begriffe können austauschbar verwendet werden.

Was sind API-Integrationen?

API-Integrationen sind Software-Komponenten, die Daten zwischen Clients und Servern automatisch aktualisieren. Einige Beispiele für API-Integrationen sind die automatische Datensynchronisierung mit der Cloud von Ihrer Telefon-Image-Galerie oder die automatische Synchronisierung von Uhrzeit und Datum auf Ihrem Laptop, wenn Sie in eine andere Zeitzone reisen. Unternehmen können sie auch nutzen, um viele Systemfunktionen effizient zu automatisieren.

Welche Vorteile bieten REST-APIs?

REST-APIs bieten vier Hauptvorteile:

1. Integration 

APIs werden verwendet, um neue Anwendungen in bestehende Software-Systeme zu integrieren. Dies erhöht die Entwicklungsgeschwindigkeit, da nicht jede Funktionalität von Grund auf neu geschrieben werden muss. Sie können APIs verwenden, um vorhandenen Code zu nutzen.

2. Innovation 

Ganze Branchen können sich mit der Einführung einer neuen App verändern. Unternehmen müssen schnell reagieren und die schnelle Bereitstellung innovativer Services unterstützen. Sie können dies tun, indem sie Änderungen auf API-Ebene vornehmen, ohne den gesamten Code neu schreiben zu müssen.

3. Erweiterung

APIs stellen eine einzigartige Möglichkeit für Unternehmen dar, die Bedürfnisse ihrer Kunden über verschiedene Plattformen hinweg zu erfüllen. Beispielsweise ermöglicht die Maps-API die Integration von Karteninformationen über Websites, Android, iOS usw. Jedes Unternehmen kann über kostenlose oder kostenpflichtige APIs ähnlichen Zugriff auf seine internen Datenbanken gewähren.

4. Einfache Wartung

Die API fungiert als Gateway zwischen zwei Systemen. Jedes System ist verpflichtet, interne Änderungen vorzunehmen, damit die API nicht beeinträchtigt wird. Auf diese Weise wirken sich zukünftige Code-Änderungen einer Partei nicht auf die andere Partei aus.

Was sind die verschiedenen Arten von APIs?

APIs werden sowohl nach ihrer Architektur als auch nach ihrem Nutzungsumfang klassifiziert. Wir haben bereits die Haupttypen von API-Architekturen bearbeitet, deshalb werfen wir einen Blick auf den Anwendungsbereich.

Private APIs

Diese sind unternehmensintern und werden nur zum Verbinden von Systemen und Daten innerhalb des Unternehmens verwendet.

Öffentliche APIs 

Diese sind öffentlich zugänglich und können von jedermann genutzt werden. Mit diesen Arten von APIs sind möglicherweise Autorisierungen und Kosten verbunden.

Partner-APIs 

Diese sind nur für autorisierte externe Entwickler zugänglich, um Business-to-Business-Partnerschaften zu unterstützen.

Zusammengesetzte APIs 

Diese kombinieren zwei oder mehr verschiedene APIs, um komplexe Systemanforderungen oder Verhaltensweisen zu erfüllen. 

Was ist ein API-Endpunkt und warum ist er wichtig?

API-Endpunkte sind die letzten Berührungspunkte im API-Kommunikationssystem. Dazu gehören Server-URLs, Services und andere spezifische digitale Orte, von denen aus Informationen zwischen Systemen gesendet und empfangen werden. API-Endpunkte sind aus zwei Hauptgründen für Unternehmen von entscheidender Bedeutung: 

1. Sicherheit

API-Endpunkte machen das System anfällig für Angriffe. Die API-Überwachung ist entscheidend, um Missbrauch zu verhindern.

2. Leistung

API-Endpunkte, insbesondere solche mit hohem Datenverkehr, können Engpässe verursachen und die Systemleistung beeinträchtigen.

Wie sichert man eine REST-API?

Alle APIs müssen durch ordnungsgemäße Authentifizierung und Überwachung gesichert werden. Die zwei Hauptmethoden zum Sichern von REST-APIs sind:

1. Authentifizierungstoken 

Diese werden verwendet, um Benutzer zu autorisieren, den API-Aufruf zu tätigen. Mit Authentifizierungstoken wird überprüft, ob die Benutzer die sind, für die sie sich ausgeben und ob sie Zugriffsrechte für diesen bestimmten API-Aufruf haben. Wenn Sie sich beispielsweise bei Ihrem E-Mail-Server anmelden, verwendet Ihr E-Mail-Client Authentifizierungstoken für sicheren Zugriff.

2. API-Schlüssel 

API-Schlüssel verifizieren das Programm oder die Anwendung, die den API-Aufruf durchführt. Sie identifizieren die Anwendung und stellen sicher, dass sie über die Zugriffsrechte verfügt, die für den jeweiligen API-Aufruf erforderlich sind. API-Schlüssel sind weniger sicher als Token, aber durch sie wird die API-Überwachung ermöglicht, wodurch Daten über die Nutzung gesammelt werden. Möglicherweise ist Ihnen beim Besuch verschiedener Websites eine lange Folge von Zeichen und Zahlen in Ihrer Browser-URL aufgefallen. Diese Zeichenfolge ist ein API-Schlüssel, den die Website verwendet, um interne API-Aufrufe durchzuführen.

Wie erstellt man eine API?

Sorgfaltspflicht und Mühe sind erforderlich, um eine API zu erstellen, mit der andere Entwickler arbeiten und denen sie vertrauen möchten. Dies sind die fünf Schritte, die für ein qualitativ hochwertiges API-Design erforderlich sind:

1. Planen der API 

API-Spezifikationen wie OpenAPI liefern die Vorlage für Ihr API-Design. Es ist besser, im Voraus über verschiedene Anwendungsfälle nachzudenken und sicherzustellen, dass die API den aktuellen API-Entwicklungsstandards entspricht.

2. Entwickeln der API

 API-Designer erstellen API-Prototypen mithilfe von Boilerplate-Code. Sobald der Prototyp getestet ist, können Entwickler ihn an interne Spezifikationen anpassen.

3. Testen der API  

API-Tests sind dasselbe wie Softwaretests und müssen durchgeführt werden, um Fehler und Defekte zu vermeiden. API-Testtools können verwendet werden, um die API auf Stärke gegen Cyberangriffe zu testen.

4. Dokumentieren der API  

Während APIs selbsterklärend sind, dient die API-Dokumentation als Leitfaden zur Verbesserung der Benutzerfreundlichkeit. Gut dokumentierte APIs, die eine Reihe von Funktionen und Anwendungsfällen bieten, sind in einer serviceorientierten Architektur tendenziell beliebter.

5. Vermarkten der API 

So wie Amazon ein Online-Marktplatz für den Einzelhandel ist, gibt es API-Marktplätze, auf denen Entwickler andere APIs kaufen und verkaufen können. Durch das Auflisten Ihrer API können Sie sie monetarisieren.
So erstellen Sie eine öffentliche API mit AWS

Was ist API-Testen?

API-Teststrategien ähneln anderen Softwaretestmethoden. Der Hauptfokus liegt auf der Validierung von Serverantworten. API-Tests umfassen:

  • Mehrere Anfragen an API-Endpunkte für Leistungstests stellen.
  • Schreiben von Einheitstests zur Überprüfung der Geschäftslogik und funktionalen Korrektheit.
  • Sicherheitstests durch Simulation von Systemangriffen.

Wie schreibt man eine API-Dokumentation?

Das Schreiben einer umfassenden API-Dokumentation ist Teil des API-Verwaltungsprozesses. Die API-Dokumentation kann mithilfe von Tools automatisch generiert oder manuell geschrieben werden. Einige der bewährten Methoden umfassen:

  • Das Verfassen von Erklärungen in einfacher, leicht verständlicher Sprache. Von Tools generierte Dokumente können wortreich werden und müssen bearbeitet werden.
  • Die Verwendung von Code-Beispielen zur Erläuterung der Funktionalität.
  • Die Wartung der Dokumentation, sodass sie korrekt und aktuell ist.
  • Die Ausrichtung des Schreibstils an Einsteiger
  • Alle Probleme abzudecken, die die API für die Benutzer lösen kann.

Wie verwendet man eine API?

Die Schritte zum Implementieren einer neuen API umfassen:

  1. Erhalten eines API-Schlüssels. Dies erfolgt durch Erstellen eines verifizierten Kontos beim API-Anbieter.
  2. Die Einrichtung eines HTTP-API-Clients. Mit diesem Tool können Sie API-Anfragen einfach anhand der erhaltenen API-Schlüssel strukturieren.
  3. Wenn Sie keinen API-Client haben, können Sie versuchen, die Anfrage in Ihrem Browser selbst zu strukturieren, indem Sie auf die API-Dokumentation verweisen.
  4. Sobald Sie mit der neuen API-Syntax vertraut sind, können Sie damit beginnen, sie in Ihrem Code zu verwenden.

Wo finde ich neue APIs?

Neue Web-APIs finden Sie auf API-Marktplätzen und in API-Verzeichnissen. API-Marktplätze sind offene Plattformen, auf denen jeder eine API zum Verkauf anbieten kann. API-Verzeichnisse sind kontrollierte Repositorys, die vom Verzeichniseigentümer reguliert werden. Erfahrene API-Designer können eine neue API bewerten und testen, bevor sie sie ihrem Verzeichnis hinzufügen.  

Einige beliebte API-Websites sind:

  • RapidAPI – Der größte globale API-Markt mit über 10 000 öffentlichen APIs und 1 Million aktiven Entwicklern vor Ort. Mit RapidAPI können Benutzer APIs direkt auf der Plattform testen, bevor sie sich zum Kauf verpflichten.
  • Öffentliche APIs – Die Plattform gruppiert Remote-APIs in 40 Nischenkategorien, was das Durchsuchen und Finden der richtigen API für Ihre Anforderungen erleichtert.
  • APIForThat und APIList – Diese beiden Websites enthalten Listen mit über 500 Web-APIs sowie detaillierte Informationen zu ihrer Verwendung.                                                                                                 

Was ist ein API-Gateway?

Ein API-Gateway ist ein API-Verwaltungstool für Unternehmenskunden, die eine breite Palette von Backend-Services verwenden. API-Gateways übernehmen in der Regel allgemeine Aufgaben wie Benutzerauthentifizierung, Statistiken und Ratenverwaltung, die für alle API-Aufrufe gelten.

Amazon API Gateway ist ein vollständig verwalteter Service, der das Erstellen, Veröffentlichen, Warten, Überwachen und Sichern von APIs für Entwickler in jeder beliebigen Größenordnung vereinfacht. Es führt alle Aufgaben für das Akzeptieren und Verarbeiten von Tausenden gleichzeitigen API-Aufrufen aus, einschließlich Verwaltung des Datenverkehrs, CORS-Support, Autorisierung und Zugriffskontrolle, Drosselung, Überwachung und Verwaltung der API-Version.

Was ist GraphQL?

GraphQL ist eine Abfragesprache, die speziell für APIs entwickelt wurde. Es priorisiert, Kunden genau die Daten zu geben, die sie anfordern und nicht mehr. Es wurde entwickelt, um APIs schnell, flexibel und entwicklerfreundlich zu machen. GraphQL gibt, als Alternative zu REST, Frontend-Entwicklern die Möglichkeit, mehrere Datenbanken, Microservices und APIs mit einem einzigen GraphQL-Endpunkt abzufragen. Unternehmen entscheiden sich dafür, APIs mit GraphQL zu entwickeln, weil damit die Entwicklung von Anwendungen schneller geht. Lesen Sie hier mehr über GraphQL.

AWS AppSync ist ein vollständig verwalteter Service, der die Entwicklung von GraphQL-APIs erleichtert, indem er die schwere Arbeit einer sicheren Verbindung zu Datenquellen wie AWS DynamoDB, AWS Lambda und mehr übernimmt. AWS AppSync kann Datenaktualisierungen in Echtzeit über Websockets an Millionen von Clients senden. AppSync bietet für mobile und Webanwendungen lokalen Datenzugriff, wenn Geräte offline gehen. Nach Ihrer Bereitstellung skaliert AWS AppSync die GraphQL-API-Ausführungsmaschine automatisch hoch bzw. herunter, um das API-Anfragevolumen zu erfüllen.

Entwickeln moderner APIs mit GraphQL

Wie erhält man Amazon-API-Services?

Die Verwaltung von Programmierschnittstellen ist ein wichtiger Teil der modernen Software-Entwicklung. Es lohnt sich, in die API-Infrastruktur zu investieren, einschließlich Tools, Gateways und Microservices-Architekturen für interne und externe Benutzer.

Amazon API Gateway verfügt über eine vollständige Palette von Funktionen, um mehrere APIs gleichzeitig und effizient zu verwalten. Sie können kostenlos bis zu eine Million API-Aufrufe tätigen, indem Sie sich im AWS-Portal registrieren.

AWS AppSync bietet eine vollständig verwaltete GraphQL-API-Einrichtung, -Verwaltung und -Wartung mit eingebauter hochverfügbarer Serverless-Infrastruktur. Es gibt keine Mindestgebühren und keine obligatorische Nutzung von Services, Sie zahlen nur für das, was Sie nutzen. Melden Sie sich für die ersten Schritte in der AWS-AppSync-Konsole an.

Nächste Schritte zu AWS API

Zusätzliche produktbezogene Ressourcen ansehen
Kostenloses Kontingent für die Anwendungs-Integration anzeigen 
Registrieren Sie sich für das kostenloses Kontingent von API Gateway

Erhalten Sie kostenlose 1 Millionen REST-API-Aufrufe mit dem kostenlosen Kontingent von Amazon API Gateway.

Registrieren 
Beginnen Sie mit der Entwicklung in der Konsole

Beginnen Sie mit der Entwicklung mit dem API Gateway in der AWS-Managementkonsole.

Anmeldung