409 Conflict
4xx Client Error
RFC 9110
Your request collides with the current state of things.
What 409 Conflict means {#what}
The request is valid but can’t be completed because it conflicts with the current state of the resource. The conflict needs to be resolved before retrying. Common in concurrent update scenarios.
When you’ll see a 409 {#when}
- Trying to create a resource that already exists (duplicate unique key)
- Optimistic locking conflict (someone else updated the record first)
- Trying to delete a resource that other resources depend on
When to use 409 {#use}
- Use when the same request might succeed if the state changes
- Include details about the conflict in the response body