API Ripara Stampabilità
Ripara un modello 3D per la stampabilità FDM — correggi spigoli non manifold, facce degenerate, buchi e altri problemi di topology in modo che la mesh sia pronta per la stampa.
Crea un'attività di Ripara stampabilità
Questo endpoint crea una nuova attività di riparazione della stampabilità. L'attività esegue la riparazione della topology su un modello 3D e restituisce una versione impermeabile e pronta per la stampa.
Il formato di output corrisponde al formato di input. Se invii un .stl tramite model_url, il model_urls.stl della risposta conterrà la mesh riparata e gli altri campi di formato saranno vuoti. Il percorso input_task_id legge sempre il GLB dell'attività di origine, quindi l'output è .glb.
Parametri
Solo uno tra input_task_id o model_url è richiesto. Se entrambi sono forniti, input_task_id ha la priorità.
Le texture esistenti vengono rimosse durante la riparazione a causa dei cambiamenti nella geometria. Per aggiungere nuovamente le texture, utilizza l'API di Retexture sul modello riparato.
- Name
- input_task_id
- Type
- string
- Obbligatorio
- Description
L'ID di un'attività riuscita di tua proprietà. Tipi di attività supportati: Immagine in 3D, Multi-immagine in 3D, Testo in 3D, Remesh, e Retexture. L'attività deve avere uno stato di
SUCCEEDEDe deve aver prodotto un asset GLB.
- Name
- model_url
- Type
- string
- Obbligatorio
- Description
URL di un modello 3D da riparare. Formati supportati:
.glb,.gltf,.obj,.fbx,.stl. Dimensione massima del file: 100 MB. Deve utilizzare URLhttp,https, odata:(gli URL data bypassano i controlli delle estensioni).
- Name
- alpha_thumbnail
- Type
- boolean
- predefinito false
- Description
Quando impostato su
true, l'attività rende inoltre una versione del preview con sfondo trasparente (RGBA) e la restituisce comealpha_thumbnail_urlnella risposta GET. Il campothumbnail_urlesistente rimane invariato.
Restituisce
La proprietà result della risposta contiene l'id della nuova attività di riparazione della stampabilità creata.
Modalità di fallimento
- Name
400 - Bad Request- Description
La richiesta non era accettabile. Cause comuni:
- Parametro mancante: né
input_task_idnémodel_urlsono stati forniti. - UUID non valido:
input_task_idnon è un UUID valido. - URL del modello non valido:
model_urlè malformato, utilizza uno schema non supportato o ha un'estensione di file non supportata. - File del modello troppo grande: il corpo di
model_urlha superato i 100 MB. - Attività non riuscita: l'attività di riferimento è ancora in sospeso, in corso o fallita.
- GLB mancante: l'attività di riferimento non ha un asset GLB da riparare.
- Parametro mancante: né
- Name
401 - Unauthorized- Description
Autenticazione fallita. Si prega di controllare la tua chiave API.
- Name
402 - Payment Required- Description
Cause comuni:
- Piano gratuito: la creazione dell'attività richiede un piano a pagamento. Effettua l'upgrade alla pagina di abbonamento.
- Crediti insufficienti: il limite di crediti dello spazio di lavoro è stato raggiunto.
- Name
404 - Not Found- Description
L'attività di riferimento non esiste o è di proprietà di un altro utente.
- Name
429 - Too Many Requests- Description
Hai superato la tua quota di attività in sospeso o il limite di frequenza.
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"
}
Recupera un'attività di Ripara Stampabilità
Questo endpoint recupera un'attività di ripara stampabilità tramite il suo ID.
Parametri
- Name
- id
- Type
- path
- Description
L'ID dell'attività di ripara stampabilità da recuperare.
Restituisce
L'Oggetto Attività di Ripara Stampabilità. Il blocco model_urls è vuoto fino a quando l'attività non raggiunge SUCCEEDED. Solo il campo model_urls corrispondente al formato di input è popolato.
Richiesta
curl https://api.meshy.ai/openapi/v1/print/repair/a43b5c6d-7e8f-901a-234b-567c890d1e2f \
-H "Authorization: Bearer ${YOUR_API_KEY}"
Risposta
{
"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
}
Elimina un'attività di Ripara stampabilità
Questo endpoint elimina permanentemente un'attività di ripara-stampabilità e il suo output riparato. Questa azione è irreversibile.
Parametri del percorso
- Name
- id
- Type
- path
- Description
L'ID dell'attività di ripara-stampabilità da eliminare.
Restituisce
Restituisce 200 OK in caso di successo.
Richiesta
curl --request DELETE \
--url https://api.meshy.ai/openapi/v1/print/repair/a43b5c6d-7e8f-901a-234b-567c890d1e2f \
-H "Authorization: Bearer ${YOUR_API_KEY}"
Risposta
// Returns 200 Ok on success.
Elenca le attività di Ripara stampabilità
Questo endpoint ti consente di recuperare un elenco di attività di ripara-stampabilità.
Parametri
Attributi opzionali
- Name
- page_num
- Type
- integer
- Description
Numero di pagina per la paginazione. Inizia e predefinito a
1.
- Name
- page_size
- Type
- integer
- Description
Limite della dimensione della pagina. Predefinito a
10elementi. Il massimo consentito è50elementi.
- Name
- sort_by
- Type
- string
- Description
Campo per l'ordinamento. Valori disponibili:
+created_at: Ordina per tempo di creazione in ordine crescente.-created_at: Ordina per tempo di creazione in ordine decrescente.
Restituisce
Restituisce un elenco paginato di Oggetti Attività di Ripara Stampabilità.
Richiesta
curl https://api.meshy.ai/openapi/v1/print/repair?page_size=10 \
-H "Authorization: Bearer ${YOUR_API_KEY}"
Risposta
[
{
"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
}
]
Trasmetti un'attività di Ripara stampabilità
Questo endpoint trasmette aggiornamenti in tempo reale per un'attività di ripara stampabilità utilizzando Server-Sent Events (SSE).
Parametri
- Name
- id
- Type
- path
- Description
Identificatore univoco per l'attività di ripara stampabilità da trasmettere.
Restituisce
Restituisce un flusso di Oggetti Attività di Ripara Stampabilità come Server-Sent Events.
Per le attività PENDING o IN_PROGRESS, il flusso di risposta includerà solo i campi necessari progress e status. Il blocco model_urls viene inviato solo una volta che l'attività raggiunge SUCCEEDED.
Richiesta
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=***",
"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
}
L'oggetto Task Ripara Stampabilità
- Name
- id
- Type
- string
- Description
Identificatore univoco per il task. Anche se utilizziamo un UUID k-sortable per gli id dei task come dettaglio di implementazione, non dovresti fare alcuna ipotesi sul formato dell'id.
- Name
- type
- Type
- string
- Description
Tipo del task di ripara stampabilità. Il valore è
print-repair.
- Name
- status
- Type
- string
- Description
Stato del task. I valori possibili sono uno tra
PENDING,IN_PROGRESS,SUCCEEDED,FAILED,CANCELED.
- Name
- progress
- Type
- integer
- Description
Avanzamento del task. Se il task non è ancora iniziato, questa proprietà sarà
0. Una volta che il task è riuscito, diventerà100.
- Name
- preceding_tasks
- Type
- integer
- Description
Il conteggio dei task precedenti.
Il valore di questo campo è significativo solo se lo stato del task è
PENDING.
- Name
- created_at
- Type
- timestamp
- Description
Timestamp di quando il task è stato creato, in millisecondi.
- Name
- started_at
- Type
- timestamp
- Description
Timestamp di quando il task è stato avviato, in millisecondi. Se il task non è ancora iniziato, questa proprietà sarà
0.
- Name
- finished_at
- Type
- timestamp
- Description
Timestamp di quando il task è stato completato, in millisecondi. Se il task non è ancora completato, questa proprietà sarà
0.
- Name
- expires_at
- Type
- timestamp
- Description
Timestamp di quando il risultato del task scadrà dal sistema, in millisecondi.
0se il task non è ancora completato.
- Name
- task_error
- Type
- object
- Description
Informazioni sull'errore se il task è fallito. Questa proprietà è
nullse il task non è fallito. Vedi Errori per maggiori dettagli.- Name
message- Type
- string
- Description
Messaggio di errore che descrive cosa è andato storto.
- Name
- model_urls
- Type
- object
- Description
URL scaricabili per il modello 3D riparato. Solo il campo corrispondente al formato di input è popolato; gli altri campi di formato sono stringhe vuote.
- Name
glb- Type
- string
- Description
URL scaricabile per il GLB riparato. Popolato quando l'input era un GLB o quando è stato usato
input_task_id.
- Name
gltf- Type
- string
- Description
URL scaricabile per il GLTF riparato. Popolato quando l'input era un caricamento GLTF.
- Name
fbx- Type
- string
- Description
URL scaricabile per il FBX riparato. Popolato quando l'input era un caricamento FBX.
- Name
obj- Type
- string
- Description
URL scaricabile per il OBJ riparato. Popolato quando l'input era un caricamento OBJ.
- Name
stl- Type
- string
- Description
URL scaricabile per il STL riparato. Popolato quando l'input era un caricamento STL.
- Name
usdz- Type
- string
- Description
Riservato per l'output USDZ. Sempre una stringa vuota per i task di ripara stampabilità.
- Name
3mf- Type
- string
- Description
Riservato per l'output 3MF. Sempre una stringa vuota per i task di ripara stampabilità.
- Name
mtl- Type
- string
- Description
Riservato per l'output MTL. Sempre una stringa vuota per i task di ripara stampabilità.
- Name
- thumbnail_url
- Type
- string
- Description
URL di un'immagine di anteprima renderizzata dal modello riparato.
- Name
- alpha_thumbnail_url
- Type
- string
- Description
URL scaricabile per una versione con sfondo trasparente (RGBA) di
thumbnail_url. Presente solo quando il task è stato creato conalpha_thumbnail: truee l'anteprima trasparente è stata renderizzata con successo; altrimenti questo campo è omesso.
- Name
- texture_urls
- Type
- array
- Description
Sempre un array vuoto. La riparazione preserva solo la geometria di input e non ricrea le texture.
- Name
- consumed_credits
- Type
- integer
- Description
Il numero di crediti consumati da questo task.
10una volta che il task ha raggiuntoSUCCEEDED. Restituisce0per i taskFAILED(i crediti vengono rimborsati in caso di fallimento).
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
}