API zur Reparatur der Druckbarkeit
Reparieren Sie ein 3D-Modell für die FDM-Druckbarkeit – beheben Sie nicht-mannigfaltige Kanten, degenerierte Flächen, Löcher und andere Topologieprobleme, damit das Mesh druckbereit ist.
Eine Aufgabe zur Reparatur der Druckbarkeit erstellen
Dieser endpoint erstellt eine neue Aufgabe zur Reparatur der Druckbarkeit. Die Aufgabe führt eine Topologie-Reparatur an einem 3D-Modell aus und gibt eine wasserdichte, druckbereite Version zurück.
Das Ausgabeformat entspricht dem Eingabeformat. Wenn Sie eine .stl über model_url einreichen, enthält model_urls.stl in der Antwort das reparierte Mesh, und die anderen Formatfelder bleiben leer. Der Pfad input_task_id liest immer die GLB der Quellaufgabe, daher ist die Ausgabe .glb.
Parameter
Nur eines von input_task_id oder model_url ist erforderlich. Wenn beide angegeben werden, hat input_task_id Vorrang.
Vorhandene Texturen werden während der Reparatur aufgrund von Geometrieänderungen entfernt. Um Texturen wieder hinzuzufügen, verwenden Sie die Retexture API für das reparierte Modell.
- Name
- input_task_id
- Type
- string
- Erforderlich
- Description
Die ID einer erfolgreich abgeschlossenen Aufgabe, die Ihnen gehört. Unterstützte Aufgabentypen: Bild zu 3D, Multi-Bild zu 3D, Text zu 3D, Remesh und Retexture. Die Aufgabe muss den Status
SUCCEEDEDhaben und ein GLB-Asset erzeugt haben.
- Name
- model_url
- Type
- string
- Erforderlich
- Description
URL eines zu reparierenden 3D-Modells. Unterstützte Formate:
.glb,.stl,.obj. Maximale Dateigröße: 100 MB. Musshttp,httpsoder einedata:URL verwenden (data:URLs umgehen Erweiterungsprüfungen).
- Name
- alpha_thumbnail
- Type
- boolean
- Standard false
- Description
Wenn auf
truegesetzt, rendert die Aufgabe zusätzlich eine Version der Vorschau mit transparentem Hintergrund (RGBA) und gibt sie in der GET-Antwort alsalpha_thumbnail_urlzurück. Das bestehende Feldthumbnail_urlbleibt unverändert.
Rückgabe
Die Eigenschaft result der Antwort enthält die id der neu erstellten Aufgabe zur Reparatur der Druckbarkeit.
Fehlermodi
- Name
400 - Bad Request- Description
Die Anfrage war nicht akzeptabel. Häufige Ursachen:
- Fehlender Parameter: Weder
input_task_idnochmodel_urlwurde angegeben. - Ungültige UUID:
input_task_idist keine gültige UUID. - Ungültige Modell-URL:
model_urlist fehlerhaft formatiert, verwendet ein nicht unterstütztes Schema oder hat eine nicht unterstützte Dateiendung. - Modelldatei zu groß: Die Datei unter
model_urlüberschritt 100 MB. - Aufgabe nicht erfolgreich abgeschlossen: Die referenzierte Aufgabe ist noch ausstehend, in Bearbeitung oder fehlgeschlagen.
- Fehlendes GLB: Die referenzierte Aufgabe hat kein GLB-Asset zur Reparatur.
- Fehlender Parameter: Weder
- Name
401 - Unauthorized- Description
Authentifizierung fehlgeschlagen. Bitte überprüfen Sie Ihren API key.
- Name
402 - Payment Required- Description
Häufige Ursachen:
- Kostenloser Tarif: Für das Erstellen von Aufgaben ist ein kostenpflichtiger Tarif erforderlich. Führen Sie auf der Abonnementseite ein Upgrade durch.
- Nicht genügend Credits: Das Credit-Limit des Arbeitsbereichs wurde erreicht.
- Name
404 - Not Found- Description
Die referenzierte Aufgabe existiert nicht oder gehört einem anderen Benutzer.
- Name
429 - Too Many Requests- Description
Sie haben Ihr Kontingent für ausstehende Aufgaben oder das Ratenlimit überschritten.
Request
# Repair an existing task
curl https://api.meshy.ai/openapi/v1/print/repair \
-X POST \
-H "Authorization: Bearer ${YOUR_API_KEY}" \
-H 'Content-Type: application/json' \
-d '{
"input_task_id": "018a210d-8ba4-705c-b111-1f1776f7f578"
}'
# Or repair a model URL directly
curl https://api.meshy.ai/openapi/v1/print/repair \
-X POST \
-H "Authorization: Bearer ${YOUR_API_KEY}" \
-H 'Content-Type: application/json' \
-d '{
"model_url": "https://example.com/model.stl"
}'
Response
{
"result": "0193bfc5-ee4f-73f8-8525-44b398884ce9"
}
Reparatur-Druckbarkeitsaufgabe abrufen
Dieser endpoint ruft eine Reparatur-Druckbarkeitsaufgabe anhand ihrer ID ab.
Parameter
- Name
- id
- Type
- path
- Description
Die ID der abzurufenden Reparatur-Druckbarkeitsaufgabe.
Rückgabe
Das Reparatur-Druckbarkeitsaufgaben-Objekt. Der Block model_urls ist leer, bis die Aufgabe SUCCEEDED erreicht. Nur das Feld model_urls, das dem Eingabeformat entspricht, wird befüllt.
Request
curl https://api.meshy.ai/openapi/v1/print/repair/a43b5c6d-7e8f-901a-234b-567c890d1e2f \
-H "Authorization: Bearer ${YOUR_API_KEY}"
Response
{
"id": "0193bfc5-ee4f-73f8-8525-44b398884ce9",
"type": "print-repair",
"status": "SUCCEEDED",
"progress": 100,
"created_at": 1699999999000,
"started_at": 1700000000000,
"finished_at": 1700000030000,
"expires_at": 1715725401000,
"task_error": null,
"model_urls": {
"glb": "",
"fbx": "",
"obj": "",
"stl": "https://assets.meshy.ai/***/tasks/0193bfc5-ee4f-73f8-8525-44b398884ce9/output/model.stl?Expires=***",
"usdz": "",
"3mf": "",
"mtl": ""
},
"thumbnail_url": "https://assets.meshy.ai/***/tasks/0193bfc5-ee4f-73f8-8525-44b398884ce9/output/preview.png?Expires=***",
"texture_urls": [],
"consumed_credits": 10
}
Eine Reparatur-Druckbarkeitsaufgabe löschen
Dieser endpoint löscht dauerhaft eine Reparatur-Druckbarkeitsaufgabe und ihre reparierte Ausgabe. Diese Aktion ist unumkehrbar.
Pfadparameter
- Name
- id
- Type
- path
- Description
Die ID der zu löschenden Reparatur-Druckbarkeitsaufgabe.
Rückgabe
Gibt bei Erfolg 200 OK zurück.
Request
curl --request DELETE \
--url https://api.meshy.ai/openapi/v1/print/repair/a43b5c6d-7e8f-901a-234b-567c890d1e2f \
-H "Authorization: Bearer ${YOUR_API_KEY}"
Response
// Returns 200 Ok on success.
Aufgaben zur Reparatur der Druckbarkeit auflisten
Dieser endpoint ermöglicht es Ihnen, eine Liste von Aufgaben zur Reparatur der Druckbarkeit abzurufen.
Parameter
Optionale Attribute
- Name
- page_num
- Type
- integer
- Description
Seitennummer für die Paginierung. Beginnt bei
1und ist standardmäßig1.
- Name
- page_size
- Type
- integer
- Description
Begrenzung der Seitengröße. Standardmäßig
10Elemente. Maximal zulässig sind50Elemente.
- Name
- sort_by
- Type
- string
- Description
Feld, nach dem sortiert werden soll. Verfügbare Werte:
+created_at: Nach Erstellungszeit in aufsteigender Reihenfolge sortieren.-created_at: Nach Erstellungszeit in absteigender Reihenfolge sortieren.
Rückgabe
Gibt eine paginierte Liste von Aufgabenobjekten zur Reparatur der Druckbarkeit zurück.
Request
curl https://api.meshy.ai/openapi/v1/print/repair?page_size=10 \
-H "Authorization: Bearer ${YOUR_API_KEY}"
Response
[
{
"id": "0193bfc5-ee4f-73f8-8525-44b398884ce9",
"type": "print-repair",
"status": "SUCCEEDED",
"progress": 100,
"preceding_tasks": 0,
"created_at": 1699999999000,
"started_at": 1700000000000,
"finished_at": 1700000030000,
"expires_at": 1715725401000,
"task_error": null,
"model_urls": {
"glb": "https://assets.meshy.ai/***/tasks/0193bfc5-ee4f-73f8-8525-44b398884ce9/output/model.glb?Expires=***",
"fbx": "",
"obj": "",
"stl": "",
"usdz": "",
"3mf": "",
"mtl": ""
},
"thumbnail_url": "https://assets.meshy.ai/***/tasks/0193bfc5-ee4f-73f8-8525-44b398884ce9/output/preview.png?Expires=***",
"texture_urls": [],
"consumed_credits": 10
}
]
Eine Reparatur-Druckbarkeitsaufgabe streamen
Dieser endpoint streamt Echtzeit-Updates für eine Reparatur-Druckbarkeitsaufgabe mithilfe von Server-Sent Events (SSE).
Parameter
- Name
- id
- Type
- path
- Description
Eindeutige Kennung der zu streamenden Reparatur-Druckbarkeitsaufgabe.
Rückgabe
Gibt einen Stream von Reparatur-Druckbarkeitsaufgaben-Objekten als Server-Sent Events zurück.
Für Aufgaben mit PENDING oder IN_PROGRESS enthält der Antwort-Stream nur die erforderlichen Felder progress und status. Der Block model_urls wird erst gesendet, wenn die Aufgabe SUCCEEDED erreicht.
Request
curl -N https://api.meshy.ai/openapi/v1/print/repair/a43b5c6d-7e8f-901a-234b-567c890d1e2f/stream \
-H "Authorization: Bearer ${YOUR_API_KEY}"
Response Stream
// Error event example
event: error
data: {
"status_code": 404,
"message": "Task not found"
}
// Message event examples illustrate task progress.
// For PENDING or IN_PROGRESS tasks, the response stream will not include all fields.
event: message
data: {
"id": "a43b5c6d-7e8f-901a-234b-567c890d1e2f",
"progress": 0,
"status": "PENDING"
}
event: message
data: {
"id": "a43b5c6d-7e8f-901a-234b-567c890d1e2f",
"type": "print-repair",
"status": "SUCCEEDED",
"progress": 100,
"preceding_tasks": 0,
"created_at": 1699999999000,
"started_at": 1700000000000,
"finished_at": 1700000030000,
"expires_at": 1715725401000,
"task_error": null,
"model_urls": {
"glb": "https://assets.meshy.ai/***/tasks/a43b5c6d-7e8f-901a-234b-567c890d1e2f/output/model.glb?Expires=***",
"fbx": "",
"obj": "",
"stl": "",
"usdz": "",
"3mf": "",
"mtl": ""
},
"thumbnail_url": "https://assets.meshy.ai/***/tasks/a43b5c6d-7e8f-901a-234b-567c890d1e2f/output/preview.png?Expires=***",
"texture_urls": [],
"consumed_credits": 10
}
Das Aufgabenobjekt zur Reparatur der Druckbarkeit
- Name
- id
- Type
- string
- Description
Eindeutige Kennung für die Aufgabe. Obwohl wir als Implementierungsdetail eine k-sortierbare UUID für Aufgaben-IDs verwenden, sollten Sie keine Annahmen über das Format der ID treffen.
- Name
- type
- Type
- string
- Description
Typ der repair-printability-Aufgabe. Der Wert ist
print-repair.
- 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 gestartet wurde, ist diese Eigenschaft
0. Sobald die Aufgabe erfolgreich abgeschlossen wurde, wird dieser Wert zu100.
- Name
- preceding_tasks
- Type
- integer
- Description
Die Anzahl der vorangehenden Aufgaben.
Der Wert dieses Feldes ist nur dann aussagekräftig, wenn der Aufgabenstatus
PENDINGist.
- 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. Wenn die Aufgabe noch nicht gestartet wurde, ist diese Eigenschaft
0.
- Name
- finished_at
- Type
- timestamp
- Description
Zeitstempel, wann die Aufgabe abgeschlossen wurde, in Millisekunden. Wenn die Aufgabe noch nicht abgeschlossen wurde, ist diese Eigenschaft
0.
- Name
- expires_at
- Type
- timestamp
- Description
Zeitstempel, wann das Aufgabenergebnis aus dem System abläuft, in Millisekunden.
0, wenn die Aufgabe noch nicht abgeschlossen ist.
- Name
- task_error
- Type
- object
- Description
Fehlerinformationen, falls die Aufgabe fehlgeschlagen ist. Diese Eigenschaft ist
null, wenn die Aufgabe nicht fehlgeschlagen ist. Weitere Details finden Sie unter Fehler.- Name
message- Type
- string
- Description
Fehlermeldung, die beschreibt, was schiefgelaufen ist.
- Name
- model_urls
- Type
- object
- Description
Herunterladbare URLs zum reparierten 3D-Modell. Nur das Feld, das dem Eingabeformat entspricht, ist befüllt; die anderen Formatfelder sind leere Strings.
- Name
glb- Type
- string
- Description
Herunterladbare URL zum reparierten GLB. Befüllt, wenn die Eingabe ein GLB war oder wenn
input_task_idverwendet wurde.
- Name
fbx- Type
- string
- Description
Für FBX-Ausgabe reserviert. Bei repair-printability-Aufgaben immer ein leerer String.
- Name
obj- Type
- string
- Description
Herunterladbare URL zum reparierten OBJ. Befüllt, wenn die Eingabe ein OBJ-Upload war.
- Name
stl- Type
- string
- Description
Herunterladbare URL zum reparierten STL. Befüllt, wenn die Eingabe ein STL-Upload war.
- Name
usdz- Type
- string
- Description
Für USDZ-Ausgabe reserviert. Bei repair-printability-Aufgaben immer ein leerer String.
- Name
3mf- Type
- string
- Description
Für 3MF-Ausgabe reserviert. Bei repair-printability-Aufgaben immer ein leerer String.
- Name
mtl- Type
- string
- Description
Für MTL-Ausgabe reserviert. Bei repair-printability-Aufgaben immer ein leerer String.
- Name
- thumbnail_url
- Type
- string
- Description
URL eines Vorschaubildes, das aus dem reparierten Modell gerendert wurde.
- Name
- alpha_thumbnail_url
- Type
- string
- Description
Herunterladbare URL zu einer Version von
thumbnail_urlmit transparentem Hintergrund (RGBA). Nur vorhanden, wenn die Aufgabe mitalpha_thumbnail: trueerstellt wurde und die transparente Vorschau erfolgreich gerendert wurde; andernfalls wird dieses Feld ausgelassen.
- Name
- texture_urls
- Type
- array
- Description
Immer ein leeres Array. Die Reparatur erhält nur die Eingabegeometrie und backt Texturen nicht erneut.
- Name
- consumed_credits
- Type
- integer
- Description
Die Anzahl der von dieser Aufgabe verbrauchten Credits.
10, sobald die AufgabeSUCCEEDEDerreicht hat. Gibt0fürFAILED-Aufgaben zurück (Credits werden bei einem Fehler erstattet).
The Repair Printability Task Object
{
"id": "0193bfc5-ee4f-73f8-8525-44b398884ce9",
"type": "print-repair",
"status": "SUCCEEDED",
"progress": 100,
"preceding_tasks": 0,
"created_at": 1699999999000,
"started_at": 1700000000000,
"finished_at": 1700000030000,
"expires_at": 1715725401000,
"task_error": null,
"model_urls": {
"glb": "https://assets.meshy.ai/***/tasks/0193bfc5-ee4f-73f8-8525-44b398884ce9/output/model.glb?Expires=***",
"fbx": "",
"obj": "",
"stl": "",
"usdz": "",
"3mf": "",
"mtl": ""
},
"thumbnail_url": "https://assets.meshy.ai/***/tasks/0193bfc5-ee4f-73f8-8525-44b398884ce9/output/preview.png?Expires=***",
"texture_urls": [],
"consumed_credits": 10
}