Creative Lab — API de Porta-chaves

Transforme uma fotografia de origem num medalhão de porta-chaves imprimível em 3D — um relevo de profundidade colorido em forma de crachá — em duas fases: o protótipo gera uma imagem conceptual colorida a partir da sua fotografia de entrada, e depois a construção transforma essa imagem conceptual num modelo 3D em relevo. As duas fases estão ligadas através de 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

Gera uma única imagem de conceito colorizada a partir da fotografia de origem. O ID da tarefa devolvido é o que passa como input_task_id para o endpoint de construção. Consulte The Keychain Prototype Task Object para a forma da resposta.

Parâmetros

  • Name
    image_url
    Type
    string
    Obrigatório
    Description

    Fotografia de origem para a Meshy colorizar numa imagem de conceito pronta para porta-chaves. Atualmente suportamos os formatos .jpg, .jpeg, .png e .webp.

    Existem duas formas de fornecer a imagem:

    • URL publicamente acessível: Um URL acessível a partir da internet pública.
    • Data URI: Um data URI da imagem codificado em base64. Exemplo de um data URI: data:image/jpeg;base64,<your base64-encoded image data>.
  • Name
    name
    Type
    string
    Description

    Nome de tarefa opcional para fins de apresentação. Máximo de 100 carateres.

    Isto identifica a tarefa no seu painel e nas listas de tarefas. Não é gravado no porta-chaves — utilize name_text para isso.

  • Name
    name_text
    Type
    string
    Description

    Texto a gravar no porta-chaves, como o nome de um animal de estimação ou de uma pessoa. Máximo de 10 carateres, contados como carateres Unicode em vez de bytes, pelo que um nome chinês, japonês ou coreano com 10 carateres é aceite. Omita-o para produzir um porta-chaves sem gravação.

    Os espaços em branco circundantes são removidos e os carateres de formatação invisíveis são eliminados antes de o texto ser utilizado. O valor resultante é devolvido como name_text no objeto de tarefa de protótipo, para que possa confirmar exatamente o que será gravado antes de pagar pela fase de construção.

    A gravação é aplicada aqui, na fase de protótipo. A fase de construção herda-a automaticamente e não aceita um name_text próprio.

  • Name
    remove_background
    Type
    boolean
    predefinição false
    Description

    Quando definido como true, a imagem do protótipo é devolvida como um PNG RGBA transparente com o fundo removido, para que possa compor o sujeito sobre qualquer fundo.

    Isto controla apenas a imagem devolvida por este endpoint. É independente da opção de construção com o mesmo nome (predefinição true), que controla a remoção do fundo antes do relevo.

Retorna

A propriedade result da resposta contém o id da tarefa da nova tarefa de protótipo de porta-chaves criada. Consulte periodicamente o endpoint Get a Task ou subscreva o stream até a tarefa atingir SUCCEEDED, e depois passe esse ID para o endpoint de construção como input_task_id.

Modos de Falha

  • Name
    400 - Bad Request
    Description

    O pedido foi inaceitável. Causas comuns:

    • Parâmetro em falta: image_url é obrigatório.
    • Formato de imagem inválido: O image_url fornecido não é um formato suportado (.jpg, .jpeg, .png, .webp).
    • Dimensões da imagem fora do intervalo: A imagem é demasiado pequena, excede o tamanho máximo de ficheiro ou excede o número máximo de píxeis.
    • URL inacessível: Não foi possível transferir o image_url (404 ou timeout).
    • Data URI inválido: A string base64 está malformada.
    • Gravação demasiado longa: name_text tem mais de 10 carateres. O pedido é rejeitado em vez de truncado, pelo que nunca é cobrado por um porta-chaves gravado com um nome encurtado.
    • Conteúdo assinalado: A imagem de entrada foi assinalada pela moderation de NSFW ou de propriedade intelectual, ou a gravação name_text foi assinalada pela moderation de NSFW. A gravação é filtrada apenas para conteúdo NSFW — a filtragem de propriedade intelectual aplica-se à imagem.
  • Name
    401 - Unauthorized
    Description

    A autenticação falhou. Verifique a sua chave de API.

  • Name
    402 - Payment Required
    Description

    Créditos insuficientes para realizar esta tarefa.

  • Name
    429 - Too Many Requests
    Description

    Excedeu o seu limite de taxa.

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

Criar uma Tarefa de Construção Keychain

Gera o medalhão de porta-chaves final, pronto para impressão 3D, a partir de uma tarefa de protótipo com sucesso. A construção executa um pipeline de relevo por mapa de profundidade sobre a imagem conceptual colorizada do protótipo e devolve um único artefacto de malha no formato que solicitar. Consulte O Objeto de Tarefa de Construção Keychain para saber a forma da resposta.

Parâmetros

  • Name
    input_task_id
    Type
    string
    Obrigatório
    Description

    O ID da tarefa de um protótipo criado através deste mesmo endpoint de OpenAPI. O protótipo tem de ter sido criado com a mesma chave de API, tem de ter atingido SUCCEEDED e tem de ter produzido exatamente uma imagem candidata.

    Tarefas de protótipo criadas através da aplicação web não são aceites — o endpoint de construção aceita apenas tarefas de protótipo produzidas por POST /openapi/creative-lab/keychain/v1/prototype e rejeita qualquer outra origem com 404.

  • Name
    name
    Type
    string
    Description

    Nome de tarefa opcional para fins de exibição. Máximo de 100 carateres.

options

Parâmetros de ajuste opcionais para a geometria do relevo. Cada campo tem um valor predefinido sensato — envie apenas os que pretende substituir.

  • Name
    badge_shape
    Type
    string
    predefinição circle
    Description

    Silhueta do contorno do medalhão do porta-chaves. Valores disponíveis:

    • circle (predefinição)
    • rounded-rect
    • hexagon
    • shield
    • star
  • Name
    size_mm
    Type
    number
    predefinição 40
    Description

    Comprimento do lado do quadrado delimitador do porta-chaves, em milímetros. Intervalo: (0, 400].

  • Name
    relief_height_mm
    Type
    number
    predefinição 2.2
    Description

    Altura máxima do relevo acima da base, em milímetros. Intervalo: [0, 20].

  • Name
    relief_offset_mm
    Type
    number
    predefinição 0
    Description

    Deslocamento vertical aplicado ao relevo antes da extrusão, em milímetros. Intervalo: [0, 20].

  • Name
    base_thickness_mm
    Type
    number
    predefinição 0.1
    Description

    Espessura da placa base plana por trás do relevo, em milímetros. Intervalo: [0, 20].

  • Name
    has_closed_back
    Type
    boolean
    predefinição true
    Description

    Se a parte de trás do medalhão está selada como uma superfície fechada. Defina como false para um invólucro aberto.

  • Name
    relief_curve
    Type
    string
    predefinição linear
    Description

    Curva de transferência que mapeia os valores do mapa de profundidade para a altura do relevo. Valores disponíveis:

    • linear (predefinição)
    • gamma
    • s-curve
  • Name
    curve_param
    Type
    number
    predefinição 1.0
    Description

    Parâmetro de forma para a curva de transferência (apenas relevante quando relief_curve é gamma). Intervalo: (0, 10].

  • Name
    invert_depth
    Type
    boolean
    predefinição false
    Description

    Inverte a interpretação do mapa de profundidade para que as regiões mais escuras se tornem em relevo mais elevado.

  • Name
    smoothing
    Type
    number
    predefinição 0.24
    Description

    Intensidade de suavização aplicada ao mapa de profundidade antes da extração do relevo. Intervalo: [0, 10].

  • Name
    relief_scale
    Type
    number
    predefinição 1.0
    Description

    Multiplicador de escala vertical aplicado sobre relief_height_mm. Intervalo: (0, 10].

  • Name
    depth_threshold
    Type
    number
    predefinição 0.1
    Description

    Limiar de passa-baixo para os valores do mapa de profundidade; tudo o que estiver abaixo deste valor é reduzido a zero. Intervalo: [0, 1].

  • Name
    remove_background
    Type
    boolean
    predefinição true
    Description

    Remove automaticamente o fundo da imagem conceptual do protótipo antes de aplicar o relevo.

    Distinto do parâmetro do protótipo com o mesmo nome (predefinição false), que controla se a própria imagem do protótipo é devolvida com transparência.

  • Name
    export_resolution
    Type
    integer
    predefinição 512
    Description

    Resolução da malha utilizada para exportação. Intervalo: [64, 2048].

output

Seletor de formato de transmissão opcional. A predefinição é glb.

  • Name
    format
    Type
    string
    predefinição glb
    Description

    Conjunto de artefactos devolvido pela construção. Valores disponíveis:

    • glb (predefinição) — devolve um único model.glb em model_urls.glb.
    • obj — compacta model.obj + model.mtl + texture.png e devolve o pacote em model_urls.obj.
    • zip — compacta todos os artefactos emitidos pelo gerador e devolve o pacote em model_urls.bundle_zip.

Resultados devolvidos

A propriedade result da resposta contém o id da tarefa da tarefa de construção do porta-chaves recém-criada. Consulte periodicamente o endpoint Obter uma Tarefa ou subscreva o stream até a tarefa atingir SUCCEEDED e depois descarregue o artefacto a partir da única entrada em model_urls.

Modos de Falha

  • Name
    400 - Bad Request
    Description

    O pedido foi inaceitável. Causas comuns:

    • Parâmetro em falta: input_task_id é obrigatório.
    • UUID inválido: input_task_id não é um UUID válido.
    • Tarefa principal sem sucesso: A tarefa de protótipo referenciada ainda não atingiu SUCCEEDED.
    • Sem candidata: A tarefa de protótipo teve sucesso, mas não produziu nenhuma imagem candidata.
    • Opções fora do intervalo: Um dos campos de options está fora do intervalo permitido ou do conjunto de valores enumerados.
  • Name
    401 - Unauthorized
    Description

    A autenticação falhou. Verifique a sua chave de API.

  • Name
    402 - Payment Required
    Description

    Créditos insuficientes para realizar esta tarefa.

  • Name
    404 - Not Found
    Description

    A tarefa de protótipo referenciada não existe, pertence a um utilizador diferente ou foi criada através da aplicação web (apenas tarefas de protótipo em modo API se encadeiam na construção).

  • Name
    429 - Too Many Requests
    Description

    Excedeu o seu limite de taxa.

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
A tarefa de construção converte a imagem do protótipo selecionado num modelo de porta-chaves pronto para impressão 3D.
Pré-visualização do modelo de construção Keychain do Creative Lab
Pré-visualização do modelo de construção

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

Obter uma Tarefa de Porta-chaves

Obtenha uma tarefa de protótipo ou de construção com base num id de tarefa válido. O caminho do URL deve corresponder à fase da tarefa — uma tarefa de construção obtida através de /prototype/:id devolve 404, e vice-versa.

Consulte O Objeto de Tarefa de Protótipo de Porta-chaves e O Objeto de Tarefa de Construção de Porta-chaves para conhecer os formatos de resposta.

Parâmetros

  • Name
    id
    Type
    path
    Description

    Identificador único da tarefa de porta-chaves a obter.

Retorna

A resposta contém o objeto da tarefa de porta-chaves. O formato depende da fase que foi solicitada.

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 uma Tarefa de porta-chaves

Cancela uma tarefa de porta-chaves. Se a tarefa ainda estiver PENDING, os créditos consumidos no momento da criação são reembolsados. As tarefas que já estão IN_PROGRESS são canceladas sem reembolso (é possível que o worker já esteja a consumir recursos). Tarefas que já atingiram um estado terminal (SUCCEEDED, FAILED, CANCELED) não podem ser canceladas.

O caminho do URL tem de corresponder à fase da tarefa — DELETE em /prototype/:buildId devolve 404.

Parâmetros de Caminho

  • Name
    id
    Type
    path
    Description

    Identificador único da tarefa de porta-chaves a cancelar.

Retorna

Devolve 204 No Content em caso de sucesso, com um corpo vazio.

Modos de Falha

  • Name
    400 - Bad Request
    Description

    A tarefa já se encontra num estado terminal e não pode ser cancelada.

  • Name
    404 - Not Found
    Description

    A tarefa não existe, pertence a um utilizador diferente, ou a sua fase não corresponde ao caminho do 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 uma Tarefa de Porta-chaves

Transmita atualizações em tempo real para uma tarefa de porta-chaves através de Server-Sent Events (SSE). O caminho do URL tem de corresponder à fase da tarefa — abrir um stream em /prototype/:buildId/stream emite um único payload event: error com status_code: 404 e fecha o stream.

Parâmetros

  • Name
    id
    Type
    path
    Description

    Identificador único da tarefa de porta-chaves a transmitir.

Devolve

Devolve um stream de objetos de tarefa Keychain Prototype ou Keychain Build como Server-Sent Events. Cada frame transporta o objeto de tarefa completo para a fase em questão — a mesma estrutura que o endpoint Get devolve — pelo que, enquanto a tarefa estiver PENDING ou IN_PROGRESS, os campos de saída simplesmente ainda não estão preenchidos (null, [] ou {}) e finished_at é 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

Obtenha uma lista paginada das suas tarefas de porta-chaves para uma única etapa. O caminho URL seleciona a etapa — /prototype retorna tarefas de prototipagem; /build retorna tarefas de construção. As tarefas da outra etapa não são incluídas em nenhuma das respostas.

Parâmetros de Caminho

  • Name
    stage
    Type
    path
    Obrigatório
    Description

    prototype ou build. A coleção retorna apenas as tarefas cuja etapa corresponde ao URL — obter /prototype nunca retorna tarefas de construção e vice-versa.

Parâmetros de Consulta

  • Name
    page_num
    Type
    integer
    predefinição 1
    Description

    Número da página para paginação.

  • Name
    page_size
    Type
    integer
    predefinição 10
    Description

    Limite do tamanho da página. O máximo permitido é 100 itens.

  • Name
    sort_by
    Type
    string
    predefinição -created_at
    Description

    Campo pelo qual ordenar. Valores disponíveis:

    • +created_at: Ordenar por hora de criação em ordem ascendente.
    • -created_at: Ordenar por hora de criação em ordem descendente.

Retornos

Retorna uma lista paginada do objeto de tarefa por etapa — quer o objeto de tarefa de prototipagem do porta-chaves ao listar /prototype, quer o objeto de tarefa de construção do porta-chaves ao 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=***"
    ]
  }
]

O objeto Keychain Prototype Task

O objeto Keychain Prototype Task é uma unidade de trabalho que a Meshy monitoriza para gerar uma imagem de conceito colorida a partir de uma foto de origem. O resultado desta fase é encadeado na fase de construção através de input_task_id.

Propriedades

  • Name
    id
    Type
    string
    Description

    Identificador único da tarefa. Embora utilizemos um UUID k-sortable para os ids das tarefas como detalhe de implementação, não deve fazer nenhuma suposição sobre o formato do id.

  • Name
    type
    Type
    string
    Description

    Tipo da tarefa. O valor é creative-lab-keychain-prototype.

  • Name
    name
    Type
    string
    Description

    O nome da tarefa fornecido no momento da criação. Cadeia vazia se não tiver sido fornecido nenhum nome.

  • Name
    name_text
    Type
    string
    Description

    A gravação aplicada a este porta-chaves, após remoção de espaços e de caracteres de formatação invisíveis. Ausente quando a tarefa foi criada sem name_text. Compare-o com o que enviou para confirmar que o texto sobreviveu à codificação do seu cliente HTTP.

  • Name
    status
    Type
    string
    Description

    Estado da tarefa. Os valores possíveis são PENDING, IN_PROGRESS, SUCCEEDED, FAILED, CANCELED.

  • Name
    progress
    Type
    integer
    Description

    Progress da tarefa. Se a tarefa ainda não tiver começado, esta propriedade será 0. Assim que a tarefa for concluída com sucesso, passará a ser 100.

  • Name
    created_at
    Type
    timestamp
    Description

    Carimbo de data/hora da criação da tarefa, em milissegundos.

  • Name
    started_at
    Type
    timestamp
    Description

    Carimbo de data/hora do início da tarefa, em milissegundos. Se a tarefa ainda não tiver começado, esta propriedade será 0.

  • Name
    finished_at
    Type
    timestamp
    Description

    Carimbo de data/hora da conclusão da tarefa, em milissegundos. Se a tarefa ainda não tiver terminado, esta propriedade será 0.

  • Name
    expires_at
    Type
    timestamp
    Description

    Carimbo de data/hora de quando o resultado da tarefa expira, em milissegundos.

  • Name
    preceding_tasks
    Type
    integer
    Description

    A contagem de tarefas precedentes.

  • Name
    task_error
    Type
    object
    Description

    Detalhes do erro para tarefas falhadas. Consulte Erros para a referência completa do objeto task_error.

  • Name
    consumed_credits
    Type
    integer
    Description

    O número de créditos consumidos por esta tarefa. Presente quando o estado da tarefa é PENDING, IN_PROGRESS, ou SUCCEEDED. Devolve 0 para tarefas FAILED (os créditos são reembolsados em caso de falha).

  • Name
    image_urls
    Type
    array of strings
    Description

    URLs transferíveis para os candidatos a imagem de conceito gerados por esta tarefa de protótipo. Atualmente, a API devolve sempre exatamente um candidato; o campo é um array para que revisões futuras possam apresentar vários candidatos sem introduzir uma alteração de rutura.

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

Objeto Keychain Build Task

O objeto Keychain Build Task é uma unidade de trabalho que a Meshy monitoriza para gerar a malha 3D final do porta-chaves a partir de uma tarefa de prototipagem bem-sucedida. A compilação executa um pipeline de relevo por mapa de profundidade sobre a imagem conceptual do prototype e publica um único artefacto de malha no formato solicitado pelo autor da chamada.

Propriedades

  • Name
    id
    Type
    string
    Description

    Identificador único da tarefa.

  • Name
    type
    Type
    string
    Description

    Tipo da tarefa. O valor é creative-lab-keychain-build.

  • Name
    name
    Type
    string
    Description

    O nome da tarefa fornecido no momento da criação da tarefa. Cadeia de caracteres vazia se não tiver sido fornecido nenhum nome.

  • Name
    status
    Type
    string
    Description

    Estado da tarefa. Os valores possíveis são um de PENDING, IN_PROGRESS, SUCCEEDED, FAILED, CANCELED.

  • Name
    progress
    Type
    integer
    Description

    Progress da tarefa. Se a tarefa ainda não tiver começado, esta propriedade será 0. Uma vez que a tarefa tenha sido bem-sucedida, passará a ser 100.

  • Name
    created_at
    Type
    timestamp
    Description

    Carimbo de data/hora de quando a tarefa foi criada, em milissegundos.

  • Name
    started_at
    Type
    timestamp
    Description

    Carimbo de data/hora de quando a tarefa foi iniciada, em milissegundos.

  • Name
    finished_at
    Type
    timestamp
    Description

    Carimbo de data/hora de quando a tarefa foi concluída, em milissegundos.

  • Name
    expires_at
    Type
    timestamp
    Description

    Carimbo de data/hora de quando o resultado da tarefa expira, em milissegundos.

  • Name
    preceding_tasks
    Type
    integer
    Description

    A contagem de tarefas precedentes. Apenas relevante quando o status é PENDING.

  • Name
    task_error
    Type
    object
    Description

    Detalhes do erro para tarefas com falha. Consulte Erros para a referência completa do objeto task_error.

  • Name
    consumed_credits
    Type
    integer
    Description

    O número de créditos consumidos por esta tarefa. Devolve 0 para tarefas FAILED (os créditos são reembolsados em caso de falha).

  • Name
    model_urls
    Type
    object
    Description

    URLs para transferência do artefacto gerado, indexados pelo nome do artefacto. Contém sempre exatamente uma entrada — o formato solicitado através do output.format do pedido de compilação. A chave corresponde ao formato solicitado:

    • Name
      glb
      Type
      string
      Description

      URL para transferência do ficheiro GLB. Presente quando output.format era glb (o valor predefinido).

    • Name
      obj
      Type
      string
      Description

      URL para transferência de um pacote zip contendo model.obj, model.mtl e texture.png. Presente quando output.format era obj.

    • Name
      bundle_zip
      Type
      string
      Description

      URL para transferência de um pacote zip com todos os artefactos que o gerador produz. Presente quando 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=***"
  }
}