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

API Creative Lab Lamp

Transformez une photo en un abat-jour imprimable en 3D en deux étapes. Une tâche de prototype génère une image conceptuelle blanc mat et la transforme en un modèle 3D. Une tâche de build, qui prend l'ID de la tâche de prototype comme input_task_id, transforme ce modèle en pièces STL imprimables. Avec le préréglage de fixture par défaut, les pièces constituent un abat-jour lampe ouvert à la base avec une plaque de base pour le système d'éclairage, ainsi que le support de fixation.

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

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

Créer une tâche de prototype Lamp

Génère une image conceptuelle mate blanche à partir d'une photo et la transforme en un modèle 3D d'abat-jour. La tâche renvoie l'image conceptuelle dans image_urls, et le modèle dans model_urls.glb avec un aperçu dans thumbnail_url. Pour construire les pièces imprimables, transmettez l'ID de cette tâche au point de terminaison de build en tant que input_task_id. Pour les champs de la tâche, consultez L'objet de tâche de prototype Lamp.

Request

POST
/openapi/creative-lab/lamp/v1/prototype
# Stage 1: concept image + 3D lampshade model from a source photo
curl https://api.meshy.ai/openapi/creative-lab/lamp/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>",
    "image_subject": "character"
  }'

Response

{
  "result": "018a210d-8ba4-705c-b111-1f1776f7f578"
}
Prototype example
Start with a source photo. The prototype returns the concept image and the 3D model that the build stage processes.
Source cat photo used as the Creative Lab Lamp input
Prototype input
Creative Lab Lamp prototype output generated from the source photo
Prototype output

Paramètres

  • Name
    image_url
    Type
    string
    Requis
    Description

    La photo sur laquelle baser l'abat-jour, sous forme d'URL publique ou de Data URI (data:image/jpeg;base64,<vos données d'image encodées en base64>).

    L'image doit être un fichier JPG, JPEG, PNG ou WebP d'au plus 20 Mo.

  • Name
    image_subject
    Type
    string
    défaut character
    Description

    Le type de sujet présent dans la photo, qui détermine la façon dont Meshy le stylise.

    Valeurs disponibles :

    • character : un personnage ou un objet unique, comme une figurine, un animal ou une mascotte
    • landscape : une scène extérieure ou un panorama, comme une montagne, un paysage urbain ou une forêt
  • Name
    name
    Type
    string
    Description

    Un nom pour la tâche, jusqu'à 100 caractères. Il est renvoyé dans le champ name de la tâche. Un nom plus long renvoie 400.

  • Name
    remove_background
    Type
    boolean
    défaut false
    Description

    Indique s'il faut supprimer l'arrière-plan de l'image de prototype. true renvoie un PNG RGBA transparent, afin que vous puissiez placer le sujet sur n'importe quel arrière-plan. Meshy construit également le modèle 3D à partir de l'image sans son arrière-plan. Si Meshy ne parvient pas à supprimer l'arrière-plan, il utilise l'image avec son arrière-plan, et la tâche réussit tout de même.

Retours

Le champ result contient l'ID de la nouvelle tâche de prototype. Récupérez la tâche ou diffusez-la jusqu'à ce que status soit SUCCEEDED. Puis transmettez l'ID au point de terminaison de build en tant que input_task_id.

Modes d'échec

  • Name
    400 - Bad Request
    Description

    La requête ne peut pas s'exécuter. Par exemple :

    • image_url est manquant.
    • L'image n'est pas un fichier JPG, JPEG, PNG ou WebP.
    • L'image est trop petite, dépasse 20 Mo, ou dépasse le nombre maximal de pixels.
    • Meshy ne parvient pas à télécharger l'image, par exemple parce que l'URL renvoie 404 ou expire.
    • Le Data URI n'est pas un base64 valide.
    • L'image a été signalée comme NSFW.
    • image_subject n'est ni character ni landscape.

    Le message d'erreur indique quel problème a été détecté. Corrigez la requête, puis envoyez-la à nouveau.

  • Name
    401 - Unauthorized
    Description

    La clé API est manquante ou invalide. Vérifiez l'en-tête Authorization.

  • Name
    402 - Payment Required
    Description

    L'un des cas suivants s'applique :

    • Le compte n'a pas assez de crédits.
    • La clé API, l'espace de travail ou le membre a atteint sa limite de crédits.
    • Le compte est sur le plan gratuit.

    Vérifiez vos crédits et votre plan, puis réessayez.

  • Name
    403 - Forbidden
    Description

    Votre équipe a activé le filtrage IP, et Meshy a signalé l'image pour propriété intellectuelle tierce. Envoyez une image que vous avez le droit d'utiliser.

  • Name
    429 - Too Many Requests
    Description

    L'une de ces limites a été atteinte :

    • Vous avez envoyé plus de requêtes que votre limite de débit ne le permet. Attendez quelques secondes, puis réessayez. Consultez Limites de débit.
    • Trop de vos tâches sont en file d'attente ou en cours d'exécution. Attendez que certaines se terminent, puis réessayez.
    • Sur un plan illimité sans crédits restants, vous avez atteint le nombre de tâches pouvant s'exécuter sans crédits. Attendez qu'une tâche se termine, ou ajoutez des crédits.
  • Name
    500 - Internal Server Error
    Description

    Meshy a rencontré une erreur serveur, par exemple parce qu'il n'a pas pu exécuter la vérification de propriété intellectuelle sur l'image. Meshy ne crée pas la tâche, et rembourse tous les crédits facturés. Réessayez la requête.


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

Create a Lamp build task

Génère les pièces imprimables en 3D à partir d'une tâche de prototype réussie. Meshy redimensionne le modèle du prototype à diameter_mm, coupe le bas à plat selon cut_amount_percent, et le creuse jusqu'à thickness_mm. Avec un préréglage de fixation, cela ouvre également le bas, ajoute une plaque de base avec le trou de fixation, et crée un support séparé pour la lumière. Pour les champs de la tâche, consultez L'objet de tâche de build Lamp.

Request

POST
/openapi/creative-lab/lamp/v1/build
# Stage 2: chain build off a succeeded prototype task
curl https://api.meshy.ai/openapi/creative-lab/lamp/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": {
      "diameter_mm": 120,
      "thickness_mm": 2,
      "light_source_preset": "bambu_mh001_60mm",
      "cut_amount_percent": 30
    },
    "output": {
      "format": "stl"
    }
  }'

Response

{
  "result": "019c320e-9a8f-7a1c-9c11-2a1876f8a9bb"
}
Build example
La tâche de build transforme le modèle 3D du prototype en pièces d'abat-jour imprimables.
Aperçu du modèle de build Creative Lab Lamp
Aperçu du modèle de build

Paramètres

  • Name
    input_task_id
    Type
    string
    Requis
    Description

    L'ID de la tâche de prototype à construire. Il doit s'agir d'une tâche créée par votre compte avec POST /openapi/creative-lab/lamp/v1/prototype, avec le statut SUCCEEDED.

    Un ID qui ne correspond pas à l'une de vos tâches de prototype Lamp issues de l'API renvoie 404, y compris un prototype créé dans l'application web.

  • Name
    name
    Type
    string
    Description

    Un nom pour la tâche, jusqu'à 100 caractères. Il est renvoyé dans le champ name de la tâche. Un nom plus long renvoie 400.

options

Paramètres facultatifs pour la forme de l'abat-jour. Chaque champ a une valeur par défaut, n'envoyez donc que ceux que vous souhaitez modifier.

  • Name
    diameter_mm
    Type
    number
    défaut 150
    Description

    La taille de la plus grande dimension de l'abat-jour, en millimètres, de 50 à 400. Meshy redimensionne le modèle de manière uniforme pour l'ajuster. 0 utilise la valeur par défaut, et toute autre valeur hors de la plage renvoie 400.

  • Name
    thickness_mm
    Type
    number
    défaut 1
    Description

    L'épaisseur de paroi de l'abat-jour, en millimètres, jusqu'à 10. 0 utilise la valeur par défaut, et une valeur négative ou une valeur supérieure à 10 renvoie 400.

  • Name
    cut_amount_percent
    Type
    number
    défaut 1
    Description

    Le pourcentage de la hauteur du modèle à couper à plat en bas, de 1 à 100. Le fond plat permet à l'abat-jour de reposer sur le plateau d'impression et laisse de la place pour la fixation. Une valeur hors de la plage renvoie 400.

  • Name
    light_source_preset
    Type
    string
    défaut bambu_mh001_60mm
    Description

    Le préréglage de fixation lumineuse, qui détermine comment Meshy construit le bas.

    Valeurs disponibles :

    • bambu_mh001_60mm : un abat-jour à fond ouvert avec une plaque de base qui a un trou de fixation de 60 mm, tous deux dans model_urls.lamp_stl, et le support de fixation dans model_urls.base_stl
    • none : un abat-jour unique et scellé dans model_urls.lamp_stl, sans model_urls.base_stl
  • Name
    fixture_offset_x_mm
    Type
    number
    défaut 0
    Description

    La distance de déplacement du trou de fixation le long de l'axe X depuis le centre de l'abat-jour, en millimètres, de -80 à 80. S'applique uniquement lorsque light_source_preset n'est pas none.

  • Name
    fixture_offset_z_mm
    Type
    number
    défaut 0
    Description

    La distance de déplacement du trou de fixation le long de l'axe Z (profondeur) depuis le centre de l'abat-jour, en millimètres, de -80 à 80. S'applique uniquement lorsque light_source_preset n'est pas none.

  • Name
    rotate_x_deg
    Type
    number
    défaut 0
    Description

    La rotation autour de l'axe X à appliquer au modèle avant que Meshy ne le traite, en degrés, de -360 à 360. Meshy applique les trois rotations comme angles d'Euler XYZ autour du centre du modèle.

  • Name
    rotate_y_deg
    Type
    number
    défaut 0
    Description

    La rotation autour de l'axe Y à appliquer au modèle avant que Meshy ne le traite, en degrés, de -360 à 360.

  • Name
    rotate_z_deg
    Type
    number
    défaut 0
    Description

    La rotation autour de l'axe Z à appliquer au modèle avant que Meshy ne le traite, en degrés, de -360 à 360.

  • Name
    include_result_json
    Type
    boolean
    défaut false
    Description

    Indique s'il faut ajouter un fichier result.json au paquet zip, avec le nom du pipeline exécuté, les avertissements et les chemins des fichiers. Nécessite que output.format soit défini sur zip. true avec stl renvoie 400.

output

Facultatif. Définit les fichiers que le build renvoie.

  • Name
    format
    Type
    string
    défaut stl
    Description

    Les fichiers que le build renvoie.

    Valeurs disponibles :

    • stl : model_urls.lamp_stl, l'abat-jour avec sa plaque de base lorsqu'il y a un préréglage de fixation, et model_urls.base_stl lorsque light_source_preset n'est pas none
    • zip : un fichier zip dans model_urls.bundle_zip, avec lamp.stl, et base.stl et result.json lorsqu'ils s'appliquent

Retours

Le champ result contient l'ID de la nouvelle tâche de build. Récupérez la tâche ou diffusez-la en continu jusqu'à ce que status soit SUCCEEDED. Puis téléchargez les fichiers depuis model_urls.

Modes d'échec

  • Name
    400 - Bad Request
    Description

    La requête ne peut pas s'exécuter. Par exemple :

    • input_task_id est manquant ou n'est pas un ID de tâche valide.
    • Le statut de la tâche de prototype n'est pas SUCCEEDED. S'il est toujours en cours, attendez et réessayez. S'il a échoué ou a été annulé, créez une nouvelle tâche de prototype.
    • La tâche de prototype a réussi mais n'a pas de modèle 3D. Créez une nouvelle tâche de prototype.
    • Un champ options est hors de sa plage ou n'est pas une valeur disponible.
    • output.format n'est pas stl ou zip, ou include_result_json est true sans zip.

    Le message d'erreur indique quel problème a été trouvé.

  • Name
    401 - Unauthorized
    Description

    La clé API est manquante ou invalide. Vérifiez l'en-tête Authorization.

  • Name
    402 - Payment Required
    Description

    L'une de ces conditions s'applique :

    • Le compte n'a pas assez de crédits.
    • La clé API, l'espace de travail ou le membre a atteint sa limite de crédits.
    • Le compte est sur le plan gratuit.

    Vérifiez vos crédits et votre plan, puis réessayez.

  • Name
    404 - Not Found
    Description

    input_task_id ne correspond à aucune tâche de prototype Lamp créée par votre compte avec l'API. Un prototype créé dans l'application web renvoie également 404. Envoyez l'ID result provenant d'une réponse de création de prototype.

  • Name
    429 - Too Many Requests
    Description

    L'une de ces limites a été atteinte :

    • Vous avez envoyé plus de requêtes que votre limite de débit ne le permet. Attendez quelques secondes, puis réessayez. Consultez Limites de débit.
    • Trop de vos tâches sont en file d'attente ou en cours d'exécution. Attendez que certaines se terminent, puis réessayez.
    • Sur un plan illimité sans crédits restants, vous avez atteint le nombre de tâches pouvant s'exécuter sans crédits. Attendez qu'une tâche se termine, ou ajoutez des crédits.

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

Récupérer une tâche Lamp

Renvoie une tâche de prototype ou de build. Le chemin doit correspondre à l'étape de la tâche. Une tâche de build demandée via /prototype/:id renvoie 404, tout comme une tâche de prototype demandée via /build/:id.

Pour les champs, voir L'objet tâche de prototype Lamp et L'objet tâche de build Lamp.

Request

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

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

Prototype Response

{
  "id": "018a210d-8ba4-705c-b111-1f1776f7f578",
  "type": "creative-lab-lamp-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": 30,
  "model_urls": {
    "glb": "https://assets.meshy.ai/***/tasks/018a210d-8ba4-705c-b111-1f1776f7f578/output/model.glb?Expires=***"
  },
  "thumbnail_url": "https://assets.meshy.ai/***/tasks/018a210d-8ba4-705c-b111-1f1776f7f578/output/preview.png?Expires=***",
  "image_urls": [
    "https://assets.meshy.ai/***/concept.png?Expires=***"
  ]
}

Build Response

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

Paramètres

  • Name
    id
    Type
    path
    Description

    L'ID de la tâche provenant de la réponse de création.

Retours

L'objet tâche de prototype ou l'objet tâche de build, selon l'étape indiquée dans le chemin.

Modes d'échec

  • Name
    400 - Bad Request
    Description

    id n'est pas un ID de tâche valide. Envoyez l'ID result provenant de la réponse de création.

  • Name
    403 - Forbidden
    Description

    Votre équipe a activé le filtrage IP, et Meshy a signalé l'image de la tâche de prototype pour propriété intellectuelle tierce. Les tâches de build et les équipes sur le plan Enterprise n'obtiennent pas cette erreur. Créez une tâche de prototype à partir d'une image que vous avez le droit d'utiliser.

  • Name
    404 - Not Found
    Description

    Aucune tâche Lamp avec cet ID n'appartient à votre compte, ou l'étape de la tâche ne correspond pas au chemin. Vérifiez l'ID, et utilisez /prototype ou /build pour correspondre à la tâche.

  • Name
    500 - Internal Server Error
    Description

    Meshy n'a pas pu exécuter la vérification de propriété intellectuelle. Réessayez la requête.


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

Supprimer une tâche Lamp

Annule une tâche Lamp. Annuler une tâche PENDING rembourse ses crédits. Une tâche IN_PROGRESS est annulée sans remboursement, car un worker l'a déjà prise en charge. Une tâche ayant un statut final (SUCCEEDED, FAILED ou CANCELED) ne peut pas être annulée.

Le chemin doit correspondre à l'étape de la tâche. Par exemple, un DELETE sur /prototype/:id avec l'ID d'une tâche de build renvoie 404.

Request

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

Response

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

Paramètres de chemin

  • Name
    id
    Type
    path
    Description

    L'ID de la tâche à annuler.

Retour

204 No Content avec un corps vide.

Modes d'échec

  • Name
    400 - Bad Request
    Description

    L'un des cas suivants s'applique :

    • id n'est pas un ID de tâche valide. Envoyez l'ID result provenant de la réponse de création.
    • La tâche a déjà un statut final (SUCCEEDED, FAILED ou CANCELED), elle ne peut donc pas être annulée.
  • Name
    404 - Not Found
    Description

    Aucune tâche Lamp avec cet ID n'appartient à votre compte, ou l'étape de la tâche ne correspond pas au chemin. Vérifiez l'ID et utilisez /prototype ou /build pour faire correspondre la tâche.


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

Diffuser les mises à jour d'une tâche Lamp

Diffuse les mises à jour d'une tâche Lamp sous forme d'événements envoyés par le serveur (SSE). Le chemin doit correspondre à l'étape de la tâche. Si ce n'est pas le cas, par exemple l'ID d'une tâche de build sur /prototype/:id/stream, le flux envoie un événement error avec status_code: 404 puis se ferme.

Request

GET
/openapi/creative-lab/lamp/v1/build/019c320e-9a8f-7a1c-9c11-2a1876f8a9bb/stream
curl -N https://api.meshy.ai/openapi/creative-lab/lamp/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 following PENDING frame is shortened 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-lamp-build",
  "status": "SUCCEEDED",
  "progress": 100,
  "created_at": 1729123500000,
  "started_at": 1729123510000,
  "finished_at": 1729123535000,
  "expires_at": 1729382735000,
  "task_error": null,
  "consumed_credits": 6,
  "model_urls": {
    "lamp_stl": "https://assets.meshy.ai/***/tasks/019c320e-9a8f-7a1c-9c11-2a1876f8a9bb/output/lamp.stl?Expires=***",
    "base_stl": "https://assets.meshy.ai/***/tasks/019c320e-9a8f-7a1c-9c11-2a1876f8a9bb/output/base.stl?Expires=***"
  }
}

Paramètres

  • Name
    id
    Type
    path
    Description

    L'ID de la tâche issu de la réponse de création.

Retours

Un flux d'objets de tâche prototype ou build. Chaque événement contient l'objet de tâche complet, tel que renvoyé par Récupérer une tâche Lamp. Tant que la tâche est PENDING ou IN_PROGRESS, ses champs de sortie restent vides (null, [] ou {}), et finished_at vaut null.

Si le filtrage IP bloque le résultat de la tâche, le flux envoie à sa place un événement error, avec le status_code qu'une requête get renverrait.


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

Lister les tâches Lamp

Renvoie vos tâches lampe d'une étape, une page à la fois. Le chemin sélectionne l'étape. /prototype ne renvoie que les tâches de prototype, et /build ne renvoie que les tâches de construction.

Request

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

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

Response (List Prototype Tasks)

[
  {
    "id": "018a210d-8ba4-705c-b111-1f1776f7f578",
    "type": "creative-lab-lamp-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": 30,
    "model_urls": {
      "glb": "https://assets.meshy.ai/***/tasks/018a210d-8ba4-705c-b111-1f1776f7f578/output/model.glb?Expires=***"
    },
    "thumbnail_url": "https://assets.meshy.ai/***/tasks/018a210d-8ba4-705c-b111-1f1776f7f578/output/preview.png?Expires=***",
    "image_urls": [
      "https://assets.meshy.ai/***/concept.png?Expires=***"
    ]
  }
]

Paramètres de chemin

  • Name
    stage
    Type
    path
    Requis
    Description

    L'étape à lister, prototype ou build.

Paramètres de requête

  • Name
    page_num
    Type
    integer
    défaut 1
    Description

    La page à renvoyer, de 1 à 255. 0 renvoie la première page. Une valeur en dehors de 0 à 255 renvoie 400.

  • Name
    page_size
    Type
    integer
    défaut 10
    Description

    Nombre de tâches par page, jusqu'à 100. Une valeur de 101 à 255 renvoie 100 tâches, et 0 utilise la valeur par défaut. Une valeur en dehors de 0 à 255 renvoie 400.

  • Name
    sort_by
    Type
    string
    défaut -created_at
    Description

    L'ordre de tri.

    Valeurs disponibles :

    • -created_at : les plus récentes d'abord
    • +created_at : les plus anciennes d'abord

Retours

Un tableau d'objets de tâche de prototype ou d'objets de tâche de construction, correspondant à l'étape indiquée dans le chemin.


L'objet de tâche prototype lampe

Une tâche de prototype génère une image de concept blanc mat à partir d'une photo et la transforme en modèle 3D. Pour créer les pièces imprimables, transmettez l'ID de la tâche au point de terminaison de build en tant que input_task_id.

Propriétés

Example Lamp Prototype Task Object

{
  "id": "018a210d-8ba4-705c-b111-1f1776f7f578",
  "type": "creative-lab-lamp-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": 30,
  "model_urls": {
    "glb": "https://assets.meshy.ai/***/tasks/018a210d-8ba4-705c-b111-1f1776f7f578/output/model.glb?Expires=***"
  },
  "thumbnail_url": "https://assets.meshy.ai/***/tasks/018a210d-8ba4-705c-b111-1f1776f7f578/output/preview.png?Expires=***",
  "image_urls": [
    "https://assets.meshy.ai/***/concept.png?Expires=***"
  ]
}
  • Name
    id
    Type
    string
    Description

    L'ID de la tâche. Ne vous fiez pas à son format.

  • Name
    type
    Type
    string
    Description

    Le type de tâche, toujours creative-lab-lamp-prototype.

  • Name
    name
    Type
    string
    Description

    Le name que vous avez envoyé lors de la création de la tâche, ou "" si vous n'en avez pas envoyé.

  • Name
    status
    Type
    string
    Description

    Le statut de la tâche.

    Valeurs disponibles :

    • PENDING : en attente dans la file
    • IN_PROGRESS : génération du résultat en cours
    • SUCCEEDED : final, avec le résultat
    • FAILED : final, avec la raison dans task_error
    • CANCELED : final, sans résultat
  • Name
    progress
    Type
    integer
    Description

    Pourcentage du travail effectué, de 0 à 100. Il est à 0 jusqu'au démarrage de la tâche et à 100 quand elle réussit.

  • Name
    created_at
    Type
    timestamp
    Description

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

  • Name
    started_at
    Type
    timestamp
    Description

    Heure à laquelle un worker a démarré la tâche, en millisecondes Unix. null jusque-là.

  • Name
    finished_at
    Type
    timestamp
    Description

    Heure à laquelle la tâche a atteint un statut final, en millisecondes Unix. null jusque-là.

  • Name
    expires_at
    Type
    timestamp
    Description

    Heure d'expiration du résultat de la tâche, en millisecondes Unix. C'est 3 jours après finished_at, ou 3 jours après created_at tant que la tâche n'est pas terminée. Pour les comptes Entreprise, qui conservent les résultats de l'API indéfiniment, c'est environ 100 ans plus tard. Voir Conservation des ressources.

  • Name
    preceding_tasks
    Type
    integer
    Description

    La position de la tâche dans la file tant qu'elle est PENDING. 1 signifie qu'elle démarre ensuite. 0 une fois que la tâche quitte la file, et toujours 0 dans les résultats de liste.

  • Name
    task_error
    Type
    object
    Description

    La raison de l'échec de la tâche. null sauf si status est FAILED. Voir Erreurs.

  • Name
    consumed_credits
    Type
    integer
    Description

    Nombre de crédits facturés pour la tâche, après tout remboursement éventuel. Une requête qui renvoie une erreur n'est pas facturée. Une tâche échouée vaut 0, car Meshy la rembourse. L'annulation ne rembourse une tâche que tant qu'elle est PENDING. Si Meshy ne peut pas lire la charge, une réponse de récupération ou de flux omet le champ, et une requête de liste renvoie 500. Dans ce cas, réessayez la requête.

  • Name
    model_urls
    Type
    object
    Description

    URLs de téléchargement du modèle 3D généré à partir de l'image de concept. {} jusqu'à la réussite de la tâche.

    • Name
      glb
      Type
      string
      Description

      URL de téléchargement du modèle d'abat-jour, sous forme de fichier GLB. L'étape de build transforme ce modèle en pièces imprimables.

  • Name
    thumbnail_url
    Type
    string
    Description

    URL de téléchargement d'une image d'aperçu du modèle 3D. "" jusqu'à la réussite de la tâche.

  • Name
    image_urls
    Type
    array of strings
    Description

    URLs de téléchargement de l'image de concept. Le tableau contient une URL une fois la tâche réussie, et est vide jusque-là.


L'objet tâche de build lampe

Une tâche de build transforme le modèle 3D d'une tâche de prototype réussie en pièces d'abat-jour imprimables. Meshy évide le modèle et coupe le fond à plat. Avec un préréglage de fixation, elle ouvre également le fond et ajoute la plaque de base et le support de fixation.

Propriétés

Example Lamp Build Task Object

{
  "id": "019c320e-9a8f-7a1c-9c11-2a1876f8a9bb",
  "type": "creative-lab-lamp-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": 6,
  "model_urls": {
    "lamp_stl": "https://assets.meshy.ai/***/tasks/019c320e-9a8f-7a1c-9c11-2a1876f8a9bb/output/lamp.stl?Expires=***",
    "base_stl": "https://assets.meshy.ai/***/tasks/019c320e-9a8f-7a1c-9c11-2a1876f8a9bb/output/base.stl?Expires=***"
  }
}
  • Name
    id
    Type
    string
    Description

    L'ID de la tâche. Ne vous fiez pas à son format.

  • Name
    type
    Type
    string
    Description

    Le type de tâche, toujours creative-lab-lamp-build.

  • Name
    name
    Type
    string
    Description

    Le name que vous avez envoyé lors de la création de la tâche, ou "" si vous n'en avez pas envoyé.

  • Name
    status
    Type
    string
    Description

    Le statut de la tâche.

    Valeurs disponibles :

    • PENDING : en attente dans la file
    • IN_PROGRESS : génération du résultat en cours
    • SUCCEEDED : définitif, avec le résultat
    • FAILED : définitif, avec la raison dans task_error
    • CANCELED : définitif, sans résultat
  • Name
    progress
    Type
    integer
    Description

    Pourcentage du travail effectué, de 0 à 100. C'est 0 jusqu'à ce que la tâche démarre et 100 quand elle réussit.

  • Name
    created_at
    Type
    timestamp
    Description

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

  • Name
    started_at
    Type
    timestamp
    Description

    Heure à laquelle un worker a démarré la tâche, en millisecondes Unix. null jusque-là.

  • Name
    finished_at
    Type
    timestamp
    Description

    Heure à laquelle la tâche a atteint un statut définitif, en millisecondes Unix. null jusque-là.

  • Name
    expires_at
    Type
    timestamp
    Description

    Heure à laquelle le résultat de la tâche expire, en millisecondes Unix. C'est 3 jours après finished_at, ou 3 jours après created_at jusqu'à ce que la tâche se termine. Pour les comptes Enterprise, qui conservent les résultats de l'API indéfiniment, c'est environ 100 ans plus tard. Voir Conservation des ressources.

  • Name
    preceding_tasks
    Type
    integer
    Description

    La position de la tâche dans la file pendant qu'elle est PENDING. 1 signifie qu'elle démarre ensuite. 0 une fois que la tâche quitte la file, et toujours 0 dans les résultats de liste.

  • Name
    task_error
    Type
    object
    Description

    Pourquoi la tâche a échoué. null sauf si status est FAILED. Voir Erreurs.

  • Name
    consumed_credits
    Type
    integer
    Description

    Nombre de crédits facturés pour la tâche, après remboursement éventuel. Une requête qui renvoie une erreur n'est pas facturée. Une tâche échouée vaut 0, car Meshy la rembourse. L'annulation ne rembourse une tâche que pendant qu'elle est PENDING. Si Meshy ne peut pas lire la charge, une réponse get ou stream omet le champ, et une requête de liste renvoie 500. Dans ce cas, réessayez la requête.

  • Name
    model_urls
    Type
    object
    Description

    URL de téléchargement pour les fichiers imprimables. Les clés présentes dépendent de output.format et de options.light_source_preset.

    • Name
      lamp_stl
      Type
      string
      Description

      URL de téléchargement pour lamp.stl. Avec un préréglage de fixation, il s'agit de l'abat-jour à fond ouvert avec la plaque de base qui a le trou de fixation. Avec options.light_source_preset défini sur none, il s'agit d'un seul abat-jour scellé. Présent quand output.format est stl.

    • Name
      base_stl
      Type
      string
      Description

      URL de téléchargement pour base.stl, le support du dispositif d'éclairage. Présent quand output.format est stl et que options.light_source_preset n'est pas none.

    • Name
      bundle_zip
      Type
      string
      Description

      URL de téléchargement pour un fichier zip contenant lamp.stl, ainsi que base.stl et result.json quand ils s'appliquent. Présent quand output.format est zip, auquel cas lamp_stl et base_stl sont omis.