Creative Lab — API porte-clés

Transformez une photo source en un médaillon de porte-clés imprimable en 3D — un relief de profondeur colorisé en forme de badge — en deux étapes : le prototype génère une image de concept colorisée à partir de votre photo source, puis le build transforme cette image de concept en un modèle 3D en relief. Les deux étapes sont liées via input_task_id.

  • POST /openapi/creative-lab/keychain/v1/prototype
  • POST /openapi/creative-lab/keychain/v1/build

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

Create a Keychain Prototype Task

Génère une seule image conceptuelle colorisée à partir de la photo source. L'ID de tâche renvoyé est celui que vous transmettez en tant que input_task_id au point de terminaison de build. Consultez The Keychain Prototype Task Object pour connaître la structure de la réponse.

Paramètres

  • Name
    image_url
    Type
    string
    Requis
    Description

    Photo source que Meshy doit coloriser en une image conceptuelle prête pour le porte-clés. Nous prenons actuellement en charge les formats .jpg, .jpeg, .png et .webp.

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

    • URL accessible publiquement : une URL accessible depuis l'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 image encodées en base64>.
  • Name
    name
    Type
    string
    Description

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

    Cela permet d'étiqueter la tâche dans votre tableau de bord et vos listes de tâches. Ce n'est pas gravé sur le porte-clés — utilisez name_text pour cela.

  • Name
    name_text
    Type
    string
    Description

    Texte à graver sur le porte-clés, comme le nom d'un animal de compagnie ou d'une personne. 10 caractères maximum, comptés en caractères Unicode plutôt qu'en octets, de sorte qu'un nom chinois, japonais ou coréen de 10 caractères est accepté. Omettez ce champ pour produire un porte-clés sans gravure.

    Les espaces environnants sont supprimés et les caractères de formatage invisibles sont retirés avant que le texte ne soit utilisé. La valeur résultante est renvoyée en tant que name_text dans l'objet de tâche prototype, ce qui vous permet de confirmer exactement ce qui sera gravé avant de payer pour l'étape de build.

    La gravure est appliquée ici, au stade du prototype. L'étape de build l'hérite automatiquement et n'accepte pas son propre name_text.

  • Name
    remove_background
    Type
    boolean
    défaut false
    Description

    Lorsque défini sur true, l'image prototype est renvoyée sous forme de PNG RGBA transparent avec l'arrière-plan supprimé, ce qui vous permet de composer le sujet sur n'importe quel arrière-plan.

    Cela contrôle uniquement l'image renvoyée par ce point de terminaison. C'est distinct de l'option de build du même nom (par défaut true), qui contrôle la suppression de l'arrière-plan avant la mise en relief.

Retours

La propriété result de la réponse contient l'id de tâche du prototype de porte-clés nouvellement créé. Interrogez le point de terminaison Get a Task ou abonnez-vous au stream jusqu'à ce que la tâche atteigne SUCCEEDED, puis transmettez cet ID au point de terminaison de build en tant que 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 : l'image_url fourni n'est pas dans un format pris en charge (.jpg, .jpeg, .png, .webp).
    • Dimensions d'image hors limites : l'image est trop petite, dépasse la taille de fichier maximale ou dépasse le nombre de pixels maximal.
    • URL inaccessible : l'image_url n'a pas pu être téléchargée (404 ou timeout).
    • Data URI invalide : la chaîne base64 est mal formée.
    • Gravure trop longue : name_text dépasse 10 caractères. La requête est rejetée plutôt que tronquée, de sorte que vous n'êtes jamais facturé pour un porte-clés gravé avec un nom raccourci.
    • Contenu signalé : l'image d'entrée a été signalée par la moderation NSFW ou de propriété intellectuelle, ou la gravure name_text a été signalée par la moderation NSFW. La gravure n'est examinée que pour le contenu NSFW — le contrôle de propriété intellectuelle s'applique à l'image.
  • 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/creative-lab/keychain/v1/prototype
# Stage 1: generate a colorized keychain concept image
curl https://api.meshy.ai/openapi/creative-lab/keychain/v1/prototype \
  -X POST \
  -H "Authorization: Bearer ${YOUR_API_KEY}" \
  -H 'Content-Type: application/json; charset=utf-8' \
  -d '{
    "image_url": "<your publicly accessible image url or base64-encoded data URI>",
    "name_text": "Luna"
  }'

Response

{
  "result": "018a210d-8ba4-705c-b111-1f1776f7f578"
}
Prototype example
Start with a source photo, then generate the prototype image used by the keychain build stage.
Source photo used as the Creative Lab Keychain input
Prototype input
Creative Lab Keychain prototype output generated from the source photo
Prototype output

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

Créer une tâche de construction de porte-clés

Génère le médaillon de porte-clés final imprimable en 3D à partir d'une tâche de prototype réussie. La construction exécute un pipeline de relief par carte de profondeur sur l'image conceptuelle colorisée du prototype et livre un unique artefact de maillage dans le format demandé. Reportez-vous à L'objet Tâche de construction de porte-clés pour la forme de la réponse.

Paramètres

  • Name
    input_task_id
    Type
    string
    Requis
    Description

    L'ID de tâche d'une tâche de 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 de prototype créées via l'application web ne sont pas acceptées — le point de terminaison de construction n'accepte que les tâches de prototype produites par POST /openapi/creative-lab/keychain/v1/prototype et refuse toute autre source avec 404.

  • Name
    name
    Type
    string
    Description

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

options

Paramètres d'ajustement facultatifs pour la géométrie de relief. Chaque champ possède une valeur par défaut raisonnable — envoyez uniquement ceux que vous souhaitez remplacer.

  • Name
    badge_shape
    Type
    string
    défaut circle
    Description

    Silhouette du contour du médaillon de porte-clés. Valeurs disponibles :

    • circle (par défaut)
    • rounded-rect
    • hexagon
    • shield
    • star
  • Name
    size_mm
    Type
    number
    défaut 40
    Description

    Longueur du côté du carré englobant du porte-clés, en millimètres. Plage : (0, 400].

  • Name
    relief_height_mm
    Type
    number
    défaut 2.2
    Description

    Hauteur maximale du relief au-dessus de la base, en millimètres. Plage : [0, 20].

  • Name
    relief_offset_mm
    Type
    number
    défaut 0
    Description

    Décalage vertical appliqué au relief avant l'extrusion, en millimètres. Plage : [0, 20].

  • Name
    base_thickness_mm
    Type
    number
    défaut 0.1
    Description

    Épaisseur de la plaque de base plate derrière le relief, en millimètres. Plage : [0, 20].

  • Name
    has_closed_back
    Type
    boolean
    défaut true
    Description

    Indique si l'arrière du médaillon est scellé comme une surface fermée. Définissez sur false pour obtenir une coque ouverte.

  • Name
    relief_curve
    Type
    string
    défaut linear
    Description

    Courbe de transfert associant les valeurs de la carte de profondeur à la hauteur du relief. Valeurs disponibles :

    • linear (par défaut)
    • gamma
    • s-curve
  • Name
    curve_param
    Type
    number
    défaut 1.0
    Description

    Paramètre de forme pour la courbe de transfert (pertinent uniquement lorsque relief_curve vaut gamma). Plage : (0, 10].

  • Name
    invert_depth
    Type
    boolean
    défaut false
    Description

    Inverse l'interprétation de la carte de profondeur afin que les régions les plus sombres deviennent un relief plus élevé.

  • Name
    smoothing
    Type
    number
    défaut 0.24
    Description

    Intensité du lissage appliqué à la carte de profondeur avant l'extraction du relief. Plage : [0, 10].

  • Name
    relief_scale
    Type
    number
    défaut 1.0
    Description

    Multiplicateur d'échelle verticale appliqué en plus de relief_height_mm. Plage : (0, 10].

  • Name
    depth_threshold
    Type
    number
    défaut 0.1
    Description

    Seuil de passe-bas pour les valeurs de la carte de profondeur ; tout ce qui est inférieur à ce seuil est ramené à zéro. Plage : [0, 1].

  • Name
    remove_background
    Type
    boolean
    défaut true
    Description

    Supprime automatiquement l'arrière-plan de l'image conceptuelle du prototype avant la mise en relief.

    Distinct du paramètre de prototype du même nom (par défaut false), qui contrôle si l'image du prototype elle-même est renvoyée avec transparence.

  • Name
    export_resolution
    Type
    integer
    défaut 512
    Description

    Résolution du maillage utilisée pour l'export. Plage : [64, 2048].

output

Sélecteur de format de sortie facultatif. Par défaut : glb.

  • Name
    format
    Type
    string
    défaut glb
    Description

    Ensemble d'artefacts renvoyé par la construction. Valeurs disponibles :

    • glb (par défaut) — renvoie un seul model.glb sous model_urls.glb.
    • obj — compresse model.obj + model.mtl + texture.png et renvoie l'ensemble sous model_urls.obj.
    • zip — compresse tous les artefacts émis par le générateur et renvoie l'ensemble sous model_urls.bundle_zip.

Retours

La propriété result de la réponse contient l'id de tâche de la nouvelle tâche de construction de porte-clés créée. Interrogez le point de terminaison Récupérer une tâche ou abonnez-vous au flux jusqu'à ce que la tâche atteigne SUCCEEDED, puis téléchargez l'artefact depuis l'entrée unique de model_urls.

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 : input_task_id n'est pas un UUID valide.
    • Parent non réussi : la tâche de prototype référencée n'a pas encore atteint SUCCEEDED.
    • Aucun candidat : la tâche de prototype a réussi mais n'a produit aucune image candidate.
    • Options hors plage : un des champs de options se situait hors de sa plage autorisée ou de son ensemble d'énumérations.
  • 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 de prototype référencée n'existe pas, appartient à un autre utilisateur, ou a été créée via l'application web (seules les tâches de prototype en mode API peuvent s'enchaîner vers une construction).

  • Name
    429 - Too Many Requests
    Description

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

Request

POST
/openapi/creative-lab/keychain/v1/build
# Stage 2: chain build off a succeeded prototype task
curl https://api.meshy.ai/openapi/creative-lab/keychain/v1/build \
  -X POST \
  -H "Authorization: Bearer ${YOUR_API_KEY}" \
  -H 'Content-Type: application/json' \
  -d '{
    "input_task_id": "018a210d-8ba4-705c-b111-1f1776f7f578",
    "options": {
      "badge_shape": "circle",
      "size_mm": 40,
      "relief_height_mm": 2.5
    },
    "output": {
      "format": "glb"
    }
  }'

Response

{
  "result": "019c320e-9a8f-7a1c-9c11-2a1876f8a9bb"
}
Build example
La tâche de construction convertit l'image de prototype sélectionnée en un modèle de porte-clés imprimable en 3D.
Aperçu du modèle de construction de porte-clés Creative Lab
Aperçu du modèle de construction

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

Récupérer une tâche de porte-clés

Récupère une tâche de prototype ou de build à partir d'un id de tâche valide. Le chemin de l'URL doit correspondre à l'étape de la tâche — une tâche de build récupérée via /prototype/:id renvoie 404, et inversement.

Consultez The Keychain Prototype Task Object et The Keychain Build Task Object pour connaître les formats de réponse.

Paramètres

  • Name
    id
    Type
    path
    Description

    Identifiant unique de la tâche de porte-clés à récupérer.

Retours

La réponse contient l'objet de la tâche de porte-clés. Sa forme dépend de l'étape demandée.

Request

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

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

Prototype Response

{
  "id": "018a210d-8ba4-705c-b111-1f1776f7f578",
  "type": "creative-lab-keychain-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=***"
  ]
}

Build Response

{
  "id": "019c320e-9a8f-7a1c-9c11-2a1876f8a9bb",
  "type": "creative-lab-keychain-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,
  "model_urls": {
    "glb": "https://assets.meshy.ai/***/tasks/019c320e-9a8f-7a1c-9c11-2a1876f8a9bb/output/model.glb?Expires=***"
  }
}

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

Supprimer une tâche de porte-clés

Annule une tâche de porte-clés. Si la tâche est encore 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 worker est peut-être déjà en train de consommer des ressources). Les tâches ayant déjà atteint un état terminal (SUCCEEDED, FAILED, CANCELED) ne peuvent pas être annulées.

Le chemin de l'URL doit correspondre à l'étape de la tâche — un DELETE sur /prototype/:buildId renvoie 404.

Paramètres de chemin

  • Name
    id
    Type
    path
    Description

    Identifiant unique de la tâche de porte-clés à annuler.

Retours

Renvoie 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 de l'URL.

Request

DELETE
/openapi/creative-lab/keychain/v1/prototype/018a210d-8ba4-705c-b111-1f1776f7f578
curl --request DELETE \
  --url https://api.meshy.ai/openapi/creative-lab/keychain/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/keychain/v1/(prototype|build)/:id/stream

Diffuser en continu une tâche de Keychain

Diffusez en continu les mises à jour en temps réel d'une tâche de porte-clés via Server-Sent Events (SSE). Le chemin de l'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 puis ferme le flux.

Paramètres

  • Name
    id
    Type
    path
    Description

    Identifiant unique de la tâche de porte-clés à diffuser en continu.

Retours

Renvoie un flux d'objets de tâche Keychain Prototype ou Keychain Build sous forme de Server-Sent Events. Chaque trame transporte l'objet de tâche complet pour l'étape en cours — la même forme que celle renvoyée par le point de terminaison Get — ainsi, 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.

Request

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

Response Stream

// 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.
// 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": "019c320e-9a8f-7a1c-9c11-2a1876f8a9bb",
  "progress": 0,
  "status": "PENDING"
}

event: message
data: {
  "id": "019c320e-9a8f-7a1c-9c11-2a1876f8a9bb",
  "type": "creative-lab-keychain-build",
  "status": "SUCCEEDED",
  "progress": 100,
  "created_at": 1729123500000,
  "started_at": 1729123510000,
  "finished_at": 1729123535000,
  "expires_at": 1729382735000,
  "task_error": null,
  "consumed_credits": 20,
  "model_urls": {
    "glb": "https://assets.meshy.ai/***/tasks/019c320e-9a8f-7a1c-9c11-2a1876f8a9bb/output/model.glb?Expires=***"
  }
}

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

List Keychain Tasks

Récupère une liste paginée de vos tâches de porte-clés pour une seule étape. Le chemin d'URL sélectionne l'étape — /prototype renvoie les tâches de prototype ; /build renvoie les tâches de build. Les tâches de l'autre étape ne sont incluses dans aucune des deux réponses.

Paramètres de chemin

  • Name
    stage
    Type
    path
    Requis
    Description

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

  • Name
    sort_by
    Type
    string
    défaut -created_at
    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.

Retours

Renvoie une liste paginée de l'objet de tâche propre à chaque étape — soit l'objet de tâche de prototype porte-clés lors de la liste /prototype, soit l'objet de tâche de build porte-clés lors de la liste /build.

Request

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

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

Response (List Prototype Tasks)

[
  {
    "id": "018a210d-8ba4-705c-b111-1f1776f7f578",
    "type": "creative-lab-keychain-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 Tâche de Prototype de Porte-clés

L'objet Tâche de Prototype de Porte-clés est une unité de travail que Meshy suit afin de générer une image de concept colorisée à partir d'une photo source. Le résultat de cette étape est chaîné vers l'étape de construction via input_task_id.

Propriétés

  • Name
    id
    Type
    string
    Description

    Identifiant unique de la tâche. Bien que nous utilisions un UUID k-triable 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'id.

  • Name
    type
    Type
    string
    Description

    Type de la tâche. La valeur est creative-lab-keychain-prototype.

  • 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
    name_text
    Type
    string
    Description

    La gravure appliquée à ce porte-clés, après suppression des espaces superflus et des caractères de formatage invisibles. Absent lorsque la tâche a été créée sans name_text. Comparez cette valeur à ce que vous avez envoyé pour confirmer que le texte a survécu à l'encodage de votre client HTTP.

  • Name
    status
    Type
    string
    Description

    Statut de la tâche. Les valeurs possibles sont l'une des suivantes : 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é vaudra 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émarrage de la tâche, en millisecondes. Si la tâche n'a pas encore démarré, cette propriété vaudra 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é vaudra 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. 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. 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 des candidats d'image de concept générés par cette tâche de prototype. Actuellement, l'API renvoie toujours exactement un seul candidat ; le champ est un tableau afin que les futures révisions puissent proposer plusieurs candidats sans rupture de compatibilité.

Example Keychain Prototype Task Object

{
  "id": "018a210d-8ba4-705c-b111-1f1776f7f578",
  "type": "creative-lab-keychain-prototype",
  "name": "",
  "name_text": "Luna",
  "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 Keychain Build Task

L'objet Keychain Build Task est une unité de travail que Meshy suit afin de générer le maillage 3D final du porte-clés à partir d'une tâche de prototype réussie. Le build exécute un pipeline de relief par carte de profondeur sur l'image de concept du prototype et publie un unique artefact de maillage dans le format demandé par l'appelant.

Propriétés

  • Name
    id
    Type
    string
    Description

    Identifiant unique de la tâche.

  • Name
    type
    Type
    string
    Description

    Type de la tâche. La valeur est creative-lab-keychain-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'a pas encore démarré, 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émarrage 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. Pertinent uniquement lorsque le statut est PENDING.

  • Name
    task_error
    Type
    object
    Description

    Détails de l'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. Retourne 0 pour les tâches FAILED (les crédits sont remboursés en cas d'échec).

  • Name
    model_urls
    Type
    object
    Description

    URLs téléchargeables de l'artefact généré, indexées par nom d'artefact. Contient toujours exactement une entrée — le format demandé via le paramètre output.format de la requête de build. La clé correspond au format demandé :

    • Name
      glb
      Type
      string
      Description

      URL téléchargeable du fichier GLB. Présente lorsque output.format était glb (valeur par défaut).

    • Name
      obj
      Type
      string
      Description

      URL téléchargeable d'un bundle zip contenant model.obj, model.mtl et texture.png. Présente lorsque output.format était obj.

    • Name
      bundle_zip
      Type
      string
      Description

      URL téléchargeable d'un bundle zip contenant tous les artefacts produits par le générateur. Présente lorsque output.format était zip.

Example Keychain Build Task Object

{
  "id": "019c320e-9a8f-7a1c-9c11-2a1876f8a9bb",
  "type": "creative-lab-keychain-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,
  "model_urls": {
    "glb": "https://assets.meshy.ai/***/tasks/019c320e-9a8f-7a1c-9c11-2a1876f8a9bb/output/model.glb?Expires=***"
  }
}