API Réparer l'imprimabilité
Réparez un modèle 3D pour l'imprimabilité — corrigez les arêtes non-manifold, les faces dégénérées, les trous et autres problèmes de topology afin que le maillage soit prêt à l'impression. Vous pouvez également épaissir les parois trop fines par rapport à la taille d'impression prévue.
Create a Repair Printability Task
Ce point de terminaison crée une nouvelle tâche de réparation d'imprimabilité. La tâche effectue une réparation de la topology sur un modèle 3D et renvoie une version étanche, prête à l'impression.
La tâche s'exécute en arrière-plan. Pour connaître la durée habituelle, consultez Processing Times.
Le format de sortie correspond au format d'entrée. Si vous soumettez un .stl via model_url, le model_urls.stl de la réponse contiendra le maillage réparé et les autres champs de format seront vides. Le chemin input_task_id lit toujours le GLB de la tâche source, donc la sortie est au format .glb.
Pour également épaissir les parois trop fines pour la taille d'impression prévue, envoyez printer_type, une taille d'impression, ou les deux. Les parois ne sont épaissies que lorsque plus de 5 % de la surface est trop fine pour cette imprimante. Le modèle réparé conserve son échelle d'origine ; redimensionnez-le avec l'API Resize, qui utilise des mètres (100 mm correspond à 0.1).
Paramètres
Seul l'un des deux paramètres input_task_id ou model_url est requis. Si les deux sont fournis, input_task_id est prioritaire.
Les textures existantes sont supprimées pendant la réparation en raison des modifications de géométrie. Pour les réajouter, utilisez l'API Retexture sur le modèle réparé.
- Name
- input_task_id
- Type
- string
- Requis
- Description
L'ID d'une tâche réussie que vous possédez. Types de tâches pris en charge : Image to 3D, Multi-Image to 3D, Text to 3D, Remesh, Retexture et Analyze Printability. La tâche doit avoir le statut
SUCCEEDEDet doit avoir produit un asset GLB.Une tâche d'analyse ayant vérifié l'épaisseur de paroi transmet également son imprimante et sa taille, de sorte que la réparation vérifie l'épaisseur de paroi et épaissit les parois fines même si vous n'envoyez ni l'un ni l'autre ; un
printer_typeou une taille d'impression que vous envoyez remplace cette valeur. Les tâches d'analyse créées à partir d'unmodel_url.stl,.fbx, ou.gltfne sont pas acceptées : envoyez plutôt le fichier en tant quemodel_url.
- Name
- model_url
- Type
- string
- Requis
- Description
URL d'un modèle 3D à réparer. Formats pris en charge :
.glb,.gltf,.obj,.fbx,.stl. Taille de fichier maximale : 100 Mo. Doit utiliserhttp,https, ou une URLdata:(les URL data contournent les vérifications d'extension).Les URL de téléchargement Meshy (
assets.meshy.ai/…?Expires=…&Signature=…) sont signées et cessent de fonctionner à l'expires_atde la tâche ; récupérer à nouveau la tâche ne les renouvelle pas. Pour un modèle généré avec Meshy, transmettez plutôtinput_task_id. Cela fonctionne tant que la tâche source est conservée (voir Asset Retention). Pour réutiliser un modèle après cette échéance, téléchargez-le avantexpires_atet envoyez votre propre copie.
- Name
- alpha_thumbnail
- Type
- boolean
- défaut false
- Description
Lorsqu'il est défini sur
true, la tâche génère en plus une version avec arrière-plan transparent (RGBA) de l'aperçu et la renvoie en tant quealpha_thumbnail_urldans la réponse GET. Le champthumbnail_urlexistant reste inchangé.
Envoyez au maximum un des deux champs de taille d'impression. Si vous envoyez printer_type sans taille, et qu'aucune taille n'est réutilisée depuis une tâche d'analyse, la taille par défaut est :
.glbet toutinput_task_id: 150 mm de hauteur..stl: le côté le plus long propre au fichier, lu en millimètres. Pour un STL exprimé dans d'autres unités, envoyezintended_print_longest_side_mm..obj,.fbx,.gltf: 150 mm sur le côté le plus long.
- Name
- printer_type
- Type
- string
- Description
L'imprimante que vous prévoyez d'utiliser. Elle définit l'épaisseur de paroi minimale visée par la réparation. Par défaut sur
fdmlorsque vous envoyez une taille d'impression sans ce paramètre, sauf si une tâche d'analyse transmise commeinput_task_idfournit l'imprimante.Valeurs disponibles :
fdm: filament, 1,0 mm de paroi minimale.sla: résine, 0,8 mm de paroi minimale.full_color: couleur complète, 2,0 mm de paroi minimale.
- Name
- intended_print_height_mm
- Type
- number
- Description
Hauteur de l'impression, en millimètres. Plage :
[1, 1000]. Arrondi au millimètre le plus proche. Uniquement pour une entrée GLB.
- Name
- intended_print_longest_side_mm
- Type
- number
- Description
Longueur du côté le plus long de l'impression, en millimètres. Plage :
[1, 1000]. Arrondi au millimètre le plus proche. Fonctionne avec tous les formats d'entrée.
Retours
La propriété result de la réponse contient l'id de la tâche de réparation d'imprimabilité nouvellement créée.
Modes d'échec
- Name
400 - Bad Request- Description
La requête était inacceptable. Causes courantes :
- Paramètre manquant : ni
input_task_idnimodel_urln'ont été fournis. - UUID invalide :
input_task_idn'est pas un UUID valide. - URL de modèle invalide :
model_urlest mal formée, utilise un schéma non pris en charge, ou possède une extension de fichier non prise en charge. - Fichier de modèle trop volumineux : le corps de
model_urldépassait 100 Mo. - Le fichier de modèle n'a pas pu être téléchargé :
model_urla renvoyé une erreur, le plus souvent parce qu'une URL de téléchargement Meshy signée a expiré. Récupérer à nouveau la tâche renvoie la même URL avec la même expiration, donc envoyez votre propre copie du fichier, ou utilisezinput_task_idtant que la tâche source est encore conservée. - Tâche non réussie : la tâche référencée est encore en attente, en cours, ou a échoué.
- GLB manquant : la tâche référencée ne dispose d'aucun asset GLB à réparer.
- Taille d'impression invalide :
intended_print_height_mmouintended_print_longest_side_mmest hors de[1, 1000], ou les deux ont été envoyés. - Type d'imprimante inconnu :
printer_typen'est nifdm, nisla, nifull_color. - Hauteur sur un modèle non-GLB :
intended_print_height_mma été envoyé avec unmodel_urlqui n'est pas.glb. Utilisezintended_print_longest_side_mmà la place. - Impossible de dimensionner ce modèle par la hauteur : à la hauteur demandée (ou la valeur par défaut de 150 mm), le côté le plus long du modèle serait hors de
[1, 1000]mm, le modèle est plat, ou sa taille ne peut pas être déterminée. Utilisezintended_print_longest_side_mmà la place. Pour unmodel_url.glbet certaines tâchesinput_task_id, ceci n'est détecté qu'après le démarrage de la tâche, et la tâche se termine alors enFAILED. - Taille STL inutilisable :
printer_typea été envoyé sans taille, et le côté le plus long propre au.stlne peut pas être lu ou est hors de[1, 1000]mm. Envoyezintended_print_longest_side_mm.
- Paramètre manquant : ni
- Name
401 - Unauthorized- Description
L'authentification a échoué. Veuillez vérifier votre clé API.
- Name
402 - Payment Required- Description
Causes courantes :
- Offre gratuite : la création de tâche nécessite un plan payant. Passez à un niveau supérieur sur la page d'abonnement.
- Crédits insuffisants : la limite de crédits de l'espace de travail a été atteinte.
- Name
404 - Not Found- Description
La tâche référencée n'existe pas ou appartient à un autre utilisateur.
- Name
429 - Too Many Requests- Description
Vous avez dépassé votre quota de tâches en attente ou votre limite de débit.
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"
}'
# Also thicken walls that are too thin for a 100 mm tall SLA print
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",
"printer_type": "sla",
"intended_print_height_mm": 100
}'
Response
{
"result": "0193bfc5-ee4f-73f8-8525-44b398884ce9"
}
Récupérer une tâche Réparer l'imprimabilité
Ce point de terminaison récupère une tâche de réparation de l'imprimabilité par son ID.
Paramètres
- Name
- id
- Type
- path
- Description
L'ID de la tâche de réparation de l'imprimabilité à récupérer.
Retours
L'objet Tâche de réparation de l'imprimabilité. Le bloc model_urls est vide tant que la tâche n'a pas atteint le statut SUCCEEDED. Seul le champ model_urls correspondant au format d'entrée est renseigné. Une réparation d'épaisseur de paroi inclut intended_print dès le départ, puis print_repair_report une fois la tâche terminée avec succès.
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
}
Response (wall thickness checked)
{
"id": "0193bfc5-ee4f-73f8-8525-44b398884ce9",
"type": "print-repair",
"status": "SUCCEEDED",
"progress": 100,
"created_at": 1699999999000,
"started_at": 1700000000000,
"finished_at": 1700000090000,
"expires_at": 1715725490000,
"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,
"intended_print": {
"printer_type": "sla",
"height_mm": 100,
"longest_side_mm": 118,
"wall_thickness_mm": 0.8,
"dimensions_mm": [118, 72.41, 99.87]
},
"print_repair_report": {
"route": "thin_wall",
"applied": true,
"faces_before": 243112,
"faces_after": 251870,
"thin_area_ratio_before": 0.083,
"thin_area_ratio_after": 0.004
}
}
Supprimer une tâche de réparation d'imprimabilité
Ce point de terminaison supprime définitivement une tâche de réparation d'imprimabilité ainsi que son résultat réparé. Cette action est irréversible.
Paramètres de chemin
- Name
- id
- Type
- path
- Description
L'ID de la tâche de réparation d'imprimabilité à supprimer.
Statut de la tâche
Une tâche encore PENDING est supprimée et les crédits consommés au
moment de la création sont remboursés.
Une tâche déjà IN_PROGRESS ne peut pas être supprimée : la requête est
rejetée avec 409 Conflict et la tâche continue de s'exécuter. Les crédits
d'une tâche déjà démarrée par le worker ne sont pas remboursables ; supprimer
la tâche en cours d'exécution vous ferait donc perdre à la fois les crédits
et le résultat. Attendez qu'elle atteigne l'état SUCCEEDED, FAILED ou
CANCELED, puis supprimez-la.
Une tâche dans un état final (SUCCEEDED, FAILED ou CANCELED) est
supprimée sans remboursement.
Retours
Retourne 200 OK en cas de succès, ou 409 Conflict lorsque la tâche est
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."
}
Lister les tâches Réparer l'imprimabilité
Ce point de terminaison vous permet de récupérer une liste de tâches de réparation de l'imprimabilité.
Paramètres
Attributs facultatifs
- Name
- page_num
- Type
- integer
- Description
Numéro de page pour la pagination. Commence et vaut par défaut
1.
- Name
- page_size
- Type
- integer
- Description
Limite de la taille de page. Vaut
10éléments par défaut. Le maximum autorisé est100éléments.
- Name
- sort_by
- Type
- string
- Description
Champ selon lequel trier. Valeurs disponibles :
+created_at: Trier par date de création dans l'ordre croissant.-created_at: Trier par date de création dans l'ordre décroissant.
Retours
Renvoie une liste paginée d'objets Tâche Réparer l'imprimabilité.
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
}
]
Diffuser une tâche de réparation de l'imprimabilité en continu
Ce point de terminaison diffuse en continu les mises à jour en temps réel d'une tâche de réparation de l'imprimabilité à l'aide de Server-Sent Events (SSE).
Paramètres
- Name
- id
- Type
- path
- Description
Identifiant unique de la tâche de réparation de l'imprimabilité à diffuser en continu.
Retours
Retourne un flux d'objets de tâche de réparation de l'imprimabilité sous forme d'événements Server-Sent Events.
Chaque trame contient l'objet de tâche complet pour l'étape en cours — la même structure que celle renvoyée par le point de terminaison Get — donc tant que la tâche est PENDING ou IN_PROGRESS, les champs de sortie ne sont tout simplement pas encore renseignés (null, [] ou {}) et finished_at vaut null. Le bloc model_urls n'est envoyé qu'une fois la tâche parvenue à l'état 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
}
L'objet tâche Réparer l'imprimabilité
- Name
- id
- Type
- string
- Description
Identifiant unique de la tâche. Bien que nous utilisions un UUID k-sortable pour les identifiants de tâche comme détail d'implémentation, vous ne devez faire aucune supposition sur le format de l'id.
- Name
- type
- Type
- string
- Description
Type de la tâche de réparation de l'imprimabilité. La valeur est
print-repair.
- Name
- status
- Type
- string
- Description
Statut de la tâche. Les valeurs possibles sont
PENDING,IN_PROGRESS,SUCCEEDED,FAILED,CANCELED.
- Name
- progress
- Type
- integer
- Description
Progression de la tâche. Si la tâche n'est pas encore démarrée, cette propriété sera
0. Une fois la tâche réussie, elle deviendra100.
- Name
- preceding_tasks
- Type
- integer
- Description
Le nombre de tâches précédentes.
La valeur de ce champ n'est pertinente que si le statut de la tâche est
PENDING.
- Name
- created_at
- Type
- timestamp
- Description
Horodatage de la création de la tâche, en millisecondes.
- Name
- started_at
- Type
- timestamp
- Description
Horodatage du démarrage de la tâche, en millisecondes. Si la tâche n'est pas encore démarrée, cette propriété sera
0.
- Name
- finished_at
- Type
- timestamp
- Description
Horodatage de la fin de la tâche, en millisecondes. Si la tâche n'est pas encore terminée, cette propriété sera
0.
- Name
- expires_at
- Type
- timestamp
- Description
Horodatage de l'expiration du résultat de la tâche dans le système, en millisecondes.
0si la tâche n'est pas encore terminée.
- Name
- task_error
- Type
- object
- Description
Informations d'erreur si la tâche a échoué. Cette propriété est
nullsi la tâche n'a pas échoué. Voir Erreurs pour plus de détails.- Name
message- Type
- string
- Description
Message d'erreur décrivant ce qui s'est mal passé.
- Name
- model_urls
- Type
- object
- Description
URL téléchargeables vers le modèle 3D réparé. Seul le champ correspondant au format d'entrée est renseigné ; les autres champs de format sont des chaînes vides.
- Name
glb- Type
- string
- Description
URL téléchargeable vers le GLB réparé. Renseigné lorsque l'entrée était un GLB ou lorsque
input_task_ida été utilisé.
- Name
gltf- Type
- string
- Description
URL téléchargeable vers le GLTF réparé. Renseigné lorsque l'entrée était un envoi GLTF.
- Name
fbx- Type
- string
- Description
URL téléchargeable vers le FBX réparé. Renseigné lorsque l'entrée était un envoi FBX.
- Name
obj- Type
- string
- Description
URL téléchargeable vers l'OBJ réparé. Renseigné lorsque l'entrée était un envoi OBJ.
- Name
stl- Type
- string
- Description
URL téléchargeable vers le STL réparé. Renseigné lorsque l'entrée était un envoi STL.
- Name
usdz- Type
- string
- Description
Réservé pour la sortie USDZ. Toujours une chaîne vide pour les tâches de réparation de l'imprimabilité.
- Name
3mf- Type
- string
- Description
Réservé pour la sortie 3MF. Toujours une chaîne vide pour les tâches de réparation de l'imprimabilité.
- Name
mtl- Type
- string
- Description
Réservé pour la sortie MTL. Toujours une chaîne vide pour les tâches de réparation de l'imprimabilité.
- Name
- thumbnail_url
- Type
- string
- Description
URL d'une image d'aperçu générée à partir du modèle réparé.
- Name
- alpha_thumbnail_url
- Type
- string
- Description
URL téléchargeable vers une version à fond transparent (RGBA) de
thumbnail_url. Présent uniquement lorsque la tâche a été créée avecalpha_thumbnail: trueet que l'aperçu transparent a été généré avec succès ; sinon, ce champ est omis.
- Name
- texture_urls
- Type
- array
- Description
Toujours un tableau vide. La réparation ne préserve que la géométrie d'entrée et ne regénère pas les textures.
- Name
- consumed_credits
- Type
- integer
- Description
Le nombre de crédits consommés par cette tâche.
10une fois que la tâche a atteintSUCCEEDED. Retourne0pour les tâchesFAILED(les crédits sont remboursés en cas d'échec).
- Name
- intended_print
- Type
- object
- Description
L'imprimante et la taille utilisées par la réparation, qu'elles aient été envoyées ou réutilisées depuis une tâche d'analyse. Présent dès le début (
PENDING) pour une réparation d'épaisseur de paroi ; les valeurs pas encore connues sontnull.- Name
printer_type- Type
- string
- Description
fdm,sla, oufull_color.
- Name
height_mm- Type
- number
- Description
La hauteur d'impression en millimètres, si l'impression a été dimensionnée par la hauteur. Sinon
null.
- Name
longest_side_mm- Type
- number
- Description
Le côté le plus long de l'impression, en millimètres. Lorsqu'elle est dimensionnée par la hauteur, il est calculé à partir des proportions du modèle, et vaut
nulltant que le modèle n'a pas été mesuré.
- Name
wall_thickness_mm- Type
- number
- Description
L'épaisseur de paroi minimale pour
printer_type, en millimètres.
- Name
dimensions_mm- Type
- array
- Description
Les
[width, depth, height]de l'impression, en millimètres. La hauteur peut différer deheight_mmd'une fraction de millimètre.nulltant que la tâche n'a pas réussi, et toujoursnullpour une entrée autre que GLB.
- Name
- print_repair_report
- Type
- object
- Description
Ce qu'a fait la réparation d'épaisseur de paroi. Présent une fois qu'une réparation d'épaisseur de paroi a réussi.
- Name
route- Type
- string
- Description
Quelle réparation a été exécutée. L'une des valeurs suivantes :
thin_wall: plus de 5 % de la surface était trop fine, donc l'épaississement des parois a également été exécuté (voirapplied).topology: les parois étaient suffisamment épaisses ; seule la réparation de la topology a été exécutée.topology_unmeasured: les parois n'ont pas pu être mesurées ; seule la réparation de la topology a été exécutée.
- Name
applied- Type
- boolean
- Description
Indique si l'épaississement des parois a modifié le maillage. Présent uniquement lorsque
routeestthin_wall.
- Name
faces_before- Type
- integer
- Description
Nombre de faces du maillage d'entrée. Présent uniquement lorsque
routeestthin_wall.
- Name
faces_after- Type
- integer
- Description
Nombre de faces du maillage réparé. Présent uniquement lorsque
routeestthin_wall.
- Name
thin_area_ratio_before- Type
- number
- Description
Part de la surface de l'entrée, de
0à1, qui était plus fine queintended_print.wall_thickness_mm. Omis si l'entrée n'a pas pu être mesurée.
- Name
thin_area_ratio_after- Type
- number
- Description
La même part, mesurée sur le modèle réparé. Omis si elle n'a pas pu être mesurée ; la tâche réussit tout de même.
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
}
The Repair Printability Task Object (wall thickness checked)
{
"id": "0193bfc5-ee4f-73f8-8525-44b398884ce9",
"type": "print-repair",
"status": "SUCCEEDED",
"progress": 100,
"preceding_tasks": 0,
"created_at": 1699999999000,
"started_at": 1700000000000,
"finished_at": 1700000090000,
"expires_at": 1715725490000,
"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,
"intended_print": {
"printer_type": "sla",
"height_mm": 100,
"longest_side_mm": 118,
"wall_thickness_mm": 0.8,
"dimensions_mm": [118, 72.41, 99.87]
},
"print_repair_report": {
"route": "thin_wall",
"applied": true,
"faces_before": 243112,
"faces_after": 251870,
"thin_area_ratio_before": 0.083,
"thin_area_ratio_after": 0.004
}
}