Un răspuns de eroare bun face două lucruri: folosește status code-ul HTTP corect (semnalul citibil de mașină) și returnează un body structurat și consistent pe care un dezvoltator îl poate acționa. Formele de eroare inconsistente sunt una dintre cele mai mari surse de durere de partea clientului.
Folosește un format standard de eroare: RFC 7807 (problem+json)
RFC 7807 definește un body standard „problem details" cu un media type dedicat, așa că fiecare eroare din API-ul tău arată la fel:
HTTP/1.1 404 Not Found
Content-Type: application/problem+json
{
"type": "https://api.example.com/errors/not-found",
"title": "Resource not found",
"status": 404,
"detail": "No user exists with id 999",
"instance": "/users/999"
}
