A utilização API vem crescendo muito, a medida que os desenvolvedores, permitem cada vez mais, interações diretas em seus programas e aplicativos. Ao longo deste artigo vocês aprenderão a trabalhar com os conectores de API no Power BI.

Como vocês bem sabem o Power BI é um programa voltado para a extração, tratamento e apresentação de dados. Conectar a uma fonte de dados via API no Power BI pode ser uma ótima alternativa para poupar trabalho e garantir dados diretamente da origem.

Por exemplo, quer extrair todo seu planejamento de atividades diretamente a um aplicativo que usa frequentemente? Conecte-se a sua API no Power BI, trabalhe no processo de ETL e pronto. Conseguirá extrair as informações, trata-las e apresenta-las de forma visual, fluída, com diversas opções de visualizações, inclusive no celular.

Mas antes de entrar no exemplo prático que separamos para este artigo sobre como trabalhar com API no Power BI, vamos entender o que é API.

 

O que é API

o que é API

API é um conjunto de rotinas e padrões de programação para acesso a um aplicativo de software ou plataforma baseado na Web. A sigla API refere-se ao termo em inglês “Application Programming Interface” que significa, em tradução livre para o português, “Interface de Programação de Aplicativos”.

Uma API é desenvolvida quando um criador tem a intenção de que outros criadores de software desenvolvam produtos associados ao seu serviço. Existem vários deles que disponibilizam seus códigos e instruções para serem usados em outros sites. O Google Maps é um dos grandes exemplos na aplicação de APIs. Por meio de seu código original, muitos outros sites e aplicações utilizam os dados do Google Maps adaptando-o da melhor forma no uso desse serviço.

É o que acontece com os softwares e aplicações que disponibilizam uma porta, por meio de APIs, para acessarmos os dados que eles produzem. Assim é possível acessar dados e fazer interações com o Facebook, Instagram, Linkedin, Google Analytics, Youtube, Trello, Asana, etc. Além desses inúmeros outros programas conectando-se às API de gráfico e dados deles.

Conectar API no Power BI é possível com todas as plataformas citadas acima. Com o conteúdo neste artigo você conseguirá utilizar os conectores predefinidos do Power BI sem grandes dificuldades. Agora que entendeu o que é API vamos para nosso exemplo.

 

Conectando uma API no Power BI

 

Para melhor explicar o funcionamento de uma API no Power BI vamos utilizar a analogia de uma academia. No caso, uma academia chamada MAILCHIMP. O Mailchimp, para quem não conhece, é o site de e-mail marketing muito utilizado por ser gratuito até certa quantidade de inscritos. A recepção da academia é o API (a porta de entrada a todas as possibilidades que o MAILCHIMP pode oferecer).

Por esta porta de entrada (API) eles podem dar acesso a ler informações, inserir, modificar e deletar. Através da recepção da academia você pode ter acesso a várias partes dela. Podemos citar: vestiários, lanchonete, salas de pilates, salas de lutas e mais. Estes locais dentro da estrutura (na conexão via API) são chamados de “endpoints”. Mas para passar para cada um destes “endpoints” é necessário passar também pela catraca, neste caso no API estamos falando do “Token de Autorização”, que garante entrar dentro da API e explorar tudo que o mesmo lhe der permissão de explorar.

Agora falando de forma mais técnica a recepção da academia pode ser acessada no seguinte endereço: https://us19.api.mailchimp.com/3.0, mas o endereço exato da sala de pilates seria:  https://us19.api.mailchimp.com/3.0/sala-pilates. Para ir diretamente à sala de pilates utilizando esta API no Power BI ou o Power Query do Excel, podemos criar uma consulta, utilizando a URL acima. Nesta URL, provavelmente será necessário adicionar um token de autorização. No caso de sala-pilates é um endpoind apenas para ilustrar o exemplo, não existe, mas podemos dar outro exemplo mais real: https://us19.api.mailchimp.com/3.0/lists.

Mas como ter autorização?

Você deve estar se perguntando agora, como eu consigo este Token de Autorização? Isto vai depender, na verdade, do serviço de API disponibilizado. Simplesmente você pode usar algo chamado “API Key” ou em outros casos o método “OAuth”. Para este exemplo utilizaremos OAuth, que consiste em ser autenticado, através de um formulário, durante o processo de conexão. A conexão será feita pelo conector direto com o mailchimp que já vem na lista de conectores pré-instalados do Power BI.

O processo normal para acessar dados a partir de uma API no Power BI, consiste em:

  • Chegar na recepção e pedir sua autorização de entrada. API com token de autorização de acesso.
  • Ir até o “endpoint” desejado (Sala de pilates, de lutas, etc.);
  • Solicitar o que deseja (ler dados, inserir dados). Se está na lanchonete seria o equivalente a pedir um shake. Para ler dados você lança uma solicitação GET, para inserir uma solicitação POST.

Conseguimos conectar pela API do mailchimp no Power BI apenas via conector próprio dentro de Obter Dados do Power Query (Editor de Consultas). De certa forma isto é uma limitação, pois poderia ser disponibilizado uma conexão pelo endereço da Web colocando um token na URL e todo o caminho dos endpoints. Em algumas APIs isto é possível de ser fazer, por exemplo as do Facebook e Instagram.

 

Usando um conector de API no Power BI Desktop

Faremos neste artigo a demonstração de como se conectar a API no Power BI por conectores disponíveis em Obter Dados, em artigos futuros demonstraremos também como se conectar diretamente, sem utilizar os conectores.

Utilizaremos então, como exemplo, a conexão com o MAILCHIMP. Caso queira acompanhar e fazer os mesmos passos abaixo você precisará:

  • Conta no MailChimp, de preferência que tenha lista de e-mails e campanhas de e-mail marketing;
  • Última versão do Power BI Desktop.

Vá até Obter Dados, na caixa de diálogo que se abre, clique em Serviços Online, em seguida Mailchimp (Beta) e finalmente Conectar. Vai aparecer nesse momento uma janela onde você entrará com o login e senha da sua conta do Mailchimp. Esta é a autenticação OAuth 2.0 acontecendo bem neste momento.

Obter Dados Mailchimp API no Power BI

Na caixa com a lista de conectores dos serviços online, você verá todas as opções disponíveis de conexões diretas e nativas do Power BI. Há diversos tutoriais para cada um deles na internet, mas caso não encontre nos fale que tentamos te ajudar.

Na próxima janela, Navegador, é onde terá todas as opções disponíveis deste conector.

Navegador API Mailchimp Pasta

Veja que aparece 2 pastas e 2 funções na janela. Estas opções podem mudar no caso de conectores para outras aplicações.

Pastas
  • Campaigns: Esta pasta contém consultas pré-definidas que lhe trará dados relativos às suas campanhas de e-mail marketing. São funções GET prontas para serem trabalhas apenas escolhendo qual irá utilizar nesta pasta.
  • Lists: Esta pasta contém consultas pré-definidas que lhe trará dados relativos às suas listas de e-mail. Também são funções GET prontas para serem trabalhas.
Funções
  • Mailchimp.collection: Esta é uma função simples (não é um conjunto de funções ou pacote de consultas), que tem um fluxo que cria sua própria função GET ou POST ou qualquer outra solicitação que deseja que seja feita. A única entrada necessária é o nome da coleção de dados, por exemplo. Lists ou Reports.
  • Mailchimp.Instance: É parecida com a função anterior, mas com esta pode apontar diretamente a um elemento específico da API no Power BI, como o “endpoint”: email activity.

Utilizando as opções das Pastas

Continuando nosso exercício, selecione a opção Campaign Summary da pasta Campaigns.

Resultado Consulta da API Mailchimp no Power BI

Clique em seguida em Editar.

Esta consulta trará todas as campanhas feitas na sua conta em todas as listas de e-mails criadas até então. Se quiser focar nas campanhas de uma lista específica é só filtrar na tabela pelo ID da lista. No processo de tratamento dentro do Editor de Consultas é possível fazer isso. Além disso, você consegue também fazer uma série de tratativas e transformar esta consulta em uma rica fonte de informações sobre suas campanhas.

Começa com as informações gerais de cada uma das campanhas e daí dá para expandir mais linhas por uma série de outras colunas. Podemos expandir aberturas de e-mails, cliques, encaminhamentos, status e mais. Você pode fazer do jeito que melhor lhe convier. Perceba que há várias possibilidades nesse processo de extração das informações via API no Power BI.

Como estamos tratando um exemplo simples, veja abaixo que filtramos apenas 3 colunas, data do envio da campanha e id e id da lista.

Utilizando função get API do Power Query

Esta tabela pode ser usada como uma tabela de dimensões num modelo de dados e com isto se relacionar com outras tabelas para outras buscas nesta API do Mailchimp.

Utilizando uma função na API do Mailchimp

Vamos agora complementar a tabela utilizando a função Mailchimp.Instance. É uma forma de fazer nossa própria função GET nas atividades de e-mails (email activities).

Vá em Adicionar Coluna e em seguida Coluna Personalizada. Dê o nome para a coluna e digite a fórmula que está na figura abaixo.

A partir deste ponto você poderá ir expandindo as colunas, registros e listas até chegar no resultado desejado.

O intuito do artigo é lhe dar uma introdução no trabalho com os conectores de API no Power BI. Não era propósito desenvolver um relatório completo. Através da sua curiosidade, pesquisa e necessidade você conseguirá desenvolver o relatório conforme precisar.

Através dos conectores de API no Power BI é possível se plugar a uma série de informações de vários sites e aplicativos, mas como dito mais acima é possível também fazer isso por APIs externas também.

Cada aplicativo, software e site tem sua forma de fazer isso e em todos você encontrará tutorias de como fazer. Procure na documentação destas aplicações para maiores detalhes. Explore este mundo de possibilidades.

Compartilhe este conteúdo nas suas redes sociais (utilize os botões abaixo) e ajude seus colegas a compreender melhor sobre o assunto. Ajude-nos também a espalhar bons conteúdos sobre o Power BI.

Tem dúvidas? Nos pergunte! Utilize a sessão de comentários deste artigo logo abaixo.

Até a próxima!

Compartilhe