Verwandeln Sie ein Ausgangsfoto in eine 3D-Sammelfigur im Backstein-Stil in zwei Phasen:
Prototyp erzeugt ein stilisiertes Konzeptbild aus Ihrem Eingabefoto, und dann
Bau verwandelt dieses Konzeptbild in ein 3D-Modell mit Textur. Die beiden Phasen
sind über input_task_id verknüpft.
POST /openapi/creative-lab/brick-figure/v1/prototype
Erzeuge ein einzelnes Konzeptbild im Ziegelstil aus dem Ausgangsfoto. Die zurückgegebene Aufgaben-ID übergeben Sie als input_task_id an den Build-Endpunkt. Siehe Das Ziegel-Figur-Prototypen-Objekt für die Antwortstruktur.
Parameter
Name
image_url
Type
string
Erforderlich
Description
Ausgangsfoto, das Meshy als Ziegel-Minifigur stilisieren soll. Derzeit unterstützen wir die Formate .jpg, .jpeg, .png und .webp.
Es gibt zwei Möglichkeiten, das Bild bereitzustellen:
Öffentlich zugängliche URL: Eine URL, die aus dem öffentlichen Internet zugänglich ist.
Data URI: Eine base64-kodierte Data URI des Bildes. Beispiel einer Data URI: data:image/jpeg;base64,<your base64-encoded image data>.
Name
name
Type
string
Description
Optionaler Aufgabenname für Anzeigezwecke. Maximal 100 Zeichen.
Rückgaben
Die result-Eigenschaft der Antwort enthält die Aufgaben-id der neu erstellten Ziegel-Figur-Prototypenaufgabe. Pollen Sie den Holen einer Aufgabe Endpunkt oder abonnieren Sie den Stream bis die Aufgabe den Status SUCCEEDED erreicht, und übergeben Sie dann diese ID an den Build-Endpunkt als input_task_id.
Fehlermodi
Name
400 - Bad Request
Description
Die Anfrage war nicht akzeptabel. Häufige Ursachen:
Fehlender Parameter: image_url ist erforderlich.
Ungültiges Bildformat: Die bereitgestellte image_url hat kein unterstütztes Format (.jpg, .jpeg, .png, .webp).
Bildmaße außerhalb des Bereichs: Das Bild ist zu klein, überschreitet die maximale Dateigröße oder überschreitet die maximale Pixelanzahl.
Nicht erreichbare URL: Die image_url konnte nicht heruntergeladen werden (404 oder timeout).
Ungültige Data URI: Die base64-Zeichenkette ist fehlerhaft.
Inhalt markiert: Das Eingangsfoto wurde von NSFW oder geistigem Eigentum moderation markiert.
Name
401 - Unauthorized
Description
Authentifizierung fehlgeschlagen. Bitte überprüfen Sie Ihren API-Schlüssel.
Name
402 - Payment Required
Description
Unzureichende 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
# Stufe 1: Erzeugen eines Konzeptbildes im Ziegelstilcurl https://api.meshy.ai/openapi/creative-lab/brick-figure/v1/prototype \ -X POST \ -H "Authorization: Bearer ${YOUR_API_KEY}" \ -H 'Content-Type: application/json' \ -d '{ "image_url": "<your publicly accessible image url or base64-encoded data URI>" }'
Generiere die finale 3D-Brick-Figur mit Textur aus einer erfolgreich abgeschlossenen Prototyp-Aufgabe. Der Bauprozess verwendet die gleiche Bild-zu-3D-Pipeline wie Bild zu 3D, sodass das Format des Antwortobjekts und die Liste der Ausgabe-URLs exakt übereinstimmen. Siehe Das Brick-Figur-Bauaufgaben-Objekt für die Struktur der Antwort.
Parameter
Name
input_task_id
Type
string
Erforderlich
Description
Die Aufgaben-ID einer Prototyp-Aufgabe, die über diesen OpenAPI-Endpunkt erstellt wurde. Der Prototyp muss mit dem gleichen API-Schlüssel erstellt worden sein, muss SUCCEEDED erreicht haben und muss genau ein Kandidatenbild erzeugt haben.
Über die Webanwendung erstellte Prototyp-Aufgaben werden nicht akzeptiert — der Endpunkt für den Bau akzeptiert nur Prototyp-Aufgaben, die durch POST /openapi/creative-lab/brick-figure/v1/prototype produziert wurden, und lehnt alle anderen Quellen mit 404 ab.
Name
name
Type
string
Description
Optionaler Aufgabenname für Anzeigzwecke. Maximale Länge: 100 Zeichen.
Rückgaben
Die result-Eigenschaft der Antwort enthält die Aufgaben-id der neu erstellten Brick-Figur-Bauaufgabe. Abonniere den Erhalte eine Aufgabe-Endpunkt oder abonniere den Stream, bis die Aufgabe SUCCEEDED erreicht. Lade dann das texturierte GLB von model_urls.glb herunter (oder das OBJ + MTL-Paar von model_urls.obj und model_urls.mtl, wenn deine nachgelagerte Pipeline OBJ bevorzugt).
Fehlermodi
Name
400 - Bad Request
Description
Die Anfrage war inakzeptabel. Häufige Ursachen:
Fehlender Parameter: input_task_id wird benötigt.
Ungültige UUID: Die input_task_id ist keine gültige UUID.
Eltern nicht erfolgreich: Die referenzierte Prototyp-Aufgabe hat SUCCEEDED noch nicht erreicht.
Kein Kandidat: Die Prototyp-Aufgabe war erfolgreich, aber erzeugte kein Kandidatenbild.
Name
401 - Unauthorized
Description
Authentifizierung fehlgeschlagen. Bitte überprüfen Sie Ihren API-Schlüssel.
Name
402 - Payment Required
Description
Nicht genügend 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 Webanwendung erstellt (nur im API-Modus erstellte Prototyp-Aufgaben werden für den Bau verknüpft).
Name
429 - Too Many Requests
Description
Sie haben die Ratenbegrenzung überschritten.
Anfrage
POST
/openapi/creative-lab/brick-figure/v1/build
# Stufe 2: Bau von einer erfolgreichen Prototyp-Aufgabe abkettencurl https://api.meshy.ai/openapi/creative-lab/brick-figure/v1/build \ -X POST \ -H "Authorization: Bearer ${YOUR_API_KEY}" \ -H 'Content-Type: application/json' \ -d '{ "input_task_id": "018a210d-8ba4-705c-b111-1f1776f7f578" }'
Abrufen einer Prototyp- oder Bauaufgabe mit einer gültigen Aufgaben-id. Der URL-Pfad
muss der Phase der Aufgabe entsprechen — eine Bauaufgabe, die über
/prototype/:id abgerufen wird, liefert 404 und umgekehrt.
Eine Brick-Figur-Aufgabe abbrechen. Wenn die Aufgabe noch PENDING ist, werden die zum Erstellungszeitpunkt verbrauchten Credits zurückerstattet. Aufgaben, die bereits IN_PROGRESS sind, werden ohne Erstattung abgebrochen (der Arbeiter könnte bereits Ressourcen verbrauchen). Aufgaben, die bereits einen Endstatus erreicht haben (SUCCEEDED, FAILED, CANCELED), können nicht abgebrochen werden.
Der URL-Pfad muss der Phase der Aufgabe entsprechen — DELETE auf
/prototype/:buildId gibt 404 zurück.
Pfadparameter
Name
id
Type
path
Description
Eindeutiger Bezeichner für die zu stornierende Brick-Figur-Aufgabe.
Rückgaben
Gibt 204 No Content bei Erfolg mit einem leeren Body zurück.
Fehlermodi
Name
400 - Bad Request
Description
Die Aufgabe ist bereits in einem Endstatus 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.
Streame Echtzeit-Updates für einen Brick-Figur-Task über Server-Sent Events (SSE).
Der URL-Pfad muss mit der Phase des Tasks übereinstimmen — das Öffnen eines Streams bei
/prototype/:buildId/stream sendet ein einzelnes event: error Payload mit
status_code: 404 und schließt den Stream.
Parameter
Name
id
Type
path
Description
Eindeutige Kennung für den Brick-Figur-Task, der gestreamt werden soll.
Rückgabe
Gibt einen Stream von Brick-Figur-Prototyp
oder Brick-Figur-Build Task-Objekten als
Server-Sent Events zurück. Für PENDING- oder IN_PROGRESS-Tasks wird der Antwortstream
nur die notwendigen Felder progress und status enthalten.
// Fehlerereignis-Beispiel (falscher Status oder Task nicht gefunden)event: errordata: {"status_code": 404,"message": "Task not found"}// Nachrichtenereignis-Beispiele illustrieren den Fortschritt des Tasks.// Für PENDING- oder IN_PROGRESS-Tasks wird der Antwortstream nicht alle Felder enthalten.event: messagedata: {"id": "019c320e-9a8f-7a1c-9c11-2a1876f8a9bb","progress": 0,"status": "PENDING"}event: messagedata: {"id": "019c320e-9a8f-7a1c-9c11-2a1876f8a9bb","type": "creative-lab-brick-figure-build","status": "SUCCEEDED","progress": 100,"created_at": 1729123500000,"started_at": 1729123510000,"finished_at": 1729123535000,"expires_at": 1729382735000,"task_error": null,"consumed_credits": 30,"prompt": "","negative_prompt": "","texture_prompt": "","texture_image_url": "","model_urls": {"glb":"https://assets.meshy.ai/***/tasks/019c320e-9a8f-7a1c-9c11-2a1876f8a9bb/output/model.glb?Expires=***","obj":"https://assets.meshy.ai/***/tasks/019c320e-9a8f-7a1c-9c11-2a1876f8a9bb/output/model.obj?Expires=***","mtl":"https://assets.meshy.ai/***/tasks/019c320e-9a8f-7a1c-9c11-2a1876f8a9bb/output/model.mtl?Expires=***" },"thumbnail_url": "https://assets.meshy.ai/***/tasks/019c320e-9a8f-7a1c-9c11-2a1876f8a9bb/output/preview.png?Expires=***","texture_urls": [ {"base_color":"https://assets.meshy.ai/***/tasks/019c320e-9a8f-7a1c-9c11-2a1876f8a9bb/output/texture_0.png?Expires=***" } ]}
Rufen Sie eine paginierte Liste Ihrer Brick Figur Aufgaben für eine einzelne Stufe ab. Der URL-Pfad wählt die Stufe aus — /prototype gibt Prototyp-Aufgaben zurück; /build gibt Bau-Aufgaben zurück. Aufgaben aus der anderen Stufe sind in keiner der Antworten enthalten.
Pfadparameter
Name
stage
Type
path
Erforderlich
Description
Entweder prototype oder build. Die Sammlung gibt nur Aufgaben zurück, deren Stufe dem URL entspricht — das Abrufen von /prototype gibt niemals Bauaufgaben zurück und umgekehrt.
Abfrageparameter
Name
page_num
Type
integer
Standard 1
Description
Seitennummer zur Paginierung.
Name
page_size
Type
integer
Standard 10
Description
Begrenzung der Seitengröße. Maximal erlaubt sind 100 Elemente.
Name
sort_by
Type
string
Standard -created_at
Description
Feld zum Sortieren. Verfügbare Werte:
+created_at: Sortieren nach Erstellungszeit in aufsteigender Reihenfolge.
-created_at: Sortieren nach Erstellungszeit in absteigender Reihenfolge.
Das Backstein-Figur-Prototyp-Aufgabenobjekt ist eine Arbeitseinheit, die Meshy verfolgt, um ein Konzeptbild im Backstein-Stil aus einem Quellfoto zu erstellen. Das Ergebnis dieser Phase wird über input_task_id in die Bauphase eingebunden.
Eigenschaften
Name
id
Type
string
Description
Eindeutiger Bezeichner für die Aufgabe. Obwohl wir eine k-sortierbare UUID für Aufgaben-IDs als Implementierungsdetail verwenden, sollten Sie keine Annahmen über das Format der ID machen.
Name
type
Type
string
Description
Typ der Aufgabe. Der Wert ist creative-lab-brick-figure-prototype.
Name
name
Type
string
Description
Der Aufgabenname, der beim Erstellen der Aufgabe angegeben wurde. Leerzeichen, wenn kein Name angegeben wurde.
Name
status
Type
string
Description
Status der Aufgabe. Mögliche Werte sind einer von PENDING, IN_PROGRESS, SUCCEEDED, FAILED, CANCELED.
Name
progress
Type
integer
Description
Fortschritt der Aufgabe. Wenn die Aufgabe noch nicht begonnen wurde, wird dieser Wert 0 sein. Sobald die Aufgabe erfolgreich abgeschlossen wurde, wird dieser Wert 100.
Name
created_at
Type
timestamp
Description
Zeitstempel, wann die Aufgabe erstellt wurde, in Millisekunden.
Ein Zeitstempel stellt die Anzahl der Millisekunden dar, die seit dem 1. Januar 1970 UTC vergangen sind, gemäß
dem RFC 3339 Standard.
Zum Beispiel 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. Wenn die Aufgabe noch nicht gestartet wurde, wird dieser Wert null sein.
Name
finished_at
Type
timestamp
Description
Zeitstempel, wann die Aufgabe abgeschlossen wurde, in Millisekunden. Wenn die Aufgabe noch nicht abgeschlossen ist, wird dieser Wert null sein.
Name
expires_at
Type
timestamp
Description
Zeitstempel, wann das Ergebnis der Aufgabe verfällt, in Millisekunden.
Name
preceding_tasks
Type
integer
Description
Die Anzahl der vorhergehenden Aufgaben.
Der Wert dieses Felds ist nur aussagekräftig, wenn der Aufgabenstatus PENDING ist.
Name
task_error
Type
object
Description
Fehlermeldungen für fehlgeschlagene Aufgaben. Siehe Fehler für die vollständige task_error Objekt-Referenz.
Name
consumed_credits
Type
integer
Description
Die Anzahl der durch diese Aufgabe verbrauchten Credits. Vorhanden, wenn der Aufgabenstatus PENDING, IN_PROGRESS oder SUCCEEDED ist. Gibt 0 für FAILED Aufgaben zurück (bei Fehlern werden die Credits zurückerstattet).
Name
image_urls
Type
array of strings
Description
Herunterladbare URLs für die von dieser Prototypaufgabe generierten Konzeptbildkandidaten. Derzeit gibt die API immer genau einen Kandidaten zurück; das Feld ist ein Array, damit zukünftige Überarbeitungen mehrere Kandidaten ohne eine Breaking-Änderung anzeigen können.
Das Brick Figure Build Task-Objekt ist eine Arbeitseinheit, die Meshy zur
Erstellung einer 3D-Bauklotzfigur mit Textur aus einer erfolgreichen Prototypaufgabe verfolgt. Es
führt dieselbe Bild-zu-3D-Pipeline aus, die auch von Bild zu 3D verwendet wird,
sodass die Ausgabefelder dem Task-Objekt dieses Endpunkts entsprechen.
Eigenschaften
Name
id
Type
string
Description
Eindeutiger Bezeichner für die Aufgabe.
Name
type
Type
string
Description
Typ der Aufgabe. Der Wert ist creative-lab-brick-figure-build.
Name
name
Type
string
Description
Der bei der Erstellung der Aufgabe angegebene Aufgabenname. Leerzeichen, wenn 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 begonnen hat, wird diese Eigenschaft 0 sein. Sobald die Aufgabe erfolgreich abgeschlossen ist, wird sie 100 sein.
Name
created_at
Type
timestamp
Description
Zeitstempel, wann die Aufgabe erstellt wurde, in Millisekunden.
Name
started_at
Type
timestamp
Description
Zeitstempel, wann die Aufgabe gestartet wurde, in Millisekunden.
Name
finished_at
Type
timestamp
Description
Zeitstempel, wann die Aufgabe abgeschlossen wurde, in Millisekunden.
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 vorausgehenden Aufgaben. Sinnvoll nur, wenn der Status PENDING ist.
Name
task_error
Type
object
Description
Fehlerdetails für fehlgeschlagene Aufgaben. Siehe Fehler für die vollständige task_error Objektreferenz.
Name
consumed_credits
Type
integer
Description
Die Anzahl der von dieser Aufgabe verbrauchten Credits. Gibt 0 für FAILED Aufgaben zurück (Credits werden bei Versagen zurückerstattet).
Name
prompt
Type
string
Description
Immer leer für Brick-Figur-Aufbau. Präsenz für die Kompatibilität mit dem gemeinsamen V2ImageTo3DTaskResponse-Format, das von Image zu 3D verwendet wird.
Name
negative_prompt
Type
string
Description
Immer leer für Brick-Figur-Aufbau. Präsenz für die Kompatibilität zwischen Endpunkten.
Name
texture_prompt
Type
string
Description
Immer leer für Brick-Figur-Aufbau. Präsenz für die Kompatibilität zwischen Endpunkten.
Name
texture_image_url
Type
string
Description
Immer leer für Brick-Figur-Aufbau. Präsenz für die Kompatibilität zwischen Endpunkten.
Name
model_urls
Type
object
Description
Herunterladbare URLs für das generierte 3D-Modell. Der Brick-Figur-Aufbau erzeugt ein strukturiertes GLB plus das OBJ + MTL-Paar für Pipelines, die Wavefront OBJ bevorzugen. Die Feldform entspricht dem Bild zu 3D model_urls Objekt, sodass zukünftige Formaterweiterungen ohne Breaking Change einfügen.
Name
glb
Type
string
Description
Herunterladbare URL zur strukturierten GLB-Datei.
Name
obj
Type
string
Description
Herunterladbare URL zur Wavefront OBJ-Datei (Geometrie + UV).
Name
mtl
Type
string
Description
Herunterladbare URL zur OBJ-kompatiblen MTL-Materialdatei. Paar mit obj und dem Eintrag von texture_urls[0].base_color.
Name
thumbnail_url
Type
string
Description
Herunterladbare URL zum Miniaturbild der Modelldatei.
Name
texture_urls
Type
array
Description
Ein Array von Textur-URL-Objekten, die von dieser Aufgabe generiert wurden. Enthält derzeit ein einzelnes Objekt mit der Basisfarbkarte.