lowpoly será descontinuado a 30/10/2026. Mude de modelo antes destas datas para evitar erros nos pedidos.

API de Texto para 3D

A API de Texto para 3D é uma funcionalidade que lhe permite integrar as capacidades de Texto para 3D da Meshy na sua própria aplicação. Nesta secção, vai encontrar todas as informações de que precisa para começar a utilizar esta API.

O Texto para 3D utiliza um fluxo de trabalho em duas etapas. Primeiro, crie uma tarefa de preview (mode: "preview") para gerar uma malha 3D sem textura, para que possa avaliar a forma. Depois, passe o ID da tarefa de preview concluída para uma tarefa de refine (mode: "refine") para aplicar textura à malha. Ambas as etapas partilham o mesmo endpoint.


POST/openapi/v2/text-to-3d

Create a Text to 3D Preview Task

Este endpoint cria uma tarefa de preview de Texto para 3D, que gera uma malha 3D sem textura (apenas geometria) a partir de um prompt de texto. Este é o primeiro passo do fluxo de trabalho em duas etapas. Assim que o preview for concluído com sucesso, utilize o ID da tarefa devolvido para criar uma tarefa refine para texturização. Consulte O Objeto de Tarefa Texto para 3D para o esquema completo da resposta.

A tarefa é executada em segundo plano. Para saber quanto tempo geralmente demora, consulte Tempos de Processamento.

Parâmetros

  • Name
    mode
    Type
    string
    Obrigatório
    Description

    Este campo deve ser definido como "preview" ao criar uma tarefa de preview.

  • Name
    prompt
    Type
    string
    Obrigatório
    Description

    Descreve que tipo de objeto é o modelo 3D. Máximo de 800 caracteres.

  • Name
    model_type
    Type
    string
    predefinição standard
    Description

    Especifica o tipo de geração de malha 3D.

    Valores disponíveis:

    • standard: Geração de malha 3D regular de alto detalhe.
    • smart-topology: Escolha o modelo Smart Topology com ai_model (meshy-t2).
    • lowpoly (obsoleto, a ser descontinuado a 30 de outubro de 2026): Gera uma malha low-poly otimizada para polígonos mais limpos. Recomendamos o Meshy T2 em alternativa: smart-topology com meshy-t2.
  • Name
    ai_model
    Type
    string
    predefinição latest
    Description

    ID do modelo a utilizar. Os valores disponíveis dependem de model_type.

    Geração standard (model_type: standard):

    • meshy-6-lite, meshy-6, meshy-7.1, latest (Meshy 7.1)
    • meshy-7 (obsoleto): utilize meshy-7.1 em alternativa.

    Geração Smart Topology (model_type: smart-topology):

    • meshy-t2 (predefinição): o modelo Smart Topology — topology mais limpa, partes nativamente separadas, saída em triângulos e uma contagem de faces que pode definir com target_polycount.
  • Name
    geometry_resolution
    Type
    string
    predefinição standard
    Description

    Passagem de geração de geometria. 2k executa a passagem Ultra a 2048³; 4k executa-a a 4096³ para o detalhe de superfície mais fino.

    Valores disponíveis: standard, 2k, 4k

  • Name
    ultra_mode
    Type
    boolean
    ⚠ obsoleto
    predefinição false
    Description

    Utilize geometry_resolution em alternativa. ultra_mode: true é equivalente a geometry_resolution: "2k".

  • Name
    should_remesh
    Type
    boolean
    predefinição false (Meshy 6 and Meshy 7 models), true (others)
    Description

    Controla se a fase de remesh está ativada. Para o modelo de maior qualidade, recomendamos definir should_remesh como false.

Aplica-se apenas quando should_remesh = true
  • Name
    topology
    Type
    string
    predefinição triangle
    Description

    Especifica a topology do modelo gerado.

    Valores disponíveis:

    • quad: Gera uma malha predominantemente de quadriláteros.
    • triangle: Gera uma malha de triângulos decimada.
  • Name
    decimation_mode
    Type
    integer
    Description

    Ativa a decimação adaptativa ao definir um nível de contagem de polígonos. Quando definido, target_polycount é ignorado.

    Valores disponíveis:

    • 1: Adaptativo — contagem de polígonos ultra.
    • 2: Adaptativo — contagem de polígonos alta.
    • 3: Adaptativo — contagem de polígonos média.
    • 4: Adaptativo — contagem de polígonos baixa.
  • Name
    target_polycount
    Type
    integer
    Description

    Número alvo de polígonos (faces) no resultado. A contagem real pode desviar-se do alvo consoante a geometria.

    target_polycount tem efeito em dois casos independentes:

    • Remesh — com should_remesh: true num modelo standard. A malha sofre remesh (decimação) para aproximadamente esta contagem. Intervalo de 100 a 300 000, predefinição 30 000. Se decimation_mode estiver definido, tem prioridade e target_polycount é ignorado.
    • Smart Topology — com model_type: smart-topology e ai_model: meshy-t2. O modelo é gerado diretamente com esta contagem de faces; não é executado nenhum remesh e should_remesh não é necessário. Intervalo de 100 a 15 000, predefinição 4000.
  • Name
    symmetry_mode
    Type
    string
    ⚠ obsoleto
    predefinição auto
    Description

    Obsoleto. Este parâmetro já não afeta o resultado.

    O campo symmetry_mode controla o comportamento de simetria durante o processo de geração do modelo.

    Os valores válidos são:

    • off: Desativa a simetria.
    • auto: Determina e aplica automaticamente a simetria com base na geometria de entrada.
    • on: Impõe a simetria durante a geração.
  • Name
    pose_mode
    Type
    string
    predefinição ""
    Description

    Especifica o pose_mode para o modelo gerado.

    Valores disponíveis:

    • a-pose: Gera o modelo numa pose A.
    • t-pose: Gera o modelo numa pose T.
    • "" (cadeia vazia): Nenhuma pose específica aplicada.
  • Name
    is_a_t_pose
    Type
    boolean
    ⚠ obsoleto
    predefinição false
    Description

    Utilize pose_mode em alternativa. Se deve gerar o modelo numa pose A/T.

  • Name
    art_style
    Type
    string
    ⚠ obsoleto
    predefinição realistic
    Description

    Não suportado pelo Meshy-6. Pedidos que utilizem o Meshy-6 irão ignorar art_style, e algumas combinações podem causar erros. Valores disponíveis: realistic, sculpture.

  • Name
    moderation
    Type
    boolean
    predefinição false
    Description

    Quando definido como true, o conteúdo de entrada será automaticamente analisado em busca de conteúdo potencialmente prejudicial. Se for detetado conteúdo prejudicial, a tarefa não avançará para a geração.

    O texto de prompt será analisado.

  • Name
    target_formats
    Type
    string[]
    Description

    Especifica que formatos de ficheiro 3D incluir no resultado. Apenas os formatos solicitados serão gerados e devolvidos, o que pode reduzir o tempo de conclusão da tarefa. Quando omitido, todos os formatos suportados são incluídos.

    Valores disponíveis: glb, obj, fbx, stl, usdz, 3mf

  • Name
    alpha_thumbnail
    Type
    boolean
    predefinição false
    Description

    Quando definido como true, a tarefa gera adicionalmente uma versão com fundo transparente (RGBA) do preview e devolve-a como alpha_thumbnail_url na resposta GET. O campo thumbnail_url existente permanece inalterado.

  • Name
    auto_size
    Type
    boolean
    predefinição false
    Description

    Quando definido como true, o serviço utiliza visão por IA para estimar automaticamente a altura real do objeto e redimensionar o modelo em conformidade. A origem assume bottom por predefinição, a menos que origin_at seja explicitamente definido.

Aplica-se apenas quando auto_size = true
  • Name
    origin_at
    Type
    string
    predefinição bottom
    Description

    Posição da origem quando auto_size está ativado.

    Valores disponíveis: bottom, center.

Retorno

A propriedade result da resposta contém o id da tarefa de Texto para 3D recém-criada.

Modos de Falha

  • Name
    400 - Bad Request
    Description

    O pedido foi inaceitável. Causas comuns:

    • Parâmetro em falta: Falta um parâmetro obrigatório (por exemplo, prompt, mode).
    • Parâmetro inválido: art_style não corresponde a nenhum dos valores permitidos.
    • Prompt demasiado longo: O prompt excede o limite de caracteres.
    • Modelo não suportado para low poly: ai_model: "meshy-6-lite" não suporta model_type: "lowpoly".
    • Modelo não suportado para Ultra: geometry_resolution requer meshy-7.1 ou latest.
  • Name
    401 - Unauthorized
    Description

    Falha na autenticação. 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/v2/text-to-3d
# Simple preview with required params only
curl https://api.meshy.ai/openapi/v2/text-to-3d \
  -H 'Authorization: Bearer ${YOUR_API_KEY}' \
  -H 'Content-Type: application/json' \
  -d '{
  "mode": "preview",
  "prompt": "a monster mask"
}'

# Preview with Ultra 4K geometry, remesh and A-pose
curl https://api.meshy.ai/openapi/v2/text-to-3d \
  -H 'Authorization: Bearer ${YOUR_API_KEY}' \
  -H 'Content-Type: application/json' \
  -d '{
  "mode": "preview",
  "prompt": "a futuristic robot warrior",
  "ai_model": "meshy-7.1",
  "geometry_resolution": "4k",
  "should_remesh": true,
  "target_polycount": 100000,
  "pose_mode": "a-pose",
  "target_formats": ["glb"]
}'

Response

{
  "result": "018a210d-8ba4-705c-b111-1f1776f7f578"
}

POST/openapi/v2/text-to-3d

Create a Text to 3D Refine Task

Este endpoint cria uma tarefa de refine de Texto para 3D, que aplica textura a uma malha de pré-visualização concluída. Deve fornecer o preview_task_id de uma tarefa de pré-visualização bem-sucedida. Este é o segundo passo do fluxo de trabalho em duas etapas.

A tarefa é executada em segundo plano. Para saber quanto tempo normalmente demora, consulte Tempos de Processamento.

Parâmetros

  • Name
    mode
    Type
    string
    Obrigatório
    Description

    Este campo deve ser definido como "refine" ao criar uma tarefa de refine.

  • Name
    preview_task_id
    Type
    string
    Obrigatório
    Description

    O id da tarefa de pré-visualização correspondente.

    O estado da tarefa de pré-visualização indicada deve ser SUCCEEDED.

  • Name
    enable_pbr
    Type
    boolean
    predefinição false
    Description

    Gera mapas PBR (metallic, roughness, normal) além da cor base. Também é incluído um mapa de emissão quando ai_model é meshy-6, exceto em texture_resolution: 8k (neste caso não é produzido nenhum mapa de emissão). meshy-6-lite, meshy-7.1 e latest não produzem mapa de emissão, e o mesmo acontece com um refine de uma pré-visualização meshy-t2 que não define ai_model.

  • Name
    texture_resolution
    Type
    string
    predefinição 2k
    Description

    Resolução da textura de cor base. Uma de 2k (2048×2048), 4k (4096×4096) ou 8k (8192×8192). Resoluções mais elevadas captam mais detalhe de superfície. Aplica-se apenas ao mode refine.

  • Name
    hd_texture
    Type
    boolean
    ⚠ obsoleto
    predefinição false
    Description

    Utilize texture_resolution em vez deste — equivalente a texture_resolution: "4k". Quando ambos são definidos, texture_resolution tem precedência.

  • Name
    texture_prompt
    Type
    string
    Description

    Forneça um prompt de texto adicional para orientar o processo de texturização. Máximo de 800 caracteres.

  • Name
    texture_image_url
    Type
    string
    Description

    Forneça uma imagem 2d para orientar o processo de texturização. Atualmente suportamos os formatos .jpg, .jpeg, .png e .webp.

    Tamanho máximo do ficheiro: 20 MB.

    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
    ai_model
    Type
    string
    predefinição inherited from the preview task
    Description

    ID do modelo a utilizar para o refine.

    Valores disponíveis:

    • meshy-6-lite, meshy-6, meshy-7.1, latest (Meshy 7.1)
    • meshy-7 (obsoleto): utilize meshy-7.1 em vez deste.

    Omita este parâmetro para herdar o modelo utilizado pela tarefa de pré-visualização, o que mantém uma pré-visualização e o seu refine no mesmo modelo do início ao fim. Indique um valor explícito para substituir essa herança.

  • Name
    moderation
    Type
    boolean
    predefinição false
    Description

    Quando definido como true, o conteúdo de entrada será automaticamente analisado em busca de conteúdo potencialmente prejudicial. Se for detetado conteúdo prejudicial, a tarefa não avançará para a geração.

    Tanto o texto de texture_prompt como a imagem de texture_image_url serão analisados.

  • Name
    remove_lighting
    Type
    boolean
    predefinição true
    Description

    Remove realces e sombras da textura de cor base, produzindo um resultado mais limpo que funciona melhor em configurações de iluminação personalizadas.

  • Name
    target_formats
    Type
    string[]
    Description

    Especifica quais os formatos de ficheiro 3D a incluir no resultado. Apenas os formatos solicitados serão gerados e devolvidos, o que pode reduzir o tempo de conclusão da tarefa. Quando omitido, são incluídos todos os formatos suportados.

    Valores disponíveis: glb, obj, fbx, stl, usdz, 3mf

  • Name
    alpha_thumbnail
    Type
    boolean
    predefinição false
    Description

    Quando definido como true, a tarefa gera adicionalmente uma versão com fundo transparente (RGBA) da pré-visualização e devolve-a como alpha_thumbnail_url na resposta GET. O campo existente thumbnail_url permanece inalterado.

  • Name
    auto_size
    Type
    boolean
    predefinição false
    Description

    Quando definido como true, o serviço utiliza visão por IA para estimar automaticamente a altura real do objeto e redimensionar o modelo em conformidade. A origem terá como predefinição bottom, a menos que origin_at seja explicitamente definido.

Aplica-se apenas quando auto_size = true
  • Name
    origin_at
    Type
    string
    predefinição bottom
    Description

    Posição da origem quando auto_size está ativado.

    Valores disponíveis: bottom, center.

Resultados devolvidos

A propriedade result da resposta contém o id da tarefa da nova tarefa de Texto para 3D criada.

Modos de Falha

  • Name
    400 - Bad Request
    Description

    O pedido foi inaceitável. Causas comuns:

    • ID de tarefa inválido: O preview_task_id é inválido ou não existe.
    • Tarefa não pronta: A tarefa de pré-visualização ainda não foi concluída com sucesso.
    • Incompatibilidade de modelo: O modelo de IA da tarefa de pré-visualização é incompatível com o modelo de refine solicitado.
    • Modelo não suportado para remove_lighting: remove_lighting é definido com ai_model: "meshy-6-lite".
  • 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 pré-visualização especificada por preview_task_id não foi encontrada.

  • Name
    429 - Too Many Requests
    Description

    Excedeu o seu limite de taxa.

Request

POST
/openapi/v2/text-to-3d
# Basic refine task
curl https://api.meshy.ai/openapi/v2/text-to-3d \
  -H 'Authorization: Bearer ${YOUR_API_KEY}' \
  -H 'Content-Type: application/json' \
  -d '{
  "mode": "refine",
  "preview_task_id": "018a210d-8ba4-705c-b111-1f1776f7f578",
  "enable_pbr": true
}'

# Refine with auto-size and GLB format
curl https://api.meshy.ai/openapi/v2/text-to-3d \
  -H 'Authorization: Bearer ${YOUR_API_KEY}' \
  -H 'Content-Type: application/json' \
  -d '{
  "mode": "refine",
  "preview_task_id": "018a210d-8ba4-705c-b111-1f1776f7f578",
  "target_formats": ["glb"],
  "auto_size": true
}'

Response

{
  "result": "018a210d-8ba4-705c-b111-1f1776f7f578"
}

GET/openapi/v2/text-to-3d/:id

Obter uma tarefa de Texto para 3D

Este endpoint permite obter uma tarefa de Texto para 3D a partir de um id de tarefa válido. Consulte O Objeto de Tarefa de Texto para 3D para ver quais propriedades estão incluídas no objeto de tarefa de Texto para 3D.

Este endpoint funciona tanto para tarefas de preview como de refine.

Parâmetros

  • Name
    id
    Type
    path
    Description

    Identificador único da tarefa de Texto para 3D a obter.

Retorna

A resposta contém o objeto de tarefa de Texto para 3D. Consulte a secção O Objeto de Tarefa de Texto para 3D para mais detalhes.

Exemplos

ModeModelo de exemplo
PreviewPreview model
RefineRefined model

Request

GET
/openapi/v2/text-to-3d/018a210d-8ba4-705c-b111-1f1776f7f578
curl https://api.meshy.ai/openapi/v2/text-to-3d/018a210d-8ba4-705c-b111-1f1776f7f578 \
-H "Authorization: Bearer ${YOUR_API_KEY}"

Response

{
  "id": "018a210d-8ba4-705c-b111-1f1776f7f578",
  "type": "text-to-3d-preview",
  "model_urls": {
    "glb": "https://assets.meshy.ai/***/tasks/018a210d-8ba4-705c-b111-1f1776f7f578/output/model.glb?Expires=***",
    "fbx": "https://assets.meshy.ai/***/tasks/018a210d-8ba4-705c-b111-1f1776f7f578/output/model.fbx?Expires=***",
    "obj": "https://assets.meshy.ai/***/tasks/018a210d-8ba4-705c-b111-1f1776f7f578/output/model.obj?Expires=***",
    "mtl": "https://assets.meshy.ai/***/tasks/018a210d-8ba4-705c-b111-1f1776f7f578/output/model.mtl?Expires=***",
    "usdz": "https://assets.meshy.ai/***/tasks/018a210d-8ba4-705c-b111-1f1776f7f578/output/model.usdz?Expires=***",
    "stl": "https://assets.meshy.ai/***/tasks/018a210d-8ba4-705c-b111-1f1776f7f578/output/model.stl?Expires=***"
  },
  "thumbnail_url": "https://assets.meshy.ai/***/tasks/018a210d-8ba4-705c-b111-1f1776f7f578/output/preview.png?Expires=***",
  "prompt": "a monster mask",
  "progress": 100,
  "started_at": 1692771667037,
  "created_at": 1692771650657,
  "finished_at": 1692771669037,
  "status": "SUCCEEDED",
  "texture_urls": [
    {
      "base_color": "https://assets.meshy.ai/***/tasks/018a210d-8ba4-705c-b111-1f1776f7f578/output/texture_0.png?Expires=***"
    }
  ],
  "preceding_tasks": 0,
  "task_error": {

    "message": ""

  },

  "consumed_credits": 20
}

DELETE/openapi/v2/text-to-3d/:id

Eliminar uma tarefa de Texto para 3D

Este endpoint elimina permanentemente uma tarefa de Texto para 3D, incluindo todos os modelos e dados associados. Esta ação é irreversível.

Parâmetros de Caminho

  • Name
    id
    Type
    path
    Description

    O ID da tarefa de Texto para 3D a eliminar.

Estado da Tarefa

Uma tarefa que ainda está PENDING é eliminada e os créditos consumidos no momento da criação são reembolsados.

Uma tarefa que já está IN_PROGRESS não pode ser eliminada: o pedido é rejeitado com 409 Conflict e a tarefa continua em execução. Os créditos de uma tarefa que o worker já começou a processar não são reembolsáveis, pelo que eliminá-la a meio da execução custar-lhe-ia tanto os créditos como o resultado. Aguarde que atinja o estado SUCCEEDED, FAILED ou CANCELED e só depois a elimine.

Uma tarefa num estado terminal (SUCCEEDED, FAILED ou CANCELED) é eliminada sem reembolso.

Devolve

Devolve 200 OK em caso de sucesso, ou 409 Conflict quando a tarefa está IN_PROGRESS.

Request

DELETE
/openapi/v2/text-to-3d/018a210d-8ba4-705c-b111-1f1776f7f578
curl --request DELETE \
  --url https://api.meshy.ai/openapi/v2/text-to-3d/018a210d-8ba4-705c-b111-1f1776f7f578 \
  -H "Authorization: Bearer ${YOUR_API_KEY}"

Response

// 200 OK on success, with an empty body.
//
// 409 Conflict when the task is IN_PROGRESS — the task is left running:
{
  "message": "Task is IN_PROGRESS and cannot be deleted. Credits for a task the worker has already started are not refundable; wait for it to reach SUCCEEDED, FAILED or CANCELED, then delete it."
}

GET/openapi/v2/text-to-3d

List Text to 3D Tasks

Este endpoint permite obter uma lista de tarefas de Texto para 3D.

Parâmetros

  • Name
    page_num
    Type
    integer
    predefinição 1
    Description

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

  • Name
    page_size
    Type
    integer
    predefinição 10
    Description

    Limite de itens por página. O máximo permitido é 100 itens.

  • Name
    sort_by
    Type
    string
    Description

    Campo pelo qual ordenar.

    Valores disponíveis:

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

Devolve

Devolve uma lista paginada de Objetos de Tarefa Texto para 3D.

Request

GET
/openapi/v2/text-to-3d
curl https://api.meshy.ai/openapi/v2/text-to-3d?page_size=10 \
-H "Authorization: Bearer ${YOUR_API_KEY}"

Response

[
  {
    "id": "018a210d-8ba4-705c-b111-1f1776f7f578",
    "type": "text-to-3d-preview",
    "model_urls": {
      "glb": "https://assets.meshy.ai/***/tasks/018a210d-8ba4-705c-b111-1f1776f7f578/output/model.glb?Expires=***",
      "fbx": "https://assets.meshy.ai/***/tasks/018a210d-8ba4-705c-b111-1f1776f7f578/output/model.fbx?Expires=***",
      "obj": "https://assets.meshy.ai/***/tasks/018a210d-8ba4-705c-b111-1f1776f7f578/output/model.obj?Expires=***",
      "mtl": "https://assets.meshy.ai/***/tasks/018a210d-8ba4-705c-b111-1f1776f7f578/output/model.mtl?Expires=***",
      "usdz": "https://assets.meshy.ai/***/tasks/018a210d-8ba4-705c-b111-1f1776f7f578/output/model.usdz?Expires=***"
    },
    "thumbnail_url": "https://assets.meshy.ai/***/tasks/018a210d-8ba4-705c-b111-1f1776f7f578/output/preview.png?Expires=***",
    "prompt": "a monster mask",
    "progress": 100,
    "started_at": 1692771667037,
    "created_at": 1692771650657,
    "finished_at": 1692771669037,
    "status": "SUCCEEDED",
    "texture_urls": [
      {
        "base_color": "https://assets.meshy.ai/***/tasks/018a210d-8ba4-705c-b111-1f1776f7f578/output/texture_0.png?Expires=***"
      }
    ],
    "preceding_tasks": 0,
    "task_error": {

      "message": ""

    },

    "consumed_credits": 20
  }
]

GET/openapi/v2/text-to-3d/:id/stream

Transmitir uma Tarefa de Texto para 3D

Este endpoint transmite atualizações em tempo real para uma tarefa de Texto para 3D através de Server-Sent Events (SSE).

Parâmetros

  • Name
    id
    Type
    path
    Description

    Identificador único da tarefa de Texto para 3D a transmitir.

Devolve

Devolve um fluxo de Objetos de Tarefa de Texto para 3D como Server-Sent Events.

Para tarefas PENDING ou IN_PROGRESS, o fluxo de resposta incluirá apenas os campos progress e status necessários.

Request

GET
/openapi/v2/text-to-3d/018a210d-8ba4-705c-b111-1f1776f7f578/stream
curl -N https://api.meshy.ai/openapi/v2/text-to-3d/018a210d-8ba4-705c-b111-1f1776f7f578/stream \
-H "Authorization: Bearer ${YOUR_API_KEY}"

Response Stream

// Error event example
event: error
data: {
  "status_code": 404,
  "message": "Task not found"
}

// Message event examples illustrate task progress.
// For PENDING or IN_PROGRESS tasks, the response stream will not include all fields.
event: message
data: {
  "id": "018a210d-8ba4-705c-b111-1f1776f7f578",
  "progress": 0,
  "status": "PENDING"
}

event: message
data: {
  "id": "018a210d-8ba4-705c-b111-1f1776f7f578",
  "progress": 50,
  "status": "IN_PROGRESS"
}

event: message
data: {
"id": "018a210d-8ba4-705c-b111-1f1776f7f578",
"type": "text-to-3d-preview",
"progress": 100,
"status": "SUCCEEDED",
"created_at": 1692771650657,
"started_at": 1692771667037,
"finished_at": 1692771669037,
"model_urls": {
  "glb": "https://assets.meshy.ai/***/tasks/018a210d-8ba4-705c-b111-1f1776f7f578/output/model.glb?Expires=***"
},
"texture_urls": [
  {
    "base_color": "https://assets.meshy.ai/***/tasks/018a210d-8ba4-705c-b111-1f1776f7f578/output/texture_0.png?Expires=***",
    "metallic": "https://assets.meshy.ai/***/tasks/018a210d-8ba4-705c-b111-1f1776f7f578/output/texture_0_metallic.png?Expires=XXX",
    "normal": "https://assets.meshy.ai/***/tasks/018a210d-8ba4-705c-b111-1f1776f7f578/output/texture_0_normal.png?Expires=XXX",
    "roughness": "https://assets.meshy.ai/***/tasks/018a210d-8ba4-705c-b111-1f1776f7f578/output/texture_0_roughness.png?Expires=XXX",
    "emission": "https://assets.meshy.ai/***/tasks/018a210d-8ba4-705c-b111-1f1776f7f578/output/texture_0_emission.png?Expires=XXX"
  }
],
"preceding_tasks": 0,
"task_error": {

  "message": ""

},

"consumed_credits": 20
}

O objeto de tarefa Texto para 3D

O objeto de tarefa Texto para 3D é uma unidade de trabalho que a Meshy mantém sob controlo para gerar um modelo 3D a partir de uma entrada de texto. Existem duas etapas da API de Texto para 3D, preview e refine. A etapa de preview serve para gerar um modelo 3D apenas com malha, e a etapa de refine serve para gerar um modelo 3D com textura com base no resultado da etapa de preview.

O objeto tem as seguintes propriedades:

Propriedades

  • Name
    id
    Type
    string
    Description

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

  • Name
    type
    Type
    string
    Description

    Tipo da tarefa Texto para 3D. Os valores possíveis são text-to-3d-preview para tarefas da etapa de preview e text-to-3d-refine para tarefas da etapa de refine.

  • Name
    model_urls
    Type
    object
    Description

    URL para download do ficheiro de modelo 3D com textura gerado pela Meshy. A propriedade de um formato será omitida se o formato não for gerado, em vez de ser devolvida uma string vazia.

    • Name
      glb
      Type
      string
      Description

      URL para download do ficheiro GLB.

    • Name
      fbx
      Type
      string
      Description

      URL para download do ficheiro FBX.

    • Name
      usdz
      Type
      string
      Description

      URL para download do ficheiro USDZ.

    • Name
      obj
      Type
      string
      Description

      URL para download do ficheiro OBJ.

    • Name
      mtl
      Type
      string
      Description

      URL para download do ficheiro MTL.

    • Name
      stl
      Type
      string
      Description

      URL para download do ficheiro STL.

    • Name
      3mf
      Type
      string
      Description

      URL para download do ficheiro 3MF. Apenas presente quando 3mf foi solicitado através de target_formats.

  • Name
    prompt
    Type
    string
    Description

    Este é o prompt não modificado que foi utilizado para criar a tarefa.

  • Name
    negative_prompt
    Type
    string
    ⚠ obsoleto
    Description

    Mantido para compatibilidade com versões anteriores. Este campo não tem qualquer impacto funcional nos modelos gerados.

  • Name
    art_style
    Type
    string
    ⚠ obsoleto
    Description

    O art_style não modificado que foi utilizado para criar a tarefa de preview. Não suportado pelo Meshy-6.

  • Name
    texture_richness
    Type
    string
    ⚠ obsoleto
    Description

    Mantido para compatibilidade com versões anteriores. Este campo não tem qualquer impacto funcional nos modelos gerados.

  • Name
    texture_prompt
    Type
    string
    Description

    Prompt de texto adicional fornecido para guiar o processo de texturização durante a etapa de refine.

  • Name
    ultra_mode
    Type
    boolean
    ⚠ obsoleto
    Description

    Obsoleto; consulte geometry_resolution em vez disso.

  • Name
    geometry_resolution
    Type
    string
    Description

    O nível Ultra em que a tarefa de preview foi executada (2k ou 4k); omitido para standard.

  • Name
    texture_image_url
    Type
    string
    Description

    URL para download da imagem de textura que foi utilizada para guiar o processo de texturização.

  • Name
    thumbnail_url
    Type
    string
    Description

    URL para download da imagem de miniatura do ficheiro do modelo.

  • Name
    alpha_thumbnail_url
    Type
    string
    Description

    URL para download de uma versão com fundo transparente (RGBA) de thumbnail_url. Apenas presente quando a tarefa foi criada com alpha_thumbnail: true e a pré-visualização transparente foi renderizada com sucesso; caso contrário, este campo é omitido.

  • Name
    video_url
    Type
    string
    ⚠ obsoleto
    Description

    URL para download do vídeo de pré-visualização. Será removido numa versão futura.

  • Name
    progress
    Type
    integer
    Description

    Progresso da tarefa. Se a tarefa ainda não tiver iniciado, esta propriedade será 0. Assim que a tarefa for bem-sucedida, isto passará a 100.

  • Name
    started_at
    Type
    timestamp
    Description

    Carimbo de data/hora de quando a tarefa foi iniciada, em milissegundos. Se a tarefa ainda não tiver iniciado, esta propriedade será 0.

  • Name
    created_at
    Type
    timestamp
    Description

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

  • Name
    finished_at
    Type
    timestamp
    Description

    Carimbo de data/hora de quando a tarefa foi concluída, em milissegundos. Se a tarefa ainda não tiver sido concluída, esta propriedade será 0.

  • Name
    status
    Type
    string
    Description

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

  • Name
    texture_urls
    Type
    array
    Description

    Uma matriz de objetos de URL de textura gerados pela tarefa. Normalmente, esta contém apenas um objeto de URL de textura. Cada URL de textura tem as seguintes propriedades:

    • Name
      base_color
      Type
      string
      Description

      URL para download da imagem do mapa de cor base.

    • Name
      metallic
      Type
      string
      Description

      URL para download da imagem do mapa metálico.

    • Name
      normal
      Type
      string
      Description

      URL para download da imagem do mapa de normais.

    • Name
      roughness
      Type
      string
      Description

      URL para download da imagem do mapa de rugosidade.

    • Name
      emission
      Type
      string
      Description

      URL para download da imagem do mapa de emissão.

  • 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).

Example Text to 3D Task Object

{
  "id": "018a210d-8ba4-705c-b111-1f1776f7f578",
  "type": "text-to-3d-preview",
  "model_urls": {
    "glb": "https://assets.meshy.ai/***/tasks/018a210d-8ba4-705c-b111-1f1776f7f578/output/model.glb?Expires=***",
    "fbx": "https://assets.meshy.ai/***/tasks/018a210d-8ba4-705c-b111-1f1776f7f578/output/model.fbx?Expires=***",
    "usdz": "https://assets.meshy.ai/***/tasks/018a210d-8ba4-705c-b111-1f1776f7f578/output/model.usdz?Expires=***",
    "obj": "https://assets.meshy.ai/***/tasks/018a210d-8ba4-705c-b111-1f1776f7f578/output/model.obj?Expires=***",
    "mtl": "https://assets.meshy.ai/***/tasks/018a210d-8ba4-705c-b111-1f1776f7f578/output/model.mtl?Expires=***",
    "stl": "https://assets.meshy.ai/***/tasks/018a210d-8ba4-705c-b111-1f1776f7f578/output/model.stl?Expires=***"
  },
  "prompt": "a monster mask",
  "texture_prompt": "green slimy skin with scales and warts",
  "texture_image_url": "",
  "thumbnail_url": "https://assets.meshy.ai/***/tasks/018a210d-8ba4-705c-b111-1f1776f7f578/output/preview.png?Expires=***",
  "progress": 100,
  "started_at": 1692771667037,
  "created_at": 1692771650657,
  "finished_at": 1692771669037,
  "status": "SUCCEEDED",
  "texture_urls": [
    {
      "base_color": "https://assets.meshy.ai/***/tasks/018a210d-8ba4-705c-b111-1f1776f7f578/output/texture_0.png?Expires=***",
      "metallic": "https://assets.meshy.ai/***/tasks/018a210d-8ba4-705c-b111-1f1776f7f578/output/texture_0_metallic.png?Expires=XXX",
      "normal": "https://assets.meshy.ai/***/tasks/018a210d-8ba4-705c-b111-1f1776f7f578/output/texture_0_normal.png?Expires=XXX",
      "roughness": "https://assets.meshy.ai/***/tasks/018a210d-8ba4-705c-b111-1f1776f7f578/output/texture_0_roughness.png?Expires=XXX",
      "emission": "https://assets.meshy.ai/***/tasks/018a210d-8ba4-705c-b111-1f1776f7f578/output/texture_0_emission.png?Expires=XXX"
    }
  ],
  "preceding_tasks": 0,
  "task_error": {

    "message": ""

  },

  "consumed_credits": 20
}