Ошибки
В этом руководстве мы поговорим о том, что происходит, когда что-то идет не так при работе с Meshy API.
Ошибки запроса
Эти ошибки возвращаются немедленно, когда ваш API-запрос отклоняется. Проверьте HTTP код состояния и поле message, чтобы понять, что пошло не так.
Формат ответа
Ответ с ошибкой содержит одно поле message, описывающее, что пошло не так:
- Name
- message
- Type
- string
- Description
Краткое описание ошибки.
Коды состояния
- Name
2xx- Description
Код состояния 2xx указывает на успешный ответ.
- Name
200 - OK- Description
По умолчанию, если все прошло как ожидалось, будет возвращен код состояния 200.
- Name
202 - Accepted- Description
Ваш запрос был принят для обработки, но обработка еще не завершена. Это неокончательный ответ от Meshy API. Например, запрос на создание новой задачи вернет код состояния 202.
- Name
4xx- Description
Код состояния 4xx указывает на ошибку клиента.
- Name
400 - Bad Request- Description
Запрос был неприемлемым, часто из-за отсутствия обязательного параметра или один из параметров был некорректным.
- Name
401 - Unauthorized- Description
Не предоставлен действительный API-ключ или предоставленный API-ключ не авторизован для доступа к Meshy API эндпоинту.
- Name
402 - Payment Required- Description
Недостаточно средств на счете, связанном с предоставленным API-ключом.
- Name
403 - Forbidden- Description
Доступ к запрашиваемому ресурсу запрещен. Это может произойти, если вы пытаетесь получить доступ к Meshy API напрямую из клиентского JavaScript-кода, так как запросы Cross-Origin Resource Sharing (CORS) из браузеров не разрешены. Рассмотрите возможность использования серверного прокси для таких запросов. Для получения более подробной информации смотрите руководство MDN по CORS.
- Name
404 - Not Found- Description
Запрашиваемый ресурс не существует. Например, когда вы пытаетесь получить задачу по ее ID, но предоставили недействительный ID, вы получите код состояния 404.
- Name
429 - Too Many Requests- Description
Слишком много запросов поступило к Meshy API слишком быстро. Пожалуйста, обратитесь к руководству по лимитам запросов для получения подробной информации.
- Name
5xx- Description
Код состояния 5xx указывает на ошибку сервера. Если вы видите такую ошибку, пожалуйста, проверьте нашу страницу статуса для получения дополнительной информации и свяжитесь с нами через Discord для получения помощи.
Пример: 400 Bad Request
{
"message": "Invalid model file extension: .3dm"
}
Ошибки задачи
Эти ошибки возникают после создания задачи и в процессе её выполнения. Проверьте объект task_error в ответе задачи для получения деталей ошибки.
Объект task_error содержит следующие поля:
- Name
- type
- Type
- string
- Description
Категория ошибки. Всегда присутствует в случае неудачных задач. См. Типы ошибок ниже.
- Name
- message
- Type
- string
- Description
Человеко-читаемое описание ошибки. Всегда присутствует в случае неудачных задач.
- Name
- code
- Type
- string
- Необязательный
- Description
Специфический код ошибки, идентифицирующий проблему. Присутствует, когда доступны дополнительные детали. См. Коды ошибок ниже.
- Name
- doc_url
- Type
- string
- Необязательный
- Description
Ссылка на подробную документацию по этому коду ошибки, включая рекомендации по разрешению. Присутствует, когда присутствует
code.
Ошибка с деталями
{
"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"
}
}
Ошибка без деталей
{
"id": "018a210d-8ba4-705c-b111-1f1776f7f578",
"status": "FAILED",
"task_error": {
"type": "server_error",
"message": "An internal error occurred. Please retry."
}
}
Типы ошибок
Поле type указывает на общую категорию сбоя. Используйте его для определения стратегии повторной попытки.
- Name
invalid_input- Description
Что-то не так с введенными вами данными. Проверьте поля
codeиmessageдля получения подробной информации, исправьте проблему и повторите попытку.
- Name
timeout- Description
Обработка превысила лимит времени. Это часто временное явление. Повторите запрос, и если он продолжает не выполняться, попробуйте упростить ввод.
- Name
service_unavailable- Description
Сервис временно недоступен. Подождите немного и повторите попытку.
- Name
server_error- Description
Во время обработки произошла внутренняя ошибка. Повторите запрос. Если проблема сохраняется, свяжитесь с поддержкой, указав ваш идентификатор задачи.
Ошибки
Когда поле code присутствует, оно указывает на конкретную проблему, которую можно решить. Ниже приведена полная справка по каждому коду ошибки.
image_too_complex
Эта ошибка возникает, когда входное изображение или prompt описывает объект, который слишком геометрически сложен для обработки моделью 3D-генерации.
Распространенные примеры включают:
- Плотные кучи мелких объектов (например, ящик, полный фруктов, стопка книг)
- Сложные повторяющиеся узоры (например, решетчатые структуры, строительные леса, проволочные сетки)
- Сложные строительные конструкции (например, многоэтажные здания с множеством окон и балконов)
- Несколько различных объектов на одном изображении вместо одного объекта
Примеры входных данных, которые, вероятно, слишком сложны:




Решение:
- Используйте один объект на изображение. Модель лучше работает с одним четким объектом. Не включайте несколько отдельных объектов на одном изображении или в prompt.
- Упростите ваш объект. Уменьшите уровень детализации. Например, простая ваза вместо вазы, заполненной десятками цветов.
- Избегайте prompt на уровне сцены. Целые здания, городские кварталы, интерьеры, заполненные мебелью, или пейзажи, вероятно, превысят возможности модели. Сосредоточьтесь на одном объекте.
- Избегайте плотных повторяющихся структур. Объекты, такие как строительные леса, проволочные сетки, решетчатые узоры или кучи множества мелких предметов, являются частыми триггерами.
model_missing_uv
Эта ошибка возникает, когда вы загружаете модель для текстурирования с установленным значением enable_original_uv на true, но у модели отсутствуют UV-координаты. UV-координаты определяют, как 2D текстура оборачивается на 3D поверхность вашей модели.

Решение:
Правильное исправление зависит от того, почему вы установили enable_original_uv на true:
- Если вам нужно сохранить оригинальную UV-раскладку вашей модели (например, пользовательское размещение швов для точного наложения текстуры): ваша модель должна иметь действительные UV-координаты. Убедитесь, что UV существуют в редакторе UV вашего 3D-программного обеспечения перед загрузкой. Обратите внимание, что файлы STL не могут хранить UV-данные, поэтому используйте GLB, FBX или OBJ вместо них.
- Если вам не нужен специфический контроль UV (или вы не уверены): не указывайте
enable_original_uvили установите его наfalse. Система автоматически сгенерирует UV-раскладку для вашей модели. Автоматически сгенерированные UV оптимизированы для покрытия, но у вас не будет контроля над тем, где размещаются швы текстуры.
model_insufficient_uv
Эта ошибка возникает, когда у модели есть UV-координаты, но покрытие UV слишком мало для качественного текстурирования. Это часто происходит с моделями, экспортированными из 3D-инструментов, которые генерируют временные или сжатые UV без правильного развертывания.

Решение:
- Если вам нужно сохранить вашу оригинальную UV-раскладку: повторно разверните UV модели в вашем 3D-программном обеспечении. Убедитесь, что UV-острова правильно распределены по UV-пространству, а не сжаты в небольшую область.
- Если вам не нужен специфический контроль UV: опустите
enable_original_uvили установите его вfalse. Система автоматически сгенерирует новую UV-раскладку. Компромисс заключается в том, что вы потеряете оригинальное расположение швов, но автоматически сгенерированные UV будут иметь правильное покрытие для текстурирования.
invalid_input
Это код ошибки по умолчанию, который используется, когда входные данные не проходят проверку, но более конкретный код не применим. Поле message содержит конкретную причину сбоя.
Общие причины включают:
- Пустые или поврежденные файлы моделей
- Неподдерживаемые вариации форматов файлов (например, ASCII FBX файлы, meshopt-сжатые GLB)
- В загруженной модели не найдено допустимых 3D объектов (например, файл содержит только арматуры, камеры или источники света)
- Контент, который не проходит фильтры безопасности
Решение: Проверьте поле message для получения подробной информации о том, что пошло не так. Убедитесь, что ваши входные файлы и параметры соответствуют требованиям эндпоинта.
moderation_blocked
Эта ошибка возникает, когда ваш prompt или эталонные изображения отклоняются фильтрами безопасности ИИ. Фильтр оценивает как текстовый prompt, так и любые эталонные изображения вместе.
Решение:
- Переформулируйте ваш текстовый prompt, чтобы убрать намеки или чувствительные описания.
- Измените эталонные изображения, если они содержат контент, который может вызвать срабатывание фильтров безопасности.
timeout
Эта ошибка означает, что время обработки вашей задачи превысило допустимый предел. Это может произойти из-за высокой нагрузки на систему или потому, что ввод слишком сложен для обработки в пределах временного лимита.
Решение:
- Повторите запрос. Таймауты часто являются временными, и повторная попытка может быть успешной.
- Упростите ваш ввод. Если повторные попытки продолжают не удаваться, ваш ввод может быть слишком сложным. Попробуйте уменьшить уровень детализации в вашем изображении или prompt. См.
image_too_complexдля получения рекомендаций о том, какие типы вводов сложнее обрабатывать.
format_conversion_failed
Эта ошибка возникает, когда сгенерированная 3D-модель не может быть преобразована в запрашиваемый вами выходной формат. Модель была успешно сгенерирована, но этап преобразования завершился неудачей.
Решение:
- Повторите запрос.
- Попробуйте другой выходной формат. Если определенный формат продолжает давать сбой, переключитесь на другой формат, который соответствует вашим требованиям.
Лучшие практики
- Реализуйте логику повторных попыток. Для ошибок
timeoutиservice_unavailableреализуйте логику повторных попыток с экспоненциальной задержкой. - Логируйте идентификаторы задач. Всегда записывайте идентификатор задачи для целей отладки. Указывайте его при обращении в службу поддержки.
- Проверяйте входные данные. Убедитесь, что ваши входные изображения и модели соответствуют требованиям формата перед отправкой.