REST API

Eine REST API ist eine Programmierschnittstelle, die den Prinzipien der Representational State Transfer (REST) Architektur folgt und Ressourcen über HTTP-Methoden wie GET, POST oder DELETE ansprechbar macht.

Kurz erklärt

REST wurde 2000 von Roy Fielding beschrieben und definiert eine Reihe von Architekturprinzipien: Ressourcen werden über eindeutige URLs adressiert, Zustandslosigkeit zwischen einzelnen Anfragen wird vorausgesetzt, und Standard-HTTP-Methoden bekommen eine klare Bedeutung - GET zum Lesen, POST zum Erstellen, PUT/PATCH zum Aktualisieren, DELETE zum Löschen einer Ressource.

Beispiel

Eine REST API für einen Blog könnte GET /articles zum Abrufen aller Artikel, GET /articles/42 für einen einzelnen Artikel, POST /articles zum Anlegen eines neuen Artikels und DELETE /articles/42 zum Löschen anbieten - jede Ressource ist konsistent über ihre URL adressierbar.

Warum ist das relevant?

REST APIs sind seit Jahren der De-facto-Standard für Web-Schnittstellen und werden von einem Großteil aller SaaS-Produkte, mobilen Apps und Integrationen genutzt. Ihre Verbreitung liegt auch daran, dass sie sich eng an bestehende HTTP-Semantik anlehnen und dadurch mit vorhandener Web-Infrastruktur (Caching, Proxys, Statuscodes) gut zusammenarbeiten.

Häufige Missverständnisse

Nicht jede API, die über HTTP läuft, ist automatisch “REST” im strengen Sinn - viele als REST bezeichnete APIs erfüllen nicht alle von Fielding definierten Constraints (etwa HATEOAS) und sind eher pragmatisch HTTP-basierte JSON-APIs. Das ist in der Praxis meist unproblematisch, sollte aber bei akademischen Diskussionen über “echtes REST” bewusst sein.

Weiterführende Inhalte

Quellen & Dokumentation