Ein gut entworfenes REST API ist intuitiv, konsistent und einfach zu verwenden. Ein schlecht entworfenes API ist ein Albtraum.
URL-Konventionen¶
✅ Richtig¶
GET /api/v1/users # Liste GET /api/v1/users/123 # Detail POST /api/v1/users # Erstellen PUT /api/v1/users/123 # Update (vollstaendig) PATCH /api/v1/users/123 # Update (teilweise) DELETE /api/v1/users/123 # Loeschen
❌ Falsch¶
GET /api/getUsers POST /api/deleteUser/123 GET /api/user/123/getOrders
Statuscodes¶
- 200: OK (GET, PUT, PATCH)
- 201: Created (POST)
- 204: No Content (DELETE)
- 400: Bad Request (Validierung)
- 401: Unauthorized (nicht angemeldet)
- 403: Forbidden (keine Berechtigung)
- 404: Not Found
- 409: Conflict (Duplikat)
- 422: Unprocessable Entity
- 429: Too Many Requests
- 500: Internal Server Error
Antwortformat¶
// Erfolg { “data”: { “id”: 123, “name”: “Jan” } } // Fehler { “error”: { “code”: “VALIDATION_ERROR”, “message”: “Email is required”, “details”: [{ “field”: “email”, “message”: “Required” }] } } // Liste mit Paginierung { “data”: […], “meta”: { “total”: 100, “page”: 1, “limit”: 20 } }
Wichtigste Erkenntnis¶
Substantive in URLs, HTTP-Methoden fuer Aktionen, korrekte Statuscodes, konsistentes Antwortformat.