> ## Documentation Index
> Fetch the complete documentation index at: https://reportana.dev/llms.txt
> Use this file to discover all available pages before exploring further.

# Como Capturar Dados

### Capturando com WhatsApp

Nas automações e campanhas avançadas da Reportana, é possível usar mensagens de WhatsApp para interagir com os clientes e capturar dados importantes. As opções avançadas das mensagens de WhatsApp permitem validar as respostas enviadas pelo clientes e armazená-las em variáveis específicas para uso posterior. Essas variáveis podem ser utilizadas no **Executar JavaScript**, facilitando a criação de lógicas mais complexas. Veja o exemplo abaixo:

<img src="https://mintcdn.com/reportana/cEIYEKOrJ1QXoaCs/cap-data2.png?fit=max&auto=format&n=cEIYEKOrJ1QXoaCs&q=85&s=5e13ee982e8c22089ca3851d28ef5095" alt="Capturando com interações" width="1498" height="751" data-path="cap-data2.png" />

<img src="https://mintcdn.com/reportana/cEIYEKOrJ1QXoaCs/cap-data3.png?fit=max&auto=format&n=cEIYEKOrJ1QXoaCs&q=85&s=36bf142dd4391c8498f9afb803323a7d" alt="Capturando com interações" width="726" height="405" data-path="cap-data3.png" />

<img src="https://mintcdn.com/reportana/cEIYEKOrJ1QXoaCs/cap-data4.png?fit=max&auto=format&n=cEIYEKOrJ1QXoaCs&q=85&s=4d4ab3acee609674e6d904a171b2b5f4" alt="Capturando com interações" width="685" height="387" data-path="cap-data4.png" />

Neste exemplo, estabelecemos na estrutura da automação uma interação com o cliente para capturar suas respostas, que são armazenadas nas variáveis `payload.altura` e `payload.peso`. Essas variáveis podem ser utilizadas posteriormente para calcular o IMC, conforme o exemplo a seguir:

<img src="https://mintcdn.com/reportana/cEIYEKOrJ1QXoaCs/cap-data5.png?fit=max&auto=format&n=cEIYEKOrJ1QXoaCs&q=85&s=163e94636740e3607e7d9c230c948d22" alt="Capturando com payload" width="890" height="558" data-path="cap-data5.png" />

<RequestExample>
  ```javascript Código Exemplo 1 theme={null}
  var altura = payload.altura / 100;

  var imc = payload.peso / (altura \* altura);

  if (imc < 20) {
  payload.resultado = 'Você esta abaixo do peso!';
  } else if (imc > 20 && imc <= 25) {
  payload.resultado = 'Peso Ideal';
  } else if (imc > 25 && imc <= 30) {
  payload.resultado = 'Sobrepeso';
  } else if (imc > 30 && imc <= 35) {
  payload.resultado = 'Obesidade Moderada';
  } else if (imc > 35 && imc <= 40) {
  payload.resultado = 'Obesidade Severa';
  } else if (imc > 40 && imc <= 50) {
  payload.resultado = 'Obesidade Morbida';
  } else {
  payload.resultado = 'Resultado não definido';
  }
  ```
</RequestExample>

<ResponseExample>
  ```javascript Código Exemplo 2 theme={null}
  var valorAssinatura = payload.response_json.usuarios[0].valorAssinatura;

  // Calculando o valor com desconto de 15%
  var valorComDesconto = valorAssinatura - valorAssinatura * 0.15;

  payload.desconto = valorComDesconto.toFixed(2);
  ```
</ResponseExample>

Para aprimorar o conhecimento sobre a captura de dados utilizando mensagens de WhatsApp, recomendamos a leitura do nosso artigo disponível na Central de Ajuda: [Entendendo as Ações de Lógico, Tempo, Chat e Avançado das Automações ➾ Ações de Avançado](https://reportana.com/help/article/conhecendo-opcoes-de-acao-tempo-e-logica-de-automacoes#adicionar-à-lista)

### Capturando com Enviar Webhook

Em automações e campanhas avançadas, é possível também utilizar a funcionalidade de **Enviar Webhook** para receber e capturar dados de outros sistemas. Esses dados podem ser integrados às automações, permitindo que, juntamente com o uso do **Executar JavaScript**, as automações sejam personalizadas criando experiências dinâmicas durante a interação com o cliente.

1. Para configurar a captura de dados através do **Enviar Webhook**, primeiramente você pode definir a URL de um sistema externo e escolher o método de solicitação desejado.

<img src="https://mintcdn.com/reportana/rrUbVfAgCraOJwnY/webhook1.png?fit=max&auto=format&n=rrUbVfAgCraOJwnY&q=85&s=c292080a6b748f3eee3cf31615f52d1d" alt="EExemplo Enviar Webhook: imagem 1" width="1404" height="599" data-path="webhook1.png" />

2. Para a captura, a resposta recebida pode ser armazenada em uma variável específica, que poderá ser utilizada nas etapas seguintes da automação. No exemplo, escolhemos `payload.response_json` como a variável que irá armazenar as informações.

<img src="https://mintcdn.com/reportana/rrUbVfAgCraOJwnY/webhook2.png?fit=max&auto=format&n=rrUbVfAgCraOJwnY&q=85&s=3730e0660960cf9b91be737f90b50ec8" alt="EExemplo Enviar Webhook: imagem 2" width="736" height="552" data-path="webhook2.png" />

3. No exemplo, recebemos os seguintes dados de uma assinatura no formato JSON:

```json theme={null}
{
  "usuarios": [
    {
      "nome": "Maria Souza",
      "email": "maria.souza@example.com",
      "telefone": "+55 11 98765-4321",
      "plano": "Premium",
      "valorAssinatura": 149.99
    }
  ]
}
```

* Nome: Nome utilizado no cadastro da assinatura.
* E-mail: E-mails utilizado no cadastro da assinatura.
* Telefone: Telefone utilizado no cadastro da assinatura.
* Plano: Plano ativo na assinatura.
* Valor da Assinatura: Valor da Assinatura em questão.

4. Em seguida, no **Executar JavaScript**, acessamos diretamente esses dados capturados pelo **Enviar Webhook** e criamos o código para disponibilizar ao cliente em questão, através do WhatsApp, o valor da assinatura com 15% de desconto aplicado.

<img src="https://mintcdn.com/reportana/rrUbVfAgCraOJwnY/webhook3.png?fit=max&auto=format&n=rrUbVfAgCraOJwnY&q=85&s=5859aa1048cf465030cefe31d50979cc" alt="Exemplo Enviar Webhook: imagem 3" width="743" height="291" data-path="webhook3.png" />

**Observação:** No código, acessamos especificamente a propriedade `payload.response_json.usuarios[0].valorAssinatura` que corresponde ao valor atual da assinatura.

5. Por fim, utilizamos o resultado do código salvo na variável `payload.desconto` na mensagem de WhatsApp que iremos enviar ao cliente.

<img src="https://mintcdn.com/reportana/rrUbVfAgCraOJwnY/webhook4.png?fit=max&auto=format&n=rrUbVfAgCraOJwnY&q=85&s=59305c54dee11e74466ac7f83c5660a6" alt="Exemplo Enviar Webhook: imagem 4" width="882" height="725" data-path="webhook4.png" />
