428 Precondition Required

The HTTP 428 status code occurs when a server requires a client to use a conditional request.

HTTP supports conditional requests (requests that contain one or more If-* headers), which are often used in caching. Conditional requests can also be used to verify the integrity of files through checksums.

It can be useful when a client wants to update a resource they retrieved a while back. While the client has been making changes, the file could have been updated or deleted in the meantime (lost update problem is the term-of-art). By forcing clients to use a conditional request, the server minimizes the risk of conflicts.

PUT /upload HTTP/2

The server should reply with instructions on how to resubmit the request correctly. In most cases, you’d have to include the If-Match header.

HTTP/2 428 Precondition Required

See also