> For the complete documentation index, see [llms.txt](https://docs.hablla.com/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.hablla.com/fluxos-de-automacoes/todos-os-componentes/others/definir-variaveis-globais.md).

# Definir Variáveis Globais

### Visão Geral

O **Componente de Definição de Variáveis Globais** (identificado internamente no sistema como `set_global_vars`) é um nó utilitário focado em persistência de dados e gerenciamento de estado (*state management*). Sua função principal é criar ou reatribuir chaves de memória personalizadas que ficam disponíveis para leitura em qualquer etapa posterior do fluxo de automação, independentemente do canal ou da profundidade das ramificações. Ele atua como o repositório centralizado de dados dinâmicos do contato durante a execução do chatbot.

### Parâmetros de Configuração

A parametrização do nó opera através de uma lista dinâmica de entradas chave-valor sob a seção *Variáveis \**:

* **Chave (Nome da Variável):** Campo de entrada de texto (lado esquerdo) onde o administrador define o nome identificador da variável (ex: `id_person`, `name`, `phone`). Não deve conter espaços ou caracteres especiais.<br>
* **Valor:** Campo de entrada de texto (lado direito) que define o conteúdo armazenado na respectiva chave. Aceita a inserção de textos estáticos brutos (ex: `61999999999`) ou referências dinâmicas interpoladas de payloads anteriores.<br>
* **Botão + Adicionar item:** Controle que insere um novo par de campos em branco (Chave e Valor) para expansão da lista de mapeamento.<br>
* **Ícone de Lixeira:** Botão de exclusão rápida fixado na lateral direita de cada linha para remover variáveis obsoletas do nó.<br>

### Construtor Visual

A interface do construtor foi desenhada para facilitar a organização vertical de registros e herança de dados:

* **Gerenciador de Chaves em Linha:** O layout linear agrupa visualmente cada variável a seu respectivo dado de destino, permitindo configurar múltiplos salvamentos estruturados dentro de um único nó de ação.<br>
* **Mutabilidade e Reatribuição:** O editor permite que o mesmo nome de chave seja utilizado em diferentes nós de variáveis globais ao longo do canvas. Quando o contato passa por um novo nó contendo uma chave já existente, o sistema realiza a **reatribuição de valor**, sobrescrevendo o dado antigo pelo novo conteúdo em tempo real.<br>

### Operadores Especiais

As propriedades lógicas deste componente gerenciam a sintaxe de leitura de dados e a prevenção de erros em tempo de execução:

* **Notação de Leitura Global (`{{$data?.nome_variavel}}`):** Após o contato passar por este componente, qualquer bloco subsequente na árvore de fluxos pode ler e exibir os valores gravados utilizando estritamente a sintaxe de chaves duplas combinada com o operador de navegação segura, por exemplo: `{{$data?.name}}` ou `{{$data?.phone}}`.<br>
* **Operador de Navegação Segura (`?.`):** O uso do ponto de interrogação seguido de ponto nas expressões de leitura garante que a plataforma ignore e não trave a execução do fluxo caso a variável consultada esteja temporariamente nula ou vazia.<br>
* **Resolução Síncrona de Expressões:** No momento em que o contato passa pelo bloco, o motor processa e calcula as expressões dinâmicas (como `{{$data?.manualStart_4iochbjyt...}}`), grava o resultado final na memória global e despacha o usuário de forma instantânea para a saída linear do nó.<br>

### Exemplos Práticos

A tabela abaixo demonstra cenários clássicos de como configurar e ler as variáveis globais para enriquecer a lógica da automação:

| **Nome da Variável (Chave)** | **Valor Configurado no Nó**        | **Sintaxe de Leitura nos Nós Posteriores** | **Caso de Uso Prático**                                                                                                                                                                     |
| ---------------------------- | ---------------------------------- | ------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `name`                       | `{{$data?.manualStart_4iochbjyt}}` | `{{$data?.name}}`                          | Capturar o nome digitado em um formulário de entrada manual e guardá-lo globalmente para saudar o usuário em mensagens futuras.                                                             |
| `phone`                      | `61999999999`                      | `{{$data?.phone}}`                         | Fixar um número de telefone estático de contingência no início do fluxo para encaminhar notificações em caso de falha.                                                                      |
| `status_pagamento`           | `Aprovado` *(Reatribuição)*        | `{{$data?.status_pagamento}}`              | Um nó no início define a variável como "Pendente". Após receber o webhook de confirmação, este componente é acionado e reatribui o valor para "Aprovado", alterando o comportamento do bot. |


---

# Agent Instructions
This documentation is published with GitBook. GitBook is the documentation platform designed so that both humans and AI agents can read, navigate, and reason over technical content effectively. Learn more at gitbook.com.

## 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.hablla.com/fluxos-de-automacoes/todos-os-componentes/others/definir-variaveis-globais.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.
