API de Imagen a 3D

La API de Imagen a 3D es una característica que te permite integrar las capacidades de Imagen a 3D de Meshy en tu propia aplicación. En esta sección, encontrarás toda la información que necesitas para comenzar con esta API.


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

Crear una tarea de imagen a 3D

Este endpoint le permite crear una nueva tarea de Imagen a 3D. Consulte El objeto de tarea Imagen a 3D para ver qué propiedades se incluyen en el objeto de tarea Imagen a 3D.

Parámetros

  • Name
    input_task_id
    Type
    string
    Requerido
    Description

    El ID de una tarea de generación de imágenes completada cuya salida debe usarse como imagen de entrada. Esta tarea debe ser una de las siguientes: Texto a imagen o Imagen a imagen. Además, debe haberse ejecutado a través de la API, tener un estado SUCCEEDED y producir exactamente una imagen.

  • Name
    image_url
    Type
    string
    Requerido
    Description

    Proporcione una imagen para que Meshy la use en la creación del modelo. Actualmente admitimos los formatos .jpg, .jpeg y .png.

    Hay dos formas de proporcionar la imagen:

    • URL de acceso público: Una URL accesible desde internet público.
    • Data URI: Un URI de datos codificado en base64 de la imagen. Ejemplo de un Data URI: data:image/jpeg;base64,<your base64-encoded image data>.
  • Name
    model_type
    Type
    string
    predeterminado standard
    Description

    Especifique el tipo de generación de malla 3D.

    Valores disponibles:

    • standard: Generación regular de malla 3D de alto detalle.
    • smart-topology: Elija un modelo Smart Topology con ai_model (meshy-t2).
    • lowpoly (obsoleto): Genera una malla low-poly optimizada para polígonos más limpios. Recomendamos usar smart-topology en su lugar.
  • Name
    ai_model
    Type
    string
    predeterminado latest
    Description

    ID del modelo a utilizar. Los valores disponibles dependen de model_type.

    Generación estándar (model_type: standard):

    • meshy-5, meshy-6, meshy-7, latest (Meshy 7)

    Generación Smart Topology (model_type: smart-topology):

    • meshy-t2 (predeterminado): el modelo Smart Topology — topología más limpia, partes separadas de forma nativa, salida en triángulos y un recuento de caras que puede establecer con target_polycount.
  • Name
    ultra_mode
    Type
    boolean
    predeterminado false
    Description

    Habilita la generación Ultra para obtener una geometría de mayor fidelidad con detalles de superficie más finos.

  • Name
    should_texture
    Type
    boolean
    predeterminado true
    Description

    Determina si se generan las texturas. Al establecerlo en false se omite la fase de textura, proporcionando una malla sin texturas.

Solo aplica cuando should_texture = true
  • Name
    enable_pbr
    Type
    boolean
    predeterminado false
    Description

    Genera mapas PBR (metálico, rugosidad, normal) además del color base. También se incluye un mapa de emisión cuando ai_model es meshy-6, excepto en texture_resolution: 8k. meshy-7 y latest no producen un mapa de emisión.

  • Name
    texture_resolution
    Type
    string
    predeterminado 2k
    Description

    Resolución de la textura de color base. Uno de 2k (2048×2048), 4k (4096×4096) u 8k (8192×8192). Las resoluciones más altas capturan más detalle de superficie.

  • Name
    hd_texture
    Type
    boolean
    obsoleto
    predeterminado false
    Description

    Use texture_resolution en su lugar — equivalente a texture_resolution: "4k". Cuando ambos están configurados, texture_resolution tiene prioridad.

  • Name
    texture_prompt
    Type
    string
    Description

    Proporcione un prompt de texto para guiar el proceso de texturizado. Máximo 800 caracteres.

  • Name
    texture_image_url
    Type
    string
    Description

    Proporcione una imagen 2D para guiar el proceso de texturizado. Actualmente admitimos los formatos .jpg, .jpeg y .png.

    Hay dos formas de proporcionar la imagen:

    • URL de acceso público: Una URL accesible desde internet público
    • Data URI: Un URI de datos codificado en base64 de la imagen. Ejemplo de un Data URI: data:image/jpeg;base64,<your base64-encoded image data>
  • Name
    should_remesh
    Type
    boolean
    predeterminado false (meshy-6, meshy-7), true (others)
    Description

    Controla si se habilita la fase de remallado. Para obtener el modelo de mayor calidad, recomendamos establecer should_remesh en false.

Solo aplica cuando should_remesh = true
  • Name
    topology
    Type
    string
    predeterminado triangle
    Description

    Especifique la topología del modelo generado.

    Valores disponibles:

    • quad: Genera una malla predominantemente de cuadriláteros.
    • triangle: Genera una malla de triángulos decimada.
  • Name
    decimation_mode
    Type
    integer
    Description

    Habilita la decimación adaptativa estableciendo un nivel de recuento de polígonos. Cuando se establece, se ignora target_polycount.

    Valores disponibles:

    • 1: Adaptativo — recuento de polígonos ultra.
    • 2: Adaptativo — recuento de polígonos alto.
    • 3: Adaptativo — recuento de polígonos medio.
    • 4: Adaptativo — recuento de polígonos bajo.
  • Name
    save_pre_remeshed_model
    Type
    boolean
    predeterminado false
    Description

    Cuando se establece en true, Meshy también almacena un archivo GLB adicional antes de que se complete la fase de remallado.

  • Name
    target_polycount
    Type
    integer
    Description

    Número objetivo de polígonos (caras) en la salida. El recuento real puede desviarse del objetivo según la geometría.

    target_polycount surte efecto en dos casos independientes:

    • Remallado — con should_remesh: true en un modelo standard. La malla se remalla (decima) a aproximadamente este recuento. Rango de 100 a 300 000, predeterminado 30 000. Si se establece decimation_mode, tiene prioridad y se ignora target_polycount.
    • Smart Topology — con model_type: smart-topology y ai_model: meshy-t2. El modelo se genera directamente con este recuento de caras; no se ejecuta ningún remallado y no se requiere should_remesh. Rango de 100 a 15 000, predeterminado 4000.
  • Name
    symmetry_mode
    Type
    string
    obsoleto
    predeterminado auto
    Description

    Obsoleto. Este parámetro ya no afecta la salida.

    El campo symmetry_mode controla el comportamiento de simetría durante el proceso de generación del modelo.

    Los valores válidos son:

    • off: Deshabilita la simetría.
    • auto: Determina y aplica automáticamente la simetría según la geometría de entrada.
    • on: Impone la simetría durante la generación.
  • Name
    pose_mode
    Type
    string
    predeterminado ""
    Description

    Especifique el modo de pose para el modelo generado.

    Valores disponibles:

    • a-pose: Genera el modelo en una pose A.
    • t-pose: Genera el modelo en una pose T.
    • "" (cadena vacía): No se aplica ninguna pose específica.
  • Name
    is_a_t_pose
    Type
    boolean
    obsoleto
    predeterminado false
    Description

    Use pose_mode en su lugar. Indica si se debe generar el modelo en una pose A/T.

  • Name
    image_enhancement
    Type
    boolean
    predeterminado true
    Description

    Optimiza la imagen de entrada para obtener mejores resultados. Establézcalo en false para preservar la apariencia exacta de la imagen de entrada sin ningún procesamiento de estilo.

  • Name
    remove_lighting
    Type
    boolean
    predeterminado true
    Description

    Elimina los brillos y sombras de la textura de color base, produciendo un resultado más limpio que funciona mejor con configuraciones de iluminación personalizadas.

  • Name
    moderation
    Type
    boolean
    predeterminado false
    Description

    Cuando se establece en true, el contenido de entrada se examinará automáticamente en busca de contenido potencialmente dañino. Si se detecta contenido dañino, la tarea no continuará a la generación.

    Se examinará el contenido de las entradas image_url, texture_image_url y texture_prompt.

  • Name
    target_formats
    Type
    string[]
    Description

    Especifica qué formatos de archivo 3D incluir en la salida. Solo se generarán y devolverán los formatos solicitados, lo que puede reducir el tiempo de finalización de la tarea. Cuando se omite, se incluyen todos los formatos compatibles.

    Valores disponibles: glb, obj, fbx, stl, usdz, 3mf

  • Name
    auto_size
    Type
    boolean
    predeterminado false
    Description

    Cuando se establece en true, el servicio usa visión de IA para estimar automáticamente la altura real del objeto en el mundo real y redimensionar el modelo en consecuencia. El origen será bottom de forma predeterminada, a menos que origin_at se establezca explícitamente.

  • Name
    alpha_thumbnail
    Type
    boolean
    predeterminado false
    Description

    Cuando se establece en true, la tarea también renderiza una versión con fondo transparente (RGBA) de la vista previa y la devuelve como alpha_thumbnail_url en la respuesta GET. El campo thumbnail_url existente no cambia.

  • Name
    multi_view_thumbnails
    Type
    boolean
    predeterminado false
    Description

    Cuando se establece en true, la tarea también renderiza cuatro miniaturas de vistas cardinales (frontal, derecha, trasera, izquierda) y las devuelve bajo thumbnail_urls en la respuesta GET. El campo thumbnail_url existente no cambia y sigue apuntando a la vista frontal, por lo que los clientes existentes no se ven afectados.

Solo aplica cuando auto_size = true
  • Name
    origin_at
    Type
    string
    predeterminado bottom
    Description

    Posición del origen cuando auto_size está habilitado.

    Valores disponibles: bottom, center.

Devuelve

La propiedad result de la respuesta contiene el id de tarea de la tarea de Imagen a 3D recién creada.

Modos de fallo

  • Name
    400 - Bad Request
    Description

    La solicitud no fue aceptable. Causas comunes:

    • Parámetro faltante: Se debe proporcionar image_url o input_task_id.
    • Tarea de entrada no válida: input_task_id debe referirse a una tarea de Texto a imagen o Imagen a imagen con estado SUCCEEDED que produzca exactamente una imagen.
    • Formato de imagen no válido: El image_url proporcionado no tiene un formato compatible (.jpg, .jpeg, .png).
    • URL inaccesible: No se pudo descargar el image_url (404 o timeout).
    • Data URI no válido: La cadena base64 está mal formada.
    • Combinación de parámetros no válida: enable_pbr solo es compatible cuando should_texture es true.
  • Name
    401 - Unauthorized
    Description

    Error de autenticación. Verifique su clave de API.

  • Name
    402 - Payment Required
    Description

    Créditos insuficientes para realizar esta tarea.

  • Name
    429 - Too Many Requests
    Description

    Ha excedido su límite de tasa.

Request

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

# With remesh, PBR, and A-pose
curl https://api.meshy.ai/openapi/v1/image-to-3d \
  -X POST \
  -H "Authorization: Bearer ${YOUR_API_KEY}" \
  -H 'Content-Type: application/json' \
  -d '{
    "image_url": "<your publicly accessible image url or base64-encoded data URI>",
    "enable_pbr": true,
    "should_remesh": true,
    "target_polycount": 100000,
    "should_texture": true,
    "pose_mode": "a-pose",
    "target_formats": ["glb"]
  }'

Response

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

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

Recuperar una Tarea de Imagen a 3D

Este endpoint te permite recuperar una tarea de Imagen a 3D dado un id de tarea válido. Consulta El Objeto de Tarea de Imagen a 3D para ver qué propiedades están incluidas con el objeto de tarea de Imagen a 3D.

Parámetros

  • Name
    id
    Type
    path
    Description

    Identificador único para la tarea de Imagen a 3D a recuperar.

Retornos

La respuesta contiene el objeto de tarea de Imagen a 3D. Revisa la sección El Objeto de Tarea de Imagen a 3D para más detalles.

Solicitud

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

Respuesta

{
  "id": "018a210d-8ba4-705c-b111-1f1776f7f578",
  "type": "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",
      "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": 30
}

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

Eliminar una tarea de Imagen a 3D

Este endpoint elimina permanentemente una tarea de Imagen a 3D, incluyendo todos los modelos y datos asociados. Esta acción es irreversible.

Parámetros de ruta

  • Name
    id
    Type
    path
    Description

    El ID de la tarea de Imagen a 3D a eliminar.

Retornos

Devuelve 200 OK en caso de éxito.

Request

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

Response

// Returns 200 Ok on success.

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

Listar Tareas de Imagen a 3D

Este endpoint te permite recuperar una lista de tareas de Imagen a 3D.

Parámetros

Atributos opcionales

  • Name
    page_num
    Type
    integer
    Description

    Número de página para paginación. Comienza y por defecto es 1.

  • Name
    page_size
    Type
    integer
    Description

    Límite del tamaño de página. Por defecto es 10 elementos. El máximo permitido es 50 elementos.

  • Name
    sort_by
    Type
    string
    Description

    Campo para ordenar. Valores disponibles:

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

Retornos

Devuelve una lista paginada de Los Objetos de Tarea de Imagen a 3D.

Solicitud

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

Respuesta

[
  {
    "id": "018a210d-8ba4-705c-b111-1f1776f7f578",
    "type": "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",
        "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": 30
  }
]

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

Transmitir una Tarea de Imagen a 3D

Este endpoint transmite actualizaciones en tiempo real para una tarea de Imagen a 3D utilizando Server-Sent Events (SSE).

Parámetros

  • Name
    id
    Type
    path
    Description

    Identificador único para la tarea de Imagen a 3D a transmitir.

Retornos

Devuelve un flujo de Los Objetos de Tarea de Imagen a 3D como Server-Sent Events.

Para tareas PENDING o IN_PROGRESS, el flujo de respuesta solo incluirá los campos necesarios de progress y status.

Solicitud

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

Flujo de Respuesta

// 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",
  "type": "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",
      "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": 30
}

El Objeto de Tarea de Imagen a 3D

El objeto de tarea de Imagen a 3D es una unidad de trabajo que Meshy rastrea para generar un modelo 3D a partir de una entrada de imagen. El objeto tiene las siguientes propiedades:

Propiedades

  • Name
    id
    Type
    string
    Description

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

  • Name
    type
    Type
    string
    Description

    Tipo de la tarea de Imagen a 3D. El valor es image-to-3d.

  • Name
    model_urls
    Type
    object
    Description

    URL descargable al archivo del modelo 3D texturizado generado por Meshy. La propiedad para un formato se omitirá si el formato no se genera en lugar de devolver una cadena vacía.

    • Name
      glb
      Type
      string
      Description

      URL descargable al archivo GLB.

    • Name
      fbx
      Type
      string
      Description

      URL descargable al archivo FBX.

    • Name
      obj
      Type
      string
      Description

      URL descargable al archivo OBJ.

    • Name
      usdz
      Type
      string
      Description

      URL descargable al archivo USDZ.

    • Name
      mtl
      Type
      string
      Description

      URL descargable al archivo MTL, devuelto junto con las exportaciones OBJ cuando hay texturas presentes.

    • Name
      stl
      Type
      string
      Description

      URL descargable al archivo STL.

    • Name
      3mf
      Type
      string
      Description

      URL descargable al archivo 3MF. Solo presente cuando 3mf fue solicitado a través de target_formats.

    • Name
      pre_remeshed_glb
      Type
      string
      Description

      URL descargable al resultado original GLB antes de la remalla.

  • Name
    thumbnail_url
    Type
    string
    Description

    URL descargable a la imagen en miniatura del archivo del modelo. Equivalente a thumbnail_urls.front cuando está presente, mantenido para compatibilidad hacia atrás.

  • Name
    alpha_thumbnail_url
    Type
    string
    Description

    URL descargable a una versión de fondo transparente (RGBA) de thumbnail_url. Solo presente cuando la tarea fue creada con alpha_thumbnail: true y la vista previa transparente fue renderizada exitosamente; de lo contrario, este campo se omite.

  • Name
    thumbnail_urls
    Type
    object
    Description

    URLs descargables para cuatro miniaturas de vista cardinal del modelo 3D generado. Cada valor es una URL firmada a un PNG de 512×512 renderizado con los mismos materiales e iluminación que thumbnail_url. Útil para previsualizar el modelo desde múltiples ángulos en tuberías por lotes sin descargar el GLB.

    • Name
      front
      Type
      string
      Description

      Vista frontal, rotación de 0° alrededor del eje vertical (coincide con thumbnail_url).

    • Name
      right
      Type
      string
      Description

      Vista derecha, rotación de 90°.

    • Name
      back
      Type
      string
      Description

      Vista trasera, rotación de 180°.

    • Name
      left
      Type
      string
      Description

      Vista izquierda, rotación de 270°.

  • Name
    texture_prompt
    Type
    string
    Description

    El texto de solicitud que se utilizó para guiar el proceso de texturización.

  • Name
    texture_image_url
    Type
    string
    Description

    URL descargable a la imagen de textura que se utilizó para guiar el proceso de texturización.

  • Name
    ultra_mode
    Type
    boolean
    Description

    Refleja el valor de ultra_mode con el que se creó la tarea. Solo presente para tareas meshy-7 (o latest) que establecieron explícitamente ultra_mode; omitido de lo contrario.

  • Name
    progress
    Type
    integer
    Description

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

  • Name
    started_at
    Type
    timestamp
    Description

    Marca de tiempo de cuando la tarea fue iniciada, en milisegundos. Si la tarea aún no ha comenzado, esta propiedad será 0.

  • Name
    created_at
    Type
    timestamp
    Description

    Marca de tiempo de cuando la tarea fue creada, en milisegundos.

  • Name
    expires_at
    Type
    timestamp
    Description

    Marca de tiempo de cuando expira el resultado de la tarea, en milisegundos.

  • Name
    finished_at
    Type
    timestamp
    Description

    Marca de tiempo de cuando la tarea fue finalizada, en milisegundos. Si la tarea aún no ha finalizado, esta propiedad será 0.

  • Name
    status
    Type
    string
    Description

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

  • Name
    texture_urls
    Type
    array
    Description

    Una matriz de objetos URL de textura que se generan a partir de la tarea. Normalmente, esto solo contiene un objeto URL de textura. Cada URL de textura tiene las siguientes propiedades:

    • Name
      base_color
      Type
      string
      Description

      URL descargable a la imagen del mapa de color base.

    • Name
      metallic
      Type
      string
      Description

      URL descargable a la imagen del mapa metálico.

    • Name
      normal
      Type
      string
      Description

      URL descargable a la imagen del mapa de normales.

    • Name
      roughness
      Type
      string
      Description

      URL descargable a la imagen del mapa de rugosidad.

    • Name
      emission
      Type
      string
      Description

      URL descargable a la imagen del mapa de emisión.

  • Name
    preceding_tasks
    Type
    integer
    Description

    El conteo de tareas precedentes.

  • Name
    task_error
    Type
    object
    Description

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

  • Name
    consumed_credits
    Type
    integer
    Description

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

Ejemplo de Objeto de Tarea de Imagen a 3D

{
  "id": "018a210d-8ba4-705c-b111-1f1776f7f578",
  "type": "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": "",
  "texture_image_url": "",
  "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",
      "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": 30
}