La API de Texto a 3D es una función que te permite integrar las capacidades de Texto a 3D de Meshy en tu propia aplicación. En esta sección, encontrarás toda la información
que necesitas para empezar a usar esta API.
Texto a 3D usa un flujo de trabajo de dos pasos. Primero, crea una tarea de vista previa (mode: "preview") para generar una malla 3D sin textura, de modo que puedas evaluar la forma. Luego, pasa el ID de tarea de la vista previa completada a una tarea de refinamiento (mode: "refine") para aplicar textura a la malla. Ambos pasos comparten el mismo endpoint.
Este endpoint crea una tarea de vista previa de Texto a 3D, que genera una malla 3D sin textura (solo geometría) a partir de un prompt de texto. Este es el primer paso del flujo de trabajo de dos pasos. Una vez que la vista previa se complete correctamente, usa el ID de tarea devuelto para crear una tarea de refinamiento para aplicar texturas. Consulta
El objeto de tarea de Texto a 3D para ver el esquema de respuesta completo.
Parámetros
Name
mode
Type
string
Requerido
Description
Este campo debe establecerse en "preview" al crear una tarea de vista previa.
Name
prompt
Type
string
Requerido
Description
Describe qué tipo de objeto es el modelo 3D. Máximo 600 caracteres.
Name
model_type
Type
string
predeterminado standard
Description
Especifica el tipo de Generación de malla 3D.
Valores disponibles:
standard: Generación de malla 3D normal de alto detalle.
lowpoly: Genera una malla low-poly optimizada para polígonos más limpios.
Cuando se selecciona lowpoly, se ignoran ai_model, topology, target_polycount, should_remesh.
Name
ai_model
Type
string
predeterminado latest
Description
ID del modelo que se va a usar. Valores disponibles: meshy-5, meshy-6, latest (Meshy 6).
Name
should_remesh
Type
boolean
predeterminado false (meshy-6), true (others)
Description
Controla si se habilita la fase de remallado (remesh). Cuando se establece en false, la API devolverá directamente la malla triangular de mayor precisión.
Solo aplica cuando should_remesh = true
Name
topology
Type
string
predeterminado triangle
Description
Especifica la topology del modelo generado.
Valores disponibles:
quad: Genera una malla predominantemente de cuadriláteros.
triangle: Genera una malla triangular diezmada.
Name
target_polycount
Type
integer
predeterminado 30,000
Description
Especifica el número objetivo de polígonos en el modelo generado. El número real de polígonos puede desviarse del objetivo según la complejidad de la geometría.
El rango de valores válido varía según el nivel de usuario:
De 100 a 300,000 (inclusive)
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
symmetry_mode
Type
string
⚠ obsoleto
predeterminado auto
Description
Obsoleto (deprecated). 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: Fuerza la simetría durante la generación.
Name
pose_mode
Type
string
predeterminado ""
Description
Especifica el pose mode 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
Usa pose_mode en su lugar. Indica si se debe generar el modelo en una pose A/T.
Name
art_style
Type
string
⚠ obsoleto
predeterminado realistic
Description
No compatible con Meshy-6. Las solicitudes que usen Meshy-6 ignorarán art_style, y algunas combinaciones pueden causar errores. Valores disponibles: realistic, sculpture.
enable_pbr debe establecerse en false al usar el estilo Sculpture, ya que el estilo Sculpture genera su propio conjunto de mapas PBR.
Name
moderation
Type
boolean
predeterminado false
Description
Cuando se establece en true, el contenido de entrada se revisará automáticamente para detectar contenido potencialmente dañino. Si se detecta contenido dañino, la tarea no procederá a la generación.
Se revisará el texto de prompt.
Name
target_formats
Type
string[]
Description
Especifica qué formatos de archivo 3D se deben 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.
Cuando se omite, se generan todos los formatos excepto 3mf. 3mf solo se incluye cuando se especifica explícitamente.
Name
alpha_thumbnail
Type
boolean
predeterminado false
Description
Cuando se establece en true, la tarea renderiza además una versión con fondo transparente (RGBA) de la vista previa y la devuelve como alpha_thumbnail_url en la respuesta GET. El campo existente thumbnail_url no cambia.
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 y redimensionar el modelo en consecuencia. El origen se establecerá de forma predeterminada en bottom a menos que origin_at se establezca explícitamente.
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 Texto a 3D recién creada.
Modos de fallo
Name
400 - Bad Request
Description
La solicitud no era aceptable. Causas comunes:
Parámetro faltante: Falta un parámetro requerido (p. ej., prompt, mode).
Parámetro no válido: art_style no es uno de los valores permitidos.
Prompt demasiado largo: El prompt supera el límite de caracteres.
Name
401 - Unauthorized
Description
La autenticación falló. Comprueba tu clave de API.
Este endpoint crea una tarea de refinamiento de Texto a 3D, que aplica textura a una malla de vista previa completada. Debe proporcionar el preview_task_id de una tarea de vista previa correcta. Este es el segundo paso del flujo de trabajo de dos pasos.
Parámetros
Name
mode
Type
string
Requerido
Description
Este campo debe establecerse en "refine" al crear una tarea de refinamiento.
Name
preview_task_id
Type
string
Requerido
Description
El id de la tarea de vista previa correspondiente.
El estado de la tarea de vista previa proporcionada debe ser SUCCEEDED.
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 o latest.
Name
hd_texture
Type
boolean
predeterminado false
Description
Genera la textura de color base con resolución 4K (4096×4096) para un mayor nivel de detalle.
Solo se admite cuando ai_model es meshy-6 o latest. Los mapas PBR siempre se generan a 2K.
Name
texture_prompt
Type
string
Description
Proporcione un prompt de texto adicional para guiar el proceso de texturizado. Máximo 600 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 Data URI codificado en base64 de la imagen. Ejemplo de un Data URI: data:image/jpeg;base64,<your base64-encoded image data>
Es posible que el texturizado con imagen no funcione de forma óptima si existen diferencias sustanciales de geometría entre el asset original y la imagen cargada. Solo se puede usar uno de texture_image_url o texture_prompt para guiar el proceso de texturizado. Si se proporcionan ambos parámetros, entonces se usará texture_prompt para texturizar el modelo de forma predeterminada.
Name
ai_model
Type
string
predeterminado latest
Description
ID del modelo que se usará para el refinamiento. Valores disponibles: meshy-5, meshy-6, latest (Meshy 6).
Name
moderation
Type
boolean
predeterminado false
Description
Cuando se establece en true, el contenido de entrada se analizará automáticamente para detectar contenido potencialmente dañino. Si se detecta contenido dañino, la tarea no continuará con la generación.
Se analizarán tanto el texto de texture_prompt como la imagen de texture_image_url.
Name
remove_lighting
Type
boolean
predeterminado true
Description
Elimina brillos y sombras de la textura de color base, produciendo un resultado más limpio que funciona mejor con configuraciones de iluminación personalizadas.
Solo se admite cuando ai_model es meshy-6 o latest.
Name
target_formats
Type
string[]
Description
Especifica qué formatos de archivo 3D se deben 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. Si se omite, se incluyen todos los formatos admitidos.
Si se omite, se generan todos los formatos excepto 3mf. 3mf solo se incluye cuando se especifica explícitamente.
Name
alpha_thumbnail
Type
boolean
predeterminado false
Description
Cuando se establece en true, la tarea renderiza además 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
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 y redimensionar el modelo en consecuencia. El origen será bottom de forma predeterminada, a menos que origin_at se establezca explícitamente.
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 la tarea de Texto a 3D recién creada.
Modos de fallo
Name
400 - Bad Request
Description
La solicitud no era aceptable. Causas comunes:
ID de tarea no válido: El preview_task_id no es válido o no existe.
Tarea no lista: La tarea de vista previa aún no se ha completado correctamente.
Incompatibilidad de modelo: El modelo de IA de la tarea de vista previa es incompatible con el modelo de refinamiento solicitado.
Name
401 - Unauthorized
Description
La autenticación falló. Compruebe su clave de API.
Name
402 - Payment Required
Description
Créditos insuficientes para realizar esta tarea.
Name
404 - Not Found
Description
No se encontró la tarea de vista previa especificada por preview_task_id.
Este endpoint te permite recuperar una tarea de Texto a 3D dado un id de tarea válido.
Consulta El objeto de tarea de Texto a 3D para ver qué
propiedades se incluyen con el objeto de tarea de Texto a 3D.
Este endpoint funciona tanto para tareas de vista previa como de refinado.
Parámetros
Name
id
Type
path
Description
Identificador único de la tarea de Texto a 3D que se va a recuperar.
Devuelve
La respuesta contiene el objeto de tarea de Texto a 3D. Consulta la sección
El objeto de tarea de Texto a 3D para obtener detalles.
El objeto de tarea de Texto a 3D es una unidad de trabajo que Meshy rastrea para generar un modelo 3D a partir de una entrada de texto. Hay dos etapas de la API de Texto a 3D, preview y refine. La etapa de vista previa sirve para generar un modelo 3D solo con malla, y la etapa de refinamiento sirve para generar un modelo 3D con textura basado en el resultado de la etapa de vista previa.
El objeto tiene las siguientes propiedades:
Propiedades
Name
id
Type
string
Description
Identificador único de 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 Texto a 3D. Los valores posibles son text-to-3d-preview para tareas de la etapa de vista previa y text-to-3d-refine para tareas de la etapa de refinado.
Name
model_urls
Type
object
Description
URL descargable del archivo de modelo 3D con textura generado por Meshy. La propiedad de 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 del archivo GLB.
Name
fbx
Type
string
Description
URL descargable del archivo FBX.
Name
usdz
Type
string
Description
URL descargable del archivo USDZ.
Name
obj
Type
string
Description
URL descargable del archivo OBJ.
Name
mtl
Type
string
Description
URL descargable del archivo MTL.
Name
stl
Type
string
Description
URL descargable del archivo STL.
Name
3mf
Type
string
Description
URL descargable del archivo 3MF. Solo está presente cuando se solicitó 3mf mediante target_formats.
Name
prompt
Type
string
Description
Este es el prompt sin modificar que se usó para crear la tarea.
Name
negative_prompt
Type
string
⚠ obsoleto
Description
Mantenido por compatibilidad con versiones anteriores. Este campo no tiene ningún impacto funcional en los modelos generados.
Name
art_style
Type
string
⚠ obsoleto
Description
El art_style sin modificar que se usó para crear la tarea de vista previa. No es compatible con Meshy-6.
Name
texture_richness
Type
string
⚠ obsoleto
Description
Mantenido por compatibilidad con versiones anteriores. Este campo no tiene ningún impacto funcional en los modelos generados.
Name
texture_prompt
Type
string
Description
Prompt de texto adicional proporcionado para guiar el proceso de aplicación de textura durante la etapa de refinado.
Name
texture_image_url
Type
string
Description
URL descargable de la imagen de textura que se usó para guiar el proceso de aplicación de textura.
Name
thumbnail_url
Type
string
Description
URL descargable de la imagen de miniatura del archivo de modelo.
Name
alpha_thumbnail_url
Type
string
Description
URL descargable de una versión con fondo transparente (RGBA) de thumbnail_url. Solo está presente cuando la tarea se creó con alpha_thumbnail: true y la vista previa transparente se renderizó correctamente; de lo contrario, este campo se omite.
Name
video_url
Type
string
⚠ obsoleto
Description
URL descargable del video de vista previa. Se eliminará en una versión futura.
Name
progress
Type
integer
Description
Progress de la tarea. Si la tarea aún no se ha iniciado, esta propiedad será 0. Una vez que la tarea se haya completado correctamente, pasará a ser 100.
Name
started_at
Type
timestamp
Description
Marca de tiempo de cuando se inició la tarea, en milisegundos. Si la tarea aún no se ha iniciado, esta propiedad será 0.
Una marca de tiempo representa el número de milisegundos transcurridos desde el 1 de enero de 1970 UTC, siguiendo
el estándar RFC 3339.
Por ejemplo, el viernes 1 de septiembre de 2023 a las 12:00:00 PM GMT se representa como 1693569600000. Esto se aplica
a todas las marcas de tiempo en Meshy API.
Name
created_at
Type
timestamp
Description
Marca de tiempo de cuando se creó la tarea, en milisegundos.
Name
finished_at
Type
timestamp
Description
Marca de tiempo de cuando finalizó la tarea, 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
Un array de objetos de URL de textura que se generan a partir de la tarea. Normalmente esto solo contiene un objeto de URL de textura. Cada URL de textura tiene las siguientes propiedades:
Name
base_color
Type
string
Description
URL descargable de la imagen del mapa de color base.
Name
metallic
Type
string
Description
URL descargable de la imagen del mapa de metalicidad.
Si la tarea se crea con enable_pbr: false, esta propiedad se omitirá.
Name
normal
Type
string
Description
URL descargable de la imagen del mapa de normales.
Si la tarea se crea con enable_pbr: false, esta propiedad se omitirá.
Name
roughness
Type
string
Description
URL descargable de la imagen del mapa de rugosidad.
Si la tarea se crea con enable_pbr: false, esta propiedad se omitirá.
Name
emission
Type
string
Description
URL descargable de la imagen del mapa de emisión.
Si la tarea se crea con enable_pbr: false, o ai_model es meshy-5, esta propiedad se omitirá.
Name
preceding_tasks
Type
integer
Description
El número de tareas precedentes.
El valor de este campo solo tiene significado si el estado de la tarea es PENDING.
Name
task_error
Type
object
Description
Detalles del error para tareas fallidas. Consulta Errores para ver la referencia completa del objeto task_error.
Name
consumed_credits
Type
integer
Description
El número de créditos consumidos por esta tarea. Está 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).
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,"seed":1234,"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}