API för Reparera utskrivbarhet
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 (mesh) är redo för utskrift.
Skapa en uppgift för Reparera utskrivbarhet
Denna endpoint skapar en ny uppgift för reparera utskrivbarhet. Uppgiften kör 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 (mesh) och de andra formatfälten kommer att vara tomma. Sökvägen input_task_id läser alltid källuppgiftens GLB, så utdata är .glb.
Parametrar
Endast en av input_task_id eller model_url är obligatorisk. Om båda anges har input_task_id prioritet.
Befintliga texturer tas bort under reparationen på grund av ändringar i geometri. För att lägga till texturer igen, använd Omtexturering API på den reparerade modellen.
- Name
- input_task_id
- Type
- string
- Obligatorisk
- Description
ID:t för en lyckad uppgift som du äger. Stödda uppgiftstyper: 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 att reparera. Stödda format:
.glb,.stl,.obj. Maximal filstorlek: 100 MB. Måste användahttp,httpseller endata:-URL (data-URL:er kringgår kontroller av filändelse).
- Name
- alpha_thumbnail
- Type
- boolean
- standard false
- Description
När den är inställd på
truerenderar uppgiften dessutom en version av förhandsvisningen med transparent bakgrund (RGBA) och returnerar den somalpha_thumbnail_urli GET-svaret. Det befintliga fältetthumbnail_urlär oförändrat.
Returnerar
Egenskapen result i svaret innehåller id för den nyligen skapade uppgiften för reparera utskrivbarhet.
Fellägen
- Name
400 - Bad Request- Description
Begäran var inte acceptabel. Vanliga orsaker:
- Saknad parameter: varken
input_task_idellermodel_urlangavs. - Ogiltigt UUID:
input_task_idär inte ett giltigt UUID. - Ogiltig modell-URL:
model_urlär felaktigt formad, använder ett schema som inte stöds eller har en filändelse som inte stöds. - Modellfilen är för stor:
model_url-innehållet översteg 100 MB. - Uppgiften lyckades inte: den refererade uppgiften är fortfarande väntande, pågår eller misslyckades.
- GLB saknas: den refererade uppgiften har ingen GLB-asset att reparera.
- Saknad parameter: varken
- Name
401 - Unauthorized- Description
Autentisering 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 credits-gräns har nåtts.
- Name
404 - Not Found- Description
Den refererade uppgiften finns 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 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 Reparera utskrivbarhet-uppgift
Denna endpoint hämtar en Reparera utskrivbarhet-uppgift via dess ID.
Parametrar
- Name
- id
- Type
- path
- Description
ID:t för Reparera utskrivbarhet-uppgiften som ska hämtas.
Returnerar
Reparera utskrivbarhet-uppgiftsobjektet. Blocket model_urls är tomt tills uppgiften når SUCCEEDED. Endast fältet model_urls 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": "",
"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 utdata. Denna åtgärd är oåterkallelig.
Sökvägsparametrar
- Name
- id
- Type
- path
- Description
ID:t för Reparera utskrivbarhet-uppgiften som ska tas bort.
Returnerar
Returnerar 200 OK vid lyckad begäran.
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.
Lista uppgifter för Reparera utskrivbarhet
Denna endpoint låter dig hämta en lista över uppgifter för att reparera utskrivbarhet.
Parametrar
Valfria attribut
- Name
- page_num
- Type
- integer
- Description
Sidnummer för paginering. Börjar på och har standardvärdet
1.
- Name
- page_size
- Type
- integer
- Description
Gräns för sidstorlek. Standardvärdet är
10objekt. Högsta tillåtna värde är50objekt.
- 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 över uppgiftsobjekt för Reparera utskrivbarhet.
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
}
]
Strömma en Reparera utskrivbarhet-uppgift
Denna endpoint strömmar realtidsuppdateringar för en reparera-utskrivbarhet-uppgift med Server-Sent Events (SSE).
Parametrar
- Name
- id
- Type
- path
- Description
Unik identifierare för reparera-utskrivbarhet-uppgiften som ska strömmas.
Returnerar
Returnerar en ström av Reparera utskrivbarhet-uppgiftsobjekt som Server-Sent Events.
För PENDING- eller IN_PROGRESS-uppgifter kommer svarströmmen endast att inkludera de nödvändiga fälten progress och status. Blocket model_urls skickas först 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.
// 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
}
Objektet Reparera utskrivbarhet-uppgift
- Name
- id
- Type
- string
- Description
Unik identifierare för uppgiften. Även om vi använder ett k-sorterbart UUID för uppgifts-id:n som implementeringsdetalj, bör du inte göra några antaganden om id:ts format.
- Name
- type
- Type
- string
- Description
Typ av reparera-utskrivbarhet-uppgift. 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 inte har startats ännu är den här egenskapen
0. När uppgiften har lyckats blir detta100.
- Name
- preceding_tasks
- Type
- integer
- Description
Antalet föregående uppgifter.
Värdet för detta fält är endast meningsfullt 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 inte har startats ännu är den här egenskapen
0.
- Name
- finished_at
- Type
- timestamp
- Description
Tidsstämpel för när uppgiften slutfördes, i millisekunder. Om uppgiften inte har slutförts ännu är den här egenskapen
0.
- Name
- expires_at
- Type
- timestamp
- Description
Tidsstämpel för när uppgiftens resultat upphör 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. Den här egenskapen ä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; de andra formatfälten är tomma strängar.
- Name
glb- Type
- string
- Description
Nedladdningsbar URL till den reparerade GLB. Fylls i när indata var en GLB eller när
input_task_idanvändes.
- Name
fbx- Type
- string
- Description
Reserverad för FBX-utdata. Alltid en tom sträng för reparera-utskrivbarhet-uppgifter.
- Name
obj- Type
- string
- Description
Nedladdningsbar URL till den reparerade OBJ. Fylls i när indata var en OBJ-uppladdning.
- Name
stl- Type
- string
- Description
Nedladdningsbar URL till den reparerade STL. Fylls i när indata 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örhandsvisningsbild som renderats 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 när uppgiften skapades medalpha_thumbnail: trueoch den transparenta förhandsvisningen renderades framgångsrikt; annars utelämnas detta fält.
- Name
- texture_urls
- Type
- array
- Description
Alltid en tom array. Reparationen bevarar endast indata-geometrin och bakar inte om texturer.
- Name
- consumed_credits
- Type
- integer
- Description
Antalet credits som förbrukas av denna uppgift.
10när uppgiften har nåttSUCCEEDED. Returnerar0förFAILED-uppgifter (credits återbetalas vid fel).
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
}