Creative Lab — API для брелоків

Перетворіть вихідне фото на медальйон-брелок, придатний для 3D-друку — значок у формі кольорового рельєфу — у два етапи: прототип генерує кольорове концептуальне зображення з вашого вхідного фото, потім збірка перетворює це концептуальне зображення на рельєфну 3D-модель. Два етапи пов'язані через input_task_id.

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

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

Створення прототипу завдання для брелока

Генеруйте одне кольорове концептуальне зображення з вихідної фотографії. Повернутий ідентифікатор завдання - це те, що ви передаєте як input_task_id до кінцевої точки збірки. Зверніться до Об'єкт завдання прототипу брелока для форми відповіді.

Параметри

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

    Вихідна фотографія для Meshy, щоб перетворити її на концептуальне зображення, готове до брелока. Ми наразі підтримуємо формати .jpg, .jpeg, .png та .webp.

    Існує два способи надати зображення:

    • Публічно доступний URL: URL, доступний з публічного інтернету.
    • Data URI: Базове64-кодоване Data URI зображення. Приклад Data URI: data:image/jpeg;base64,<your base64-encoded image data>.
  • Name
    name
    Type
    string
    Description

    Необов'язкова назва завдання для відображення. Максимум 100 символів.

  • Name
    remove_background
    Type
    boolean
    за замовчуванням false
    Description

    Коли встановлено true, прототип зображення повертається як прозорий RGBA PNG з видаленим фоном, щоб ви могли накласти об'єкт на будь-який фон.

    Це контролює лише зображення, яке повертає ця кінцева точка. Це окремо від опції збірки з тією ж назвою (за замовчуванням true), яка контролює видалення фону перед рельєфом.

Повертає

Властивість result відповіді містить ідентифікатор завдання id новоствореного завдання прототипу брелока. Опитуйте Отримати завдання кінцеву точку або підпишіться на потік, поки завдання не досягне SUCCEEDED, потім передайте цей ID до кінцевої точки збірки як input_task_id.

Режими відмови

  • Name
    400 - Bad Request
    Description

    Запит був неприйнятним. Поширені причини:

    • Відсутній параметр: image_url є обов'язковим.
    • Неправильний формат зображення: Наданий image_url не є підтримуваним форматом (.jpg, .jpeg, .png, .webp).
    • Розміри зображення поза діапазоном: Зображення занадто мале, перевищує максимальний розмір файлу або перевищує максимальну кількість пікселів.
    • Недоступний URL: image_url не вдалося завантажити (404 або timeout).
    • Неправильний Data URI: Базове64-рядок пошкоджено.
    • Зміст позначено: Вхідне зображення було позначено як NSFW або порушення інтелектуальної власності.
  • Name
    401 - Unauthorized
    Description

    Автентифікація не вдалася. Будь ласка, перевірте ваш API key.

  • Name
    402 - Payment Required
    Description

    Недостатньо кредитів для виконання цього завдання.

  • Name
    429 - Too Many Requests
    Description

    Ви перевищили своє обмеження частоти.

Запит

POST
/openapi/creative-lab/keychain/v1/prototype
# Stage 1: generate a colorized keychain concept image
curl https://api.meshy.ai/openapi/creative-lab/keychain/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>"
  }'

Відповідь

{
  "result": "018a210d-8ba4-705c-b111-1f1776f7f578"
}
Приклад прототипу
Почніть з вихідної фотографії, потім створіть прототип зображення, яке використовується на етапі збірки брелока.
Вихідна фотографія, використана як вхідний елемент Creative Lab Keychain
Вхідний прототип
Вихідний прототип Creative Lab Keychain, створений з вихідної фотографії
Вихідний прототип

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

Створення Завдання на Побудову Брелока

Генеруйте фінальний 3D-друкований медальйон брелока з успішного прототипного завдання. Побудова запускає конвеєр рельєфу на основі карти глибини на кольоровому концептуальному зображенні прототипу та відправляє один артефакт сітки у форматі, який ви запитуєте. Зверніться до Об'єкт Завдання на Побудову Брелока для форми відповіді.

Параметри

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

    Ідентифікатор завдання прототипу, створеного через цю ж кінцеву точку OpenAPI. Прототип повинен бути створений з тим самим API-ключем, досягти SUCCEEDED і мати рівно одне кандидатське зображення.

    Прототипні завдання, створені через веб-додаток, не приймаються — кінцева точка побудови приймає лише прототипні завдання, створені за допомогою POST /openapi/creative-lab/keychain/v1/prototype і відхиляє будь-яке інше джерело з 404.

  • Name
    name
    Type
    string
    Description

    Необов'язкова назва завдання для відображення. Максимум 100 символів.

options

Необов'язкові параметри налаштування для рельєфної геометрії. Кожне поле має розумне значення за замовчуванням — надсилайте лише ті, які ви хочете перевизначити.

  • Name
    badge_shape
    Type
    string
    за замовчуванням circle
    Description

    Контур силуету медальйона брелока. Доступні значення:

    • circle (за замовчуванням)
    • rounded-rect
    • hexagon
    • shield
    • star
  • Name
    size_mm
    Type
    number
    за замовчуванням 40
    Description

    Довжина ребра обмежувального квадрата брелока, в міліметрах. Діапазон: (0, 400].

  • Name
    relief_height_mm
    Type
    number
    за замовчуванням 2.2
    Description

    Максимальна висота рельєфу над основою, в міліметрах. Діапазон: [0, 20].

  • Name
    relief_offset_mm
    Type
    number
    за замовчуванням 0
    Description

    Вертикальне зміщення, застосоване до рельєфу перед екструзією, в міліметрах. Діапазон: [0, 20].

  • Name
    base_thickness_mm
    Type
    number
    за замовчуванням 0.1
    Description

    Товщина плоскої основи за рельєфом, в міліметрах. Діапазон: [0, 20].

  • Name
    has_closed_back
    Type
    boolean
    за замовчуванням true
    Description

    Чи запечатана задня частина медальйона як закрита поверхня. Встановіть false для відкритої оболонки.

  • Name
    relief_curve
    Type
    string
    за замовчуванням linear
    Description

    Крива передачі, що відображає значення карти глибини на висоту рельєфу. Доступні значення:

    • linear (за замовчуванням)
    • gamma
    • s-curve
  • Name
    curve_param
    Type
    number
    за замовчуванням 1.0
    Description

    Параметр форми для кривої передачі (має значення лише коли relief_curve є gamma). Діапазон: (0, 10].

  • Name
    invert_depth
    Type
    boolean
    за замовчуванням false
    Description

    Інвертувати інтерпретацію карти глибини, щоб темніші області ставали вищим рельєфом.

  • Name
    smoothing
    Type
    number
    за замовчуванням 0.24
    Description

    Сила згладжування, застосована до карти глибини перед вилученням рельєфу. Діапазон: [0, 10].

  • Name
    relief_scale
    Type
    number
    за замовчуванням 1.0
    Description

    Множник вертикального масштабу, застосований поверх relief_height_mm. Діапазон: (0, 10].

  • Name
    depth_threshold
    Type
    number
    за замовчуванням 0.1
    Description

    Низькочастотний поріг для значень карти глибини; все, що нижче цього, обрізається до нуля. Діапазон: [0, 1].

  • Name
    remove_background
    Type
    boolean
    за замовчуванням true
    Description

    Автоматично видаляти фон концептуального зображення прототипу перед рельєфом.

    Відрізняється від параметра прототипу з тією ж назвою (за замовчуванням false), який контролює, чи повертається саме зображення прототипу з прозорістю.

  • Name
    export_resolution
    Type
    integer
    за замовчуванням 512
    Description

    Роздільна здатність сітки, використана для експорту. Діапазон: [64, 2048].

output

Необов'язковий селектор формату передачі. За замовчуванням glb.

  • Name
    format
    Type
    string
    за замовчуванням glb
    Description

    Пакет артефактів, повернутий побудовою. Доступні значення:

    • glb (за замовчуванням) — повертає один model.glb під model_urls.glb.
    • obj — архівує model.obj + model.mtl + texture.png і повертає пакет під model_urls.obj.
    • zip — архівує кожен артефакт, який генерує генератор, і повертає пакет під model_urls.bundle_zip.

Повертає

Властивість result відповіді містить ідентифікатор завдання id новоствореного завдання на побудову брелока. Опитуйте кінцеву точку Отримати Завдання або підпишіться на потік, поки завдання не досягне SUCCEEDED, а потім завантажте артефакт з єдиного запису в model_urls.

Режими Помилок

  • Name
    400 - Bad Request
    Description

    Запит був неприйнятним. Поширені причини:

    • Відсутній параметр: input_task_id є обов'язковим.
    • Недійсний UUID: input_task_id не є дійсним UUID.
    • Батьківське завдання не успішне: Зазначене прототипне завдання ще не досягло SUCCEEDED.
    • Немає кандидата: Прототипне завдання успішне, але не створило кандидатського зображення.
    • Параметри поза діапазоном: Одне з полів options вийшло за межі дозволеного діапазону або набору перерахувань.
  • Name
    401 - Unauthorized
    Description

    Автентифікація не вдалася. Будь ласка, перевірте ваш API-ключ.

  • Name
    402 - Payment Required
    Description

    Недостатньо кредитів для виконання цього завдання.

  • Name
    404 - Not Found
    Description

    Зазначене прототипне завдання не існує, належить іншому користувачу або було створено через веб-додаток (лише прототипні завдання в режимі API переходять у побудову).

  • Name
    429 - Too Many Requests
    Description

    Ви перевищили своє обмеження частоти.

Запит

POST
/openapi/creative-lab/keychain/v1/build
# Stage 2: chain build off a succeeded prototype task
curl https://api.meshy.ai/openapi/creative-lab/keychain/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": {
      "badge_shape": "circle",
      "size_mm": 40,
      "relief_height_mm": 2.5
    },
    "output": {
      "format": "glb"
    }
  }'

Відповідь

{
  "result": "019c320e-9a8f-7a1c-9c11-2a1876f8a9bb"
}
Приклад побудови
Завдання на побудову перетворює вибране зображення прототипу в 3D-друковану модель брелока.
Попередній перегляд моделі побудови брелока Creative Lab
Попередній перегляд моделі побудови

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

Отримання завдання брелока

Отримайте прототип або завдання збірки, вказавши дійсний id завдання. Шлях URL повинен відповідати стадії завдання — завдання збірки, отримане через /prototype/:id, поверне 404, і навпаки.

Зверніться до Об'єкт завдання прототипу брелока та Об'єкт завдання збірки брелока для формату відповіді.

Параметри

  • Name
    id
    Type
    path
    Description

    Унікальний ідентифікатор завдання брелока для отримання.

Повертає

Відповідь містить об'єкт завдання брелока. Формат залежить від запитаної стадії.

Запит

GET
/openapi/creative-lab/keychain/v1/prototype/018a210d-8ba4-705c-b111-1f1776f7f578
# Prototype
curl https://api.meshy.ai/openapi/creative-lab/keychain/v1/prototype/018a210d-8ba4-705c-b111-1f1776f7f578 \
  -H "Authorization: Bearer ${YOUR_API_KEY}"

# Build
curl https://api.meshy.ai/openapi/creative-lab/keychain/v1/build/019c320e-9a8f-7a1c-9c11-2a1876f8a9bb \
  -H "Authorization: Bearer ${YOUR_API_KEY}"

Відповідь прототипу

{
  "id": "018a210d-8ba4-705c-b111-1f1776f7f578",
  "type": "creative-lab-keychain-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": 6,
  "image_urls": [
    "https://assets.meshy.ai/***/concept.png?Expires=***"
  ]
}

Відповідь збірки

{
  "id": "019c320e-9a8f-7a1c-9c11-2a1876f8a9bb",
  "type": "creative-lab-keychain-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": 20,
  "model_urls": {
    "glb": "https://assets.meshy.ai/***/tasks/019c320e-9a8f-7a1c-9c11-2a1876f8a9bb/output/model.glb?Expires=***"
  }
}

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

Видалити завдання брелока

Скасувати завдання брелока. Якщо завдання ще PENDING, кредити, спожиті під час створення, повертаються. Завдання, які вже IN_PROGRESS, скасовуються без повернення (виконавець може вже використовувати ресурси). Завдання, які вже досягли кінцевого стану (SUCCEEDED, FAILED, CANCELED), не можуть бути скасовані.

Шлях URL повинен відповідати стадії завдання — DELETE на /prototype/:buildId повертає 404.

Параметри шляху

  • Name
    id
    Type
    path
    Description

    Унікальний ідентифікатор завдання брелока для скасування.

Повертає

Повертає 204 No Content у разі успіху з порожнім тілом.

Режими відмови

  • Name
    400 - Bad Request
    Description

    Завдання вже знаходиться в кінцевому стані і не може бути скасоване.

  • Name
    404 - Not Found
    Description

    Завдання не існує, належить іншому користувачеві або його стадія не відповідає шляху URL.

Запит

DELETE
/openapi/creative-lab/keychain/v1/prototype/018a210d-8ba4-705c-b111-1f1776f7f578
curl --request DELETE \
  --url https://api.meshy.ai/openapi/creative-lab/keychain/v1/prototype/018a210d-8ba4-705c-b111-1f1776f7f578 \
  -H "Authorization: Bearer ${YOUR_API_KEY}"

Відповідь

// Returns 204 No Content on success (empty body).

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

Трансляція завдання брелока

Трансляція оновлень у реальному часі для завдання брелока через Server-Sent Events (SSE). Шлях URL повинен відповідати етапу завдання — відкриття трансляції на /prototype/:buildId/stream видає один event: error корисне навантаження з status_code: 404 і закриває трансляцію.

Параметри

  • Name
    id
    Type
    path
    Description

    Унікальний ідентифікатор для завдання брелока для трансляції.

Повертає

Повертає потік об'єктів завдань Keychain Prototype або Keychain Build як Server-Sent Events. Для завдань зі статусом PENDING або IN_PROGRESS, потік відповіді включатиме лише необхідні поля progress і status.

Запит

GET
/openapi/creative-lab/keychain/v1/build/019c320e-9a8f-7a1c-9c11-2a1876f8a9bb/stream
curl -N https://api.meshy.ai/openapi/creative-lab/keychain/v1/build/019c320e-9a8f-7a1c-9c11-2a1876f8a9bb/stream \
-H "Authorization: Bearer ${YOUR_API_KEY}"

Потік відповіді

// 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.
// For PENDING or IN_PROGRESS tasks, the response stream will not include all fields.
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-keychain-build",
  "status": "SUCCEEDED",
  "progress": 100,
  "created_at": 1729123500000,
  "started_at": 1729123510000,
  "finished_at": 1729123535000,
  "expires_at": 1729382735000,
  "task_error": null,
  "consumed_credits": 20,
  "model_urls": {
    "glb": "https://assets.meshy.ai/***/tasks/019c320e-9a8f-7a1c-9c11-2a1876f8a9bb/output/model.glb?Expires=***"
  }
}

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

Перелік завдань брелока

Отримайте пагінований список ваших завдань брелока для одного етапу. Шлях URL вибирає етап — /prototype повертає завдання прототипу; /build повертає завдання збірки. Завдання з іншого етапу не включені в жодну з відповідей.

Параметри шляху

  • Name
    stage
    Type
    path
    Обов'язковий
    Description

    Або prototype, або build. Колекція повертає лише завдання, етап яких відповідає URL — запит /prototype ніколи не повертає завдання збірки і навпаки.

Параметри запиту

  • Name
    page_num
    Type
    integer
    за замовчуванням 1
    Description

    Номер сторінки для пагінації.

  • Name
    page_size
    Type
    integer
    за замовчуванням 10
    Description

    Обмеження розміру сторінки. Максимально дозволено 50 елементів.

  • Name
    sort_by
    Type
    string
    за замовчуванням -created_at
    Description

    Поле для сортування. Доступні значення:

    • +created_at: Сортувати за часом створення у зростаючому порядку.
    • -created_at: Сортувати за часом створення у спадному порядку.

Повертає

Повертає пагінований список об'єктів завдань за етапами — або об'єкт завдання прототипу брелока при переліку /prototype, або об'єкт завдання збірки брелока при переліку /build.

Запит

GET
/openapi/creative-lab/keychain/v1/prototype
# List prototype tasks
curl https://api.meshy.ai/openapi/creative-lab/keychain/v1/prototype?page_size=10 \
  -H "Authorization: Bearer ${YOUR_API_KEY}"

# List build tasks
curl https://api.meshy.ai/openapi/creative-lab/keychain/v1/build?page_size=10 \
  -H "Authorization: Bearer ${YOUR_API_KEY}"

Відповідь (Перелік завдань прототипу)

[
  {
    "id": "018a210d-8ba4-705c-b111-1f1776f7f578",
    "type": "creative-lab-keychain-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": 6,
    "image_urls": [
      "https://assets.meshy.ai/***/concept.png?Expires=***"
    ]
  }
]

Об'єкт Завдання Прототипу Брелока

Об'єкт Завдання Прототипу Брелока є одиницею роботи, за якою Meshy стежить для генерації кольорового концептуального зображення з вихідного фото. Вихід цього етапу з'єднується з етапом створення через input_task_id.

Властивості

  • Name
    id
    Type
    string
    Description

    Унікальний ідентифікатор для завдання. Хоча ми використовуємо k-сортований UUID для ідентифікаторів завдань як деталь реалізації, ви не повинні робити жодних припущень щодо формату id.

  • Name
    type
    Type
    string
    Description

    Тип завдання. Значення — creative-lab-keychain-prototype.

  • Name
    name
    Type
    string
    Description

    Ім'я завдання, надане під час створення завдання. Порожній рядок, якщо ім'я не було надано.

  • Name
    status
    Type
    string
    Description

    Статус завдання. Можливі значення: PENDING, IN_PROGRESS, SUCCEEDED, FAILED, CANCELED.

  • Name
    progress
    Type
    integer
    Description

    Прогрес завдання. Якщо завдання ще не розпочато, ця властивість буде 0. Після успішного завершення завдання це значення стане 100.

  • Name
    created_at
    Type
    timestamp
    Description

    Мітка часу створення завдання, у мілісекундах.

  • Name
    started_at
    Type
    timestamp
    Description

    Мітка часу початку завдання, у мілісекундах. Якщо завдання ще не розпочато, ця властивість буде 0.

  • Name
    finished_at
    Type
    timestamp
    Description

    Мітка часу завершення завдання, у мілісекундах. Якщо завдання ще не завершено, ця властивість буде 0.

  • Name
    expires_at
    Type
    timestamp
    Description

    Мітка часу, коли результат завдання закінчується, у мілісекундах.

  • Name
    preceding_tasks
    Type
    integer
    Description

    Кількість попередніх завдань.

  • Name
    task_error
    Type
    object
    Description

    Деталі помилки для невдалих завдань. Дивіться Помилки для повної довідки по об'єкту task_error.

  • Name
    consumed_credits
    Type
    integer
    Description

    Кількість кредитів, спожитих цим завданням. Присутня, коли статус завдання PENDING, IN_PROGRESS або SUCCEEDED. Повертає 0 для завдань FAILED (кредити повертаються у разі невдачі).

  • Name
    image_urls
    Type
    array of strings
    Description

    Завантажувані URL-адреси для кандидатів концептуальних зображень, згенерованих цим прототипним завданням. Наразі API завжди повертає рівно одного кандидата; поле є масивом, щоб у майбутніх версіях можна було відобразити кілька кандидатів без порушення сумісності.

Приклад Об'єкта Завдання Прототипу Брелока

{
  "id": "018a210d-8ba4-705c-b111-1f1776f7f578",
  "type": "creative-lab-keychain-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": 6,
  "image_urls": [
    "https://assets.meshy.ai/***/concept.png?Expires=***"
  ]
}

Об'єкт Завдання Створення Брелока

Об'єкт Завдання Створення Брелока — це одиниця роботи, за якою Meshy стежить для генерації фінальної 3D сітки брелока з успішного прототипного завдання. Створення запускає конвеєр рельєфу карти глибини на концептуальному зображенні прототипу та публікує єдиний артефакт сітки у форматі, запитуваному викликачем.

Властивості

  • Name
    id
    Type
    string
    Description

    Унікальний ідентифікатор для завдання.

  • Name
    type
    Type
    string
    Description

    Тип завдання. Значення — creative-lab-keychain-build.

  • Name
    name
    Type
    string
    Description

    Ім'я завдання, надане при створенні завдання. Порожній рядок, якщо ім'я не було надано.

  • Name
    status
    Type
    string
    Description

    Статус завдання. Можливі значення: PENDING, IN_PROGRESS, SUCCEEDED, FAILED, CANCELED.

  • Name
    progress
    Type
    integer
    Description

    Прогрес завдання. Якщо завдання ще не розпочато, ця властивість буде 0. Після успішного завершення завдання, це значення стане 100.

  • Name
    created_at
    Type
    timestamp
    Description

    Мітка часу створення завдання, у мілісекундах.

  • Name
    started_at
    Type
    timestamp
    Description

    Мітка часу початку завдання, у мілісекундах.

  • Name
    finished_at
    Type
    timestamp
    Description

    Мітка часу завершення завдання, у мілісекундах.

  • Name
    expires_at
    Type
    timestamp
    Description

    Мітка часу, коли результат завдання закінчується, у мілісекундах.

  • Name
    preceding_tasks
    Type
    integer
    Description

    Кількість попередніх завдань. Має значення лише коли статус — PENDING.

  • Name
    task_error
    Type
    object
    Description

    Деталі помилки для невдалих завдань. Дивіться Помилки для повної довідки по об'єкту task_error.

  • Name
    consumed_credits
    Type
    integer
    Description

    Кількість кредитів, спожитих цим завданням. Повертає 0 для завдань зі статусом FAILED (кредити повертаються у разі невдачі).

  • Name
    model_urls
    Type
    object
    Description

    Завантажувані URL-адреси для згенерованого артефакту, ключовані за назвою артефакту. Завжди містить рівно один запис — формат, запитуваний через output.format запиту створення. Ключ відповідає запитуваному формату:

    • Name
      glb
      Type
      string
      Description

      Завантажувана URL-адреса до GLB файлу. Присутня, коли output.format був glb (за замовчуванням).

    • Name
      obj
      Type
      string
      Description

      Завантажувана URL-адреса до zip-архіву, що містить model.obj, model.mtl та texture.png. Присутня, коли output.format був obj.

    • Name
      bundle_zip
      Type
      string
      Description

      Завантажувана URL-адреса до zip-архіву всіх артефактів, які генерує генератор. Присутня, коли output.format був zip.

Example Keychain Build Task Object

{
  "id": "019c320e-9a8f-7a1c-9c11-2a1876f8a9bb",
  "type": "creative-lab-keychain-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": 20,
  "model_urls": {
    "glb": "https://assets.meshy.ai/***/tasks/019c320e-9a8f-7a1c-9c11-2a1876f8a9bb/output/model.glb?Expires=***"
  }
}