409 Conflict
A 409 Conflict error means the request could not be completed because it conflicts with the current state of the target resource. This is commonly seen when trying to create a resource that already exists, or when concurrent edits collide. For developers, it signals that the client should resolve the conflict, typically by fetching the latest state and retrying.
Common causes
- Attempting to create a resource with a unique identifier that already exists in the system
- Concurrent edits to the same resource causing an optimistic locking conflict
- Trying to modify a resource that has been updated by another request since it was last fetched
- Submitting a duplicate transaction or operation that the server detects as a conflict
- Deleting a resource that has dependent resources still referencing it
How to fix it
- Fetch the latest version of the resource and re-apply your changes on top of it
- Implement optimistic concurrency control using ETags or version numbers in your requests
- Check for existing resources before attempting to create duplicates using a conditional request
- Add idempotency keys to prevent duplicate operations from causing conflicts
- Handle the 409 response in client code by prompting the user to review and merge conflicting changes
Detect 409 Conflict errors with Checkend
Checkend monitors your application and alerts you when 409 errors occur, with full request context:
- Full request details (URL, headers, params)
- Server-side stack trace and error context
- Automatic grouping of similar errors
- Instant notifications when error rates spike
Related HTTP errors
A 422 Unprocessable Entity error means the server understands the request format and syntax, but can...
A 400 Bad Request error means the server cannot process the request because the client sent somethin...
A 429 Too Many Requests error means the user has sent too many requests in a given amount of time an...
Stop debugging HTTP errors in production
Get full error context and fix issues faster with self-hosted error tracking.