# Executar código (run code)

### 👉 Para que serve?

O módulo "**Executar código**" é o nosso módulo coringa. É utilizado para executar códigos em **Javascript** para resolver necessidades/problemas dos mais simples aos mais complexos.

O valor retornado, poderá ser acessado ao longo do fluxo, usando a variável **{{input.variable}}**. Porém, é preciso atenção: é preciso tratar tanto as opções de sucesso e erro, disponíveis nos nós do módulo.

Em caso de exceção não tratada, o fluxo irá continuar na saída de Erro.

<figure><img src="/files/l1Tzx5pw8Hup50TNHAXF" alt=""><figcaption><p>Utilização do módulo <strong>Executar código</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.

Existem bibliotecas incluídas que facilitam o desenvolvimento dos códigos. São elas: Moment, Request e Lodash.

* A biblioteca **Moment** é utilizada para analisar, validar, manipular e exibir **data/hora** em JavaScript de uma maneira muito fácil.
* A biblioteca **Request** é utilizada para ser a maneira mais simples possível de fazer **chamadas HTTP**. Ela suporta HTTPS e segue redirecionamentos por padrão.
* A biblioteca **Lodash** torna o JavaScript mais fácil, **eliminando o incômodo de trabalhar com arrays, números, objetos, strings,** etc.

<figure><img src="/files/YY3eVr0R6mP0A3YZdSmK" alt=""><figcaption><p>Executar código, somando 2 números.</p></figcaption></figure>

No exemplo acima, estamos executando um código que soma 2 valores e retornamos um objeto.

Sendo assim, para acessar a resposta deste código, você deve utilizar a variável {{input.sum}} no próximo nó.

### :point\_right: Caso de uso

Precisamos saudar o usuário da forma correta dependendo do horário da conversa (**bom dia**, **boa tarde** ou **boa noite**). Para isso, utilizamos o módulo **Executar código** com a função em JavaScript que irá validar o horário e definir a saudação correta.

O fluxo deve ficar assim:

<figure><img src="/files/AGIX6nQOZrzimhG2LpkG" alt=""><figcaption><p>Módulo executar código para saudar usuário de acordo com variável de horário.</p></figcaption></figure>

Este módulo é muito completo e pode ser usado em inúmeras situações. Esta é apenas uma delas que pode servir de exemplo. Por isso, explore as bibliotecas e utilize conforme a necessidade do seu projeto.

E, claro, se tiver dúvidas, é só [**acionar o nosso suporte**](https://suporte.hyperflow.global/support/login)!


---

# 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://help.hyperflow.global/docs/builder-de-chatbots/acao/executar-codigo-run-code.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.
