API com OAuth2 e paginação por cursor no Power BI

Поділитися
Вставка
  • Опубліковано 1 сер 2022
  • Neste vídeo, vamos entender o fluxo completo de integração de dados em uma API com sistema de autenticação OAuth2 e com paginação por Cursor. Tudo isso utilizando Power BI!
    Para quem não conhece o sistema de autenticação por cursor, ele é caracterizado pela necessidade de se obter um token (chave) de acesso a API, primeiramente em um servidor ou rota específica de autenticação e permissionamento. Somente após obtermos este token é que vamos poder acessar os dados, ou seja, precisaremos fazer uma requisição de autenticação e outra para buscar os dados.
    Além disso, existe um outro fato que é o sistema de paginação de resultados, pois é inviável uma API responder, de uma vez só, todos os dados. Por isso, é comum termos paginações em API, onde elas entregam, de poucos em poucos, todos os dados existentes nas fontes.
    Uma característica da paginação por cursor, é que devemos monitorar sempre as respostas (dados) da API, pois nestes estão os parâmetros necessários para buscar as paginações seguintes.
    Agradecimento ao Gustavo Firetti, por ter cedido as credenciais de acesso a API do Deskbee e ter tornado este exemplo possível de ser realizado.
    Se você gostou deste vídeo, compartilhe com seus amigos - • API com OAuth2 e pagin...
    ------------------------------------------------------
    Entre para a carreira de dados, mais especificamente como um Analytics Engineer, função que vem ganhando um espaço enorme nas empresas do Brasil e do mundo.
    Ficou interessado em saber como se tornar um profissional desta área, altamente requisitado no mercado?
    Clique aqui e saiba mais a respeito bit.ly/3QejuQ5
    ------------------------------------------------------
    Leituras Recomendadas
    Storytelling com Dados: amzn.to/3CcEp17
    Pense em Python: amzn.to/3CbnJXQ
    Python para análise de dados: amzn.to/3QUekrL
    ------------------------------------------------------
    Seja membro deste canal e aproveite as vantagens:
    / @devanalytics
    --------------- Social Media ---------------
    Perfis Pessoais
    Instagram : / rphpacheco
    Facebook : / raphael.silv. .
    Perfis devAnalytics
    Instagram : / devanalytics
    Facebook : / devandanalytics
    NÃO CLIQUE AQUI: bit.ly/2OqmhXD

КОМЕНТАРІ • 63

  • @DevAnalytics
    @DevAnalytics  2 роки тому +2

    E para quem gosta das camisetas com o tema desta área que tanto amamos e tmbm tem vontade de ajudar este canal a sempre ter insumos para trazer mais conteúdos como este, então corre lá na loja devAnalytics
    mont.ink/devanalytics
    Use o cupom DEPLOY e ganhe 10% de desconto em toda a loja!
    Até 3x no cartão sem juros e 12x com um jurinho baixo ;)
    Entregamos para todo o Brasil 🙌🙌🙌

  • @PedroPauloFerreira
    @PedroPauloFerreira 2 роки тому +10

    Isso não é um vídeo, isso é uma faculdade em 40 minutos 👏

    • @DevAnalytics
      @DevAnalytics  2 роки тому

      Valeu mesmo, mokeredo!!!
      Muito bacana ver que o conteúdo está apresentando relevância para a comunidade 🙌🏻🙌🏻🙌🏻
      Forte abraço 🤜🏻🤛🏻

  • @ChoraAPI
    @ChoraAPI 2 роки тому +4

    Cada dica sensacional!!!!!!
    Parabéns pela riqueza do conteúdo!!!!!!
    Primeira vez que vejo esse conteúdo no UA-cam!!!!

    • @DevAnalytics
      @DevAnalytics  2 роки тому +1

      Muito obrigado pelo Feedback, Rafa!
      Vindo de uma autoridade no assunto me faz perceber que estamos no caminho certo!
      Obrigado, mokeredo!!!

  • @fabiobellegard9830
    @fabiobellegard9830 10 місяців тому +2

    Tem vídeos no youtube que ajudam um pouco...e tem vídeos tipo esse. Genial.

    • @DevAnalytics
      @DevAnalytics  11 днів тому

      Gratidão enorme, Fabio!!!
      Um forte abraço!

  • @user-fx6nf4kg8g
    @user-fx6nf4kg8g 5 місяців тому +1

    Uma vez eu tive que fazer uma integração do Pipefy via api no Power BI. Que também a paginação também é por cursos. Acabei construindo um megazord para conseguir fazer.
    Dessa forma ficou bem mais simples e prática. Parabéns!

  • @ChoraAPI
    @ChoraAPI 2 роки тому +3

    Raphaaaa....
    Vídeo ficou TOPPPP!!!
    Teu cenário ficou LINDO!!!!!!!!!!!!!!!
    Parabéns!!!!

    • @DevAnalytics
      @DevAnalytics  2 роки тому

      Muitíssimo obrigado!
      Muitas dessas melhorias vem do apoio que você e os outros membros do canal nos proporcionam 👍🏻👍🏻👍🏻
      Gratidão 🙏🏻

  • @leoslemos1
    @leoslemos1 2 роки тому +1

    DAZUMBANHO de conteúdo e ARROMBASSE com esse cenário!!! Parabéns!!

    • @DevAnalytics
      @DevAnalytics  2 роки тому

      Muito obrigado mesmo, Mokeredo!!!!
      Um forte abraço!

  • @matheusluiz6
    @matheusluiz6 2 роки тому +2

    Cenário top meu amigo, parabéns por tudo e sucesso sempre !!!!

    • @DevAnalytics
      @DevAnalytics  2 роки тому

      Muito obrigado mokeredo!!!
      Um forte abraço 🙌🏻🙌🏻

  • @marcotulio4941
    @marcotulio4941 7 місяців тому +1

    Vou comprar o curso. Show demais! Muito grato pelo canal.

    • @DevAnalytics
      @DevAnalytics  11 днів тому

      Muito obrigado, Marco!
      Um forte abraço!

  •  2 роки тому +1

    Parabéns pelo intensivão!!! Preciso começar de novo para entender esse conteúdo...

    • @DevAnalytics
      @DevAnalytics  2 роки тому

      Muito obrigado pelo comentário, André!
      Nunca é tarde para começar ;)
      Abs!

  • @rfelribeiro
    @rfelribeiro 2 роки тому +2

    Sensacional!

    • @DevAnalytics
      @DevAnalytics  2 роки тому

      Muito obrigado, Rafael 🤜🏻🤛🏻

  • @traducoesbrazildvd
    @traducoesbrazildvd Рік тому +1

    Muito top essa explicação.

    • @DevAnalytics
      @DevAnalytics  Рік тому

      Muito obrigado, David!
      Um forte abraço!

  • @skalsolutions
    @skalsolutions Рік тому +1

    Ótimo conteúdo, muito didático!

    • @DevAnalytics
      @DevAnalytics  Рік тому

      Muitíssimo obrigado, Alfonso!
      Um forte abraço!

  • @PedroPauloFerreira
    @PedroPauloFerreira 2 роки тому +1

    Voadora no like!

  • @lemos_rn
    @lemos_rn 2 роки тому +1

    Ficou top!

  • @AguiaPC
    @AguiaPC 2 роки тому +2

    Seu conteúdo é extremamente importante e de fácil entendimento com a sua didática.
    Acredito que um curso de Power Query M seria o diferencial no UA-cam, tem muito material sobre DAX e vejo muita gente dependendo desse conteúdo.
    Sobre o cenário, ficou D+.
    Parabéns!!!
    FÃ 1 🤣🤣

    • @DevAnalytics
      @DevAnalytics  2 роки тому +2

      Muitíssimo obrigado, Nil!
      Estamos desenvolvendo um curso voltado a integrações em APIs, mas que dentro dele tem praticamente um outro curso de Power Query!
      Sem dúvidas não terá nada igual no mercado 👍🏻👍🏻🤘🏻🤘🏻

  • @claudioroberto8129
    @claudioroberto8129 Рік тому +1

    Eita cara vai fazer 1 ano, mas gostei do visual. Tá bonitão! rsrs Parabéns, man!

    • @DevAnalytics
      @DevAnalytics  Рік тому

      Hahahahahaahha valeu, mokeredo!
      Um forte abraço!

  • @TarcisioPqdt
    @TarcisioPqdt Рік тому +1

    Top

  • @dayvisondiogenes5746
    @dayvisondiogenes5746 Місяць тому

    Eu estou tentando consumir uma API onde o resultado é um texto e não json. A primeira pagina é chamada pelo parâmetro pagination=start e para chamar as demais tenho que mudar para pagination=next. Logo eu não consigo digamos sair da pagina 1 para 4, tenho sempre que seguir pagina 1 (start), pagina 2 (next) e assim por diante. Já tentei usar uma tabela com o primeiro valor igual a start e os demais next, mas por algum motivo ele ultima pagina para todas as chamadas next.
    Sabe como posso resolver esse problema?

  • @bnasatto
    @bnasatto Рік тому +1

    Parabéns pelo conteúdo! Muito bom! Tenho uma dúvida em relação à confidencialidade dos dados de acesso (login e senha): eles estão seguros sendo utilizados como parâmetro ou é necessário criptografá-los?

    • @DevAnalytics
      @DevAnalytics  Рік тому +1

      Muito obrigado!!!
      Sobre sua dúvida, todo parâmetro no Power BI é tratado como uma variável de ambiente e usá-lo em circunstâncias de utilização com dados sensíveis não é uma má prática, pois eles são guardados com os níveis de segurança oferecidos pela Microsoft.
      É claro que não temos 100% de segurança, até por que um nível nestes percentuais é uma utopia, quando falamos de segurança da informação.

  • @moisesmeneguim7815
    @moisesmeneguim7815 Рік тому +1

    Boa tarde Raphael! Obrigado Pela excelente aula, você contribui muito para meu aprimoramento em Power BI!
    Uma dúvida! Tem como acessar o cabeçalho de resposta na requisição com power query? pelo que Web.Contents não tem essa opção, mas tem uma função (Web.Headers) que recebe cabeçalhos, mas ela não aceita um 'Content', para ser enviado e eu preciso enviar esse 'Content' junto! Como realizo essas duas funções, tem alguma ideia?

    • @DevAnalytics
      @DevAnalytics  Рік тому

      Opa, muito obrigado pelo Feedback, Moisés!
      E sim, existe uma forma de ter acesso ao header de retorno da Web.Contents.
      De uma pesquisada em Value.Metadata 👍🏻

  • @dnnlage
    @dnnlage Рік тому +1

    Graças ao seu conteúdo (deste e demais videos) consegui realizar a paginação de uma API Rest.
    Estou tendo um problema bem específico referente à expiração do Token que é de 15 minutos.
    Por algum motivo, o PBI não está conseguindo trazer as 5.000 vendas neste período, e como o Token expira, não consigo atualizar os dados.
    Pelo PBI Serviço consegui carregar 1311 linhas destas 5.000.
    A api retorna um parametro de Refresh_Token, mas não sei como aplicar.
    Tem alguma ideia do porque o PBI está demorando tanto pra carregar as informações, e como fazer para "renovar" o token e a consulta continuar de onde parou?
    Se puder ajudar, agradeço.

    • @DevAnalytics
      @DevAnalytics  Рік тому

      Muitíssimo obrigado, Danny!
      Existe a possibilidade de usar um refresh token para uma nova chamada, mas só conseguirias usá-lo 1 vez. Sugiro crir uma função para buscar o token e chamá-la em cada requisição.
      Abs.

  • @henrikpaes4364
    @henrikpaes4364 8 місяців тому +1

    Você dá cursos ou faz mentoria? Precisava aprender um pouco sobre API OAuth de um ERP específico e integrar no PowerBI.

    • @DevAnalytics
      @DevAnalytics  11 днів тому +1

      Fala Henrique, tudo certo?
      Eu estou terminando as aulas de um curso voltado somente para conexões em APIs pelo Power BI.
      Em breve trarei mais informações sobre este projeto ;)

  • @Cidosantos0358
    @Cidosantos0358 2 роки тому +1

    Boa tarde ótima aula
    Eu TB tenho uma dúvida, eu estou motorista de Uber e faço meus controles em Excel e Power BI só que eu não estou conseguindo acessar os meus dados de corridas e eu digito viagem por viagem mas sei que tem uma API tipo oAuth2. Tem como eu acompanhar essa aula e conseguir?

    • @DevAnalytics
      @DevAnalytics  2 роки тому

      Muito obrigado pelo comentário, Cido!
      Sobre sua dúvida, sim, este vídeo irá lhe ajudar a entender melhor o fluxo de integração da API Uber. Porém, uma coisa importante para salientar, é que existem muitas formas de autenticação e paginação de APIs. No caso da Uber, a autenticação será bem parecida com o exemplo do vídeo, mas a paginação deles segue um outro conceito (limit + offset). Mas existem outros vídeos aqui no canal que podem lhe dar uma ideia boa sobre este tipo de paginação!
      Espero ter lhe ajudado!
      Abs

  • @tecnoplace
    @tecnoplace Рік тому +1

    jovem tenho uma api que o token muda de 2 em 2 dias. como fazer para ele regerar esse token pra mim e usa-lo de forma automatica?

    • @DevAnalytics
      @DevAnalytics  11 місяців тому

      Você pode buscar um token novo a cada requisição que você realizar. Muitos authentications server respondem com o mesmo token enquanto ele está ativo, mudando assim que ele expira. Então, você sempre terá um novo token, se você estiver buscando por ele ao fazer uma nova requisição ;)

  • @robsondlz6642
    @robsondlz6642 Рік тому +1

    Boa noite,
    Primeiramente parabéns pelo seu trabalho!
    Tenho um probleminha aqui, usei a API do Pipedrive fiz várias coisa aqui já, no entanto quando tento criar um agendamento de atualizações para por em uma TV está gerando erro... Não sei o que pode ser... Consegue me ajudar?

    • @DevAnalytics
      @DevAnalytics  Рік тому

      Muito obrigado, Robson!
      Sobre o seu problema, é necessário saber qual a mensagem de erro, para poder identificar a causa do problema.
      Compartilhe aqui a mensagem para vermos uma possibilidade de solução

  • @cristianruiz2670
    @cristianruiz2670 Рік тому +1

    Olá, tenho umas duvidas:
    1. quando tenho o token no formato x-www-form-urlencoded como mudaria a função getAuth?
    2.Tu estás a fazer refresh automatico do token?
    Muito obrigado pela sua ajuda pessoal

    • @DevAnalytics
      @DevAnalytics  Рік тому

      Fala Cristian, tudo certo?
      Sim, a getAuth deve ser alterada para contemplar o formato x-www-form-urlencoded, pois ele precisa ser em formado de querystring.
      E para a segunda pergunta, não. Eu estou sempre pegando um novo token a cada requisição. Implementar estratégia de refresh token no M seria muito custoso, o que não faria sentido para um fluxo simples como o demonstrado ;)

  • @GiseleSilva-ty6yy
    @GiseleSilva-ty6yy 3 місяці тому +1

    estamos com problemas na hora de configurar a atualização automática de uma conexão de uma API paginada. Manualmente o painel atualiza certinho, porém não estamos conseguindo realizar a atualização automática... Teria uma forma de fazer essa configuração?

    • @DevAnalytics
      @DevAnalytics  11 днів тому

      Gisele, provavelmente sua integração não está configurada corretamente na parte do RelativePath, parâmetro da função Web.Contents.
      Verifique esta parte, pois é muito provável que esteja lá o problema ;)

  • @AuditM
    @AuditM 11 місяців тому +1

    Não consegui integrar o clickup com power bi , alguém me ajuda, por favor

    • @DevAnalytics
      @DevAnalytics  10 місяців тому

      Por gentileza, mande um e-mail para rphpacheco@gmail.com, informando quais recursos/endpoints (ex: pedidos, notas fiscais, etc) você precisa lá no ClickUp.
      Teremos o prazer em fazer um orçamento sem compromisso ;)

  • @matheussantos1772
    @matheussantos1772 4 місяці тому +1

    consigo reaproveitar esse vídeo de alguma forma para usar a api v3 do bling com o power bi?

    • @DevAnalytics
      @DevAnalytics  11 днів тому

      Fala Matheus!
      Muitos dos conceitos tratados neste vídeo poderão lhe ajudar em qualquer integração de APIs, usando o Power BI ;)
      Um forte abraço!

    • @matheussantos1772
      @matheussantos1772 11 днів тому

      @@DevAnalytics a integração com o Bling, para conseguir o access token tem que utilizar o autorizathion code que vem já na url de redirecionamento. Consigo fazer esse processo no Power bi ou tem que utilizar ferramentas externas?

  • @joerbethserra
    @joerbethserra 2 місяці тому

    Tenho um projeto que pega duas API (um token e API propriamente dita do consumo de dados) dentro do BI Desktop, funciona normal, mais quando eu publico, da erro de credenciais e nao consigo fazer funcionar de forma alguma, alguma dica?

    • @DevAnalytics
      @DevAnalytics  2 місяці тому

      Olá Joerbeth, tudo bem?
      Você precisa definir esta conexão como anônima para poder funcionar 👍🏻

    • @joerbethserra
      @joerbethserra 2 місяці тому

      @@DevAnalytics bom dia, primeiro obrigado por responder, eu ja tentei de todas as opções dentro do BI Service, falei ate com pessoal da API, mais eles me falara que so liberam para consumo atraves de "tokenrização", tentei tb fazer autenticação pelo Azure, mais tem um ID que o BI pede que nao encontrei, e agora to parado sem poder seguir;;;

  • @mediak4260
    @mediak4260 Рік тому +1

    O que fazer quando não é OAuth e sim access_token?
    A minha URL fica: baseURL/adcreatives?pretty=0 (campos e parâmetros) &access_token=***

    • @DevAnalytics
      @DevAnalytics  Рік тому

      Olá Média K!
      Neste caso você não precisa fazer uma requisição para pegar o token OAuth, fazendo a requisição de busca aos dados direto e encapsulando o token como o header da requisição 👍🏻👍🏻👍🏻

  • @davidzuniga6480
    @davidzuniga6480 Рік тому +1

    Boa tarde, estou precisando de uma ajuda justamente com Oauth2, ce poderia deixar seu email para entrar em contato por favor?

    • @DevAnalytics
      @DevAnalytics  Рік тому

      Fala, David, tudo certo?
      devandanalytics@gmail.com