Bom dia!
 O pipefy oferece a possibilidade de integração com aplicação utilizando um WS REST? Se sim, poderia utilizar todos os verbos ou há alguma restrição e qual seria a documentação para este caso?"
 Bom dia!
 O pipefy oferece a possibilidade de integração com aplicação utilizando um WS REST? Se sim, poderia utilizar todos os verbos ou há alguma restrição e qual seria a documentação para este caso?"
Olá Renata!
O Pipefy oferece a possibilidade de integração utilizando a API através de GraphQL.
O GraphQL tem um único endpoint e todas as operações são realizadas por meio desse caminho utilizando o verbo POST.
POST https://api.pipefy.com/graphql
Para obter dados, você faz uma query. Para modificar os dados, você faz uma mutation.
Segue abaixo uma query simples em cURL:
curl --request POST \
  --url https://api.pipefy.com/graphql \
  --header 'authorization: Bearer YOUR_TOKEN' \
  --header 'content-type: application/json' \
  --data '{"query":"{ me { name } }"}'
Segue abaixo o link para a documentação de nossa API:
https://developers.pipefy.com/reference
Caso queira aprender mais sobre GraphQL, estes links abaixo pode te ajudar.
https://graphql.org/learn/queries/
nos parametros "query":"{ me { name } }" o que deve ser preenchido?
onde eu encontro qual o id do meu workflow para eu criar o card via rest no pipefy?
poderiam me ajudar?
Obrigado
nos parametros "query":"{ me { name } }" o que deve ser preenchido?
onde eu encontro qual o id do meu workflow para eu criar o card via rest no pipefy?
poderiam me ajudar?
Obrigado
Conseguiu resolver? Posso te ajudar caso ainda precise. Consegui implementar criação e movimentação de card via API. Deu um trabalhinho, mas ficou bom! =D
nos parametros "query":"{ me { name } }" o que deve ser preenchido?
onde eu encontro qual o id do meu workflow para eu criar o card via rest no pipefy?
poderiam me ajudar?
Obrigado
Conseguiu resolver? Posso te ajudar caso ainda precise. Consegui implementar criação e movimentação de card via API. Deu um trabalhinho, mas ficou bom! =D
Olá Leandro. Gostaria de ver como você implementou essa parte de criação de cards e movimentação.
nos parametros "query":"{ me { name } }" o que deve ser preenchido?
onde eu encontro qual o id do meu workflow para eu criar o card via rest no pipefy?
poderiam me ajudar?
Obrigado
Conseguiu resolver? Posso te ajudar caso ainda precise. Consegui implementar criação e movimentação de card via API. Deu um trabalhinho, mas ficou bom! =D
Olá Leandro. Gostaria de ver como você implementou essa parte de criação de cards e movimentação.
me chama no leandrohesi@gmail.com e eu te explico
Olá, Leandro. Tudo bem. Eu te enviei um e-mail no leandrohesi@gmail.com, mas provavelmente você não conseguiu ver ainda ou não teve tempo de responder.
Quando puder ter um tempinho aí, gostaria de ver essa implementação das chamadas dos serviços para a criação de cards e movimentações no pipefy.
Desde já agradeço.
Bom dia, minha dúvida também é essa: "query":"{ me { name } }"  o que colocar? 
O pessoal que está respondendo aí já deveria sanar essa dúvida por aqui mesmo para não ficar a todo momento respondendo a mesma pergunta de um a um. kkk
Olá, Leandro. Tudo bem. Eu te enviei um e-mail no leandrohesi@gmail.com, mas provavelmente você não conseguiu ver ainda ou não teve tempo de responder.
Quando puder ter um tempinho aí, gostaria de ver essa implementação das chamadas dos serviços para a criação de cards e movimentações no pipefy.
Desde já agradeço.
Olá, se tiver esta implementação e puder me passar agradeço demais! Preciso disso mesmo que você solicitou também. 
Consegui aqui e espero poder ajudar:
{ me { name } } é o que você quer fazer de busca, por exemplo: 
{
  allCards(pipeId: 301742761){
    edges{
      node{
        id
      }
    }
  }
}
Aí ele buscará todos os cards do pipe com este pipeId. Isso que será adicionado no { me { name } }.
***********************
No Authorization deve ser incluído o nome Bearer antes do seu Token. Exemplo 

 
 
***********************
No Content-type o tipo de conteúdo que você quer gerar. Eu por exemplo utilizei o JSON. Exemplo 

***********************
Resultado JSON (ids dos cards do meu pipe escolhido. No caso só tinha um card criado)  
 
{
  "data": {
    "allCards": {
      "edges": [
        {
          "node": {
            "id": "445472542"
          }
        }
      ]
    }
  }
} 
Resultado em Node.js 
const sdk = require('api')('@pipefy-developers/v1.0#1mld74kq6v5yiu');
sdk['graphql-endpoint']({
  query: '{allCards(pipeId: 301742761){edges{node{id}}}}'
}, {
  Authorization: 'Bearer dasd32422iou42i3dasasdascsc'
})
  .then(res => console.log(res))
  .catch(err => console.error(err));
LINK da página para criar o exemplo: https://developers.pipefy.com/reference/graphql-endpoint
Olá pessoal,
Estou com um problema ao consumir a api usando o exemplo em nodejs.
Tenho o seguinte retorno:
{
>    '0': {
>      instancePath: '/paths',
>      schemaPath: '#/additionalProperties',
>      keyword: 'additionalProperties',
>      params: { additionalProperty: '' },
>      message: 'must NOT have additional properties',
>      isIdentifierLocation: true
>    },
>    stack: 'SyntaxError: OpenAPI schema validation failed.\n' +
>      '\n' +
>      'ADDITIONAL PROPERTY must NOT have additional properties\n' +
>      '\n' +
>      '  24 |   ],\n' +
>      '  25 |   "paths": {\n' +
>      '> 26 |     "": {\n' +
>      '     |     ^^    is not expected to be here!\n' +
>      '  27 |       "post": {\n' +
>      '  28 |         "summary": "Example",\n' +
>      '  29 |         "description": "",\n' +
>   
>    message: 'OpenAPI schema validation failed.\n' +
>      '\n' +
>      'ADDITIONAL PROPERTY must NOT have additional properties\n' +
>      '\n' +
>      '  24 |   ],\n' +
>      '  25 |   "paths": {\n' +
>      '> 26 |     "": {\n' +
>      '     |     ^^    is not expected to be here!\n' +
>      '  27 |       "post": {\n' +
>      '  28 |         "summary": "Example",\n' +
>      '  29 |         "description": "",',
>    length: 1,
>    concat: [Function: concat],
>    copyWithin: [Function: copyWithin],
>    fill: [Function: fill],
>    find: [Function: find],
>    findIndex: [Function: findIndex],
>    lastIndexOf: [Function: lastIndexOf],
>    pop: [Function: pop],
>    push: [Function: push],
>    reverse: [Function: reverse],
>    shift: [Function: shift],
>    unshift: [Function: unshift],
>    slice: [Function: slice],
>    sort: [Function: sort],
>    splice: [Function: splice],
>    includes: [Function: includes],
>    indexOf: [Function: indexOf],
>    join: [Function: join],
>    keys: [Function: keys],
>    entries: [Function: entries],
>    values: [Function: values],
>    forEach: [Function: forEach],
>    filter: [Function: filter],
>    flat: [Function: flat],
>    flatMap: [Function: flatMap],
>    map: [Function: map],
>    every: [Function: every],
>    some: [Function: some],
>    reduce: [Function: reduce],
>    reduceRight: [Function: reduceRight],
>    at: [Function: at],
>    toJSON: [Function: toJSON],
>    details: [
>      {
>        instancePath: '/paths',
>        schemaPath: '#/additionalProperties',
>        keyword: 'additionalProperties',
>        params: [Object],
>        message: 'must NOT have additional properties',
>        isIdentifierLocation: true
>      }
>    ],
>    name: 'SyntaxError',
>    toString: [Function: toString],
>    [Symbol(Symbol.iterator)]: [Function: values],
>    [Symbol(Symbol.unscopables)]: [Object: null prototype] {
>      copyWithin: true,
>      entries: true,
>      fill: true,
>      find: true,
>      findIndex: true,
>      flat: true,
>      flatMap: true,
>      includes: true,
>      keys: true,
>      values: true,
>      at: true
>    }
>  }
Código usado:
sdk['graphql-endpoint']({  query: '{allCards(pipeId: 302194528){edges{node{id}}}}'}, {  Authorization: 'Bearer *token*'})  .then(res => console.log(res))  .catch(err => console.error(err))
Alguma ideia, ou sugestão de algum caminho?
Obrigado
No account yet? Create an account
Enter your E-mail address. We'll send you an e-mail with instructions to reset your password.