API de Impressão Multicolorida
Converter modelos 3D para o formato 3MF multicolorido para impressão 3D, com uma paleta de cores configurável de até 16 cores.
Criar uma tarefa de impressão 3D multicolorida
Este endpoint cria uma nova tarefa de impressão 3D multicolorida. A tarefa converte um modelo 3D em um arquivo 3MF multicolorido adequado para impressão 3D.
Parâmetros
Apenas um de input_task_id ou model_url é obrigatório. Se ambos forem fornecidos, input_task_id terá prioridade.
- Name
- input_task_id
- Type
- string
- Obrigatório
- Description
O ID de uma tarefa bem-sucedida a ser usada como entrada. Tipos de tarefa compatíveis: Imagem para 3D, Multi-imagem para 3D, Texto para 3D, Remesh, e Retexturizar. A tarefa deve ter um status de
SUCCEEDED.
- Name
- model_url
- Type
- string
- Obrigatório
- Description
URL publicamente acessível ou Data URI de um modelo 3D. Atualmente, oferecemos suporte aos formatos
.glbe.fbx.
- Name
- max_colors
- Type
- integer
- padrão 4
- Description
Número máximo de cores na paleta de saída.
Intervalo válido:
1a16.
- Name
- max_depth
- Type
- integer
- padrão 4
- Description
Profundidade de quadtree para precisão de cor. Valores mais altos produzem limites de cor mais refinados, mas aumentam o tamanho do arquivo.
Intervalo válido:
3a6.
Retorna
A propriedade result da resposta contém o id da tarefa de impressão 3D recém-criada.
Modos de falha
- Name
400 - Bad Request- Description
A solicitação era inaceitável. Causas comuns:
- Parâmetro ausente:
model_urlouinput_task_iddeve ser fornecido. - Formato de modelo inválido: O
model_urlaponta para um arquivo com uma extensão não compatível (apenas.glbe.fbxsão compatíveis). - URL inacessível: O
model_urlnão pôde ser baixado. - Tarefa de entrada inválida: O
input_task_iddeve se referir a uma tarefa bem-sucedida. - max_colors inválido: O valor deve estar entre 1 e 16.
- max_depth inválido: O valor deve estar entre 3 e 6.
- Parâmetro ausente:
- Name
401 - Unauthorized- Description
A autenticação falhou. Verifique sua chave de API.
- Name
402 - Payment Required- Description
Créditos insuficientes para executar esta tarefa.
- Name
429 - Too Many Requests- Description
Você excedeu seu limite de taxa.
Request
# Convert a 3D model to multi-color 3MF for printing
curl https://api.meshy.ai/openapi/v1/print/multi-color \
-X POST \
-H "Authorization: Bearer ${YOUR_API_KEY}" \
-H 'Content-Type: application/json' \
-d '{
"input_task_id": "018a210d-8ba4-705c-b111-1f1776f7f578",
"max_colors": 8,
"max_depth": 5
}'
Response
{
"result": "0193bfc5-ee4f-73f8-8525-44b398884ce9"
}
Recuperar uma tarefa de impressão 3D multicolorida
Este endpoint recupera uma tarefa de impressão 3D multicolorida pelo seu ID.
Parâmetros
- Name
- id
- Type
- path
- Description
O ID da tarefa de impressão 3D a ser recuperada.
Retorna
O objeto da tarefa de impressão 3D.
Request
curl https://api.meshy.ai/openapi/v1/print/multi-color/a43b5c6d-7e8f-901a-234b-567c890d1e2f \
-H "Authorization: Bearer ${YOUR_API_KEY}"
Response
{
"id": "0193bfc5-ee4f-73f8-8525-44b398884ce9",
"type": "print-multi-color",
"model_urls": {
"3mf": "https://assets.meshy.ai/***/tasks/0193bfc5-ee4f-73f8-8525-44b398884ce9/output/model.3mf?Expires=***"
},
"progress": 100,
"status": "SUCCEEDED",
"created_at": 1699999999000,
"started_at": 1700000000000,
"finished_at": 1700000001000,
"task_error": null,
"consumed_credits": 10
}
Excluir uma tarefa de impressão 3D multicolorida
Este endpoint exclui permanentemente uma tarefa de impressão 3D multicolorida, incluindo todos os modelos e dados associados. Esta ação é irreversível.
Parâmetros de caminho
- Name
- id
- Type
- path
- Description
O ID da tarefa de impressão 3D multicolorida a ser excluída.
Retornos
Retorna 200 OK em caso de sucesso.
Request
curl --request DELETE \
--url https://api.meshy.ai/openapi/v1/print/multi-color/a43b5c6d-7e8f-901a-234b-567c890d1e2f \
-H "Authorization: Bearer ${YOUR_API_KEY}"
Response
// Returns 200 Ok on success.
Listar tarefas de impressão 3D multicolorida
Este endpoint permite recuperar uma lista de tarefas de impressão 3D multicolorida.
Parâmetros
Atributos opcionais
- Name
- page_num
- Type
- integer
- Description
Número da página para paginação. Começa e tem como padrão
1.
- Name
- page_size
- Type
- integer
- Description
Limite de tamanho da página. O padrão é
10itens. O máximo permitido é50itens.
- Name
- sort_by
- Type
- string
- Description
Campo pelo qual ordenar. Valores disponíveis:
+created_at: Ordenar por horário de criação em ordem crescente.-created_at: Ordenar por horário de criação em ordem decrescente.
Retornos
Retorna uma lista paginada de Objetos de tarefa de impressão 3D.
Request
curl https://api.meshy.ai/openapi/v1/print/multi-color?page_size=10 \
-H "Authorization: Bearer ${YOUR_API_KEY}"
Response
[
{
"id": "0193bfc5-ee4f-73f8-8525-44b398884ce9",
"type": "print-multi-color",
"model_urls": {
"3mf": "https://assets.meshy.ai/***/tasks/0193bfc5-ee4f-73f8-8525-44b398884ce9/output/model.3mf?Expires=***"
},
"progress": 100,
"status": "SUCCEEDED",
"preceding_tasks": 0,
"created_at": 1699999999000,
"started_at": 1700000000000,
"finished_at": 1700000001000,
"task_error": null,
"consumed_credits": 10
}
]
Transmitir via stream uma tarefa de impressão 3D multicolorida
Este endpoint transmite atualizações em tempo real para uma tarefa de impressão 3D multicolorida usando Server-Sent Events (SSE).
Parâmetros
- Name
- id
- Type
- path
- Description
Identificador exclusivo da tarefa de impressão 3D multicolorida a ser transmitida via stream.
Retorna
Retorna um stream de Objetos de tarefa de impressão 3D como Server-Sent Events.
Para tarefas PENDING ou IN_PROGRESS, o stream de resposta incluirá apenas os campos necessários progress e status.
Request
curl -N https://api.meshy.ai/openapi/v1/print/multi-color/a43b5c6d-7e8f-901a-234b-567c890d1e2f/stream \
-H "Authorization: Bearer ${YOUR_API_KEY}"
Response Stream
// 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": "a43b5c6d-7e8f-901a-234b-567c890d1e2f",
"progress": 0,
"status": "PENDING"
}
event: message
data: {
"id": "a43b5c6d-7e8f-901a-234b-567c890d1e2f",
"type": "print-multi-color",
"model_urls": {
"3mf": "https://assets.meshy.ai/***/tasks/a43b5c6d-7e8f-901a-234b-567c890d1e2f/output/model.3mf?Expires=***"
},
"progress": 100,
"status": "SUCCEEDED",
"preceding_tasks": 0,
"created_at": 1699999999000,
"started_at": 1700000000000,
"finished_at": 1700000001000,
"task_error": null,
"consumed_credits": 10
}
O objeto de tarefa de impressão 3D
- Name
- id
- Type
- string
- Description
Identificador exclusivo da tarefa. Embora usemos um UUID k-ordenável para ids de tarefa como detalhe de implementação, você não deve fazer nenhuma suposição sobre o formato do id.
- Name
- type
- Type
- string
- Description
Tipo da tarefa de impressão 3D. O valor é
print-multi-color.
- Name
- model_urls
- Type
- object
- Description
URL baixável para o arquivo de modelo 3D gerado pela Meshy. A propriedade de um formato será omitida se o formato não for gerado, em vez de retornar uma string vazia.
- Name
3mf- Type
- string
- Description
URL baixável para o arquivo 3MF multicolorido.
- Name
- progress
- Type
- integer
- Description
Progress da tarefa. Se a tarefa ainda não tiver sido iniciada, esta propriedade será
0. Assim que a tarefa for bem-sucedida, ela se tornará100.
- Name
- status
- Type
- string
- Description
Status da tarefa. Os valores possíveis são um de
PENDING,IN_PROGRESS,SUCCEEDED,FAILED.
- Name
- preceding_tasks
- Type
- integer
- Description
A contagem de tarefas anteriores.
O valor deste campo só é significativo se o status da tarefa for
PENDING.
- 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. Se a tarefa ainda não tiver sido iniciada, 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
- task_error
- Type
- object
- Description
Detalhes do erro para tarefas com falha. Consulte 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_PROGRESSouSUCCEEDED. Retorna0para tarefasFAILED(os créditos são reembolsados em caso de falha).
The 3D Print Task Object
{
"id": "0193bfc5-ee4f-73f8-8525-44b398884ce9",
"type": "print-multi-color",
"model_urls": {
"3mf": "https://assets.meshy.ai/***/tasks/0193bfc5-ee4f-73f8-8525-44b398884ce9/output/model.3mf?Expires=***"
},
"progress": 100,
"status": "SUCCEEDED",
"preceding_tasks": 0,
"created_at": 1699999999000,
"started_at": 1700000000000,
"finished_at": 1700000001000,
"task_error": null,
"consumed_credits": 10
}