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 цього завдання в кінцеву точку build як 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повертає прозорий 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 не створює завдання та повертає будь-які списані кредити. Повторіть запит.
Створення завдання збірки Lamp
Генерує деталі, придатні для 3D-друку, з успішно виконаного завдання прототипу. Meshy масштабує модель прототипу до diameter_mm, зрізає низ рівно на cut_amount_percent та порожнить її до thickness_mm. Якщо вказано пресет кріплення, також відкриває низ, додає базову пластину з отвором для кріплення та створює окреме кріплення для світильника. Про поля завдання читайте в розділі Об'єкт завдання збірки Lamp.
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, який не відповідає жодному з ваших завдань прототипу 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_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не відповідає жодному завданню прототипу Lamp, створеному вашим обліковим записом через API. Прототип, створений у веб-застосунку, також повертає404. Надішліть IDresultз відповіді на створення прототипу.
- 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 не вдалося виконати перевірку інтелектуальної власності. Повторіть запит.
Видалення задачі лампа
Скасовує задачу лампа. Скасування задачі зі статусом 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
Задача лампа з таким 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.
Список задач лампи
Повертає ваші завдання лампи для одного етапу, по одній сторінці за раз. Шлях визначає етап. /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- або 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_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 не вдається прочитати інформацію про списання, поле відсутнє у відповіді на запит отримання або потокову передачу, а запит списку повертає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не вказуються.