lowpoly будет отключён 30 окт. 2026 г.. Перейдите на другую модель до этих дат, чтобы избежать ошибок в запросах. Все устаревшие функции

API лампы Creative Lab

Превратите фотографию в 3D-печатаемый абажур лампы в два этапа. Задача прототипа генерирует концептуальное изображение в матово-белом цвете и преобразует его в 3D-модель. Задача сборки, которая принимает ID задачи прототипа в качестве input_task_id, превращает эту модель в печатаемые части STL. При использовании пресета крепления по умолчанию, частями являются абажур с открытым дном с базовой пластиной для осветительного прибора и крепление для него.

  • POST /openapi/creative-lab/lamp/v1/prototype
  • POST /openapi/creative-lab/lamp/v1/build

POST/openapi/creative-lab/lamp/v1/prototype

Создание задачи прототипа лампы

Генерирует одно матово-белое концептуальное изображение по фото и превращает его в 3D-модель абажура лампы. Задача возвращает концептуальное изображение в image_urls, а модель — в model_urls.glb с превью в thumbnail_url. Чтобы собрать печатные детали, передайте ID этой задачи в эндпоинт сборки как input_task_id. Описание полей задачи см. в разделе Объект задачи прототипа лампы.

Request

POST
/openapi/creative-lab/lamp/v1/prototype
# 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"
}
Prototype example
Start with a source photo. The prototype returns the concept image and the 3D model that the build stage processes.
Source cat photo used as the Creative Lab Lamp input
Prototype input
Creative Lab Lamp prototype output generated from the source photo
Prototype output

Параметры

  • 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 не создаёт задачу и возвращает любые списанные кредиты. Повторите запрос.


POST/openapi/creative-lab/lamp/v1/build

Create a Lamp build task

Создаёт 3D-печатаемые детали на основе успешно выполненной задачи-прототипа. Meshy масштабирует модель прототипа до diameter_mm, обрезает низ по cut_amount_percent, делая его плоским, и делает полым до thickness_mm. Если указан пресет крепления, Meshy также открывает низ, добавляет базовую пластину с отверстием для крепления и создаёт отдельное крепление для источника света. Описание полей задачи см. в разделе Объект задачи сборки лампы.

Request

POST
/openapi/creative-lab/lamp/v1/build
# 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"
}
Пример сборки
Задача сборки превращает 3D-модель прототипа в печатаемые детали абажура.
Предпросмотр модели сборки лампы Creative Lab
Предпросмотр модели сборки

Параметры

  • 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_stl
    • none: единый герметичный абажур в 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 не равен none
    • zip: один 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

    Достигнут один из следующих лимитов:

    • Вы отправили больше запросов, чем допускает ваше ограничение частоты. Подождите несколько секунд, затем повторите попытку. См. Ограничения частоты.
    • Слишком много ваших задач находится в очереди или выполняется. Дождитесь завершения некоторых из них, затем повторите попытку.
    • На безлимитном плане без оставшихся кредитов вы достигли количества задач, которые могут выполняться без кредитов. Дождитесь завершения задачи или добавьте кредиты.

GET/openapi/creative-lab/lamp/v1/(prototype|build)/:id

Получить задачу Lamp

Возвращает задачу прототипа или сборки. Путь должен соответствовать стадии задачи. Задача сборки, запрошенная через /prototype/:id, вернёт 404, как и задача прототипа, запрошенная через /build/:id.

Описание полей см. в разделах Объект задачи прототипа Lamp и Объект задачи сборки Lamp.

Request

GET
/openapi/creative-lab/lamp/v1/prototype/018a210d-8ba4-705c-b111-1f1776f7f578
# 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 задачи. Отправьте ID result из ответа при создании.

  • 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 не удалось выполнить проверку интеллектуальной собственности. Повторите запрос.


DELETE/openapi/creative-lab/lamp/v1/(prototype|build)/:id

Удаление задачи Lamp

Отменяет задачу Lamp. Отмена задачи со статусом PENDING возвращает потраченные на неё кредиты. Задача со статусом IN_PROGRESS отменяется без возврата кредитов, так как воркер уже приступил к её выполнению. Задачу с финальным статусом (SUCCEEDED, FAILED или CANCELED) отменить нельзя.

Путь должен соответствовать этапу задачи. Например, вызов DELETE по адресу /prototype/:id с ID задачи этапа build вернёт 404.

Request

DELETE
/openapi/creative-lab/lamp/v1/prototype/018a210d-8ba4-705c-b111-1f1776f7f578
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 задачи. Отправьте ID result из ответа на создание задачи.
    • Задача уже имеет финальный статус (SUCCEEDED, FAILED или CANCELED), поэтому её нельзя отменить.
  • Name
    404 - Not Found
    Description

    Задача Lamp с таким ID не принадлежит вашему аккаунту, либо этап задачи не соответствует указанному пути. Проверьте ID и используйте /prototype или /build в соответствии с этапом задачи.


GET/openapi/creative-lab/lamp/v1/(prototype|build)/:id/stream

Трансляция задачи Lamp

Транслирует обновления задачи Lamp в виде Server-Sent Events (SSE). Путь должен соответствовать этапу задачи. Если это не так, например, если ID задачи сборки (build) передан в /prototype/:id/stream, поток отправляет одно событие error со status_code: 404 и закрывается.

Request

GET
/openapi/creative-lab/lamp/v1/build/019c320e-9a8f-7a1c-9c11-2a1876f8a9bb/stream
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-запрос.


GET/openapi/creative-lab/lamp/v1/(prototype|build)

Список задач Lamp

Возвращает задачи Lamp для одного этапа, по одной странице за раз. Этап определяется путём. /prototype возвращает только задачи этапа прототипа, а /build возвращает только задачи этапа сборки.

Request

GET
/openapi/creative-lab/lamp/v1/prototype
# 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_error
    • CANCELED: завершено, без результата
  • 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_error
    • CANCELED: финальный статус, без результата
  • 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 не включаются.