docs · breadcrumb / api
A API do Lutrix
O Lutrix é criação e edição de imagens API/MCP-first: tudo que dá pra fazer no editor também dá por API REST ou direto do Claude via MCP. O diferencial é gerar imagens em lote a partir de um template (data-merge) — 1 arte por linha de dados.
API REST
Endpoints de projetos, export e assets.
Data-merge
Um template → mil peças por linha de dados.
MCP no Claude
As 10 tools nativas pra agentes de IA.
conceitos
Visão geral
A hierarquia é Organização → Workspaces → Projetos. Cada projeto guarda um design document (textos, formas, imagens). A partir dele você exporta um PNG ou usa como template para gerar várias peças de uma vez.
Toda requisição roda isolada por organização (multi-tenant por RLS): uma API key só enxerga e altera dados da própria org.
acesso
Autenticação
Gere uma API key no app (painel Chaves de API em /app) — ela aparece uma única vez. Envie no header X-Api-Key. A base URL é https://lutrix-api-739d.onrender.com.
curl -s https://lutrix-api-739d.onrender.com/workspaces \
-H "X-Api-Key: lutrix_sk_xxx"
# Sem chave → HTTP 401rest
API REST
Endpoints principais (todos exigem a API key):
Workspaces
GET/workspaceslista os workspaces da orgPOST/workspacescria — corpo { name }GET/workspaces/roleseu papel na orgDELETE/workspaces/:widexclui (e seus projetos, em cascata)Projetos
GET/workspaces/:wid/projectslista projetosPOST/workspaces/:wid/projectscria — { name, width?, height? }GET/workspaces/:wid/projects/:pidcarrega (com o design document)PUT/workspaces/:wid/projects/:pid/docsubstitui o design documentPOST/workspaces/:wid/projects/:pid/exportrenderiza PNG → { url } (1 crédito)GET/workspaces/:wid/projects/:pid/fieldscampos {{...}} do templatePOST/workspaces/:wid/projects/:pid/mergedata-merge → { results }DELETE/workspaces/:wid/projects/:pidexclui o projetoAssets & créditos
POST/assetsupload de imagem (multipart)POST/assets/from-urlimporta por URL — { url }POST/assets/remove-backgroundremove o fundo (5 créditos)GET/creditssaldo → { balance }# Criar um projeto 1080x1080
curl -s -X POST $API/workspaces/$WS/projects \
-H "X-Api-Key: $KEY" -H "Content-Type: application/json" \
-d '{"name":"Campanha","width":1080,"height":1080}'
# Exportar PNG (devolve uma URL assinada do R2)
curl -s -X POST $API/workspaces/$WS/projects/$PID/export \
-H "X-Api-Key: $KEY"diferencial
Data-merge (geração em lote)
Coloque marcadores {{campo}} nos textos. Envie N linhas → o Lutrix devolve 1 PNG por linha.
curl -s -X POST $API/workspaces/$WS/projects/$PID/merge \
-H "X-Api-Key: $KEY" -H "Content-Type: application/json" \
-d '{"rows":[
{"nome":"Ana","preco":"R$ 10"},
{"nome":"Bruno","preco":"R$ 20"}
]}'
# → { "results": [ {"index":0,"url":"..."}, ... ] }Custo: 1 crédito por peça gerada.
ia
Remover fundo
Remoção por IA. Passe a URL pública de uma imagem; devolve um asset já salvo.
curl -s -X POST $API/assets/remove-background \
-H "X-Api-Key: $KEY" -H "Content-Type: application/json" \
-d '{"imageUrl":"https://.../foto.png"}'Custo: 5 créditos.
claude
MCP — usar direto do Claude
O Lutrix expõe um servidor MCP (stdio): o Claude ganha as capacidades do Lutrix como tools nativas. Configure no claude_desktop_config.json:
{
"mcpServers": {
"lutrix": {
"command": "node",
"args": ["/caminho/lutrix-mcp-server/dist/index.js"],
"env": {
"LUTRIX_API_URL": "https://lutrix-api-739d.onrender.com",
"LUTRIX_API_KEY": "lutrix_sk_xxx"
}
}
}
}As 10 tools expostas:
- lutrix_list_workspaces
- lutrix_create_workspace
- lutrix_list_projects
- lutrix_create_project
- lutrix_get_project
- lutrix_set_project_doc
- lutrix_export_png
- lutrix_list_template_fields
- lutrix_merge
- lutrix_upload_asset_from_url
uso
Créditos
Ações que consomem processamento gastam créditos. Toda org nova começa com 200. Consulte em GET /credits.