n8n — instância Bepex¶
Motor de automação self-hosted. Quase toda a lógica de negócio da Bepex vive aqui. Este doc é o backbone da instância (acesso, auth, quirks, MCP). A arquitetura de cada pipeline específico mora na
referencia-tecnica.mddo projeto correspondente.
Instância¶
| Parâmetro | Valor |
|---|---|
| URL base | https://n8n.bepex.com.br |
| Webhooks de produção | https://n8n-hook.bepex.com.br |
| Interface | https://n8n.bepex.com.br/home/workflows |
| Login | https://n8n.bepex.com.br/signin |
| Banco | SQLite, processo único |
Autenticação de sessão (API REST interna)¶
Sessão baseada em cookie + header customizado. Expira com frequência (minutos).
⚠️ NUNCA usar
navigate(page load) para URLs/rest/*. O n8n invalida o cookie quando um endpoint REST é aberto como page load (sem headerbrowser-id). Sempre navegar para uma página da UI primeiro (/workflow/XXX,/home/workflows) e depois usarfetch('/rest/...', { headers: { 'browser-id': bid } })viajavascript_tool.⚠️ NUNCA bater em endpoints de auth (
/rest/login,/rest/me) — invalida a sessão do operador. Se der 401, seguir o fluxo de re-login abaixo.
Header obrigatório: browser-id — lido de localStorage.getItem('n8n-browserId') (valor fixo por
browser). O push-ref (sessionStorage.getItem('n8n-client-id')) não é necessário para a REST
interna — os cookies são same-origin e vão automaticamente.
Re-login quando a sessão expira (401 ou redirect para /signin)¶
- Navegar para
/signin(credenciais já vêm preenchidas por autofill). - Clicar em Sign in.
- Se o click falhar porque o Vue não reconhece o autofill (v-model vazio): clicar no campo email →
End→ digitar espaço →Backspace→ clicar no campo password →x→Backspace→Enter. O ato de digitar disparainput/changeque o Vue ouve.
Endpoints REST internos úteis¶
GET /rest/workflows -> listar todos
GET /rest/workflows/{id} -> buscar (nodes, connections, settings)
PATCH /rest/workflows/{id} -> atualizar (reseta active=false)
POST /rest/workflows/{id}/activate -> ativar (body: { versionId })
GET /rest/executions?filter={...} -> listar execuções (filter é JSON URL-encoded)
GET /rest/executions/{id}?includeData=true -> detalhes (formato flatted)
POST /rest/executions/{id}/retry -> ⚠️ usa SNAPSHOT ANTIGO do workflow
GET /rest/credentials -> listar credenciais
Padrão de PATCH + reativação: GET (pega versionId) → PATCH (nodes) → GET de novo (novo
versionId) → POST /activate com o versionId fresh. O versionId muda a cada PATCH — nunca
cachear.
Parsing de execuções (formato flatted)¶
data.data vem como string JSON no formato flatted (array deduplicado; strings numéricas são
índices). Precisa de um resolver que segue os índices. O tool MCP get_execution_node_output já
decodifica automaticamente — preferir ele quando disponível.
Credenciais na instância¶
| Nome no n8n | ID | Tipo | Uso |
|---|---|---|---|
| Pipedrive account | CHj11AO6T3756SqM |
pipedriveApi | Leitura + escrita |
| Bepex Enrico | n5IiwdsiIB3dAUQE |
pipedriveApi | Somente leitura |
| Postgres n8n v2 | 7F3gxDoPsQGjAbOW |
postgres | rw — pool_conteudos, representantes, memória de agentes |
| AWS account | kqmbhAWS0tyL5fuI |
aws | Amazon SES (us-east-2) |
| n8n account (n8nApi) | hJX4nrWluQt6BE28 |
n8nApi | Injeta X-N8N-API-KEY no MCP Inspector |
Credenciais OpenRouter (uma por sistema) estão em
openrouter.md. IDs de credencial são identificadores internos (só válidos dentro da instância) — não são segredos criptográficos, ficam nos docs. Os valores das API keys nunca entram no repo.
MCP Server — n8n Inspector¶
Workflow interno que expõe a instância como servidor MCP, permitindo inspecionar workflows/execuções sem browser automation. Criado em 2026-05-14.
| Parâmetro | Valor |
|---|---|
| Workflow ID | 4R4jVyFbohJlER7q |
| MCP SSE URL | https://n8n.bepex.com.br/mcp/${N8N_MCP_SSE_TOKEN} |
| Credencial n8nApi | hJX4nrWluQt6BE28 |
| Helper workflow | JaL0rBEjTYd2G4Pu — webhook GET https://n8n-hook.bepex.com.br/webhook/exec-node-out-bepex |
Tools disponíveis (10): list_workflows (sempre passar limit — sem filtro devolve 9MB+),
get_workflow, list_executions, get_execution, get_execution_node_output,
activate_workflow, deactivate_workflow, list_credentials, trigger_webhook (o path DEVE
incluir o prefixo webhook/).
⚠️ Bug crítico: nunca chamar operação de patch/execução via MCP apontando para o próprio ID do MCP server (
4R4jVyFbohJlER7q) — auto-patch mata a sessão MCP. Os toolspatch_workfloweexecute_workflowforam removidos em 2026-05-22 (a API pública da versão instalada retorna 405). Para editar workflows, usar o PATCH via browser (fetch('/rest/workflows/{id}', {method:'PATCH'})).
Comportamento do servidor (SQLite, processo único)¶
- Uma execução ativa segura o write lock do banco → pode bloquear chamadas REST simultâneas.
- Nós que chamam APIs externas lentas (OpenRouter, Pipedrive) podem travar o servidor por segundos.
- Quando parecer travado: F5 primeiro. Quase sempre a execução já terminou e só a UI não
atualizou.
Ctrl+Shift+Rsó se o F5 não resolver. - Save de execuções: o default do n8n não salva execuções de sucesso. Nunca diagnosticar "cron parado" pela ausência de execuções — checar o Save settings do workflow.
Pegadinhas¶
retryusa o snapshot antigo do workflow — não valida um fix recém-aplicado via PATCH. Para validar fix: disparar o webhook de novo ou rodar manual viaCtrl+Enterno editor.- PATCH reseta
active: false— sempre reativar comversionIdfresh. POST /rest/workflows/{id}/runretorna 500 (payload não mapeado) — usarCtrl+Enterna UI.DELETE /rest/workflows/{id}retorna 400 — apagar workflow só pela UI.- Webhook node ao clonar via REST: NÃO setar
httpMethodautomaticamente. BPEX manda GET (default); setar POST quebra produção silenciosamente (404 no roteador). Se webhook der 404, não assumir que é o método — verificar via JS qual método o node está configurado. - IF
isNotEmptynão funciona em nós criados via REST API — usarnotEquals "". - Schedule Trigger cacheia snapshot após PATCH — deactivate → reactivate para o cron pegar a versão nova.
Índice de workflows (resumo)¶
O mapa completo de workflows por projeto/disciplina será consolidado em
../indices/automacoes.md pela sessão principal (ver a tabela levantada
no log da S9). Workflows de infra/backbone conhecidos:
| ID | Nome | Papel |
|---|---|---|
4R4jVyFbohJlER7q |
MCP Server — n8n Inspector | Backbone MCP (ver acima) |
JaL0rBEjTYd2G4Pu |
Helper exec-node-out | Suporte ao MCP Inspector |
pflBwIjA8OBpKFHj |
ERROR TRIGGER | Tratamento de erro global |
FAsAcSvdYxvURl7z |
Recebe orçamento feito pelo site | Ingestão de orçamento BPEX |
QppShVonF0S74T5W |
TOOL GET FIELDS PIPEDRIVE | Utilitário (ver skill n8n-bepex-pipedrive) |
toquIjzNhIsNN59O |
_TEMP_Probe_Pipedrive |
Diagnóstico/SQL ad-hoc |
Workflows de projetos de negócio (Conteúdo Infinito WF0–WF4, Rep, Caramelo, Ofertas, IA Chatwoot, Omie, Betão/Kowalski, etc.) estão listados na
referencia-tecnica.mdde cada projeto e no índice transversal de automações.