🧩 Error 422 – Contenido no procesable (Unprocessable Content)
El error 422 significa que el servidor recibió la solicitud correctamente, el formato es válido (JSON, formulario, XML, etc.), pero no puede procesar los datos enviados porque contienen errores de semántica, validación o lógica.
En resumen:
El servidor entiende qué enviaste, pero no puede trabajar con eso debido a inconsistencias o información inválida.
Muy común en APIs REST, formularios web, validaciones de backend y frameworks como Laravel, Django, Node.js, Rails, etc.
✅ Causas más comunes
-
❌ Datos inválidos según las reglas del servidor (campos requeridos vacíos, formato incorrecto).
-
📝 Errores de validación en formularios (correo mal formado, número inválido, etc.).
-
🧮 Valores fuera de rango (edad negativa, fecha futura imposible, etc.).
-
🔐 JSON bien formado, pero con estructura incorrecta o inesperada.
-
🗃️ Campos obligatorios faltantes en la solicitud.
-
📅 Fechas imposibles o mal formateadas.
-
🔧 Modelo o entidad que rechaza los datos al intentar guardarlos.
-
🌐 Archivo subido, pero inválido según reglas (mimes, tamaño, integridad, etc.).
🔧 Soluciones recomendadas
1️⃣ Validar datos antes de enviar la solicitud
Asegúrate de cumplir las reglas del servidor:
-
Campos requeridos
-
Longitudes mínimas/máximas
-
Formatos válidos
-
Datos coherentes
Ejemplo de JSON incorrecto:
2️⃣ Revisar la respuesta de error del servidor
La mayoría de APIs devuelven detalles:
Esto te dice exactamente qué corregir.
3️⃣ Corregir las reglas de validación en el backend
Ejemplo en Laravel:
En Node.js (Express + Joi):
En Django:
4️⃣ Enviar datos en el formato esperado
Si la API espera:
-
JSON → envía JSON
-
Multipart → usa
multipart/form-data -
Form-urlencoded → usa ese formato
Enviar contenido correcto evita muchos 422.
5️⃣ Verificar integridad de archivos o uploads
Puede ocurrir 422 cuando:
-
El MIME no coincide
-
El archivo está corrupto
-
Supera límites de validación
-
El archivo no es permitido
6️⃣ Actualizar la solicitud si estás enviando datos incompletos
Campos faltantes = 422 en la mayoría de APIs.
7️⃣ Corregir estructura del JSON
El JSON puede estar bien formado, pero ser inválido lógicamente:
Ejemplo incorrecto:
Si el backend exige “calle” → 422.
🔐 Consejo Pro
En sistemas modernos, el 422 se usa como “error elegante” para indicar fallos de validación sin romper la aplicación.
Haz que tu app:
-
Muestre mensajes claros
-
Marque los campos incorrectos
-
Evite enviar datos defectuosos
-
Corrija automáticamente valores inválidos cuando sea posible
Esto mejora UX y reduce llamadas al backend.
No comments to display
No comments to display