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.