Schnittstellen

REST Guidelines in Schnittstellenentwicklung: Checkliste, typische Fehler, Best Practices

REST Guidelines: Naming, Filtering, Pagination – mit Beispielen.

REST Guidelines: Naming, Filtering, Pagination – die kleinen Details, die riesig wichtig sind

Konsistenz in einer REST API ist keine Schönheitssache. Es ist Usability.

Naming-Konventionen

Ressourcen sind Substantive, keine Verben. /users statt /getUsers. Plurale für Collections. Lowercase mit Bindestrich für mehrsilbige Ressourcen: /blog-posts statt /blogPosts.

Hierarchische Ressourcen: /users/{id}/orders für die Orders eines Users. Nicht tiefer als 3 Ebenen – das wird sonst unhandlich.

Filtering, Sorting, Searching

Filter als Query-Parameter: /users?status=active&role=admin. Sorting: /users?sort=created_at&order=desc. Suche: /users?q=max oder dedizierter /search-Endpoint für komplexere Abfragen.

Was nicht als Query-Parameter: Auth-Token (gehört in den Header), sensitive Daten (werden in Server-Logs geloggt).

Paginierung

Offset-basiert: ?page=2&per_page=20 – einfach zu implementieren, hat aber Probleme bei sich ändernden Daten (Neue Einträge verschieben Seiten). Cursor-basiert: ?after=cursor_token – stabil bei wachsenden Datasets, etwas komplexer zu implementieren.

Response sollte immer Pagination-Metadaten liefern: total, per_page, current_page (bei offset) oder next_cursor (bei cursor-based).

Was in jede Response gehört

Bei Fehler: {"error": {"code": "...", "message": "...", "details": {...}}} (Problem Details RFC 7807 als Standard). Bei Erfolg: entweder das Ressource-Objekt direkt oder umhüllt mit Metadaten.

Checkliste REST Guidelines

Ressourcen als Substantive (nicht Verben)
Konsistentes Naming-Schema dokumentiert
Paginierung für alle List-Endpoints
Filtering und Sorting über Query-Parameter
Fehler-Responses nach RFC 7807
Guidelines in einem API Style Guide dokumentiert

API-Überprüfung oder Style-Guide-Entwicklung?

markom.digital entwickelt API-Style-Guides und prüft bestehende APIs auf Konsistenz.

Weitere Beiträge