Nó Executor de Código
O nó Executor de Código permite rodar scripts personalizados dentro do seu fluxo. É a ferramenta para transformar dados, realizar cálculos complexos ou aplicar lógicas de negócio que não são cobertas pelos nós padrão.
Configuração
No painel de configuração você define as entradas, o código e as saídas.

1. Variáveis de Entrada
Defina quais dados o seu código vai receber.
- Nome do campo: O nome da variável que será usada dentro do código (ex:
texto,numero1). - Valor: De onde vem o dado (ex:
{{ entrada.mensagem }}).
2. Editor de Código
Escolha a linguagem (Python ou Node.js) e escreva sua lógica.
Estrutura Obrigatória (Python):
def main(arg1, arg2):
# Sua lógica aqui
resultado = arg1 + arg2
return {
"soma": resultado
}
Estrutura Obrigatória (Node.js):
export function main(arg1, arg2) {
// Sua lógica aqui
const resultado = arg1 + arg2;
return {
soma: resultado
};
}
Atenção: Os nomes dos argumentos da função
maindevem bater exatamente com os nomes definidos nas "Variáveis de Entrada".
3. Variáveis de Saída
Mapeie o retorno do seu código para variáveis do fluxo.
- Nome da Saída: Como essa variável será chamada nos próximos nós (ex:
resultado_final). - Chave do Return: Qual chave do dicionário/objeto retornado pelo código deve ser pega (ex:
soma).
Exemplos de Uso
Tratamento de Datas (Python)
Converter uma data americana (YYYY-MM-DD) para brasileira (DD/MM/YYYY).
- Entrada:
data_americana=2023-12-25 - Código:
def main(data_americana):
ano, mes, dia = data_americana.split('-')
return {
"data_br": f"{dia}/{mes}/{ano}"
}
- Saída: Mapeie
data_formatadapara a chavedata_br.
Cálculos Matemáticos
Calcular o valor total de um pedido com imposto.
- Entradas:
valor(100),taxa(0.1) - Código:
def main(valor, taxa):
total = valor * (1 + taxa)
return {
"total": round(total, 2)
}
Manipulação de Listas
Filtrar uma lista de produtos para pegar apenas os que custam mais de 50.
- Entrada:
lista_produtos(Array de objetos) - Código:
def main(lista_produtos):
filtrados = [p for p in lista_produtos if p['preco'] > 50]
return {
"produtos_caros": filtrados,
"quantidade": len(filtrados)
}