Mein IBM Anmelden Abonnieren
Was ist ein API-Endpunkt?

Was ist ein API-Endpunkt?

Entdecken Sie die Lösung für API-Endpunkte von IBM Think-Newsletter abonnieren
Illustration mit Collage aus Piktogrammen von Ausrüstung, Roboterarm, Mobiltelefon

Veröffentlicht: 05. August 2024
Mitwirkende: Dan Nosowitz, Michael Goodwin

Was ist ein API-Endpunkt?

Was ist ein API-Endpunkt?

Ein API-Endpunkt ist ein digitaler Ort, an dem eine Programmierschnittstelle (API) API-Aufrufe, auch bekannt als API-Anfragen, für Ressourcen auf ihrem Server empfängt. API-Endpunkte sind Komponenten von APIs und liegen meist in Form von URLs oder Unified Resource Locators vor.

Eine API ist ein Vermittler, der es Softwareanwendungen ermöglicht, miteinander zu kommunizieren, um Daten, Features und Funktionen auszutauschen. Es handelt sich um eine Reihe von Protokollen und Regeln, die festlegen, wie ein API-Client – die Software, die eine Anfrage stellt – mit einem Server kommunizieren kann, um auf Daten und Funktionen zuzugreifen. Durch die Verwendung einer API können Entwickler bereits vorhandene Daten und Services nutzen; und Anwendungseigentümer können dieselben Daten und Dienste gemeinsam nutzen oder vermarkten.  

Endpunkte funktionieren ein wenig wie Telefonnummern: So wie ein Benutzer eine Telefonnummer wählt, um eine bestimmte Person oder ein bestimmtes Unternehmen zu erreichen, stellen API-Clients (die Software, die einen API-Aufruf durchführt) eine Endpunkt-URL bereit, um eine bestimmte Ressource zu erreichen. Eine Endpunkt-URL gibt den Standort einer Ressource auf einem API-Server an und hilft dabei, den API-Client mit der angeforderten Ressource zu verbinden. Es teilt dem Server im Wesentlichen mit, dass „die Ressource, die ich benötige, sich hier befindet“.

API-Endpunkte können es einem API-Client ermöglichen, alle Arten von Daten von einer API anzufordern. Die Anwendungsfälle reichen von Echtzeit-Updates aus Social-Media-Softwareanwendungen bis hin zu Funktionen wie Audio- oder Videoeinbettung, Abrufen von Nachrichten oder Erstellen eines neuen Beitrags.  

IBM wurde im Forrester Wave-Bericht im dritten Quartal 2024 für API-Management-Software als einer der führenden Anbieter ausgezeichnet.

Forrester sagt dazu: „IBM passt gut zu einer geschäftsorientierten API-Strategie mit einem ansprechenden Entwicklerportal und digitalen Produkten, die über REST hinausgehen.“

Ähnliche Inhalte Der Schlüssel zum vollen Potenzial Ihrer APIs: API-Management
Warum sind API-Endpunkte wichtig?

Warum sind API-Endpunkte wichtig?

Richtig formatierte und sichere API-Endpunkte sind ein wichtiger Bestandteil der Funktionsweise von APIs. APIs vereinfachen das Design und die Entwicklung neuer Anwendungen und Dienste (weil sie es Entwicklern ermöglichen, auf bestehenden Funktionen und Diensten aufzubauen) sowie die Integration und Verwaltung vorhandener Anwendungen und Dienste. Sie bieten auch erhebliche Vorteile für Entwickler und Unternehmen im Allgemeinen, darunter eine verbesserte Zusammenarbeit, beschleunigte Innovation, mehr Flexibilität, Skalierbarkeit, Sicherheit und vieles mehr. API-Endpunkte ermöglichen den Ressourcenaustausch, der eine solche Integration möglich macht.

Damit APIs so funktionieren, wie sie sollten, müssen API-Endpunkte präzise, intuitiv, auffindbar und authentifiziert sein. Andernfalls kann die Kommunikation zwischen Client und Server ausfallen, was die Funktionalität und die Benutzerzufriedenheit einschränkt. Einfach ausgedrückt: API-Endpunkte ermöglichen es API-Clients, angeforderte Ressourcen und Funktionen erfolgreich zu finden und darauf zuzugreifen.

Wie funktionieren API-Endpunkte? 

Wie funktionieren API-Endpunkte? 

API-Endpunkte finden sich normalerweise in der Dokumentation einer API, in der Entwickler API-Informationen angeben, z. B. welche Art von Anfragen eine API akzeptiert und wie Anfragen formatiert werden sollten. Idealerweise enthält diese Dokumentation auch eine Liste aller verfügbaren API-Endpunkte und eine kurze Beschreibung ihrer Funktionen.

In einem REST-API-Kontext (ein Softwarearchitekturstil, der häufig für Webanwendungen verwendet wird) sieht der Prozess so aus:

Der Prozess startet, wenn ein API-Client eine Ressourcenanforderung (API-Aufruf) an den entsprechenden API-Endpunkt sendet. Der Zugriff auf Endpunkte erfolgt mithilfe von HTTP-Anforderungsmethoden wie POST, GET, PUT, PATCH und DELETE. Diese Methoden geben die Aktion an, die der Kunde für die angegebene Ressource ausführen möchte.

Wenn ein Kunde beispielsweise eine Liste der olympischen Medaillen für ein bestimmtes Jahr aus der hypothetischen Datenbank Olympicfacts.com abrufen möchte, wird eine GET-Anforderung an die folgende Endpunkt-URL gesendet: 

https://api.olympicfacts.com/v1/{year}

Diese Anfrage würde eine Liste aller olympischen Medaillen nach Land wiedergeben. (v1 in unserem hypothetischen Endpunkt gibt die Version der API an, eine gängige Praxis bei der API-Versionierung.) Wenn der Kunde die Gesamtsumme für ein bestimmtes Land in einem bestimmten Jahr wissen möchte, wird der Basis-URL eine Kennung hinzugefügt: 

https://api.olympicfacts.com/v1/year/{id}

In diesem Beispiel wird die Kennung {id} verwendet, um anzugeben, über welches Land der Kunde Informationen erhalten möchte.

Darüber hinaus kann eine Anfrage Folgendes enthalten:

  • Kopfzeilen: Kopfzeilen können zusätzliche Informationen zur Anforderung enthalten, z. B. eine Kopfzeile „Accept“, die akzeptierte Medientypen angibt

  • Parameter: Abfrageparameter können der Basis-URL oder dem Anforderungstext hinzugefügt werden, um Suchkriterien weiter zu filtern oder andere Spezifikationen hinzuzufügen.

  • Anforderungstext: Ein Anforderungstext enthält die Daten, die zum Erstellen oder Ändern einer Ressource erforderlich sind. Wenn die Anfrage zum Beispiel darin besteht, einen neuen Blog zu erstellen (POST-Anfrage), wird der Inhalt des neuen Blogs in den Anfragetext aufgenommen.

Sobald der Server die Anfrage authentifiziert und die Eingabe validiert hat, ruft er die angeforderten Daten ab und gibt die Antwort an den Client zurück. Viele Unternehmen verwenden API Gateways, um diese Funktionen auszuführen und den Fluss des API-Datenverkehrs zu verwalten.

Was ist der Unterschied zwischen REST-API- und GraphQL-Endpunkten?

Was ist der Unterschied zwischen REST-API- und GraphQL-Endpunkten?

Eine REST-API (auch RESTful-API oder RESTful-Web-API genannt) ist eine API, die den Designprinzipien des Architekturstils „ Representational State Transfer “ (REST) entspricht.GraphQL ist eine Open-Source-Abfragesprache und serverseitige Laufzeit, die festlegt, wie Clients mit APIs interagieren sollen.2

GraphQL und REST sind beide ressourcenbasierte Technologien, die ähnliche Datenformate unterstützen (JSON und XML, zum Beispiel) und es Kunden ermöglichen, Daten von Servern mithilfe von HTTP-Methoden anzufordern. Sie unterscheiden sich jedoch unter anderem in ihren Abfrageanforderungen und dem Datenabruf. Wir konzentrieren uns auf einen wichtigen endpunktbezogenen Unterschied.

REST-APIs verwenden mehrere Endpunkte und haben für jede Ressource unterschiedliche Endpunkte. Wenn ein Client eine Ressource anfordert, gibt der Server alle Daten zurück, die der Ressource zugeordnet sind, auch wenn der Client nur eine kleine Teilmenge der Daten benötigt. Dies wird als Overfetching bezeichnet. Wenn ein Client Daten benötigt, die auf mehrere Ressourcen verteilt sind, muss er separate API-Aufrufe an jede dieser Ressourcen durchführen, um die benötigten Daten zu kompilieren.

GraphQL stellt Datenmodelle über einen einzigen Endpunkt bereit und verwendet eine Syntax, die es Clients ermöglicht, API-Anfragen in einer oder wenigen Zeilen zu stellen, um genau anzugeben, was sie benötigen. GraphQL-Abfragen können Referenzen zwischen Ressourcen folgen und komplexe Datenabrufaufgaben in einer einzigen Anfrage ausführen. Dies trägt dazu bei, Probleme mit zu wenig und zu viel Abrufen zu vermeiden und mehrere API-Aufrufe durchzuführen.

Weder REST- noch GraphQL-APIs sind von Natur aus überlegen; es sind unterschiedliche Tools, die für unterschiedliche Aufgaben geeignet sind.3

Wie werden API-Tests durchgeführt? 

Wie werden API-Tests durchgeführt? 

Der Schlüssel zu jedem guten API-Design ist die Testphase. Moderne Anwendungen nutzen oft APIs, um Funktionen von anderer Software zu integrieren, oder werden mithilfe von Microservices-Architekturen erstellt (die auf APIs für die Kommunikation zwischen verteilten Services angewiesen sind). Das Testen von API-Endpunkten ist für die Gewährleistung der Zuverlässigkeit unerlässlich.

Es gibt sowohl manuelle Testoptionen für APIs als auch Testoptionen, die eine Automatisierung verwenden, sowie zahlreiche Testtools und Plattformen (sowohl Open Source als auch proprietäre), die Unternehmen verwenden können.

Manuelle API-Endpunkttests können langsamer und weniger effizient sein, sind aber auch präziser und auf spezifische Anwendungsfälle zugeschnitten. Bei funktionalen Tests wird einfach eine Anfrage aus einer Anwendung gesendet, um sicherzustellen, dass die richtige Antwort gegeben wird. In einem Beispiel für soziale Medien könnte dies bedeuten, dass Sie eine Anfrage nach einem neuen Beitrag eines bestimmten Benutzers senden und überprüfen, ob der zurückgegebene Beitrag tatsächlich der richtige ist.

Andere Arten von manuellen Tests umfassen: 

  • Senden vieler Anfragen auf einmal, um zu sehen, wie der Server das Laden von Anfragen verarbeitet

  • Überprüfen, ob die API ordnungsgemäß mit anderen Services integriert ist

  • Bestimmen der Geschwindigkeit und der Antwortzeit einer bestimmten Anfrage

  • Absichtliches Stellen einer ungültigen Anfrage, um zu überprüfen, ob die richtige Fehlermeldung zurückgegeben wird

Automatisierte Tests, die über eine API Management- Plattform durchgeführt werden, können mehrere Vorteile bieten:

  • Reduziert die Möglichkeit menschlicher Fehler

  • Ist effizienter bei der Überprüfung der Gültigkeit mehrerer API-Endpunkte

  • Kann die Testgeschwindigkeit verbessern und auf lange Sicht potenziell die Kosten senken, sobald automatisierte Testsysteme eingerichtet sind (z. B. Zeitersparnis für die Mitarbeiter)

  • Richtet Tests nach einheitlichen Protokollen, Standards und Berechtigungen aus

Im Allgemeinen sollte immer die gewünschte Antwort zurückgegeben werden, was das Format, die zurückgegebenen Daten und den Statuscode betrifft.

So sichern Sie API-Endpunkte

So sichern Sie API-Endpunkte

Da API-Endpunkte sowohl internen als auch externen Anwendungen und Systemen die Möglichkeit bieten, auf Daten zuzugreifen und diese zu integrieren, stellen sie auch einen potenziellen Einstiegspunkt für böswillige Akteure dar. Distributed Denial of Service (DDoS)-Angriffe können legitime Anfragen in absurden Mengen verwenden, um einen Server zu überfluten. Andere Arten von Angriffen könnten versuchen, mithilfe von API-Endpunkten mehr Informationen zu extrahieren, als der Client empfangen darf, oder API-Endpunkte zu nutzen, um Malware oder bösartigen Code zu installieren.

Es gibt mehrere Möglichkeiten, wie ein Unternehmen die Sicherheit seiner API-Endpunkte und die gesamte API-Sicherheit gewährleisten kann, darunter:

 

Authentifizierungsmechanismen

Authentifizierungsmethoden wie API-Schlüsselauthentifizierung und OAuth stellen sicher, dass nur autorisierte Benutzer auf Daten zugreifen können.

HTTPS

HTTPS (eine sicherere Version des Hypertext Transfer Protocol oder HTTP) verwendet Transport Layer Security (TLS), um die Kommunikation zwischen Client und Server zu verschlüsseln. Dies erhöht die Sicherheit der Datenübertragungen.

 

Ratenbegrenzung

Ratenbegrenzung ist ein allgemeiner Begriff, der sich auf Bemühungen bezieht, eine maximale Anzahl von Anfragen festzulegen, was dazu beitragen kann, DDoS-Angriffe zu verhindern und die Systemstabilität aufrechtzuerhalten. Verschiedene Grenzwerte können auch auf verschiedene API-Endpunkte angewendet werden.

Geofilterung

Wenn Angriffe von einem bestimmten Standort aus generiert werden, kann Geofilterung verwendet werden, um den Zugriff von diesen Standorten aus zu blockieren oder einzuschränken.

API-Gateways

Ein API-Gateway ist eine Software-Ebene, die als Vermittler zwischen Client-Geräten und Servern fungiert. Es ist ein zentraler Punkt, der alle API-Aufrufe entgegennimmt und sie an die gewünschten Dienste weiterleitet. Viele dieser Sicherheitsfunktionen (zusätzlich zu den Funktionen API Monitoring und Analyse) können in einem API-Gateway implementiert werden, und die Verwendung eines Gateways fördert die konstante Anwendung von Sicherheitsprotokollen in einer API-Umgebung.

Was ist der Unterschied zwischen einer Ressource und einem API-Endpunkt?

Was ist der Unterschied zwischen einer Ressource und einem API-Endpunkt?

API-Ressourcen sind Datensätze oder Objekte, die APIs bereitstellen. Die Ressourcen variieren je nach der jeweiligen API, aber zu den Inhaltstypen gehören Text, Tabellen, Quelldateien, Audio, Video, Bilder, Benutzer, Produkte und vieles mehr.

Ein API-Endpunkt ist der spezifische Standort dieser Ressourcen auf einem Server. Es ist ein Kontaktpunkt zwischen einem API-Client und einem Server, an den API-Aufrufe geleitet werden.

Stellen Sie sich einen Brancheneintrag für ein Geschäft vor. Die Auflistung enthält den Standort des Geschäfts (Endpunkt) und wie Sie es kontaktieren können, um Informationen wie Öffnungszeiten und Produktbestand (Ressourcen) zu erhalten.

Was ist der Unterschied zwischen einem API-Schlüssel und einem API-Endpunkt?

Was ist der Unterschied zwischen einem API-Schlüssel und einem API-Endpunkt?

Ein API-Schlüssel ist eine Methode zum Überprüfen und Authentifizieren der Identität und Authentizität eines Clients, der einen API-Aufruf tätigt. API-Schlüssel sind Zeichenfolgen aus zufällig generierten Zeichen, die von einem API-Anbieter an registrierte API-Benutzer ausgegeben werden. Wenn ein Client-Gerät einen API-Aufruf tätigt, schließt es den API-Schlüssel ein. Das API-Gateway oder der API-Server, der den Anruf empfängt, überprüft zuerst den Schlüssel, um die Identität des Clients zu bestätigen, bevor die API-Anforderung erfüllt wird. Wenn der Schlüssel mit keinem der zulässigen Schlüssel übereinstimmt, lehnt der Server den API-Aufruf ab und gibt eine Ablehnungsnachricht aus.

Unternehmen verwenden API-Schlüssel, um einzelne Kunden und Projekte zu authentifizieren, Verkehrsmuster zu verfolgen und zu identifizieren, unerwünschte Nutzung zu blockieren und vieles mehr.

API-Endpunkte fungieren, wie bereits erwähnt, als Schnittstelle zwischen Clients und Servern, an die API-Clients Anforderungen für bestimmte Daten oder Funktionen von einer API weiterleiten. API-Schlüssel können verwendet werden, um die Sicherheit der gesamten API-Umgebung eines Unternehmens und ihrer API-Integrationen zu verbessern.

Weiterführende Lösungen

Weiterführende Lösungen

IBM API Connect

IBM API Connect ist eine Lösung für das Management des gesamten Lebenszyklus Ihrer API, die über eine intuitive Benutzeroberfläche die konsistente Erstellung, Verwaltung, Sicherung, Verbreitung und Monetarisierung von APIs ermöglicht und so die digitale Transformation lokal und in der Cloud unterstützt.

IBM API Connect entdecken IBM API Connect kostenlos testen

API-Gateway-Tools von IBM API Connect

Das API-Gateway, das auf IBM DataPower basiert, ist ein Gateway für Unternehmen, mit dem Sie Daten und Geschäftsanwendungen sicher bereitstellen können, unabhängig davon, ob sie sich vor Ort oder in der Cloud befinden. Es bietet eine umfassende Sammlung von Richtlinien für Sicherheit, Datenverkehrsmanagement, Vermittlung, Beschleunigung und Unterstützung von Nicht-HTTP-Protokollen.

Entdecken Sie die API Gateway-Tools von IBM API Connect Buchen Sie eine Live-Demo

IBM Cloud Pak for Integration

IBM Cloud Pak for Integration ist eine hybride Integrationsplattform, die mithilfe von Closed-Loop-KI-Automatisierung verschiedene Arten der Integration ermöglicht. Die Plattform bietet eine umfassende Palette von Integrationstools in einer einzigen, einheitlichen Umgebung, um Anwendungen und Daten in jeder Cloud- oder On-Premises-Umgebung zu verbinden.

IBM Cloud Pak for Integration erkunden
IBM iPaaS-Lösungen

IBM iPaaS-Lösungen bieten einen intuitiven, modularen Ansatz für die nahtlose Integration und Verbindung aller Ihrer Anwendungen und Daten, unabhängig davon, wo sie sich befinden.

Erkunden Sie IBM iPaaS Lösungen
Ressourcen

Ressourcen

Der Schlüssel zum vollen Potenzial Ihrer APIs: API-Management

Gewinnen Sie Erkenntnisse über die wichtigsten Herausforderungen, die den Bedarf an API-Management vorantreiben, und verstehen Sie die zentralen Funktionalitäten einer effektiven API-Managementlösung.

IBM wird im Forrester Wave-Bericht für API-Management-Software im Jahr 2024 als einer der führenden Anbieter eingestuft.

IBM API Connect erhielt in 17 der 24 Kriterien die höchstmögliche Punktzahl.

SDK vs. API: Was ist der Unterschied?

Erfahren Sie mehr über Software Development Kits (SDKs) und APIs und wie sie sowohl die Softwareentwicklungszyklen als auch die Endbenutzererfahrung (UX) verbessern.

Was ist iPaaS?

Integration Platform as a Service (iPaaS) ist eine Suite aus Self-Service-Tools und -Lösungen auf Cloudbasis, die zur Integration von Daten aus mehreren Anwendungen verwendet werden, die in unterschiedlichen IT-Umgebungen gehostet werden.

Was ist Middleware?

Middleware ist Software, die eine oder mehrere Arten der Kommunikation oder Konnektivität zwischen Anwendungen oder Komponenten in einem verteilten Netzwerk ermöglicht.

Was ist eine REST-API?

Eine REST-API (auch RESTful-API oder RESTful-Web-API genannt) ist eine API, die den Designprinzipien des Architekturstils „Representational State Transfer“ (REST) entspricht.

Machen Sie den nächsten Schritt

Verwenden Sie IBM API Connect, um Unternehmens-APIs über ihre gesamten Lebenszyklen hinweg zu sichern und zu verwalten. Es hilft Ihnen und Ihren Kunden, Unternehmens-APIs konsistent zu erstellen, zu verwalten, zu sichern, zu sozialisieren und zu monetarisieren, und ist ebenfalls als hoch skalierbare API Management-Plattform auf IBM Marketplace und AWS verfügbar.

API Connect entdecken Buchen Sie eine Live-Demo
Fußnoten

1 Was ist eine REST-API?“, IBM.com

2 Was ist GraphQL?“, Chrystal China, Michael Goodwin, 8. Dezember 2023

3 GraphQL vs. REST API: Was ist der Unterschied?“, Chrystal China, 29. März 2024