# Introdução ao fluxo

## Painel de construção

Os fluxos são essenciais para simplificar processos complexos por meio de métodos visuais. Nossa ferramenta de baixo código permite a criação e gerenciamento fácil desses fluxos de trabalho, aumentando a eficiência tanto para desenvolvedores quanto para analistas.

<figure><img src="/files/9fhW9cZEmccggiIhkDcb" alt=""><figcaption><p>Área de trabalho de um fluxo.</p></figcaption></figure>

## Configurações do fluxo

O painel de configurações do fluxo oferece uma interface centralizada para gerenciar diversas propriedades e funcionalidades essenciais dos fluxos no Floui.&#x20;

Nele, é possível definir o nome do fluxo, ativar ou desativar sua execução, adicionar o fluxo em um grupo, criar versões e snapshots, configurar variáveis locais e estabelecer limites para execuções simultâneas. Além disso, o painel permite adicionar notas para documentar alterações e informações relevantes. E, caso seja necessário migrar um fluxo para outro Workspace ou conta, é possível exportá-lo em formato JSON ou importar arquivos JSON contendo as propriedades desejadas.

<figure><img src="/files/lb1cEVtRQMQKDnq0ixGU" alt=""><figcaption><p>Configurações do fluxo</p></figcaption></figure>

## Object *msg*

No contexto do Floui, o objeto principal, denominado ***msg***, é a referência central durante a execução de um fluxo. Ele é incrementado a cada conector, permitindo adicionar novas propriedades à sua estrutura de forma dinâmica, conforme a lógica do fluxo.

Seguindo a sintaxe da linguagem JavaScript, as propriedades do objeto ***msg*** podem ser acessadas utilizando a notação de ponto (.). Para acessar um atributo, basta utilizar a seguinte estrutura: `nomeDoObjeto.atributo`.&#x20;

No exemplo abaixo, para acessar a propriedade denominada **status** dentro do objeto **msg**, é necessário utilizar a estrutura `msg.response.status`. Isso significa que o campo **status** está aninhado dentro da propriedade **response** do objeto **msg**, e para acessá-lo corretamente, é necessário seguir essa hierarquia. Adicionalmente, é possível clicar na propriedade e o campo JSON Path irá informar a hierarquia completa.

<figure><img src="/files/hlhO4XKTV3aC1tJ8asdX" alt=""><figcaption><p>Exemplo de um retorno para uma requisição REST API.</p></figcaption></figure>

## Biblioteca de conectores

Adicione, configure e manipule novos conectores com nossa biblioteca que conta com mais de 300 conectores. Consulte nosso catálogo de conectores e fique por dentro da estrutura de código low-code do Floui.

<figure><img src="/files/BZgSftVmFQouV3nlaDce" alt=""><figcaption><p>Biblioteca de conectores</p></figcaption></figure>

## Criando conexões

Os conectores contam com dois tipos de carga útil: o de entrada, indicado pelo campo **in**, e o de saída, indicado pelo campo **out**.&#x20;

<figure><img src="/files/kmxmbcndlZuYwBtztV1y" alt=""><figcaption><p>Realizando conexões dentro do fluxo.</p></figcaption></figure>

## Live Debugger

O Floui oferece uma ferramenta de depuração completa para facilitar a implementação e validação dos fluxos criados. Pelo painel lateral, é possível visualizar em tempo real as mensagens trafegadas entre os conectores, identificando possíveis falhas. Além disso, é possível adicionar *breakpoints* para interromper a execução em pontos específicos.

### Habilite o modo de depuração

Para iniciar a depuração de um fluxo, acesse o painel de configurações e clique na opção **Debugger**. Isso ativará o modo de depuração, permitindo que todas as mensagens trafegadas durante a execução do fluxo sejam capturadas e registradas na janela lateral.&#x20;

<figure><img src="/files/WDuj8z9AOJi2AYcdim5m" alt=""><figcaption><p>Habilitar o modo de depuração de fluxo.</p></figcaption></figure>

### Adicione breakpoints para depuração da execução

Ao ativar o modo de depuração, cada conector exibirá a opção **Breakpoint**, permitindo definir pontos de interrupção. Esses breakpoints pausam a execução do fluxo quando atingidos, proporcionando a oportunidade de inspecionar os dados trafegados naquele conector onde a execução foi interrompida.&#x20;

<figure><img src="/files/ohDa4mk8L60qNog5Ioy8" alt=""><figcaption><p>Adicionar breakpoint em conector.</p></figcaption></figure>

### Execute em modo de depuração

Com o modo de depuração ativado e os breakpoints definidos (caso optado), a execução do fluxo pode ser iniciada clicando em **Start Debug** e, em seguida, em **Executar**.&#x20;

Durante a execução em depuração, a interface exibirá em tempo real qual conector está sendo processado. E, no painel lateral, será apresentado o objeto **msg** correspondente, possibilitando a análise das informações trafegadas.

<figure><img src="/files/ahihC2e9GDatFT7zTdX1" alt=""><figcaption><p>Execução em modo de depuração.</p></figcaption></figure>

## Logs de monitoramento

No Floui, durante a execução de um fluxo, é possível registrar logs utilizando os conectores Function, Logger e Debugger, cada um com características específicas:

**Function**: disponível para JavaScript e Python, permite estruturar mensagens de log utilizando as interfaces nativas da linguagem:

**Javascript**: `console.log()`

**Python**: `print()`

Esse conector é ideal para criar mensagens personalizadas diretamente no código.

**Logger:** armazena logs detalhados diretamente no servidor, oferecendo um registro persistente de mensagens importantes. Esse conector é recomendado para monitoramento em produção e para análises posteriores.

{% hint style="warning" %}
As mensagens registradas pelo Logger são retidas por até 90 dias no workspace contratado. Para informações adicionais sobre retenção, entre em contato com um de nossos consultores ou pelos nossos canais de suporte.
{% endhint %}

**Debugger**: registra mensagens durante a execução do fluxo, sendo especialmente útil no processo de desenvolvimento e depuração.

<figure><img src="/files/2wwRSC4vqIhk56vE4WJk" alt=""><figcaption><p>Exemplos de conetores Function, Logger e Debugger.</p></figcaption></figure>

## Templates personalizáveis

Separamos alguns modelos que ajudarão você a compreender o comportamento de fluxos e realizar atividades como a "Notificação de pedido em rota de entrega por SMS com a Twilio", ou "Requisições de API Rest com dados persistidos em memória com o servidor redis". Saiba mais sobre nossos [templates](/guia/artigos/templates.md).


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://docs.floui.io/guia/docs/introducao-ao-fluxo.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
