O que faz
O nó Código JavaScript executa um trecho de código JS em um ambiente isolado, sem acesso à rede ou ao sistema de arquivos. Use-o quando as transformações de dados ficam complexas demais para expressões{{ }} ou quando você precisa de lógica condicional, iteração ou manipulação de strings que os outros nós não cobrem nativamente.
Casos de uso típicos:
- Transformar a estrutura de um JSON retornado por uma API externa
- Validar campos e lançar erros descritivos quando dados estão faltando
- Calcular valores derivados (desconto, data de vencimento, hash)
- Combinar dados de múltiplos nós anteriores em um único objeto
- Formatar strings: CPF com máscara, datas localizadas, slugs de URL
Entrada e saída
Variáveis disponíveis no escopo do código:| Variável | Tipo | Descrição |
|---|---|---|
input | any | Output do nó imediatamente anterior ($json) |
trigger | object | Payload completo do trigger (body, headers, query, method) |
vars | object | Variáveis do workflow definidas por nós Definir Variável |
return é exposto como $json para os nós seguintes. Pode ser um objeto, array, string, número ou booleano.
Configuração
Adicione o nó ao fluxo
Na paleta de componentes, selecione Ações > Código JavaScript e arraste para o canvas.
Escreva o código no editor
O editor aceita JavaScript moderno (ES2020+). Use
return para definir o output do nó.Template inicial gerado automaticamente:Referencie variáveis do fluxo
Não use expressões
{{ }} dentro do código JS — acesse os dados pelas variáveis globais:Use console.log para debug
console.log() está disponível e os logs aparecem no painel de execução do nó durante testes. Em produção, os logs são descartados.APIs disponíveis
O runtime é isolado — não há acesso à rede, sistema de arquivos ou variáveis de ambiente. As APIs JavaScript disponíveis são:| API | Disponível |
|---|---|
JSON.parse() / JSON.stringify() | sim |
Math.* | sim |
Date | sim |
RegExp | sim |
Array.* / Object.* / String.* | sim |
console.log() | sim (apenas debug) |
fetch() / XMLHttpRequest | não |
fs / path / módulos Node.js | não |
setTimeout / setInterval | não |
require() / import | não |
Exemplos
Transformar estrutura de resposta de API
A API externa retorna um formato diferente do que os nós seguintes esperam.Formatar e validar CPF
{{ $json.valido }} e roteia para o caminho de erro quando false.
Calcular data de vencimento
Combinar dados de múltiplos nós
Quando você precisa montar um objeto com campos vindos de nós diferentes (HTTP, LLM e trigger), use o nó JavaScript como ponto de consolidação antes do envio.Filtrar e ordenar array
Tratamento de erros
Se o código lançar uma exceção não capturada, o nó marca a execução como falha e o erro aparece nos logs da execução. Para tratar erros de forma controlada, usetry/catch:
Limites
| Parâmetro | Valor |
|---|---|
| Timeout de execução | 10 segundos |
| Acesso à rede | Não permitido |
| Acesso ao sistema de arquivos | Não permitido |
require() / módulos externos | Não suportado |
| Tamanho máximo do script | Sem limite documentado |
| Tamanho máximo do output | 10 MB |
Próximos passos
- Nó Variáveis — armazenar o output do código para uso em múltiplos nós
- Nó LLM — usar IA antes do JavaScript para extrair dados não estruturados
- Nó HTTP Request — enviar o objeto construído pelo JavaScript para uma API externa
- Visão geral dos nós — ver todos os tipos de nó disponíveis