Passar para o conteúdo principal

Utilizando APIs no bot Omnichat

Saiba como utilizar a API no bot da OmniChat para incrementar seus resultados

Caio Cesar Garcia avatar
Escrito por Caio Cesar Garcia
Atualizado hoje

Usos

O Bot Studio Pro conta com suporte a APIs externas, o que possibilita consultar informações em tempo real ou levar informações coletadas pelo bot para um serviço externo como um CRM ou abrir um ticket para formalizar o atendimento.

Base de conhecimento

Para utilizar apis é necessário entender como o bot lida com os dados dinâmicos.

O bot utiliza variáveis mapeadas utilizando o caracter ‘@’ para acessar a funcionalidade de variáveis de 8 tipos diferentes:

Neste momento, vamos explorar os tipos Consumidor, API e Personalizado

@Consumidor

A variável consumidor dá acesso aos dados que estão no perfil do cliente da Omnichat, seja para resgatar dados coletados em atendimentos anteriores ou coletar dados de novos clientes que estarão visíveis para o atendente.

Da mesma forma, o @API permite acessar dados de um serviço externo, porém existe a necessidade de parametrizar estes dados corretamente. Vamos ver um exemplo prático:

Utilizaremos uma api que com base no CEP informado pelo cliente, busca estado, cidade e rua cadastrados nos Correios.

Então criaremos uma nova intenção que pergunta para o cliente qual o cep dele:

Agora que temos o CEP para busca, vamos configurar a chamada de api

Estamos utilizando neste demonstração é a CEP V2 da brasilapi https://brasilapi.com.br/docs#tag/CEP-V2, que utiliza o método GET na URL: https://brasilapi.com.br/api/cep/v2/{cep}

e tem como retorno:

{

"cep": "89010025",

"state": "SC",

"city": "Blumenau",

"neighborhood": "Centro",

"street": "Rua Doutor Luiz de Freitas Melro",

"service": "viacep",

"location": {

"type": "Point",

"coordinates": {

"longitude": "-49.0629788",

"latitude": "-26.9244749"

}

}

}

Vamos começar configurando esta api no bot

Dentro do bot escolhido, clique na guia APIs e em seguida Criar Endpoint:

Em seguida, vamos dar um nome para a API:

Na URL utilizamos o endereço da API, substituindo {cep} pela variável que coletamos do cliente digitando o caractere “@” e utilizando o menu para selecionar a variável. Precisamos também selecionar o método utilizado pela api, neste caso GET

Podemos especificar outros dados no cabeçalho ou na requisição como tokens de autenticação, especificar tipos aceitos ou parâmetros de consulta, por exemplo Accept: application/json:

Neste nosso caso, não será necessário, então vamos diretamente para o resultado que fica na parte inferior da janela:

Temos em Resultado, três campos:

Local: indica o caminho do parâmetros da lista, veremos mais adiante como utilizar listas no bot

Tipo pode ser:

  • Listagem: para dados retornados dentro de um array de dados e devem ser interpretados como uma lista pelo bot

  • Dados específicos: formato normal utilizado para obtermos dados de uma api

  • Parâmetros: os dados do json que devem ser mapeados pelo bot e estarão disponíveis para utilização dentro do bot

Nossa API não retorna lista, nesse caso, Local será deixado em branco e Tipo será preenchido com Dados Específicos.

Em parâmetros vamos exibir o endereço e as coordenadas geográficas do endereço, para aprendermos como declarar dados dentro de objetos.

Para utilizar esses dados dentro do bot, precisamos indicar quais são os dados e seu caminho dentro do json retornado. Entre cada parâmetro é necessário digitar uma vírgula ou clicar Enter para o bot interpretar que um parâmetro foi adicionado:

  • state

  • city

  • street

  • location.coordinates.longitude

  • location.coordinates.latitude

Em seguida, para salvar as configurações, clique no botão verde que é o quarto botão no topo da página:

Uma mensagem será exibida informando que o os dados foram salvos:

Utilizando dados da api no bot

Agora vamos ver como exibir no bot os dados retornados pela api. Vamos configurar a intenção exibe_dados_CEP com a seguinte mensagem:

Estas são as informações que tenho para o CEP @Consumidor.endereco.CEP:

Endereço: @API.DadosCEP.street - @API.DadosCEP.city - @API.DadosCEP.state

Latitude: @API.DadosCEP.location.coordinates.latitude

Longitude: @API.DadosCEP.location.coordinates.longitude

O menu de contexto @API ajuda no preenchimento das apis que já foram configuradas:

Para verificar o funcionamento, antes de publicar o bot na sua loja, você pode utilizar o simulador do bot, ativado pelo botão TESTAR no canto superior direito:


Respondeu à sua pergunta?