Meshy 7 API
Referencia completa de la API para los modelos de generación 3D Meshy 7.
Variantes del modelo
| Modelo | Descripción |
|---|---|
meshy-v7-text-to-3d | Genera un modelo 3D a partir de una descripción de texto |
meshy-v7-image-to-3d | Genera un modelo 3D a partir de una sola imagen |
meshy-v7-multiview-to-3d | Genera un modelo 3D a partir de varias imágenes de referencia |
Puntos de conexión
textPOST /api/v1/3d/task GET /api/v1/3d/{task_id}
Meshy 7: de texto a 3D
Parámetros obligatorios
| Parámetro | Tipo | Descripción |
|---|---|---|
model_name | string | Debe ser meshy-v7-text-to-3d |
prompt | string | Descripción de texto del modelo 3D que se va a generar. 1–600 caracteres |
Parámetros opcionales
| Parámetro | Tipo | Descripción |
|---|---|---|
topology | string | Topología después de regenerar la malla: triangle o quad. Valor predeterminado: triangle |
target_polycount | integer | Número de polígonos deseado después de regenerar la malla. Rango: 100–300000. Valor predeterminado: 30000 |
remesh | boolean | Indica si se debe regenerar la malla. Valor predeterminado: true |
symmetry_mode | string | Modo de simetría: off, auto u on. Valor predeterminado: auto |
pose_mode | string | Pose humanoide: a-pose o t-pose. No se especifica ninguna pose de forma predeterminada |
pbr | boolean | Indica si se deben generar texturas de materiales PBR. Valor predeterminado: false |
texture_prompt | string | Descripción de texto que guía la generación de texturas. Máximo de 600 caracteres |
texture_image | string | URL de la imagen de referencia que guía la generación de texturas |
seed | integer | Semilla aleatoria. Valor predeterminado: -1, que genera un resultado aleatorio |
Ejemplo de solicitud
javascriptconst response = await fetch('https://api.flaq.ai/api/v1/3d/task', {
method: 'POST',
headers: {
Authorization: 'Bearer YOUR_API_KEY',
'Content-Type': 'application/json',
},
body: JSON.stringify({
model_name: 'meshy-v7-text-to-3d',
prompt: 'A stylized red panda explorer wearing a small canvas backpack',
topology: 'quad',
remesh: true,
symmetry_mode: 'auto',
pose_mode: 'a-pose',
pbr: true,
texture_prompt: 'Hand-painted fur and weathered canvas with warm autumn colors',
texture_image: 'https://example.com/red-panda-texture.png',
}),
});
const { data } = await response.json();
const taskId = data.task_id;
Meshy 7: de imagen a 3D
Parámetros obligatorios
| Parámetro | Tipo | Descripción |
|---|---|---|
model_name | string | Debe ser meshy-v7-image-to-3d |
image_url | string | URL de acceso público de la imagen de entrada |
Parámetros opcionales
| Parámetro | Tipo | Descripción |
|---|---|---|
topology | string | Topología después de regenerar la malla: triangle o quad. Valor predeterminado: triangle |
target_polycount | integer | Número de polígonos deseado después de regenerar la malla. Rango: 100–300000. Valor predeterminado: 30000 |
remesh | boolean | Indica si se debe regenerar la malla. Valor predeterminado: true |
symmetry_mode | string | Modo de simetría: off, auto u on. Valor predeterminado: auto |
pose_mode | string | Pose humanoide: a-pose o t-pose. Valor predeterminado: a-pose |
pbr | boolean | Indica si se deben generar texturas de materiales PBR. Valor predeterminado: false |
texture_prompt | string | Descripción de texto que guía la generación de texturas. Máximo de 600 caracteres |
texture_image | string | URL de la imagen de referencia que guía la generación de texturas |
Ejemplo de solicitud
javascriptconst response = await fetch('https://api.flaq.ai/api/v1/3d/task', {
method: 'POST',
headers: {
Authorization: 'Bearer YOUR_API_KEY',
'Content-Type': 'application/json',
},
body: JSON.stringify({
model_name: 'meshy-v7-image-to-3d',
image_url: 'https://example.com/ceramic-lamp.png',
topology: 'triangle',
remesh: true,
symmetry_mode: 'auto',
pose_mode: 'a-pose',
pbr: true,
texture_prompt: 'Glazed blue ceramic with subtle gold details',
texture_image: 'https://example.com/ceramic-reference.png',
}),
});
const { data } = await response.json();
const taskId = data.task_id;
Meshy 7: de múltiples vistas a 3D
Parámetros obligatorios
| Parámetro | Tipo | Descripción |
|---|---|---|
model_name | string | Debe ser meshy-v7-multiview-to-3d |
images | string[] | De 1 a 4 URL de imágenes de referencia. No se requiere un orden de las vistas |
Parámetros opcionales
| Parámetro | Tipo | Descripción |
|---|---|---|
topology | string | Topología después de regenerar la malla: triangle o quad. Valor predeterminado: triangle |
target_polycount | integer | Número de polígonos deseado después de regenerar la malla. Rango: 100–300000. Valor predeterminado: 30000 |
remesh | boolean | Indica si se debe regenerar la malla. Valor predeterminado: true |
symmetry_mode | string | Modo de simetría: off, auto u on. Valor predeterminado: auto |
pose_mode | string | Pose humanoide: a-pose o t-pose. No se especifica ninguna pose de forma predeterminada |
pbr | boolean | Indica si se deben generar texturas de materiales PBR. Valor predeterminado: false |
texture_prompt | string | Descripción de texto que guía la generación de texturas. Máximo de 600 caracteres |
texture_image | string | URL de la imagen de referencia que guía la generación de texturas |
Ejemplo de solicitud
javascriptconst response = await fetch('https://api.flaq.ai/api/v1/3d/task', {
method: 'POST',
headers: {
Authorization: 'Bearer YOUR_API_KEY',
'Content-Type': 'application/json',
},
body: JSON.stringify({
model_name: 'meshy-v7-multiview-to-3d',
images: [
'https://example.com/chair-front.png',
'https://example.com/chair-side.png',
'https://example.com/chair-back.png',
],
topology: 'quad',
remesh: true,
symmetry_mode: 'auto',
pbr: true,
texture_prompt: 'Natural walnut wood and woven cream fabric',
texture_image: 'https://example.com/chair-material-reference.png',
}),
});
const { data } = await response.json();
const taskId = data.task_id;
Formato de respuesta
Envío de la tarea
json{
"code": 0,
"message": "success",
"data": {
"task_id": "{task_id}",
"response_url": "https://api.flaq.ai/api/v1/3d/{task_id}",
"task_status": "submitted"
}
}
Consulta del estado de la tarea
javascriptconst response = await fetch('https://api.flaq.ai/api/v1/3d/{task_id}', {
headers: { Authorization: 'Bearer YOUR_API_KEY' },
});
const { data } = await response.json();
console.log(data.task_status);
Tarea completada
json{
"code": 0,
"message": "success",
"data": {
"task_id": "{task_id}",
"response_url": "https://api.flaq.ai/api/v1/3d/{task_id}",
"task_status": "succeed",
"task_status_msg": null,
"task_result": {
"credit": 0.2,
"files": [{ "url": "https://example.com/generated-model.glb" }]
}
}
}
Valores del estado de la tarea
submitted: La tarea se ha enviado.processing: La tarea se está procesando.succeed: La tarea se ha completado correctamente.failed: La tarea ha fallado.