> For the complete documentation index, see [llms.txt](https://help.hyperflow.global/docs/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://help.hyperflow.global/docs/builder-de-chatbots/acao/variavel-de-usuario-user-variable.md).

# Variável de usuário (user variable)

### :point\_right: Para que serve?

É o módulo que permite criar variáveis que ficam salvas dentro do usuário que está executando o fluxo. Seu valor é compartilhado entre todos os fluxos e existe durante toda a execução do atendimento. Geralmente é utilizada para salvar valores que fazem referência ao usuário, como por exemplo: **nome**, **e-mail**, **telefone**, etc...

<figure><img src="/files/WNPGYBemB1BPUlcLm9qr" alt=""><figcaption><p>Utilização do módulo <strong>Variável de usuário</strong> em um fluxo real</p></figcaption></figure>

### :point\_right: Detalhes do módulo

A configuração do módulo conta com alguns detalhes que devemos conhecer antes de começar a usá-lo.

Para criar ou atualizar uma variável de usuário, precisamos detalhar em formato **JSON** a variável que desejamos salvar.

Também é necessário **definir o nome das variáveis** e seus respectivos **valores** nas configurações do módulo. Para chamar as variáveis, deve-se usar **{{user.variable}}**.

No campo "**variável**, nomeamos nossa nova variável de usuário. No campo ao lado, chamado de "**valor**", definimos o que será atribuído a ela. Lembrando que sempre deve seguir o formato JSON como neste exemplo:

<figure><img src="/files/zNnfR3b2D9gzH5As8gt2" alt=""><figcaption><p>Variável de usuário em um caso real e complexo, em que é preciso armazenar os dados de um cliente que escolheu fazer uma negociação de dívida.</p></figcaption></figure>

### :point\_right: Caso de uso

#### Armazenar campo de texto

Precisamos armazenar o CPF do usuário de forma que possamos acessá-lo em qualquer ponto do fluxo. Para isso, após validarmos o CPF em um módulo de Chat, utilizamos o módulo **Variável de usuário** para salvar globalmente o valor do CPF. Também devemos determinar no campo variável o nome da variável de fluxo e também o seu valor, utilizando **{{user.text}}** para armazenar o valor do módulo anterior.

#### Armazenar campo de url

Precisamos armazenar a foto da CNH de um cliente como uma variável do usuário. Então, após receber  a mensagem do usuário, podemos armazenar a foto da CNH como uma variável de fluxo determinando o campo "variável" com o nome desejado da variável e seu valor, utilizando **{{user.url}}** para pegar o conteúdo do módulo anterior.

#### **Armazenar diversos outros dados**

Com esse módulo, você consegue armazenar quaisquer variáveis que quiser. Um exemplo nesse caso é a variável de negociação de um contrato. Para isso, foi definida a variável **selected\_negotiation**, com valor **{{input.select\_negotiation}}**.

Dentro do banco de dados, o bot vai buscar informações de andamento e de número do contrato de negociação. O fluxo deve ficar assim:

<figure><img src="/files/bFjCkpckh1wYejZdRqSZ" alt=""><figcaption><p>Exemplo de uma variável de usuário para armazenar dados de clientes que optaram por uma negociação contrato.</p></figcaption></figure>

Isso vai fazer com que, além de armazenar a informação, o bot seja capaz de buscar dados específicos do contrato. Esses dados, chamados com a ajuda de um módulo de [Executar código](/docs/builder-de-chatbots/acao/executar-codigo-run-code.md) ao longo do fluxo, também pode ser armazenados no contato com o cliente, criando a variável de usuário e salvando-a no banco, como no fluxo acima.

:tada: Parabéns por chegar até aqui! Esperamos que esse material te ajude e, caso tenha dúvidas, [acione nosso suporte](https://suporte.hyperflow.global/support/login).
