Meshy 7 API
Referência completa da API para os modelos de geração 3D Meshy 7.
Variantes do modelo
| Modelo | Descrição |
|---|---|
meshy-v7-text-to-3d | Gera um modelo 3D a partir de uma descrição textual |
meshy-v7-image-to-3d | Gera um modelo 3D a partir de uma única imagem |
meshy-v7-multiview-to-3d | Gera um modelo 3D a partir de várias imagens de referência |
Pontos de extremidade
textPOST /api/v1/3d/task GET /api/v1/3d/{task_id}
Meshy 7: de texto para 3D
Parâmetros obrigatórios
| Parâmetro | Tipo | Descrição |
|---|---|---|
model_name | string | Deve ser meshy-v7-text-to-3d |
prompt | string | Descrição textual do modelo 3D a ser gerado. 1–600 caracteres |
Parâmetros opcionais
| Parâmetro | Tipo | Descrição |
|---|---|---|
topology | string | Topologia após a regeneração da malha: triangle ou quad. Padrão: triangle |
target_polycount | integer | Número de polígonos desejado após a regeneração da malha. Intervalo: 100–300000. Padrão: 30000 |
remesh | boolean | Indica se a malha deve ser regenerada. Padrão: true |
symmetry_mode | string | Modo de simetria: off, auto ou on. Padrão: auto |
pose_mode | string | Pose humanoide: a-pose ou t-pose. Nenhuma pose é especificada por padrão |
pbr | boolean | Indica se devem ser geradas texturas de materiais PBR. Padrão: false |
texture_prompt | string | Descrição textual usada para orientar a geração de texturas. Máximo de 600 caracteres |
texture_image | string | URL da imagem de referência usada para orientar a geração de texturas |
seed | integer | Semente aleatória. Padrão: -1, que gera um resultado aleatório |
Exemplo de requisição
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 imagem para 3D
Parâmetros obrigatórios
| Parâmetro | Tipo | Descrição |
|---|---|---|
model_name | string | Deve ser meshy-v7-image-to-3d |
image_url | string | URL da imagem de entrada acessível publicamente |
Parâmetros opcionais
| Parâmetro | Tipo | Descrição |
|---|---|---|
topology | string | Topologia após a regeneração da malha: triangle ou quad. Padrão: triangle |
target_polycount | integer | Número de polígonos desejado após a regeneração da malha. Intervalo: 100–300000. Padrão: 30000 |
remesh | boolean | Indica se a malha deve ser regenerada. Padrão: true |
symmetry_mode | string | Modo de simetria: off, auto ou on. Padrão: auto |
pose_mode | string | Pose humanoide: a-pose ou t-pose. Padrão: a-pose |
pbr | boolean | Indica se devem ser geradas texturas de materiais PBR. Padrão: false |
texture_prompt | string | Descrição textual usada para orientar a geração de texturas. Máximo de 600 caracteres |
texture_image | string | URL da imagem de referência usada para orientar a geração de texturas |
Exemplo de requisição
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últiplas vistas para 3D
Parâmetros obrigatórios
| Parâmetro | Tipo | Descrição |
|---|---|---|
model_name | string | Deve ser meshy-v7-multiview-to-3d |
images | string[] | De 1 a 4 URLs de imagens de referência. Não é necessário ordenar as vistas |
Parâmetros opcionais
| Parâmetro | Tipo | Descrição |
|---|---|---|
topology | string | Topologia após a regeneração da malha: triangle ou quad. Padrão: triangle |
target_polycount | integer | Número de polígonos desejado após a regeneração da malha. Intervalo: 100–300000. Padrão: 30000 |
remesh | boolean | Indica se a malha deve ser regenerada. Padrão: true |
symmetry_mode | string | Modo de simetria: off, auto ou on. Padrão: auto |
pose_mode | string | Pose humanoide: a-pose ou t-pose. Nenhuma pose é especificada por padrão |
pbr | boolean | Indica se devem ser geradas texturas de materiais PBR. Padrão: false |
texture_prompt | string | Descrição textual usada para orientar a geração de texturas. Máximo de 600 caracteres |
texture_image | string | URL da imagem de referência usada para orientar a geração de texturas |
Exemplo de requisição
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 da resposta
Envio da tarefa
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 do status da tarefa
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);
Tarefa concluída
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 de status da tarefa
submitted: A tarefa foi enviada.processing: A tarefa está sendo processada.succeed: A tarefa foi concluída com sucesso.failed: A tarefa falhou.