Yeniden Boyutlandırma API'si
Yeniden Boyutlandırma API'si, mevcut 3D modelleri gerçek dünya boyutlarına yeniden boyutlandırmanıza olanak tanır. Belirli bir yükseklik, en uzun kenar kısıtlaması belirtebilir veya AI'nın uygun boyutu otomatik olarak tahmin etmesine izin verebilirsiniz.
Yeniden Boyutlandırma Görevi Oluştur
Bu uç nokta yeni bir yeniden boyutlandırma görevi oluşturur.
Parametreler
input_task_id veya model_url'den yalnızca biri gereklidir. Her ikisi de sağlanırsa, input_task_id önceliklidir.
- Name
- input_task_id
- Type
- string
- Zorunlu
- Description
Yeniden boyutlandırmak istediğiniz tamamlanmış bir Meshy görevinin kimliği. Görevin durumu
SUCCEEDEDolmalıdır. Çıktı formatı GLB olacaktır.
- Name
- model_url
- Type
- string
- Zorunlu
- Description
3D model dosyasına işaret eden herkese açık bir URL veya veri URI'si. Desteklenen formatlar:
.glb,.gltf,.obj,.fbx,.stl. Veri URI'leri için MIME type:application/octet-streamkullanın. Çıktı formatı, giriş modelinin orijinal formatını koruyacaktır.
Tam olarak bir yeniden boyutlandırma modu gereklidir: resize_height, resize_longest_side veya auto_size. Bu üç parametre birbirini dışlar.
- Name
- resize_height
- Type
- number
- Description
Modeli metre cinsinden ölçülen belirli bir yüksekliğe yeniden boyutlandırın.
- Name
- resize_longest_side
- Type
- number
- Description
Modeli, en uzun kenarının bu değere eşit olacak şekilde yeniden boyutlandırın, metre cinsinden ölçülür. En boy oranı korunur.
- Name
- auto_size
- Type
- boolean
- Description
trueolarak ayarlandığında, hizmet AI görüşünü kullanarak nesnenin gerçek dünya yüksekliğini otomatik olarak tahmin eder ve modeli buna göre yeniden boyutlandırır.origin_ataçıkça ayarlanmadıkça orijin varsayılan olarakbottomolacaktır.
- Name
- origin_at
- Type
- string
- varsayılan bottom
- Description
Yeniden boyutlandırmadan sonra orijinin konumu.
Mevcut değerler:
bottom,center.
Dönen Değerler
Yanıtın result özelliği, yeni oluşturulan yeniden boyutlandırma görevinin id değerini içerir.
Başarısızlık Modları
400 - Bad Request
İstek kabul edilemezdi. Yaygın nedenler:
- Eksik parametre:
model_urlveyainput_task_idsağlanmalıdır. - Eksik yeniden boyutlandırma modu:
resize_height,resize_longest_sideveyaauto_size'dan en az biri belirtilmelidir. - Birbirini dışlayan parametreler:
resize_height,resize_longest_sideveauto_sizebirleştirilemez. - Geçersiz giriş görevi:
input_task_idbaşarılı bir göreve atıfta bulunmalıdır. - Geçersiz model formatı:
model_urldesteklenmeyen bir uzantıya sahip bir dosyaya işaret ediyor. - Erişilemeyen URL:
model_urlindirilemedi.
401 - Unauthorized
Kimlik doğrulama başarısız oldu. Lütfen API anahtarınızı kontrol edin.
402 - Payment Required
Bu görevi gerçekleştirmek için yetersiz kredi.
429 - Too Many Requests
Hız sınırınızı aştınız.
İstek
# Simple: resize to a specific height
curl https://api.meshy.ai/openapi/v1/resize \
-X POST \
-H "Authorization: Bearer ${YOUR_API_KEY}" \
-H 'Content-Type: application/json' \
-d '{
"input_task_id": "018a210d-8ba4-705c-b111-1f1776f7f578",
"resize_height": 1.8
}'
# Advanced: resize longest side with custom origin
curl https://api.meshy.ai/openapi/v1/resize \
-X POST \
-H "Authorization: Bearer ${YOUR_API_KEY}" \
-H 'Content-Type: application/json' \
-d '{
"model_url": "https://example.com/model.glb",
"resize_longest_side": 2.0,
"origin_at": "center"
}'
Yanıt
{
"result": "0193bfc5-ee4f-73f8-8525-44b398884ce9"
}
Bir Yeniden Boyutlandırma Görevini Getir
Bu uç nokta, bir yeniden boyutlandırma görevini ID'si ile getirir.
Parametreler
- Name
- id
- Type
- path
- Description
Getirilecek yeniden boyutlandırma görevinin ID'si.
Dönen Değerler
Yeniden Boyutlandırma Görevi nesnesi.
İstek
curl https://api.meshy.ai/openapi/v1/resize/a43b5c6d-7e8f-901a-234b-567c890d1e2f \
-H "Authorization: Bearer ${YOUR_API_KEY}"
Yanıt
{
"id": "0193bfc5-ee4f-73f8-8525-44b398884ce9",
"type": "resize",
"model_urls": {
"glb": "https://assets.meshy.ai/.../model.glb?Expires=..."
},
"progress": 100,
"status": "SUCCEEDED",
"created_at": 1699999999000,
"started_at": 1700000000000,
"finished_at": 1700000001000,
"task_error": null,
"consumed_credits": 1
}
Bir Yeniden Boyutlandırma Görevini Sil
Bu uç nokta, bir yeniden boyutlandırma görevini, ilgili tüm modeller ve veriler dahil olmak üzere kalıcı olarak siler. Bu işlem geri alınamaz.
Yol Parametreleri
- Name
- id
- Type
- path
- Description
Silinecek yeniden boyutlandırma görevinin kimliği.
Dönen Değerler
Başarı durumunda 200 OK döner.
İstek
curl --request DELETE \
--url https://api.meshy.ai/openapi/v1/resize/a43b5c6d-7e8f-901a-234b-567c890d1e2f \
-H "Authorization: Bearer ${YOUR_API_KEY}"
Yanıt
// Returns 200 Ok on success.
Yeniden Boyutlandırma Görevlerini Listele
Bu uç nokta, yeniden boyutlandırma görevlerinin bir listesini almanızı sağlar.
Parametreler
- Name
- page_num
- Type
- integer
- varsayılan 1
- Description
Sayfalama için sayfa numarası.
- Name
- page_size
- Type
- integer
- varsayılan 10
- Description
Sayfa boyutu sınırı. İzin verilen maksimum değer
50öğ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ırada sıralar.-created_at: Oluşturulma zamanına göre azalan sırada sıralar.
Dönen Değerler
Yeniden Boyutlandırma Görev Nesneleri listesini sayfalı olarak döndürür.
İstek
curl https://api.meshy.ai/openapi/v1/resize?page_size=10 \
-H "Authorization: Bearer ${YOUR_API_KEY}"
Yanıt
[
{
"id": "0193bfc5-ee4f-73f8-8525-44b398884ce9",
"type": "resize",
"model_urls": {
"glb": "https://assets.meshy.ai/.../model.glb?Expires=..."
},
"progress": 100,
"status": "SUCCEEDED",
"created_at": 1699999999000,
"started_at": 1700000000000,
"finished_at": 1700000001000,
"task_error": null,
"consumed_credits": 1
}
]
Yeniden Boyutlandırma Görevini Yayınla
Bu uç nokta, Server-Sent Events (SSE) kullanarak bir yeniden boyutlandırma görevi için gerçek zamanlı güncellemeleri yayınlar.
Parametreler
- Name
- id
- Type
- path
- Description
Yayınlanacak yeniden boyutlandırma görevi için benzersiz tanımlayıcı.
Dönen Değerler
Server-Sent Events olarak Yeniden Boyutlandırma Görevi Nesneleri akışını döndürür.
PENDING veya IN_PROGRESS görevleri için, yanıt akışı yalnızca gerekli progress ve status alanlarını içerecektir.
İstek
curl -N https://api.meshy.ai/openapi/v1/resize/a43b5c6d-7e8f-901a-234b-567c890d1e2f/stream \
-H "Authorization: Bearer ${YOUR_API_KEY}"
Yanıt Akışı
// Message event examples illustrate task progress.
event: message
data: {
"id": "0193bfc5-ee4f-73f8-8525-44b398884ce9",
"progress": 0,
"status": "PENDING"
}
event: message
data: {
"id": "0193bfc5-ee4f-73f8-8525-44b398884ce9",
"type": "resize",
"model_urls": {
"glb": "https://assets.meshy.ai/.../model.glb?Expires=..."
},
"progress": 100,
"status": "SUCCEEDED",
"created_at": 1699999999000,
"started_at": 1700000000000,
"finished_at": 1700000001000,
"task_error": null,
"consumed_credits": 1
}
Yeniden Boyutlandırma Görevi Nesnesi
Yeniden Boyutlandırma Görevi nesnesi, bir yeniden boyutlandırma işini temsil eder.
Özellikler
id· string
Görev için benzersiz tanımlayıcı.
type· string
Görevin türü. Değer resize'dir.
model_urls· object
Yeniden boyutlandırılmış model dosyası için indirilebilir URL. input_task_id kullanıldığında, çıktı her zaman GLB'dir. model_url kullanıldığında, çıktı orijinal formatı korur.
progress· integer
Görevin ilerlemesi (0-100).
status· string
Görevin durumu. Olası değerler: PENDING, IN_PROGRESS, SUCCEEDED, FAILED, CANCELED.
preceding_tasks· integer
Önceki görevlerin sayısı. Sadece durum PENDING olduğunda anlamlıdır.
created_at· timestamp
Görevin oluşturulduğu zamanın zaman damgası, milisaniye cinsinden.
started_at· timestamp
Görevin başlatıldığı zamanın zaman damgası, milisaniye cinsinden. Başlatılmadıysa 0.
finished_at· timestamp
Görevin tamamlandığı zamanın zaman damgası, milisaniye cinsinden. Tamamlanmadıysa 0.
task_error· object
Görev başarısız olduysa hata nesnesi. Daha fazla detay için Hatalar sayfasına bakın.
consumed_credits· integer
Bu görev tarafından tüketilen kredi sayısı (her yeniden boyutlandırma görevi için 1 kredi). FAILED görevler için 0 döner.