Proměňte své fotografie ve vlastní magnety na lednici — reliéf ve tvaru
zaobleného obdélníku s barevnou hloubkovou strukturou a plochou magnetickou
zadní stranou, přizpůsobený pro lednici — ve dvou fázích: prototyp
vygeneruje barevný koncepční obrázek z vaší vstupní fotografie, poté
sestavení promění tento koncepční obrázek v reliéfní 3D model. Obě fáze
jsou propojeny pomocí input_task_id.
POST /openapi/creative-lab/fridge-magnet/v1/prototype
Vygenerujte jeden barevný koncepční obrázek ze zdrojové fotografie. Vrácené
ID úlohy je to, co předáváte jako input_task_id koncovému bodu pro
sestavení. Podrobnosti o tvaru odpovědi naleznete v části
Objekt úlohy prototypu magnetu na lednici.
Parametry
Name
image_url
Type
string
Povinné
Description
Zdrojová fotografie, kterou Meshy zabarví do koncepčního obrázku připraveného pro magnet na lednici. Aktuálně podporujeme formáty .jpg, .jpeg, .png a .webp.
Obrázek lze poskytnout dvěma způsoby:
Veřejně přístupná URL adresa: URL adresa přístupná z veřejného internetu.
Data URI: Data URI obrázku kódovaná v base64. Příklad data URI: data:image/jpeg;base64,<vaše obrazová data kódovaná v base64>.
Name
name
Type
string
Description
Volitelný název úlohy pro zobrazovací účely. Maximálně 100 znaků.
Name
remove_background
Type
boolean
výchozí false
Description
Pokud je nastaveno na true, prototypový obrázek se vrátí jako transparentní RGBA PNG s odstraněným pozadím, takže můžete objekt zkombinovat s libovolným pozadím.
Toto ovlivňuje pouze obrázek, který tento koncový bod vrací. Je to nezávislé na stejnojmenné možnosti sestavení (výchozí hodnota true), která řídí odstranění pozadí před vytvořením reliéfu.
Návratové hodnoty
Vlastnost result odpovědi obsahuje id úlohy nově vytvořeného prototypu magnetu na lednici. Dotazujte se na koncový bod Získat úlohu nebo se přihlaste k odběru streamu, dokud úloha nedosáhne stavu SUCCEEDED, a poté toto ID předejte koncovému bodu sestavení jako input_task_id.
Chybové stavy
Name
400 - Bad Request
Description
Požadavek byl nepřijatelný. Běžné příčiny:
Chybějící parametr: image_url je povinný.
Neplatný formát obrázku: Poskytnutá hodnota image_url není v podporovaném formátu (.jpg, .jpeg, .png, .webp).
Rozměry obrázku mimo rozsah: Obrázek je příliš malý, přesahuje maximální velikost souboru nebo přesahuje maximální počet pixelů.
Nedostupná URL adresa: image_url se nepodařilo stáhnout (404 nebo timeout).
Neplatné Data URI: Řetězec base64 má nesprávný formát.
Obsah označen: Vstupní obrázek byl označen moderací NSFW nebo moderací duševního vlastnictví.
Name
401 - Unauthorized
Description
Autentizace se nezdařila. Zkontrolujte prosím svůj API klíč.
Name
402 - Payment Required
Description
Nedostatek kreditů k provedení této úlohy.
Name
429 - Too Many Requests
Description
Překročili jste limit rychlosti.
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"}
Prototype example
Start with a source photo, then generate the prototype image used by the fridge magnet build stage.
Vygeneruje finální 3D tisknutelný magnet na lednici z úspěšně dokončené
prototypové úlohy. Build spustí pipeline reliéfu z hloubkové mapy na
kolorovaném konceptovém obrázku prototypu a dodá jediný artefakt sítě
ve formátu, který si zvolíte. Podrobnosti o tvaru odpovědi najdete v
Objektu build úlohy magnetu na lednici.
Parametry
Name
input_task_id
Type
string
Povinné
Description
ID úlohy prototypové úlohy vytvořené prostřednictvím tohoto stejného OpenAPI koncového bodu. Prototyp musel být vytvořen se stejným API klíčem, musel dosáhnout stavu SUCCEEDED a musel vygenerovat přesně jeden kandidátní obrázek.
Prototypové úlohy vytvořené přes webovou aplikaci nejsou akceptovány — koncový bod build přijímá pouze prototypové úlohy vytvořené pomocí POST /openapi/creative-lab/fridge-magnet/v1/prototype a jakýkoli jiný zdroj odmítne s chybou 404.
Name
name
Type
string
Description
Volitelný název úlohy pro zobrazení. Maximálně 100 znaků.
options
Volitelné parametry pro ladění reliéfní geometrie. Každé pole má rozumnou výchozí hodnotu — odešlete pouze ta, která chcete přepsat.
Name
badge_shape
Type
string
výchozí rounded-rect
Description
Obrysová silueta magnetu na lednici. Dostupné hodnoty:
circle
rounded-rect (výchozí)
hexagon
shield
star
Name
size_mm
Type
number
výchozí 60
Description
Délka hrany ohraničujícího čtverce magnetu na lednici, v milimetrech. Rozsah: (0, 400].
Name
relief_height_mm
Type
number
výchozí 3.3
Description
Maximální výška reliéfu nad základnou, v milimetrech. Rozsah: [0, 20].
Name
relief_offset_mm
Type
number
výchozí 0
Description
Vertikální posun aplikovaný na reliéf před extruzí, v milimetrech. Rozsah: [0, 20].
Name
base_thickness_mm
Type
number
výchozí 2.0
Description
Tloušťka ploché základní desky za reliéfem, v milimetrech. Výchozí hodnota pro magnet na lednici je robustnější 2mm základna — dává magnetu dostatek hmoty, aby se dobře držel na lednici, aniž by reliéf působil křehce. Rozsah: [0, 20].
Name
has_closed_back
Type
boolean
výchozí true
Description
Zda je zadní strana magnetu na lednici uzavřena jako souvislý povrch (strana, na kterou lepíte magnet). Nastavte na false pro otevřenou skořepinu.
Name
relief_curve
Type
string
výchozí linear
Description
Přenosová křivka mapující hodnoty hloubkové mapy na výšku reliéfu. Dostupné hodnoty:
linear (výchozí)
gamma
s-curve
Name
curve_param
Type
number
výchozí 1.0
Description
Parametr tvaru přenosové křivky (relevantní pouze pokud je relief_curve nastaveno na gamma). Rozsah: (0, 10].
Name
invert_depth
Type
boolean
výchozí false
Description
Invertuje interpretaci hloubkové mapy, takže tmavší oblasti se stanou vyšším reliéfem.
Name
smoothing
Type
number
výchozí 0.24
Description
Intenzita vyhlazení aplikovaná na hloubkovou mapu před extrakcí reliéfu. Rozsah: [0, 10].
Name
relief_scale
Type
number
výchozí 1.0
Description
Vertikální multiplikátor měřítka aplikovaný nad relief_height_mm. Rozsah: (0, 10].
Name
depth_threshold
Type
number
výchozí 0.1
Description
Dolní prahová hodnota pro hodnoty hloubkové mapy; vše pod touto hodnotou je zaokrouhleno na nulu. Rozsah: [0, 1].
Name
remove_background
Type
boolean
výchozí true
Description
Automaticky odstraní pozadí konceptového obrázku prototypu před vytvořením reliéfu.
Odlišné od stejnojmenného parametru u prototypu (výchozí false), který určuje, zda je samotný obrázek prototypu vrácen s transparentností.
Name
export_resolution
Type
integer
výchozí 512
Description
Rozlišení sítě použité pro export. Rozsah: [64, 2048].
output
Volitelný výběr přenosového formátu. Výchozí hodnota je glb.
glb (výchozí) — vrátí jeden soubor model.glb v model_urls.glb.
obj — zabalí model.obj + model.mtl + texture.png a vrátí balíček v model_urls.obj.
zip — zabalí každý artefakt, který generátor vytvoří, a vrátí balíček v model_urls.bundle_zip.
Návratová hodnota
Vlastnost result odpovědi obsahuje id nově vytvořené build úlohy magnetu na lednici. Dotazujte se koncového bodu Získání úlohy nebo se přihlaste ke streamu, dokud úloha nedosáhne stavu SUCCEEDED, a poté stáhněte artefakt z jediné položky v model_urls.
Chybové scénáře
Name
400 - Bad Request
Description
Požadavek byl nepřijatelný. Běžné příčiny:
Chybějící parametr: input_task_id je povinný.
Neplatné UUID: input_task_id není platné UUID.
Nadřazená úloha nedokončena: Odkazovaná prototypová úloha ještě nedosáhla stavu SUCCEEDED.
Žádný kandidát: Prototypová úloha byla úspěšná, ale nevygenerovala žádný kandidátní obrázek.
Options mimo rozsah: Jedno z polí v options bylo mimo povolený rozsah nebo mimo množinu povolených hodnot.
Name
401 - Unauthorized
Description
Autentizace selhala. Zkontrolujte prosím svůj API klíč.
Name
402 - Payment Required
Description
Nedostatek kreditů k provedení této úlohy.
Name
404 - Not Found
Description
Odkazovaná prototypová úloha neexistuje, patří jinému uživateli nebo byla vytvořena přes webovou aplikaci (do buildu lze zřetězit pouze prototypové úlohy vytvořené v API režimu).
Načte úlohu prototypu nebo buildu na základě platného id úlohy. Cesta URL
musí odpovídat fázi úlohy — pokud je úloha buildu vyžádána přes
/prototype/:id, vrátí se 404, a naopak.
Zruší úlohu magnetu na lednici. Pokud je úloha stále ve stavu PENDING,
kredity spotřebované při jejím vytvoření jsou vráceny. Úlohy, které jsou
již ve stavu IN_PROGRESS, jsou zrušeny bez vrácení kreditů (worker může
již spotřebovávat zdroje). Úlohy, které již dosáhly koncového stavu
(SUCCEEDED, FAILED, CANCELED), nelze zrušit.
Cesta URL musí odpovídat fázi úlohy — DELETE na
/prototype/:buildId vrátí 404.
Parametry cesty
Name
id
Type
path
Description
Jedinečný identifikátor úlohy magnetu na lednici, kterou chcete zrušit.
Návratová hodnota
Při úspěchu vrací 204 No Content s prázdným tělem.
Chybové stavy
Name
400 - Bad Request
Description
Úloha je již v koncovém stavu a nelze ji zrušit.
Name
404 - Not Found
Description
Úloha neexistuje, patří jinému uživateli, nebo její fáze neodpovídá cestě URL.
Streamujte aktualizace úlohy magnetu na lednici v reálném čase pomocí Server-Sent Events (SSE).
Cesta URL musí odpovídat fázi úlohy — otevření streamu na
/prototype/:buildId/stream vyšle jediný event: error payload s
status_code: 404 a stream se uzavře.
Parametry
Name
id
Type
path
Description
Jedinečný identifikátor úlohy magnetu na lednici, kterou chcete streamovat.
Návratová hodnota
Vrací proud objektů úlohy Fridge Magnet Prototype
nebo Fridge Magnet Build formou
Server-Sent Events. Každý rámec obsahuje celý objekt úlohy pro danou fázi — stejnou strukturu, jakou vrací
koncový bod Get — takže dokud je úloha ve stavu PENDING nebo IN_PROGRESS,
výstupní pole zkrátka ještě nejsou vyplněna (null, [] nebo {}) a
finished_at má hodnotu null.
// 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=***" }}
Načte stránkovaný seznam vašich úloh magnetu na lednici pro jednu fázi. Cesta URL
určuje fázi — /prototype vrací úlohy prototypu; /build
vrací úlohy sestavení. Úlohy z druhé fáze nejsou zahrnuty v žádné z
odpovědí.
Parametry cesty
Name
stage
Type
path
Povinné
Description
Buď prototype, nebo build. Kolekce vrací pouze úlohy,
jejichž fáze odpovídá URL — načtení /prototype nikdy nevrátí
úlohy sestavení a naopak.
Parametry dotazu
Name
page_num
Type
integer
výchozí 1
Description
Číslo stránky pro stránkování.
Name
page_size
Type
integer
výchozí 10
Description
Limit velikosti stránky. Maximální povolená hodnota je 100 položek.
Name
sort_by
Type
string
výchozí -created_at
Description
Pole, podle kterého se má řadit. Dostupné hodnoty:
+created_at: Seřadit podle času vytvoření vzestupně.
-created_at: Seřadit podle času vytvoření sestupně.
Objekt úlohy prototypu magnetu na lednici je pracovní jednotka, kterou Meshy sleduje za účelem
vygenerování barevného koncepčního obrázku ze zdrojové fotografie. Výstup
této fáze je zřetězen do fáze sestavení
pomocí input_task_id.
Vlastnosti
Name
id
Type
string
Description
Jedinečný identifikátor úlohy. Ačkoli jako implementační detail používáme pro identifikátory úloh k-sortovatelný UUID, neměli byste dělat žádné předpoklady o formátu id.
Name
type
Type
string
Description
Typ úlohy. Hodnota je creative-lab-fridge-magnet-prototype.
Name
name
Type
string
Description
Název úlohy zadaný při jejím vytvoření. Prázdný řetězec, pokud nebyl zadán žádný název.
Name
status
Type
string
Description
Stav úlohy. Možné hodnoty jsou jedna z PENDING, IN_PROGRESS, SUCCEEDED, FAILED, CANCELED.
Name
progress
Type
integer
Description
Průběh (progress) úlohy. Pokud úloha ještě nebyla zahájena, bude tato vlastnost mít hodnotu 0. Jakmile úloha úspěšně skončí, hodnota se změní na 100.
Name
created_at
Type
timestamp
Description
Časové razítko vytvoření úlohy, v milisekundách.
Časové razítko představuje počet milisekund, které uplynuly od 1. ledna 1970 UTC, podle
standardu RFC 3339.
Například pátek 1. září 2023 12:00:00 PM GMT je vyjádřen jako 1693569600000. Toto platí
pro všechna časová razítka v Meshy API.
Name
started_at
Type
timestamp
Description
Časové razítko zahájení úlohy, v milisekundách. Pokud úloha ještě nebyla zahájena, bude tato vlastnost mít hodnotu 0.
Name
finished_at
Type
timestamp
Description
Časové razítko dokončení úlohy, v milisekundách. Pokud úloha ještě nebyla dokončena, bude tato vlastnost mít hodnotu 0.
Name
expires_at
Type
timestamp
Description
Časové razítko vypršení platnosti výsledku úlohy, v milisekundách.
Name
preceding_tasks
Type
integer
Description
Počet předcházejících úloh.
Hodnota tohoto pole má význam pouze tehdy, pokud je stav úlohy PENDING.
Name
task_error
Type
object
Description
Podrobnosti o chybě pro neúspěšné úlohy. Úplný popis objektu task_error naleznete v části Chyby.
Name
consumed_credits
Type
integer
Description
Počet kreditů spotřebovaných touto úlohou. Přítomno, pokud je stav úlohy PENDING, IN_PROGRESS nebo SUCCEEDED. U úloh se stavem FAILED vrací 0 (v případě neúspěchu jsou kredity vráceny).
Name
image_urls
Type
array of strings
Description
Adresy URL ke stažení koncepčních obrázků vygenerovaných touto prototypovou úlohou. V současné době API vždy vrací přesně jednoho kandidáta; pole je typu array, aby budoucí revize mohly nabídnout více kandidátů bez zásadní změny (breaking change).
Objekt Build úlohy magnetu na lednici je pracovní jednotka, kterou Meshy sleduje
za účelem vygenerování finální 3D sítě magnetu na lednici z úspěšně dokončené
prototypové úlohy. Build spouští pipeline reliéfu z hloubkové mapy na
koncepčním obrázku prototypu a publikuje jeden artefakt sítě ve formátu, který
volající požadoval.
Vlastnosti
Name
id
Type
string
Description
Jedinečný identifikátor úlohy.
Name
type
Type
string
Description
Typ úlohy. Hodnota je creative-lab-fridge-magnet-build.
Name
name
Type
string
Description
Název úlohy zadaný při jejím vytvoření. Prázdný řetězec, pokud nebyl žádný název zadán.
Name
status
Type
string
Description
Stav úlohy. Možné hodnoty jsou jedna z PENDING, IN_PROGRESS, SUCCEEDED, FAILED, CANCELED.
Name
progress
Type
integer
Description
Průběh úlohy (progress). Pokud úloha ještě nebyla zahájena, bude tato vlastnost 0. Jakmile úloha úspěšně skončí, stane se 100.
Name
created_at
Type
timestamp
Description
Časové razítko okamžiku vytvoření úlohy, v milisekundách.
Name
started_at
Type
timestamp
Description
Časové razítko okamžiku zahájení úlohy, v milisekundách.
Name
finished_at
Type
timestamp
Description
Časové razítko okamžiku dokončení úlohy, v milisekundách.
Name
expires_at
Type
timestamp
Description
Časové razítko okamžiku, kdy vyprší platnost výsledku úlohy, v milisekundách.
Name
preceding_tasks
Type
integer
Description
Počet předcházejících úloh. Má význam pouze tehdy, když je stav PENDING.
Name
task_error
Type
object
Description
Podrobnosti o chybě u neúspěšných úloh. Úplný popis objektu task_error najdete v části Chyby.
Name
consumed_credits
Type
integer
Description
Počet kreditů spotřebovaných touto úlohou. U úloh se stavem FAILED vrací 0 (kredity jsou v případě selhání vráceny).
Name
model_urls
Type
object
Description
URL adresy ke stažení vygenerovaného artefaktu, klíčované podle názvu artefaktu. Vždy obsahuje přesně jednu položku — formát požadovaný přes output.format v build požadavku. Klíč odpovídá požadovanému formátu:
Name
glb
Type
string
Description
URL adresa ke stažení souboru GLB. Přítomna, pokud output.format byl glb (výchozí hodnota).
Name
obj
Type
string
Description
URL adresa ke stažení zip balíčku obsahujícího model.obj, model.mtl a texture.png. Přítomna, pokud output.format byl obj.
Name
bundle_zip
Type
string
Description
URL adresa ke stažení zip balíčku obsahujícího všechny artefakty, které generátor vytvoří. Přítomna, pokud output.format byl zip.