Creative Lab — API de Figurine

Transformez une photo source en une figurine 3D de collection de style chibi 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/figure/v1/prototype
  • POST /openapi/creative-lab/figure/v1/build

POST/openapi/creative-lab/figure/v1/prototype

Créer une Tâche de Prototype de Figurine

Générer une seule image conceptuelle de style chibi à 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. Référez-vous à L'Objet de Tâche de Prototype de Figurine pour la forme de la réponse.

Paramètres

  • Name
    image_url
    Type
    string
    Requis
    Description

    Photo source pour que Meshy la stylise en une figurine chibi. Nous supportons actuellement les formats .jpg, .jpeg, .png, et .webp.

    Il y a deux façons de fournir l'image :

    • URL accessible publiquement : Une URL accessible depuis l'internet public.
    • Data URI : Un Data URI encodé en base64 de l'image. Exemple de Data URI : data:image/jpeg;base64,<your base64-encoded image data>.
  • Name
    name
    Type
    string
    Description

    Nom de tâche optionnel à des fins d'affichage. Maximum 100 caractères.

  • Name
    remove_background
    Type
    boolean
    défaut false
    Description

    Lorsqu'il est réglé sur true, l'image prototype est retournée en tant que PNG RGBA transparent avec le fond supprimé, vous permettant de composer le sujet sur n'importe quel fond.

Retours

La propriété result de la réponse contient l'ID de tâche du prototype de figurine nouvellement créé. Interrogez le point de terminaison Obtenir une Tâche 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 courantes :

    • Paramètre manquant : image_url est requis.
    • Format d'image invalide : Le image_url fourni n'est pas dans un format supporté (.jpg, .jpeg, .png, .webp).
    • Dimensions de l'image hors limites : 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/figure/v1/prototype
# Stage 1: generate a chibi-style concept image
curl https://api.meshy.ai/openapi/creative-lab/figure/v1/prototype \
  -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>"
  }'

Réponse

{
  "result": "018a210d-8ba4-705c-b111-1f1776f7f578"
}
Exemple de prototype
Commencez par un portrait source, puis générez l'image prototype utilisée par l'étape de construction.
Portrait source utilisé comme entrée pour la Figurine Creative Lab
Entrée prototype
Image prototype de figurine de style chibi générée à partir de la photo source
Sortie prototype

POST/openapi/creative-lab/figure/v1/build

Créer une tâche de construction de figurine

Générez la figurine 3D finale 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 de réponse et la liste des URL de sortie correspondent exactement. Référez-vous à L'objet de la tâche de construction de figurine pour la forme de la réponse.

Paramètres

  • Name
    input_task_id
    Type
    string
    Requis
    Description

    L'ID de la 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/figure/v1/prototype et refuse toute autre source avec 404.

  • Name
    name
    Type
    string
    Description

    Nom de tâche optionnel à des fins d'affichage. Maximum 100 caractères.

Retours

La propriété result de la réponse contient l'id de la tâche de construction de figurine nouvellement créée. 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 en aval préfère OBJ).

Modes d'échec

  • Name
    400 - Bad Request
    Description

    La requête était inacceptable. Causes courantes :

    • 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.
  • 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
    404 - Not Found
    Description

    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 chaînent en construction).

  • Name
    429 - Too Many Requests
    Description

    Vous avez dépassé votre limite de débit.

Request

POST
/openapi/creative-lab/figure/v1/build
# Stage 2: chain build off a succeeded prototype task
curl https://api.meshy.ai/openapi/creative-lab/figure/v1/build \
  -X POST \
  -H "Authorization: Bearer ${YOUR_API_KEY}" \
  -H 'Content-Type: application/json' \
  -d '{
    "input_task_id": "018a210d-8ba4-705c-b111-1f1776f7f578"
  }'

Response

{
  "result": "019c320e-9a8f-7a1c-9c11-2a1876f8a9bb"
}
Exemple de construction
La tâche de construction transforme l'image prototype sélectionnée en un modèle 3D texturé téléchargeable.
Aperçu du modèle de construction de la figurine Creative Lab
Aperçu du modèle de construction

GET/openapi/creative-lab/figure/v1/(prototype|build)/:id

Récupérer une tâche de figurine

Récupérer une tâche de prototype ou de construction donnée un id de tâche valide. Le chemin de l'URL doit correspondre à l'étape de la tâche — une tâche de construction récupérée via /prototype/:id renvoie 404, et vice versa.

Référez-vous à L'objet de tâche de prototype de figurine et L'objet de tâche de construction de figurine pour les formes de réponse.

Paramètres

  • Name
    id
    Type
    path
    Description

    Identifiant unique pour la tâche de figurine à récupérer.

Retours

La réponse contient l'objet de la tâche de figurine. La forme dépend de l'étape demandée.

Requête

GET
/openapi/creative-lab/figure/v1/prototype/018a210d-8ba4-705c-b111-1f1776f7f578
# Prototype
curl https://api.meshy.ai/openapi/creative-lab/figure/v1/prototype/018a210d-8ba4-705c-b111-1f1776f7f578 \
  -H "Authorization: Bearer ${YOUR_API_KEY}"

# Build
curl https://api.meshy.ai/openapi/creative-lab/figure/v1/build/019c320e-9a8f-7a1c-9c11-2a1876f8a9bb \
  -H "Authorization: Bearer ${YOUR_API_KEY}"

Réponse Prototype

{
  "id": "018a210d-8ba4-705c-b111-1f1776f7f578",
  "type": "creative-lab-figure-prototype",
  "name": "",
  "status": "SUCCEEDED",
  "progress": 100,
  "created_at": 1729123456000,
  "started_at": 1729123460000,
  "finished_at": 1729123486000,
  "expires_at": 1729382686000,
  "preceding_tasks": 0,
  "task_error": null,
  "consumed_credits": 6,
  "image_urls": [
    "https://assets.meshy.ai/***/concept.png?Expires=***"
  ]
}

Réponse Construction

{
  "id": "019c320e-9a8f-7a1c-9c11-2a1876f8a9bb",
  "type": "creative-lab-figure-build",
  "name": "",
  "status": "SUCCEEDED",
  "progress": 100,
  "created_at": 1729123500000,
  "started_at": 1729123510000,
  "finished_at": 1729123535000,
  "expires_at": 1729382735000,
  "preceding_tasks": 0,
  "task_error": null,
  "consumed_credits": 20,
  "prompt": "",
  "negative_prompt": "",
  "texture_prompt": "",
  "texture_image_url": "",
  "model_urls": {
    "glb": "https://assets.meshy.ai/***/tasks/019c320e-9a8f-7a1c-9c11-2a1876f8a9bb/output/model.glb?Expires=***",
    "obj": "https://assets.meshy.ai/***/tasks/019c320e-9a8f-7a1c-9c11-2a1876f8a9bb/output/model.obj?Expires=***",
    "mtl": "https://assets.meshy.ai/***/tasks/019c320e-9a8f-7a1c-9c11-2a1876f8a9bb/output/model.mtl?Expires=***"
  },
  "thumbnail_url": "https://assets.meshy.ai/***/tasks/019c320e-9a8f-7a1c-9c11-2a1876f8a9bb/output/preview.png?Expires=***",
  "texture_urls": [
    {
      "base_color": "https://assets.meshy.ai/***/tasks/019c320e-9a8f-7a1c-9c11-2a1876f8a9bb/output/texture_0.png?Expires=***"
    }
  ]
}

DELETE/openapi/creative-lab/figure/v1/(prototype|build)/:id

Supprimer une tâche de figurine

Annuler une tâche de figurine. Si la tâche est encore PENDING, les crédits consommés lors de la création sont remboursés. Les tâches qui sont 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 renvoie 404.

Paramètres de chemin

  • Name
    id
    Type
    path
    Description

    Identifiant unique de la tâche de figurine à 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 autre utilisateur, ou son étape ne correspond pas au chemin URL.

Request

DELETE
/openapi/creative-lab/figure/v1/prototype/018a210d-8ba4-705c-b111-1f1776f7f578
curl --request DELETE \
  --url https://api.meshy.ai/openapi/creative-lab/figure/v1/prototype/018a210d-8ba4-705c-b111-1f1776f7f578 \
  -H "Authorization: Bearer ${YOUR_API_KEY}"

Response

// Returns 204 No Content on success (empty body).

GET/openapi/creative-lab/figure/v1/(prototype|build)/:id/stream

Diffuser une tâche de figurine

Diffusez des mises à jour en temps réel pour une tâche de figurine via Server-Sent Events (SSE). Le chemin URL doit correspondre à l'étape de la tâche — ouvrir un flux à /prototype/:buildId/stream émet une seule charge utile event: error avec status_code: 404 et ferme le flux.

Paramètres

  • Name
    id
    Type
    path
    Description

    Identifiant unique pour la tâche de figurine à diffuser.

Retours

Retourne un flux d'objets de tâche Prototype de Figurine ou Construction de Figurine sous forme de Server-Sent Events. Pour les tâches PENDING ou IN_PROGRESS, le flux de réponse inclura uniquement les champs nécessaires progress et status.

Requête

GET
/openapi/creative-lab/figure/v1/build/019c320e-9a8f-7a1c-9c11-2a1876f8a9bb/stream
curl -N https://api.meshy.ai/openapi/creative-lab/figure/v1/build/019c320e-9a8f-7a1c-9c11-2a1876f8a9bb/stream \
-H "Authorization: Bearer ${YOUR_API_KEY}"

Flux de Réponse

// Error event example (wrong stage or task not found)
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": "019c320e-9a8f-7a1c-9c11-2a1876f8a9bb",
  "progress": 0,
  "status": "PENDING"
}

event: message
data: {
  "id": "019c320e-9a8f-7a1c-9c11-2a1876f8a9bb",
  "type": "creative-lab-figure-build",
  "status": "SUCCEEDED",
  "progress": 100,
  "created_at": 1729123500000,
  "started_at": 1729123510000,
  "finished_at": 1729123535000,
  "expires_at": 1729382735000,
  "task_error": null,
  "consumed_credits": 20,
  "prompt": "",
  "negative_prompt": "",
  "texture_prompt": "",
  "texture_image_url": "",
  "model_urls": {
    "glb": "https://assets.meshy.ai/***/tasks/019c320e-9a8f-7a1c-9c11-2a1876f8a9bb/output/model.glb?Expires=***",
    "obj": "https://assets.meshy.ai/***/tasks/019c320e-9a8f-7a1c-9c11-2a1876f8a9bb/output/model.obj?Expires=***",
    "mtl": "https://assets.meshy.ai/***/tasks/019c320e-9a8f-7a1c-9c11-2a1876f8a9bb/output/model.mtl?Expires=***"
  },
  "thumbnail_url": "https://assets.meshy.ai/***/tasks/019c320e-9a8f-7a1c-9c11-2a1876f8a9bb/output/preview.png?Expires=***",
  "texture_urls": [
    {
      "base_color": "https://assets.meshy.ai/***/tasks/019c320e-9a8f-7a1c-9c11-2a1876f8a9bb/output/texture_0.png?Expires=***"
    }
  ]
}

GET/openapi/creative-lab/figure/v1/(prototype|build)

Lister les tâches de figurine

Récupérez une liste paginée de vos tâches de figurine 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 de l'autre étape ne sont pas incluses dans l'une ou l'autre réponse.

Paramètres de chemin

  • Name
    stage
    Type
    path
    Requis
    Description

    Soit prototype soit build. La collection ne renvoie que les tâches dont l'étape correspond à l'URL — récupérer /prototype ne renvoie jamais les 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 de tri. 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.

Retours

Renvoie une liste paginée de l'objet tâche par étape — soit l'objet tâche de prototype de figurine lors de la liste /prototype ou l'objet tâche de construction de figurine lors de la liste /build.

Requête

GET
/openapi/creative-lab/figure/v1/prototype
# List prototype tasks
curl https://api.meshy.ai/openapi/creative-lab/figure/v1/prototype?page_size=10 \
  -H "Authorization: Bearer ${YOUR_API_KEY}"

# List build tasks
curl https://api.meshy.ai/openapi/creative-lab/figure/v1/build?page_size=10 \
  -H "Authorization: Bearer ${YOUR_API_KEY}"

Réponse (Lister les tâches de prototype)

[
  {
    "id": "018a210d-8ba4-705c-b111-1f1776f7f578",
    "type": "creative-lab-figure-prototype",
    "name": "",
    "status": "SUCCEEDED",
    "progress": 100,
    "created_at": 1729123456000,
    "started_at": 1729123460000,
    "finished_at": 1729123486000,
    "expires_at": 1729382686000,
    "preceding_tasks": 0,
    "task_error": null,
    "consumed_credits": 6,
    "image_urls": [
      "https://assets.meshy.ai/***/concept.png?Expires=***"
    ]
  }
]

L'objet Figure Prototype Task

L'objet Figure Prototype Task est une unité de travail que Meshy suit pour générer une image conceptuelle de style chibi à partir d'une photo source. Le résultat de cette étape est enchaîné 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 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. La valeur est creative-lab-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 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, cela 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. Si la tâche n'est pas encore commencé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, en millisecondes.

  • Name
    preceding_tasks
    Type
    integer
    Description

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

  • 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'image conceptuelle générés par cette tâche prototype. Actuellement, l'API renvoie toujours exactement un candidat; le champ est un tableau afin que les révisions futures puissent proposer plusieurs candidats sans changement majeur.

Exemple d'objet Figure Prototype Task

{
  "id": "018a210d-8ba4-705c-b111-1f1776f7f578",
  "type": "creative-lab-figure-prototype",
  "name": "",
  "status": "SUCCEEDED",
  "progress": 100,
  "created_at": 1729123456000,
  "started_at": 1729123460000,
  "finished_at": 1729123486000,
  "expires_at": 1729382686000,
  "preceding_tasks": 0,
  "task_error": null,
  "consumed_credits": 6,
  "image_urls": [
    "https://assets.meshy.ai/***/concept.png?Expires=***"
  ]
}

L'objet de la tâche de construction de figurine

L'objet de la tâche de construction de figurine est une unité de travail que Meshy suit pour générer une figurine 3D texturée à partir d'une tâche prototype réussie. Il utilise le même pipeline image-en-3D que Image en 3D, de sorte que les champs de sortie reflètent ceux de l'objet de tâche de ce point de terminaison.

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-figure-build.

  • 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 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 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. Significatif 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 construction de figurine. Présent pour la compatibilité inter-point de terminaison avec la forme partagée V2ImageTo3DTaskResponse utilisée par Image en 3D.

  • Name
    negative_prompt
    Type
    string
    Description

    Toujours vide pour la construction de figurine. Présent pour la compatibilité inter-point de terminaison.

  • Name
    texture_prompt
    Type
    string
    Description

    Toujours vide pour la construction de figurine. Présent pour la compatibilité inter-point de terminaison.

  • Name
    texture_image_url
    Type
    string
    Description

    Toujours vide pour la construction de figurine. Présent pour la compatibilité inter-point de terminaison.

  • Name
    model_urls
    Type
    object
    Description

    URLs téléchargeables pour le modèle 3D généré. La construction de la figurine émet un GLB texturé plus la paire OBJ + MTL pour les pipelines qui préfèrent Wavefront OBJ. La forme du champ correspond à l'objet Image en 3D model_urls afin que les ajouts de format futurs s'insèrent sans changement majeur.

    • 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ériau 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 de tâche de construction de figurine

{
  "id": "019c320e-9a8f-7a1c-9c11-2a1876f8a9bb",
  "type": "creative-lab-figure-build",
  "name": "",
  "status": "SUCCEEDED",
  "progress": 100,
  "created_at": 1729123500000,
  "started_at": 1729123510000,
  "finished_at": 1729123535000,
  "expires_at": 1729382735000,
  "preceding_tasks": 0,
  "task_error": null,
  "consumed_credits": 20,
  "prompt": "",
  "negative_prompt": "",
  "texture_prompt": "",
  "texture_image_url": "",
  "model_urls": {
    "glb": "https://assets.meshy.ai/***/tasks/019c320e-9a8f-7a1c-9c11-2a1876f8a9bb/output/model.glb?Expires=***",
    "obj": "https://assets.meshy.ai/***/tasks/019c320e-9a8f-7a1c-9c11-2a1876f8a9bb/output/model.obj?Expires=***",
    "mtl": "https://assets.meshy.ai/***/tasks/019c320e-9a8f-7a1c-9c11-2a1876f8a9bb/output/model.mtl?Expires=***"
  },
  "thumbnail_url": "https://assets.meshy.ai/***/tasks/019c320e-9a8f-7a1c-9c11-2a1876f8a9bb/output/preview.png?Expires=***",
  "texture_urls": [
    {
      "base_color": "https://assets.meshy.ai/***/tasks/019c320e-9a8f-7a1c-9c11-2a1876f8a9bb/output/texture_0.png?Expires=***"
    }
  ]
}