Proměňte zdrojovou fotografii na sběratelskou 3D vinylovou figurku s velkou hlavou ve dvou
fázích: fáze prototype vygeneruje stylizovaný koncepční obrázek z vaší vstupní
fotografie, poté fáze build promění tento koncepční obrázek na texturovaný 3D model.
Obě fáze jsou propojeny pomocí input_task_id.
POST /openapi/creative-lab/vinyl-figure/v1/prototype
Vygeneruje jeden koncepční obrázek ve stylu vinylové figurky ze zdrojové
fotografie. Vrácené ID úlohy je hodnota, kterou předáváte jako input_task_id
koncovému bodu pro sestavení. Podrobnosti o tvaru odpovědi najdete v části
Objekt úlohy prototypu vinylové figurky.
Parametry
Name
image_url
Type
string
Povinné
Description
Zdrojová fotografie, kterou Meshy stylizuje jako vinylovou figurku s velkou hlavou. Aktuálně podporujeme formáty .jpg, .jpeg, .png a .webp.
Existují dva způsoby, jak obrázek poskytnout:
Veřejně přístupná URL adresa: URL adresa dostupná z veřejného internetu.
Data URI: Obrázek zakódovaný v base64 jako data URI. Příklad data URI: data:image/jpeg;base64,<vaše data obrázku zakódovaná v base64>.
Name
name
Type
string
Description
Volitelný název úlohy pro zobrazení. Maximálně 100 znaků.
Name
remove_background
Type
boolean
výchozí false
Description
Pokud je nastaveno na true, je prototypový obrázek vrácen jako transparentní RGBA PNG s odstraněným pozadím, takže můžete daný subjekt umístit na libovolné pozadí.
Návratová hodnota
Vlastnost result v odpovědi obsahuje id úlohy nově vytvořené úlohy prototypu vinylové figurky. Dotazujte se na koncový bod Získání úlohy nebo se přihlaste k odběru streamu, dokud úloha nedosáhne stavu SUCCEEDED, a poté toto ID předejte koncovému bodu pro sestavení jako input_task_id.
Režimy selhání
Name
400 - Bad Request
Description
Požadavek byl nepřijatelný. Časté příčiny:
Chybějící parametr: image_url je povinný.
Neplatný formát obrázku: Zadaný 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 maximální počet pixelů.
Nedostupná URL adresa: image_url se nepodařilo stáhnout (404 nebo timeout).
Neplatné Data URI: Řetězec base64 je poškozený.
Obsah označen: Vstupní obrázek byl označen moderací obsahu pro nevhodný obsah (NSFW) nebo pro porušení duševního vlastnictví.
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
429 - Too Many Requests
Description
Překročili jste svůj limit rychlosti.
Request
POST
/openapi/creative-lab/vinyl-figure/v1/prototype
# Stage 1: generate a vinyl-figure-style concept imagecurlhttps://api.meshy.ai/openapi/creative-lab/vinyl-figure/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":"019c8a2e-4b7d-7c3a-8d21-3f2987a1c4de"}
Příklad prototypu
Začněte se zdrojovou fotografií a poté vygenerujte prototypový obrázek použitý ve fázi sestavení.
Vygeneruje finální texturovanou 3D vinylovou figurku z úspěšně dokončené prototypové úlohy. Sestavení běží podle stejného image-to-3D pipeline jako
Obrázek na 3D, takže formát objektu odpovědi a seznam výstupních URL adres přesně odpovídají. Podrobnosti o tvaru odpovědi naleznete v části
Objekt úlohy sestavení vinylové figurky.
Parametry
Name
input_task_id
Type
string
Povinné
Description
ID úlohy prototypu vytvořeného prostřednictvím stejného OpenAPI koncového bodu. Prototyp musí být vytvořen se stejným API klíčem, musí dosáhnout stavu SUCCEEDED a musí vytvořit přesně jeden kandidátský obrázek.
Prototypové úlohy vytvořené přes webovou aplikaci nejsou akceptovány — koncový bod pro sestavení přijímá pouze prototypové úlohy vytvořené voláním POST /openapi/creative-lab/vinyl-figure/v1/prototype a jakýkoli jiný zdroj odmítne s chybou 404.
Name
name
Type
string
Description
Volitelný název úlohy pro zobrazovací účely. Maximálně 100 znaků.
Návratové hodnoty
Vlastnost result odpovědi obsahuje id úlohy nově vytvořené úlohy sestavení vinylové figurky. Dotazujte se na koncový bod Získání úlohy nebo se přihlaste k odběru streamu, dokud úloha nedosáhne stavu SUCCEEDED, a poté stáhněte texturovaný GLB soubor z model_urls.glb (nebo dvojici OBJ + MTL z model_urls.obj a model_urls.mtl, pokud váš navazující pipeline preferuje OBJ).
Chybové stavy
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.
Rodičovská úloha nedokončena úspěšně: Odkazovaná prototypová úloha ještě nedosáhla stavu SUCCEEDED.
Žádný kandidát: Prototypová úloha byla úspěšná, ale nevytvořila žádný kandidátský obrázek.
Name
401 - Unauthorized
Description
Autentizace se nezdařila. Zkontrolujte 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 sestavení lze zařadit pouze prototypové úlohy vytvořené v API mode).
Name
429 - Too Many Requests
Description
Překročili jste limit rychlosti.
Request
POST
/openapi/creative-lab/vinyl-figure/v1/build
# Stage 2: chain build off a succeeded prototype taskcurlhttps://api.meshy.ai/openapi/creative-lab/vinyl-figure/v1/build \-XPOST \-H"Authorization: Bearer ${YOUR_API_KEY}" \-H'Content-Type: application/json' \-d'{ "input_task_id": "019c8a2e-4b7d-7c3a-8d21-3f2987a1c4de" }'
Získejte úlohu prototypu nebo sestavení podle platného id úlohy. Cesta URL
musí odpovídat fázi úlohy — úloha sestavení načtená přes
/prototype/:id vrátí 404, a naopak.
Zruší úlohu vinyl figure. Pokud je úloha stále ve stavu PENDING, kredity
spotřebované při jejím vytvoření budou vráceny. Úlohy, které jsou již ve
stavu IN_PROGRESS, jsou zrušeny bez vrácení kreditů (worker mohl již
začít 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 — použití DELETE na
/prototype/:buildId vrátí 404.
Parametry cesty
Name
id
Type
path
Description
Jedinečný identifikátor úlohy vinyl figure, 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.
Streamuje aktuální stav úlohy vinylové figurky 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 vygeneruje jediný payload event: error s
status_code: 404 a stream se ukončí.
Parametry
Name
id
Type
path
Description
Jedinečný identifikátor úlohy vinylové figurky, kterou chcete streamovat.
Návratová hodnota
Vrací stream objektů úlohy Vinyl Figure Prototype
nebo Vinyl Figure Build
ve formě Server-Sent Events. Každý snímek obsahuje kompletní 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 jednoduše ještě nejsou vyplněna (null, [] nebo {}) a
finished_at je null.
Načtěte stránkovaný seznam vašich úkolů s vinylovými figurkami pro jednu fázi.
Cesta URL určuje fázi — /prototype vrací úkoly prototypu;
/build vrací úkoly sestavení. Úkoly 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 úkoly,
jejichž fáze odpovídá URL — načtení /prototype nikdy nevrátí
úkoly 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: Řadit podle času vytvoření vzestupně.
Objekt Úlohy prototypu figurky Vinyl je pracovní jednotka, kterou Meshy sleduje
za účelem vygenerování konceptového obrázku ve stylu vinylové figurky ze zdrojové fotografie.
Výstup této fáze je propojen s fází sestavení prostřednictvím input_task_id.
Vlastnosti
Name
id
Type
string
Description
Jedinečný identifikátor úlohy. Ačkoli jako implementační detail používáme pro id úloh k-sortable UUID, neměli byste dělat žádné předpoklady o formátu id.
Name
type
Type
string
Description
Typ úlohy. Hodnota je creative-lab-vinyl-figure-prototype.
Name
name
Type
string
Description
Název úlohy zadaný při jejím vytvoření. Prázdný řetězec, pokud nebyl 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
Progress úlohy. Pokud úloha ještě nebyla zahájena, tato vlastnost bude 0. Jakmile úloha úspěšně skončí, hodnota se změní na 100.
Name
created_at
Type
timestamp
Description
Časové razítko okamžiku vytvoření úlohy, v milisekundách.
Časové razítko představuje počet milisekund uplynulých od 1. ledna 1970 UTC, podle
standardu RFC 3339.
Například pátek 1. září 2023 12:00:00 PM GMT je reprezentováno jako 1693569600000. To platí
pro všechna časová razítka v Meshy API.
Name
started_at
Type
timestamp
Description
Časové razítko okamžiku zahájení úlohy, v milisekundách. Pokud úloha ještě nebyla zahájena, tato vlastnost bude 0.
Name
finished_at
Type
timestamp
Description
Časové razítko okamžiku dokončení úlohy, v milisekundách. Pokud úloha ještě není dokončena, tato vlastnost bude 0.
Name
expires_at
Type
timestamp
Description
Časové razítko okamžiku 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á smysl pouze tehdy, pokud je stav úlohy PENDING.
Name
task_error
Type
object
Description
Podrobnosti o chybě u neúspěšných úloh. Ú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 (kredity jsou při neúspěchu vráceny).
Name
image_urls
Type
array of strings
Description
Stažitelné URL adresy pro kandidáty na konceptový obrázek vygenerované touto prototypovou úlohou. API v současnosti vždy vrací přesně jednoho kandidáta; pole je tvořeno jako pole (array), aby budoucí revize mohly nabídnout více kandidátů bez zásadní změny (breaking change).
Objekt úlohy sestavení vinylové figurky je pracovní jednotka, kterou Meshy sleduje
za účelem vygenerování texturované 3D vinylové figurky z úspěšné prototypové úlohy.
Používá stejný pipeline obrázek-na-3D jako Obrázek na 3D,
takže výstupní pole odrážejí objekt úlohy tohoto koncového bodu.
Vlastnosti
Name
id
Type
string
Description
Jedinečný identifikátor úlohy.
Name
type
Type
string
Description
Typ úlohy. Hodnota je creative-lab-vinyl-figure-build.
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 úlohy (progress). Pokud úloha ještě nebyla spuštěna, tato vlastnost bude 0. Jakmile úloha uspěje, stane se 100.
Name
created_at
Type
timestamp
Description
Časové razítko vytvoření úlohy, v milisekundách.
Name
started_at
Type
timestamp
Description
Časové razítko spuštění úlohy, v milisekundách.
Name
finished_at
Type
timestamp
Description
Časové razítko dokončení úlohy, v milisekundách.
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ředchozích úloh. Má význam pouze pokud je stav PENDING.
Name
task_error
Type
object
Description
Podrobnosti chyby pro neúspěšné úlohy. Kompletní referenci objektu task_error najdete v sekci 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
prompt
Type
string
Description
U sestavení vinylové figurky je vždy prázdné. Přítomno kvůli kompatibilitě napříč koncovými body se sdíleným tvarem V2ImageTo3DTaskResponse, který používá Obrázek na 3D.
Name
negative_prompt
Type
string
Description
U sestavení vinylové figurky je vždy prázdné. Přítomno kvůli kompatibilitě napříč koncovými body.
Name
texture_prompt
Type
string
Description
U sestavení vinylové figurky je vždy prázdné. Přítomno kvůli kompatibilitě napříč koncovými body.
Name
texture_image_url
Type
string
Description
U sestavení vinylové figurky je vždy prázdné. Přítomno kvůli kompatibilitě napříč koncovými body.
Name
model_urls
Type
object
Description
Stažitelné adresy URL pro vygenerovaný 3D model. Sestavení vinylové figurky vytváří texturovaný soubor GLB spolu s dvojicí OBJ + MTL pro pipeline, které preferují formát Wavefront OBJ. Tvar pole odpovídá objektu model_urls z Obrázek na 3D, takže budoucí přidání formátů proběhne bez zásadní změny (breaking change).
Name
glb
Type
string
Description
Stažitelná adresa URL texturovaného souboru GLB.
Name
obj
Type
string
Description
Stažitelná adresa URL souboru Wavefront OBJ (geometrie + UV).
Name
mtl
Type
string
Description
Stažitelná adresa URL doprovodného materiálového souboru MTL k souboru OBJ. Použijte společně s obj a záznamem z texture_urls[0].base_color.
Name
thumbnail_url
Type
string
Description
Stažitelná adresa URL miniatury souboru modelu.
Name
texture_urls
Type
array
Description
Pole objektů adres URL textur vygenerovaných touto úlohou. V současné době obsahuje jediný objekt s mapou základní barvy.
Name
base_color
Type
string
Description
Stažitelná adresa URL obrázku mapy základní barvy.