Ein API-Gateway ist eine zentrale Komponente, die Anfragen an mehrere dahinterliegende Programmierschnittstellen entgegennimmt, weiterleitet und dabei einheitlich Sicherheit, Überwachung und Lastkontrolle übernimmt.
Bietet eine Organisation viele einzelne APIs an, müsste sonst jede für sich Authentifizierung, Protokollierung und Zugriffsbegrenzung umsetzen. Ein API-Gateway bündelt diese Aufgaben an einer Stelle: Externe und interne Anfragen laufen zunächst durch das Gateway, das prüft, ob sie berechtigt sind, sie an die passende API weiterleitet und die Antwort zurückgibt – für aufrufende Systeme wirkt es dadurch wie ein einziger, konsistenter Zugangspunkt.
Trifft eine Anfrage am Gateway ein, prüft dieses zunächst Authentifizierung und Berechtigung, wendet Regeln zur Ratenbegrenzung an, um einzelne Systeme vor Überlastung zu schützen, und leitet die Anfrage anschließend an die zuständige Backend-API weiter. Dabei kann das Gateway Anfragen auch zusammenfassen, Protokollversionen übersetzen oder Antworten mehrerer APIs zu einer gemeinsamen Antwort kombinieren. Gleichzeitig protokolliert es Zugriffe zentral, was Monitoring und Fehleranalyse erheblich erleichtert.
Eine mobile App ruft für eine einzige Ansicht Daten aus drei verschiedenen Backend-Diensten ab – etwa Nutzerprofil, Bestellhistorie und Produktkatalog. Statt die App mit drei separaten Verbindungen und Authentifizierungen zu belasten, übernimmt ein API-Gateway die Weiterleitung an alle drei Dienste und liefert der App ein gebündeltes Ergebnis.
API-Gateways werden eingesetzt, um Zugriffsrechte und Authentifizierung zentral durchzusetzen, Systeme vor Überlastung durch Ratenbegrenzung zu schützen, unterschiedliche Backend-Dienste hinter einer einheitlichen Schnittstelle zu bündeln und Nutzung sowie Fehler zentral zu überwachen.
Ein API-Gateway ersetzt keine Sicherheitsmaßnahmen innerhalb der dahinterliegenden Systeme; es ist eine zusätzliche Schutzschicht, kein alleiniger Schutz. Wird das Gateway selbst zum Engpass, etwa durch unzureichend skalierte Infrastruktur, kann es zudem zum Single Point of Failure für alle dahinterliegenden APIs werden, wenn keine Redundanz vorgesehen ist.
Nicht zu verwechseln mit Application Programming Interface: Eine API ist die eigentliche Schnittstelle, über die Funktionen oder Daten bereitgestellt werden, während das API-Gateway die vorgelagerte Verwaltungs- und Sicherheitsschicht für mehrere APIs ist. Ebenfalls abzugrenzen ist Webhook: Ein Webhook stößt eine Benachrichtigung bei einem Ereignis an, während ein API-Gateway eingehende Anfragen an APIs steuert und verwaltet.