Creative Lab — API de llavero

Convierte una foto de origen en un medallón de llavero apto para impresión 3D — un relieve de profundidad coloreado con forma de insignia — en dos etapas: prototipo genera una imagen conceptual coloreada a partir de tu foto de entrada, y luego construcción convierte esa imagen conceptual en un modelo 3D de relieve. Las dos etapas están vinculadas mediante input_task_id.

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

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

Crear una tarea de prototipo de llavero

Genera una única imagen de concepto coloreada a partir de la foto de origen. El ID de tarea devuelto es lo que pasas como input_task_id al endpoint de build. Consulta El objeto de tarea de prototipo de llavero para conocer la forma de la respuesta.

Parámetros

  • Name
    image_url
    Type
    string
    Requerido
    Description

    Foto de origen para que Meshy coloree y convierta en una imagen de concepto lista para llavero. Actualmente admitimos los formatos .jpg, .jpeg, .png y .webp.

    Hay dos formas de proporcionar la imagen:

    • URL de acceso público: Una URL accesible desde internet públicamente.
    • Data URI: Un data URI de la imagen codificado en base64. Ejemplo de un data URI: data:image/jpeg;base64,<tus datos de imagen codificados en base64>.
  • Name
    name
    Type
    string
    Description

    Nombre de tarea opcional para fines de visualización. Máximo 100 caracteres.

    Esto etiqueta la tarea en tu panel de control y listas de tareas. No se graba en el llavero — usa name_text para eso.

  • Name
    name_text
    Type
    string
    Description

    Texto para grabar en el llavero, como el nombre de una mascota o de una persona. Máximo 10 caracteres, contados como caracteres Unicode en lugar de bytes, por lo que se acepta un nombre en chino, japonés o coreano de 10 caracteres. Omítelo para producir un llavero sin grabado.

    Los espacios en blanco circundantes se recortan y los caracteres de formato invisibles se eliminan antes de que se use el texto. El valor resultante se devuelve como name_text en el objeto de tarea de prototipo, para que puedas confirmar exactamente qué se grabará antes de pagar por la etapa de build.

    El grabado se aplica aquí, en la etapa de prototipo. La etapa de build lo hereda automáticamente y no acepta un name_text propio.

  • Name
    remove_background
    Type
    boolean
    predeterminado false
    Description

    Cuando se establece en true, la imagen de prototipo se devuelve como un PNG RGBA transparente con el fondo eliminado, para que puedas componer el sujeto sobre cualquier fondo.

    Esto controla únicamente la imagen que devuelve este endpoint. Es independiente de la opción de build del mismo nombre (predeterminado true), que controla la eliminación del fondo antes del relieve.

Devuelve

La propiedad result de la respuesta contiene el id de la tarea de la tarea de prototipo de llavero recién creada. Consulta periódicamente el endpoint Obtener una tarea o suscríbete al stream hasta que la tarea alcance el estado SUCCEEDED, y luego pasa ese ID al endpoint de build como input_task_id.

Modos de fallo

  • Name
    400 - Bad Request
    Description

    La solicitud fue inaceptable. Causas comunes:

    • Parámetro faltante: image_url es obligatorio.
    • Formato de imagen no válido: El image_url proporcionado no tiene un formato compatible (.jpg, .jpeg, .png, .webp).
    • Dimensiones de imagen fuera de rango: La imagen es demasiado pequeña, excede el tamaño máximo de archivo o excede el recuento máximo de píxeles.
    • URL inaccesible: No se pudo descargar el image_url (404 o timeout).
    • Data URI no válido: La cadena base64 está mal formada.
    • Grabado demasiado largo: name_text tiene más de 10 caracteres. La solicitud se rechaza en lugar de truncarse, por lo que nunca se te cobra por un llavero grabado con un nombre acortado.
    • Contenido marcado: La imagen de entrada fue marcada por la moderation de NSFW o de propiedad intelectual, o el grabado de name_text fue marcado por la moderation de NSFW. El grabado solo se examina en busca de contenido NSFW — el examen de propiedad intelectual se aplica a la imagen.
  • Name
    401 - Unauthorized
    Description

    Error de autenticación. Por favor, verifica tu API key.

  • Name
    402 - Payment Required
    Description

    Créditos insuficientes para realizar esta tarea.

  • Name
    429 - Too Many Requests
    Description

    Has superado tu límite de tasa.

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

Crear una tarea de compilación de Keychain

Genera el medallón de llavero final apto para impresión 3D a partir de una tarea de prototipo exitosa. La compilación ejecuta un pipeline de relieve basado en mapa de profundidad sobre la imagen conceptual coloreada del prototipo y entrega un único artefacto de malla en el formato que solicites. Consulta El objeto de tarea de compilación de Keychain para conocer la forma de la respuesta.

Parámetros

  • Name
    input_task_id
    Type
    string
    Requerido
    Description

    El ID de tarea de una tarea de prototipo creada a través de este mismo endpoint de OpenAPI. El prototipo debe haber sido creado con la misma clave de API, debe haber alcanzado el estado SUCCEEDED y debe haber producido exactamente una imagen candidata.

    Las tareas de prototipo creadas a través de la webapp no se aceptan: el endpoint de compilación acepta únicamente tareas de prototipo producidas por POST /openapi/creative-lab/keychain/v1/prototype y rechaza cualquier otra fuente con 404.

  • Name
    name
    Type
    string
    Description

    Nombre de tarea opcional para fines de visualización. Máximo 100 caracteres.

options

Parámetros de ajuste opcionales para la geometría de relieve. Cada campo tiene un valor predeterminado razonable: envía solo los que quieras sobrescribir.

  • Name
    badge_shape
    Type
    string
    predeterminado circle
    Description

    Silueta del contorno del medallón del llavero. Valores disponibles:

    • circle (predeterminado)
    • rounded-rect
    • hexagon
    • shield
    • star
  • Name
    size_mm
    Type
    number
    predeterminado 40
    Description

    Longitud del lado del cuadrado delimitador del llavero, en milímetros. Rango: (0, 400].

  • Name
    relief_height_mm
    Type
    number
    predeterminado 2.2
    Description

    Altura máxima del relieve sobre la base, en milímetros. Rango: [0, 20].

  • Name
    relief_offset_mm
    Type
    number
    predeterminado 0
    Description

    Desplazamiento vertical aplicado al relieve antes de la extrusión, en milímetros. Rango: [0, 20].

  • Name
    base_thickness_mm
    Type
    number
    predeterminado 0.1
    Description

    Grosor de la placa base plana detrás del relieve, en milímetros. Rango: [0, 20].

  • Name
    has_closed_back
    Type
    boolean
    predeterminado true
    Description

    Indica si la parte posterior del medallón está sellada como una superficie cerrada. Establece en false para una carcasa abierta.

  • Name
    relief_curve
    Type
    string
    predeterminado linear
    Description

    Curva de transferencia que mapea los valores del mapa de profundidad a la altura del relieve. Valores disponibles:

    • linear (predeterminado)
    • gamma
    • s-curve
  • Name
    curve_param
    Type
    number
    predeterminado 1.0
    Description

    Parámetro de forma para la curva de transferencia (solo tiene sentido cuando relief_curve es gamma). Rango: (0, 10].

  • Name
    invert_depth
    Type
    boolean
    predeterminado false
    Description

    Invierte la interpretación del mapa de profundidad de modo que las regiones más oscuras se conviertan en mayor relieve.

  • Name
    smoothing
    Type
    number
    predeterminado 0.24
    Description

    Intensidad de suavizado aplicada al mapa de profundidad antes de la extracción del relieve. Rango: [0, 10].

  • Name
    relief_scale
    Type
    number
    predeterminado 1.0
    Description

    Multiplicador de escala vertical aplicado además de relief_height_mm. Rango: (0, 10].

  • Name
    depth_threshold
    Type
    number
    predeterminado 0.1
    Description

    Umbral de paso bajo para los valores del mapa de profundidad; todo lo que esté por debajo se fija en cero. Rango: [0, 1].

  • Name
    remove_background
    Type
    boolean
    predeterminado true
    Description

    Elimina automáticamente el fondo de la imagen conceptual del prototipo antes de aplicar el relieve.

    Distinto del parámetro de prototipo con el mismo nombre (predeterminado false), que controla si la propia imagen de prototipo se devuelve con transparencia.

  • Name
    export_resolution
    Type
    integer
    predeterminado 512
    Description

    Resolución de malla utilizada para la exportación. Rango: [64, 2048].

output

Selector opcional de formato de salida. El valor predeterminado es glb.

  • Name
    format
    Type
    string
    predeterminado glb
    Description

    Paquete de artefactos devuelto por la compilación. Valores disponibles:

    • glb (predeterminado) — devuelve un único model.glb en model_urls.glb.
    • obj — comprime model.obj + model.mtl + texture.png en un ZIP y devuelve el paquete en model_urls.obj.
    • zip — comprime todos los artefactos que emite el generador y devuelve el paquete en model_urls.bundle_zip.

Devuelve

La propiedad result de la respuesta contiene el id de tarea de la tarea de compilación de Keychain recién creada. Consulta periódicamente el endpoint Obtener una tarea o suscríbete al stream hasta que la tarea alcance el estado SUCCEEDED, y luego descarga el artefacto desde la única entrada en model_urls.

Modos de fallo

  • Name
    400 - Bad Request
    Description

    La solicitud no fue aceptable. Causas comunes:

    • Falta un parámetro: input_task_id es obligatorio.
    • UUID no válido: input_task_id no es un UUID válido.
    • La tarea padre no tuvo éxito: La tarea de prototipo referenciada aún no ha alcanzado el estado SUCCEEDED.
    • Sin candidato: La tarea de prototipo tuvo éxito pero no produjo ninguna imagen candidata.
    • Opciones fuera de rango: Uno de los campos de options estaba fuera de su rango permitido o conjunto de valores enumerados.
  • Name
    401 - Unauthorized
    Description

    Error de autenticación. Comprueba tu clave de API.

  • Name
    402 - Payment Required
    Description

    Créditos insuficientes para realizar esta tarea.

  • Name
    404 - Not Found
    Description

    La tarea de prototipo referenciada no existe, pertenece a otro usuario o fue creada a través de la webapp (solo las tareas de prototipo en modo API se encadenan en la compilación).

  • Name
    429 - Too Many Requests
    Description

    Has superado tu límite de tasa.

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
The build task converts the selected prototype image into a 3D-printable keychain model.
Creative Lab Keychain build model preview
Build model preview

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

Recuperar una tarea de llavero

Recupera una tarea de prototipo o de construcción dado un id de tarea válido. La ruta de la URL debe coincidir con la etapa de la tarea: una tarea de construcción obtenida a través de /prototype/:id devuelve 404, y viceversa.

Consulta El objeto de tarea de prototipo de llavero y El objeto de tarea de construcción de llavero para conocer las formas de las respuestas.

Parámetros

  • Name
    id
    Type
    path
    Description

    Identificador único de la tarea de llavero que se desea recuperar.

Devuelve

La respuesta contiene el objeto de tarea de llavero. La forma depende de qué etapa se haya solicitado.

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

Eliminar una tarea de Keychain

Cancela una tarea de llavero. Si la tarea todavía está PENDING, los créditos consumidos al momento de la creación se reembolsan. Las tareas que ya están IN_PROGRESS se cancelan sin reembolso (es posible que el worker ya esté consumiendo recursos). Las tareas que ya han alcanzado un estado terminal (SUCCEEDED, FAILED, CANCELED) no se pueden cancelar.

La ruta de la URL debe coincidir con la etapa de la tarea — DELETE en /prototype/:buildId devuelve 404.

Parámetros de ruta

  • Name
    id
    Type
    path
    Description

    Identificador único de la tarea de llavero a cancelar.

Devuelve

Devuelve 204 No Content en caso de éxito con un cuerpo vacío.

Modos de fallo

  • Name
    400 - Bad Request
    Description

    La tarea ya se encuentra en un estado terminal y no se puede cancelar.

  • Name
    404 - Not Found
    Description

    La tarea no existe, pertenece a un usuario diferente, o su etapa no coincide con la ruta de la 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

Transmitir una tarea de llavero

Transmite actualizaciones en tiempo real de una tarea de llavero mediante Server-Sent Events (SSE). La ruta de la URL debe coincidir con la etapa de la tarea — abrir un stream en /prototype/:buildId/stream emite un único event: error payload con status_code: 404 y cierra el stream.

Parámetros

  • Name
    id
    Type
    path
    Description

    Identificador único de la tarea de llavero que se va a transmitir.

Devuelve

Devuelve un stream de objetos de tarea Keychain Prototype o Keychain Build como eventos Server-Sent Events. Cada frame contiene el objeto de tarea completo para la etapa — la misma forma que devuelve el endpoint Get — de modo que, mientras la tarea esté en PENDING o IN_PROGRESS, los campos de salida simplemente aún no están poblados (null, [] o {}) y finished_at es 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

Recupera una lista paginada de tus tareas de llavero para una única etapa. La ruta de la URL selecciona la etapa — /prototype devuelve tareas de prototipo; /build devuelve tareas de construcción. Las tareas de la otra etapa no se incluyen en ninguna de las respuestas.

Parámetros de ruta

  • Name
    stage
    Type
    path
    Requerido
    Description

    prototype o build. La colección devuelve solo las tareas cuya etapa coincide con la URL — obtener /prototype nunca devuelve tareas de construcción y viceversa.

Parámetros de consulta

  • Name
    page_num
    Type
    integer
    predeterminado 1
    Description

    Número de página para la paginación.

  • Name
    page_size
    Type
    integer
    predeterminado 10
    Description

    Límite del tamaño de página. El máximo permitido es 100 elementos.

  • Name
    sort_by
    Type
    string
    predeterminado -created_at
    Description

    Campo por el que ordenar. Valores disponibles:

    • +created_at: Ordenar por hora de creación en orden ascendente.
    • -created_at: Ordenar por hora de creación en orden descendente.

Devuelve

Devuelve una lista paginada del objeto de tarea por etapa — ya sea el objeto de tarea de prototipo de llavero al listar /prototype, o el objeto de tarea de construcción de llavero al listar /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=***"
    ]
  }
]

El objeto Keychain Prototype Task

El objeto Keychain Prototype Task es una unidad de trabajo que Meshy rastrea para generar una imagen conceptual coloreada a partir de una foto de origen. La salida de esta etapa se encadena a la etapa de construcción a través de input_task_id.

Propiedades

  • Name
    id
    Type
    string
    Description

    Identificador único de la tarea. Aunque usamos un UUID k-ordenable para los ids de tareas como detalle de implementación, no debes hacer ninguna suposición sobre el formato del id.

  • Name
    type
    Type
    string
    Description

    Tipo de la tarea. El valor es creative-lab-keychain-prototype.

  • Name
    name
    Type
    string
    Description

    El nombre de la tarea proporcionado al crear la tarea. Cadena vacía si no se proporcionó ningún nombre.

  • Name
    name_text
    Type
    string
    Description

    El grabado aplicado a este llavero, después de recortar y eliminar caracteres de formato invisibles. Ausente cuando la tarea se creó sin name_text. Compáralo con lo que enviaste para confirmar que el texto sobrevivió a la codificación de tu cliente HTTP.

  • Name
    status
    Type
    string
    Description

    Estado de la tarea. Los valores posibles son uno de PENDING, IN_PROGRESS, SUCCEEDED, FAILED, CANCELED.

  • Name
    progress
    Type
    integer
    Description

    Progress de la tarea. Si la tarea aún no ha comenzado, esta propiedad será 0. Una vez que la tarea haya tenido éxito, se convertirá en 100.

  • Name
    created_at
    Type
    timestamp
    Description

    Marca de tiempo de cuándo se creó la tarea, en milisegundos.

  • Name
    started_at
    Type
    timestamp
    Description

    Marca de tiempo de cuándo se inició la tarea, en milisegundos. Si la tarea aún no se ha iniciado, esta propiedad será 0.

  • Name
    finished_at
    Type
    timestamp
    Description

    Marca de tiempo de cuándo finalizó la tarea, en milisegundos. Si la tarea aún no ha finalizado, esta propiedad será 0.

  • Name
    expires_at
    Type
    timestamp
    Description

    Marca de tiempo de cuándo caduca el resultado de la tarea, en milisegundos.

  • Name
    preceding_tasks
    Type
    integer
    Description

    El recuento de tareas precedentes.

  • Name
    task_error
    Type
    object
    Description

    Detalles del error para tareas fallidas. Consulta Errores para la referencia completa del objeto task_error.

  • Name
    consumed_credits
    Type
    integer
    Description

    El número de créditos consumidos por esta tarea. Presente cuando el estado de la tarea es PENDING, IN_PROGRESS o SUCCEEDED. Devuelve 0 para las tareas FAILED (los créditos se reembolsan en caso de fallo).

  • Name
    image_urls
    Type
    array of strings
    Description

    URLs descargables para los candidatos de imagen conceptual generados por esta tarea de prototipo. Actualmente la API siempre devuelve exactamente un candidato; el campo es un arreglo para que futuras revisiones puedan mostrar múltiples candidatos sin un cambio disruptivo.

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=***"
  ]
}

El objeto Keychain Build Task

El objeto Keychain Build Task es una unidad de trabajo que Meshy supervisa para generar la malla 3D final del llavero a partir de una tarea de prototipo exitosa. La compilación ejecuta un pipeline de relieve por mapa de profundidad sobre la imagen conceptual del prototipo y publica un único artefacto de malla en el formato solicitado por quien realiza la llamada.

Propiedades

  • Name
    id
    Type
    string
    Description

    Identificador único de la tarea.

  • Name
    type
    Type
    string
    Description

    Tipo de la tarea. El valor es creative-lab-keychain-build.

  • Name
    name
    Type
    string
    Description

    El nombre de la tarea proporcionado al crearla. Cadena vacía si no se proporcionó ningún nombre.

  • Name
    status
    Type
    string
    Description

    Estado de la tarea. Los valores posibles son uno de PENDING, IN_PROGRESS, SUCCEEDED, FAILED, CANCELED.

  • Name
    progress
    Type
    integer
    Description

    Progreso de la tarea. Si la tarea aún no ha comenzado, esta propiedad será 0. Una vez que la tarea se haya completado con éxito, pasará a ser 100.

  • Name
    created_at
    Type
    timestamp
    Description

    Marca de tiempo de cuándo se creó la tarea, en milisegundos.

  • Name
    started_at
    Type
    timestamp
    Description

    Marca de tiempo de cuándo se inició la tarea, en milisegundos.

  • Name
    finished_at
    Type
    timestamp
    Description

    Marca de tiempo de cuándo finalizó la tarea, en milisegundos.

  • Name
    expires_at
    Type
    timestamp
    Description

    Marca de tiempo de cuándo caduca el resultado de la tarea, en milisegundos.

  • Name
    preceding_tasks
    Type
    integer
    Description

    El número de tareas precedentes. Solo tiene sentido cuando el estado es PENDING.

  • Name
    task_error
    Type
    object
    Description

    Detalles del error para tareas fallidas. Consulta Errores para la referencia completa del objeto task_error.

  • Name
    consumed_credits
    Type
    integer
    Description

    El número de créditos consumidos por esta tarea. Devuelve 0 para las tareas FAILED (los créditos se reembolsan en caso de fallo).

  • Name
    model_urls
    Type
    object
    Description

    URLs descargables para el artefacto generado, indexadas por el nombre del artefacto. Siempre contiene exactamente una entrada: el formato solicitado a través de output.format en la solicitud de compilación. La clave coincide con el formato solicitado:

    • Name
      glb
      Type
      string
      Description

      URL descargable del archivo GLB. Presente cuando output.format era glb (el valor predeterminado).

    • Name
      obj
      Type
      string
      Description

      URL descargable de un paquete zip que contiene model.obj, model.mtl y texture.png. Presente cuando output.format era obj.

    • Name
      bundle_zip
      Type
      string
      Description

      URL descargable de un paquete zip con todos los artefactos que emite el generador. Presente cuando output.format era 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=***"
  }
}