Transformez une photo source en une figurine de collection en vinyle à grosse tête en deux
étapes : prototype génère une image conceptuelle stylisée à partir de votre photo
d'entrée, puis construction transforme cette image conceptuelle en un modèle 3D avec texture.
Les deux étapes sont liées via input_task_id.
POST /openapi/creative-lab/vinyl-figure/v1/prototype
Générez une image conceptuelle de style figurine en vinyle à partir de la photo source. L'ID de tâche retourné est celui que vous passez comme input_task_id au point de terminaison de construction. Reportez-vous à
L'Objet de Tâche de Prototype de Figurine en Vinyle
pour la structure de la réponse.
Paramètres
Name
image_url
Type
string
Requis
Description
Photo source pour que Meshy la stylise en une figurine en vinyle à grosse tête. Nous supportons actuellement les formats .jpg, .jpeg, .png et .webp.
Il y a deux façons de fournir l'image :
URL publiquement accessible: Une URL accessible depuis l'internet public.
Data URI: Une Data URI encodée en base64 de l'image. Exemple de Data URI: data:image/jpeg;base64,<vos données d'image encodées en base64>.
Name
name
Type
string
Description
Nom de tâche optionnel à des fins d'affichage. Maximum de 100 caractères.
Retourne
La propriété result de la réponse contient l'ID de tâche de la nouvelle tâche de prototype de figurine en vinyle créée. Interrogez le Obtenir une Tâche point de terminaison ou abonnez-vous au flux jusqu'à ce que la tâche atteigne SUCCEEDED, puis passez cet ID au point de terminaison de construction comme input_task_id.
Modes d'Échec
Name
400 - Bad Request
Description
La requête était inacceptable. Causes communes :
Paramètre manquant: image_url est requis.
Format d'image invalide: Le image_url fourni n'est pas un format pris en charge (.jpg, .jpeg, .png, .webp).
Dimensions d'image hors plage: L'image est trop petite, dépasse la taille maximale de fichier, ou dépasse le nombre maximal de pixels.
URL inaccessible: Le image_url n'a pas pu être téléchargé (404 ou timeout).
Data URI invalide: La chaîne base64 est mal formée.
Contenu signalé: L'image d'entrée a été signalée par la modération NSFW ou de propriété intellectuelle.
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.
Requête
POST
/openapi/creative-lab/vinyl-figure/v1/prototype
# Étape 1 : générer une image conceptuelle de style figurine en vinylecurl https://api.meshy.ai/openapi/creative-lab/vinyl-figure/v1/prototype \ -X POST \ -H "Authorization: Bearer ${YOUR_API_KEY}" \ -H 'Content-Type: application/json' \ -d '{ "image_url": "<votre URL d'image publiquement accessible ou Data URI encodée en base64>" }'
Réponse
{"result":"019c8a2e-4b7d-7c3a-8d21-3f2987a1c4de"}
Prototype example
Start with a source portrait, then generate the prototype image used by the build stage.
Générer la figurine finale 3D texturée à partir d'une tâche prototype réussie. La construction utilise le même pipeline image-en-3D que Image en 3D, donc le format de l'objet réponse et la liste des URLs de sortie correspondent exactement. Consultez L'Objet de la Tâche de Construction de la Figurine en Vinyle pour la structure de réponse.
Paramètres
Name
input_task_id
Type
string
Requis
Description
L'ID de tâche d'une tâche prototype créée via ce même point de terminaison OpenAPI. Le prototype doit avoir été créé avec la même clé API, doit avoir atteint SUCCEEDED, et doit avoir produit exactement une image candidate.
Les tâches prototypes créées via l'application web ne sont pas acceptées — le point de terminaison de construction accepte uniquement les tâches prototypes produites par POST /openapi/creative-lab/vinyl-figure/v1/prototype et refuse toute autre source avec 404.
Name
name
Type
string
Description
Nom de tâche optionnel pour l'affichage. Maximum 100 caractères.
Retours
La propriété result de la réponse contient l'id de la tâche nouvellement créée de construction de figurine en vinyle. Interrogez le point de terminaison Obtenir une Tâche ou abonnez-vous au flux jusqu'à ce que la tâche atteigne SUCCEEDED, puis téléchargez le GLB texturé depuis model_urls.glb (ou la paire OBJ + MTL depuis model_urls.obj et model_urls.mtl si votre pipeline aval préfère l'OBJ).
Modes d'Échec
Name
400 - Bad Request
Description
La requête n'était pas acceptable. Causes communes :
Paramètre manquant : input_task_id est requis.
UUID invalide : Le input_task_id n'est pas un UUID valide.
Parent non réussi : La tâche prototype référencée n'a pas encore atteint SUCCEEDED.
Aucun candidat : La tâche prototype a réussi mais n'a produit aucune image candidate.
La tâche prototype référencée n'existe pas, appartient à un utilisateur différent, ou a été créée via l'application web (seules les tâches prototypes en mode API se connectent à la construction).
Name
429 - Too Many Requests
Description
Vous avez dépassé votre limite de débit.
Requête
POST
/openapi/creative-lab/vinyl-figure/v1/build
# Étape 2 : enchaîner la construction à partir d'une tâche prototype réussiecurl https://api.meshy.ai/openapi/creative-lab/vinyl-figure/v1/build \ -X POST \ -H "Authorization: Bearer ${YOUR_API_KEY}" \ -H 'Content-Type: application/json' \ -d '{ "input_task_id": "019c8a2e-4b7d-7c3a-8d21-3f2987a1c4de" }'
Récupérer une tâche de prototype ou de build donnée un id de tâche valide. Le chemin d'URL
doit correspondre à l'étape de la tâche — une tâche de construction récupérée via
/prototype/:id retourne 404, et vice versa.
Annuler une tâche de figurine en vinyle. Si la tâche est toujours PENDING, les crédits consommés au moment de la création sont remboursés. Les tâches déjà IN_PROGRESS sont annulées sans remboursement (le travailleur peut déjà être en train de consommer des ressources). Les tâches qui ont déjà atteint un état terminal (SUCCEEDED, FAILED, CANCELED) ne peuvent pas être annulées.
Le chemin URL doit correspondre à l'étape de la tâche — DELETE sur
/prototype/:buildId retourne 404.
Paramètres de chemin
Name
id
Type
path
Description
Identifiant unique de la tâche de figurine en vinyle à annuler.
Retours
Retourne 204 No Content en cas de succès avec un corps vide.
Modes d'échec
Name
400 - Bad Request
Description
La tâche est déjà dans un état terminal et ne peut pas être annulée.
Name
404 - Not Found
Description
La tâche n'existe pas, appartient à un utilisateur différent, ou son étape ne correspond pas au chemin URL.
Diffusez des mises à jour en temps réel pour une tâche de figurine en vinyle via Server-Sent Events
(SSE). Le chemin URL doit correspondre à l'étape de la tâche — ouvrir un flux à
/prototype/:buildId/stream émet une charge utile event: error unique avec
status_code: 404 et ferme le flux.
Paramètres
Name
id
Type
path
Description
Identifiant unique pour la tâche de figurine en vinyle à diffuser.
Retours
Retourne un flux d'objets de tâches Figurine Vinyle Prototype
ou Figurine Vinyle Construction
en tant que Server-Sent Events. Pour les tâches PENDING ou IN_PROGRESS, le flux de réponse
n'inclura que les champs nécessaires progress et status.
// Exemple d'événement d'erreur (mauvaise étape ou tâche non trouvée)event: errordata: {"status_code": 404,"message": "Task not found"}// Les exemples d'événements de message illustrent la progression de la tâche.// Pour les tâches PENDING ou IN_PROGRESS, le flux de réponse n'inclura pas tous les champs.event: messagedata: {"id": "019c8a31-6e2f-7b4d-9a55-4c3098b2d5ef","progress": 0,"status": "PENDING"}event: messagedata: {"id": "019c8a31-6e2f-7b4d-9a55-4c3098b2d5ef","type": "creative-lab-vinyl-figure-build","status": "SUCCEEDED","progress": 100,"created_at": 1752969700000,"started_at": 1752969710000,"finished_at": 1752969735000,"expires_at": 1753228935000,"task_error": null,"consumed_credits": 30,"prompt": "","negative_prompt": "","texture_prompt": "","texture_image_url": "","model_urls": {"glb":"https://assets.meshy.ai/***/tasks/019c8a31-6e2f-7b4d-9a55-4c3098b2d5ef/output/model.glb?Expires=***","obj":"https://assets.meshy.ai/***/tasks/019c8a31-6e2f-7b4d-9a55-4c3098b2d5ef/output/model.obj?Expires=***","mtl":"https://assets.meshy.ai/***/tasks/019c8a31-6e2f-7b4d-9a55-4c3098b2d5ef/output/model.mtl?Expires=***" },"thumbnail_url": "https://assets.meshy.ai/***/tasks/019c8a31-6e2f-7b4d-9a55-4c3098b2d5ef/output/preview.png?Expires=***","texture_urls": [ {"base_color":"https://assets.meshy.ai/***/tasks/019c8a31-6e2f-7b4d-9a55-4c3098b2d5ef/output/texture_0.png?Expires=***" } ]}
Récupérez une liste paginée de vos tâches de figurines en vinyle pour une seule étape.
Le chemin URL sélectionne l'étape — /prototype renvoie les tâches de prototype;
/build renvoie les tâches de construction. Les tâches d'une autre étape ne sont pas incluses
dans l'une ou l'autre des réponses.
Paramètres de chemin
Name
stage
Type
path
Requis
Description
Soit prototype soit build. La collection renvoie seulement les tâches
dont l'étape correspond à l'URL — chercher /prototype ne renvoie jamais
de tâches de construction et vice versa.
Paramètres de requête
Name
page_num
Type
integer
défaut 1
Description
Numéro de page pour la pagination.
Name
page_size
Type
integer
défaut 10
Description
Limite de taille de page. Le maximum autorisé est de 50 éléments.
Name
sort_by
Type
string
défaut -created_at
Description
Champ pour le tri. Valeurs disponibles :
+created_at : Tri par date de création en ordre croissant.
-created_at : Tri par date de création en ordre décroissant.
# Liste des tâches de prototypecurl https://api.meshy.ai/openapi/creative-lab/vinyl-figure/v1/prototype?page_size=10 \ -H "Authorization: Bearer ${YOUR_API_KEY}"# Liste des tâches de constructioncurl https://api.meshy.ai/openapi/creative-lab/vinyl-figure/v1/build?page_size=10 \ -H "Authorization: Bearer ${YOUR_API_KEY}"
L'objet Tâche Prototype de Figurine en Vinyle est une unité de travail que Meshy suit
pour générer une image conceptuelle de style figurine vinyle à partir d'une photo source.
La sortie de cette étape est enchaînée dans
l'étape de construction via input_task_id.
Propriétés
Name
id
Type
string
Description
Identifiant unique pour la tâche. Bien que nous utilisions un UUID triable par clé pour les identifiants de tâche comme détail d'implémentation, vous ne devriez pas faire d'hypothèses sur le format de l'identifiant.
Name
type
Type
string
Description
Type de la tâche. La valeur est creative-lab-vinyl-figure-prototype.
Name
name
Type
string
Description
Le nom de la tâche fourni lors de la création de la tâche. Chaîne vide si aucun nom n'a été fourni.
Name
status
Type
string
Description
Statut de la tâche. Les valeurs possibles sont l'un de PENDING, IN_PROGRESS, SUCCEEDED, FAILED, CANCELED.
Name
progress
Type
integer
Description
Progression de la tâche. Si la tâche n'a pas encore commencé, cette propriété sera 0. Une fois que la tâche a réussi, cela deviendra 100.
Name
created_at
Type
timestamp
Description
Horodatage de la création de la tâche, en millisecondes.
Un horodatage représente le nombre de millisecondes écoulées depuis le 1er janvier 1970 UTC, suivant
la norme RFC 3339.
Par exemple, vendredi 1er septembre 2023 12:00:00 GMT est représenté par 1693569600000. Ceci s'applique
à tous les horodatages dans la Meshy API.
Name
started_at
Type
timestamp
Description
Horodatage du début de la tâche, en millisecondes. Si la tâche n'a pas encore commencé, 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 terminée, cette propriété sera 0.
Name
expires_at
Type
timestamp
Description
Horodatage de l'expiration du résultat de la tâche, en millisecondes.
Name
preceding_tasks
Type
integer
Description
Le nombre de tâches précédentes.
La valeur de ce champ est significative uniquement si le statut de la tâche est PENDING.
Name
task_error
Type
object
Description
Détails de l'erreur pour les tâches échouées. Voir 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_PROGRESS, ou SUCCEEDED. Retourne 0 pour les tâches FAILED (les crédits sont remboursés en cas d'échec).
Name
image_urls
Type
array of strings
Description
URLs téléchargeables pour les candidats d'images conceptuelles générées par cette tâche prototype. Actuellement, l'API retourne toujours exactement un candidat ; le champ est un tableau afin que les futures révisions puissent inclure plusieurs candidats sans changement de rupture.
Objet Exemple de Tâche Prototype de Figurine en Vinyle
L'objet tâche de construction de figurine en vinyle est une unité de travail que Meshy suit
pour générer une figurine en vinyle 3D texturée à partir d'une tâche prototype réussie.
Il utilise le même pipeline image-en-3D utilisé par Image en 3D,
de sorte que les champs de sortie reflètent ceux de l'objet tâche de ce point de terminaison objet tâche.
Propriétés
Name
id
Type
string
Description
Identifiant unique pour la tâche.
Name
type
Type
string
Description
Type de la tâche. La valeur est creative-lab-vinyl-figure-build.
Name
name
Type
string
Description
Le nom de la tâche fourni lors de sa création. Chaîne vide si aucun nom n'a été fourni.
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 commencée, cette propriété sera 0. Une fois la tâche réussie, elle deviendra 100.
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ébut de la tâche, en millisecondes.
Name
finished_at
Type
timestamp
Description
Horodatage de la fin de la tâche, en millisecondes.
Name
expires_at
Type
timestamp
Description
Horodatage d'expiration du résultat de la tâche, en millisecondes.
Name
preceding_tasks
Type
integer
Description
Le nombre de tâches précédentes. Pertinent uniquement lorsque le statut est PENDING.
Name
task_error
Type
object
Description
Détails des erreurs pour les tâches échouées. Voir 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. Retourne 0 pour les tâches FAILED (les crédits sont remboursés en cas d'échec).
Name
prompt
Type
string
Description
Toujours vide pour la création de figurines en vinyle. Présent pour la compatibilité entre les points de terminaison avec la forme partagée V2ImageTo3DTaskResponse utilisée par Image en 3D.
Name
negative_prompt
Type
string
Description
Toujours vide pour la création de figurines en vinyle. Présent pour la compatibilité entre les points de terminaison.
Name
texture_prompt
Type
string
Description
Toujours vide pour la création de figurines en vinyle. Présent pour la compatibilité entre les points de terminaison.
Name
texture_image_url
Type
string
Description
Toujours vide pour la création de figurines en vinyle. Présent pour la compatibilité entre les points de terminaison.
Name
model_urls
Type
object
Description
URLs téléchargeables pour le modèle 3D généré. La création de figurines en vinyle émet un GLB texturé plus la paire OBJ + MTL pour les pipelines qui préfèrent le format Wavefront OBJ. La forme correspond à l'objet Image en 3D model_urls pour que les futures modifications de format soient compatibles.
Name
glb
Type
string
Description
URL téléchargeable vers le fichier GLB texturé.
Name
obj
Type
string
Description
URL téléchargeable vers le fichier Wavefront OBJ (géométrie + UV).
Name
mtl
Type
string
Description
URL téléchargeable vers le fichier matériel MTL compagnon de l'OBJ. À associer avec obj et l'entrée de texture_urls[0].base_color.
Name
thumbnail_url
Type
string
Description
URL téléchargeable vers l'image miniature du fichier modèle.
Name
texture_urls
Type
array
Description
Un tableau d'objets URL de texture générés par cette tâche. Contient actuellement un seul objet avec la carte de couleur de base.
Name
base_color
Type
string
Description
URL téléchargeable vers l'image de la carte de couleur de base.
Exemple d’objet tâche de création de figurine en vinyle