Basılabilirliği Onar API
Bir 3D modeli FDM basılabilirliği için onarın — manifold olmayan kenarları, bozuk yüzeyleri, delikleri ve diğer topology sorunlarını düzeltin, böylece ağ baskıya hazır hale gelsin.
Basılabilirliği Onar Görevi Oluştur
Bu uç nokta yeni bir basılabilirliği onar görevi oluşturur. Görev, bir 3D model üzerinde topology onarımı yapar ve su geçirmez, baskıya hazır bir versiyon döndürür.
Çıktı formatı, giriş formatıyla eşleşir. Eğer model_url aracılığıyla bir .stl gönderirseniz, yanıtın model_urls.stl alanı onarılmış ağı tutacak ve diğer format alanları boş kalacaktır. input_task_id yolu her zaman kaynak görevin GLB'sini okur, bu yüzden çıktı .glb olur.
Parametreler
input_task_id veya model_url'dan yalnızca biri gereklidir. Her ikisi de sağlanırsa, input_task_id önceliklidir.
Mevcut dokular, geometri değişiklikleri nedeniyle onarım sırasında kaldırılır. Dokuları geri eklemek için onarılmış model üzerinde Yeniden Dokulama API'sini kullanın.
- Name
- input_task_id
- Type
- string
- Zorunlu
- Description
Sahip olduğunuz başarılı bir görevin kimliği. Desteklenen görev türleri: Görselden 3D'ye, Çoklu görselden 3D'ye, Metinden 3D'ye, Yeniden Ağ ve Yeniden Dokulama. Görev
SUCCEEDEDdurumunda olmalı ve bir GLB varlığı üretmiş olmalıdır.
- Name
- model_url
- Type
- string
- Zorunlu
- Description
Onarılacak bir 3D modelin URL'si. Desteklenen formatlar:
.glb,.gltf,.obj,.fbx,.stl. Maksimum dosya boyutu: 100 MB.http,httpsveyadata:URL'si kullanılmalıdır (veri URL'leri uzantı kontrollerini atlar).
- Name
- alpha_thumbnail
- Type
- boolean
- varsayılan false
- Description
trueolarak ayarlandığında, görev ek olarak önizlemenin şeffaf arka planlı (RGBA) bir versiyonunu render eder ve GET yanıtındaalpha_thumbnail_urlolarak döndürür. Mevcutthumbnail_urlalanı değişmeden kalır.
Dönüşler
Yanıtın result özelliği, yeni oluşturulan basılabilirliği onar görevinin id değerini içerir.
Başarısızlık Modları
- Name
400 - Bad Request- Description
İstek kabul edilemezdi. Yaygın nedenler:
- Eksik parametre: ne
input_task_idne demodel_urlsağlanmadı. - Geçersiz UUID:
input_task_idgeçerli bir UUID değil. - Geçersiz model URL'si:
model_urlhatalı, desteklenmeyen bir şema kullanıyor veya desteklenmeyen bir dosya uzantısına sahip. - Model dosyası çok büyük:
model_urlgövdesi 100 MB'yi aştı. - Görev başarılı olmadı: başvurulan görev hala beklemede, ilerlemede veya başarısız.
- Eksik GLB: başvurulan görevde onarılacak bir GLB varlığı yok.
- Eksik parametre: ne
- Name
401 - Unauthorized- Description
Kimlik doğrulama başarısız oldu. Lütfen API anahtarınızı kontrol edin.
- Name
402 - Payment Required- Description
Yaygın nedenler:
- Ücretsiz plan: görev oluşturma ücretli bir plan gerektirir. Abonelik sayfasında yükseltin.
- Yetersiz kredi: çalışma alanı kredi limiti aşıldı.
- Name
404 - Not Found- Description
Başvurulan görev mevcut değil veya farklı bir kullanıcıya ait.
- Name
429 - Too Many Requests- Description
Bekleyen görev kotanızı veya hız sınırınızı aştınız.
İstek
# Repair an existing task
curl https://api.meshy.ai/openapi/v1/print/repair \
-X POST \
-H "Authorization: Bearer ${YOUR_API_KEY}" \
-H 'Content-Type: application/json' \
-d '{
"input_task_id": "018a210d-8ba4-705c-b111-1f1776f7f578"
}'
# Or repair a model URL directly
curl https://api.meshy.ai/openapi/v1/print/repair \
-X POST \
-H "Authorization: Bearer ${YOUR_API_KEY}" \
-H 'Content-Type: application/json' \
-d '{
"model_url": "https://example.com/model.stl"
}'
Yanıt
{
"result": "0193bfc5-ee4f-73f8-8525-44b398884ce9"
}
Bir Basılabilirliği Onar Görevini Al
Bu uç nokta, bir basılabilirliği onar görevini ID'sine göre alır.
Parametreler
- Name
- id
- Type
- path
- Description
Alınacak basılabilirliği onar görevinin ID'si.
Dönen Değerler
Basılabilirliği Onar Görev Nesnesi. model_urls bloğu görev SUCCEEDED durumuna ulaşana kadar boştur. Yalnızca giriş formatıyla eşleşen model_urls alanı doldurulur.
İstek
curl https://api.meshy.ai/openapi/v1/print/repair/a43b5c6d-7e8f-901a-234b-567c890d1e2f \
-H "Authorization: Bearer ${YOUR_API_KEY}"
Yanıt
{
"id": "0193bfc5-ee4f-73f8-8525-44b398884ce9",
"type": "print-repair",
"status": "SUCCEEDED",
"progress": 100,
"created_at": 1699999999000,
"started_at": 1700000000000,
"finished_at": 1700000030000,
"expires_at": 1715725401000,
"task_error": null,
"model_urls": {
"glb": "",
"gltf": "",
"fbx": "",
"obj": "",
"stl": "https://assets.meshy.ai/***/tasks/0193bfc5-ee4f-73f8-8525-44b398884ce9/output/model.stl?Expires=***",
"usdz": "",
"3mf": "",
"mtl": ""
},
"thumbnail_url": "https://assets.meshy.ai/***/tasks/0193bfc5-ee4f-73f8-8525-44b398884ce9/output/preview.png?Expires=***",
"texture_urls": [],
"consumed_credits": 10
}
Bir Basılabilirliği Onar Görevini Sil
Bu uç nokta, bir basılabilirliği onar görevini ve onarılmış çıktısını kalıcı olarak siler. Bu işlem geri alınamaz.
Yol Parametreleri
- Name
- id
- Type
- path
- Description
Silinecek basılabilirliği onar görevinin ID'si.
Dönen Değerler
Başarı durumunda 200 OK döner.
İstek
curl --request DELETE \
--url https://api.meshy.ai/openapi/v1/print/repair/a43b5c6d-7e8f-901a-234b-567c890d1e2f \
-H "Authorization: Bearer ${YOUR_API_KEY}"
Yanıt
// Returns 200 Ok on success.
Basılabilirliği Onar Görevlerini Listele
Bu uç nokta, basılabilirliği onar görevlerinin bir listesini almanızı sağlar.
Parametreler
İsteğe bağlı özellikler
- Name
- page_num
- Type
- integer
- Description
Sayfalama için sayfa numarası.
1ile başlar ve varsayılan olarak1'dir.
- Name
- page_size
- Type
- integer
- Description
Sayfa boyutu sınırı. Varsayılan olarak
10öğedir. İzin verilen maksimum50öğedir.
- Name
- sort_by
- Type
- string
- Description
Sıralama yapılacak alan. Mevcut değerler:
+created_at: Oluşturulma zamanına göre artan sırayla sıralar.-created_at: Oluşturulma zamanına göre azalan sırayla sıralar.
Dönen Değerler
Basılabilirliği Onar Görev Nesneleri listesini sayfalı olarak döndürür.
İstek
curl https://api.meshy.ai/openapi/v1/print/repair?page_size=10 \
-H "Authorization: Bearer ${YOUR_API_KEY}"
Yanıt
[
{
"id": "0193bfc5-ee4f-73f8-8525-44b398884ce9",
"type": "print-repair",
"status": "SUCCEEDED",
"progress": 100,
"preceding_tasks": 0,
"created_at": 1699999999000,
"started_at": 1700000000000,
"finished_at": 1700000030000,
"expires_at": 1715725401000,
"task_error": null,
"model_urls": {
"glb": "https://assets.meshy.ai/***/tasks/0193bfc5-ee4f-73f8-8525-44b398884ce9/output/model.glb?Expires=***",
"gltf": "",
"fbx": "",
"obj": "",
"stl": "",
"usdz": "",
"3mf": "",
"mtl": ""
},
"thumbnail_url": "https://assets.meshy.ai/***/tasks/0193bfc5-ee4f-73f8-8525-44b398884ce9/output/preview.png?Expires=***",
"texture_urls": [],
"consumed_credits": 10
}
]
Bir Basılabilirliği Onar Görevini Yayınla
Bu uç nokta, Server-Sent Events (SSE) kullanarak bir basılabilirliği onar görevi için gerçek zamanlı güncellemeler yayınlar.
Parametreler
- Name
- id
- Type
- path
- Description
Yayınlanacak basılabilirliği onar görevinin benzersiz tanımlayıcısı.
Dönen Değerler
Server-Sent Events olarak Basılabilirliği Onar Görev Nesneleri akışı döner.
PENDING veya IN_PROGRESS görevleri için, yanıt akışı yalnızca gerekli progress ve status alanlarını içerecektir. model_urls bloğu yalnızca görev SUCCEEDED durumuna ulaştığında gönderilir.
İstek
curl -N https://api.meshy.ai/openapi/v1/print/repair/a43b5c6d-7e8f-901a-234b-567c890d1e2f/stream \
-H "Authorization: Bearer ${YOUR_API_KEY}"
Yanıt Akışı
// Error event example
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": "a43b5c6d-7e8f-901a-234b-567c890d1e2f",
"progress": 0,
"status": "PENDING"
}
event: message
data: {
"id": "a43b5c6d-7e8f-901a-234b-567c890d1e2f",
"type": "print-repair",
"status": "SUCCEEDED",
"progress": 100,
"preceding_tasks": 0,
"created_at": 1699999999000,
"started_at": 1700000000000,
"finished_at": 1700000030000,
"expires_at": 1715725401000,
"task_error": null,
"model_urls": {
"glb": "https://assets.meshy.ai/***/tasks/a43b5c6d-7e8f-901a-234b-567c890d1e2f/output/model.glb?Expires=***",
"gltf": "",
"fbx": "",
"obj": "",
"stl": "",
"usdz": "",
"3mf": "",
"mtl": ""
},
"thumbnail_url": "https://assets.meshy.ai/***/tasks/a43b5c6d-7e8f-901a-234b-567c890d1e2f/output/preview.png?Expires=***",
"texture_urls": [],
"consumed_credits": 10
}
Basılabilirliği Onar Görev Nesnesi
- Name
- id
- Type
- string
- Description
Görev için benzersiz tanımlayıcı. Görev kimlikleri için k-sıralanabilir UUID kullanıyoruz, ancak kimliğin formatı hakkında herhangi bir varsayımda bulunmamalısınız.
- Name
- type
- Type
- string
- Description
Basılabilirliği onar görevinin türü. Değer
print-repair'dir.
- Name
- status
- Type
- string
- Description
Görevin durumu. Olası değerler
PENDING,IN_PROGRESS,SUCCEEDED,FAILED,CANCELED'den biridir.
- Name
- progress
- Type
- integer
- Description
Görevin ilerlemesi. Görev henüz başlamadıysa, bu özellik
0olacaktır. Görev başarıyla tamamlandığında, bu100olacaktır.
- Name
- preceding_tasks
- Type
- integer
- Description
Önceki görevlerin sayısı.
Bu alanın değeri yalnızca görev durumu
PENDINGise anlamlıdır.
- Name
- created_at
- Type
- timestamp
- Description
Görevin oluşturulduğu zamanın zaman damgası, milisaniye cinsinden.
- Name
- started_at
- Type
- timestamp
- Description
Görevin başladığı zamanın zaman damgası, milisaniye cinsinden. Görev henüz başlamadıysa, bu özellik
0olacaktır.
- Name
- finished_at
- Type
- timestamp
- Description
Görevin tamamlandığı zamanın zaman damgası, milisaniye cinsinden. Görev henüz tamamlanmadıysa, bu özellik
0olacaktır.
- Name
- expires_at
- Type
- timestamp
- Description
Görev sonucunun sistemden silineceği zamanın zaman damgası, milisaniye cinsinden. Görev henüz tamamlanmadıysa
0olur.
- Name
- task_error
- Type
- object
- Description
Görev başarısız olduysa hata bilgisi. Görev başarısız olmadıysa bu özellik
nullolur. Daha fazla ayrıntı için Hatalar bölümüne bakın.- Name
message- Type
- string
- Description
Ne yanlış gittiğini açıklayan hata mesajı.
- Name
- model_urls
- Type
- object
- Description
Onarılmış 3D modelin indirilebilir URL'leri. Yalnızca giriş formatıyla eşleşen alan doldurulur; diğer format alanları boş dizelerdir.
- Name
glb- Type
- string
- Description
Onarılmış GLB'nin indirilebilir URL'si. Giriş bir GLB olduğunda veya
input_task_idkullanıldığında doldurulur.
- Name
gltf- Type
- string
- Description
Onarılmış GLTF'nin indirilebilir URL'si. Giriş bir GLTF yüklemesi olduğunda doldurulur.
- Name
fbx- Type
- string
- Description
Onarılmış FBX'in indirilebilir URL'si. Giriş bir FBX yüklemesi olduğunda doldurulur.
- Name
obj- Type
- string
- Description
Onarılmış OBJ'nin indirilebilir URL'si. Giriş bir OBJ yüklemesi olduğunda doldurulur.
- Name
stl- Type
- string
- Description
Onarılmış STL'nin indirilebilir URL'si. Giriş bir STL yüklemesi olduğunda doldurulur.
- Name
usdz- Type
- string
- Description
USDZ çıktısı için ayrılmıştır. Basılabilirliği onar görevleri için her zaman boş bir dizgedir.
- Name
3mf- Type
- string
- Description
3MF çıktısı için ayrılmıştır. Basılabilirliği onar görevleri için her zaman boş bir dizgedir.
- Name
mtl- Type
- string
- Description
MTL çıktısı için ayrılmıştır. Basılabilirliği onar görevleri için her zaman boş bir dizgedir.
- Name
- thumbnail_url
- Type
- string
- Description
Onarılmış modelden render edilen önizleme görüntüsünün URL'si.
- Name
- alpha_thumbnail_url
- Type
- string
- Description
thumbnail_url'un şeffaf arka planlı (RGBA) sürümünün indirilebilir URL'si. Yalnızca görevalpha_thumbnail: trueile oluşturulduğunda ve şeffaf önizleme başarıyla render edildiğinde mevcut; aksi takdirde bu alan atlanır.
- Name
- texture_urls
- Type
- array
- Description
Her zaman boş bir dizi. Onarım yalnızca giriş geometrisini korur ve texture'ları yeniden pişirmez.
- Name
- consumed_credits
- Type
- integer
- Description
Bu görev tarafından tüketilen kredi sayısı. Görev
SUCCEEDEDdurumuna ulaştığında10olur.FAILEDgörevler için0döner (başarısızlık durumunda krediler iade edilir).
Basılabilirliği Onar Görev Nesnesi
{
"id": "0193bfc5-ee4f-73f8-8525-44b398884ce9",
"type": "print-repair",
"status": "SUCCEEDED",
"progress": 100,
"preceding_tasks": 0,
"created_at": 1699999999000,
"started_at": 1700000000000,
"finished_at": 1700000030000,
"expires_at": 1715725401000,
"task_error": null,
"model_urls": {
"glb": "https://assets.meshy.ai/***/tasks/0193bfc5-ee4f-73f8-8525-44b398884ce9/output/model.glb?Expires=***",
"gltf": "",
"fbx": "",
"obj": "",
"stl": "",
"usdz": "",
"3mf": "",
"mtl": ""
},
"thumbnail_url": "https://assets.meshy.ai/***/tasks/0193bfc5-ee4f-73f8-8525-44b398884ce9/output/preview.png?Expires=***",
"texture_urls": [],
"consumed_credits": 10
}