Fotoğraflarınızı özel buzdolabı mıknatıslarına dönüştürün — buzdolabına uygun
boyutta, düz mıknatıslı bir arka yüzeye sahip, yuvarlatılmış dikdörtgen
şeklinde renklendirilmiş bir derinlik kabartması — iki aşamada: prototip,
girdi fotoğrafınızdan renklendirilmiş bir konsept görüntü oluşturur, ardından
yapı bu konsept görüntüyü kabartmalı bir 3D modele dönüştürür. İki aşama
input_task_id aracılığıyla birbirine bağlanır.
POST /openapi/creative-lab/fridge-magnet/v1/prototype
Kaynak fotoğraftan tek bir renklendirilmiş konsept görsel oluşturur. Döndürülen görev ID'si, build uç noktasına input_task_id olarak ilettiğiniz değerdir. Yanıt biçimi için
Buzdolabı Mıknatısı Prototip Görevi Nesnesi
bölümüne bakın.
Parametreler
Name
image_url
Type
string
Zorunlu
Description
Meshy'nin buzdolabı mıknatısına hazır bir konsept görsele renklendireceği kaynak fotoğraf. Şu anda .jpg, .jpeg, .png ve .webp biçimlerini destekliyoruz.
Görseli sağlamanın iki yolu vardır:
Herkese açık erişilebilir URL: Genel internetten erişilebilen bir URL.
Data URI: Görselin base64 ile kodlanmış bir data URI'si. Data URI örneği: data:image/jpeg;base64,<base64 ile kodlanmış görsel verileriniz>.
Name
name
Type
string
Description
Görüntüleme amaçlı isteğe bağlı görev adı. En fazla 100 karakter.
Name
remove_background
Type
boolean
varsayılan false
Description
true olarak ayarlandığında, prototip görsel arka planı kaldırılmış şeffaf bir RGBA PNG olarak döndürülür; böylece konuyu istediğiniz herhangi bir arka planla birleştirebilirsiniz.
Bu yalnızca bu uç noktanın döndürdüğü görseli kontrol eder. Reliefleme öncesinde arka plan kaldırmayı kontrol eden aynı adlı build seçeneğinden (varsayılan true) ayrıdır.
Dönüş Değerleri
Yanıtın result özelliği, yeni oluşturulan buzdolabı mıknatısı prototip görevinin id değerini içerir. Görev Getirme uç noktasını yoklayın veya stream'e abone olun; görev SUCCEEDED durumuna ulaştığında bu ID'yi build uç noktasınainput_task_id olarak iletin.
Hata Modları
Name
400 - Bad Request
Description
İstek kabul edilemedi. Yaygın nedenler:
Eksik parametre: image_url zorunludur.
Geçersiz görsel biçimi: Sağlanan image_url desteklenen bir biçimde değil (.jpg, .jpeg, .png, .webp).
Görsel boyutları aralık dışında: Görsel çok küçük, maksimum dosya boyutunu aşıyor veya maksimum piksel sayısını aşıyor.
Erişilemeyen URL: image_url indirilemedi (404 veya timeout).
Geçersiz Data URI: Base64 dizesi hatalı biçimlendirilmiş.
İçerik işaretlendi: Girdi görseli NSFW veya fikri mülkiyet moderasyonu tarafından işaretlendi.
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
Bu görevi gerçekleştirmek için yetersiz kredi.
Name
429 - Too Many Requests
Description
Hız sınırınızı aştınız.
Request
POST
/openapi/creative-lab/fridge-magnet/v1/prototype
# Stage 1: generate a colorized fridge magnet concept imagecurlhttps://api.meshy.ai/openapi/creative-lab/fridge-magnet/v1/prototype \-XPOST \-H"Authorization: Bearer ${YOUR_API_KEY}" \-H'Content-Type: application/json' \-d'{ "image_url": "<your publicly accessible image url or base64-encoded data URI>" }'
Response
{"result":"01a3d8f1-8c2e-7d04-b223-3f3776a1c8c9"}
Prototip örneği
Bir kaynak fotoğrafla başlayın, ardından buzdolabı mıknatısı build aşaması tarafından kullanılan prototip görseli oluşturun.
Başarılı bir prototip görevinden basılabilir nihai 3D buzdolabı mıknatısını oluşturun. Bu oluşturma işlemi, prototipin renklendirilmiş konsept görüntüsü üzerinde bir derinlik haritası kabartma iş akışı çalıştırır ve istediğiniz formatta tek bir ağ çıktısı sunar. Yanıt biçimi için
Buzdolabı Mıknatısı Oluşturma Görevi Nesnesi bölümüne bakın.
Parametreler
Name
input_task_id
Type
string
Zorunlu
Description
Bu aynı OpenAPI uç noktası üzerinden oluşturulmuş bir prototip görevinin görev ID'si. Prototip, aynı API anahtarıyla oluşturulmuş olmalı, SUCCEEDED durumuna ulaşmış olmalı ve tam olarak bir aday görüntü üretmiş olmalıdır.
Web uygulaması üzerinden oluşturulan prototip görevleri kabul edilmez — build uç noktası yalnızca POST /openapi/creative-lab/fridge-magnet/v1/prototype tarafından üretilen prototip görevlerini kabul eder ve diğer tüm kaynakları 404 ile reddeder.
Name
name
Type
string
Description
Görüntüleme amaçlı isteğe bağlı görev adı. Maksimum 100 karakter.
options
Kabartma geometrisi için isteğe bağlı ayar parametreleri. Her alanın makul bir varsayılan değeri vardır — yalnızca geçersiz kılmak istediklerinizi gönderin.
Name
badge_shape
Type
string
varsayılan rounded-rect
Description
Buzdolabı mıknatısının dış hat silueti. Kullanılabilir değerler:
Taban üzerindeki maksimum kabartma yüksekliği, milimetre cinsinden. Aralık: [0, 20].
Name
relief_offset_mm
Type
number
varsayılan 0
Description
Ekstrüzyondan önce kabartmaya uygulanan dikey ofset, milimetre cinsinden. Aralık: [0, 20].
Name
base_thickness_mm
Type
number
varsayılan 2.0
Description
Kabartmanın arkasındaki düz taban plakasının kalınlığı, milimetre cinsinden. Buzdolabı mıknatısı için varsayılan değer, daha kalın olan 2 mm'lik bir taban değeridir — bu, mıknatısın buzdolabına tutunması için yeterli gövde sağlarken kabartmanın kırılgan hissettirmemesini sağlar. Aralık: [0, 20].
Name
has_closed_back
Type
boolean
varsayılan true
Description
Buzdolabı mıknatısının arkasının kapalı bir yüzey olarak mühürlenip mühürlenmediği (mıknatısı yapıştırdığınız taraf). Açık bir kabuk için false olarak ayarlayın.
Aktarım eğrisi için şekil parametresi (yalnızca relief_curve değeri gamma olduğunda anlamlıdır). Aralık: (0, 10].
Name
invert_depth
Type
boolean
varsayılan false
Description
Derinlik haritası yorumunu tersine çevirerek daha koyu bölgelerin daha yüksek kabartma olmasını sağlayın.
Name
smoothing
Type
number
varsayılan 0.24
Description
Kabartma çıkarımından önce derinlik haritasına uygulanan yumuşatma gücü. Aralık: [0, 10].
Name
relief_scale
Type
number
varsayılan 1.0
Description
relief_height_mm üzerine uygulanan dikey ölçek çarpanı. Aralık: (0, 10].
Name
depth_threshold
Type
number
varsayılan 0.1
Description
Derinlik haritası değerleri için alçak geçiren eşik değeri; bunun altındaki her şey sıfıra sabitlenir. Aralık: [0, 1].
Name
remove_background
Type
boolean
varsayılan true
Description
Kabartma işleminden önce prototipin konsept görüntüsünün arka planını otomatik olarak kaldırın.
Aynı isme sahip prototip parametresinden (varsayılan false) ayrıdır; bu parametre, prototip görüntüsünün kendisinin şeffaflıkla döndürülüp döndürülmeyeceğini kontrol eder.
Name
export_resolution
Type
integer
varsayılan 512
Description
Dışa aktarma için kullanılan ağ çözünürlüğü. Aralık: [64, 2048].
output
İsteğe bağlı aktarım biçimi seçici. Varsayılan olarak glb kullanılır.
Name
format
Type
string
varsayılan glb
Description
Oluşturma işlemi tarafından döndürülen çıktı paketi. Kullanılabilir değerler:
glb (varsayılan) — model_urls.glb altında tek bir model.glb döndürür.
obj — model.obj + model.mtl + texture.png dosyalarını sıkıştırır ve paketi model_urls.obj altında döndürür.
zip — oluşturucunun ürettiği her çıktıyı sıkıştırır ve paketi model_urls.bundle_zip altında döndürür.
Dönüş Değerleri
Yanıtın result özelliği, yeni oluşturulan buzdolabı mıknatısı oluşturma görevinin id değerini içerir. Görev SUCCEEDED durumuna ulaşana kadar Bir Görevi Al uç noktasını yoklayın veya stream aboneliği alın, ardından çıktıyı model_urls içindeki tek girişten indirin.
Başarısızlık Durumları
Name
400 - Bad Request
Description
İstek kabul edilemedi. Yaygın nedenler:
Eksik parametre: input_task_id gereklidir.
Geçersiz UUID: input_task_id geçerli bir UUID değil.
Üst görev başarılı değil: Referans verilen prototip görevi henüz SUCCEEDED durumuna ulaşmadı.
Aday yok: Prototip görevi başarılı oldu ancak hiçbir aday görüntü üretmedi.
Options aralık dışında: options alanlarından biri izin verilen aralığın veya enum kümesinin dışında kaldı.
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
Bu görevi gerçekleştirmek için yetersiz kredi.
Name
404 - Not Found
Description
Referans verilen prototip görevi mevcut değil, farklı bir kullanıcıya ait veya web uygulaması üzerinden oluşturulmuş (yalnızca API modundaki prototip görevleri build'e zincirlenebilir).
Geçerli bir görev id'si verildiğinde bir prototip veya build görevini getirir. URL yolu
görevin aşamasıyla eşleşmelidir — /prototype/:id üzerinden getirilen bir build görevi
404 döndürür ve bunun tersi de geçerlidir.
Bir buzdolabı mıknatısı görevini iptal edin. Görev hâlâ PENDING durumundaysa,
oluşturma sırasında harcanan kredi iade edilir. Zaten IN_PROGRESS
durumunda olan görevler, iade yapılmadan iptal edilir (worker zaten
kaynak tüketiyor olabilir). Zaten bir son duruma ulaşmış görevler
(SUCCEEDED, FAILED, CANCELED) iptal edilemez.
URL yolu, görevin aşamasıyla eşleşmelidir — /prototype/:buildId
üzerinde DELETE işlemi 404 döndürür.
Yol Parametreleri
Name
id
Type
path
Description
İptal edilecek buzdolabı mıknatısı görevi için benzersiz tanımlayıcı.
Döndürülenler
Başarı durumunda boş bir gövdeyle 204 No Content döndürür.
Hata Modları
Name
400 - Bad Request
Description
Görev zaten bir son durumda ve iptal edilemez.
Name
404 - Not Found
Description
Görev mevcut değil, başka bir kullanıcıya ait ya da aşaması URL yoluyla eşleşmiyor.
Bir buzdolabı mıknatısı görevine ait gerçek zamanlı güncellemeleri Server-Sent Events (SSE) üzerinden akışa alın.
URL yolu, görevin aşamasıyla eşleşmelidir — /prototype/:buildId/stream
adresinde bir akış açmak, status_code: 404 ile tek bir event: error
yükü yayınlar ve akışı kapatır.
Parametreler
Name
id
Type
path
Description
Akışa alınacak buzdolabı mıknatısı görevi için benzersiz tanımlayıcı.
Dönüş Değerleri
Server-Sent Events olarak Fridge Magnet Prototype
veya Fridge Magnet Build görev nesnelerinden oluşan
bir akış döndürür. Her çerçeve, ilgili aşamaya ait tam görev nesnesini taşır — Get
uç noktasının döndürdüğü ile aynı yapıdadır — bu nedenle görev PENDING veya IN_PROGRESS
durumundayken çıktı alanları henüz doldurulmamıştır (null, [] veya {}) ve
finished_at değeri null'dur.
// Error event example (wrong stage or task not found)event: errordata: {"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: messagedata: {"id": "01b4e9a2-9d3f-8e15-c334-4f4887b2d9d0","progress": 0,"status": "PENDING"}event: messagedata: {"id": "01b4e9a2-9d3f-8e15-c334-4f4887b2d9d0","type": "creative-lab-fridge-magnet-build","status": "SUCCEEDED","progress": 100,"created_at": 1729543250000,"started_at": 1729543258000,"finished_at": 1729543285000,"expires_at": 1729802485000,"task_error": null,"consumed_credits": 20,"model_urls": {"glb":"https://assets.meshy.ai/***/tasks/01b4e9a2-9d3f-8e15-c334-4f4887b2d9d0/output/model.glb?Expires=***" }}
Tek bir aşama için buzdolabı mıknatısı görevlerinizin sayfalanmış bir listesini alın. URL
yolu aşamayı seçer — /prototype prototip görevlerini döndürür; /build
yapı (build) görevlerini döndürür. Diğer aşamaya ait görevler her iki yanıta da
dahil edilmez.
Yol Parametreleri
Name
stage
Type
path
Zorunlu
Description
prototype veya build olabilir. Koleksiyon yalnızca aşaması URL ile
eşleşen görevleri döndürür — /prototype isteği asla yapı (build)
görevlerini döndürmez ve bunun tersi de geçerlidir.
Sorgu Parametreleri
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 100 öğedir.
Name
sort_by
Type
string
varsayılan -created_at
Description
Sıralanacak alan. Kullanılabilir değerler:
+created_at: Oluşturulma zamanına göre artan sırada sırala.
-created_at: Oluşturulma zamanına göre azalan sırada sırala.
Buzdolabı Mıknatısı Prototip Görev nesnesi, kaynak bir fotoğraftan renklendirilmiş bir konsept görsel oluşturmak için Meshy'nin takip ettiği bir iş birimidir. Bu aşamanın çıktısı, input_task_id aracılığıyla inşa aşamasına bağlanır.
Özellikler
Name
id
Type
string
Description
Görev için benzersiz tanımlayıcı. Görev id'leri için uygulama detayı olarak k-sıralanabilir bir UUID kullansak da, id'nin biçimi hakkında hiçbir varsayımda bulunmamalısınız.
Name
type
Type
string
Description
Görevin türü. Değer creative-lab-fridge-magnet-prototype şeklindedir.
Name
name
Type
string
Description
Görev oluşturulduğunda sağlanan görev adı. Ad sağlanmadıysa boş bir dizedir.
Görevin ilerlemesi (progress). Görev henüz başlamadıysa bu özellik 0 olacaktır. Görev başarılı olduğunda bu değer 100 olacaktır.
Name
created_at
Type
timestamp
Description
Görevin oluşturulduğu zaman damgası, milisaniye cinsinden.
Bir zaman damgası, RFC 3339 standardını
takip ederek 1 Ocak 1970 UTC'den bu yana geçen milisaniye sayısını temsil eder.
Örneğin, 1 Eylül 2023 Cuma günü, saat 12:00:00 GMT 1693569600000 olarak temsil edilir. Bu, Meshy API'sindeki
tüm zaman damgaları için geçerlidir.
Name
started_at
Type
timestamp
Description
Görevin başladığı zaman damgası, milisaniye cinsinden. Görev henüz başlamadıysa bu özellik 0 olacaktır.
Name
finished_at
Type
timestamp
Description
Görevin tamamlandığı zaman damgası, milisaniye cinsinden. Görev henüz tamamlanmadıysa bu özellik 0 olacaktır.
Name
expires_at
Type
timestamp
Description
Görev sonucunun süresinin dolacağı zaman damgası, milisaniye cinsinden.
Name
preceding_tasks
Type
integer
Description
Önceki görevlerin sayısı.
Bu alanın değeri yalnızca görev durumu PENDING olduğunda anlamlıdır.
Name
task_error
Type
object
Description
Başarısız görevler için hata detayları. Tam task_error nesne referansı için Hatalar bölümüne bakın.
Name
consumed_credits
Type
integer
Description
Bu görev tarafından tüketilen kredi sayısı. Görev durumu PENDING, IN_PROGRESS veya SUCCEEDED olduğunda mevcuttur. FAILED görevler için 0 döner (başarısızlık durumunda kredi iadesi yapılır).
Name
image_urls
Type
array of strings
Description
Bu prototip görev tarafından oluşturulan konsept görsel adayları için indirilebilir URL'ler. Şu anda API her zaman tam olarak bir aday döndürür; bu alan bir dizidir, böylece gelecekteki revizyonlar kırılma yaratan bir değişiklik olmadan birden fazla aday sunabilir.
Fridge Magnet Build Task nesnesi, Meshy'nin başarılı bir prototip görevden nihai 3D buzdolabı mıknatısı ağını oluşturmak için takip ettiği bir çalışma birimidir. Build, prototipin konsept görüntüsü üzerinde bir derinlik haritası kabartma iş hattı çalıştırır ve çağıranın istediği formatta tek bir ağ çıktısı yayınlar.
Özellikler
Name
id
Type
string
Description
Görev için benzersiz tanımlayıcı.
Name
type
Type
string
Description
Görevin türü. Değer creative-lab-fridge-magnet-build'dir.
Name
name
Type
string
Description
Görev oluşturulduğunda sağlanan görev adı. Ad sağlanmadıysa boş dizedir.
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 progress'i. Görev henüz başlamadıysa, bu özellik 0 olacaktır. Görev başarılı olduğunda, bu 100 olacaktır.
Name
created_at
Type
timestamp
Description
Görevin oluşturulduğu zamanın milisaniye cinsinden zaman damgası.
Name
started_at
Type
timestamp
Description
Görevin başladığı zamanın milisaniye cinsinden zaman damgası.
Name
finished_at
Type
timestamp
Description
Görevin tamamlandığı zamanın milisaniye cinsinden zaman damgası.
Name
expires_at
Type
timestamp
Description
Görev sonucunun sona erdiği zamanın milisaniye cinsinden zaman damgası.
Name
preceding_tasks
Type
integer
Description
Önceki görevlerin sayısı. Yalnızca durum PENDING olduğunda anlamlıdır.
Name
task_error
Type
object
Description
Başarısız görevler için hata ayrıntıları. Tam task_error nesne referansı için Hatalar bölümüne bakın.
Name
consumed_credits
Type
integer
Description
Bu görev tarafından tüketilen kredi sayısı. FAILED görevler için 0 döner (kredi, başarısızlık durumunda geri ödenir).
Name
model_urls
Type
object
Description
Oluşturulan çıktı için indirilebilir URL'ler, çıktı adına göre anahtarlanır. Her zaman tam olarak bir giriş içerir — build isteğinin output.format'ı aracılığıyla istenen format. Anahtar, istenen formatla eşleşir:
Name
glb
Type
string
Description
GLB dosyasına indirilebilir URL. output.formatglb (varsayılan) olduğunda mevcuttur.
Name
obj
Type
string
Description
model.obj, model.mtl ve texture.png içeren bir zip paketine indirilebilir URL. output.formatobj olduğunda mevcuttur.
Name
bundle_zip
Type
string
Description
Oluşturucunun ürettiği her çıktının zip paketine indirilebilir URL. output.formatzip olduğunda mevcuttur.