Transforme uma foto de origem em uma figura colecionável 3D de cabeça grande em duas etapas: protótipo gera uma imagem conceitual estilizada a partir da sua foto de entrada, e depois construção transforma essa imagem conceitual em um modelo 3D com textura. As duas etapas estão ligadas via input_task_id.
POST /openapi/creative-lab/vinyl-figure/v1/prototype
Gere uma única imagem conceitual no estilo boneco de vinil a partir da
foto fonte. O ID da tarefa retornado é o que você passa como input_task_id
para o endpoint de construção. Consulte
O Objeto de Tarefa de Protótipo de Boneco de Vinil
para o formato de resposta.
Parâmetros
Name
image_url
Type
string
Obrigatório
Description
Foto fonte para Meshy estilizar como uma figura de vinil com cabeça grande. Atualmente, suportamos os formatos .jpg, .jpeg, .png e .webp.
Existem duas maneiras de fornecer a imagem:
URL acessível publicamente: Um URL acessível a partir da internet pública.
Data URI: Um Data URI base64 codificado da imagem. Exemplo de um Data URI: data:image/jpeg;base64,<seus dados de imagem codificados em base64>.
Name
name
Type
string
Description
Nome opcional da tarefa para fins de exibição. Máximo de 100 caracteres.
Retornos
A propriedade result da resposta contém o id da tarefa recém-criada de protótipo de boneco de vinil. Consulte o endpoint Get a Task ou inscreva-se no stream até que a tarefa atinja SUCCEEDED, então passe esse ID para o endpoint de construção como input_task_id.
Modos de Falha
Name
400 - Bad Request
Description
A solicitação era inaceitável. Causas comuns:
Parâmetro ausente: image_url é obrigatório.
Formato de imagem inválido: O image_url fornecido não é um formato suportado (.jpg, .jpeg, .png, .webp).
Dimensões da imagem fora do alcance: A imagem é muito pequena, excede o tamanho máximo de arquivo, ou excede a contagem máxima de pixels.
URL inacessível: O image_url não pôde ser baixado (404 ou timeout).
Data URI inválido: A string base64 está mal formada.
Conteúdo sinalizado: A imagem de entrada foi sinalizada por moderação NSFW ou de propriedade intelectual.
Name
401 - Unauthorized
Description
A autenticação falhou. Por favor, verifique sua chave de API.
Name
402 - Payment Required
Description
Créditos insuficientes para realizar esta tarefa.
Name
429 - Too Many Requests
Description
Você excedeu seu limite de taxa.
Request
POST
/openapi/creative-lab/vinyl-figure/v1/prototype
# Etapa 1: gerar uma imagem conceitual no estilo boneco de vinilcurl https://api.meshy.ai/openapi/creative-lab/vinyl-figure/v1/prototype \ -X POST \ -H "Authorization: Bearer ${YOUR_API_KEY}" \ -H 'Content-Type: application/json' \ -d '{ "image_url": "<seu url de imagem acessível publicamente ou Data URI codificado em base64>" }'
Response
{"result":"019c8a2e-4b7d-7c3a-8d21-3f2987a1c4de"}
Prototype example
Start with a source portrait, then generate the prototype image used by the build stage.
Gere a figura de vinil 3D texturizada final a partir de uma tarefa de protótipo bem-sucedida. A construção executa o mesmo pipeline de imagem-para-3D que Imagem para 3D, então o formato do objeto de resposta e a lista de URLs de saída correspondem exatamente. Consulte O Objeto de Tarefa de Construção de Figura de Vinil para a estrutura da resposta.
Parâmetros
Name
input_task_id
Type
string
Obrigatório
Description
A ID da tarefa de um protótipo criado através deste mesmo endpoint OpenAPI. O protótipo deve ter sido criado com a mesma chave de API, deve ter alcançado SUCCEEDED e deve ter produzido exatamente uma imagem candidata.
Tarefas de protótipo criadas através do webapp não são aceitas — o endpoint de construção aceita apenas tarefas de protótipo produzidas por POST /openapi/creative-lab/vinyl-figure/v1/prototype e recusa qualquer outra fonte com 404.
Name
name
Type
string
Description
Nome de tarefa opcional para fins de exibição. Máximo de 100 caracteres.
Retornos
A propriedade result da resposta contém a id da tarefa da nova construção de figura de vinil criada. Monitore o endpoint de Obter uma Tarefa ou inscreva-se no stream até que a tarefa atinja SUCCEEDED, então faça o download da GLB texturizada de model_urls.glb (ou o par OBJ + MTL de model_urls.obj e model_urls.mtl se seu pipeline à jusante preferir OBJ).
Modos de Falha
Name
400 - Bad Request
Description
A solicitação foi inaceitável. Causas comuns:
Parâmetro ausente: input_task_id é necessário.
UUID inválido: O input_task_id não é um UUID válido.
Pai não sucedido: A tarefa de protótipo referenciada ainda não atingiu SUCCEEDED.
Nenhum candidato: A tarefa de protótipo foi bem-sucedida, mas não produziu imagem candidata.
Name
401 - Unauthorized
Description
Autenticação falhou. Verifique sua chave de API.
Name
402 - Payment Required
Description
Créditos insuficientes para realizar esta tarefa.
Name
404 - Not Found
Description
A tarefa de protótipo referenciada não existe, pertence a um usuário diferente, ou foi criada através do webapp (somente tarefas de protótipo em modo API são encadeadas na construção).
Name
429 - Too Many Requests
Description
Você excedeu seu limite de taxa.
Request
POST
/openapi/creative-lab/vinyl-figure/v1/build
# Estágio 2: encadear construção a partir de uma tarefa de protótipo bem-sucedidacurl https://api.meshy.ai/openapi/creative-lab/vinyl-figure/v1/build \ -X POST \ -H "Authorization: Bearer ${YOUR_API_KEY}" \ -H 'Content-Type: application/json' \ -d '{ "input_task_id": "019c8a2e-4b7d-7c3a-8d21-3f2987a1c4de" }'
Recuperar uma tarefa de protótipo ou construção dado um id de tarefa válido. O caminho da URL
deve corresponder ao estágio da tarefa — uma tarefa de construção buscada através de
/prototype/:id retorna 404 e vice-versa.
Cancelar uma tarefa de figura de vinil. Se a tarefa ainda estiver PENDING, os créditos
consumidos no momento da criação são reembolsados. Tarefas que já estão
IN_PROGRESS são canceladas sem reembolso (o trabalhador pode já estar
consumindo recursos). Tarefas que já alcançaram um estado terminal
(SUCCEEDED, FAILED, CANCELED) não podem ser canceladas.
O caminho da URL deve corresponder ao estágio da tarefa — DELETE em
/prototype/:buildId retorna 404.
Parâmetros de Caminho
Name
id
Type
path
Description
Identificador único para a tarefa de figura de vinil a ser cancelada.
Retornos
Retorna 204 No Content em caso de sucesso com um corpo vazio.
Modos de Falha
Name
400 - Bad Request
Description
A tarefa já está em um estado terminal e não pode ser cancelada.
Name
404 - Not Found
Description
A tarefa não existe, pertence a um usuário diferente ou seu estágio não corresponde ao caminho da URL.
Transmitir atualizações em tempo real para uma tarefa de figura de vinil via Server-Sent Events
(SSE). O caminho da URL deve corresponder ao estágio da tarefa — abrir uma transmissão em
/prototype/:buildId/stream emite um único event: error payload com
status_code: 404 e fecha a transmissão.
Parâmetros
Name
id
Type
path
Description
Identificador único para a tarefa de figura de vinil a ser transmitida.
Retornos
Retorna uma transmissão de objetos de tarefa Figura de Vinil Protótipo
ou Construção de Figura de Vinil
como Server-Sent Events. Para tarefas PENDING ou IN_PROGRESS, o fluxo de resposta incluirá apenas os campos necessários progress e status.
// Exemplo de evento de erro (estágio errado ou tarefa não encontrada)event: errordata: {"status_code": 404,"message": "Task not found"}// Exemplos de eventos de mensagem ilustram o progresso da tarefa.// Para tarefas PENDING ou IN_PROGRESS, o fluxo de resposta não incluirá todos os campos.event: messagedata: {"id": "019c8a31-6e2f-7b4d-9a55-4c3098b2d5ef","progress": 0,"status": "PENDING"}event: messagedata: {"id": "019c8a31-6e2f-7b4d-9a55-4c3098b2d5ef","type": "creative-lab-vinyl-figure-build","status": "SUCCEEDED","progress": 100,"created_at": 1752969700000,"started_at": 1752969710000,"finished_at": 1752969735000,"expires_at": 1753228935000,"task_error": null,"consumed_credits": 30,"prompt": "","negative_prompt": "","texture_prompt": "","texture_image_url": "","model_urls": {"glb":"https://assets.meshy.ai/***/tasks/019c8a31-6e2f-7b4d-9a55-4c3098b2d5ef/output/model.glb?Expires=***","obj":"https://assets.meshy.ai/***/tasks/019c8a31-6e2f-7b4d-9a55-4c3098b2d5ef/output/model.obj?Expires=***","mtl":"https://assets.meshy.ai/***/tasks/019c8a31-6e2f-7b4d-9a55-4c3098b2d5ef/output/model.mtl?Expires=***" },"thumbnail_url": "https://assets.meshy.ai/***/tasks/019c8a31-6e2f-7b4d-9a55-4c3098b2d5ef/output/preview.png?Expires=***","texture_urls": [ {"base_color":"https://assets.meshy.ai/***/tasks/019c8a31-6e2f-7b4d-9a55-4c3098b2d5ef/output/texture_0.png?Expires=***" } ]}
Recupere uma lista paginada de suas tarefas de figura de vinil para uma única fase.
O caminho da URL seleciona a fase — /prototype retorna tarefas de protótipo;
/build retorna tarefas de construção. Tarefas da outra fase não estão incluídas
em nenhuma das respostas.
Parâmetros de Caminho
Name
stage
Type
path
Obrigatório
Description
Pode ser prototype ou build. A coleção retorna apenas tarefas
cuja fase corresponde ao caminho da URL — buscar /prototype nunca retorna
tarefas de construção e vice-versa.
Parâmetros de Consulta
Name
page_num
Type
integer
padrão 1
Description
Número da página para paginação.
Name
page_size
Type
integer
padrão 10
Description
Limite de tamanho da página. O máximo permitido é 50 itens.
Name
sort_by
Type
string
padrão -created_at
Description
Campo para ordenar. Valores disponíveis:
+created_at: Ordenar por tempo de criação em ordem crescente.
-created_at: Ordenar por tempo de criação em ordem decrescente.
O objeto de tarefa do Protótipo de Figura de Vinil é uma unidade de trabalho que Meshy monitora
para gerar uma imagem conceitual em estilo figura de vinil a partir de uma foto de origem.
A saída desta etapa é encadeada na
etapa de construção através de input_task_id.
Propriedades
Name
id
Type
string
Description
Identificador único para a tarefa. Enquanto usamos um UUID k-sortable para ids de tarefa como detalhe de implementação, você não deve fazer suposições sobre o formato do id.
Name
type
Type
string
Description
Tipo da tarefa. O valor é creative-lab-vinyl-figure-prototype.
Name
name
Type
string
Description
O nome da tarefa fornecido quando a tarefa foi criada. String vazia se nenhum nome foi fornecido.
Name
status
Type
string
Description
Status da tarefa. Valores possíveis são um de PENDING, IN_PROGRESS, SUCCEEDED, FAILED, CANCELED.
Name
progress
Type
integer
Description
Progresso da tarefa. Se a tarefa ainda não começou, esta propriedade será 0. Uma vez que a tarefa foi concluída com sucesso, isso se tornará 100.
Name
created_at
Type
timestamp
Description
Carimbo de data/hora de quando a tarefa foi criada, em milissegundos.
Um carimbo de data/hora representa o número de milissegundos decorridos desde 1º de janeiro de 1970 UTC, seguindo
o padrão RFC 3339.
Por exemplo, sexta-feira, 1 de setembro de 2023, às 12:00:00 PM GMT é representado como 1693569600000. Isso se aplica
a todos os carimbos de data/hora na Meshy API.
Name
started_at
Type
timestamp
Description
Carimbo de data/hora de quando a tarefa foi iniciada, em milissegundos. Se a tarefa ainda não tiver começado, esta propriedade será 0.
Name
finished_at
Type
timestamp
Description
Carimbo de data/hora de quando a tarefa foi concluída, em milissegundos. Se a tarefa ainda não tiver sido concluída, esta propriedade será 0.
Name
expires_at
Type
timestamp
Description
Carimbo de data/hora de quando o resultado da tarefa expira, em milissegundos.
Name
preceding_tasks
Type
integer
Description
A contagem das tarefas precedentes.
O valor deste campo é significativo apenas se o status da tarefa for PENDING.
Name
task_error
Type
object
Description
Detalhes do erro para tarefas falhas. Veja Erros para a referência completa do objeto task_error.
Name
consumed_credits
Type
integer
Description
O número de créditos consumidos por esta tarefa. Presente quando o status da tarefa é PENDING, IN_PROGRESS, ou SUCCEEDED. Retorna 0 para tarefas FAILED (os créditos são reembolsados em caso de falha).
Name
image_urls
Type
array of strings
Description
URLs para download dos candidatos a imagem conceitual gerados por esta tarefa de protótipo. Atualmente, a API sempre retorna exatamente um candidato; o campo é um array para que revisões futuras possam apresentar múltiplos candidatos sem uma alteração que quebre a compatibilidade.
O objeto Tarefa de Construção de Figura de Vinil é uma unidade de trabalho que a Meshy mantém controle
para gerar uma figura de vinil 3D com textura a partir de uma tarefa de protótipo bem-sucedida.
Ele executa o mesmo pipeline de imagem para 3D usado por Imagem para 3D,
portanto, os campos de saída espelham o objeto tarefa daquele endpoint.
Propriedades
Name
id
Type
string
Description
Identificador único para a tarefa.
Name
type
Type
string
Description
Tipo da tarefa. O valor é creative-lab-vinyl-figure-build.
Name
name
Type
string
Description
O nome da tarefa fornecido quando a tarefa foi criada. Cadeia de caracteres vazia se nenhum nome foi fornecido.
Name
status
Type
string
Description
Status da tarefa. Os valores possíveis são um dos PENDING, IN_PROGRESS, SUCCEEDED, FAILED, CANCELED.
Name
progress
Type
integer
Description
Progresso da tarefa. Se a tarefa ainda não foi iniciada, esta propriedade será 0. Após a tarefa ser concluída, isso se tornará 100.
Name
created_at
Type
timestamp
Description
Carimbo de data/hora de quando a tarefa foi criada, em milissegundos.
Name
started_at
Type
timestamp
Description
Carimbo de data/hora de quando a tarefa foi iniciada, em milissegundos.
Name
finished_at
Type
timestamp
Description
Carimbo de data/hora de quando a tarefa foi concluída, em milissegundos.
Name
expires_at
Type
timestamp
Description
Carimbo de data/hora de quando o resultado da tarefa expira, em milissegundos.
Name
preceding_tasks
Type
integer
Description
A contagem de tarefas anteriores. Relevante apenas quando o status é PENDING.
Name
task_error
Type
object
Description
Detalhes de erro para tarefas falhas. Veja Erros para a referência completa do objeto task_error.
Name
consumed_credits
Type
integer
Description
O número de créditos consumidos por esta tarefa. Retorna 0 para tarefas FAILED (créditos são reembolsados em caso de falha).
Name
prompt
Type
string
Description
Sempre vazio para construção de figura de vinil. Presente para compatibilidade entre endpoints com a forma comum V2ImageTo3DTaskResponse utilizada por Imagem para 3D.
Name
negative_prompt
Type
string
Description
Sempre vazio para construção de figura de vinil. Presente para compatibilidade entre endpoints.
Name
texture_prompt
Type
string
Description
Sempre vazio para construção de figura de vinil. Presente para compatibilidade entre endpoints.
Name
texture_image_url
Type
string
Description
Sempre vazio para construção de figura de vinil. Presente para compatibilidade entre endpoints.
Name
model_urls
Type
object
Description
URLs para download do modelo 3D gerado. A construção de figura de vinil emite um GLB com textura mais o par OBJ + MTL para pipelines que preferem Wavefront OBJ. O formato do campo corresponde ao objeto Imagem para 3D model_urls para que adições de formato futuras ocorram sem interrupção.
Name
glb
Type
string
Description
URL para download do arquivo GLB com textura.
Name
obj
Type
string
Description
URL para download do arquivo Wavefront OBJ (geometria + UV).
Name
mtl
Type
string
Description
URL para download do arquivo de material MTL companheiro do OBJ. Combine com obj e a entrada de texture_urls[0].base_color.
Name
thumbnail_url
Type
string
Description
URL para download da imagem de miniatura do arquivo do modelo.
Name
texture_urls
Type
array
Description
Um array de objetos de URL de textura gerados por esta tarefa. Atualmente contém um único objeto com o mapa de cor base.
Name
base_color
Type
string
Description
URL para download da imagem do mapa de cor base.
Exemplo de Objeto de Construção de Figura de Vinil