lowpoly dihentikan pada 30 Okt 2026. Ganti model sebelum tanggal-tanggal ini agar permintaan tidak error. Lihat semua penghentian

API Lampu Creative Lab

Ubah foto menjadi kap lampu yang dapat dicetak 3D dalam dua tahap. Tugas prototipe menghasilkan gambar konsep berwarna putih matte dan mengubahnya menjadi model 3D. Tugas build, yang menggunakan ID tugas prototipe sebagai input_task_id, mengubah model tersebut menjadi bagian-bagian STL yang dapat dicetak. Dengan preset fixture default, bagian-bagiannya berupa kap lampu dengan bagian bawah terbuka yang memiliki pelat dasar untuk fixture lampu, serta dudukan fixture.

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

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

Membuat tugas prototipe Lamp

Menghasilkan satu gambar konsep matte-white dari sebuah foto dan mengubahnya menjadi model 3D kap lampu. Tugas ini mengembalikan gambar konsep di image_urls, dan model di model_urls.glb dengan pratinjau di thumbnail_url. Untuk membangun bagian-bagian yang dapat dicetak, sertakan ID tugas ini ke endpoint build sebagai input_task_id. Untuk kolom-kolom tugas ini, lihat Objek tugas prototipe Lamp.

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"
}
Contoh prototipe
Mulai dengan foto sumber. Prototipe mengembalikan gambar konsep dan model 3D yang diproses oleh tahap build.
Foto kucing sumber yang digunakan sebagai input Creative Lab Lamp
Input prototipe
Output prototipe Creative Lab Lamp yang dihasilkan dari foto sumber
Output prototipe

Parameter

  • Name
    image_url
    Type
    string
    Wajib
    Description

    Foto yang menjadi dasar kap lampu, berupa URL publik atau data URI (data:image/jpeg;base64,<data gambar Anda yang dienkode base64>).

    Gambar harus berupa file JPG, JPEG, PNG, atau WebP dengan ukuran maksimal 20 MB.

  • Name
    image_subject
    Type
    string
    default character
    Description

    Jenis subjek dalam foto, yang menentukan bagaimana Meshy menstilasikannya.

    Nilai yang tersedia:

    • character: satu karakter atau objek tunggal, seperti figur, hewan, atau maskot
    • landscape: sebuah pemandangan luar ruangan atau panorama, seperti gunung, lanskap kota, atau hutan
  • Name
    name
    Type
    string
    Description

    Nama untuk tugas, hingga 100 karakter. Nama ini dikembalikan pada kolom name tugas. Nama yang lebih panjang akan mengembalikan 400.

  • Name
    remove_background
    Type
    boolean
    default false
    Description

    Apakah akan menghapus latar belakang dari gambar prototipe. true mengembalikan PNG RGBA transparan, sehingga Anda dapat menempatkan subjek pada latar belakang apa pun. Meshy juga membangun model 3D dari gambar tanpa latar belakangnya. Jika Meshy tidak dapat menghapus latar belakang, Meshy akan menggunakan gambar dengan latar belakangnya, dan tugas tetap berhasil.

Hasil

Kolom result berisi ID dari tugas prototipe baru. Ambil tugas atau stream tugas tersebut hingga status menjadi SUCCEEDED. Kemudian sertakan ID tersebut ke endpoint build sebagai input_task_id.

Mode kegagalan

  • Name
    400 - Bad Request
    Description

    Permintaan tidak dapat dijalankan. Misalnya:

    • image_url tidak ada.
    • Gambar bukan file JPG, JPEG, PNG, atau WebP.
    • Gambar terlalu kecil, lebih dari 20 MB, atau melebihi jumlah piksel maksimum.
    • Meshy tidak dapat mengunduh gambar, misalnya karena URL mengembalikan 404 atau waktu habis (timeout).
    • Data URI bukan base64 yang valid.
    • Gambar ditandai sebagai NSFW.
    • image_subject bukan character atau landscape.

    Pesan error menunjukkan masalah apa yang ditemukan. Perbaiki permintaan, lalu kirim ulang.

  • Name
    401 - Unauthorized
    Description

    Kunci API tidak ada atau tidak valid. Periksa header Authorization.

  • Name
    402 - Payment Required
    Description

    Salah satu dari hal berikut berlaku:

    • Akun tidak memiliki cukup kredit.
    • Kunci API, ruang kerja, atau anggota telah mencapai batas kreditnya.
    • Akun menggunakan paket gratis.

    Periksa kredit dan paket Anda, lalu coba lagi.

  • Name
    403 - Forbidden
    Description

    Tim Anda mengaktifkan IP Filtering, dan Meshy menandai gambar tersebut terkait kekayaan intelektual pihak ketiga. Kirim gambar yang memang berhak Anda gunakan.

  • Name
    429 - Too Many Requests
    Description

    Salah satu batas berikut telah tercapai:

    • Anda mengirim lebih banyak permintaan daripada yang diizinkan oleh batas laju Anda. Tunggu beberapa detik, lalu coba lagi. Lihat Batas laju.
    • Terlalu banyak tugas Anda yang sedang antre atau berjalan. Tunggu hingga beberapa selesai, lalu coba lagi.
    • Pada paket tak terbatas tanpa sisa kredit, Anda telah mencapai jumlah tugas yang dapat berjalan tanpa kredit. Tunggu hingga sebuah tugas selesai, atau tambahkan kredit.
  • Name
    500 - Internal Server Error
    Description

    Meshy mengalami kesalahan server, misalnya karena tidak dapat menjalankan pemeriksaan kekayaan intelektual pada gambar. Meshy tidak membuat tugas tersebut, dan mengembalikan kredit apa pun yang telah dibebankan. Coba kirim ulang permintaan tersebut.


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

Buat tugas build Lamp

Menghasilkan bagian-bagian yang dapat dicetak 3D dari tugas prototipe yang berhasil. Meshy menskalakan model prototipe ke diameter_mm, memotong bagian bawah agar rata sesuai cut_amount_percent, dan melubanginya hingga thickness_mm. Dengan preset fixture, ini juga membuka bagian bawah, menambahkan pelat dasar dengan lubang fixture, dan membuat dudukan terpisah untuk lampunya. Untuk kolom-kolom tugas ini, lihat The Lamp build task object.

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
Tugas build mengubah model 3D prototipe menjadi bagian-bagian kap lampu yang dapat dicetak.
Creative Lab Lamp build model preview
Build model preview

Parameter

  • Name
    input_task_id
    Type
    string
    Wajib
    Description

    ID dari tugas prototipe yang akan di-build. ID ini harus berupa tugas yang dibuat oleh akun Anda dengan POST /openapi/creative-lab/lamp/v1/prototype, dengan status SUCCEEDED.

    ID yang bukan merupakan salah satu tugas prototipe Lamp Anda dari API akan mengembalikan 404, termasuk prototipe yang dibuat di aplikasi web.

  • Name
    name
    Type
    string
    Description

    Nama untuk tugas tersebut, hingga 100 karakter. Nama ini akan muncul kembali di kolom name tugas. Nama yang lebih panjang akan mengembalikan 400.

options

Pengaturan opsional untuk bentuk kap lampu. Setiap kolom memiliki nilai default, jadi kirimkan hanya kolom yang ingin Anda ubah.

  • Name
    diameter_mm
    Type
    number
    default 150
    Description

    Ukuran dimensi terbesar kap lampu, dalam milimeter, dari 50 hingga 400. Meshy menskalakan model secara merata agar sesuai. 0 menggunakan nilai default, dan nilai lain di luar rentang akan mengembalikan 400.

  • Name
    thickness_mm
    Type
    number
    default 1
    Description

    Ketebalan dinding kap lampu, dalam milimeter, hingga 10. 0 menggunakan nilai default, dan nilai negatif atau nilai di atas 10 akan mengembalikan 400.

  • Name
    cut_amount_percent
    Type
    number
    default 1
    Description

    Persentase tinggi model yang dipotong rata di bagian bawah, dari 1 hingga 100. Bagian bawah yang rata memungkinkan kap lampu berdiri di atas print bed dan menyisakan ruang untuk fixture. Nilai di luar rentang akan mengembalikan 400.

  • Name
    light_source_preset
    Type
    string
    default bambu_mh001_60mm
    Description

    Preset fixture lampu, yang menentukan bagaimana Meshy membangun bagian bawah.

    Nilai yang tersedia:

    • bambu_mh001_60mm: kap lampu dengan bagian bawah terbuka dengan pelat dasar yang memiliki lubang fixture 60 mm, keduanya ada di model_urls.lamp_stl, dan dudukan fixture di model_urls.base_stl
    • none: satu kap lampu tertutup tunggal di model_urls.lamp_stl, tanpa model_urls.base_stl
  • Name
    fixture_offset_x_mm
    Type
    number
    default 0
    Description

    Seberapa jauh menggeser lubang fixture sepanjang sumbu X dari pusat kap lampu, dalam milimeter, dari -80 hingga 80. Berlaku hanya ketika light_source_preset bukan none.

  • Name
    fixture_offset_z_mm
    Type
    number
    default 0
    Description

    Seberapa jauh menggeser lubang fixture sepanjang sumbu Z (kedalaman) dari pusat kap lampu, dalam milimeter, dari -80 hingga 80. Berlaku hanya ketika light_source_preset bukan none.

  • Name
    rotate_x_deg
    Type
    number
    default 0
    Description

    Rotasi di sekitar sumbu X yang diterapkan pada model sebelum Meshy memprosesnya, dalam derajat, dari -360 hingga 360. Meshy menerapkan ketiga rotasi sebagai sudut Euler XYZ di sekitar pusat model.

  • Name
    rotate_y_deg
    Type
    number
    default 0
    Description

    Rotasi di sekitar sumbu Y yang diterapkan pada model sebelum Meshy memprosesnya, dalam derajat, dari -360 hingga 360.

  • Name
    rotate_z_deg
    Type
    number
    default 0
    Description

    Rotasi di sekitar sumbu Z yang diterapkan pada model sebelum Meshy memprosesnya, dalam derajat, dari -360 hingga 360.

  • Name
    include_result_json
    Type
    boolean
    default false
    Description

    Apakah akan menambahkan berkas result.json ke paket zip, dengan nama pipeline yang dijalankan, peringatan, dan jalur berkas. Memerlukan output.format disetel ke zip. true dengan stl akan mengembalikan 400.

output

Opsional. Menentukan berkas yang dikembalikan oleh build.

  • Name
    format
    Type
    string
    default stl
    Description

    Berkas yang dikembalikan oleh build.

    Nilai yang tersedia:

    • stl: model_urls.lamp_stl, kap lampu beserta pelat dasarnya ketika ada preset fixture, dan model_urls.base_stl ketika light_source_preset bukan none
    • zip: satu berkas zip di model_urls.bundle_zip, dengan lamp.stl, dan base.stl serta result.json ketika berlaku

Return

Kolom result menyimpan ID dari tugas build yang baru. Ambil tugasnya atau streaming-kan hingga status bernilai SUCCEEDED. Lalu unduh berkas-berkasnya dari model_urls.

Mode kegagalan

  • Name
    400 - Bad Request
    Description

    Permintaan tidak dapat dijalankan. Contohnya:

    • input_task_id hilang atau bukan ID tugas yang valid.
    • Status tugas prototipe bukan SUCCEEDED. Jika masih berjalan, tunggu dan coba lagi. Jika gagal atau dibatalkan, buat tugas prototipe baru.
    • Tugas prototipe berhasil tetapi tidak memiliki model 3D. Buat tugas prototipe baru.
    • Kolom options berada di luar rentangnya atau bukan nilai yang tersedia.
    • output.format bukan stl atau zip, atau include_result_json bernilai true tanpa zip.

    Pesan error menunjukkan masalah mana yang ditemukan.

  • Name
    401 - Unauthorized
    Description

    Kunci API hilang atau tidak valid. Periksa header Authorization.

  • Name
    402 - Payment Required
    Description

    Salah satu dari berikut ini berlaku:

    • Akun tidak memiliki kredit yang cukup.
    • Kunci API, ruang kerja, atau anggota telah mencapai batas kreditnya.
    • Akun menggunakan paket gratis.

    Periksa kredit dan paket Anda, lalu coba lagi.

  • Name
    404 - Not Found
    Description

    input_task_id tidak cocok dengan tugas prototipe Lamp mana pun yang dibuat oleh akun Anda dengan API. Prototipe yang dibuat di aplikasi web juga akan mengembalikan 404. Kirimkan ID result dari respons pembuatan prototipe.

  • Name
    429 - Too Many Requests
    Description

    Salah satu batas berikut telah tercapai:

    • Anda mengirim lebih banyak permintaan daripada yang diizinkan oleh batas laju Anda. Tunggu beberapa detik, lalu coba lagi. Lihat Rate limits.
    • Terlalu banyak tugas Anda yang antre atau sedang berjalan. Tunggu hingga beberapa selesai, lalu coba lagi.
    • Pada paket unlimited tanpa sisa kredit, Anda telah mencapai jumlah tugas yang dapat berjalan tanpa kredit. Tunggu hingga sebuah tugas selesai, atau tambahkan kredit.

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

Dapatkan Lamp task

Mengembalikan task prototype atau build. Path harus sesuai dengan tahap task tersebut. Task build yang diminta melalui /prototype/:id akan mengembalikan 404, begitu pula task prototype yang diminta melalui /build/:id.

Untuk field-field terkait, lihat The Lamp prototype task object dan The Lamp build task object.

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

Parameter

  • Name
    id
    Type
    path
    Description

    ID task dari respons pembuatan (create).

Returns

prototype task object atau build task object, sesuai dengan tahap pada path.

Mode kegagalan

  • Name
    400 - Bad Request
    Description

    id bukan ID task yang valid. Kirim ID result dari respons pembuatan (create).

  • Name
    403 - Forbidden
    Description

    Tim Anda telah mengaktifkan IP Filtering, dan Meshy menandai gambar task prototype tersebut karena mengandung kekayaan intelektual pihak ketiga. Task build dan tim pada paket Enterprise tidak mendapatkan error ini. Buat task prototype dari gambar yang hak penggunaannya Anda miliki.

  • Name
    404 - Not Found
    Description

    Tidak ada Lamp task dengan ID ini yang dimiliki akun Anda, atau tahap task tidak sesuai dengan path. Periksa ID-nya, dan gunakan /prototype atau /build yang sesuai dengan task tersebut.

  • Name
    500 - Internal Server Error
    Description

    Meshy tidak dapat menjalankan pemeriksaan kekayaan intelektual. Coba lagi permintaan tersebut.


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

Hapus tugas Lamp

Membatalkan tugas Lamp. Membatalkan tugas PENDING akan mengembalikan kreditnya. Tugas IN_PROGRESS dibatalkan tanpa pengembalian dana, karena worker sudah mulai mengerjakannya. Tugas dengan status akhir (SUCCEEDED, FAILED, atau CANCELED) tidak dapat dibatalkan.

Path harus sesuai dengan tahap tugas tersebut. Misalnya, DELETE pada /prototype/:id dengan ID tugas build akan mengembalikan 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).

Parameter path

  • Name
    id
    Type
    path
    Description

    ID tugas yang akan dibatalkan.

Hasil

204 No Content dengan body kosong.

Mode kegagalan

  • Name
    400 - Bad Request
    Description

    Salah satu dari berikut berlaku:

    • id bukan ID tugas yang valid. Kirimkan ID result dari respons pembuatan.
    • Tugas sudah memiliki status akhir (SUCCEEDED, FAILED, atau CANCELED), sehingga tidak dapat dibatalkan.
  • Name
    404 - Not Found
    Description

    Tidak ada tugas Lamp dengan ID ini yang dimiliki akun Anda, atau tahap tugas tidak cocok dengan path. Periksa ID, dan gunakan /prototype atau /build yang sesuai dengan tugas tersebut.


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

Stream tugas Lamp

Melakukan streaming pembaruan tugas Lamp sebagai Server-Sent Events (SSE). Path harus sesuai dengan tahap tugas tersebut. Jika tidak, misalnya ID tugas build digunakan di /prototype/:id/stream, stream akan mengirim satu event error dengan status_code: 404 dan kemudian ditutup.

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

Parameter

  • Name
    id
    Type
    path
    Description

    ID tugas dari respons pembuatan.

Returns

Sebuah stream objek tugas prototype atau build. Setiap event berisi objek tugas secara lengkap, sebagaimana dikembalikan oleh Get a Lamp task. Selama tugas berstatus PENDING atau IN_PROGRESS, kolom output-nya masih kosong (null, [], atau {}), dan finished_at bernilai null.

Jika IP Filtering memblokir hasil tugas, stream akan mengirim satu event error sebagai gantinya, dengan status_code yang sama seperti yang akan dikembalikan oleh permintaan get.


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

Daftar tugas Lamp

Mengembalikan tugas Lamp Anda dari satu tahap, satu halaman pada satu waktu. Path menentukan tahapnya. /prototype hanya mengembalikan tugas prototype, dan /build hanya mengembalikan tugas 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=***"
    ]
  }
]

Parameter path

  • Name
    stage
    Type
    path
    Wajib
    Description

    Tahap yang akan didaftar, prototype atau build.

Parameter query

  • Name
    page_num
    Type
    integer
    default 1
    Description

    Halaman yang akan dikembalikan, dari 1 hingga 255. 0 mengembalikan halaman pertama. Nilai di luar 0 hingga 255 akan mengembalikan 400.

  • Name
    page_size
    Type
    integer
    default 10
    Description

    Jumlah tugas per halaman, hingga 100. Nilai dari 101 hingga 255 akan mengembalikan 100 tugas, dan 0 menggunakan nilai default. Nilai di luar 0 hingga 255 akan mengembalikan 400.

  • Name
    sort_by
    Type
    string
    default -created_at
    Description

    Urutan pengurutan.

    Nilai yang tersedia:

    • -created_at: terbaru lebih dulu
    • +created_at: terlama lebih dulu

Return

Sebuah array dari objek tugas prototype atau objek tugas build, sesuai dengan tahap pada path.


Objek tugas prototipe Lampu

Tugas prototipe menghasilkan gambar konsep matte-white dari sebuah foto dan mengubahnya menjadi model 3D. Untuk membuat bagian-bagian yang dapat dicetak, kirimkan ID tugas tersebut ke endpoint build sebagai input_task_id.

Properti

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 tugas. Jangan bergantung pada formatnya.

  • Name
    type
    Type
    string
    Description

    Jenis tugas, selalu creative-lab-lamp-prototype.

  • Name
    name
    Type
    string
    Description

    name yang Anda kirim saat membuat tugas, atau "" jika Anda tidak mengirimkannya.

  • Name
    status
    Type
    string
    Description

    Status tugas.

    Nilai yang tersedia:

    • PENDING: menunggu di antrean
    • IN_PROGRESS: sedang menghasilkan hasil
    • SUCCEEDED: final, dengan hasil
    • FAILED: final, dengan alasan di task_error
    • CANCELED: final, tanpa hasil
  • Name
    progress
    Type
    integer
    Description

    Persentase pekerjaan yang telah selesai, dari 0 hingga 100. Nilainya 0 sampai tugas dimulai dan 100 saat berhasil.

  • Name
    created_at
    Type
    timestamp
    Description

    Waktu tugas dibuat, dalam milidetik Unix.

  • Name
    started_at
    Type
    timestamp
    Description

    Waktu sebuah worker memulai tugas, dalam milidetik Unix. null sebelum itu.

  • Name
    finished_at
    Type
    timestamp
    Description

    Waktu tugas mencapai status final, dalam milidetik Unix. null sebelum itu.

  • Name
    expires_at
    Type
    timestamp
    Description

    Waktu hasil tugas kedaluwarsa, dalam milidetik Unix. Nilainya 3 hari setelah finished_at, atau 3 hari setelah created_at hingga tugas selesai. Untuk akun Enterprise, yang menyimpan hasil API tanpa batas waktu, nilainya sekitar 100 tahun kemudian. Lihat Retensi aset.

  • Name
    preceding_tasks
    Type
    integer
    Description

    Posisi tugas dalam antrean selama berstatus PENDING. 1 berarti tugas ini akan dimulai berikutnya. 0 setelah tugas keluar dari antrean, dan selalu 0 pada hasil daftar.

  • Name
    task_error
    Type
    object
    Description

    Alasan kegagalan tugas. null kecuali status adalah FAILED. Lihat Kesalahan.

  • Name
    consumed_credits
    Type
    integer
    Description

    Jumlah kredit yang dikenakan untuk tugas, setelah dikurangi pengembalian dana jika ada. Permintaan yang mengembalikan kesalahan tidak dikenakan biaya. Tugas yang gagal bernilai 0, karena Meshy mengembalikan dananya. Pembatalan hanya mengembalikan dana tugas selama tugas masih PENDING. Jika Meshy tidak dapat membaca biaya tersebut, respons get atau stream akan mengabaikan bidang ini, dan permintaan daftar akan mengembalikan 500. Dalam kasus itu, coba ulangi permintaannya.

  • Name
    model_urls
    Type
    object
    Description

    URL unduhan untuk model 3D yang dihasilkan dari gambar konsep. {} hingga tugas berhasil.

    • Name
      glb
      Type
      string
      Description

      URL unduhan untuk model kap lampu, sebagai file GLB. Tahap build mengubah model ini menjadi bagian-bagian yang dapat dicetak.

  • Name
    thumbnail_url
    Type
    string
    Description

    URL unduhan untuk gambar pratinjau model 3D. "" hingga tugas berhasil.

  • Name
    image_urls
    Type
    array of strings
    Description

    URL unduhan untuk gambar konsep. Larik ini memiliki satu URL setelah tugas berhasil, dan kosong sebelum itu.


Objek tugas build Lamp

Tugas build mengubah model 3D dari tugas prototype yang berhasil menjadi bagian-bagian lampshade yang siap cetak. Meshy melubangi bagian dalam model dan memotong bagian bawahnya agar rata. Dengan preset fixture, Meshy juga membuka bagian bawah dan menambahkan base plate serta fixture mount.

Properti

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 tugas. Jangan bergantung pada formatnya.

  • Name
    type
    Type
    string
    Description

    Jenis tugas, selalu creative-lab-lamp-build.

  • Name
    name
    Type
    string
    Description

    name yang Anda kirim saat membuat tugas, atau "" jika Anda tidak mengirimkannya.

  • Name
    status
    Type
    string
    Description

    Status tugas tersebut.

    Nilai yang tersedia:

    • PENDING: menunggu dalam antrean
    • IN_PROGRESS: sedang menghasilkan hasil
    • SUCCEEDED: final, dengan hasil
    • FAILED: final, dengan alasan di task_error
    • CANCELED: final, tanpa hasil
  • Name
    progress
    Type
    integer
    Description

    Persentase pekerjaan yang telah selesai, dari 0 hingga 100. Nilainya 0 hingga tugas dimulai dan 100 saat berhasil.

  • Name
    created_at
    Type
    timestamp
    Description

    Waktu tugas dibuat, dalam milidetik Unix.

  • Name
    started_at
    Type
    timestamp
    Description

    Waktu sebuah worker memulai tugas, dalam milidetik Unix. null hingga saat itu.

  • Name
    finished_at
    Type
    timestamp
    Description

    Waktu tugas mencapai status final, dalam milidetik Unix. null hingga saat itu.

  • Name
    expires_at
    Type
    timestamp
    Description

    Waktu hasil tugas kedaluwarsa, dalam milidetik Unix. Nilainya 3 hari setelah finished_at, atau 3 hari setelah created_at hingga tugas selesai. Untuk akun Enterprise, yang menyimpan hasil API tanpa batas waktu, nilainya sekitar 100 tahun kemudian. Lihat Retensi aset.

  • Name
    preceding_tasks
    Type
    integer
    Description

    Posisi tugas dalam antrean selama berstatus PENDING. 1 berarti tugas ini akan dimulai berikutnya. 0 setelah tugas keluar dari antrean, dan selalu 0 pada hasil daftar.

  • Name
    task_error
    Type
    object
    Description

    Alasan tugas gagal. null kecuali status adalah FAILED. Lihat Kesalahan.

  • Name
    consumed_credits
    Type
    integer
    Description

    Jumlah kredit yang dikenakan untuk tugas tersebut, setelah dikurangi pengembalian dana. Permintaan yang mengembalikan kesalahan tidak akan dikenakan biaya. Tugas yang gagal bernilai 0, karena Meshy mengembalikan dananya. Membatalkan tugas hanya mengembalikan dana selama tugas masih berstatus PENDING. Jika Meshy tidak dapat membaca biaya yang dikenakan, respons get atau stream akan meniadakan field ini, dan permintaan daftar akan mengembalikan 500. Dalam kasus ini, coba ulangi permintaan tersebut.

  • Name
    model_urls
    Type
    object
    Description

    URL unduhan untuk file siap cetak. Key mana yang muncul bergantung pada output.format dan options.light_source_preset.

    • Name
      lamp_stl
      Type
      string
      Description

      URL unduhan untuk lamp.stl. Dengan preset fixture, ini adalah lampshade dengan bagian bawah terbuka beserta base plate yang memiliki lubang fixture. Dengan options.light_source_preset diatur ke none, ini adalah satu lampshade tertutup rapat. Muncul saat output.format adalah stl.

    • Name
      base_stl
      Type
      string
      Description

      URL unduhan untuk base.stl, mount untuk fixture lampu. Muncul saat output.format adalah stl dan options.light_source_preset bukan none.

    • Name
      bundle_zip
      Type
      string
      Description

      URL unduhan untuk file zip yang berisi lamp.stl, serta base.stl dan result.json jika berlaku. Muncul saat output.format adalah zip, dan dalam hal ini lamp_stl serta base_stl tidak disertakan.