Creative Lab — Lamp API

Ubah foto sumber menjadi kap lampu yang siap dicetak 3D dalam dua tahap: prototype menghasilkan gambar konsep bergaya matte-white dan mengubahnya menjadi model 3D berongga (GLB), lalu build menjalankan lamp processor pada model tersebut untuk menghasilkan bagian STL yang siap dicetak — sebuah kap lampu dengan bagian bawah terbuka dan pelat dasar untuk fixture sumber cahaya, ditambah dudukan fixture itu sendiri. Kedua tahap ini terhubung melalui input_task_id.

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

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

Membuat Lamp Prototype Task

Menghasilkan satu gambar konsep matte-white dari foto referensi dan mengonversinya menjadi model 3D lampshade berongga. Respons membawa baik gambar konsep (image_urls) maupun model 3D (model_urls.glb dengan thumbnail_url). ID task yang dikembalikan adalah yang Anda gunakan sebagai input_task_id untuk endpoint build. Lihat The Lamp Prototype Task Object untuk bentuk responsnya.

Parameter

  • Name
    image_url
    Type
    string
    Wajib
    Description

    Foto sumber yang digunakan Meshy sebagai referensi visual untuk lampshade. Kami saat ini mendukung format .jpg, .jpeg, .png, dan .webp.

    Ada dua cara untuk menyediakan gambar:

    • URL yang dapat diakses secara publik: URL yang dapat diakses dari internet publik.
    • Data URI: Data URI gambar yang dienkode base64. Contoh data URI: data:image/jpeg;base64,<data gambar Anda yang dienkode base64>.
  • Name
    image_subject
    Type
    string
    default character
    Description

    Petunjuk kategori subjek yang memilih prompt stylization. Nilai yang tersedia:

    • character (default) — subjek karakter tunggal / objek (figur, hewan, maskot, dll.).
    • landscape — subjek adegan luar ruangan / panorama (gunung, lanskap kota, hutan, dll.).
  • Name
    name
    Type
    string
    Description

    Nama task opsional untuk keperluan tampilan. Maksimal 100 karakter.

  • Name
    remove_background
    Type
    boolean
    default false
    Description

    Ketika disetel ke true, gambar prototipe dikembalikan sebagai PNG RGBA transparan dengan latar belakang dihapus, sehingga Anda dapat menggabungkan subjek ke latar belakang apa pun.

Returns

Properti result dari respons berisi id task dari lamp prototype task yang baru dibuat. Poll endpoint Get a Task atau berlangganan ke stream hingga task mencapai SUCCEEDED, lalu berikan ID tersebut ke build endpoint sebagai input_task_id.

Mode Kegagalan

  • Name
    400 - Bad Request
    Description

    Permintaan tidak dapat diterima. Penyebab umum:

    • Parameter hilang: image_url wajib diisi.
    • Format gambar tidak valid: image_url yang diberikan bukan format yang didukung (.jpg, .jpeg, .png, .webp).
    • Dimensi gambar di luar rentang: Gambar terlalu kecil, melebihi ukuran file maksimum, atau melebihi jumlah piksel maksimum.
    • URL tidak dapat dijangkau: image_url tidak dapat diunduh (404 atau timeout).
    • Data URI tidak valid: String base64 salah format.
    • Konten ditandai: Gambar input ditandai oleh moderation NSFW atau kekayaan intelektual.
    • image_subject tidak valid: Bukan salah satu dari character / landscape.
  • Name
    401 - Unauthorized
    Description

    Autentikasi gagal. Silakan periksa kunci API Anda.

  • Name
    402 - Payment Required
    Description

    Kredit tidak mencukupi untuk melakukan task ini.

  • Name
    429 - Too Many Requests
    Description

    Anda telah melebihi batas laju Anda.

Request

POST
/openapi/creative-lab/lamp/v1/prototype
# Stage 1: concept image + hollow 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 a hollow 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

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

Buat Tugas Build Lamp

Menghasilkan bagian-bagian 3D-printable akhir dari tugas prototipe yang berhasil. Proses build menjalankan lamp processor pada model 3D prototipe: proses ini menskalakan model ke diameter_mm, meratakan bagian bawah sebesar cut_amount_percent, membuatnya berongga hingga thickness_mm, membuka bagian bawah, dan — ketika preset fixture dipilih — menambahkan pelat dasar dengan lubang fixture dan mount terpisah untuk sumber cahaya. Lihat The Lamp Build Task Object untuk bentuk respons.

Parameter

  • Name
    input_task_id
    Type
    string
    Wajib
    Description

    ID tugas dari sebuah tugas prototipe yang dibuat melalui endpoint OpenAPI yang sama. Prototipe tersebut harus dibuat dengan kunci API yang sama, harus telah mencapai status SUCCEEDED, dan harus telah menghasilkan model 3D.

    Tugas prototipe yang dibuat melalui webapp tidak diterima — endpoint build hanya menerima tugas prototipe yang dihasilkan oleh POST /openapi/creative-lab/lamp/v1/prototype dan menolak sumber lain dengan 404.

  • Name
    name
    Type
    string
    Description

    Nama tugas opsional untuk keperluan tampilan. Maksimal 100 karakter.

options

Parameter penyesuaian opsional untuk geometri kap lampu. Setiap field memiliki nilai default yang masuk akal — kirim hanya field yang ingin Anda timpa.

  • Name
    diameter_mm
    Type
    number
    default 150
    Description

    Dimensi maksimum target dari kotak pembatas kap lampu, dalam milimeter. Mesh diskalakan secara seragam agar sesuai. Rentang: [50, 400].

  • Name
    thickness_mm
    Type
    number
    default 1
    Description

    Ketebalan dinding dari kap lampu yang berongga, dalam milimeter. Rentang: (0, 10].

  • Name
    cut_amount_percent
    Type
    number
    default 1
    Description

    Persentase tinggi model yang dipotong rata di bagian bawah, sehingga kap lampu dapat diletakkan di atas print bed dan memiliki bukaan untuk fixture. Rentang: [1, 100].

  • Name
    light_source_preset
    Type
    string
    default bambu_mh001_60mm
    Description

    Preset fixture sumber cahaya yang menentukan bagaimana bagian bawah dibangun. Nilai yang tersedia:

    • bambu_mh001_60mm (default) — kap lampu dengan bagian bawah terbuka ditambah pelat dasar yang membawa lubang fixture 60 mm, keduanya berada di model_urls.lamp_stl, dan mount fixture sebagai model_urls.base_stl.
    • none — satu kap lampu tertutup rapat di model_urls.lamp_stl; model_urls.base_stl dihilangkan.
  • Name
    fixture_offset_x_mm
    Type
    number
    default 0
    Description

    Offset sumbu X dari lubang fixture pada pelat dasar, relatif terhadap pusat kap lampu, dalam milimeter. Hanya berarti ketika light_source_presetnone. Rentang: [-80, 80].

  • Name
    fixture_offset_z_mm
    Type
    number
    default 0
    Description

    Offset sumbu Z (kedalaman) dari lubang fixture pada pelat dasar, relatif terhadap pusat kap lampu, dalam milimeter. Hanya berarti ketika light_source_presetnone. Rentang: [-80, 80].

  • Name
    rotate_x_deg
    Type
    number
    default 0
    Description

    Rotasi mengelilingi sumbu X yang diterapkan pada model sebelum diproses, dalam derajat. Ketiga rotasi diterapkan sebagai sudut Euler XYZ mengelilingi pusat model. Rentang: [-360, 360].

  • Name
    rotate_y_deg
    Type
    number
    default 0
    Description

    Rotasi mengelilingi sumbu Y yang diterapkan pada mesh yang diimpor sebelum diproses, dalam derajat. Rentang: [-360, 360].

  • Name
    rotate_z_deg
    Type
    number
    default 0
    Description

    Rotasi mengelilingi sumbu Z yang diterapkan pada mesh yang diimpor sebelum diproses, dalam derajat. Rentang: [-360, 360].

  • Name
    include_result_json
    Type
    boolean
    default false
    Description

    Ketika true dan output.format adalah zip, menyertakan result.json dari lamp processor (nama pipeline, peringatan, dan jalur artefak) di dalam bundel. Diabaikan ketika output.format adalah stl.

output

Selektor format keluaran opsional. Default-nya adalah stl.

  • Name
    format
    Type
    string
    default stl
    Description

    Bundel artefak yang dikembalikan oleh build. Nilai yang tersedia:

    • stl (default) — mengembalikan model_urls.lamp_stl (kap lampu, beserta pelat dasar ketika preset fixture ditetapkan), ditambah model_urls.base_stl ketika light_source_presetnone.
    • zip — mengemas setiap artefak yang dihasilkan oleh processor (lamp.stl, base.stl opsional, result.json opsional) ke dalam satu file zip dan mengembalikannya di bawah model_urls.bundle_zip.

Pengembalian

Properti result dari respons berisi id tugas dari tugas build lampu yang baru dibuat. Poll endpoint Get a Task atau berlangganan ke stream hingga tugas mencapai status SUCCEEDED, kemudian unduh artefak dari model_urls.

Mode Kegagalan

  • Name
    400 - Bad Request
    Description

    Permintaan tidak dapat diterima. Penyebab umum:

    • Parameter hilang: input_task_id wajib diisi.
    • UUID tidak valid: input_task_id bukan UUID yang valid.
    • Induk belum berhasil: Tugas prototipe yang dirujuk belum mencapai status SUCCEEDED.
    • Tidak ada model: Tugas prototipe berhasil tetapi tidak menghasilkan model 3D.
    • Options di luar rentang: Salah satu field options berada di luar rentang atau kumpulan enum yang diizinkan.
  • Name
    401 - Unauthorized
    Description

    Autentikasi gagal. Silakan periksa kunci API Anda.

  • Name
    402 - Payment Required
    Description

    Kredit tidak mencukupi untuk melakukan tugas ini.

  • Name
    404 - Not Found
    Description

    Tugas prototipe yang dirujuk tidak ada, milik pengguna lain, atau dibuat melalui webapp (hanya tugas prototipe mode API yang dapat dirangkai ke build).

  • Name
    429 - Too Many Requests
    Description

    Anda telah melampaui batas laju Anda.

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"
}
Contoh build
Tugas build mengubah model 3D dari prototipe menjadi bagian kap lampu yang siap dicetak.
Pratinjau model build Creative Lab Lamp
Pratinjau model build

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

Mengambil Task Lampu

Mengambil task prototype atau build berdasarkan id task yang valid. Path URL harus sesuai dengan tahap task tersebut — task build yang diambil melalui /prototype/:id akan mengembalikan 404, dan begitu pula sebaliknya.

Lihat The Lamp Prototype Task Object dan The Lamp Build Task Object untuk bentuk responsnya.

Parameter

  • Name
    id
    Type
    path
    Description

    Pengenal unik untuk task lampu yang akan diambil.

Returns

Respons berisi objek task lampu. Bentuknya bergantung pada tahap mana yang diminta.

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=***"
  }
}

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

Hapus Tugas Lampu

Batalkan tugas lampu. Jika tugas masih PENDING, kredit yang digunakan saat pembuatan akan dikembalikan. Tugas yang sudah IN_PROGRESS dibatalkan tanpa pengembalian dana (pekerja mungkin sudah menggunakan sumber daya). Tugas yang sudah mencapai status akhir (SUCCEEDED, FAILED, CANCELED) tidak dapat dibatalkan.

Jalur URL harus sesuai dengan tahap tugas — DELETE pada /prototype/:buildId mengembalikan 404.

Parameter Jalur

  • Name
    id
    Type
    path
    Description

    Pengenal unik untuk tugas lampu yang akan dibatalkan.

Pengembalian

Mengembalikan 204 No Content pada keberhasilan dengan tubuh kosong.

Mode Kegagalan

  • Name
    400 - Bad Request
    Description

    Tugas sudah dalam status akhir dan tidak dapat dibatalkan.

  • Name
    404 - Not Found
    Description

    Tugas tidak ada, milik pengguna lain, atau tahapannya tidak sesuai dengan jalur URL.

Permintaan

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}"

Respon

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

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

Streaming Tugas Lampu

Melakukan streaming pembaruan real-time untuk tugas lampu melalui Server-Sent Events (SSE). Path URL harus sesuai dengan tahap tugas — membuka stream di /prototype/:buildId/stream akan mengeluarkan satu payload event: error dengan status_code: 404 dan menutup stream tersebut.

Parameter

  • Name
    id
    Type
    path
    Description

    Pengenal unik untuk tugas lampu yang akan di-stream.

Returns

Mengembalikan stream objek tugas Lamp Prototype atau Lamp Build sebagai Server-Sent Events. Untuk tugas PENDING atau IN_PROGRESS, stream respons hanya akan menyertakan field progress dan status yang diperlukan.

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.
// 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-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=***"
  }
}

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

Daftar Tugas Lamp

Ambil daftar tugas lampu Anda yang telah dipaginasi untuk satu tahap. Path URL memilih tahapnya — /prototype mengembalikan tugas prototype; /build mengembalikan tugas build. Tugas dari tahap lainnya tidak disertakan pada kedua respons tersebut.

Path Parameters

  • Name
    stage
    Type
    path
    Wajib
    Description

    prototype atau build. Koleksi hanya mengembalikan tugas yang tahapnya sesuai dengan URL — mengambil /prototype tidak akan pernah mengembalikan tugas build dan sebaliknya.

Query Parameters

  • Name
    page_num
    Type
    integer
    default 1
    Description

    Nomor halaman untuk paginasi.

  • Name
    page_size
    Type
    integer
    default 10
    Description

    Batas ukuran halaman. Maksimal yang diizinkan adalah 50 item.

  • Name
    sort_by
    Type
    string
    default -created_at
    Description

    Kolom untuk pengurutan. Nilai yang tersedia:

    • +created_at: Urutkan berdasarkan waktu pembuatan secara menaik.
    • -created_at: Urutkan berdasarkan waktu pembuatan secara menurun.

Returns

Mengembalikan daftar objek tugas per tahap yang telah dipaginasi — baik objek tugas lamp prototype saat mendaftar /prototype maupun objek tugas lamp build saat mendaftar /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=***"
    ]
  }
]

Objek Task Lamp Prototype

Objek Task Lamp Prototype adalah unit kerja yang dilacak oleh Meshy untuk menghasilkan concept image matte-white bergaya dari foto sumber dan mengonversinya menjadi model 3D berongga. Output dari tahap ini dirangkai ke tahap build melalui input_task_id.

Properti

  • Name
    id
    Type
    string
    Description

    Pengenal unik untuk task. Meskipun kami menggunakan UUID yang dapat diurutkan secara k-sortable untuk id task sebagai detail implementasi, Anda tidak boleh membuat asumsi apa pun tentang format id tersebut.

  • Name
    type
    Type
    string
    Description

    Jenis task. Nilainya adalah creative-lab-lamp-prototype.

  • Name
    name
    Type
    string
    Description

    Nama task yang diberikan saat task dibuat. String kosong jika tidak ada nama yang diberikan.

  • Name
    status
    Type
    string
    Description

    Status task. Kemungkinan nilainya adalah salah satu dari PENDING, IN_PROGRESS, SUCCEEDED, FAILED, CANCELED.

  • Name
    progress
    Type
    integer
    Description

    Progress dari task. Jika task belum dimulai, properti ini akan bernilai 0. Setelah task berhasil, nilainya akan menjadi 100.

  • Name
    created_at
    Type
    timestamp
    Description

    Stempel waktu saat task dibuat, dalam milidetik.

  • Name
    started_at
    Type
    timestamp
    Description

    Stempel waktu saat task dimulai, dalam milidetik. Jika task belum dimulai, properti ini akan bernilai 0.

  • Name
    finished_at
    Type
    timestamp
    Description

    Stempel waktu saat task selesai, dalam milidetik. Jika task belum selesai, properti ini akan bernilai 0.

  • Name
    expires_at
    Type
    timestamp
    Description

    Stempel waktu saat hasil task kedaluwarsa, dalam milidetik.

  • Name
    preceding_tasks
    Type
    integer
    Description

    Jumlah task yang mendahului.

  • Name
    task_error
    Type
    object
    Description

    Detail kesalahan untuk task yang gagal. Lihat Kesalahan untuk referensi lengkap objek task_error.

  • Name
    consumed_credits
    Type
    integer
    Description

    Jumlah kredit yang dikonsumsi oleh task ini. Muncul saat status task adalah PENDING, IN_PROGRESS, atau SUCCEEDED. Mengembalikan 0 untuk task FAILED (kredit dikembalikan jika gagal).

  • Name
    model_urls
    Type
    object
    Description

    URL yang dapat diunduh untuk model 3D yang dihasilkan dari concept image. Muncul setelah task berhasil; {} sebelum itu.

    • Name
      glb
      Type
      string
      Description

      URL yang dapat diunduh untuk model lampshade matte-white berongga dalam format GLB. Ini adalah model yang diproses oleh tahap build.

  • Name
    thumbnail_url
    Type
    string
    Description

    URL yang dapat diunduh untuk pratinjau hasil render model 3D. String kosong hingga task berhasil.

  • Name
    image_urls
    Type
    array of strings
    Description

    URL yang dapat diunduh untuk kandidat concept image yang dihasilkan oleh task prototype ini. Saat ini API selalu mengembalikan tepat satu kandidat; bidang ini berupa array agar revisi mendatang dapat menampilkan beberapa kandidat tanpa perubahan yang bersifat breaking change.

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=***"
  ]
}

Objek Tugas Build Lamp

Objek Tugas Build Lamp adalah unit kerja yang dilacak oleh Meshy untuk menghasilkan lampshade akhir yang siap dicetak 3D dari tugas prototipe yang berhasil. Build ini menjalankan lamp processor pada model 3D prototipe untuk melubangi bagian dalamnya (hollow), meratakan dan membuka bagian bawahnya, dan (dengan preset fixture) menambahkan pelat dasar dan dudukan fixture.

Properti

  • Name
    id
    Type
    string
    Description

    Pengenal unik untuk tugas ini.

  • Name
    type
    Type
    string
    Description

    Jenis tugas. Nilainya adalah creative-lab-lamp-build.

  • Name
    name
    Type
    string
    Description

    Nama tugas yang diberikan saat tugas dibuat. String kosong jika tidak ada nama yang diberikan.

  • Name
    status
    Type
    string
    Description

    Status tugas. Kemungkinan nilainya adalah salah satu dari PENDING, IN_PROGRESS, SUCCEEDED, FAILED, CANCELED.

  • Name
    progress
    Type
    integer
    Description

    Progress tugas. Jika tugas belum dimulai, properti ini akan bernilai 0. Setelah tugas berhasil, nilainya akan menjadi 100.

  • Name
    created_at
    Type
    timestamp
    Description

    Stempel waktu saat tugas dibuat, dalam milidetik.

  • Name
    started_at
    Type
    timestamp
    Description

    Stempel waktu saat tugas dimulai, dalam milidetik.

  • Name
    finished_at
    Type
    timestamp
    Description

    Stempel waktu saat tugas selesai, dalam milidetik.

  • Name
    expires_at
    Type
    timestamp
    Description

    Stempel waktu saat hasil tugas kedaluwarsa, dalam milidetik.

  • Name
    preceding_tasks
    Type
    integer
    Description

    Jumlah tugas yang mendahului. Hanya berarti ketika status adalah PENDING.

  • Name
    task_error
    Type
    object
    Description

    Detail kesalahan untuk tugas yang gagal. Lihat Kesalahan untuk referensi lengkap objek task_error.

  • Name
    consumed_credits
    Type
    integer
    Description

    Jumlah kredit yang digunakan oleh tugas ini. Mengembalikan 0 untuk tugas FAILED (kredit dikembalikan jika gagal).

  • Name
    model_urls
    Type
    object
    Description

    URL yang dapat diunduh untuk artefak yang dihasilkan, dengan kunci berupa nama artefak. Kumpulan kunci ini bergantung pada output.format dan options.light_source_preset:

    • Name
      lamp_stl
      Type
      string
      Description

      URL yang dapat diunduh untuk lamp.stl: lampshade dengan bagian bawah terbuka beserta pelat dasar yang membawa lubang fixture, atau satu lampshade tertutup rapat ketika options.light_source_preset adalah none. Ada ketika output.format adalah stl (default).

    • Name
      base_stl
      Type
      string
      Description

      URL yang dapat diunduh untuk base.stl, dudukan fixture sumber cahaya. Ada ketika output.format adalah stl dan options.light_source_preset bukan none. Dihilangkan ketika preset fixture adalah none.

    • Name
      bundle_zip
      Type
      string
      Description

      URL yang dapat diunduh untuk bundel zip berisi semua artefak yang dihasilkan oleh processor (lamp.stl, base.stl opsional, dan — ketika options.include_result_json adalah trueresult.json). Ada ketika output.format adalah zip. Ketika bundle_zip ada, lamp_stl / base_stl dihilangkan.

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=***"
  }
}