Ralat
Ketahui sebab permintaan atau tugas gagal, dan apa yang perlu dilakukan seterusnya. Sesuatu permintaan boleh gagal serta-merta dengan ralat HTTP, dan sesuatu tugas boleh gagal kemudian dengan task_error.
Ralat permintaan
Meshy mengembalikan ralat ini dengan segera, apabila ia menolak permintaan. Untuk mengetahui apa yang tidak kena, semak kod status HTTP dan medan message.
Format respons
Respons ralat mempunyai medan message yang menerangkan apa yang tidak kena:
- Name
- message
- Type
- string
- Description
Penerangan ringkas tentang ralat tersebut.
Kod status
- Name
2xx- Description
Berjaya.
- Name
200 - OK- Description
Permintaan berjaya.
- Name
202 - Accepted- Description
Meshy menerima permintaan tersebut, dan pemprosesan belum selesai lagi. Sebagai contoh, satu permintaan yang mencipta tugas mengembalikan
202.
- Name
4xx- Description
Ada sesuatu yang tidak kena dengan permintaan atau akaun anda. Setiap status menyatakan apa yang perlu dilakukan.
- Name
400 - Bad Request- Description
Permintaan tidak sah, selalunya kerana parameter yang diperlukan tiada atau satu parameter tidak lengkap.
- Name
401 - Unauthorized- Description
Kunci API tiada, tidak sah, atau tidak boleh mengakses endpoint ini. Lihat Pengesahan.
- Name
402 - Payment Required- Description
Akaun kunci API tidak mempunyai kredit yang mencukupi untuk permintaan tersebut. Pada pelan Percuma, kebanyakan permintaan yang mencipta tugas turut mengembalikan
402.
- Name
403 - Forbidden- Description
Anda tidak dibenarkan membuat permintaan ini, contohnya atas salah satu sebab berikut:
- Permintaan datang daripada alamat di luar senarai benar IP kunci API.
- Penapisan IP organisasi anda menyekat fail tugas apabila anda membacanya.
- Endpoint tidak tersedia pada pelan anda.
- Moderation kandungan menyekat input tersebut. Sesetengah endpoint mengembalikan
400untuk kes ini; setiap halaman endpoint menyenaraikan kod masing-masing. - Kunci API dimiliki oleh ahli pasukan yang tidak lagi aktif dalam pasukan tersebut.
- Akaun telah digantung.
- Name
404 - Not Found- Description
Sumber tidak wujud. Sebagai contoh, mendapatkan tugas dengan ID yang tidak wujud mengembalikan
404.
- Name
409 - Conflict- Description
Sumber wujud, tetapi statusnya tidak membenarkan operasi tersebut. Sebagai contoh, memadam tugas
IN_PROGRESSmengembalikan409, kerana Meshy tidak boleh memulangkan semula kredit untuk tugas yang telah dimulakan oleh pekerja. Tugas tersebut terus berjalan. Tunggu sehingga status akhir (SUCCEEDED,FAILED, atauCANCELED), kemudian padam tugas tersebut.
- Name
422 - Unprocessable Entity- Description
Permintaan adalah sah, tetapi Meshy tidak dapat memproses inputnya. Sebagai contoh, Rigging mengembalikan
422apabila ia tidak dapat mencari badan humanoid dalam model tersebut.
- Name
429 - Too Many Requests- Description
Anda menghantar terlalu banyak permintaan, atau terlalu banyak tugas anda sedang dalam baris gilir atau sedang berjalan. Apabila respons mempunyai header
Retry-After, tunggu selama bilangan saat tersebut, kemudian cuba semula. Lihat Had kadar.
- Name
5xx- Description
Ada sesuatu yang tidak kena di pihak Meshy. Cuba semula dengan backoff. Jika ralat berterusan, semak halaman status dan hubungi kami di Discord.
Example: 400 Bad Request
{
"message": "Invalid model file extension: .3dm"
}
Ralat tugasan
Tugasan yang dicipta oleh Meshy masih boleh gagal semasa ia berjalan. status-nya menjadi FAILED, Meshy memulangkan kredit tugasan tersebut, dan task_error menerangkan sebabnya.
task_error bagi tugasan yang gagal mempunyai medan-medan berikut:
- Name
- type
- Type
- string
- Description
Kategori ralat. Ia sentiasa hadir pada tugasan yang gagal. Buat percabangan berdasarkannya untuk menentukan sama ada hendak cuba semula. Lihat Jenis ralat.
- Name
- message
- Type
- string
- Description
Penerangan ralat yang boleh dibaca oleh manusia. Ia sentiasa hadir pada tugasan yang gagal.
- Name
- code
- Type
- string
- Pilihan
- Description
Masalah khusus dan didokumentasikan yang boleh anda tangani. Hadir apabila Meshy mempunyai lebih banyak butiran. Lihat Kod ralat. Meshy mungkin menambah kod baharu, jadi tanganilah kod yang tidak anda kenali berdasarkan
type-nya.
- Name
- doc_url
- Type
- string
- Pilihan
- Description
Pautan ke entri kod tersebut pada halaman ini, yang menerangkan apa yang perlu dilakukan. Hadir apabila
codehadir.
Error with details
{
"id": "018a210d-8ba4-705c-b111-1f1776f7f578",
"status": "FAILED",
"task_error": {
"type": "invalid_input",
"code": "image_too_complex",
"message": "The uploaded image is too complex for 3D generation.",
"doc_url": "https://docs.meshy.ai/en/api/errors#image-too-complex"
}
}
Error without details
{
"id": "018a210d-8ba4-705c-b111-1f1776f7f578",
"status": "FAILED",
"task_error": {
"type": "server_error",
"message": "An internal error occurred. Please retry."
}
}
Jenis ralat
type ialah kategori luas kegagalan. Gunakannya untuk menentukan apa yang perlu dilakukan seterusnya.
- Name
invalid_input- Description
Terdapat sesuatu yang tidak kena dengan input yang anda hantar. Baca
codedanmessage, betulkan input tersebut, dan cipta tugas baharu.
- Name
timeout- Description
Tugas tersebut melebihi had masa di pihak pelayan, sama ada untuk pemprosesan atau menunggu dalam baris gilir, dan gagal. Meshy akan memulangkan semula kredit tersebut. Ini selalunya bersifat sementara. Cipta semula tugas tersebut, dan jika ia terus gagal, cuba input yang lebih ringkas.
- Name
service_unavailable- Description
Perkhidmatan tidak tersedia buat sementara waktu. Tunggu sebentar, kemudian cipta semula tugas tersebut.
- Name
server_error- Description
Terdapat sesuatu yang tidak kena di pihak Meshy semasa tugas tersebut dijalankan. Cipta semula tugas tersebut. Jika ia terus gagal, hubungi sokongan dengan menyertakan ID tugas tersebut.
Kod ralat
Apabila code hadir, ia menamakan salah satu masalah berikut.
image_too_complex
Imej input atau prompt menggambarkan subjek yang terlalu kompleks dari segi geometri untuk penjanaan 3D.
Sebagai contoh:
- Timbunan padat objek kecil, seperti peti penuh dengan buah-buahan atau tindanan buku
- Corak berulang yang rumit, seperti struktur kekisi, perancah, atau jaring dawai
- Bangunan kompleks, seperti bangunan berbilang tingkat dengan banyak tingkap dan balkoni
- Beberapa objek berbeza dalam satu imej, bukannya satu subjek tunggal
Input berikut berkemungkinan terlalu kompleks:




Untuk membetulkannya, cuba satu atau lebih daripada yang berikut:
- Gunakan satu objek bagi setiap imej. Meshy berfungsi dengan paling baik dengan satu subjek yang jelas, jadi jangan letakkan beberapa objek berasingan dalam imej atau prompt yang sama.
- Permudahkan subjek anda. Sebagai contoh, gunakan vas ringkas berbanding vas yang dipenuhi dengan berpuluh-puluh bunga.
- Elakkan pemandangan. Keseluruhan bangunan, blok bandar, bilik berperabot, dan lanskap berkemungkinan terlalu banyak. Fokus pada satu objek tunggal.
- Elakkan struktur berulang yang padat. Perancah, jaring dawai, kekisi, dan timbunan item kecil adalah pencetus biasa.
model_missing_uv
Anda menghantar model untuk pembuatan tekstur dengan enable_original_uv ditetapkan kepada true, tetapi model tersebut tiada koordinat UV. Koordinat UV menentukan bagaimana tekstur 2D dibalut ke permukaan 3D.

Untuk membetulkannya, lakukan salah satu daripada perkara berikut:
- Untuk mengekalkan susun atur UV model anda sendiri, contohnya untuk penempatan sambungan (seam) tersuai, tambahkan UV pada model dalam perisian 3D anda. Semak UV tersebut dalam penyunting UV perisian itu, kemudian muat naik semula model tersebut. Fail STL tidak boleh menyimpan UV, jadi gunakan GLB, FBX, atau OBJ.
- Jika anda tidak memerlukan susun atur anda sendiri, atau tidak pasti, abaikan
enable_original_uvatau tetapkannya kepadafalse. Meshy kemudiannya akan mencipta susun atur UV untuk model tersebut. UV baharu ini meliputi model dengan baik, tetapi anda tidak boleh mengawal di mana sambungan (seam) tekstur akan diletakkan.
model_insufficient_uv
Model mempunyai koordinat UV, tetapi ia hanya meliputi sebahagian kecil ruang UV sehingga tidak mencukupi untuk menghasilkan tekstur yang baik. Ini sering berlaku pada model yang pengeksportnya menulis UV placeholder atau UV yang runtuh tanpa unwrap yang betul.

Untuk membetulkannya, lakukan salah satu daripada perkara berikut:
- Untuk mengekalkan susun atur UV anda sendiri, unwrap semula koordinat UV model dalam perisian 3D anda. Sebarkan islands merentasi ruang UV dan bukannya hanya di satu sudut kecil sahaja.
- Jika anda tidak memerlukan susun atur anda sendiri, biarkan
enable_original_uvatau tetapkannya kepadafalse. Meshy kemudian akan mencipta susun atur UV baharu. Anda akan kehilangan penempatan seam anda, tetapi UV baharu itu meliputi ruang yang mencukupi untuk tekstur.
model_missing_texture
Model input tugasan Multi-Color Print tidak mempunyai warna yang boleh dipisahkan oleh Meshy kepada warna cetakan. Meshy membina 3MF pelbagai warna daripada warna model tersebut, jadi jejaring putih polos tidak mempunyai apa-apa untuk diproses. Sebagai contoh, pratonton Teks ke 3D atau Imej ke 3D yang tidak pernah ditekstur tidak mempunyai warna. Begitu juga dengan output Baiki kebolehcetakan, atau tugasan Auto Split yang tidak mengekalkan tekstur.
Apa yang dikira sebagai warna bergantung kepada style yang anda minta:
realisticmengambil sampel tekstur warna asas melalui UV model tersebut. Ia memerlukan satu tekstur warna asas, dan UV pada setiap bahagian jejaring.cartoonmeratakan warna mengikut muka. Ia menerima tekstur warna asas pada mana-mana bahagian, atau warna per-verteks (COLOR_0).
Meshy menolak model yang tiada tekstur warna asas mahupun warna verteks untuk kedua-dua gaya, dan bukannya membiarkan cartoon menukarnya menjadi cetakan satu warna.
Meshy menolak kebanyakan permintaan ini sebelum ia mencipta tugasan, dengan 400 dan penjelasan yang sama. Anda biasanya hanya mendapat kod ini apabila Meshy tidak dapat menyemak input terlebih dahulu. Sebagai contoh, Meshy menyemak muat naik .fbx hanya selepas tugasan menukarnya.
Untuk membetulkannya, gunakan pilihan yang sesuai dengan model anda:
- Tekstur model terlebih dahulu. Jalankan Retekstur ke atasnya, atau janakannya dengan tugasan refine Teks ke 3D atau tugasan Imej ke 3D dengan
should_texture: true. Kemudian hantar tugasan tersebut sebagaiinput_task_id. - Untuk model berwarna verteks, seperti imbasan fotogrametri atau jejaring yang dicat tangan, gunakan
style: "cartoon", yang membacaCOLOR_0. - Untuk model yang separa bertekstur atau pelbagai tekstur dengan
realistic, berikan setiap bahagian jejaring UV dan tekstur warna asas tunggal yang sama. Untuk melakukan ini, tekstur bahagian yang selebihnya, atau gabungkan tekstur ke dalam satu atlas. Anda juga boleh bertukar kepadastyle: "cartoon".
textured_split_refused
Tugas Auto Split dengan keep_texture: true tidak dapat mengekalkan tekstur model input pada bahagian-bahagian tersebut. Contohnya, model tidak mempunyai UV, atau teksturnya tidak mempunyai ruang untuk permukaan baharu yang dihasilkan oleh potongan tersebut. Meshy akan memulangkan semula kredit.
Untuk membetulkannya, hantar semula permintaan tanpa keep_texture, atau dengan keep_texture: false. Bahagian-bahagian itu kemudiannya akan dikembalikan dengan satu warna rata bagi setiap satu.
invalid_input
Input gagal lulus pemeriksaan, dan tiada kod yang lebih khusus berkenaan. message memberikan sebabnya.
Contohnya:
- Fail model yang kosong atau rosak
- Varian format fail yang tidak disokong, seperti fail FBX ASCII atau fail GLB yang dimampatkan menggunakan meshopt
- Model yang dimuat naik tanpa sebarang objek 3D yang sah, contohnya fail yang hanya mengandungi armature, kamera, atau cahaya
- Kandungan yang tidak lulus penapis keselamatan
Untuk membetulkannya, baca message untuk mengetahui masalah khusus tersebut. Semak sama ada fail input dan parameter anda memenuhi keperluan endpoint tersebut.
moderation_blocked
Penapis keselamatan menolak prompt atau imej rujukan anda. Penapis menyemak teks dan imej secara bersama.
Untuk membetulkannya, lakukan satu atau kedua-dua perkara berikut:
- Ubah susunan ayat prompt untuk membuang penerangan yang bersifat lucah atau sensitif.
- Tukar imej rujukan yang memaparkan kandungan yang mungkin disekat oleh penapis.
moderation_unavailable
Jenis: server_error. moderation kandungan tidak tersedia buat sementara waktu, jadi Meshy menjadikan tugas tersebut FAILED dan bukannya melangkau semakan tersebut. Tiada apa-apa yang salah dengan kandungan anda.
Untuk membetulkannya, cipta semula tugas tersebut.
timeout
Tugas berjalan melepasi had masa di bahagian pelayan, sama ada untuk pemprosesan atau untuk menunggu dalam baris gilir, jadi Meshy menggagalkannya dan memulangkan semula kredit. Beban tinggi, atau input yang terlalu kompleks untuk diselesaikan tepat pada masanya, boleh menyebabkan ini.
Ini berbeza daripada timeout dalam kod anda sendiri. Jika klien anda berhenti menunggu, tugas tersebut masih berjalan. Lihat Berapa lama untuk menunggu.
Untuk membetulkannya, ikuti langkah-langkah berikut:
- Cipta semula tugas tersebut. Timeout selalunya bersifat sementara, dan tugas baharu mungkin berjaya.
- Jika ia terus gagal, permudahkan input anda, contohnya dengan mengurangkan perincian dalam imej atau prompt anda. Untuk input yang lebih sukar diproses, lihat
image_too_complex.
queue_timeout
Jenis: timeout. Tugasan menunggu terlalu lama dalam baris gilir tanpa bermula, jadi Meshy menandakannya sebagai gagal dan memulangkan sebarang kredit yang dikenakan untuknya. Input anda tidak menyebabkan ralat ini.
Untuk membetulkannya, cipta semula tugasan tersebut.
format_conversion_failed
Meshy berjaya menjana model tersebut, tetapi penukarannya kepada format yang anda minta gagal.
Untuk membetulkannya, ikuti langkah-langkah berikut:
- Cipta semula tugasan tersebut.
- Jika satu format sentiasa gagal, mintalah format lain yang sesuai dengan keperluan anda.
Amalan terbaik
- Cuba semula tugas yang gagal. Untuk tugas yang gagal dengan
timeout,service_unavailable, atauserver_error, cipta tugas baharu dengan backoff eksponen. - Jangan cipta tugas baharu apabila permintaan anda sendiri timeout. Tugas pertama mungkin masih berjalan, jadi semak sama ada ia wujud sebelum anda mencipta satu lagi. Lihat Berapa lama untuk menunggu.
- Log ID tugas. Sertakan ID tersebut apabila anda menghubungi sokongan.
- Semak input sebelum anda menghantarnya. Pastikan imej dan model memenuhi keperluan format endpoint tersebut.
- Panggil API dari pelayan anda. Kod yang dijalankan dalam pelayar mendedahkan kunci API anda kepada sesiapa sahaja yang membuka halaman tersebut.