API d’impression multicolore
Convertir des modèles 3D au format 3MF multicolore pour l’impression 3D, avec une palette de couleurs configurable allant jusqu’à 16 couleurs.
Créer une tâche d’impression 3D multicolore
Ce point de terminaison crée une nouvelle tâche d’impression 3D multicolore. La tâche convertit un modèle 3D en un fichier 3MF multicolore adapté à l’impression 3D.
Paramètres
Un seul de input_task_id ou model_url est requis. Si les deux sont fournis, input_task_id prend la priorité.
- Name
- input_task_id
- Type
- string
- Requis
- Description
L’ID d’une tâche réussie à utiliser comme entrée. Types de tâches pris en charge : Image en 3D, Multi-image en 3D, Texte en 3D, Remaillage, et Retexturisation. La tâche doit avoir un statut
SUCCEEDED.
- Name
- model_url
- Type
- string
- Requis
- Description
URL accessible publiquement ou Data URI d’un modèle 3D. Nous prenons actuellement en charge les formats
.glbet.fbx.
- Name
- max_colors
- Type
- integer
- défaut 4
- Description
Nombre maximal de couleurs dans la palette de sortie.
Plage valide :
1à16.
- Name
- max_depth
- Type
- integer
- défaut 4
- Description
Profondeur du quadtree pour la précision des couleurs. Des valeurs plus élevées produisent des limites de couleur plus fines, mais augmentent la taille du fichier.
Plage valide :
3à6.
Retours
La propriété result de la réponse contient l’id de la tâche d’impression 3D nouvellement créée.
Modes d’échec
- Name
400 - Bad Request- Description
La requête était inacceptable. Causes courantes :
- Paramètre manquant :
model_urlouinput_task_iddoit être fourni. - Format de modèle invalide : Le
model_urlpointe vers un fichier avec une extension non prise en charge (seuls.glbet.fbxsont pris en charge). - URL inaccessible : Le
model_urln’a pas pu être téléchargé. - Tâche d’entrée invalide : Le
input_task_iddoit faire référence à une tâche réussie. - max_colors invalide : La valeur doit être comprise entre 1 et 16.
- max_depth invalide : La valeur doit être comprise entre 3 et 6.
- Paramètre manquant :
- Name
401 - Unauthorized- Description
L’authentification a échoué. Veuillez vérifier votre clé API.
- Name
402 - Payment Required- Description
Crédits insuffisants pour effectuer cette tâche.
- Name
429 - Too Many Requests- Description
Vous avez dépassé votre limite de débit.
Request
# Convert a 3D model to multi-color 3MF for printing
curl https://api.meshy.ai/openapi/v1/print/multi-color \
-X POST \
-H "Authorization: Bearer ${YOUR_API_KEY}" \
-H 'Content-Type: application/json' \
-d '{
"input_task_id": "018a210d-8ba4-705c-b111-1f1776f7f578",
"max_colors": 8,
"max_depth": 5
}'
Response
{
"result": "0193bfc5-ee4f-73f8-8525-44b398884ce9"
}
Récupérer une tâche d’impression 3D multicolore
Ce point de terminaison récupère une tâche d’impression 3D multicolore par son ID.
Paramètres
- Name
- id
- Type
- path
- Description
L’ID de la tâche d’impression 3D à récupérer.
Retours
L’objet Tâche d’impression 3D.
Request
curl https://api.meshy.ai/openapi/v1/print/multi-color/a43b5c6d-7e8f-901a-234b-567c890d1e2f \
-H "Authorization: Bearer ${YOUR_API_KEY}"
Response
{
"id": "0193bfc5-ee4f-73f8-8525-44b398884ce9",
"type": "print-multi-color",
"model_urls": {
"3mf": "https://assets.meshy.ai/***/tasks/0193bfc5-ee4f-73f8-8525-44b398884ce9/output/model.3mf?Expires=***"
},
"progress": 100,
"status": "SUCCEEDED",
"created_at": 1699999999000,
"started_at": 1700000000000,
"finished_at": 1700000001000,
"task_error": null,
"consumed_credits": 10
}
Supprimer une tâche d’impression 3D multicolore
Ce point de terminaison supprime définitivement une tâche d’impression 3D multicolore, y compris tous les modèles et données associés. Cette action est irréversible.
Paramètres de chemin
- Name
- id
- Type
- path
- Description
L’identifiant de la tâche d’impression 3D multicolore à supprimer.
Retours
Renvoie 200 OK en cas de succès.
Request
curl --request DELETE \
--url https://api.meshy.ai/openapi/v1/print/multi-color/a43b5c6d-7e8f-901a-234b-567c890d1e2f \
-H "Authorization: Bearer ${YOUR_API_KEY}"
Response
// Returns 200 Ok on success.
Lister les tâches d’impression 3D multicolore
Ce point de terminaison vous permet de récupérer une liste de tâches d’impression 3D multicolore.
Paramètres
Attributs facultatifs
- Name
- page_num
- Type
- integer
- Description
Numéro de page pour la pagination. Commence à
1et vaut1par défaut.
- Name
- page_size
- Type
- integer
- Description
Limite de taille de page. Par défaut,
10éléments. Le maximum autorisé est de50éléments.
- Name
- sort_by
- Type
- string
- Description
Champ selon lequel trier. Valeurs disponibles :
+created_at: Trier par heure de création par ordre croissant.-created_at: Trier par heure de création par ordre décroissant.
Renvoie
Renvoie une liste paginée des objets de tâche d’impression 3D.
Request
curl https://api.meshy.ai/openapi/v1/print/multi-color?page_size=10 \
-H "Authorization: Bearer ${YOUR_API_KEY}"
Response
[
{
"id": "0193bfc5-ee4f-73f8-8525-44b398884ce9",
"type": "print-multi-color",
"model_urls": {
"3mf": "https://assets.meshy.ai/***/tasks/0193bfc5-ee4f-73f8-8525-44b398884ce9/output/model.3mf?Expires=***"
},
"progress": 100,
"status": "SUCCEEDED",
"preceding_tasks": 0,
"created_at": 1699999999000,
"started_at": 1700000000000,
"finished_at": 1700000001000,
"task_error": null,
"consumed_credits": 10
}
]
Diffuser en flux une tâche d’impression 3D multicolore
Ce point de terminaison diffuse des mises à jour en temps réel pour une tâche d’impression 3D multicolore à l’aide des Server-Sent Events (SSE).
Paramètres
- Name
- id
- Type
- path
- Description
Identifiant unique de la tâche d’impression 3D multicolore à diffuser en flux.
Retours
Renvoie un flux d’objets de tâche d’impression 3D sous forme de Server-Sent Events.
Pour les tâches PENDING ou IN_PROGRESS, le flux de réponse n’inclura que les champs progress et status nécessaires.
Request
curl -N https://api.meshy.ai/openapi/v1/print/multi-color/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-multi-color",
"model_urls": {
"3mf": "https://assets.meshy.ai/***/tasks/a43b5c6d-7e8f-901a-234b-567c890d1e2f/output/model.3mf?Expires=***"
},
"progress": 100,
"status": "SUCCEEDED",
"preceding_tasks": 0,
"created_at": 1699999999000,
"started_at": 1700000000000,
"finished_at": 1700000001000,
"task_error": null,
"consumed_credits": 10
}
L’objet de tâche d’impression 3D
- Name
- id
- Type
- string
- Description
Identifiant unique de la tâche. Bien que nous utilisions un UUID triable par k pour les identifiants de tâche comme détail d’implémentation, vous ne devez pas faire d’hypothèses sur le format de l’identifiant.
- Name
- type
- Type
- string
- Description
Type de la tâche d’impression 3D. La valeur est
print-multi-color.
- Name
- model_urls
- Type
- object
- Description
URL de téléchargement du fichier de modèle 3D généré par Meshy. La propriété correspondant à un format sera omise si le format n’est pas généré, au lieu de renvoyer une chaîne vide.
- Name
3mf- Type
- string
- Description
URL de téléchargement du fichier 3MF multicolore.
- Name
- progress
- Type
- integer
- Description
progress de la tâche. Si la tâche n’a pas encore démarré, cette propriété sera
0. Une fois la tâche réussie, elle deviendra100.
- Name
- status
- Type
- string
- Description
Statut de la tâche. Les valeurs possibles sont l’une de
PENDING,IN_PROGRESS,SUCCEEDED,FAILED.
- Name
- preceding_tasks
- Type
- integer
- Description
Le nombre de tâches précédentes.
La valeur de ce champ n’a de sens 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’a pas encore démarré, 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
- task_error
- Type
- object
- Description
Détails de l’erreur pour les tâches ayant échoué. Consultez Erreurs pour la référence complète de l’objet
task_error.
- Name
- consumed_credits
- Type
- integer
- Description
Le nombre de crédits consommés par cette tâche. Présent lorsque le statut de la tâche est
PENDING,IN_PROGRESSouSUCCEEDED. Renvoie0pour les tâchesFAILED(les crédits sont remboursés en cas d’échec).
The 3D Print Task Object
{
"id": "0193bfc5-ee4f-73f8-8525-44b398884ce9",
"type": "print-multi-color",
"model_urls": {
"3mf": "https://assets.meshy.ai/***/tasks/0193bfc5-ee4f-73f8-8525-44b398884ce9/output/model.3mf?Expires=***"
},
"progress": 100,
"status": "SUCCEEDED",
"preceding_tasks": 0,
"created_at": 1699999999000,
"started_at": 1700000000000,
"finished_at": 1700000001000,
"task_error": null,
"consumed_credits": 10
}