lowpoly sera retiré le 30 oct. 2026. Changez de modèle avant ces dates pour éviter les erreurs de requête.

API Image en 3D

L'API Image en 3D est une fonctionnalité qui vous permet d'intégrer les capacités Image en 3D de Meshy dans votre propre application. Dans cette section, vous trouverez toutes les informations dont vous avez besoin pour démarrer avec cette API.


POST/openapi/v1/image-to-3d

Créer une tâche Image en 3D

Ce point de terminaison vous permet de créer une nouvelle tâche Image en 3D. Consultez L'objet tâche Image en 3D pour voir quelles propriétés sont incluses dans l'objet tâche Image en 3D.

La tâche s'exécute en arrière-plan. Pour connaître la durée habituelle, consultez Temps de traitement.

Paramètres

  • Name
    input_task_id
    Type
    string
    Requis
    Description

    L'ID d'une tâche de génération d'image terminée dont la sortie doit être utilisée comme image d'entrée. Cette tâche doit être l'une des suivantes : Texte en image ou Image en image. De plus, elle doit avoir été exécutée via l'API, avoir un statut SUCCEEDED, et produire exactement une image.

  • Name
    image_url
    Type
    string
    Requis
    Description

    Fournissez une image que Meshy utilisera pour la création du modèle. Nous prenons actuellement en charge les formats .jpg, .jpeg, .png et .webp.

    Taille de fichier maximale : 20 Mo.

    Il existe deux façons de fournir l'image :

    • URL publiquement accessible : une URL accessible depuis Internet public.
    • Data URI : une URI de données 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
    model_type
    Type
    string
    défaut standard
    Description

    Spécifiez le type de génération de maillage 3D.

    Valeurs disponibles :

    • standard : génération de maillage 3D standard à haute définition.
    • smart-topology : choisissez un modèle Smart Topology avec ai_model (meshy-t2).
    • lowpoly (obsolète, sera retiré le 30 octobre 2026) : génère un maillage low-poly optimisé pour des polygones plus propres. Nous recommandons plutôt Meshy T2 : smart-topology avec meshy-t2.
  • Name
    ai_model
    Type
    string
    défaut latest
    Description

    ID du modèle à utiliser. Les valeurs disponibles dépendent de model_type.

    Génération standard (model_type: standard) :

    • meshy-6-lite, meshy-6, meshy-7.1, latest (Meshy 7.1)
    • meshy-7 (obsolète) : utilisez plutôt meshy-7.1.

    Génération Smart Topology (model_type: smart-topology) :

    • meshy-t2 (par défaut) : le modèle Smart Topology — topology plus propre, parties nativement séparées, sortie en triangles et un nombre de faces que vous pouvez définir avec target_polycount.
  • Name
    geometry_resolution
    Type
    string
    défaut standard
    Description

    Passe de génération de géométrie. 2k exécute la passe Ultra à 2048³ ; 4k l'exécute à 4096³ pour le niveau de détail de surface le plus fin.

    Valeurs disponibles : standard, 2k, 4k

  • Name
    ultra_mode
    Type
    boolean
    ⚠ obsolète
    défaut false
    Description

    Utilisez plutôt geometry_resolution. ultra_mode: true équivaut à geometry_resolution: "2k".

  • Name
    should_texture
    Type
    boolean
    défaut true
    Description

    Détermine si des textures sont générées. Le définir sur false saute la phase de texturation, fournissant un maillage sans textures.

S'applique uniquement quand should_texture = true
  • Name
    enable_pbr
    Type
    boolean
    défaut false
    Description

    Générer des cartes PBR (métallique, rugosité, normale) en plus de la couleur de base. Une carte d'émission est également incluse lorsque ai_model est meshy-6, sauf à texture_resolution: 8k. meshy-6-lite, meshy-7.1 et latest ne produisent pas de carte d'émission.

  • Name
    texture_resolution
    Type
    string
    défaut 2k
    Description

    Résolution de la texture de couleur de base. L'une des valeurs suivantes : 2k (2048×2048), 4k (4096×4096) ou 8k (8192×8192). Les résolutions plus élevées capturent davantage de détails de surface.

  • Name
    hd_texture
    Type
    boolean
    ⚠ obsolète
    défaut false
    Description

    Utilisez plutôt texture_resolution — équivaut à texture_resolution: "4k". Lorsque les deux sont définis, texture_resolution est prioritaire.

  • Name
    texture_prompt
    Type
    string
    Description

    Fournissez un prompt textuel pour guider le processus de texturation. Maximum 800 caractères.

  • Name
    texture_image_url
    Type
    string
    Description

    Fournissez une image 2D pour guider le processus de texturation. Nous prenons actuellement en charge les formats .jpg, .jpeg, .png et .webp.

    Taille de fichier maximale : 20 Mo.

    Il existe deux façons de fournir l'image :

    • URL publiquement accessible : une URL accessible depuis Internet public
    • Data URI : une URI de données 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
    should_remesh
    Type
    boolean
    défaut false (Meshy 6 and Meshy 7 models), true (others)
    Description

    Contrôle si la phase de remaillage est activée. Pour obtenir le modèle de la plus haute qualité, nous recommandons de définir should_remesh sur false.

S'applique uniquement quand should_remesh = true
  • Name
    topology
    Type
    string
    défaut triangle
    Description

    Spécifiez la topology du modèle généré.

    Valeurs disponibles :

    • quad : génère un maillage à dominante quadrangulaire.
    • triangle : génère un maillage triangulaire décimé.
  • Name
    decimation_mode
    Type
    integer
    Description

    Active la décimation adaptative en définissant un niveau de nombre de polygones. Lorsqu'il est défini, target_polycount est ignoré.

    Valeurs disponibles :

    • 1 : adaptatif — nombre de polygones ultra.
    • 2 : adaptatif — nombre de polygones élevé.
    • 3 : adaptatif — nombre de polygones moyen.
    • 4 : adaptatif — nombre de polygones faible.
  • Name
    save_pre_remeshed_model
    Type
    boolean
    défaut false
    Description

    Lorsqu'il est défini sur true, Meshy stocke également un fichier GLB supplémentaire avant la fin de la phase de remaillage.

  • Name
    target_polycount
    Type
    integer
    Description

    Nombre cible de polygones (faces) dans la sortie. Le nombre réel peut s'écarter de la cible selon la géométrie.

    target_polycount s'applique dans deux cas indépendants :

    • Remaillage — avec should_remesh: true sur un modèle standard. Le maillage est remaillé (décimé) pour approcher ce nombre. Plage de 100 à 300 000, par défaut 30 000. Si decimation_mode est défini, il est prioritaire et target_polycount est ignoré.
    • Smart Topology — avec model_type: smart-topology et ai_model: meshy-t2. Le modèle est généré directement avec ce nombre de faces ; aucun remaillage n'est exécuté et should_remesh n'est pas requis. Plage de 100 à 15 000, par défaut 4 000.
  • Name
    symmetry_mode
    Type
    string
    ⚠ obsolète
    défaut auto
    Description

    Obsolète. Ce paramètre n'affecte plus la sortie.

    Le champ symmetry_mode contrôle le comportement de symétrie pendant le processus de génération du modèle.

    Les valeurs valides sont :

    • off : désactive la symétrie.
    • auto : détermine et applique automatiquement la symétrie en fonction de la géométrie d'entrée.
    • on : impose la symétrie pendant la génération.
  • Name
    pose_mode
    Type
    string
    défaut ""
    Description

    Spécifiez le mode de pose pour le modèle généré.

    Valeurs disponibles :

    • a-pose : génère le modèle en pose A.
    • t-pose : génère le modèle en pose T.
    • "" (chaîne vide) : aucune pose spécifique appliquée.
  • Name
    is_a_t_pose
    Type
    boolean
    ⚠ obsolète
    défaut false
    Description

    Utilisez plutôt pose_mode. Indique s'il faut générer le modèle en pose A/T.

  • Name
    surface_mode
    Type
    string
    ⚠ obsolète
    Description

    N'affecte plus la sortie. Il sélectionnait un mode de génération de modèle qui a depuis été retiré ; utilisez plutôt ai_model.

    Les valeurs acceptées sont organic et hard ; toute autre valeur renvoie 400.

  • Name
    image_enhancement
    Type
    boolean
    défaut true
    Description

    Optimise l'image d'entrée pour de meilleurs résultats. Définissez sur false pour préserver l'apparence exacte de l'image d'entrée sans aucun traitement de style.

  • Name
    remove_lighting
    Type
    boolean
    défaut true
    Description

    Supprime les reflets et les ombres de la texture de couleur de base, produisant un résultat plus propre qui fonctionne mieux avec des configurations d'éclairage personnalisées.

  • Name
    moderation
    Type
    boolean
    défaut false
    Description

    Lorsqu'il est défini sur true, le contenu d'entrée sera automatiquement examiné pour détecter tout contenu potentiellement nuisible. Si un contenu nuisible est détecté, la tâche ne passera pas à la génération.

    Le contenu provenant des entrées image_url, texture_image_url et texture_prompt sera examiné.

  • Name
    target_formats
    Type
    string[]
    Description

    Spécifie quels formats de fichiers 3D inclure dans la sortie. Seuls les formats demandés seront générés et renvoyés, ce qui peut réduire le temps d'exécution de la tâche. Si omis, tous les formats pris en charge sont inclus.

    Valeurs disponibles : glb, obj, fbx, stl, usdz, 3mf

  • Name
    auto_size
    Type
    boolean
    défaut false
    Description

    Lorsqu'il est défini sur true, le service utilise la vision par IA pour estimer automatiquement la hauteur réelle de l'objet et redimensionner le modèle en conséquence. L'origine sera par défaut bottom, sauf si origin_at est explicitement défini.

  • Name
    alpha_thumbnail
    Type
    boolean
    défaut false
    Description

    Lorsqu'il est défini sur true, la tâche génère également une version de l'aperçu avec fond transparent (RGBA) et la renvoie sous alpha_thumbnail_url dans la réponse GET. Le champ existant thumbnail_url reste inchangé.

  • Name
    multi_view_thumbnails
    Type
    boolean
    défaut false
    Description

    Lorsqu'il est défini sur true, la tâche génère également quatre vignettes selon les vues cardinales (avant, droite, arrière, gauche) et les renvoie sous thumbnail_urls dans la réponse GET. Le champ existant thumbnail_url reste inchangé et continue de pointer vers la vue avant, de sorte que les clients existants ne sont pas affectés.

S'applique uniquement quand auto_size = true
  • Name
    origin_at
    Type
    string
    défaut bottom
    Description

    Position de l'origine lorsque auto_size est activé.

    Valeurs disponibles : bottom, center.

Retours

La propriété result de la réponse contient l'id de tâche de la tâche Image en 3D nouvellement créée.

Modes d'échec

  • Name
    400 - Bad Request
    Description

    La requête était inacceptable. Causes courantes :

    • Paramètre manquant : soit image_url, soit input_task_id doit être fourni.
    • Tâche d'entrée invalide : input_task_id doit faire référence à une tâche Texte en image ou Image en image au statut SUCCEEDED qui produit exactement une image.
    • Format d'image invalide : l'image_url fournie n'est pas dans un format pris en charge (.jpg, .jpeg, .png, .webp).
    • URL inaccessible : l'image_url n'a pas pu être téléchargée (404 ou timeout).
    • Image trop volumineuse : l'image image_url ou texture_image_url dépasse 20 Mo.
    • Data URI invalide : la chaîne base64 est mal formée.
    • Combinaison de paramètres invalide : enable_pbr n'est pris en charge que lorsque should_texture est vrai.
    • Modèle non pris en charge pour low poly : ai_model: "meshy-6-lite" ne prend pas en charge model_type: "lowpoly".
    • Modèle non pris en charge pour Ultra : geometry_resolution nécessite meshy-7.1 ou latest.
  • 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

POST
/openapi/v1/image-to-3d
# Simple request with required params
curl https://api.meshy.ai/openapi/v1/image-to-3d \
  -X POST \
  -H "Authorization: Bearer ${YOUR_API_KEY}" \
  -H 'Content-Type: application/json' \
  -d '{
    "image_url": "<your publicly accessible image url or base64-encoded data URI>"
  }'

# With Ultra 4K geometry, remesh, PBR, and A-pose
curl https://api.meshy.ai/openapi/v1/image-to-3d \
  -X POST \
  -H "Authorization: Bearer ${YOUR_API_KEY}" \
  -H 'Content-Type: application/json' \
  -d '{
    "image_url": "<your publicly accessible image url or base64-encoded data URI>",
    "ai_model": "meshy-7.1",
    "geometry_resolution": "4k",
    "enable_pbr": true,
    "should_remesh": true,
    "target_polycount": 100000,
    "should_texture": true,
    "pose_mode": "a-pose",
    "target_formats": ["glb"]
  }'

Response

{
  "result": "018a210d-8ba4-705c-b111-1f1776f7f578"
}

GET/openapi/v1/image-to-3d/:id

Récupérer une tâche Image en 3D

Ce point de terminaison vous permet de récupérer une tâche Image en 3D à partir d'un id de tâche valide. Consultez L'objet de tâche Image en 3D pour voir quelles propriétés sont incluses dans l'objet de tâche Image en 3D.

Paramètres

  • Name
    id
    Type
    path
    Description

    Identifiant unique de la tâche Image en 3D à récupérer.

Retours

La réponse contient l'objet de tâche Image en 3D. Consultez la section L'objet de tâche Image en 3D pour plus de détails.

Request

GET
/openapi/v1/image-to-3d/018a210d-8ba4-705c-b111-1f1776f7f578
curl https://api.meshy.ai/openapi/v1/image-to-3d/018a210d-8ba4-705c-b111-1f1776f7f578 \
  -H "Authorization: Bearer ${YOUR_API_KEY}"

Response

{
  "id": "018a210d-8ba4-705c-b111-1f1776f7f578",
  "type": "image-to-3d",
  "model_urls": {
    "glb": "https://assets.meshy.ai/***/tasks/018a210d-8ba4-705c-b111-1f1776f7f578/output/model.glb?Expires=***",
    "fbx": "https://assets.meshy.ai/***/tasks/018a210d-8ba4-705c-b111-1f1776f7f578/output/model.fbx?Expires=***",
    "obj": "https://assets.meshy.ai/***/tasks/018a210d-8ba4-705c-b111-1f1776f7f578/output/model.obj?Expires=***",
    "usdz": "https://assets.meshy.ai/***/tasks/018a210d-8ba4-705c-b111-1f1776f7f578/output/model.usdz?Expires=***",
    "stl": "https://assets.meshy.ai/***/tasks/018a210d-8ba4-705c-b111-1f1776f7f578/output/model.stl?Expires=***",
    "pre_remeshed_glb": "https://assets.meshy.ai/***/tasks/018a210d-8ba4-705c-b111-1f1776f7f578/output/pre_remeshed_model.glb?Expires=***"
  },
  "thumbnail_url": "https://assets.meshy.ai/***/tasks/018a210d-8ba4-705c-b111-1f1776f7f578/output/preview.png?Expires=***",
  "thumbnail_urls": {
    "front": "https://assets.meshy.ai/***/tasks/018a210d-8ba4-705c-b111-1f1776f7f578/output/preview_front.png?Expires=***",
    "right": "https://assets.meshy.ai/***/tasks/018a210d-8ba4-705c-b111-1f1776f7f578/output/preview_right.png?Expires=***",
    "back": "https://assets.meshy.ai/***/tasks/018a210d-8ba4-705c-b111-1f1776f7f578/output/preview_back.png?Expires=***",
    "left": "https://assets.meshy.ai/***/tasks/018a210d-8ba4-705c-b111-1f1776f7f578/output/preview_left.png?Expires=***"
  },
  "texture_prompt": "",
  "progress": 100,
  "started_at": 1692771667037,
  "created_at": 1692771650657,
  "expires_at": 1692771679037,
  "finished_at": 1692771669037,
  "status": "SUCCEEDED",
  "texture_urls": [
    {
      "base_color": "https://assets.meshy.ai/***/tasks/018a210d-8ba4-705c-b111-1f1776f7f578/output/texture_0.png?Expires=***",
      "metallic": "https://assets.meshy.ai/***/tasks/018a210d-8ba4-705c-b111-1f1776f7f578/output/texture_0_metallic.png?Expires=XXX",
      "normal": "https://assets.meshy.ai/***/tasks/018a210d-8ba4-705c-b111-1f1776f7f578/output/texture_0_normal.png?Expires=XXX",
      "roughness": "https://assets.meshy.ai/***/tasks/018a210d-8ba4-705c-b111-1f1776f7f578/output/texture_0_roughness.png?Expires=XXX",
      "emission": "https://assets.meshy.ai/***/tasks/018a210d-8ba4-705c-b111-1f1776f7f578/output/texture_0_emission.png?Expires=XXX"
    }
  ],
  "preceding_tasks": 0,
  "task_error": {
    "message": ""
  },
  "consumed_credits": 30
}

DELETE/openapi/v1/image-to-3d/:id

Supprimer une tâche Image en 3D

Ce point de terminaison supprime définitivement une tâche Image en 3D, 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'ID de la tâche Image en 3D à supprimer.

Statut de la tâche

Une tâche qui est 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, donc la supprimer en cours d'exécution vous ferait 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 terminal (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

DELETE
/openapi/v1/image-to-3d/018a210d-8ba4-705c-b111-1f1776f7f578
curl --request DELETE \
  --url https://api.meshy.ai/openapi/v1/image-to-3d/018a210d-8ba4-705c-b111-1f1776f7f578 \
  -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."
}

GET/openapi/v1/image-to-3d

Lister les tâches Image en 3D

Ce point de terminaison vous permet de récupérer une liste de tâches Image en 3D.

Paramètres

Attributs optionnels

  • 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 taille de page. Valeur par défaut : 10 éléments. Le maximum autorisé est de 100 éléments.

  • Name
    sort_by
    Type
    string
    Description

    Champ selon lequel trier. Valeurs disponibles :

    • +created_at : Trier par heure de création dans l'ordre croissant.
    • -created_at : Trier par heure de création dans l'ordre décroissant.

Retours

Retourne une liste paginée d'objets de tâche Image en 3D.

Request

GET
/openapi/v1/image-to-3d
curl https://api.meshy.ai/openapi/v1/image-to-3d?page_size=10 \
-H "Authorization: Bearer ${YOUR_API_KEY}"

Response

[
  {
    "id": "018a210d-8ba4-705c-b111-1f1776f7f578",
    "type": "image-to-3d",
    "model_urls": {
      "glb": "https://assets.meshy.ai/***/tasks/018a210d-8ba4-705c-b111-1f1776f7f578/output/model.glb?Expires=***",
      "fbx": "https://assets.meshy.ai/***/tasks/018a210d-8ba4-705c-b111-1f1776f7f578/output/model.fbx?Expires=***",
      "obj": "https://assets.meshy.ai/***/tasks/018a210d-8ba4-705c-b111-1f1776f7f578/output/model.obj?Expires=***",
      "usdz": "https://assets.meshy.ai/***/tasks/018a210d-8ba4-705c-b111-1f1776f7f578/output/model.usdz?Expires=***",
      "pre_remeshed_glb": "https://assets.meshy.ai/***/tasks/018a210d-8ba4-705c-b111-1f1776f7f578/output/pre_remeshed_model.glb?Expires=***"
    },
    "thumbnail_url": "https://assets.meshy.ai/***/tasks/018a210d-8ba4-705c-b111-1f1776f7f578/output/preview.png?Expires=***",
    "thumbnail_urls": {
      "front": "https://assets.meshy.ai/***/tasks/018a210d-8ba4-705c-b111-1f1776f7f578/output/preview_front.png?Expires=***",
      "right": "https://assets.meshy.ai/***/tasks/018a210d-8ba4-705c-b111-1f1776f7f578/output/preview_right.png?Expires=***",
      "back": "https://assets.meshy.ai/***/tasks/018a210d-8ba4-705c-b111-1f1776f7f578/output/preview_back.png?Expires=***",
      "left": "https://assets.meshy.ai/***/tasks/018a210d-8ba4-705c-b111-1f1776f7f578/output/preview_left.png?Expires=***"
    },
    "texture_prompt": "",
    "progress": 100,
    "started_at": 1692771667037,
    "created_at": 1692771650657,
    "expires_at": 1692771679037,
    "finished_at": 1692771669037,
    "status": "SUCCEEDED",
    "texture_urls": [
      {
        "base_color": "https://assets.meshy.ai/***/tasks/018a210d-8ba4-705c-b111-1f1776f7f578/output/texture_0.png?Expires=***",
        "metallic": "https://assets.meshy.ai/***/tasks/018a210d-8ba4-705c-b111-1f1776f7f578/output/texture_0_metallic.png?Expires=XXX",
        "normal": "https://assets.meshy.ai/***/tasks/018a210d-8ba4-705c-b111-1f1776f7f578/output/texture_0_normal.png?Expires=XXX",
        "roughness": "https://assets.meshy.ai/***/tasks/018a210d-8ba4-705c-b111-1f1776f7f578/output/texture_0_roughness.png?Expires=XXX",
        "emission": "https://assets.meshy.ai/***/tasks/018a210d-8ba4-705c-b111-1f1776f7f578/output/texture_0_emission.png?Expires=XXX"
      }
    ],
    "preceding_tasks": 0,
    "task_error": {
      "message": ""
    },
    "consumed_credits": 30
  }
]

GET/openapi/v1/image-to-3d/:id/stream

Diffuser une tâche Image en 3D

Ce point de terminaison diffuse des mises à jour en temps réel pour une tâche Image en 3D à l'aide des Server-Sent Events (SSE).

Paramètres

  • Name
    id
    Type
    path
    Description

    Identifiant unique de la tâche Image en 3D à diffuser.

Retours

Renvoie un flux d'objets de tâche Image en 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

GET
/openapi/v1/image-to-3d/018a210d-8ba4-705c-b111-1f1776f7f578/stream
curl -N https://api.meshy.ai/openapi/v1/image-to-3d/018a210d-8ba4-705c-b111-1f1776f7f578/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": "018a210d-8ba4-705c-b111-1f1776f7f578",
  "progress": 0,
  "status": "PENDING"
}

event: message
data: {
  "id": "018a210d-8ba4-705c-b111-1f1776f7f578",
  "type": "image-to-3d",
  "model_urls": {
  "glb": "https://assets.meshy.ai/***/tasks/018a210d-8ba4-705c-b111-1f1776f7f578/output/model.glb?Expires=***",
  "fbx": "https://assets.meshy.ai/***/tasks/018a210d-8ba4-705c-b111-1f1776f7f578/output/model.fbx?Expires=***",
  "obj": "https://assets.meshy.ai/***/tasks/018a210d-8ba4-705c-b111-1f1776f7f578/output/model.obj?Expires=***",
  "usdz": "https://assets.meshy.ai/***/tasks/018a210d-8ba4-705c-b111-1f1776f7f578/output/model.usdz?Expires=***",
  "stl": "https://assets.meshy.ai/***/tasks/018a210d-8ba4-705c-b111-1f1776f7f578/output/model.stl?Expires=***",
  "pre_remeshed_glb": "https://assets.meshy.ai/***/tasks/018a210d-8ba4-705c-b111-1f1776f7f578/output/pre_remeshed_model.glb?Expires=***"
  },
  "thumbnail_url": "https://assets.meshy.ai/***/tasks/018a210d-8ba4-705c-b111-1f1776f7f578/output/preview.png?Expires=***",
  "thumbnail_urls": {
    "front": "https://assets.meshy.ai/***/tasks/018a210d-8ba4-705c-b111-1f1776f7f578/output/preview_front.png?Expires=***",
    "right": "https://assets.meshy.ai/***/tasks/018a210d-8ba4-705c-b111-1f1776f7f578/output/preview_right.png?Expires=***",
    "back": "https://assets.meshy.ai/***/tasks/018a210d-8ba4-705c-b111-1f1776f7f578/output/preview_back.png?Expires=***",
    "left": "https://assets.meshy.ai/***/tasks/018a210d-8ba4-705c-b111-1f1776f7f578/output/preview_left.png?Expires=***"
  },
  "texture_prompt": "",
  "progress": 100,
  "started_at": 1692771667037,
  "created_at": 1692771650657,
  "expires_at": 1692771679037,
  "finished_at": 1692771669037,
  "status": "SUCCEEDED",
  "texture_urls": [
    {
      "base_color": "https://assets.meshy.ai/***/tasks/018a210d-8ba4-705c-b111-1f1776f7f578/output/texture_0.png?Expires=***",
      "metallic": "https://assets.meshy.ai/***/tasks/018a210d-8ba4-705c-b111-1f1776f7f578/output/texture_0_metallic.png?Expires=XXX",
      "normal": "https://assets.meshy.ai/***/tasks/018a210d-8ba4-705c-b111-1f1776f7f578/output/texture_0_normal.png?Expires=XXX",
      "roughness": "https://assets.meshy.ai/***/tasks/018a210d-8ba4-705c-b111-1f1776f7f578/output/texture_0_roughness.png?Expires=XXX",
      "emission": "https://assets.meshy.ai/***/tasks/018a210d-8ba4-705c-b111-1f1776f7f578/output/texture_0_emission.png?Expires=XXX"
    }
  ],
  "preceding_tasks": 0,
  "task_error": {
    "message": ""
  },
  "consumed_credits": 30
}

L'objet de tâche Image en 3D

L'objet de tâche Image en 3D est une unité de travail que Meshy suit afin de générer un modèle 3D à partir d'une entrée image. L'objet possède les propriétés suivantes :

Propriétés

  • Name
    id
    Type
    string
    Description

    Identifiant unique de la tâche. Bien que nous utilisions un UUID triable par ordre k comme détail d'implémentation pour les identifiants de tâche, vous ne devez pas faire d'hypothèses sur le format de l'id.

  • Name
    type
    Type
    string
    Description

    Type de la tâche Image en 3D. La valeur est image-to-3d.

  • Name
    model_urls
    Type
    object
    Description

    URL téléchargeable vers le fichier de modèle 3D texturé généré par Meshy. La propriété d'un format sera omise si le format n'est pas généré, plutôt que de renvoyer une chaîne vide.

    • Name
      glb
      Type
      string
      Description

      URL téléchargeable vers le fichier GLB.

    • Name
      fbx
      Type
      string
      Description

      URL téléchargeable vers le fichier FBX.

    • Name
      obj
      Type
      string
      Description

      URL téléchargeable vers le fichier OBJ.

    • Name
      usdz
      Type
      string
      Description

      URL téléchargeable vers le fichier USDZ.

    • Name
      mtl
      Type
      string
      Description

      URL téléchargeable vers le fichier MTL, renvoyée avec les exports OBJ lorsque des textures sont présentes.

    • Name
      stl
      Type
      string
      Description

      URL téléchargeable vers le fichier STL.

    • Name
      3mf
      Type
      string
      Description

      URL téléchargeable vers le fichier 3MF. Présente uniquement lorsque 3mf a été demandé via target_formats.

    • Name
      pre_remeshed_glb
      Type
      string
      Description

      URL téléchargeable vers le fichier GLB d'origine généré avant le remeshing.

  • Name
    thumbnail_url
    Type
    string
    Description

    URL téléchargeable vers l'image miniature du fichier de modèle. Équivalent à thumbnail_urls.front lorsqu'elle est présente, conservée pour des raisons de compatibilité ascendante.

  • Name
    alpha_thumbnail_url
    Type
    string
    Description

    URL téléchargeable vers une version à fond transparent (RGBA) de thumbnail_url. Présente uniquement lorsque la tâche a été créée avec alpha_thumbnail: true et que l'aperçu transparent a été correctement généré ; sinon, ce champ est omis.

  • Name
    thumbnail_urls
    Type
    object
    Description

    URLs téléchargeables pour quatre miniatures du modèle 3D généré, selon les vues cardinales. Chaque valeur est une URL signée vers un PNG 512×512 rendu avec les mêmes matériaux et le même éclairage que thumbnail_url. Utile pour prévisualiser le modèle sous plusieurs angles dans des pipelines par lots sans télécharger le GLB.

    • Name
      front
      Type
      string
      Description

      Vue de face, rotation de 0° autour de l'axe vertical (correspond à thumbnail_url).

    • Name
      right
      Type
      string
      Description

      Vue de droite, rotation de 90°.

    • Name
      back
      Type
      string
      Description

      Vue arrière, rotation de 180°.

    • Name
      left
      Type
      string
      Description

      Vue de gauche, rotation de 270°.

  • Name
    texture_prompt
    Type
    string
    Description

    Le prompt textuel qui a été utilisé pour guider le processus de texturation.

  • Name
    texture_image_url
    Type
    string
    Description

    URL téléchargeable vers l'image de texture qui a été utilisée pour guider le processus de texturation.

  • Name
    ultra_mode
    Type
    boolean
    ⚠ obsolète
    Description

    Obsolète ; utilisez plutôt geometry_resolution.

  • Name
    geometry_resolution
    Type
    string
    Description

    Le niveau Ultra sur lequel la tâche s'est exécutée (2k ou 4k) ; omis pour standard.

  • Name
    progress
    Type
    integer
    Description

    Progression de la tâche. Si la tâche n'a pas encore démarré, cette propriété vaudra 0. Une fois la tâche réussie, elle deviendra 100.

  • 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é vaudra 0.

  • Name
    created_at
    Type
    timestamp
    Description

    Horodatage de la création de la tâche, en millisecondes.

  • Name
    expires_at
    Type
    timestamp
    Description

    Horodatage de l'expiration du résultat de la tâche, en millisecondes.

  • 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é vaudra 0.

  • Name
    status
    Type
    string
    Description

    Statut de la tâche. Les valeurs possibles sont PENDING, IN_PROGRESS, SUCCEEDED, FAILED, CANCELED.

  • Name
    texture_urls
    Type
    array
    Description

    Un tableau d'objets d'URL de texture générés par la tâche. Normalement, celui-ci ne contient qu'un seul objet d'URL de texture. Chaque URL de texture possède les propriétés suivantes :

    • Name
      base_color
      Type
      string
      Description

      URL téléchargeable vers l'image de la carte de couleur de base.

    • Name
      metallic
      Type
      string
      Description

      URL téléchargeable vers l'image de la carte métallique.

    • Name
      normal
      Type
      string
      Description

      URL téléchargeable vers l'image de la normal map.

    • Name
      roughness
      Type
      string
      Description

      URL téléchargeable vers l'image de la carte de rugosité.

    • Name
      emission
      Type
      string
      Description

      URL téléchargeable vers l'image de la carte d'émission.

  • Name
    preceding_tasks
    Type
    integer
    Description

    Le nombre de tâches précédentes.

  • Name
    task_error
    Type
    object
    Description

    Détails d'erreur pour les tâches échouées. 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_PROGRESS, ou SUCCEEDED. Renvoie 0 pour les tâches FAILED (les crédits sont remboursés en cas d'échec).

Example Image to 3D Task Object

{
  "id": "018a210d-8ba4-705c-b111-1f1776f7f578",
  "type": "image-to-3d",
  "model_urls": {
    "glb": "https://assets.meshy.ai/***/tasks/018a210d-8ba4-705c-b111-1f1776f7f578/output/model.glb?Expires=***",
    "fbx": "https://assets.meshy.ai/***/tasks/018a210d-8ba4-705c-b111-1f1776f7f578/output/model.fbx?Expires=***",
    "obj": "https://assets.meshy.ai/***/tasks/018a210d-8ba4-705c-b111-1f1776f7f578/output/model.obj?Expires=***",
    "usdz": "https://assets.meshy.ai/***/tasks/018a210d-8ba4-705c-b111-1f1776f7f578/output/model.usdz?Expires=***",
    "stl": "https://assets.meshy.ai/***/tasks/018a210d-8ba4-705c-b111-1f1776f7f578/output/model.stl?Expires=***",
    "pre_remeshed_glb": "https://assets.meshy.ai/***/tasks/018a210d-8ba4-705c-b111-1f1776f7f578/output/pre_remeshed_model.glb?Expires=***"
  },
  "thumbnail_url": "https://assets.meshy.ai/***/tasks/018a210d-8ba4-705c-b111-1f1776f7f578/output/preview.png?Expires=***",
  "thumbnail_urls": {
    "front": "https://assets.meshy.ai/***/tasks/018a210d-8ba4-705c-b111-1f1776f7f578/output/preview_front.png?Expires=***",
    "right": "https://assets.meshy.ai/***/tasks/018a210d-8ba4-705c-b111-1f1776f7f578/output/preview_right.png?Expires=***",
    "back": "https://assets.meshy.ai/***/tasks/018a210d-8ba4-705c-b111-1f1776f7f578/output/preview_back.png?Expires=***",
    "left": "https://assets.meshy.ai/***/tasks/018a210d-8ba4-705c-b111-1f1776f7f578/output/preview_left.png?Expires=***"
  },
  "texture_prompt": "",
  "texture_image_url": "",
  "progress": 100,
  "started_at": 1692771667037,
  "created_at": 1692771650657,
  "expires_at": 1692771679037,
  "finished_at": 1692771669037,
  "status": "SUCCEEDED",
  "texture_urls": [
    {
      "base_color": "https://assets.meshy.ai/***/tasks/018a210d-8ba4-705c-b111-1f1776f7f578/output/texture_0.png?Expires=***",
      "metallic": "https://assets.meshy.ai/***/tasks/018a210d-8ba4-705c-b111-1f1776f7f578/output/texture_0_metallic.png?Expires=XXX",
      "normal": "https://assets.meshy.ai/***/tasks/018a210d-8ba4-705c-b111-1f1776f7f578/output/texture_0_normal.png?Expires=XXX",
      "roughness": "https://assets.meshy.ai/***/tasks/018a210d-8ba4-705c-b111-1f1776f7f578/output/texture_0_roughness.png?Expires=XXX",
      "emission": "https://assets.meshy.ai/***/tasks/018a210d-8ba4-705c-b111-1f1776f7f578/output/texture_0_emission.png?Expires=XXX"
    }
  ],
  "preceding_tasks": 0,
  "task_error": {
    "message": ""
  },
  "consumed_credits": 30
}