Reparera utskrivbarhet API
Reparera en 3D-modell för FDM-utskrivbarhet — åtgärda non-manifold-kanter, degenererade ytor, hål och andra topology-problem så att nätet är utskriftsklart.
Skapa en Reparera utskrivbarhet-uppgift
Denna endpoint skapar en ny reparera-utskrivbarhet-uppgift. Uppgiften kör en topology-reparation på en 3D-modell och returnerar en vattentät, utskriftsklar version.
Utdataformatet matchar indataformatet. Om du skickar in en .stl via model_url, kommer svarets model_urls.stl att innehålla det reparerade nätet och de andra formatfälten kommer att vara tomma. input_task_id-sökvägen läser alltid källuppgiftens GLB, så utdatan är .glb.
Parametrar
Endast en av input_task_id eller model_url krävs. Om båda anges har input_task_id prioritet.
Befintliga texturer tas bort under reparationen på grund av geometriändringar. För att lägga till texturer igen, använd Omtexturering-API:et på den reparerade modellen.
- Name
- input_task_id
- Type
- string
- Obligatorisk
- Description
ID:t för en lyckad uppgift som du äger. Uppgiftstyper som stöds: Bild till 3D, Flera bilder till 3D, Text till 3D, Remesh och Omtexturering. Uppgiften måste ha statusen
SUCCEEDEDoch måste ha producerat en GLB-asset.
- Name
- model_url
- Type
- string
- Obligatorisk
- Description
URL till en 3D-modell som ska repareras. Format som stöds:
.glb,.gltf,.obj,.fbx,.stl. Maximal filstorlek: 100 MB. Måste användahttp,https, eller endata:-URL (data-URL:er kringgår filändelsekontroller).
- Name
- alpha_thumbnail
- Type
- boolean
- standard false
- Description
När den är satt till
truerenderar uppgiften dessutom en förhandsgranskning med transparent bakgrund (RGBA) och returnerar den somalpha_thumbnail_urli GET-svaret. Det befintliga fältetthumbnail_urlförblir oförändrat.
Returer
Svarets result-egenskap innehåller id:t för den nyligen skapade reparera-utskrivbarhet-uppgiften.
Felfall
- Name
400 - Bad Request- Description
Begäran var oacceptabel. Vanliga orsaker:
- Saknad parameter: varken
input_task_idellermodel_urlangavs. - Ogiltig UUID:
input_task_idär inte en giltig UUID. - Ogiltig modell-URL:
model_urlär felformaterad, använder ett schema som inte stöds, eller har en filändelse som inte stöds. - Modellfil för stor:
model_url-innehållet överskred 100 MB. - Uppgift ej lyckad: den refererade uppgiften väntar fortfarande, pågår, eller misslyckades.
- Saknad GLB: den refererade uppgiften har ingen GLB-asset att reparera.
- Saknad parameter: varken
- Name
401 - Unauthorized- Description
Autentiseringen misslyckades. Kontrollera din API-nyckel.
- Name
402 - Payment Required- Description
Vanliga orsaker:
- Gratisplan: skapande av uppgift kräver en betald plan. Uppgradera på prenumerationssidan.
- Otillräckliga credits: arbetsytans creditgräns har uppnåtts.
- Name
404 - Not Found- Description
Den refererade uppgiften existerar inte eller ägs av en annan användare.
- Name
429 - Too Many Requests- Description
Du har överskridit din kvot för väntande uppgifter eller din hastighetsgräns.
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"
}
Hämta en uppgift för Reparera utskrivbarhet
Denna endpoint hämtar en uppgift för reparera utskrivbarhet baserat på dess ID.
Parametrar
- Name
- id
- Type
- path
- Description
ID:t för den uppgift för reparera utskrivbarhet som ska hämtas.
Returnerar
Objektet för uppgiften Reparera utskrivbarhet. Blocket model_urls är tomt tills uppgiften når SUCCEEDED. Endast det model_urls-fält som matchar indataformatet fylls i.
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": "",
"gltf": "",
"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
}
Ta bort en Reparera utskrivbarhet-uppgift
Denna endpoint tar permanent bort en reparera-utskrivbarhet-uppgift och dess reparerade resultat. Denna åtgärd kan inte ångras.
Sökvägsparametrar
- Name
- id
- Type
- path
- Description
ID:t för den reparera-utskrivbarhet-uppgift som ska tas bort.
Uppgiftsstatus
En uppgift som fortfarande är PENDING tas bort och de credits som
förbrukades vid skapandet återbetalas.
En uppgift som redan är IN_PROGRESS kan inte tas bort: begäran
avvisas med 409 Conflict och uppgiften fortsätter köra. Credits för en uppgift
som arbetaren redan har påbörjat kan inte återbetalas, så att ta bort den mitt i körningen
skulle kosta dig både credits och resultatet. Vänta tills den når
SUCCEEDED, FAILED eller CANCELED, och ta sedan bort den.
En uppgift i ett sluttillstånd (SUCCEEDED, FAILED eller CANCELED) tas bort
utan återbetalning.
Returer
Returnerar 200 OK vid lyckad borttagning, eller 409 Conflict när uppgiften är
IN_PROGRESS.
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
// 200 OK on success, with an empty body.
//
// 409 Conflict when the task is IN_PROGRESS — the task is left running:
{
"message": "Task is IN_PROGRESS and cannot be deleted. Credits for a task the worker has already started are not refundable; wait for it to reach SUCCEEDED, FAILED or CANCELED, then delete it."
}
Lista över uppgifter för Reparera utskrivbarhet
Denna endpoint gör det möjligt att hämta en lista med uppgifter för reparera utskrivbarhet.
Parametrar
Valfria attribut
- Name
- page_num
- Type
- integer
- Description
Sidnummer för paginering. Börjar och har standardvärdet
1.
- Name
- page_size
- Type
- integer
- Description
Gräns för sidstorlek. Standardvärdet är
10objekt. Max tillåtet är100objekt.
- Name
- sort_by
- Type
- string
- Description
Fält att sortera efter. Tillgängliga värden:
+created_at: Sortera efter skapandetid i stigande ordning.-created_at: Sortera efter skapandetid i fallande ordning.
Returnerar
Returnerar en paginerad lista med Repair Printability Task-objekt.
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=***",
"gltf": "",
"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
}
]
Streama en Reparera utskrivbarhet-uppgift
Denna endpoint strömmar realtidsuppdateringar för en reparera-utskrivbarhet-uppgift med hjälp av Server-Sent Events (SSE).
Parametrar
- Name
- id
- Type
- path
- Description
Unik identifierare för den reparera-utskrivbarhet-uppgift som ska strömmas.
Returer
Returnerar en ström av Repair Printability Task Objects som Server-Sent Events.
Varje bildruta innehåller hela uppgiftsobjektet för stadiet — samma form som
Get-endpointen returnerar — så medan uppgiften är PENDING eller IN_PROGRESS är
utdatafälten helt enkelt inte ifyllda ännu (null, [] eller {}) och
finished_at är null. Blocket model_urls skickas endast när uppgiften når SUCCEEDED.
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.
// Every frame is the full task object; fields not yet populated are null / empty.
// The PENDING frame below is abbreviated to the fields that change.
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=***",
"gltf": "",
"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
}
Reparera utskrivbarhet-uppgiftsobjektet
- Name
- id
- Type
- string
- Description
Unik identifierare för uppgiften. Även om vi använder en k-sorterbar UUID för uppgifts-id som implementationsdetalj bör du inte göra några antaganden om id:ts format.
- Name
- type
- Type
- string
- Description
Typ av reparera utskrivbarhet-uppgiften. Värdet är
print-repair.
- Name
- status
- Type
- string
- Description
Uppgiftens status. Möjliga värden är ett av
PENDING,IN_PROGRESS,SUCCEEDED,FAILED,CANCELED.
- Name
- progress
- Type
- integer
- Description
Uppgiftens progress. Om uppgiften ännu inte har startat kommer denna egenskap att vara
0. När uppgiften har lyckats kommer den att bli100.
- Name
- preceding_tasks
- Type
- integer
- Description
Antalet föregående uppgifter.
Värdet i detta fält är endast relevant om uppgiftens status är
PENDING.
- Name
- created_at
- Type
- timestamp
- Description
Tidsstämpel för när uppgiften skapades, i millisekunder.
- Name
- started_at
- Type
- timestamp
- Description
Tidsstämpel för när uppgiften startades, i millisekunder. Om uppgiften ännu inte har startat kommer denna egenskap att vara
0.
- Name
- finished_at
- Type
- timestamp
- Description
Tidsstämpel för när uppgiften slutfördes, i millisekunder. Om uppgiften ännu inte har slutförts kommer denna egenskap att vara
0.
- Name
- expires_at
- Type
- timestamp
- Description
Tidsstämpel för när uppgiftens resultat kommer att upphöra att gälla i systemet, i millisekunder.
0om uppgiften ännu inte har slutförts.
- Name
- task_error
- Type
- object
- Description
Felinformation om uppgiften har misslyckats. Denna egenskap är
nullom uppgiften inte har misslyckats. Se Fel för mer information.- Name
message- Type
- string
- Description
Felmeddelande som beskriver vad som gick fel.
- Name
- model_urls
- Type
- object
- Description
Nedladdningsbara URL:er till den reparerade 3D-modellen. Endast fältet som matchar indataformatet fylls i; övriga formatfält är tomma strängar.
- Name
glb- Type
- string
- Description
Nedladdningsbar URL till den reparerade GLB-filen. Fylls i när indatan var en GLB eller när
input_task_idanvändes.
- Name
gltf- Type
- string
- Description
Nedladdningsbar URL till den reparerade GLTF-filen. Fylls i när indatan var en GLTF-uppladdning.
- Name
fbx- Type
- string
- Description
Nedladdningsbar URL till den reparerade FBX-filen. Fylls i när indatan var en FBX-uppladdning.
- Name
obj- Type
- string
- Description
Nedladdningsbar URL till den reparerade OBJ-filen. Fylls i när indatan var en OBJ-uppladdning.
- Name
stl- Type
- string
- Description
Nedladdningsbar URL till den reparerade STL-filen. Fylls i när indatan var en STL-uppladdning.
- Name
usdz- Type
- string
- Description
Reserverad för USDZ-utdata. Alltid en tom sträng för reparera utskrivbarhet-uppgifter.
- Name
3mf- Type
- string
- Description
Reserverad för 3MF-utdata. Alltid en tom sträng för reparera utskrivbarhet-uppgifter.
- Name
mtl- Type
- string
- Description
Reserverad för MTL-utdata. Alltid en tom sträng för reparera utskrivbarhet-uppgifter.
- Name
- thumbnail_url
- Type
- string
- Description
URL till en förhandsgranskningsbild renderad från den reparerade modellen.
- Name
- alpha_thumbnail_url
- Type
- string
- Description
Nedladdningsbar URL till en version med transparent bakgrund (RGBA) av
thumbnail_url. Finns endast med när uppgiften skapades medalpha_thumbnail: trueoch den transparenta förhandsgranskningen renderades framgångsrikt; annars utelämnas detta fält.
- Name
- texture_urls
- Type
- array
- Description
Alltid en tom array. Reparation bevarar endast indatans geometri och bakar inte om texturer.
- Name
- consumed_credits
- Type
- integer
- Description
Antalet credits som förbrukats av denna uppgift.
10när uppgiften har nåttSUCCEEDED. Returnerar0förFAILED-uppgifter (credits återbetalas vid misslyckande).
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=***",
"gltf": "",
"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
}