Proměňte zdrojovou fotografii ve sběratelskou 3D minifigurku ve stylu cihel ve dvou fázích:
prototyp vygeneruje stylizovaný koncepční obrázek z vaší vstupní fotografie a poté
sestavení promění tento koncepční obrázek v texturovaný 3D model. Obě fáze
jsou propojeny prostřednictvím input_task_id.
POST /openapi/creative-lab/brick-figure/v1/prototype
Vygeneruje jeden koncepční obrázek ve stylu cihlové figurky ze zdrojové fotografie. Vrácené ID úlohy je hodnota, kterou předáte jako input_task_id koncovému bodu pro sestavení (build). Podobu odpovědi najdete v části
Objekt úlohy prototypu Brick Figure.
Parametry
Name
image_url
Type
string
Povinné
Description
Zdrojová fotografie, kterou má Meshy stylizovat jako cihlovou minifigurku. 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, která je přístupná z veřejného internetu.
Data URI: Obrázek zakódovaný jako base64 datové URI. Příklad data URI: data:image/jpeg;base64,<vaše obrazová data zakó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, je prototypový obrázek vrácen jako transparentní RGBA PNG s odstraněným pozadím, takže můžete objekt zkombinovat s libovolným pozadím.
Návratové hodnoty
Vlastnost result v odpovědi obsahuje id nově vytvořené úlohy prototypu cihlové figurky. Dotazujte se pomocí koncového bodu 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ý. Běžné příčiny:
Chybějící parametr: image_url je povinný.
Neplatný formát obrázku: Poskytnutá adresa 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: Adresu image_url se nepodařilo stáhnout (404 nebo timeout).
Neplatné Data URI: Řetězec base64 je poškozen.
Obsah byl označen: Vstupní obrázek byl označen moderací NSFW.
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
403 - Forbidden
Description
Vstupní obrázek byl označen za porušení práv duševního vlastnictví.
Name
429 - Too Many Requests
Description
Překročili jste svůj limit rychlosti.
Request
POST
/openapi/creative-lab/brick-figure/v1/prototype
# Stage 1: generate a brick-style concept imagecurlhttps://api.meshy.ai/openapi/creative-lab/brick-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>" }'
Vygeneruje finální texturovanou 3D figurku z kostiček na základě úspěšně dokončené prototypové úlohy. Sestavení běží ve stejném pipeline pro převod obrázku na 3D jako
Obrázek na 3D, takže formát objektu odpovědi a seznam výstupních URL adres si přesně odpovídají. Formát odpovědi naleznete v
Objekt úlohy sestavení figurky z kostiček.
Parametry
Name
input_task_id
Type
string
Povinné
Description
ID úlohy prototypu vytvořeného prostřednictvím stejného koncového bodu OpenAPI. Prototyp musel být vytvořen se stejným API klíčem, musel dosáhnout stavu SUCCEEDED a musel vygenerovat přesně jeden kandidátský obrázek.
Úlohy prototypu vytvořené prostřednictvím webové aplikace nejsou akceptovány — koncový bod pro sestavení přijímá pouze prototypové úlohy vytvořené pomocí POST /openapi/creative-lab/brick-figure/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ů.
Návratová hodnota
Vlastnost result v odpovědi obsahuje id úlohy nově vytvořené úlohy sestavení figurky z kostiček. Dotazujte se koncového bodu Získat úlohu 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ý. Časté příčiny:
Chybějící parametr: input_task_id je povinný.
Neplatné UUID: input_task_id není platné UUID.
Nadřazená úloha není dokončena: Odkazovaná prototypová úloha zatím nedosáhla stavu SUCCEEDED.
Žádný kandidát: Prototypová úloha byla úspěšná, ale nevygenerovala žádný kandidátský obrázek.
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
404 - Not Found
Description
Odkazovaná prototypová úloha neexistuje, patří jinému uživateli nebo byla vytvořena prostřednictvím webové aplikace (do sestavení lze zřetězit pouze prototypové úlohy vytvořené v režimu API).
Name
429 - Too Many Requests
Description
Překročili jste svůj limit rychlosti.
Request
POST
/openapi/creative-lab/brick-figure/v1/build
# Stage 2: chain build off a succeeded prototype taskcurlhttps://api.meshy.ai/openapi/creative-lab/brick-figure/v1/build \-XPOST \-H"Authorization: Bearer ${YOUR_API_KEY}" \-H'Content-Type: application/json' \-d'{ "input_task_id": "018a210d-8ba4-705c-b111-1f1776f7f578" }'
Získá úkol prototypu nebo sestavení podle platného id úkolu. Cesta URL
musí odpovídat fázi úkolu — pokud je úkol sestavení vyžádán přes
/prototype/:id, vrátí se 404, a naopak.
Zruší úlohu figurky z kostiček. Pokud je úloha stále ve stavu PENDING,
kredity spotřebované při vytvoření jsou vráceny. Úlohy, které jsou již
IN_PROGRESS, jsou zrušeny bez vrácení kreditů (worker může již
spotřebovávat zdroje). Úlohy, které již dosáhly konečného stavu
(SUCCEEDED, FAILED, CANCELED), nelze zrušit.
Cesta URL musí odpovídat fázi úlohy — DELETE na
/prototype/:buildId vrací 404.
Parametry cesty
Name
id
Type
path
Description
Jedinečný identifikátor úlohy figurky z kostiček, kterou chcete zrušit.
Návratové hodnoty
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 konečné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 figurky ze stavebnice 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 figurky ze stavebnice, pro kterou se má streamovat.
Návratová hodnota
Vrací stream objektů úlohy Brick Figure Prototype
nebo Brick Figure Build jako
Server-Sent Events. Každý snímek nese kompletní objekt úlohy pro danou fázi — stejný tvar, jaký
vrací koncový bod Get — takže dokud je úloha ve stavu PENDING nebo IN_PROGRESS,
výstupní pole jednoduše ještě nejsou vyplněná (null, [] nebo {}) a
finished_at je null.
Načte stránkovaný seznam vašich úloh figurky ze stavebnice pro jednu fázi. Cesta URL
vybírá 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: Řazení podle času vytvoření vzestupně.
-created_at: Řazení podle času vytvoření sestupně.
Objekt úlohy pro prototyp figurky ze stavebnicových kostek je pracovní jednotka, kterou Meshy sleduje za účelem
vygenerování koncepčního obrázku figurky ve stylu stavebnicových kostek 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 identifikátory úloh k-sortable UUID, neměli byste dělat žádné předpoklady o formátu tohoto id.
Name
type
Type
string
Description
Typ úlohy. Hodnota je creative-lab-brick-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 PENDING, IN_PROGRESS, SUCCEEDED, FAILED, CANCELED.
Name
progress
Type
integer
Description
Postup úlohy (progress). 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, které uplynuly od 1. ledna 1970 UTC, podle
standardu RFC 3339.
Například pátek 1. září 2023 12:00:00 GMT je reprezentován jako 1693569600000. Toto 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 null.
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 null.
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.
Hodnota tohoto pole má smysl pouze tehdy, když 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. Pro úlohy se stavem FAILED vrací 0 (v případě selhání jsou kredity vráceny).
Name
image_urls
Type
array of strings
Description
Stažitelné URL adresy pro kandidáty koncepčního obrázku vygenerované touto prototypovou úlohou. V současné době API vždy vrací přesně jednoho kandidáta; pole je pole (array), aby budoucí revize mohly nabídnout více kandidátů bez zásadní změny (breaking change).
Objekt Brick Figure Build Task je pracovní jednotka, kterou Meshy sleduje za účelem
vygenerování texturované 3D figurky ze stavebnice z úspěšně dokončeného prototypového úkolu. Používá
stejný pipeline pro obrázek-na-3D jako Obrázek na 3D,
takže výstupní pole odpovídají objektu úkolu tohoto koncového bodu.
Vlastnosti
Name
id
Type
string
Description
Unikátní identifikátor úkolu.
Name
type
Type
string
Description
Typ úkolu. Hodnota je creative-lab-brick-figure-build.
Name
name
Type
string
Description
Název úkolu zadaný při jeho vytvoření. Prázdný řetězec, pokud nebyl žádný název zadán.
Name
status
Type
string
Description
Stav úkolu. Možné hodnoty jsou jedna z PENDING, IN_PROGRESS, SUCCEEDED, FAILED, CANCELED.
Name
progress
Type
integer
Description
Progress úkolu. Pokud úkol ještě nebyl zahájen, tato vlastnost bude 0. Jakmile úkol úspěšně skončí, hodnota se změní na 100.
Name
created_at
Type
timestamp
Description
Časové razítko vytvoření úkolu, v milisekundách.
Name
started_at
Type
timestamp
Description
Časové razítko zahájení úkolu, v milisekundách.
Name
finished_at
Type
timestamp
Description
Časové razítko dokončení úkolu, v milisekundách.
Name
expires_at
Type
timestamp
Description
Časové razítko vypršení platnosti výsledku úkolu, v milisekundách.
Name
preceding_tasks
Type
integer
Description
Počet předchozích úkolů v pořadí. Má význam pouze pokud je status PENDING.
Name
task_error
Type
object
Description
Podrobnosti o chybě u neúspěšných úkolů. Úplný popis objektu task_error naleznete v sekci Chyby.
Name
consumed_credits
Type
integer
Description
Počet kreditů spotřebovaných tímto úkolem. U úkolů se stavem FAILED vrací 0 (kredity jsou při selhání vráceny).
Name
prompt
Type
string
Description
U brick figure build je vždy prázdný. Přítomen z důvodu kompatibility mezi koncovými body se sdíleným tvarem V2ImageTo3DTaskResponse používaným Obrázkem na 3D.
Name
negative_prompt
Type
string
Description
U brick figure build je vždy prázdný. Přítomen z důvodu kompatibility mezi koncovými body.
Name
texture_prompt
Type
string
Description
U brick figure build je vždy prázdný. Přítomen z důvodu kompatibility mezi koncovými body.
Name
texture_image_url
Type
string
Description
U brick figure build je vždy prázdný. Přítomen z důvodu kompatibility mezi koncovými body.
Name
model_urls
Type
object
Description
Stahovatelné URL adresy pro vygenerovaný 3D model. Brick figure build vytváří texturovaný soubor GLB a dále dvojici OBJ + MTL pro pipeline, které preferují formát Wavefront OBJ. Tvar tohoto pole odpovídá objektu model_urls z Obrázku na 3D, takže budoucí přidání formátů proběhne bez zpětně nekompatibilní změny.
Name
glb
Type
string
Description
Stahovatelná URL adresa texturovaného souboru GLB.
Name
obj
Type
string
Description
Stahovatelná URL adresa souboru Wavefront OBJ (geometrie + UV).
Name
mtl
Type
string
Description
Stahovatelná URL adresa doplňkového souboru materiálu MTL k OBJ. Použijte ho společně s obj a záznamem z texture_urls[0].base_color.
Name
thumbnail_url
Type
string
Description
Stahovatelná URL adresa miniatury souboru modelu.
Name
texture_urls
Type
array
Description
Pole objektů URL adres textur vygenerovaných tímto úkolem. Aktuálně obsahuje jediný objekt s mapou základní barvy.
Name
base_color
Type
string
Description
Stahovatelná URL adresa obrázku mapy základní barvy.