Errores
En esta guía, hablaremos sobre lo que sucede cuando algo sale mal mientras trabajas con la Meshy API.
Errores de solicitud
Estos errores se devuelven inmediatamente cuando se rechaza tu solicitud de API. Consulta el código de estado HTTP y el campo message para entender qué salió mal.
Formato de respuesta
La respuesta de error contiene un único campo message que describe qué salió mal:
- Name
- message
- Type
- string
- Description
Una breve descripción del error.
Códigos de estado
- Name
2xx- Description
Un código de estado 2xx indica una respuesta exitosa.
- Name
200 - OK- Description
De forma predeterminada, si todo funcionó como se esperaba, se devolverá un código de estado 200.
- Name
202 - Accepted- Description
Tu solicitud ha sido aceptada para su procesamiento, pero el procesamiento no se ha completado. Esta es una respuesta no vinculante de Meshy API. Por ejemplo, una solicitud para crear una nueva tarea devolverá un código de estado 202.
- Name
4xx- Description
Un código de estado 4xx indica un error del cliente.
- Name
400 - Bad Request- Description
La solicitud no era aceptable, a menudo debido a que faltaba un parámetro obligatorio o uno de los parámetros tenía un formato incorrecto.
- Name
401 - Unauthorized- Description
No se proporcionó una clave de API válida o la clave de API proporcionada no está autorizada para acceder al endpoint de Meshy API.
- Name
402 - Payment Required- Description
Fondos insuficientes en la cuenta asociada con la clave de API proporcionada.
- Name
403 - Forbidden- Description
El acceso al recurso solicitado está prohibido. Esto puede suceder si intentas acceder a Meshy API directamente desde código JavaScript del lado del cliente, ya que no se permiten solicitudes de Intercambio de Recursos de Origen Cruzado (CORS) desde navegadores. Considera usar un proxy del lado del servidor para dichas solicitudes. Para más detalles, consulta la guía de CORS de MDN.
- Name
404 - Not Found- Description
El recurso solicitado no existe. Por ejemplo, cuando intentas recuperar una tarea por su ID pero proporcionaste un ID no válido, recibirás un código de estado 404.
- Name
429 - Too Many Requests- Description
Demasiadas solicitudes llegaron a Meshy API demasiado rápido. Consulta la guía de Límites de tasa para más detalles.
- Name
5xx- Description
Un código de estado 5xx indica un error del servidor. Si ves uno, consulta nuestra página de estado para obtener más información y contáctanos a través de Discord para recibir ayuda.
Example: 400 Bad Request
{
"message": "Invalid model file extension: .3dm"
}
Errores de tarea
Estos errores ocurren después de que una tarea se ha creado y está en procesamiento. Consulta el objeto task_error en la respuesta de la tarea para ver los detalles del error.
El objeto task_error contiene los siguientes campos:
- Name
- type
- Type
- string
- Description
La categoría del error. Siempre está presente en las tareas fallidas. Consulta Tipos de error a continuación.
- Name
- message
- Type
- string
- Description
Una descripción legible por humanos del error. Siempre está presente en las tareas fallidas.
- Name
- code
- Type
- string
- Opcional
- Description
Un código de error específico que identifica el problema. Está presente cuando hay detalles adicionales disponibles. Consulta Códigos de error a continuación.
- Name
- doc_url
- Type
- string
- Opcional
- Description
Un enlace a la documentación detallada para este código de error, incluida la guía de resolución. Está presente cuando
codeestá presente.
Error with details
{
"id": "018a210d-8ba4-705c-b111-1f1776f7f578",
"status": "FAILED",
"task_error": {
"type": "invalid_input",
"code": "image_too_complex",
"message": "The uploaded image is too complex for 3D generation.",
"doc_url": "https://docs.meshy.ai/en/api/errors#image-too-complex"
}
}
Error without details
{
"id": "018a210d-8ba4-705c-b111-1f1776f7f578",
"status": "FAILED",
"task_error": {
"type": "server_error",
"message": "An internal error occurred. Please retry."
}
}
Tipos de error
El campo type indica la categoría general del fallo. Úsalo para decidir tu estrategia de reintento.
- Name
invalid_input- Description
Hay algo incorrecto en la entrada que proporcionaste. Revisa los campos
codeymessagepara obtener detalles, corrige el problema y vuelve a intentarlo.
- Name
timeout- Description
El procesamiento superó el límite de tiempo. Esto suele ser transitorio. Vuelve a intentar la solicitud y, si sigue fallando, intenta simplificar tu entrada.
- Name
service_unavailable- Description
El servicio no está disponible temporalmente. Espera un momento y vuelve a intentarlo.
- Name
server_error- Description
Se produjo un error interno durante el procesamiento. Vuelve a intentar la solicitud. Si el problema persiste, contacta con soporte con tu ID de tarea.
Códigos de error
Cuando el campo code está presente, identifica un problema específico y accionable. A continuación se muestra la referencia completa de cada código de error.
image_too_complex
Este error ocurre cuando la imagen de entrada o el prompt describe un sujeto que es demasiado complejo geométricamente para que el modelo de generación 3D lo procese.
Los ejemplos comunes incluyen:
- Montones densos de objetos pequeños (p. ej., una caja llena de fruta, una pila de libros)
- Patrones repetitivos intrincados (p. ej., estructuras reticulares, andamios, mallas de alambre)
- Estructuras de edificios complejas (p. ej., edificios de varios pisos con muchas ventanas y balcones)
- Múltiples objetos distintos en una imagen en lugar de un solo sujeto
Ejemplos de entradas que probablemente sean demasiado complejas:




Resolución:
- Usa un solo objeto por imagen. El modelo funciona mejor con un sujeto claro. No incluyas varios objetos separados en la misma imagen o prompt.
- Simplifica tu sujeto. Reduce el nivel de detalle. Por ejemplo, un jarrón simple en lugar de un jarrón lleno de docenas de flores.
- Evita prompts a nivel de escena. Es probable que edificios completos, manzanas urbanas, interiores llenos de muebles o paisajes superen la capacidad del modelo. En su lugar, céntrate en un solo objeto.
- Evita estructuras repetitivas densas. Sujetos como andamios, mallas de alambre, patrones reticulares o montones de muchos elementos pequeños son desencadenantes comunes.
model_missing_uv
Este error ocurre cuando subes un modelo para aplicarle texturas con enable_original_uv establecido en true, pero el modelo no tiene coordenadas UV. Las coordenadas UV definen cómo una textura 2D se ajusta a la superficie 3D de tu modelo.

Resolución:
La corrección adecuada depende de por qué estableciste enable_original_uv en true:
- Si necesitas conservar la distribución UV original de tu modelo (por ejemplo, colocación personalizada de costuras para un mapeo de textura preciso): tu modelo debe tener coordenadas UV válidas. Verifica que existan UV en el editor de UV de tu software 3D antes de subirlo. Ten en cuenta que los archivos STL no pueden almacenar datos UV, así que usa GLB, FBX u OBJ en su lugar.
- Si no necesitas control UV específico (o no estás seguro): omite
enable_original_uvo establécelo enfalse. El sistema generará automáticamente una distribución UV para tu modelo. Las UV generadas automáticamente están optimizadas para la cobertura, pero no tendrás control sobre dónde se colocan las costuras de la textura.
model_insufficient_uv
Este error se produce cuando un modelo tiene coordenadas UV, pero la cobertura UV es demasiado pequeña para un texturizado de calidad. Esto suele ocurrir con modelos exportados desde herramientas 3D que generan UV de marcador de posición o colapsadas sin un desenvolvimiento adecuado.

Resolución:
- Si necesitas conservar tu distribución UV original: vuelve a desenvolver las UV del modelo en tu software 3D. Asegúrate de que las islas UV estén distribuidas correctamente por el espacio UV en lugar de estar colapsadas en un área pequeña.
- Si no necesitas un control UV específico: omite
enable_original_uvo establécelo enfalse. El sistema generará automáticamente una nueva distribución UV. La contrapartida es que perderás la colocación original de las costuras, pero las UV generadas automáticamente tendrán una cobertura adecuada para el texturizado.
invalid_input
Este es el código de error de respaldo cuando la entrada no supera la validación, pero no se aplica ningún código más específico. El campo message contiene el motivo específico del fallo.
Las causas comunes incluyen:
- Archivos de modelo vacíos o dañados
- Variaciones de formato de archivo no compatibles (p. ej., archivos FBX ASCII, GLB comprimido con meshopt)
- No se encontraron objetos 3D válidos en el modelo subido (p. ej., el archivo contiene solo esqueletos (armature), cámaras o luces)
- Contenido que no supera los filtros de seguridad
Resolución: Consulta el campo message para obtener detalles sobre lo que salió mal. Verifica que tus archivos de entrada y parámetros coincidan con los requisitos del endpoint.
moderation_blocked
Este error ocurre cuando tu prompt o las imágenes de referencia son rechazados por los filtros de seguridad de IA. El filtro evalúa juntos tanto el prompt de texto como cualquier imagen de referencia.
Solución:
- Reformula tu prompt de texto para eliminar descripciones sugestivas o sensibles.
- Ajusta las imágenes de referencia si muestran contenido que pueda activar los filtros de seguridad.
timeout
Este error significa que el tiempo de procesamiento de tu tarea superó el límite permitido. Esto puede ocurrir debido a una alta carga del sistema o porque la entrada es demasiado compleja para procesarla dentro del límite de tiempo.
Resolución:
- Vuelve a intentar la solicitud. Los timeout suelen ser transitorios y un nuevo intento puede tener éxito.
- Simplifica tu entrada. Si los reintentos siguen fallando, tu entrada puede ser demasiado compleja. Intenta reducir el nivel de detalle en tu imagen o prompt. Consulta
image_too_complexpara obtener orientación sobre qué tipos de entradas son más difíciles de procesar.
format_conversion_failed
Este error ocurre cuando el modelo 3D generado no pudo convertirse al formato de salida solicitado. El modelo se generó correctamente, pero falló el paso de conversión.
Resolución:
- Vuelve a intentar la solicitud.
- Prueba un formato de salida diferente. Si un formato específico sigue fallando, cambia a otro formato que se adapte a tus necesidades.
Mejores prácticas
- Implementa lógica de reintento. Para errores de
timeoutyservice_unavailable, implementa lógica de reintento con backoff exponencial. - Registra los IDs de tarea. Registra siempre el ID de la tarea para fines de depuración. Inclúyelo al contactar con soporte.
- Valida las entradas. Asegúrate de que tus imágenes y modelos de entrada cumplan los requisitos de formato antes del envío.