Skip to content

Criar um fluxo de comunicação low code com requisição HTTP ​

Acesso

Caminho: Configurações → Fluxo de comunicação → Adicionar novo

Visão geral ​

Um fluxo low code permite que o agente virtual converse com sistemas que não têm integração pronta com o Opa! Suite: consultar um pedido, enviar uma fatura, cadastrar um lead num CRM. Você monta a automação com cards, sem programar o fluxo inteiro, e usa JavaScript só onde precisar tratar dados.

O exemplo desta página tem três etapas: perguntar um dado ao contato, consultar uma API com esse dado e seguir um caminho conforme a resposta.

Pré-requisitos ​

  • Uma integração HTTP instalada com o endereço e a autenticação da API. Veja Integração HTTP.
  • Os dados da API: endereço (endpoint), método, cabeçalhos e o formato da resposta.

Passo a passo ​

1. Criar o fluxo ​

  1. Acesse Configurações → Fluxo de comunicação e clique em Adicionar novo.
  2. Preencha os campos:
    • Nome: identificação do fluxo.
    • País: país do fluxo. Ele define o idioma do atendimento.
    • Intenção (opcional): descreve quem deve ser levado para este fluxo pelo reconhecimento de intenção. Veja Identificar intenção.
    • Variáveis (opcional): variáveis que o fluxo recebe de outro fluxo pelo card Executar fluxo. O nome deve estar em lowercase (nomevariavel), camelCase (nomeVariavel) ou snake_case (nome_variavel).
  3. Salve o fluxo.
  4. Na lista, clique em Ação → Abrir fluxo.

2. Perguntar o dado ao contato ​

  1. Clique no + abaixo do card inicial.
  2. Em Tipo, marque Interações e, em Ferramenta, escolha Enviar pergunta.
  3. Em Resposta esperada, escolha Aguardar interação.
  4. Escreva a Pergunta (por exemplo, "Informe o número do seu pedido").
  5. Marque Gerar variável com a resposta do usuário e dê um nome em Variável (por exemplo, numero_pedido).
  6. Em Tipo da validação, escolha o formato esperado (Número, por exemplo) e preencha a Mensagem de erro e as tentativas.
  7. Clique em Salvar.

3. Consultar a API ​

  1. Clique no + abaixo da pergunta.
  2. Em Tipo, marque Ferramentas do sistema e, em Ferramenta, escolha Requisição HTTP.
  3. Preencha a seção Configuração:
    • Integração: a integração HTTP da API.
    • Endpoint: o caminho a chamar. Use variáveis entre chaves duplas, como /pedidos/.
    • Método: GET, POST, PUT, PATCH ou DELETE.
    • Headers (JSON), Body (JSON) e Query Params (JSON), conforme a API pede.
    • Utilizar Pre-request Script e Utilizar Pos-request Script (opcionais): scripts em JavaScript executados antes e depois da chamada. Use SETVARS({}) para criar variáveis no script.
  4. Na seção Resposta, preencha Mapeamento de propriedades da resposta para variáveis (JSON), indicando onde está cada dado na resposta. Exemplo: { "status_pedido": "data.status" }.
  5. Clique em Testar requisição para ver o resultado da chamada na janela Resultado do teste.
  6. Clique em Salvar.
Lista de opções a partir da resposta

Marque Gerar pergunta de escolha com a resposta para transformar uma lista retornada pela API num menu de opções para o contato. Informe a Propriedade da resposta que contém o array de dados, a Mensagem da pergunta, a Descrição da opção de escolha (com os atributos entre chaves, como Pedido {id}) e o Mapeamento de propriedades da escolha para variáveis (JSON).

4. Decidir o caminho ​

  1. Clique no + abaixo da requisição.
  2. Em Ferramentas do sistema, escolha Condicional.
  3. Em Se, escolha Variável dinâmica.
  4. Escolha a Variável mapeada na resposta (por exemplo, status_pedido), a Condição e o Valor (por exemplo, Igual a "entregue").
  5. Clique em Salvar e configure os caminhos verdadeiro e falso com mensagens ou transferências.

Resultado esperado ​

O fluxo pergunta o dado, consulta a API e responde o contato conforme o resultado. As variáveis mapeadas podem ser usadas nos cards seguintes, como Enviar mensagem e Enviar notificação.

Problemas comuns ​

SintomaO que verificar
A variável não aparece na lista de outro cardA variável precisa ser criada num card anterior. Respostas de perguntas marcadas como Campo com informações sensíveis só aparecem para o card Requisição HTTP.
A requisição não traz os dados esperadosUse Testar requisição e confira o endpoint, o método e o caminho informado no mapeamento da resposta.
O nome da variável é recusadoUse lowercase, camelCase ou snake_case, sem espaços nem acentos.

Boas práticas ​

  • Teste cada requisição com Testar requisição antes de publicar o fluxo.
  • Trate o caminho de erro com um Condicional, para o contato não ficar sem resposta quando a API falhar.
  • Use nomes de variáveis que digam o que guardam, como status_pedido.
  • Marque Campo com informações sensíveis quando pedir dados pessoais.

Conteúdos relacionados ​