title: HTTP status: 409 vs 428
body: <p>From <a href="https://en.wikipedia.org/wiki/List_of_HTTP_status_codes" rel="noreferrer">List of HTTP status code (Wikipedia)</a> it says:</p>
  
  <p><strong>409 Conflict</strong></p>
  
  <p>Indicates that the request could not be processed because of conflict in the request, such as an edit conflict between multiple simultaneous updates.</p>
  
  <p>And </p>
  
  <p><strong>428 Precondition Required (RFC 6585)</strong></p>
  
  <p>The origin server requires the request to be conditional. Intended to prevent the 'lost update' problem, where a client GETs a resource's state, modifies it, and PUTs it back to the server, when meanwhile a third party has modified the state on the server, leading to a conflict."</p>
  
  <p>However isn't the <em>"lost update"</em> issue mentioned in <strong>428</strong> item exactly the <em>"edit conflict"</em> issue mentioned in <strong>409</strong> item?</p>
  
  <p>So question is what are the differences between the two status code and when should we use which of them?</p>