API Analisis kemampuan cetak
Analisis sebuah model 3D untuk kemampuan cetak — kekedapan air, volume, lubang, tepi non-manifold, dan permukaan degenerasi. Secara opsional, periksa juga ketebalan dinding pada ukuran yang Anda rencanakan untuk dicetak.
Create an Analyze Printability Task
Endpoint ini membuat task analisis kemampuan cetak baru. Task ini mengevaluasi model 3D dan melaporkan metrik kemampuan cetaknya.
Task berjalan di latar belakang. Untuk mengetahui berapa lama biasanya proses ini berlangsung, lihat Processing Times.
Jika task input sudah memiliki kemampuan cetak yang di-cache, task yang dikembalikan langsung siap dan GET pertama pada task tersebut akan mengembalikan hasil analisis tanpa melalui worker.
Untuk juga memeriksa ketebalan dinding pada ukuran yang Anda rencanakan untuk dicetak, kirim printer_type, ukuran cetak, atau keduanya. Hasilnya dikembalikan dalam printability.thin_walls. Memeriksa ketebalan dinding memerlukan waktu lebih lama, sehingga task biasanya tidak langsung siap, meskipun model sudah pernah dianalisis sebelumnya.
Parameter
Hanya salah satu dari input_task_id atau model_url yang wajib diisi. Jika keduanya diberikan, input_task_id yang diprioritaskan.
- Name
- input_task_id
- Type
- string
- Wajib
- Description
ID dari task yang berhasil (succeeded) yang Anda miliki. Jenis task yang didukung: Image to 3D, Multi-Image to 3D, Text to 3D, Remesh, dan Retexture. Task harus menggunakan Meshy 6 atau lebih baru (termasuk Meshy 7) dan harus memiliki status
SUCCEEDED. Task Repair Printability juga diterima.
- Name
- model_url
- Type
- string
- Wajib
- Description
URL dari model 3D yang akan dianalisis. Format yang didukung:
.glb,.gltf,.obj,.fbx,.stl. Gunakan URLhttpatauhttps, atau URL base64data:untuk GLB (data:model/gltf-binary;base64,...) atau glTF (data:model/gltf+json;base64,...). File.obj,.fbx, dan.stlharus dikirim sebagai URLhttpatauhttps.Ukuran file maksimum: 400 MB untuk URL
httpatauhttps, 100 MB untuk URIdata:.File GLB, glTF, FBX atau OBJ yang berukuran lebih dari 100 MB dapat memiliki maksimal 10.000.000 face. Face dihitung sebagai segitiga: sebuah quad dihitung sebagai 2, dan mesh yang digambar lebih dari sekali dihitung satu kali per salinan. Di atas 100 MB, file FBX harus berupa FBX biner 7.1 atau lebih baru, dan file GLB atau glTF tidak boleh menggunakan kompresi Draco.
URL unduhan Meshy (
assets.meshy.ai/…?Expires=…&Signature=…) ditandatangani dan berhenti berfungsi padaexpires_attask tersebut; mengambil task tersebut lagi tidak memperbarui URL ini. Untuk model yang dihasilkan dengan Meshy, kiriminput_task_idsebagai gantinya. Ini berfungsi selama task sumber masih dipertahankan (lihat Asset Retention). Untuk menggunakan kembali model setelah itu, unduh sebelumexpires_atdan kirim salinan Anda sendiri.
Kirim paling banyak satu dari dua field ukuran cetak. Jika Anda mengirim printer_type tanpa ukuran, ukuran default adalah:
.glbdaninput_task_idapa pun: tinggi 150 mm..stl: sisi terpanjang file itu sendiri, dibaca sebagai milimeter. Untuk STL dalam satuan lain, kirimintended_print_longest_side_mm..obj,.fbx,.gltf: 150 mm pada sisi terpanjang.
- Name
- printer_type
- Type
- string
- Description
Printer yang Anda rencanakan untuk digunakan. Ini menetapkan ketebalan dinding minimum untuk pemeriksaan ketebalan dinding. Default ke
fdmketika Anda mengirim ukuran cetak tanpa ini.Nilai yang tersedia:
fdm: filament, dinding minimum 1,0 mm.sla: resin, dinding minimum 0,8 mm.full_color: full-color, dinding minimum 2,0 mm.
- Name
- intended_print_height_mm
- Type
- number
- Description
Tinggi hasil cetak, dalam milimeter. Rentang:
[1, 1000]. Dibulatkan ke milimeter terdekat. Hanya untuk input GLB.
- Name
- intended_print_longest_side_mm
- Type
- number
- Description
Panjang sisi terpanjang hasil cetak, dalam milimeter. Rentang:
[1, 1000]. Dibulatkan ke milimeter terdekat. Berfungsi dengan setiap format input.
Returns
Properti result dari respons berisi id dari task analisis kemampuan cetak yang baru dibuat.
Failure Modes
- Name
400 - Bad Request- Description
Permintaan tidak dapat diterima. Penyebab umum:
- Parameter hilang: baik
input_task_idmaupunmodel_urltidak diberikan. - UUID tidak valid:
input_task_idbukan UUID yang valid. - URL model tidak valid:
model_urlsalah format, menggunakan skema yang tidak didukung, atau memiliki ekstensi file yang tidak didukung. - File model terlalu besar: isi
model_urlmelebihi 400 MB (URLhttpatauhttps) atau 100 MB (URIdata:). - Terlalu banyak face:
model_urladalah file GLB, glTF, FBX, atau OBJ berukuran lebih dari 100 MB dengan lebih dari 10.000.000 face. Kurangi jumlah face, lalu kirim ulang filenya. - ASCII FBX lebih dari 100 MB:
model_urladalah ASCII FBX lebih dari 100 MB. Kirim sebagai FBX biner atau GLB. - File model tidak dapat dibaca:
model_urllebih dari 100 MB dan headernya tidak dapat dibaca, misalnya GLB atau glTF yang dikompresi Draco, atau FBX biner yang lebih lama dari 7.1. - Header model terlalu kompleks:
model_urllebih dari 100 MB dan headernya memiliki terlalu banyak mesh, node, atau record untuk diperiksa. Kurangi jumlah objek dalam file, lalu kirim ulang. - File model tidak dapat diunduh:
model_urlmengembalikan error, paling sering karena URL unduhan Meshy yang ditandatangani telah kedaluwarsa. Mengambil task lagi mengembalikan URL yang sama dengan masa berlaku yang sama, jadi kirim salinan file Anda sendiri, atau gunakaninput_task_idselama task sumber masih dipertahankan. - Task belum berhasil: task yang dirujuk masih pending, sedang berjalan, atau gagal.
- Ukuran cetak tidak valid:
intended_print_height_mmatauintended_print_longest_side_mmberada di luar[1, 1000], atau keduanya dikirim. - Jenis printer tidak dikenal:
printer_typebukanfdm,sla, ataufull_color. - Tinggi pada model non-GLB:
intended_print_height_mmdikirim denganmodel_urlyang bukan.glb. Gunakanintended_print_longest_side_mmsebagai gantinya. - Tidak dapat menentukan ukuran model ini berdasarkan tinggi: pada tinggi yang diminta (atau default 150 mm), sisi terpanjang model akan berada di luar
[1, 1000]mm, model berbentuk datar, atau ukurannya tidak dapat ditentukan. Gunakanintended_print_longest_side_mmsebagai gantinya. Untukmodel_url.glbdan beberapa taskinput_task_id, hal ini hanya diketahui setelah task dimulai, dan task berakhirFAILEDsebagai gantinya. - Ukuran STL tidak dapat digunakan:
printer_typedikirim tanpa ukuran, dan sisi terpanjang.stlitu sendiri tidak dapat dibaca atau berada di luar[1, 1000]mm. Kirimintended_print_longest_side_mm.
- Parameter hilang: baik
- Name
401 - Unauthorized- Description
Autentikasi gagal. Silakan periksa kunci API Anda.
- Name
404 - Not Found- Description
Penyebab umum:
- Task tidak ada, telah dihapus, atau dimiliki oleh pengguna lain.
- Task menggunakan model yang lebih lama dari Meshy 6, atau mode-nya tidak menghasilkan aset 3D.
- File model yang mendasarinya tidak lagi tersedia di penyimpanan.
- Name
429 - Too Many Requests- Description
Anda telah melebihi kuota task tertunda atau batas laju Anda.
Request
# Analyze an existing task
curl https://api.meshy.ai/openapi/v1/print/analyze \
-X POST \
-H "Authorization: Bearer ${YOUR_API_KEY}" \
-H 'Content-Type: application/json' \
-d '{
"input_task_id": "018a210d-8ba4-705c-b111-1f1776f7f578"
}'
# Or analyze a model URL directly
curl https://api.meshy.ai/openapi/v1/print/analyze \
-X POST \
-H "Authorization: Bearer ${YOUR_API_KEY}" \
-H 'Content-Type: application/json' \
-d '{
"model_url": "https://example.com/model.glb"
}'
# Also check wall thickness for a 100 mm tall SLA print
curl https://api.meshy.ai/openapi/v1/print/analyze \
-X POST \
-H "Authorization: Bearer ${YOUR_API_KEY}" \
-H 'Content-Type: application/json' \
-d '{
"input_task_id": "018a210d-8ba4-705c-b111-1f1776f7f578",
"printer_type": "sla",
"intended_print_height_mm": 100
}'
Response
{
"result": "0193bfc5-ee4f-73f8-8525-44b398884ce9"
}
Mengambil Task Analisis Kemampuan Cetak
Endpoint ini mengambil task analisis kemampuan cetak berdasarkan ID-nya.
Parameter
- Name
- id
- Type
- path
- Description
ID dari task analisis kemampuan cetak yang ingin diambil.
Returns
Analyze Printability Task Object. Field printability bernilai null hingga task mencapai status SUCCEEDED. Saat ketebalan dinding diperiksa, printability juga menyertakan intended_print dan thin_walls.
Request
curl https://api.meshy.ai/openapi/v1/print/analyze/a43b5c6d-7e8f-901a-234b-567c890d1e2f \
-H "Authorization: Bearer ${YOUR_API_KEY}"
Response
{
"id": "0193bfc5-ee4f-73f8-8525-44b398884ce9",
"type": "print-analyze",
"status": "SUCCEEDED",
"progress": 100,
"created_at": 1699999999000,
"started_at": 1700000000000,
"finished_at": 1700000001000,
"expires_at": 1715725401000,
"task_error": null,
"printability": {
"_version": "v1",
"status": "warning",
"issue_count": 1,
"error_count": 0,
"warning_count": 1,
"metrics": {
"is_watertight": true,
"volume": 1.316167354292668,
"non_manifold_edges": 0,
"degenerate_faces": 43242,
"holes": 0
},
"evaluated_at": 1700000001000
},
"consumed_credits": 0
}
Response (wall thickness checked)
{
"id": "0193bfc5-ee4f-73f8-8525-44b398884ce9",
"type": "print-analyze",
"status": "SUCCEEDED",
"progress": 100,
"created_at": 1699999999000,
"started_at": 1700000000000,
"finished_at": 1700000012000,
"expires_at": 1715725412000,
"task_error": null,
"printability": {
"_version": "v1",
"status": "error",
"issue_count": 2,
"error_count": 1,
"warning_count": 1,
"metrics": {
"is_watertight": true,
"volume": 1.316167354292668,
"non_manifold_edges": 0,
"degenerate_faces": 43242,
"holes": 0
},
"intended_print": {
"printer_type": "sla",
"height_mm": 100,
"longest_side_mm": 118,
"wall_thickness_mm": 0.8,
"dimensions_mm": [118, 72.41, 99.87]
},
"thin_walls": {
"thin_area_ratio": 0.083,
"has_thin_walls": true,
"status": "error"
},
"evaluated_at": 1700000012000
},
"consumed_credits": 0
}
Hapus Tugas Analisis Kemampuan Cetak
Endpoint ini menghapus secara permanen tugas analisis kemampuan cetak beserta hasil yang disimpan dalam cache. Tindakan ini tidak dapat dibatalkan.
Parameter Jalur
- Name
- id
- Type
- path
- Description
ID dari tugas analisis kemampuan cetak yang akan dihapus.
Status Tugas
Tugas yang masih berstatus PENDING akan dihapus dan kredit yang terpakai
saat pembuatan akan dikembalikan.
Tugas yang sudah berstatus IN_PROGRESS tidak dapat dihapus: permintaan
akan ditolak dengan 409 Conflict dan tugas tetap berjalan. Kredit untuk
tugas yang sudah mulai diproses oleh worker tidak dapat dikembalikan,
sehingga menghapusnya di tengah proses akan membuat Anda kehilangan
kredit sekaligus hasilnya. Tunggu hingga mencapai status SUCCEEDED,
FAILED, atau CANCELED, baru kemudian hapus.
Tugas dengan status akhir (SUCCEEDED, FAILED, atau CANCELED) akan
dihapus tanpa pengembalian kredit.
Returns
Mengembalikan 200 OK jika berhasil, atau 409 Conflict ketika tugas
berstatus IN_PROGRESS.
Request
curl --request DELETE \
--url https://api.meshy.ai/openapi/v1/print/analyze/a43b5c6d-7e8f-901a-234b-567c890d1e2f \
-H "Authorization: Bearer ${YOUR_API_KEY}"
Response
// 200 OK on success, with an empty body.
//
// 409 Conflict when the task is IN_PROGRESS — the task is left running:
{
"message": "Task is IN_PROGRESS and cannot be deleted. Credits for a task the worker has already started are not refundable; wait for it to reach SUCCEEDED, FAILED or CANCELED, then delete it."
}
Daftar Tugas Analisis Kemampuan Cetak
Endpoint ini memungkinkan Anda untuk mengambil daftar tugas analisis kemampuan cetak.
Parameter
Atribut opsional
- Name
- page_num
- Type
- integer
- Description
Nomor halaman untuk paginasi. Dimulai dan secara default bernilai
1.
- Name
- page_size
- Type
- integer
- Description
Batas ukuran halaman. Secara default
10item. Maksimum yang diizinkan adalah100item.
- Name
- sort_by
- Type
- string
- 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 berpaginasi dari Objek Tugas Analisis Kemampuan Cetak.
Request
curl https://api.meshy.ai/openapi/v1/print/analyze?page_size=10 \
-H "Authorization: Bearer ${YOUR_API_KEY}"
Response
[
{
"id": "0193bfc5-ee4f-73f8-8525-44b398884ce9",
"type": "print-analyze",
"status": "SUCCEEDED",
"progress": 100,
"preceding_tasks": 0,
"created_at": 1699999999000,
"started_at": 1700000000000,
"finished_at": 1700000001000,
"expires_at": 1715725401000,
"task_error": null,
"printability": {
"_version": "v1",
"status": "warning",
"issue_count": 1,
"error_count": 0,
"warning_count": 1,
"metrics": {
"is_watertight": true,
"volume": 1.316167354292668,
"non_manifold_edges": 0,
"degenerate_faces": 43242,
"holes": 0
},
"evaluated_at": 1700000001000
},
"consumed_credits": 0
}
]
Stream an Analyze Printability Task
Endpoint ini melakukan streaming pembaruan secara real-time untuk tugas analisis kemampuan cetak menggunakan Server-Sent Events (SSE).
Parameter
- Name
- id
- Type
- path
- Description
Pengidentifikasi unik untuk tugas analisis kemampuan cetak yang akan di-streaming.
Returns
Mengembalikan stream dari Analyze Printability Task Objects sebagai Server-Sent Events.
Setiap frame membawa objek tugas lengkap untuk tahap tersebut — bentuk yang sama
dengan yang dikembalikan oleh endpoint Get — sehingga selama tugas berstatus PENDING atau IN_PROGRESS,
kolom output belum terisi (null, [] atau {}) dan
finished_at bernilai null. Blok printability hanya dikirim setelah tugas mencapai status SUCCEEDED.
Request
curl -N https://api.meshy.ai/openapi/v1/print/analyze/a43b5c6d-7e8f-901a-234b-567c890d1e2f/stream \
-H "Authorization: Bearer ${YOUR_API_KEY}"
Response Stream
// Error event example
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 PENDING frame below is abbreviated to the fields that change.
event: message
data: {
"id": "a43b5c6d-7e8f-901a-234b-567c890d1e2f",
"progress": 0,
"status": "PENDING"
}
event: message
data: {
"id": "a43b5c6d-7e8f-901a-234b-567c890d1e2f",
"type": "print-analyze",
"status": "SUCCEEDED",
"progress": 100,
"preceding_tasks": 0,
"created_at": 1699999999000,
"started_at": 1700000000000,
"finished_at": 1700000001000,
"expires_at": 1715725401000,
"task_error": null,
"printability": {
"_version": "v1",
"status": "warning",
"issue_count": 1,
"error_count": 0,
"warning_count": 1,
"metrics": {
"is_watertight": true,
"volume": 1.316167354292668,
"non_manifold_edges": 0,
"degenerate_faces": 43242,
"holes": 0
},
"evaluated_at": 1700000001000
},
"consumed_credits": 0
}
The Analyze Printability Task Object
- Name
- id
- Type
- string
- Description
Pengidentifikasi unik untuk task. Meskipun kami menggunakan k-sortable UUID untuk id task sebagai detail implementasi, Anda tidak boleh membuat asumsi apa pun tentang format id tersebut.
- Name
- type
- Type
- string
- Description
Tipe dari task analisis kemampuan cetak. Nilainya adalah
print-analyze.
- Name
- status
- Type
- string
- Description
Status dari task. Nilai yang mungkin 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, ini akan menjadi100.
- Name
- preceding_tasks
- Type
- integer
- Description
Jumlah task yang mendahului.
Nilai dari field ini hanya bermakna jika status task adalah
PENDING.
- 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 akan kedaluwarsa dari sistem, dalam milidetik.
0jika task belum selesai.
- Name
- task_error
- Type
- object
- Description
Informasi kesalahan jika task gagal. Properti ini bernilai
nulljika task tidak gagal. Lihat Kesalahan untuk detail lebih lanjut.- Name
message- Type
- string
- Description
Pesan kesalahan yang menjelaskan apa yang salah.
- Name
- printability
- Type
- object
- Description
Hasil evaluasi kemampuan cetak.
nullhingga task mencapai statusSUCCEEDED.- Name
_version- Type
- string
- Description
Versi skema dari hasil kemampuan cetak. Saat ini
v1.
- Name
status- Type
- string
- Description
Status keseluruhan. Salah satu dari:
healthy: tidak ada kesalahan dan tidak ada peringatan.warning: setidaknya ada satu peringatan, tidak ada kesalahan.error: setidaknya ada satu kesalahan.unknown: model tidak dapat dianalisis.
Saat ketebalan dinding diperiksa, ini adalah nilai terburuk dari pemeriksaan di atas dan
thin_walls.status. Dari yang terburuk hingga terbaik:error,warning,unknown,healthy.
- Name
issue_count- Type
- integer
- Description
Jumlah total masalah, sama dengan
error_count + warning_count.
- Name
error_count- Type
- integer
- Description
Jumlah masalah level kesalahan. Kesalahan muncul ketika model tidak watertight, memiliki volume non-positif, atau memiliki tepi non-manifold. Saat ketebalan dinding diperiksa, dinding yang terlalu tipis (
thin_walls.statusbernilaierror) dihitung sebagai satu kesalahan tambahan.
- Name
warning_count- Type
- integer
- Description
Jumlah masalah level peringatan. Peringatan muncul ketika model mengandung permukaan degenerasi atau lubang.
- Name
metrics- Type
- object
- Description
Metrik geometri mentah yang dikembalikan oleh evaluator.
- Name
is_watertight- Type
- boolean
- Description
trueketika mesh tidak memiliki tepi batas (yaitu, tertutup).
- Name
volume- Type
- number
- Description
Volume model dalam meter kubik.
- Name
non_manifold_edges- Type
- integer
- Description
Jumlah tepi non-manifold.
- Name
degenerate_faces- Type
- integer
- Description
Jumlah permukaan degenerasi (permukaan dengan luas nol atau tidak valid).
- Name
holes- Type
- integer
- Description
Jumlah lubang (loop batas) dalam mesh.
- Name
intended_print- Type
- object
- Description
Printer dan ukuran yang digunakan oleh pemeriksaan ketebalan dinding. Hanya ada ketika ketebalan dinding diperiksa.
- Name
printer_type- Type
- string
- Description
fdm,sla, ataufull_color.
- Name
height_mm- Type
- number
- Description
Tinggi cetakan dalam milimeter, jika ukuran cetakan ditentukan berdasarkan tinggi. Jika tidak,
null.
- Name
longest_side_mm- Type
- number
- Description
Sisi terpanjang dari cetakan dalam milimeter. Ketika ukuran ditentukan berdasarkan tinggi, nilai ini dihitung dari proporsi model.
- Name
wall_thickness_mm- Type
- number
- Description
Ketebalan dinding minimum untuk
printer_type, dalam milimeter. Dinding yang lebih tipis dari ini dilaporkan sebagai terlalu tipis.
- Name
dimensions_mm- Type
- array
- Description
[lebar, kedalaman, tinggi]dari cetakan dalam milimeter. Tinggi dapat berbeda dariheight_mmsebesar sebagian kecil milimeter.nulluntuk input non-GLB, atau jika ukuran model tidak dapat ditentukan.
- Name
thin_walls- Type
- object
- Description
Hasil dari pemeriksaan ketebalan dinding. Hanya ada ketika ketebalan dinding diperiksa.
- Name
thin_area_ratio- Type
- number
- Description
Bagian dari permukaan, dari
0hingga1, yang lebih tipis dariintended_print.wall_thickness_mm.nulljika model tidak dapat diukur.
- Name
has_thin_walls- Type
- boolean
- Description
truejika ada bagian permukaan yang terlalu tipis. Sudut tajam saja dapat memicu ini, jadi gunakanstatusuntuk menentukan apakah dinding perlu ditebalkan.nulljika model tidak dapat diukur.
- Name
status- Type
- string
- Description
Keputusan ketebalan dinding. Salah satu dari:
healthy: 5% atau kurang dari permukaan yang terlalu tipis.error: lebih dari 5% permukaan terlalu tipis. Untuk menebalkan dinding, berikaniddari task ini ke Perbaiki kemampuan cetak sebagaiinput_task_id(untukmodel_urlberupa.stl,.fbx, atau.gltf, kirim file tersebut sebagaimodel_url).unknown: model tidak dapat diukur. Jika pemeriksaan ketebalan dinding itu sendiri gagal, task akan berakhir dengan statusFAILED.
- Name
evaluated_at- Type
- timestamp
- Description
Stempel waktu saat analisis dihitung, dalam milidetik sejak epoch.
- Name
- consumed_credits
- Type
- integer
- Description
Selalu
0. Endpoint ini gratis.
The Analyze Printability Task Object
{
"id": "0193bfc5-ee4f-73f8-8525-44b398884ce9",
"type": "print-analyze",
"status": "SUCCEEDED",
"progress": 100,
"preceding_tasks": 0,
"created_at": 1699999999000,
"started_at": 1700000000000,
"finished_at": 1700000001000,
"expires_at": 1715725401000,
"task_error": null,
"printability": {
"_version": "v1",
"status": "warning",
"issue_count": 1,
"error_count": 0,
"warning_count": 1,
"metrics": {
"is_watertight": true,
"volume": 1.316167354292668,
"non_manifold_edges": 0,
"degenerate_faces": 43242,
"holes": 0
},
"evaluated_at": 1700000001000
},
"consumed_credits": 0
}
The Analyze Printability Task Object (wall thickness checked)
{
"id": "0193bfc5-ee4f-73f8-8525-44b398884ce9",
"type": "print-analyze",
"status": "SUCCEEDED",
"progress": 100,
"preceding_tasks": 0,
"created_at": 1699999999000,
"started_at": 1700000000000,
"finished_at": 1700000012000,
"expires_at": 1715725412000,
"task_error": null,
"printability": {
"_version": "v1",
"status": "error",
"issue_count": 2,
"error_count": 1,
"warning_count": 1,
"metrics": {
"is_watertight": true,
"volume": 1.316167354292668,
"non_manifold_edges": 0,
"degenerate_faces": 43242,
"holes": 0
},
"intended_print": {
"printer_type": "sla",
"height_mm": 100,
"longest_side_mm": 118,
"wall_thickness_mm": 0.8,
"dimensions_mm": [118, 72.41, 99.87]
},
"thin_walls": {
"thin_area_ratio": 0.083,
"has_thin_walls": true,
"status": "error"
},
"evaluated_at": 1700000012000
},
"consumed_credits": 0
}