All HTTP status codes
4xx Client Error
RFC 6585
428 Precondition Required
The server requires the request to be conditional.
What it means
HTTP 428 Precondition Required tells the client that the server requires the request to use conditional headers (like If-Match) to prevent the lost-update problem in concurrent edits.
When it's used
APIs enforcing optimistic concurrency control to prevent silent overwrites.
Common causes
- PUT/PATCH without If-Match header
- Server enforces ETag-based versioning
- API designed to prevent race conditions
How to fix it
- Include If-Match header with current ETag in PUT/PATCH requests
- Fetch the resource first to get the current ETag
- Implement optimistic locking client-side
Example response
HTTP/1.1 428 Precondition Required
Content-Type: application/json
{"error":"If-Match header required"}SEO impact
API-only. Not relevant to SEO.