Pular para conteúdo

Conceitos Básicos

Esta página introduz os conceitos fundamentais para trabalhar com o Lumina Flow Builder.

Estrutura de um Flow

Um flow é composto por nós (nodes) conectados por arestas (edges). Os dados fluem de um nó para outro, sendo processados e transformados ao longo do caminho.

Nós (Nodes)

Os nós são os blocos de construção do seu flow. Cada nó representa uma ação, decisão ou transformação.

Tipos de Nós

  1. Trigger Nodes (Gatilhos)
  2. Iniciam a execução do flow
  3. Exemplos: Webhook, Schedule, Manual Trigger
  4. Todo flow deve ter pelo menos um trigger

  5. Action Nodes (Ações)

  6. Executam operações específicas
  7. Exemplos: HTTP Request, Send Email, Database Query
  8. Podem ter múltiplas saídas

  9. Logic Nodes (Lógica)

  10. Controlam o fluxo de execução
  11. Exemplos: If/Else, Switch, Loop
  12. Permitem decisões e ramificações

  13. Data Nodes (Dados)

  14. Processam e transformam dados
  15. Exemplos: Transform, Aggregate, Filter
  16. Manipulam variáveis e estruturas

Arestas (Edges)

As arestas conectam os nós e definem a ordem de execução. O fluxo de dados segue essas conexões.

[Nó A] ────→ [Nó B] ────→ [Nó C]

Ciclo de Vida de uma Execução

1. Trigger

O flow é iniciado por um evento (webhook, schedule, etc.)

2. Execução Sequencial

Os nós são executados na ordem definida pelas conexões

3. Processamento de Dados

Cada nó recebe dados do nó anterior, processa e passa adiante

4. Conclusão

O flow termina quando todos os caminhos são completados

Exemplo de Fluxo

Trigger: Webhook Recebido
    ↓
Action: Validar JSON
    ↓
Logic: Se válido?
    ├─ Sim → Salvar no Banco → Enviar Confirmação
    └─ Não → Registrar Erro → Enviar Alerta

Contexto de Execução

Cada execução possui um contexto que armazena:

  • Variables: Variáveis globais do flow
  • Node Outputs: Saídas de cada nó executado
  • Trigger Data: Dados que iniciaram o flow
  • Metadata: Informações sobre a execução

Acessando Dados do Contexto

// Acessar output do nó anterior
{{ $node.output }}

// Acessar output de nó específico
{{ $nodes['nome-do-no'].output }}

// Acessar dados do trigger
{{ $trigger.data }}

// Acessar variável global
{{ $vars.minhaVariavel }}

Configuração de Nós

Cada nó possui configurações específicas:

Configurações Básicas

  • Nome: Identificador único do nó
  • Descrição: Documentação sobre o propósito do nó
  • Retry: Número de tentativas em caso de falha
  • Timeout: Tempo máximo de execução

Configurações Específicas

Dependem do tipo de nó. Exemplos:

HTTP Request Node:

{
  "method": "POST",
  "url": "https://api.exemplo.com/endpoint",
  "headers": {
    "Authorization": "Bearer {{ $vars.apiToken }}"
  },
  "body": {
    "data": "{{ $node.output }}"
  }
}

If/Else Node:

{
  "condition": "{{ $node.output.status === 'success' }}",
  "trueOutput": "continue",
  "falseOutput": "error"
}

Tratamento de Erros

Error Handling

Configure como o flow deve reagir a erros:

  1. Stop on Error: Para toda execução
  2. Continue on Error: Continua e registra o erro
  3. Retry: Tenta novamente (configurável)
  4. Fallback: Executa caminho alternativo

Exemplo de Configuração

{
  "errorHandling": {
    "strategy": "retry",
    "maxRetries": 3,
    "retryDelay": 1000,
    "fallbackNode": "error-handler"
  }
}

Boas Práticas

1. Nomenclatura Clara

Use nomes descritivos para nós e variáveis:

✓ "validar-dados-usuario"
✗ "no1"

2. Comentários e Documentação

Adicione descrições aos nós complexos

3. Modularização

Divida flows complexos em sub-flows reutilizáveis

4. Validação de Dados

Sempre valide dados de entrada antes de processar

5. Logging Adequado

Use nós de log em pontos críticos do flow

6. Tratamento de Erros

Configure error handling em nós que fazem chamadas externas

Debugging

Modo Debug

Ative o modo debug para visualizar: - Dados que fluem entre nós - Tempo de execução de cada nó - Erros e warnings detalhados

Logs de Execução

Acesse os logs através do painel:

Flow → Executions → Selecionar Execução → View Logs

Teste Manual

Use o Manual Trigger para testar flows:

{
  "test": true,
  "data": {
    "userId": "123",
    "action": "test"
  }
}

Limitações e Quotas

  • Tempo máximo de execução: 5 minutos por flow
  • Tamanho máximo de payload: 10 MB
  • Número máximo de nós: 100 por flow
  • Execuções simultâneas: Conforme seu plano

Próximos Passos


← Voltar para Flow Builder | Variáveis →