4xx · Errores del cliente
Error 422 Unprocessable Content: qué significa y cómo solucionarlo
El error 422 Unprocessable Content (antes Unprocessable Entity) significa que el servidor ha entendido la petición y su formato es correcto, pero los datos no pasan la validación: un email sin @, una fecha imposible o un campo obligatorio vacío. FastAPI y Rails lo usan por defecto para los errores de validación.
Qué significa el código 422
Separa dos problemas: si el JSON ni siquiera se puede leer, es 400; si se lee pero los valores no son válidos, es 422. FastAPI devuelve en "detail" una lista con cada campo que falla y por qué.
Causas habituales del error 422
- Campos obligatorios ausentes o con tipo incorrecto en una API con validación (Pydantic, Joi, Zod).
- Valores fuera de rango o con formato inválido.
Cómo solucionar el error 422
- Lee el cuerpo de la respuesta: indica el campo exacto (loc) y el motivo (msg).
- En FastAPI, comprueba que envías JSON en el cuerpo y no como parámetros de la URL.
Configuración y comandos
Respuesta típica de FastAPI
json
{
"detail": [
{"type": "missing", "loc": ["body", "email"], "msg": "Field required"}
]
}Ejemplo de respuesta
http
HTTP/1.1 422 Unprocessable Content
Content-Type: application/jsonHerramientas para comprobarlo
Preguntas frecuentes
¿Por qué FastAPI me devuelve 422?
Porque los datos recibidos no coinciden con el modelo Pydantic del endpoint. El campo detail indica exactamente qué falta o qué tipo es incorrecto.