DevToolPal
ES
4xx Errores del cliente

409 Conflict

Conflicto

Qué significa

La petición entra en conflicto con el estado actual del recurso, como un duplicado o una edición simultánea.

Causas habituales

  • Crear un registro que ya existe (email o nombre únicos)
  • Editar un recurso que otra persona cambió
  • Un conflicto de versión o estado al estilo git

Cómo solucionarlo

Si eres el cliente o visitante

Obtén el estado más reciente, resuelve el conflicto o elige otro valor, y vuelve a intentarlo.

Si administras el sitio o la API

Explica en el cuerpo qué entra en conflicto. Para bloqueo optimista con ETag, 412 es el estado más preciso.

Respuesta de ejemplo

HTTP/1.1
HTTP/1.1 409 Conflict
Date: Tue, 07 Oct 2025 09:30:00 GMT
Server: nginx
Content-Type: application/problem+json

{
  "type": "about:blank",
  "title": "Conflict",
  "status": 409,
  "detail": "A user with this email already exists."
}

Especificación

RFC 9110 §15.5.10

Preguntas frecuentes

› ¿409 o 422 para un email duplicado?

Se usan ambos. 409 encaja con un conflicto con datos existentes; 422 con un framework de validación. Sé coherente.

› ¿Los clientes deben reintentar un 409 automáticamente?

No; el conflicto suele requerir una decisión. Actualiza los datos primero.