lowpoly será descontinuado a 30/10/2026. Mude de modelo antes destas datas para evitar erros nos pedidos. Ver todas as descontinuações

API de Multi-imagem para 3D

Gere um modelo 3D a partir de uma a quatro imagens do mesmo objeto, captadas a partir de ângulos diferentes.


POST/openapi/v1/multi-image-to-3d

Criar uma tarefa Multi-imagem para 3D

Cria uma tarefa Multi-imagem para 3D. A tarefa é executada em segundo plano. Para saber quanto tempo uma tarefa costuma demorar, consulte Tempos de processamento. Para saber quais os campos que uma tarefa tem, consulte O objeto da tarefa Multi-imagem para 3D.

Request

POST
/openapi/v1/multi-image-to-3d
# Simple request
curl https://api.meshy.ai/openapi/v1/multi-image-to-3d \
  -X POST \
  -H "Authorization: Bearer ${YOUR_API_KEY}" \
  -H 'Content-Type: application/json' \
  -d '{
    "image_urls": [
      "<your publicly accessible image url or base64-encoded data URI>",
      "<your second publicly accessible image url or base64-encoded data URI>"
    ]
  }'

# With Ultra 2K geometry, PBR texturing, and GLB format
curl https://api.meshy.ai/openapi/v1/multi-image-to-3d \
  -X POST \
  -H "Authorization: Bearer ${YOUR_API_KEY}" \
  -H 'Content-Type: application/json' \
  -d '{
    "image_urls": [
      "<your publicly accessible image url or base64-encoded data URI>",
      "<your second publicly accessible image url or base64-encoded data URI>"
    ],
    "ai_model": "meshy-7.1",
    "geometry_resolution": "2k",
    "should_texture": true,
    "enable_pbr": true,
    "target_formats": ["glb"]
  }'

# Textured with Meshy N1 from the input images, the first as the front view
curl https://api.meshy.ai/openapi/v1/multi-image-to-3d \
  -X POST \
  -H "Authorization: Bearer ${YOUR_API_KEY}" \
  -H 'Content-Type: application/json' \
  -d '{
    "image_urls": [
      "<your front view image url or base64-encoded data URI>",
      "<your back view image url or base64-encoded data URI>"
    ],
    "ai_model": "meshy-7.1",
    "texture_model": "meshy-n1"
  }'

Response

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

Parâmetros

  • Name
    input_task_id
    Type
    string
    Obrigatório
    Description

    Obrigatório, exceto se enviar image_urls. O ID de uma tarefa Texto para imagem ou Imagem para imagem, incluindo uma de multivista. O Meshy utiliza as suas uma a quatro imagens como entrada. A tarefa tem de ser uma que tenha criado com a API e que tenha o estado SUCCEEDED.

  • Name
    image_urls
    Type
    array
    Obrigatório
    Description

    Obrigatório, exceto se enviar input_task_id. Uma a quatro imagens, cada uma como um URL público ou um data URI, como data:image/jpeg;base64,<your base64-encoded image data>. Se enviar ambos, o Meshy utiliza input_task_id.

    Cada imagem tem de ser um ficheiro .jpg, .jpeg, .png ou .webp de no máximo 20 MB, com pelo menos 32 pixels de cada lado e no máximo 178 956 970 pixels (largura × altura). Mais do que quatro imagens devolve 400.

    Para os melhores resultados, as imagens devem mostrar o mesmo objeto a partir de ângulos diferentes. Com meshy-7.1 ou latest, o Meshy utiliza a primeira imagem como vista frontal, e a ordem das restantes não importa.

  • Name
    ai_model
    Type
    string
    predefinição latest
    Description

    O modelo de IA que gera o modelo 3D.

    Valores disponíveis:

    • latest: Meshy 7.1
    • meshy-7.1
    • meshy-6
    • meshy-6-lite
    • meshy-7: obsoleto, envie meshy-7.1 em alternativa
  • Name
    geometry_resolution
    Type
    string
    predefinição standard
    Description

    A quantidade de detalhe de geometria a gerar.

    Valores disponíveis:

    • standard
    • 2k: executa a passagem Ultra a 2048³. Requer meshy-7.1, latest ou o meshy-7 obsoleto.
  • Name
    ultra_mode
    Type
    boolean
    ⚠ obsoleto
    predefinição false
    Description

    Envie geometry_resolution em alternativa. ultra_mode: true é o mesmo que geometry_resolution: "2k".

  • Name
    should_texture
    Type
    boolean
    predefinição true
    Description

    Se deve gerar texturas. true devolve um modelo texturizado, e false ignora o passo de texturização e devolve uma malha sem texturas.

Aplica-se apenas quando should_texture = true
  • Name
    texture_model
    Type
    string
    predefinição depends on ai_model
    Description

    O modelo de IA que texturiza o modelo 3D a partir de várias vistas, na mesma tarefa. Deixe-o de fora para utilizar o modelo de textura predefinido para o seu ai_model. Não altera o custo em créditos.

    Valores disponíveis:

    • meshy-7: Meshy 7, com mapas PBR e texturas até 8K
    • meshy-n1: Meshy N1, uma textura de cor base de 2K apenas a partir de imagens de referência

    Cada ai_model aceita ambos. Um pedido texturizado com meshy-6 ou meshy-6-lite devolve 400, assim como uma opção que o modelo de textura escolhido não suporte. Com should_texture: false, o Meshy ignora texture_model, mas um valor desconhecido continua a devolver 400.

    Com meshy-n1, o Meshy texturiza a partir de texture_image_urls ou texture_image_url, ou a partir das imagens de entrada quando não enviar nenhuma delas. A primeira imagem é a vista frontal. Um modelo gerado com mais de 7 999 999 triângulos falha a tarefa, e o Meshy reembolsa os respetivos créditos.

    Consulte Modelos para saber o que faz cada modelo de textura e qual escolher.

  • Name
    enable_pbr
    Type
    boolean
    predefinição false
    Description

    Se deve também gerar mapas de metalicidade, rugosidade e normais, além da cor base. O modelo de textura Meshy 6 também gera um mapa de emissão, exceto a texture_resolution: 8k. Com texture_model: meshy-n1, true devolve 400.

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

    O tamanho da textura de cor base. Um tamanho maior capta mais detalhe de superfície.

    Valores disponíveis:

    • 2k: 2048×2048
    • 4k: 4096×4096
    • 8k: 8192×8192

    4k e 8k requerem o modelo de textura Meshy 7 ou Meshy 6, e devolvem 400 com os restantes. A 8k, o Meshy não gera um mapa de emissão.

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

    Envie texture_resolution em alternativa. hd_texture: true é o mesmo que texture_resolution: "4k". Se enviar ambos, o Meshy utiliza texture_resolution.

  • Name
    texture_prompt
    Type
    string
    Description

    Texto que orienta a textura, até 800 carateres. Texto mais longo devolve 400. Com texture_model: meshy-n1, enviá-lo devolve 400.

  • Name
    texture_image_url
    Type
    string
    Description

    Uma imagem 2D que orienta a textura, como um URL público ou um data URI, como data:image/jpeg;base64,<your base64-encoded image data>. A imagem tem de ser um ficheiro .jpg, .jpeg, .png ou .webp de no máximo 20 MB, com pelo menos 32 pixels de cada lado e no máximo 178 956 970 pixels (largura × altura).

    Se enviar texture_image_url e texture_prompt, o Meshy utiliza texture_prompt. Com texture_model: meshy-n1, o Meshy texturiza a partir desta imagem como a vista frontal.

  • Name
    texture_image_urls
    Type
    string[]
    Description

    Uma a quatro imagens do objeto a partir de diferentes vistas que orientam a textura. O Meshy utiliza a primeira imagem como a vista frontal. A ordem das restantes vistas (esquerda, trás, direita) não importa.

    Cada imagem segue as mesmas regras que texture_image_url. É um URL público ou um data URI, em formato .jpg, .jpeg, .png ou .webp, de no máximo 20 MB, com pelo menos 32 pixels de cada lado e no máximo 178 956 970 pixels (largura × altura).

    Estas imagens orientam apenas a textura e não dependem de image_urls. As duas listas podem conter imagens diferentes e números diferentes de imagens.

    texture_image_urls requer o modelo de textura Meshy 7 ou Meshy N1. Envie-o com um dos seguintes:

    • ai_model de meshy-7.1, latest ou o meshy-7 obsoleto
    • texture_model de meshy-7 ou meshy-n1

    Não pode enviá-lo com texture_image_url ou texture_prompt.

  • Name
    should_remesh
    Type
    boolean
    predefinição true (meshy-6-lite), false (other models)
    Description

    Se deve fazer remesh ao modelo após a geração. Para obter o modelo 3D com a mais alta qualidade, defina como false.

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

    O tipo de face do modelo com remesh.

    Valores disponíveis:

    • quad: uma malha predominantemente de quadriláteros
    • triangle: uma malha de triângulos decimada

    Com texture_model: meshy-n1, quad devolve 400 quando o modelo sofre remesh, o que o meshy-6-lite faz por predefinição.

  • Name
    target_polycount
    Type
    integer
    predefinição 30000
    Description

    O número de faces a atingir, de 100 a 300000. O resultado pode diferir do alvo, dependendo da geometria do modelo. Um valor fora do intervalo devolve 400.

  • Name
    decimation_mode
    Type
    integer
    Description

    Número de faces adaptativo, por nível. Quando o definir, o Meshy ignora target_polycount.

    Valores disponíveis:

    • 1: ultra
    • 2: alto
    • 3: médio
    • 4: baixo
  • Name
    save_pre_remeshed_model
    Type
    boolean
    predefinição false
    Description

    Se deve também guardar o GLB anterior ao remesh, devolvido em model_urls.pre_remeshed_glb.

  • Name
    symmetry_mode
    Type
    string
    ⚠ obsoleto
    predefinição auto
    Description

    Deixe de fora. Não afeta o resultado.

    Valores disponíveis:

    • off: sem simetria
    • auto: simetria baseada na geometria de entrada
    • on: simetria imposta
  • Name
    pose_mode
    Type
    string
    predefinição ""
    Description

    A pose do modelo gerado.

    Valores disponíveis:

    • a-pose: uma pose em A
    • t-pose: uma pose em T
    • "" (cadeia vazia): sem pose específica
  • Name
    is_a_t_pose
    Type
    boolean
    ⚠ obsoleto
    predefinição false
    Description

    Envie pose_mode em alternativa. Se deve gerar o modelo numa pose em A ou em T.

  • Name
    image_enhancement
    Type
    boolean
    predefinição true
    Description

    Se deve otimizar as imagens de entrada antes de gerar. false mantém o aspeto exato das imagens de entrada, sem processamento de estilo. Suportado apenas com meshy-6, meshy-7.1 ou latest. Enviá-lo com meshy-6-lite devolve 400.

  • Name
    remove_lighting
    Type
    boolean
    predefinição true
    Description

    Se deve remover realces e sombras da textura de cor base. O resultado mais limpo funciona melhor sob a sua própria iluminação. Apenas o modelo de textura Meshy 6 o utiliza, e a texture_resolution: 8k remove sempre a iluminação. Com texture_model: meshy-n1, true devolve 400. Com ai_model: meshy-6-lite e o seu modelo de textura predefinido, enviá-lo devolve 400.

  • Name
    moderation
    Type
    boolean
    predefinição false
    Description

    Se deve analisar as entradas em busca de conteúdo nocivo. O Meshy analisa cada imagem de entrada, texture_image_url ou cada imagem em texture_image_urls, e o texto em texture_prompt. Se o Meshy encontrar conteúdo nocivo, o pedido devolve 400 e o Meshy não cria a tarefa.

  • Name
    target_formats
    Type
    string[]
    Description

    Os formatos de ficheiro 3D a gerar. O Meshy gera e devolve apenas os formatos que listar, o que pode encurtar a tarefa.

    Valores disponíveis:

    • glb
    • obj
    • fbx
    • stl
    • usdz
    • 3mf

    Se o deixar de fora, o Meshy gera todos os formatos exceto 3mf. O Meshy gera 3mf apenas quando o lista.

  • Name
    auto_size
    Type
    boolean
    predefinição false
    Description

    Se deve estimar a altura real do objeto com visão por IA e redimensionar o modelo em conformidade. O Meshy coloca a origem na base, exceto se definir origin_at.

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

    Onde colocar a origem do modelo, bottom ou center.

  • Name
    alpha_thumbnail
    Type
    boolean
    predefinição false
    Description

    Se deve também renderizar uma pré-visualização com fundo transparente (RGBA), devolvida em alpha_thumbnail_url quando obtém a tarefa. thumbnail_url não é alterado.

  • Name
    multi_view_thumbnails
    Type
    boolean
    predefinição false
    Description

    Se deve também renderizar pré-visualizações frontal, direita, traseira e esquerda, devolvidas em thumbnail_urls quando obtém a tarefa. thumbnail_url não é alterado e continua a mostrar a vista frontal. Isto acrescenta cerca de 5 segundos à tarefa.

Devoluções

O campo result da resposta contém o ID da nova tarefa Multi-imagem para 3D.

Modos de falha

  • Name
    400 - Bad Request
    Description

    O pedido não pode ser executado. A mensagem de erro indica qual o problema encontrado. Por exemplo:

    • Parâmetro em falta: Não foi enviado image_urls nem input_task_id.
    • Tarefa de entrada inválida: input_task_id não é uma tarefa Texto para imagem ou Imagem para imagem com estado SUCCEEDED, nem uma de multivista.
    • Número de imagens inválido: image_urls ou texture_image_urls não contém entre 1 e 4 imagens.
    • Formato de imagem inválido: Uma imagem em image_urls não está num formato suportado.
    • Entradas de textura em conflito: texture_image_urls foi enviado com texture_image_url, com texture_prompt ou com should_texture: false.
    • Modelo não suportado para textura multivista: texture_image_urls foi enviado com ai_model de meshy-6 ou meshy-6-lite, exceto se texture_model for meshy-7 ou meshy-n1.
    • URL inacessível: O Meshy não consegue transferir uma imagem em image_urls ou texture_image_urls.
    • Imagem demasiado grande: Uma imagem em image_urls, texture_image_url ou texture_image_urls tem mais de 20 MB.
    • Tamanho de imagem inválido: Uma imagem em image_urls, texture_image_url ou texture_image_urls tem um lado com menos de 32 pixels, ou mais de 178 956 970 pixels (largura × altura).
    • Resolução não suportada para entrada multi-imagem: geometry_resolution é "4k", que este endpoint não suporta. Utilize 2k ou standard.
    • Modelo não suportado para opções de imagem: image_enhancement foi enviado com ai_model: "meshy-6-lite", ou remove_lighting foi enviado com ai_model: "meshy-6-lite" e o seu modelo de textura predefinido.
    • Modelo de textura inválido: texture_model não é um nome de modelo de textura válido.
    • Modelo de textura não disponível: Um pedido texturizado enviou texture_model de meshy-6 ou meshy-6-lite. Multi-imagem para 3D aceita apenas os modelos de textura que texturizam a partir de várias vistas. Envie meshy-7 ou meshy-n1, ou deixe texture_model de fora.
    • Opção não suportada para o modelo de textura: O pedido solicita ao modelo de textura uma opção que este não suporta, como enable_pbr: true com meshy-n1 ou uma textura 4k com meshy-6-lite. Consulte Modelos.

    Corrija o pedido e envie-o novamente. Consulte Erros.

  • Name
    401 - Unauthorized
    Description

    A chave de API está em falta ou é inválida. Verifique o cabeçalho Authorization.

  • Name
    402 - Payment Required
    Description

    Por exemplo:

    • Créditos insuficientes: A conta não tem créditos suficientes para esta tarefa, ou a conta atingiu um limite de créditos. Verifique o seu saldo de créditos e tente novamente.
    • Plano gratuito: Criar uma tarefa requer um plano pago. Atualize o seu plano nas definições de subscrição e tente novamente.
  • Name
    403 - Forbidden
    Description

    A moderação de conteúdo bloqueou o prompt ou uma imagem de entrada. Altere a entrada e tente novamente.

  • Name
    404 - Not Found
    Description

    input_task_id não corresponde a nenhuma das suas tarefas. Verifique o ID da tarefa e envie o pedido novamente.

  • Name
    429 - Too Many Requests
    Description

    Excedeu o seu limite de taxa. Aguarde e tente novamente. Consulte Limites de taxa.


GET/openapi/v1/multi-image-to-3d/:id

Obter uma tarefa de Multi-imagem para 3D

Devolve uma tarefa de Multi-imagem para 3D através do seu ID.

Request

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

Response

{
  "id": "018a210d-8ba4-705c-b111-1f1776f7f578",
  "type": "multi-image-to-3d",
  "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=***",
    "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=***",
    "pre_remeshed_glb": "https://assets.meshy.ai/***/tasks/018a210d-8ba4-705c-b111-1f1776f7f578/output/pre_remeshed_model.glb?Expires=***"
  },
  "thumbnail_url": "https://assets.meshy.ai/***/tasks/018a210d-8ba4-705c-b111-1f1776f7f578/output/preview.png?Expires=***",
  "thumbnail_urls": {
    "front": "https://assets.meshy.ai/***/tasks/018a210d-8ba4-705c-b111-1f1776f7f578/output/preview_front.png?Expires=***",
    "right": "https://assets.meshy.ai/***/tasks/018a210d-8ba4-705c-b111-1f1776f7f578/output/preview_right.png?Expires=***",
    "back": "https://assets.meshy.ai/***/tasks/018a210d-8ba4-705c-b111-1f1776f7f578/output/preview_back.png?Expires=***",
    "left": "https://assets.meshy.ai/***/tasks/018a210d-8ba4-705c-b111-1f1776f7f578/output/preview_left.png?Expires=***"
  },
  "texture_prompt": "",
  "progress": 100,
  "started_at": 1692771667037,
  "created_at": 1692771650657,
  "expires_at": 1692771679037,
  "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"
    }
  ],
  "preceding_tasks": 0,
  "task_error": null,

  "consumed_credits": 30
}

Parâmetros

  • Name
    id
    Type
    path
    Description

    O ID da tarefa da resposta de criação.

Retorna

O objeto de tarefa Multi-imagem para 3D.


DELETE/openapi/v1/multi-image-to-3d/:id

Eliminar uma tarefa de Multi-imagem para 3D

Elimina permanentemente uma tarefa de Multi-imagem para 3D, incluindo os seus modelos e dados. Não pode anular uma eliminação.

Request

DELETE
/openapi/v1/multi-image-to-3d/018a210d-8ba4-705c-b111-1f1776f7f578
curl --request DELETE \
  --url https://api.meshy.ai/openapi/v1/multi-image-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 keeps 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."
}

Parâmetros de caminho

  • Name
    id
    Type
    path
    Description

    O ID da tarefa a eliminar.

Estado da tarefa

Eliminar uma tarefa PENDING reembolsa os créditos utilizados quando a criou.

Uma tarefa IN_PROGRESS não pode ser eliminada. O pedido devolve 409 Conflict, e a tarefa continua a ser executada. A Meshy não reembolsa uma tarefa que já começou, pelo que eliminá-la custar-lhe-ia tanto os créditos como o resultado. Aguarde que atinja o estado SUCCEEDED, FAILED, ou CANCELED, e só depois elimine-a.

Eliminar uma tarefa num estado final (SUCCEEDED, FAILED, ou CANCELED) não reembolsa os seus créditos.

Devolve

200 OK quando a tarefa é eliminada, ou 409 Conflict quando a tarefa está IN_PROGRESS.


GET/openapi/v1/multi-image-to-3d

Listar tarefas de Multi-imagem para 3D

Devolve uma lista das suas tarefas de Multi-imagem para 3D.

Request

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

Response

[
  {
    "id": "018a210d-8ba4-705c-b111-1f1776f7f578",
    "type": "multi-image-to-3d",
    "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=***",
      "usdz": "https://assets.meshy.ai/***/tasks/018a210d-8ba4-705c-b111-1f1776f7f578/output/model.usdz?Expires=***",
      "pre_remeshed_glb": "https://assets.meshy.ai/***/tasks/018a210d-8ba4-705c-b111-1f1776f7f578/output/pre_remeshed_model.glb?Expires=***"
    },
    "thumbnail_url": "https://assets.meshy.ai/***/tasks/018a210d-8ba4-705c-b111-1f1776f7f578/output/preview.png?Expires=***",
    "thumbnail_urls": {
      "front": "https://assets.meshy.ai/***/tasks/018a210d-8ba4-705c-b111-1f1776f7f578/output/preview_front.png?Expires=***",
      "right": "https://assets.meshy.ai/***/tasks/018a210d-8ba4-705c-b111-1f1776f7f578/output/preview_right.png?Expires=***",
      "back": "https://assets.meshy.ai/***/tasks/018a210d-8ba4-705c-b111-1f1776f7f578/output/preview_back.png?Expires=***",
      "left": "https://assets.meshy.ai/***/tasks/018a210d-8ba4-705c-b111-1f1776f7f578/output/preview_left.png?Expires=***"
    },
    "texture_prompt": "",
    "progress": 100,
    "started_at": 1692771667037,
    "created_at": 1692771650657,
    "expires_at": 1692771679037,
    "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"
      }
    ],
    "preceding_tasks": 0,
    "task_error": null,

    "consumed_credits": 30
  }
]

Parâmetros

  • Name
    page_num
    Type
    integer
    predefinição 1
    Description

    O número de página a devolver, até 255. Um valor superior devolve 400.

  • Name
    page_size
    Type
    integer
    predefinição 10
    Description

    O número de tarefas por página, até 100.

  • Name
    sort_by
    Type
    string
    Description

    A ordem de ordenação.

    Valores disponíveis:

    • +created_at: mais antigas primeiro
    • -created_at: mais recentes primeiro

Devolve

Uma lista paginada de objetos de tarefa de Multi-imagem para 3D.


GET/openapi/v1/multi-image-to-3d/:id/stream

Transmitir uma tarefa de Multi-imagem para 3D

Transmite as atualizações de uma tarefa de Multi-imagem para 3D como Server-Sent Events (SSE).

Request

GET
/openapi/v1/multi-image-to-3d/018a210d-8ba4-705c-b111-1f1776f7f578/stream
curl -N https://api.meshy.ai/openapi/v1/multi-image-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.
// These examples are shortened. Each event holds the full task object.
event: message
data: {
  "id": "018a210d-8ba4-705c-b111-1f1776f7f578",
  "progress": 0,
  "status": "PENDING"
}

event: message
data: {
  "id": "018a210d-8ba4-705c-b111-1f1776f7f578",
  "type": "multi-image-to-3d",
  "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=***",
  "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=***",
  "pre_remeshed_glb": "https://assets.meshy.ai/***/tasks/018a210d-8ba4-705c-b111-1f1776f7f578/output/pre_remeshed_model.glb?Expires=***"
  },
  "thumbnail_url": "https://assets.meshy.ai/***/tasks/018a210d-8ba4-705c-b111-1f1776f7f578/output/preview.png?Expires=***",
  "thumbnail_urls": {
  "front": "https://assets.meshy.ai/***/tasks/018a210d-8ba4-705c-b111-1f1776f7f578/output/preview_front.png?Expires=***",
  "right": "https://assets.meshy.ai/***/tasks/018a210d-8ba4-705c-b111-1f1776f7f578/output/preview_right.png?Expires=***",
  "back": "https://assets.meshy.ai/***/tasks/018a210d-8ba4-705c-b111-1f1776f7f578/output/preview_back.png?Expires=***",
  "left": "https://assets.meshy.ai/***/tasks/018a210d-8ba4-705c-b111-1f1776f7f578/output/preview_left.png?Expires=***"
  },
  "texture_prompt": "",
  "progress": 100,
  "started_at": 1692771667037,
  "created_at": 1692771650657,
  "expires_at": 1692771679037,
  "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"
    }
  ],
  "preceding_tasks": 0,
  "task_error": null,

  "consumed_credits": 30
}

Parâmetros

  • Name
    id
    Type
    path
    Description

    O ID da tarefa proveniente da resposta de criação.

Devolve

Um fluxo de objetos de tarefa de Multi-imagem para 3D como Server-Sent Events.

Cada evento contém o objeto de tarefa completo, com a mesma estrutura devolvida pelo endpoint Get. Enquanto a tarefa estiver em PENDING ou IN_PROGRESS, os campos de resultado ainda não têm valores.


O objeto de tarefa Multi-imagem para 3D

Um objeto de tarefa Multi-imagem para 3D descreve uma geração de um modelo 3D a partir de uma a quatro imagens de um objeto. Contém o estado, o progress e os ficheiros do modelo quando a tarefa é bem-sucedida.

Propriedades

Example Multi-Image to 3D Task Object

{
  "id": "018a210d-8ba4-705c-b111-1f1776f7f578",
  "type": "multi-image-to-3d",
  "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=***",
    "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=***",
    "pre_remeshed_glb": "https://assets.meshy.ai/***/tasks/018a210d-8ba4-705c-b111-1f1776f7f578/output/pre_remeshed_model.glb?Expires=***"
  },
  "thumbnail_url": "https://assets.meshy.ai/***/tasks/018a210d-8ba4-705c-b111-1f1776f7f578/output/preview.png?Expires=***",
  "thumbnail_urls": {
    "front": "https://assets.meshy.ai/***/tasks/018a210d-8ba4-705c-b111-1f1776f7f578/output/preview_front.png?Expires=***",
    "right": "https://assets.meshy.ai/***/tasks/018a210d-8ba4-705c-b111-1f1776f7f578/output/preview_right.png?Expires=***",
    "back": "https://assets.meshy.ai/***/tasks/018a210d-8ba4-705c-b111-1f1776f7f578/output/preview_back.png?Expires=***",
    "left": "https://assets.meshy.ai/***/tasks/018a210d-8ba4-705c-b111-1f1776f7f578/output/preview_left.png?Expires=***"
  },
  "texture_prompt": "",
  "progress": 100,
  "started_at": 1692771667037,
  "created_at": 1692771650657,
  "expires_at": 1692771679037,
  "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"
    }
  ],
  "preceding_tasks": 0,
  "task_error": null,

  "consumed_credits": 30
}
  • Name
    id
    Type
    string
    Description

    O ID da tarefa. Trate-o como uma string opaca e não dependa do seu formato.

  • Name
    type
    Type
    string
    Description

    O tipo de tarefa, sempre multi-image-to-3d.

  • Name
    model_urls
    Type
    object
    Description

    URLs de transferência para o modelo 3D gerado, uma por formato de ficheiro. Um formato que a tarefa não gerou não tem chave, em vez de uma string vazia.

    • Name
      glb
      Type
      string
      Description

      O ficheiro GLB.

    • Name
      fbx
      Type
      string
      Description

      O ficheiro FBX.

    • Name
      obj
      Type
      string
      Description

      O ficheiro OBJ.

    • Name
      usdz
      Type
      string
      Description

      O ficheiro USDZ.

    • Name
      mtl
      Type
      string
      Description

      O ficheiro MTL, devolvido com o ficheiro OBJ quando o modelo tem texturas.

    • Name
      stl
      Type
      string
      Description

      O ficheiro STL.

    • Name
      3mf
      Type
      string
      Description

      O ficheiro 3MF. Presente apenas quando target_formats inclui 3mf.

    • Name
      pre_remeshed_glb
      Type
      string
      Description

      O ficheiro GLB anterior ao remesh. Presente apenas quando criou a tarefa com should_remesh: true e save_pre_remeshed_model: true.

  • Name
    thumbnail_url
    Type
    string
    Description

    URL de transferência para uma imagem de pré-visualização do modelo. É igual a thumbnail_urls.front quando esse campo está presente.

  • Name
    alpha_thumbnail_url
    Type
    string
    Description

    URL de transferência para uma versão de thumbnail_url com fundo transparente (RGBA). Presente apenas quando criou a tarefa com alpha_thumbnail: true e a Meshy renderizou a pré-visualização transparente.

  • Name
    thumbnail_urls
    Type
    object
    Description

    URLs de transferência para pré-visualizações do modelo 3D a partir de quatro lados. Cada uma é um URL assinado para um PNG de 512×512, renderizado com os mesmos materiais e iluminação que thumbnail_url. Pode utilizá-las para pré-visualizar o modelo a partir de vários ângulos sem transferir o GLB.

    Presente apenas quando criou a tarefa com multi_view_thumbnails: true e a tarefa atingiu SUCCEEDED. Uma tarefa criada sem multi_view_thumbnails: true não tem este campo.

    • Name
      front
      Type
      string
      Description

      A vista frontal, a 0° em torno do eixo vertical. Corresponde a thumbnail_url.

    • Name
      right
      Type
      string
      Description

      A vista direita, a 90°.

    • Name
      back
      Type
      string
      Description

      A vista traseira, a 180°.

    • Name
      left
      Type
      string
      Description

      A vista esquerda, a 270°.

  • Name
    texture_prompt
    Type
    string
    Description

    O prompt de texto que guiou a textura.

  • Name
    texture_image_urls
    Type
    string[]
    Description

    URLs de transferência para as imagens de referência de textura com que criou a tarefa, pela ordem em que as enviou. Presente apenas quando criou a tarefa com texture_image_urls.

  • Name
    ultra_mode
    Type
    boolean
    ⚠ obsoleto
    Description

    Consulte geometry_resolution em vez disso.

  • Name
    geometry_resolution
    Type
    string
    Description

    O nível Ultra em que a tarefa foi executada, que é 2k. Uma tarefa standard não tem este campo.

  • Name
    progress
    Type
    integer
    Description

    Quanto da tarefa está concluído, em percentagem. É 0 até a tarefa começar e 100 quando é bem-sucedida.

  • Name
    started_at
    Type
    timestamp
    Description

    Momento em que a tarefa começou, em milissegundos Unix. É 0 até a tarefa começar.

  • Name
    created_at
    Type
    timestamp
    Description

    Momento em que a tarefa foi criada, em milissegundos Unix.

  • Name
    expires_at
    Type
    timestamp
    Description

    Momento em que os resultados da tarefa expiram, em milissegundos Unix.

  • Name
    finished_at
    Type
    timestamp
    Description

    Momento em que a tarefa terminou, em milissegundos Unix. É 0 até a tarefa terminar.

  • Name
    status
    Type
    string
    Description

    O estado da tarefa, um de PENDING, IN_PROGRESS, SUCCEEDED, FAILED ou CANCELED.

  • Name
    texture_urls
    Type
    array
    Description

    URLs de transferência para os mapas de textura que a tarefa gerou, como um array de objetos. Normalmente contém um objeto. Cada objeto tem estes campos:

    • Name
      base_color
      Type
      string
      Description

      O mapa de cor base.

    • Name
      metallic
      Type
      string
      Description

      O mapa metálico. Não incluído quando criou a tarefa com enable_pbr: false.

    • Name
      normal
      Type
      string
      Description

      O mapa de normais. Não incluído quando criou a tarefa com enable_pbr: false.

    • Name
      roughness
      Type
      string
      Description

      O mapa de rugosidade. Não incluído quando criou a tarefa com enable_pbr: false.

    • Name
      emission
      Type
      string
      Description

      O mapa de emissão. Incluído apenas quando criou a tarefa com tudo o seguinte:

      • ai_model: meshy-6, com o seu modelo de textura predefinido
      • enable_pbr: true
      • um texture_resolution de 2k ou 4k
  • Name
    preceding_tasks
    Type
    integer
    Description

    O número de tarefas à frente desta na fila. O valor só é relevante enquanto a tarefa está PENDING.

  • Name
    task_error
    Type
    object
    Description

    Os detalhes do erro quando a tarefa falha. É null a menos que o estado seja FAILED. Consulte Erros.

  • Name
    consumed_credits
    Type
    integer
    Description

    O número de créditos que a tarefa utilizou. Presente quando o estado é PENDING, IN_PROGRESS ou SUCCEEDED. É 0 para uma tarefa FAILED, porque a Meshy reembolsa os créditos quando uma tarefa falha.