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 цього завдання в кінцеву точку build як 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 повертає прозорий RGBA PNG, щоб ви могли розмістити об'єкт на будь-якому фоні. Meshy також будує 3D-модель із зображення без його фону. Якщо Meshy не може видалити фон, використовується зображення з фоном, і завдання все одно виконується успішно.

Повернені значення

Поле result містить ID нового завдання прототипу. Отримайте завдання або відстежуйте його потоково, доки status не стане SUCCEEDED. Потім передайте ID у кінцеву точку build як 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

Створення завдання збірки Lamp

Генерує деталі, придатні для 3D-друку, з успішно виконаного завдання прототипу. Meshy масштабує модель прототипу до diameter_mm, зрізає низ рівно на cut_amount_percent та порожнить її до thickness_mm. Якщо вказано пресет кріплення, також відкриває низ, додає базову пластину з отвором для кріплення та створює окреме кріплення для світильника. Про поля завдання читайте в розділі Об'єкт завдання збірки Lamp.

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"
}
Build example
The build task turns the prototype's 3D model into printable lampshade parts.
Creative Lab Lamp build model preview
Build model preview

Параметри

  • Name
    input_task_id
    Type
    string
    Обов'язковий
    Description

    ID завдання прототипу для збірки. Це має бути завдання, створене вашим обліковим записом через POST /openapi/creative-lab/lamp/v1/prototype, зі статусом SUCCEEDED.

    ID, який не відповідає жодному з ваших завдань прототипу Lamp, створених через 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 не відповідає жодному завданню прототипу Lamp, створеному вашим обліковим записом через 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

Видалення задачі лампа

Скасовує задачу лампа. Скасування задачі зі статусом 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

    Задача лампа з таким 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)

Список задач лампи

Повертає ваші завдання лампи для одного етапу, по одній сторінці за раз. Шлях визначає етап. /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- або stream-запит це поле відсутнє, а запит списку повертає 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 робить модель порожнистою всередині та зрізає її нижню частину, роблячи її плоскою. За наявності пресету кріплення, 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. Це 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 не вдається прочитати інформацію про списання, поле відсутнє у відповіді на запит отримання або потокову передачу, а запит списку повертає 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 не вказуються.