Verwandeln Sie ein Ausgangsfoto in zwei Schritten in eine sammelbare 3D-Minifigur im Brick-Stil:
Prototyp erzeugt aus Ihrem Eingabefoto ein stilisiertes Konzeptbild, und
Build verwandelt dieses Konzeptbild anschließend in ein texturiertes 3D-Modell. Die beiden Schritte
sind über input_task_id miteinander verknüpft.
POST /openapi/creative-lab/brick-figure/v1/prototype
Generiert ein einzelnes Konzeptbild im Brick-Stil aus dem Ausgangsfoto. Die
zurückgegebene Task-ID ist der Wert, den Sie als input_task_id an den Build-
Endpunkt übergeben. Für die Form der Antwort siehe
Das Brick-Figure-Prototyp-Task-Objekt.
Parameter
Name
image_url
Type
string
Erforderlich
Description
Ausgangsfoto, das Meshy als Brick-Minifigur stilisieren soll. Derzeit werden die Formate .jpg, .jpeg, .png und .webp unterstützt.
Es gibt zwei Möglichkeiten, das Bild bereitzustellen:
Öffentlich zugängliche URL: Eine URL, die aus dem öffentlichen Internet erreichbar ist.
Data URI: Ein base64-kodierter Data URI des Bildes. Beispiel für einen Data URI: data:image/jpeg;base64,<your base64-encoded image data>.
Name
name
Type
string
Description
Optionaler Aufgabenname zu Anzeigezwecken. Maximal 100 Zeichen.
Name
remove_background
Type
boolean
Standard false
Description
Wenn auf true gesetzt, wird das Prototyp-Bild als transparentes RGBA-PNG mit entferntem Hintergrund zurückgegeben, sodass Sie das Motiv mit einem beliebigen Hintergrund kombinieren können.
Rückgabewerte
Die result-Eigenschaft der Antwort enthält die Task-id der neu erstellten Brick-Figure-Prototyp-Aufgabe. Fragen Sie den Get a Task-Endpunkt ab oder abonnieren Sie den Stream, bis die Aufgabe den Status SUCCEEDED erreicht, und übergeben Sie diese ID dann als input_task_id an den Build-Endpunkt.
Fehlermodi
Name
400 - Bad Request
Description
Die Anfrage war unzulässig. Häufige Ursachen:
Fehlender Parameter: image_url ist erforderlich.
Ungültiges Bildformat: Die angegebene image_url liegt nicht in einem unterstützten Format vor (.jpg, .jpeg, .png, .webp).
Bildabmessungen außerhalb des zulässigen Bereichs: Das Bild ist zu klein, überschreitet die maximale Dateigröße oder die maximale Pixelanzahl.
Unerreichbare URL: Die image_url konnte nicht heruntergeladen werden (404 oder timeout).
Ungültiger Data URI: Die base64-Zeichenfolge ist fehlerhaft.
Inhalt markiert: Das Eingabebild wurde von der NSFW-moderation markiert.
Name
401 - Unauthorized
Description
Die Authentifizierung ist fehlgeschlagen. Bitte überprüfen Sie Ihren API-Schlüssel.
Name
402 - Payment Required
Description
Nicht genügend Credits, um diese Aufgabe auszuführen.
Name
403 - Forbidden
Description
Das Eingabebild wurde wegen einer Verletzung geistigen Eigentums markiert.
Name
429 - Too Many Requests
Description
Sie haben Ihre Ratenbegrenzung überschritten.
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>" }'
Generiert das finale texturierte 3D-Brick-Figure-Modell aus einer erfolgreich abgeschlossenen Prototyp-Aufgabe. Der Build läuft über dieselbe Bild-zu-3D-Pipeline wie
Bild zu 3D, sodass das Format des Response-Objekts und die Liste der Ausgabe-URLs exakt übereinstimmen. Weitere Informationen zur Form der Antwort finden Sie unter
Das Brick-Figure-Build-Task-Objekt.
Parameter
Name
input_task_id
Type
string
Erforderlich
Description
Die Task-ID einer Prototyp-Aufgabe, die über denselben OpenAPI-Endpunkt erstellt wurde. Der Prototyp muss mit demselben API-Schlüssel erstellt worden sein, muss den Status SUCCEEDED erreicht haben und darf genau ein Kandidatenbild erzeugt haben.
Prototyp-Aufgaben, die über die Webapp erstellt wurden, werden nicht akzeptiert – der Build-Endpunkt akzeptiert ausschließlich Prototyp-Aufgaben, die über POST /openapi/creative-lab/brick-figure/v1/prototype erzeugt wurden, und lehnt jede andere Quelle mit 404 ab.
Name
name
Type
string
Description
Optionaler Aufgabenname zu Anzeigezwecken. Maximal 100 Zeichen.
Rückgabewerte
Die Eigenschaft result der Antwort enthält die id der neu erstellten Brick-Figure-Build-Aufgabe. Fragen Sie den Get a Task-Endpunkt ab oder abonnieren Sie den Stream, bis die Aufgabe SUCCEEDED erreicht, und laden Sie anschließend die texturierte GLB-Datei über model_urls.glb herunter (oder das OBJ + MTL-Paar über model_urls.obj und model_urls.mtl, falls Ihre nachgelagerte Pipeline OBJ bevorzugt).
Fehlermodi
Name
400 - Bad Request
Description
Die Anfrage war nicht akzeptabel. Häufige Ursachen:
Fehlender Parameter: input_task_id ist erforderlich.
Ungültige UUID: Die input_task_id ist keine gültige UUID.
Übergeordnete Aufgabe nicht abgeschlossen: Die referenzierte Prototyp-Aufgabe hat den Status SUCCEEDED noch nicht erreicht.
Kein Kandidat: Die Prototyp-Aufgabe war erfolgreich, hat aber kein Kandidatenbild erzeugt.
Name
401 - Unauthorized
Description
Die Authentifizierung ist fehlgeschlagen. Bitte überprüfen Sie Ihren API-Schlüssel.
Name
402 - Payment Required
Description
Unzureichende Credits, um diese Aufgabe auszuführen.
Name
404 - Not Found
Description
Die referenzierte Prototyp-Aufgabe existiert nicht, gehört einem anderen Benutzer, oder wurde über die Webapp erstellt (nur Prototyp-Aufgaben im API-Modus können mit einem Build verkettet werden).
Name
429 - Too Many Requests
Description
Sie haben Ihre Ratenbegrenzung überschritten.
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" }'
Ruft eine Prototyp- oder Build-Aufgabe anhand einer gültigen Aufgaben-id ab. Der URL-Pfad
muss mit der Phase der Aufgabe übereinstimmen — wird eine Build-Aufgabe über
/prototype/:id abgerufen, liefert dies 404 und umgekehrt.
Bricht eine Brick-Figure-Aufgabe ab. Befindet sich die Aufgabe noch im Status PENDING, werden die bei der Erstellung
verbrauchten Credits erstattet. Aufgaben, die sich bereits
im Status IN_PROGRESS befinden, werden ohne Erstattung abgebrochen (der Worker verbraucht
möglicherweise bereits Ressourcen). Aufgaben, die bereits einen Endzustand erreicht haben
(SUCCEEDED, FAILED, CANCELED), können nicht abgebrochen werden.
Der URL-Pfad muss mit der Phase der Aufgabe übereinstimmen — DELETE auf
/prototype/:buildId liefert 404.
Pfadparameter
Name
id
Type
path
Description
Eindeutige Kennung der abzubrechenden Brick-Figure-Aufgabe.
Rückgabewerte
Gibt bei Erfolg 204 No Content mit leerem Body zurück.
Fehlerfälle
Name
400 - Bad Request
Description
Die Aufgabe befindet sich bereits in einem Endzustand und kann nicht abgebrochen werden.
Name
404 - Not Found
Description
Die Aufgabe existiert nicht, gehört einem anderen Benutzer, oder ihre Phase stimmt nicht mit dem URL-Pfad überein.
Streamt Echtzeit-Updates für einen Brick-Figure-Task über Server-Sent Events (SSE).
Der URL-Pfad muss mit der Phase des Tasks übereinstimmen – wird ein Stream unter
/prototype/:buildId/stream geöffnet, wird ein einzelner event: error-Payload mit
status_code: 404 gesendet und der Stream geschlossen.
Parameter
Name
id
Type
path
Description
Eindeutige Kennung des zu streamenden Brick-Figure-Tasks.
Rückgabewerte
Gibt einen Stream von Brick Figure Prototype-
oder Brick Figure Build-Task-Objekten als
Server-Sent Events zurück. Jeder Frame enthält das vollständige Task-Objekt für die jeweilige Phase – dieselbe Struktur,
die auch der Get-Endpunkt zurückgibt – solange der Task also PENDING oder IN_PROGRESS ist, sind die
Ausgabefelder einfach noch nicht befüllt (null, [] oder {}) und
finished_at ist null.
Ruft eine paginierte Liste Ihrer Brick-Figure-Aufgaben für eine einzelne Stufe ab. Der URL-
Pfad bestimmt die Stufe — /prototype liefert Prototyp-Aufgaben zurück; /build
liefert Build-Aufgaben zurück. Aufgaben der jeweils anderen Stufe sind in keiner der
beiden Antworten enthalten.
Pfadparameter
Name
stage
Type
path
Erforderlich
Description
Entweder prototype oder build. Die Sammlung liefert nur Aufgaben,
deren Stufe mit der URL übereinstimmt — der Abruf von /prototype liefert niemals
Build-Aufgaben zurück und umgekehrt.
Abfrageparameter
Name
page_num
Type
integer
Standard 1
Description
Seitennummer für die Paginierung.
Name
page_size
Type
integer
Standard 10
Description
Begrenzung der Seitengröße. Maximal zulässig sind 100 Einträge.
Name
sort_by
Type
string
Standard -created_at
Description
Feld, nach dem sortiert werden soll. Verfügbare Werte:
+created_at: Sortierung nach Erstellungszeitpunkt in aufsteigender Reihenfolge.
-created_at: Sortierung nach Erstellungszeitpunkt in absteigender Reihenfolge.
Das Brick Figure Prototype Task-Objekt ist eine Arbeitseinheit, die Meshy verfolgt, um
aus einem Ausgangsfoto ein Konzeptbild im Brick-Stil zu erzeugen. Die Ausgabe dieser
Stufe wird über input_task_id mit
der Build-Stufe verkettet.
Eigenschaften
Name
id
Type
string
Description
Eindeutige Kennung für die Aufgabe. Auch wenn wir als Implementierungsdetail eine k-sortierbare UUID für Task-IDs verwenden, sollten Sie keine Annahmen über das Format der ID treffen.
Name
type
Type
string
Description
Typ der Aufgabe. Der Wert ist creative-lab-brick-figure-prototype.
Name
name
Type
string
Description
Der Aufgabenname, der bei der Erstellung der Aufgabe angegeben wurde. Leere Zeichenkette, falls kein Name angegeben wurde.
Name
status
Type
string
Description
Status der Aufgabe. Mögliche Werte sind PENDING, IN_PROGRESS, SUCCEEDED, FAILED, CANCELED.
Name
progress
Type
integer
Description
Fortschritt der Aufgabe. Wenn die Aufgabe noch nicht gestartet wurde, ist diese Eigenschaft 0. Sobald die Aufgabe erfolgreich abgeschlossen wurde, wird sie 100.
Name
created_at
Type
timestamp
Description
Zeitstempel, wann die Aufgabe erstellt wurde, in Millisekunden.
Ein Zeitstempel stellt die Anzahl der seit dem 1. Januar 1970 UTC vergangenen Millisekunden dar, gemäß
dem Standard RFC 3339.
Beispielsweise wird Freitag, der 1. September 2023, 12:00:00 Uhr GMT als 1693569600000 dargestellt. Dies gilt
für alle Zeitstempel in der Meshy API.
Name
started_at
Type
timestamp
Description
Zeitstempel, wann die Aufgabe gestartet wurde, in Millisekunden. Falls die Aufgabe noch nicht gestartet wurde, ist diese Eigenschaft null.
Name
finished_at
Type
timestamp
Description
Zeitstempel, wann die Aufgabe abgeschlossen wurde, in Millisekunden. Falls die Aufgabe noch nicht abgeschlossen wurde, ist diese Eigenschaft null.
Name
expires_at
Type
timestamp
Description
Zeitstempel, wann das Ergebnis der Aufgabe abläuft, in Millisekunden.
Name
preceding_tasks
Type
integer
Description
Die Anzahl der vorangehenden Aufgaben.
Der Wert dieses Felds ist nur dann aussagekräftig, wenn der Aufgabenstatus PENDING ist.
Name
task_error
Type
object
Description
Fehlerdetails für fehlgeschlagene Aufgaben. Die vollständige Referenz des task_error-Objekts finden Sie unter Fehler.
Name
consumed_credits
Type
integer
Description
Die Anzahl der von dieser Aufgabe verbrauchten Credits. Vorhanden, wenn der Aufgabenstatus PENDING, IN_PROGRESS oder SUCCEEDED ist. Gibt 0 für FAILED-Aufgaben zurück (Credits werden bei einem Fehlschlag zurückerstattet).
Name
image_urls
Type
array of strings
Description
Herunterladbare URLs für die von dieser Prototype-Aufgabe erzeugten Konzeptbild-Kandidaten. Derzeit gibt die API immer genau einen Kandidaten zurück; das Feld ist ein Array, damit zukünftige Versionen mehrere Kandidaten ohne breaking change bereitstellen können.
Das Brick Figure Build Task-Objekt ist eine Arbeitseinheit, die Meshy verfolgt, um aus einem erfolgreich abgeschlossenen Prototyp-Task eine texturierte 3D-Brick-Figur zu generieren. Es nutzt dieselbe Bild-zu-3D-Pipeline wie Bild zu 3D, sodass die Ausgabefelder dem Task-Objekt dieses Endpunkts entsprechen.
Eigenschaften
Name
id
Type
string
Description
Eindeutige Kennung für den Task.
Name
type
Type
string
Description
Typ des Tasks. Der Wert ist creative-lab-brick-figure-build.
Name
name
Type
string
Description
Der Task-Name, der bei der Erstellung des Tasks angegeben wurde. Leerer String, wenn kein Name angegeben wurde.
Name
status
Type
string
Description
Status des Tasks. Mögliche Werte sind PENDING, IN_PROGRESS, SUCCEEDED, FAILED, CANCELED.
Name
progress
Type
integer
Description
Fortschritt des Tasks. Wenn der Task noch nicht gestartet wurde, ist dieser Wert 0. Sobald der Task erfolgreich abgeschlossen ist, wird er 100.
Name
created_at
Type
timestamp
Description
Zeitstempel, wann der Task erstellt wurde, in Millisekunden.
Name
started_at
Type
timestamp
Description
Zeitstempel, wann der Task gestartet wurde, in Millisekunden.
Name
finished_at
Type
timestamp
Description
Zeitstempel, wann der Task beendet wurde, in Millisekunden.
Name
expires_at
Type
timestamp
Description
Zeitstempel, wann das Ergebnis des Tasks abläuft, in Millisekunden.
Name
preceding_tasks
Type
integer
Description
Die Anzahl der vorausgehenden Tasks. Nur relevant, wenn der Status PENDING ist.
Name
task_error
Type
object
Description
Fehlerdetails für fehlgeschlagene Tasks. Siehe Fehler für die vollständige Referenz des task_error-Objekts.
Name
consumed_credits
Type
integer
Description
Die Anzahl der von diesem Task verbrauchten Credits. Gibt 0 für FAILED-Tasks zurück (Credits werden bei einem Fehlschlag erstattet).
Name
prompt
Type
string
Description
Für den Brick Figure Build immer leer. Vorhanden zur endpunktübergreifenden Kompatibilität mit der gemeinsamen V2ImageTo3DTaskResponse-Struktur, die von Bild zu 3D verwendet wird.
Name
negative_prompt
Type
string
Description
Für den Brick Figure Build immer leer. Vorhanden zur endpunktübergreifenden Kompatibilität.
Name
texture_prompt
Type
string
Description
Für den Brick Figure Build immer leer. Vorhanden zur endpunktübergreifenden Kompatibilität.
Name
texture_image_url
Type
string
Description
Für den Brick Figure Build immer leer. Vorhanden zur endpunktübergreifenden Kompatibilität.
Name
model_urls
Type
object
Description
Herunterladbare URLs für das generierte 3D-Modell. Der Brick Figure Build liefert ein texturiertes GLB sowie das OBJ + MTL-Paar für Pipelines, die Wavefront OBJ bevorzugen. Die Feldstruktur entspricht dem model_urls-Objekt von Bild zu 3D, sodass zukünftige Formaterweiterungen ohne Breaking Change eingefügt werden können.
Name
glb
Type
string
Description
Herunterladbare URL zur texturierten GLB-Datei.
Name
obj
Type
string
Description
Herunterladbare URL zur Wavefront-OBJ-Datei (Geometrie + UV).
Name
mtl
Type
string
Description
Herunterladbare URL zur begleitenden MTL-Materialdatei der OBJ-Datei. In Kombination mit obj und dem Eintrag aus texture_urls[0].base_color zu verwenden.
Name
thumbnail_url
Type
string
Description
Herunterladbare URL zur Miniaturansicht der Modelldatei.
Name
texture_urls
Type
array
Description
Ein Array von Textur-URL-Objekten, die von diesem Task generiert wurden. Enthält derzeit ein einzelnes Objekt mit der Basisfarbkarte.