API лампы Creative Lab
Превратите фотографию в 3D-печатаемый абажур лампы в два этапа. Задача прототипа генерирует концептуальное изображение в матово-белом цвете и преобразует его в 3D-модель. Задача сборки, которая принимает ID задачи прототипа в качестве input_task_id, превращает эту модель в печатаемые части STL. При использовании пресета крепления по умолчанию, частями являются абажур с открытым дном с базовой пластиной для осветительного прибора и крепление для него.
POST /openapi/creative-lab/lamp/v1/prototypePOST /openapi/creative-lab/lamp/v1/build
Создание задачи прототипа лампы
Генерирует одно матово-белое концептуальное изображение по фото и превращает его в 3D-модель абажура лампы. Задача возвращает концептуальное изображение в image_urls, а модель — в model_urls.glb с превью в thumbnail_url. Чтобы собрать печатные детали, передайте ID этой задачи в эндпоинт сборки как input_task_id. Описание полей задачи см. в разделе Объект задачи прототипа лампы.
Request
# Stage 1: concept image + 3D lampshade model from a source photo
curl https://api.meshy.ai/openapi/creative-lab/lamp/v1/prototype \
-X POST \
-H "Authorization: Bearer ${YOUR_API_KEY}" \
-H 'Content-Type: application/json' \
-d '{
"image_url": "<your publicly accessible image url or base64-encoded data URI>",
"image_subject": "character"
}'
Response
{
"result": "018a210d-8ba4-705c-b111-1f1776f7f578"
}


Параметры
- Name
- image_url
- Type
- string
- Обязательный
- Description
Фото, на основе которого создаётся абажур, в виде публичного URL или data URI (
data:image/jpeg;base64,<закодированные в base64 данные вашего изображения>).Изображение должно быть файлом JPG, JPEG, PNG или WebP размером не более 20 МБ.
- Name
- image_subject
- Type
- string
- по умолчанию character
- Description
Тип объекта на фото, который определяет, как Meshy его стилизует.
Доступные значения:
character: отдельный персонаж или объект, например фигурка, животное или маскотlandscape: внешняя сцена или панорама, например гора, городской пейзаж или лес
- Name
- name
- Type
- string
- Description
Название задачи, до 100 символов. Оно возвращается в поле
nameзадачи. Более длинное название возвращает400.
- Name
- remove_background
- Type
- boolean
- по умолчанию false
- Description
Удалять ли фон с изображения прототипа.
trueвозвращает прозрачный PNG в формате RGBA, чтобы вы могли разместить объект на любом фоне. Meshy также строит 3D-модель по изображению без фона. Если Meshy не удаётся удалить фон, используется изображение с фоном, и задача всё равно завершается успешно.
Возвращаемые значения
Поле result содержит ID новой задачи прототипа. Получите задачу или подпишитесь на неё через поток, пока status не станет SUCCEEDED. Затем передайте ID в эндпоинт сборки как input_task_id.
Режимы сбоя
- Name
400 - Bad Request- Description
Запрос не может быть выполнен. Например:
- Отсутствует
image_url. - Изображение не является файлом JPG, JPEG, PNG или WebP.
- Изображение слишком маленькое, превышает 20 МБ или превышает максимальное количество пикселей.
- Meshy не может загрузить изображение, например потому что URL возвращает
404или истекает время ожидания. - Data URI не является корректным base64.
- Изображение было помечено как NSFW.
image_subjectне равенcharacterилиlandscape.
В сообщении об ошибке указано, какая именно проблема обнаружена. Исправьте запрос и отправьте его снова.
- Отсутствует
- Name
401 - Unauthorized- Description
API-ключ отсутствует или недействителен. Проверьте заголовок
Authorization.
- Name
402 - Payment Required- Description
Применимо одно из следующего:
- На счёте недостаточно кредитов.
- API-ключ, рабочая область или участник достигли лимита кредитов.
- Аккаунт использует бесплатный план.
Проверьте кредиты и план, затем повторите попытку.
- Name
403 - Forbidden- Description
В вашей команде включена функция IP Filtering, и Meshy пометил изображение как содержащее стороннюю интеллектуальную собственность. Отправьте изображение, на использование которого у вас есть права.
- Name
429 - Too Many Requests- Description
Достигнут один из следующих лимитов:
- Вы отправили больше запросов, чем допускает ваше ограничение частоты. Подождите несколько секунд, затем повторите попытку. См. Ограничения частоты.
- Слишком много ваших задач находится в очереди или выполняется. Дождитесь завершения некоторых из них, затем повторите попытку.
- На безлимитном плане без оставшихся кредитов вы достигли максимального количества задач, которые могут выполняться без кредитов. Дождитесь завершения задачи или пополните кредиты.
- Name
500 - Internal Server Error- Description
В Meshy произошла ошибка сервера, например из-за невозможности выполнить проверку изображения на интеллектуальную собственность. Meshy не создаёт задачу и возвращает любые списанные кредиты. Повторите запрос.
Create a Lamp build task
Создаёт 3D-печатаемые детали на основе успешно выполненной задачи-прототипа. Meshy масштабирует модель прототипа до diameter_mm, обрезает низ по cut_amount_percent, делая его плоским, и делает полым до thickness_mm. Если указан пресет крепления, Meshy также открывает низ, добавляет базовую пластину с отверстием для крепления и создаёт отдельное крепление для источника света. Описание полей задачи см. в разделе Объект задачи сборки лампы.
Request
# Stage 2: chain build off a succeeded prototype task
curl https://api.meshy.ai/openapi/creative-lab/lamp/v1/build \
-X POST \
-H "Authorization: Bearer ${YOUR_API_KEY}" \
-H 'Content-Type: application/json' \
-d '{
"input_task_id": "018a210d-8ba4-705c-b111-1f1776f7f578",
"options": {
"diameter_mm": 120,
"thickness_mm": 2,
"light_source_preset": "bambu_mh001_60mm",
"cut_amount_percent": 30
},
"output": {
"format": "stl"
}
}'
Response
{
"result": "019c320e-9a8f-7a1c-9c11-2a1876f8a9bb"
}

Параметры
- Name
- input_task_id
- Type
- string
- Обязательный
- Description
ID задачи-прототипа для сборки. Это должна быть задача, созданная вашим аккаунтом через
POST /openapi/creative-lab/lamp/v1/prototype, со статусомSUCCEEDED.ID, который не соответствует ни одной из ваших задач-прототипов лампы через API, возвращает
404, включая прототипы, созданные в веб-приложении.
- Name
- name
- Type
- string
- Description
Название задачи, до 100 символов. Возвращается в поле
nameзадачи. Более длинное название приводит к ошибке400.
options
Необязательные настройки формы абажура. У каждого поля есть значение по умолчанию, поэтому отправляйте только те поля, которые хотите изменить.
- Name
- diameter_mm
- Type
- number
- по умолчанию 150
- Description
Размер наибольшего измерения абажура в миллиметрах, от
50до400. Meshy равномерно масштабирует модель, чтобы она соответствовала этому размеру.0использует значение по умолчанию, а любое другое значение вне диапазона возвращает400.
- Name
- thickness_mm
- Type
- number
- по умолчанию 1
- Description
Толщина стенки абажура в миллиметрах, до
10.0использует значение по умолчанию, а отрицательное значение или значение больше10возвращает400.
- Name
- cut_amount_percent
- Type
- number
- по умолчанию 1
- Description
Процент высоты модели, который нужно срезать плоско снизу, от
1до100. Плоское дно позволяет абажуру стоять на столе принтера и оставляет место для крепления. Значение вне диапазона возвращает400.
- Name
- light_source_preset
- Type
- string
- по умолчанию bambu_mh001_60mm
- Description
Пресет светильника, который определяет, как Meshy строит нижнюю часть.
Доступные значения:
bambu_mh001_60mm: абажур с открытым дном и базовой пластиной с отверстием для крепления диаметром 60 мм, оба — вmodel_urls.lamp_stl, а крепление — вmodel_urls.base_stlnone: единый герметичный абажур вmodel_urls.lamp_stl, безmodel_urls.base_stl
- Name
- fixture_offset_x_mm
- Type
- number
- по умолчанию 0
- Description
Насколько сместить отверстие крепления вдоль оси X от центра абажура, в миллиметрах, от
-80до80. Применяется только еслиlight_source_presetне равенnone.
- Name
- fixture_offset_z_mm
- Type
- number
- по умолчанию 0
- Description
Насколько сместить отверстие крепления вдоль оси Z (по глубине) от центра абажура, в миллиметрах, от
-80до80. Применяется только еслиlight_source_presetне равенnone.
- Name
- rotate_x_deg
- Type
- number
- по умолчанию 0
- Description
Поворот вокруг оси X, применяемый к модели перед обработкой в Meshy, в градусах, от
-360до360. Meshy применяет три поворота как углы Эйлера XYZ относительно центра модели.
- Name
- rotate_y_deg
- Type
- number
- по умолчанию 0
- Description
Поворот вокруг оси Y, применяемый к модели перед обработкой в Meshy, в градусах, от
-360до360.
- Name
- rotate_z_deg
- Type
- number
- по умолчанию 0
- Description
Поворот вокруг оси Z, применяемый к модели перед обработкой в Meshy, в градусах, от
-360до360.
- Name
- include_result_json
- Type
- boolean
- по умолчанию false
- Description
Добавлять ли файл
result.jsonв zip-архив с названием выполненного пайплайна, предупреждениями и путями к файлам. Требует, чтобыoutput.formatбыл установлен вzip. Значениеtrueвместе сstlвозвращает400.
output
Необязательно. Задаёт файлы, которые возвращает сборка.
- Name
- format
- Type
- string
- по умолчанию stl
- Description
Файлы, которые возвращает сборка.
Доступные значения:
stl:model_urls.lamp_stl— абажур с базовой пластиной, если указан пресет крепления, иmodel_urls.base_stl, еслиlight_source_presetне равенnonezip: один zip-файл вmodel_urls.bundle_zip, содержащийlamp.stl, а такжеbase.stlиresult.json, если они применимы
Возвращаемые значения
Поле result содержит ID новой задачи сборки. Получите задачу или транслируйте её, пока status не станет SUCCEEDED. Затем загрузите файлы из model_urls.
Режимы сбоя
- Name
400 - Bad Request- Description
Запрос не может быть выполнен. Например:
input_task_idотсутствует или не является действительным ID задачи.- Статус задачи-прототипа не
SUCCEEDED. Если она всё ещё выполняется, подождите и повторите попытку. Если она завершилась неудачей или была отменена, создайте новую задачу-прототип. - Задача-прототип завершилась успешно, но не содержит 3D-модели. Создайте новую задачу-прототип.
- Поле
optionsвыходит за допустимый диапазон или содержит недопустимое значение. output.formatне равенstlилиzip, либоinclude_result_jsonустановлен вtrueбезzip.
В сообщении об ошибке указывается, какая именно проблема обнаружена.
- Name
401 - Unauthorized- Description
API-ключ отсутствует или недействителен. Проверьте заголовок
Authorization.
- Name
402 - Payment Required- Description
Применимо одно из следующего:
- На аккаунте недостаточно кредитов.
- API-ключ, рабочая область или участник достигли лимита кредитов.
- Аккаунт использует бесплатный план.
Проверьте свои кредиты и план, затем повторите попытку.
- Name
404 - Not Found- Description
input_task_idне соответствует ни одной задаче-прототипу лампы, созданной вашим аккаунтом через API. Прототип, созданный в веб-приложении, также возвращает404. Отправьте ID из поляresultответа на создание прототипа.
- Name
429 - Too Many Requests- Description
Достигнут один из следующих лимитов:
- Вы отправили больше запросов, чем допускает ваше ограничение частоты. Подождите несколько секунд, затем повторите попытку. См. Ограничения частоты.
- Слишком много ваших задач находится в очереди или выполняется. Дождитесь завершения некоторых из них, затем повторите попытку.
- На безлимитном плане без оставшихся кредитов вы достигли количества задач, которые могут выполняться без кредитов. Дождитесь завершения задачи или добавьте кредиты.
Получить задачу Lamp
Возвращает задачу прототипа или сборки. Путь должен соответствовать стадии задачи. Задача сборки, запрошенная через /prototype/:id, вернёт 404, как и задача прототипа, запрошенная через /build/:id.
Описание полей см. в разделах Объект задачи прототипа Lamp и Объект задачи сборки Lamp.
Request
# Prototype
curl https://api.meshy.ai/openapi/creative-lab/lamp/v1/prototype/018a210d-8ba4-705c-b111-1f1776f7f578 \
-H "Authorization: Bearer ${YOUR_API_KEY}"
# Build
curl https://api.meshy.ai/openapi/creative-lab/lamp/v1/build/019c320e-9a8f-7a1c-9c11-2a1876f8a9bb \
-H "Authorization: Bearer ${YOUR_API_KEY}"
Prototype Response
{
"id": "018a210d-8ba4-705c-b111-1f1776f7f578",
"type": "creative-lab-lamp-prototype",
"name": "",
"status": "SUCCEEDED",
"progress": 100,
"created_at": 1729123456000,
"started_at": 1729123460000,
"finished_at": 1729123486000,
"expires_at": 1729382686000,
"preceding_tasks": 0,
"task_error": null,
"consumed_credits": 30,
"model_urls": {
"glb": "https://assets.meshy.ai/***/tasks/018a210d-8ba4-705c-b111-1f1776f7f578/output/model.glb?Expires=***"
},
"thumbnail_url": "https://assets.meshy.ai/***/tasks/018a210d-8ba4-705c-b111-1f1776f7f578/output/preview.png?Expires=***",
"image_urls": [
"https://assets.meshy.ai/***/concept.png?Expires=***"
]
}
Build Response
{
"id": "019c320e-9a8f-7a1c-9c11-2a1876f8a9bb",
"type": "creative-lab-lamp-build",
"name": "",
"status": "SUCCEEDED",
"progress": 100,
"created_at": 1729123500000,
"started_at": 1729123510000,
"finished_at": 1729123535000,
"expires_at": 1729382735000,
"preceding_tasks": 0,
"task_error": null,
"consumed_credits": 6,
"model_urls": {
"lamp_stl": "https://assets.meshy.ai/***/tasks/019c320e-9a8f-7a1c-9c11-2a1876f8a9bb/output/lamp.stl?Expires=***",
"base_stl": "https://assets.meshy.ai/***/tasks/019c320e-9a8f-7a1c-9c11-2a1876f8a9bb/output/base.stl?Expires=***"
}
}
Параметры
- Name
- id
- Type
- path
- Description
ID задачи из ответа при создании.
Возвращает
Объект задачи прототипа или объект задачи сборки, в соответствии со стадией, указанной в пути.
Варианты ошибок
- Name
400 - Bad Request- Description
idне является допустимым ID задачи. Отправьте IDresultиз ответа при создании.
- Name
403 - Forbidden- Description
В вашей команде включена функция IP Filtering, и Meshy пометила изображение задачи прототипа как нарушающее права интеллектуальной собственности третьих лиц. Для задач сборки и команд на плане Enterprise эта ошибка не возникает. Создайте задачу прототипа на основе изображения, права на использование которого принадлежат вам.
- Name
404 - Not Found- Description
Задача Lamp с таким ID не принадлежит вашему аккаунту, либо стадия задачи не соответствует указанному пути. Проверьте ID и используйте
/prototypeили/buildв соответствии с задачей.
- Name
500 - Internal Server Error- Description
Meshy не удалось выполнить проверку интеллектуальной собственности. Повторите запрос.
Удаление задачи Lamp
Отменяет задачу Lamp. Отмена задачи со статусом PENDING возвращает потраченные на неё кредиты. Задача со статусом IN_PROGRESS отменяется без возврата кредитов, так как воркер уже приступил к её выполнению. Задачу с финальным статусом (SUCCEEDED, FAILED или CANCELED) отменить нельзя.
Путь должен соответствовать этапу задачи. Например, вызов DELETE по адресу /prototype/:id с ID задачи этапа build вернёт 404.
Request
curl --request DELETE \
--url https://api.meshy.ai/openapi/creative-lab/lamp/v1/prototype/018a210d-8ba4-705c-b111-1f1776f7f578 \
-H "Authorization: Bearer ${YOUR_API_KEY}"
Response
// Returns 204 No Content on success (empty body).
Параметры пути
- Name
- id
- Type
- path
- Description
ID задачи, которую нужно отменить.
Возвращает
204 No Content с пустым телом ответа.
Варианты ошибок
- Name
400 - Bad Request- Description
Применимо одно из следующего:
idне является допустимым ID задачи. Отправьте IDresultиз ответа на создание задачи.- Задача уже имеет финальный статус (
SUCCEEDED,FAILEDилиCANCELED), поэтому её нельзя отменить.
- Name
404 - Not Found- Description
Задача Lamp с таким ID не принадлежит вашему аккаунту, либо этап задачи не соответствует указанному пути. Проверьте ID и используйте
/prototypeили/buildв соответствии с этапом задачи.
Трансляция задачи Lamp
Транслирует обновления задачи Lamp в виде Server-Sent Events (SSE). Путь должен соответствовать этапу задачи. Если это не так, например, если ID задачи сборки (build) передан в /prototype/:id/stream, поток отправляет одно событие error со status_code: 404 и закрывается.
Request
curl -N https://api.meshy.ai/openapi/creative-lab/lamp/v1/build/019c320e-9a8f-7a1c-9c11-2a1876f8a9bb/stream \
-H "Authorization: Bearer ${YOUR_API_KEY}"
Response Stream
// Error event example (wrong stage or task not found)
event: error
data: {
"status_code": 404,
"message": "Task not found"
}
// Message event examples illustrate task progress.
// Every frame is the full task object; fields not yet populated are null / empty.
// The following PENDING frame is shortened to the fields that change.
event: message
data: {
"id": "019c320e-9a8f-7a1c-9c11-2a1876f8a9bb",
"progress": 0,
"status": "PENDING"
}
event: message
data: {
"id": "019c320e-9a8f-7a1c-9c11-2a1876f8a9bb",
"type": "creative-lab-lamp-build",
"status": "SUCCEEDED",
"progress": 100,
"created_at": 1729123500000,
"started_at": 1729123510000,
"finished_at": 1729123535000,
"expires_at": 1729382735000,
"task_error": null,
"consumed_credits": 6,
"model_urls": {
"lamp_stl": "https://assets.meshy.ai/***/tasks/019c320e-9a8f-7a1c-9c11-2a1876f8a9bb/output/lamp.stl?Expires=***",
"base_stl": "https://assets.meshy.ai/***/tasks/019c320e-9a8f-7a1c-9c11-2a1876f8a9bb/output/base.stl?Expires=***"
}
}
Параметры
- Name
- id
- Type
- path
- Description
ID задачи из ответа на создание.
Возвращает
Поток объектов задачи prototype или build. Каждое событие содержит полный объект задачи, в том виде, в котором его возвращает Получение задачи Lamp. Пока задача находится в статусе PENDING или IN_PROGRESS, её выходные поля всё ещё пусты (null, [] или {}), а finished_at равно null.
Если IP Filtering блокирует результат задачи, поток отправляет вместо него одно событие error с тем status_code, который вернул бы GET-запрос.
Список задач Lamp
Возвращает задачи Lamp для одного этапа, по одной странице за раз. Этап определяется путём. /prototype возвращает только задачи этапа прототипа, а /build возвращает только задачи этапа сборки.
Request
# List prototype tasks
curl https://api.meshy.ai/openapi/creative-lab/lamp/v1/prototype?page_size=10 \
-H "Authorization: Bearer ${YOUR_API_KEY}"
# List build tasks
curl https://api.meshy.ai/openapi/creative-lab/lamp/v1/build?page_size=10 \
-H "Authorization: Bearer ${YOUR_API_KEY}"
Response (List Prototype Tasks)
[
{
"id": "018a210d-8ba4-705c-b111-1f1776f7f578",
"type": "creative-lab-lamp-prototype",
"name": "",
"status": "SUCCEEDED",
"progress": 100,
"created_at": 1729123456000,
"started_at": 1729123460000,
"finished_at": 1729123486000,
"expires_at": 1729382686000,
"preceding_tasks": 0,
"task_error": null,
"consumed_credits": 30,
"model_urls": {
"glb": "https://assets.meshy.ai/***/tasks/018a210d-8ba4-705c-b111-1f1776f7f578/output/model.glb?Expires=***"
},
"thumbnail_url": "https://assets.meshy.ai/***/tasks/018a210d-8ba4-705c-b111-1f1776f7f578/output/preview.png?Expires=***",
"image_urls": [
"https://assets.meshy.ai/***/concept.png?Expires=***"
]
}
]
Параметры пути
- Name
- stage
- Type
- path
- Обязательный
- Description
Этап для вывода списка,
prototypeилиbuild.
Параметры запроса
- Name
- page_num
- Type
- integer
- по умолчанию 1
- Description
Страница для возврата, от
1до255.0возвращает первую страницу. Значение вне диапазона от0до255возвращает400.
- Name
- page_size
- Type
- integer
- по умолчанию 10
- Description
Количество задач на странице, до
100. Значение от101до255возвращает 100 задач, а0использует значение по умолчанию. Значение вне диапазона от0до255возвращает400.
- Name
- sort_by
- Type
- string
- по умолчанию -created_at
- Description
Порядок сортировки.
Доступные значения:
-created_at: сначала новые+created_at: сначала старые
Возвращает
Массив объектов задач прототипа или объектов задач сборки, в соответствии с этапом, указанным в пути.
Объект задачи прототипа лампы
Задача прототипа создаёт матово-белое концептуальное изображение по фотографии и превращает его в 3D-модель. Чтобы создать печатные детали, передайте ID этой задачи в эндпоинт сборки как input_task_id.
Свойства
Example Lamp Prototype Task Object
{
"id": "018a210d-8ba4-705c-b111-1f1776f7f578",
"type": "creative-lab-lamp-prototype",
"name": "",
"status": "SUCCEEDED",
"progress": 100,
"created_at": 1729123456000,
"started_at": 1729123460000,
"finished_at": 1729123486000,
"expires_at": 1729382686000,
"preceding_tasks": 0,
"task_error": null,
"consumed_credits": 30,
"model_urls": {
"glb": "https://assets.meshy.ai/***/tasks/018a210d-8ba4-705c-b111-1f1776f7f578/output/model.glb?Expires=***"
},
"thumbnail_url": "https://assets.meshy.ai/***/tasks/018a210d-8ba4-705c-b111-1f1776f7f578/output/preview.png?Expires=***",
"image_urls": [
"https://assets.meshy.ai/***/concept.png?Expires=***"
]
}
- Name
- id
- Type
- string
- Description
ID задачи. Не полагайтесь на его формат.
- Name
- type
- Type
- string
- Description
Тип задачи, всегда
creative-lab-lamp-prototype.
- Name
- name
- Type
- string
- Description
Значение
name, отправленное вами при создании задачи, или"", если вы его не отправляли.
- Name
- status
- Type
- string
- Description
Статус задачи.
Доступные значения:
PENDING: ожидание в очередиIN_PROGRESS: генерация результатаSUCCEEDED: завершено, с результатомFAILED: завершено, с причиной вtask_errorCANCELED: завершено, без результата
- Name
- progress
- Type
- integer
- Description
Процент выполненной работы, от
0до100. Равен0, пока задача не началась, и100, когда она завершена успешно.
- Name
- created_at
- Type
- timestamp
- Description
Время создания задачи, в миллисекундах Unix.
- Name
- started_at
- Type
- timestamp
- Description
Время, когда воркер начал выполнение задачи, в миллисекундах Unix. До этого момента —
null.
- Name
- finished_at
- Type
- timestamp
- Description
Время, когда задача достигла финального статуса, в миллисекундах Unix. До этого момента —
null.
- Name
- expires_at
- Type
- timestamp
- Description
Время истечения срока действия результата задачи, в миллисекундах Unix. Это 3 дня после
finished_at, либо 3 дня послеcreated_at, пока задача не завершена. Для аккаунтов Enterprise, которые хранят результаты API бессрочно, это примерно на 100 лет позже. См. Хранение ресурсов.
- Name
- preceding_tasks
- Type
- integer
- Description
Позиция задачи в очереди, пока она находится в статусе
PENDING.1означает, что она будет следующей.0после того, как задача покидает очередь, и всегда0в результатах списка.
- Name
- task_error
- Type
- object
- Description
Причина сбоя задачи.
null, еслиstatusне равенFAILED. См. Ошибки.
- Name
- consumed_credits
- Type
- integer
- Description
Количество кредитов, списанных за задачу, с учётом любого возврата. Запрос, вернувший ошибку, не оплачивается. Для неудачной задачи значение равно
0, так как Meshy возвращает кредиты. Отмена возвращает кредиты за задачу только пока она находится в статусеPENDING. Если Meshy не может определить сумму списания, в ответе на get-запрос или стрим это поле отсутствует, а запрос списка возвращает500. В этом случае повторите запрос.
- Name
- model_urls
- Type
- object
- Description
URL-адреса для скачивания 3D-модели, сгенерированной из концептуального изображения.
{}, пока задача не завершена успешно.- Name
glb- Type
- string
- Description
URL-адрес для скачивания модели абажура в виде файла GLB. Этап сборки превращает эту модель в печатные детали.
- Name
- thumbnail_url
- Type
- string
- Description
URL-адрес для скачивания изображения-превью 3D-модели.
"", пока задача не завершена успешно.
- Name
- image_urls
- Type
- array of strings
- Description
URL-адреса для скачивания концептуального изображения. После успешного завершения задачи массив содержит один URL, до этого момента он пуст.
Объект задачи сборки лампы (Lamp build task)
Задача сборки превращает 3D-модель из успешно выполненной задачи прототипа в печатаемые детали абажура лампы. Meshy делает модель полой и обрезает её нижнюю часть по плоскости. При использовании пресета крепления также открывается нижняя часть и добавляются основание и крепление для патрона.
Свойства
Example Lamp Build Task Object
{
"id": "019c320e-9a8f-7a1c-9c11-2a1876f8a9bb",
"type": "creative-lab-lamp-build",
"name": "",
"status": "SUCCEEDED",
"progress": 100,
"created_at": 1729123500000,
"started_at": 1729123510000,
"finished_at": 1729123535000,
"expires_at": 1729382735000,
"preceding_tasks": 0,
"task_error": null,
"consumed_credits": 6,
"model_urls": {
"lamp_stl": "https://assets.meshy.ai/***/tasks/019c320e-9a8f-7a1c-9c11-2a1876f8a9bb/output/lamp.stl?Expires=***",
"base_stl": "https://assets.meshy.ai/***/tasks/019c320e-9a8f-7a1c-9c11-2a1876f8a9bb/output/base.stl?Expires=***"
}
}
- Name
- id
- Type
- string
- Description
ID задачи. Не полагайтесь на его формат.
- Name
- type
- Type
- string
- Description
Тип задачи, всегда
creative-lab-lamp-build.
- Name
- name
- Type
- string
- Description
Значение
name, отправленное вами при создании задачи, или"", если вы его не отправляли.
- Name
- status
- Type
- string
- Description
Статус задачи.
Доступные значения:
PENDING: ожидание в очередиIN_PROGRESS: генерация результатаSUCCEEDED: финальный статус, с результатомFAILED: финальный статус, с указанием причины вtask_errorCANCELED: финальный статус, без результата
- Name
- progress
- Type
- integer
- Description
Процент выполненной работы, от
0до100. Равен0, пока задача не началась, и100, когда она успешно завершена.
- Name
- created_at
- Type
- timestamp
- Description
Время создания задачи, в миллисекундах Unix.
- Name
- started_at
- Type
- timestamp
- Description
Время начала выполнения задачи воркером, в миллисекундах Unix. До этого момента —
null.
- Name
- finished_at
- Type
- timestamp
- Description
Время достижения задачей финального статуса, в миллисекундах Unix. До этого момента —
null.
- Name
- expires_at
- Type
- timestamp
- Description
Время истечения срока действия результата задачи, в миллисекундах Unix. Это значение равно
finished_atплюс 3 дня, либоcreated_atплюс 3 дня, пока задача не завершена. Для аккаунтов Enterprise, которые хранят результаты API бессрочно, это значение — примерно на 100 лет позже. См. Хранение ресурсов.
- Name
- preceding_tasks
- Type
- integer
- Description
Позиция задачи в очереди, пока она имеет статус
PENDING.1означает, что она будет выполнена следующей. После выхода задачи из очереди значение равно0, и в результатах списков оно всегда равно0.
- Name
- task_error
- Type
- object
- Description
Причина сбоя задачи. Равно
null, еслиstatusне равенFAILED. См. Ошибки.
- Name
- consumed_credits
- Type
- integer
- Description
Количество кредитов, списанных за задачу, с учётом любого возврата. Запрос, вернувший ошибку, не оплачивается. Для неудавшейся задачи значение равно
0, так как Meshy возвращает кредиты. Отмена задачи приводит к возврату кредитов только пока она находится в статусеPENDING. Если Meshy не может прочитать информацию о списании, в ответе на get-запрос или в потоковом ответе это поле отсутствует, а запрос списка возвращает500. В этом случае повторите запрос.
- Name
- model_urls
- Type
- object
- Description
URL-адреса для скачивания печатаемых файлов. Набор ключей зависит от
output.formatиoptions.light_source_preset.- Name
lamp_stl- Type
- string
- Description
URL-адрес для скачивания
lamp.stl. При использовании пресета крепления это абажур с открытой нижней частью и основанием, в котором есть отверстие для патрона. Еслиoptions.light_source_presetустановлено вnone, это единый запечатанный абажур. Присутствует, когдаoutput.formatравноstl.
- Name
base_stl- Type
- string
- Description
URL-адрес для скачивания
base.stl— крепления для патрона освещения. Присутствует, когдаoutput.formatравноstl, аoptions.light_source_presetне равноnone.
- Name
bundle_zip- Type
- string
- Description
URL-адрес для скачивания zip-файла с
lamp.stl, а также сbase.stlиresult.json, когда они применимы. Присутствует, когдаoutput.formatравноzip, и в этом случаеlamp_stlиbase_stlне включаются.