Solved

Pipefy -> PowerBI Integration


Userlevel 6
Badge +3

English

 

Hello, 

I am trying to connect Pipefy and PBI, with the power Query and a GraphQL API, but i cant find the right URL to put in. It keep me returning the error 400 or 404.

May someone help me?

 

Português

 

Olá,

Estou tentando conectar o Pipefy e o PowerBI através do Power Query e uma API de GraphQL, porém as URLs sempre dão erro 404 ou 400.

Alguém sabe me ajudar?

icon

Best answer by gustavo-nicolau 29 June 2021, 00:30

Olá, tudo bem?

 

Bom, uma API GRAPHQL não existe PUT, existe apenas POST passando uma mutation para fazer a atualização. 

 

A url correta para as requisições seria: https://app.pipefy.com/graphiql, e dentro dai mesmo você pode ver a documentação de cada ação que você pode fazer. Segue o link da documentação oficial também https://developers.pipefy.com/

Segue um link abaixo com um pouco mais de informações sobre GRAPHQL

https://www.apollographql.com/blog/graphql/basics/mutation-vs-query-when-to-use-graphql-mutation/#:~:text=About%20GraphQL%20mutations&text=While%20we%20use%20queries%20to,PUT%20%2C%20PATCH%20%2C%20etc).

 

Espero que eu tenha te ajudado :)

 

Abraços.

View original

11 replies

Userlevel 1

Olá, tudo bem?

 

Bom, uma API GRAPHQL não existe PUT, existe apenas POST passando uma mutation para fazer a atualização. 

 

A url correta para as requisições seria: https://app.pipefy.com/graphiql, e dentro dai mesmo você pode ver a documentação de cada ação que você pode fazer. Segue o link da documentação oficial também https://developers.pipefy.com/

Segue um link abaixo com um pouco mais de informações sobre GRAPHQL

https://www.apollographql.com/blog/graphql/basics/mutation-vs-query-when-to-use-graphql-mutation/#:~:text=About%20GraphQL%20mutations&text=While%20we%20use%20queries%20to,PUT%20%2C%20PATCH%20%2C%20etc).

 

Espero que eu tenha te ajudado :)

 

Abraços.

Userlevel 6
Badge +3

Opa

Userlevel 6
Badge +3

Olá, tudo bem?

 

Bom, uma API GRAPHQL não existe PUT, existe apenas POST passando uma mutation para fazer a atualização. 

 

A url correta para as requisições seria: https://app.pipefy.com/graphiql, e dentro dai mesmo você pode ver a documentação de cada ação que você pode fazer. Segue o link da documentação oficial também https://developers.pipefy.com/

Segue um link abaixo com um pouco mais de informações sobre GRAPHQL

https://www.apollographql.com/blog/graphql/basics/mutation-vs-query-when-to-use-graphql-mutation/#:~:text=About%20GraphQL%20mutations&text=While%20we%20use%20queries%20to,PUT%20%2C%20PATCH%20%2C%20etc).

 

Espero que eu tenha te ajudado :)

 

Abraços.

Oi Gustavo, 

Valeu pela resposta,

Usando esta URL no PowerQuery do PowerBI, eu obtenho o seguinte retorno 

DataSource.Error: Falha no Web.Contents ao obter conteúdo de 'https://app.pipefy.com/graphiql' (400): Bad Request
Detalhes:
    DataSourceKind=Web
    DataSourcePath=https://app.pipefy.com/graphiql
    Url=https://app.pipefy.com/graphiql

 

Aparentemente a requisição de não funciona da maneira correta.

Estou usando o código abaixo na linguagem M para fazer a requisição, eu acho muito estranho que quando eu testo a Query na IDE, eu tenho o retorno que eu quero.

Segue o código abaixo caso saiba ajudar.

let
    vUrl = "https://app.pipefy.com/graphiql",
    vHeaders =[
            #"Method"="POST",
            #"Content-Type"="application/json",
            #"Authorization"="Bearer ********* "
        ],
        vContent=Text.ToBinary("{""query"": ""
        
      {
    pipe(id: ****) 
      {
      id
      name
      phases {
        id
        name
        cards {
          edges {
            node {
              id
              title
                  }
                }
              }
              }
        }
      }
  ""}"),  


Source = Web.Contents(vUrl,    [Headers=vHeaders, Content=vContent]),
    #"JSON" = Json.Document(Source)
in
    #"JSON"

 

Obrigado pela atenção e tempo

Userlevel 5
Badge +7

@tsartori você já tentou usar o módulo de integração?

 

É bem simples de usar. Segue link de artigo relacionado para que você possa baixa o módulo/conector:

 

 

A resposta do Felipe tem as orientações para as duas formas de conexão.

 

At.te.

 

Democh

Userlevel 6
Badge +3

@Lucas Democh 

Opa tudo bem?

Valeu pela resposta, já tentei usar o módulo sim, mas como a fonte de dados não é autenticada a atualização automática fica desabilitada, tirando o fato que o código do integrador nao permite incremento, ou seja, ele baixa toda DB todas as vezes, resultado em atualizações muito demoradas. Mas obrigado mesmo assim, acabei codando os requests de graphql em python e exportando.

Userlevel 6
Badge +3

@tsartori você já tentou usar o módulo de integração?

 

É bem simples de usar. Segue link de artigo relacionado para que você possa baixa o módulo/conector:

 

 

A resposta do Felipe tem as orientações para as duas formas de conexão.

 

At.te.

 

Democh

Opa tudo bem?

Valeu pela resposta, já tentei usar o módulo sim, mas como a fonte de dados não é autenticada a atualização automática fica desabilitada, tirando o fato que o código do integrador nao permite incremento, ou seja, ele baixa toda DB todas as vezes, resultado em atualizações muito demoradas. Mas obrigado mesmo assim, acabei codando os requests de graphql em python e exportando.

Userlevel 1

@tsartori você já tentou usar o módulo de integração?

 

É bem simples de usar. Segue link de artigo relacionado para que você possa baixa o módulo/conector:

 

 

A resposta do Felipe tem as orientações para as duas formas de conexão.

 

At.te.

 

Democh

Opa tudo bem?

Valeu pela resposta, já tentei usar o módulo sim, mas como a fonte de dados não é autenticada a atualização automática fica desabilitada, tirando o fato que o código do integrador nao permite incremento, ou seja, ele baixa toda DB todas as vezes, resultado em atualizações muito demoradas. Mas obrigado mesmo assim, acabei codando os requests de graphql em python e exportando.

Poderia compartilhar o código conosco ? 😁😁

Tentei baixar o conector mas está bloqueado no drive
 

 

Userlevel 6
Badge +3

Claro @joaogalhardo 


import requests

import json

 

#Onde o scrip fará o request

url = "https://api.pipefy.com/graphql"

#Os parametros de autorização

headers = {

    "Accept": "application/json",

    "Authorization": "Bearer  SEU TOKEN DE AUTORIZAÇÃO AQUI",

    "Content-Type": "application/json"

}


#Qual query voce quer ter o retorno

suaquery= {"query": """{

INSIRA AQUI SUA QUERY

}"""}

def solicitar(query):

    response = requests.request("POST", url, json=query, headers=headers)

    dados = json.loads(response.text)

    if response == ‘200’:

       print(“Request bem sucedido”)

        else:

              print(‘falha’)

    return(dados)

resultado = solicitar(suaquery)

print(resultado)

 

Podes montar a query da maneira que quiser no link (https://api.pipefy.com/graphql)

Qualquer duvida estou a disposição 

Userlevel 7
Badge +6

@tsartori conseguiu resolver? 

Como posso ajudar?

Userlevel 6
Badge +3

@tsartori conseguiu resolver? 

Como posso ajudar?

Opa, consegui simm.

Dei um jeito codando, poderia me ajudar tendo a integração oficial do powerBI pro pipefy hahahahaha

Mas muito obrigado pela atenção

Userlevel 7
Badge +6

@tsartori conseguiu resolver? 

Como posso ajudar?

Opa, consegui simm.

Dei um jeito codando, poderia me ajudar tendo a integração oficial do powerBI pro pipefy hahahahaha

Mas muito obrigado pela atenção

Imagina, Tobias. O que precisar, avise!!

Reply