REST-API: Definition & Erklärung — Glossar
Was ist eine REST-API?
REST (Representational State Transfer) ist ein Architekturstil für verteilte Hypermedia-Systeme, definiert von Roy Fielding in seiner Dissertation (2000). Eine REST-API (Application Programming Interface) ist eine Schnittstelle, die REST-Prinzipien folgt und Ressourcen über Standard-HTTP-Methoden zugänglich macht. Sie ist heute das dominierende Paradigma für Web-APIs und die Grundlage moderner Systemintegration.
REST-Prinzipien
Ressourcen-Orientierung: Alles ist eine Ressource (z. B. /customers/123). HTTP-Verben definieren Operationen: GET (lesen), POST (erstellen), PUT/PATCH (aktualisieren), DELETE (löschen). Zustandslosigkeit (Statelessness): Jede Anfrage enthält alle nötigen Informationen, der Server speichert keinen Client-Zustand. Einheitliche Schnittstelle: Konsistente URL-Strukturen und Datenformate (typischerweise JSON). Schichtenarchitektur: Client weiß nicht, ob er direkt mit dem Server oder einem Proxy kommuniziert.
REST vs. GraphQL vs. gRPC
GraphQL erlaubt flexible Abfragen — Clients definieren genau, welche Felder sie benötigen, was Over- und Under-Fetching vermeidet. Es eignet sich besonders für komplexe Datenmodelle mit vielen Beziehungen. gRPC nutzt HTTP/2 und Protocol Buffers für hochperformante, binäre Kommunikation — ideal für Microservice-Kommunikation. REST bleibt die beste Wahl für öffentliche APIs, einfache CRUD-Operationen und breite Kompatibilität.
Best Practices
Versionierung der API (z. B. /api/v1/) schützt bestehende Clients bei Änderungen. Authentifizierung über OAuth 2.0 und JWT ist der Standard. Klare, konsistente Fehlerformate (HTTP Status Codes + JSON Error Body) erleichtern Integration. Rate Limiting schützt die API vor Überlastung. OpenAPI/Swagger-Spezifikation als “Vertrag” ermöglicht automatische Code-Generierung und API-Dokumentation.