GET /healthcheck, / e
/doc.
Resumo da API
As rotas abaixo são as registradas no serviço atual.
Todas as rotas POST operacionais usam
requireInboundToken.
As rotas de processamento recebem arquivo com
upload.single("file").
Autenticação e formato
O padrão de integração é direto e orientado a upload.
Authorization: Bearer <TOKEN>
multipart/form-data com campo
file nas rotas que fazem upload.
instance, callback e outros
variam por rota.
Cotação: calcula a partir de STL (convertido) ou 3MF.
/healthcheck
Verifica se a aplicação está online e retorna a versão atual.
{ status: "online", version }
curl "https://mantis.makermarket.com/healthcheck"
{
"status": "online",
"version": "1.2.0"
}
/slice
Envia um arquivo para fatiamento e cria um job assíncrono no Mantis.
O arquivo é processado de forma assíncrona: após o envio, o Mantis coloca o job na fila de slicing e retorna imediatamente um identificador. Quando o processamento for concluído, os dados técnicos serão enviados para a rota de callback (webhook) informada.
file (arquivo 3MF ou STL) e
instance (ID do produto na sua plataforma).
callback (rota de webhook que receberá os dados
do fatiamento após a conclusão).
A rota de callback será chamada automaticamente quando o slicing terminar. Nela, o Mantis envia os dados técnicos do fatiamento e, caso configurado no webhook, também pode incluir as imagens das placas geradas e o arquivo 3MF processado.
curl -X POST "https://mantis.makermarket.com/slice?callback=https://app.makermarket.com/webhooks/mantis" \ -H "Authorization: Bearer <TOKEN>" \ -F "instance=12104" \ -F "file=@./part.3mf"
{
"jobId": "2ef2b7a8-b30e-4bb5-8f83-6dbe55e96c16",
"originalFilename": "part.3mf",
"instance": 12104,
"status": "QUEUED",
"engine": "bambu"
}
/slicing-light
Envia um arquivo para fatiamento em modo leve, priorizando retorno rápido de dados e imagens.
Funciona de forma assíncrona, assim como o endpoint padrão. O Mantis recebe o arquivo, cria o job e processa o slicing em fila. A diferença é que este modo não gera nem armazena artefatos completos, retornando apenas os dados essenciais e as imagens das placas.
file (arquivo 3MF ou STL) e
instance (ID do produto na sua plataforma).
metadata-only (sem upload de artefatos
completos).
Após a conclusão do slicing, os dados técnicos são enviados para a rota de callback (webhook), quando informada. Neste endpoint, o retorno inclui as imagens das placas geradas, mas não inclui o arquivo 3MF processado nem outros artefatos completos.
curl -X POST "https://mantis.makermarket.com/slicing-light" \ -H "Authorization: Bearer <TOKEN>" \ -F "instance=12104" \ -F "file=@./part.3mf"
{
"jobId": "ad1ea3de-b9ce-4c58-8d53-b49bfc08e502",
"originalFilename": "part.3mf",
"instance": 12104,
"status": "QUEUED",
"uploadMode": "metadata-only",
"engine": "bambu"
}
/slicing-json
Envia um arquivo para fatiamento em modo enxuto, retornando apenas os dados técnicos do processamento.
Este endpoint usa processamento assíncrono em modo
no-upload. O Mantis recebe o arquivo, cria o job e
executa o slicing sem realizar upload de artefatos, imagens de
placas ou arquivo 3MF processado. O retorno inclui somente o
resultado técnico do fatiamento.
file obrigatório. instance pode
ser enviado quando necessário para identificar o produto na
sua plataforma.
callback (rota de webhook que receberá o
resultado do fatiamento após a conclusão).
Quando o slicing termina, o resultado pode ser enviado para a rota de callback informada. Neste modo, o webhook recebe apenas os dados do fatiamento, sem imagens das placas e sem arquivos adicionais.
curl -X POST "https://mantis.makermarket.com/slicing-json?callback=https://app.makermarket.com/webhooks/mantis" \ -H "Authorization: Bearer <TOKEN>" \ -F "file=@./part.3mf"
{
"jobId": "ec413bbf-a21e-4e62-b95f-7156910bf6d5",
"originalFilename": "part.3mf",
"status": "QUEUED",
"uploadMode": "no-upload",
"callback": "https://app.makermarket.com/webhooks/mantis",
"engine": "bambu"
}
/quote-stl
Envia um arquivo STL para geração de cotação baseada em fatiamento.
Este endpoint processa arquivos STL com foco em
cotação. O Mantis executa o slicing de forma
assíncrona utilizando o motor prusa, otimizado para
estimativas de tempo, peso e custo de produção.
file obrigatório (arquivo STL para cotação).
instance não é necessário nesta rota.
callback (rota de webhook que receberá os dados
da cotação após o processamento).
Após a conclusão, o resultado da cotação pode ser enviado para a rota de callback. O retorno inclui os dados técnicos do fatiamento necessários para orçamento, sem upload de artefatos completos.
curl -X POST "https://mantis.makermarket.com/quote-stl?callback=https://app.makermarket.com/webhooks/mantis" \ -H "Authorization: Bearer <TOKEN>" \ -F "file=@./part.stl"
{
"jobId": "d6f3f9e6-3423-42ee-937b-bc48d0f62e1b",
"originalFilename": "part.stl",
"status": "QUEUED",
"uploadMode": "stl-quote",
"callback": "https://app.makermarket.com/webhooks/mantis",
"engine": "prusa"
}
/file-quote
Envia um arquivo (STL ou 3MF) para geração de cotação vinculada a um identificador da sua plataforma.
Este endpoint processa arquivos de forma assíncrona para geração
de cotação. O campo fileQuotationId permite
associar o resultado ao seu fluxo interno. Arquivos
3MF utilizam as configurações já embutidas,
enquanto arquivos STL exigem parâmetros
adicionais para definição do slicing.
file (STL ou 3MF) e
fileQuotationId (ID da cotação na sua
plataforma).
material e quality são
obrigatórios para definir o perfil de fatiamento.
abs, petg, pla.
fast, standard, high.
Após o processamento, o resultado da cotação é gerado com base no slicing. Para arquivos STL, o Mantis utiliza os parâmetros informados para definir o perfil de impressão. Para arquivos 3MF, as configurações já existentes no arquivo são respeitadas.
curl -X POST "https://mantis.makermarket.com/file-quote" \ -H "Authorization: Bearer <TOKEN>" \ -F "fileQuotationId=9001" \ -F "material=pla" \ -F "quality=standard" \ -F "file=@./part.stl"
{
"jobId": "101ce063-2367-4049-9bd6-3550c1d9dcc7",
"fileQuotationId": 9001,
"originalFilename": "part.stl",
"status": "QUEUED",
"uploadMode": "file-quote",
"engine": "prusa",
"configPath": "presets/v1/merges/X1C/merged_x1c_pla_standard.ini"
}
/file-quote/:jobId/retry
Reenvia para processamento um job de cotação já existente.
Este endpoint permite reenfileirar um job já criado
anteriormente no fluxo de file-quote. O
jobId identifica a cotação que será tentada
novamente, mantendo o vínculo com o processamento original.
jobId obrigatório para identificar o job que
será reenviado.
multipart/form-data com
file obrigatório.
O retry cria uma nova tentativa de processamento para o mesmo job. Isso é útil quando você precisa reenviar o arquivo e solicitar uma nova execução da cotação sem criar um fluxo separado.
curl -X POST "https://mantis.makermarket.com/file-quote/101ce063-2367-4049-9bd6-3550c1d9dcc7/retry" \ -H "Authorization: Bearer <TOKEN>" \ -F "file=@./part.stl"
{
"jobId": "101ce063-2367-4049-9bd6-3550c1d9dcc7",
"name": "4dbd1fe9-6d37-4f81-9992-4db54d14f193",
"filename": "4dbd1fe9-6d37-4f81-9992-4db54d14f193.stl",
"originalFilename": "part.stl",
"status": "QUEUED",
"action": "RETRY"
}
Acesso ao Mantis
O uso da API do Mantis requer um token de acesso válido. O serviço é disponibilizado mediante análise de uso e integração.
Todas as requisições exigem um token válido, enviado no
header
Authorization: Bearer.
Caso tenha interesse em utilizar o Mantis, entre em contato com a equipe através da página de contato.
Analisamos o seu caso de uso para verificar se a integração faz sentido. Se aprovado, informamos os custos do serviço e fornecemos as credenciais de acesso.