Skip to main content
Solved

Incluir um Card em um Pipe usando C# ou VbScript

  • October 16, 2020
  • 4 replies
  • 759 views

alexei_morais

Olá pessoal ! Alguém tem algum exemplo de criação de um Card em um Pipe usando C#, VbScript ou POSTMAN? 
Usando o GraphiQL IDE com o comando:
mutation {
createCard(input: {
pipe_id: 301418172
fields_attributes: [
{field_id: "produto", field_value: "produto1"}
{field_id: "valor_produto", field_value: "1000"}
]
})
}
funciona OK.

Best answer by Marcos Carvalho

Olá Alexei, como vai?

 

Seguem aqui alguns exemplos da sua mutation.

 

Exemplo em cURL: 

curl --request POST \
  --url https://api.pipefy.com/graphql \
  --header 'authorization: Bearer TOKEN' \
  --header 'content-type: application/json' \
  --data '{"query":"mutation { createCard(input: { pipe_id: 301418172 fields_attributes: [ {field_id: \"produto\", field_value: \"produto1\"} {field_id: \"valor_produto\", field_value: \"1000\"} ] }) }"}'

 

 

Exemplo em C# gerado pelo Postman:

 

var client = new RestClient("https://api.pipefy.com/graphql");
client.Timeout = -1;
var request = new RestRequest(Method.POST);
request.AddHeader("authorization", "Bearer TOKEN");
request.AddHeader("content-type", "application/json");
request.AddHeader("Cookie", "__cfduid=d3519e0f12eb3d34cafaa86d9190276741602613283");
request.AddParameter("application/json", "",  ParameterType.RequestBody);
IRestResponse response = client.Execute(request);
Console.WriteLine(response.Content);

 

 

Caso queira testar pelo Postman, ele já suporta requests em GraphQL desta forma:

 

 

 

 

Caso queira converter para algumas linguagens como Ruby, Python, Js e Node, pode conferir nossa documentação que conta com um console para conversão para estas linguagens.

 

https://developers.pipefy.com/reference#graphql-endpoint

 

Espero que te ajude =D 

 

View original
Did this topic help you find an answer to your question?

4 replies

Marcos Carvalho
Pipefy Staff
Forum|alt.badge.img+6

Olá Alexei, como vai?

 

Seguem aqui alguns exemplos da sua mutation.

 

Exemplo em cURL: 

curl --request POST \
  --url https://api.pipefy.com/graphql \
  --header 'authorization: Bearer TOKEN' \
  --header 'content-type: application/json' \
  --data '{"query":"mutation { createCard(input: { pipe_id: 301418172 fields_attributes: [ {field_id: \"produto\", field_value: \"produto1\"} {field_id: \"valor_produto\", field_value: \"1000\"} ] }) }"}'

 

 

Exemplo em C# gerado pelo Postman:

 

var client = new RestClient("https://api.pipefy.com/graphql");
client.Timeout = -1;
var request = new RestRequest(Method.POST);
request.AddHeader("authorization", "Bearer TOKEN");
request.AddHeader("content-type", "application/json");
request.AddHeader("Cookie", "__cfduid=d3519e0f12eb3d34cafaa86d9190276741602613283");
request.AddParameter("application/json", "",  ParameterType.RequestBody);
IRestResponse response = client.Execute(request);
Console.WriteLine(response.Content);

 

 

Caso queira testar pelo Postman, ele já suporta requests em GraphQL desta forma:

 

 

 

 

Caso queira converter para algumas linguagens como Ruby, Python, Js e Node, pode conferir nossa documentação que conta com um console para conversão para estas linguagens.

 

https://developers.pipefy.com/reference#graphql-endpoint

 

Espero que te ajude =D 

 


alexei_morais
  • Author
  • New Member
  • 2 replies
  • October 19, 2020

Olá Marcos,

Obrigado pela sua resposta! Testei no POSTMAN e o status já mudou para 200OK mas mesmo assim retornou erro.

POST https://api.pipefy.com/graphql
Body (row): {"query":"mutation { createCard(input: { pipe_id: 301418172 fields_attributes: [ {field_id: \"produto\", field_value: \"produto1\"} {field_id: \"valor_produto\", field_value: \"1000\"} ] }) }"}
Headers:
content-type application/json
Authorization:
Bearer Token ……..

Result Satus 200 OK
{"errors":[{"message":"Field must have selections (field 'createCard' returns CreateCardPayload but has no selections. Did you mean 'createCard { ... }'?)","locations":[{"line":1,"column":12}],"path":["mutation","createCard"],"extensions":{"code":"selectionMismatch","nodeName":"field 'createCard'","typeName":"CreateCardPayload"}}]}


Quando eu uso a ide no endereço https://app.pipefy.com/graphiql passando o mesmo comando

mutation {
  createCard(input: {
    pipe_id: 301418172
    fields_attributes: [
      {field_id: "produto", field_value: "produto1"}
      {field_id: "valor_produto", field_value: "1000"}
    ]
  }) {
    clientMutationId
  }
}

O card é incluído sem problemas.

Você saberia dizer se falta fazer algo?


Marcos Carvalho
Pipefy Staff
Forum|alt.badge.img+6

Olá Alexei, 

 

Você deve trazer o payload de retorno da mutation uma vez que você está testando em outra aplicação.

 

Veja que se testar no GraphiQL ele autocompleta para você com o “clientMutationId” e no Postman não.

 

Então você deve colocar ao final da sua mutation alguns dados para trazer a confirmação da requisição como o “clienMutationId” e também os dados do card como id e title:

 

{"query":"mutation {createCard(input:{pipe_id: 301418172, fields_attributes: [{field_id: \"produto\", field_value: \"produto1\"} {field_id: \"valor_produto\", field_value: \"1000\"}]}){clientMutationId card {id title }}}"}

 


alexei_morais
  • Author
  • New Member
  • 2 replies
  • October 19, 2020

Olá Marcos, obrigado pelo apoio!!! Deu certo agora !!!


Cookie policy

We use cookies to enhance and personalize your experience. If you accept you agree to our full cookie policy. Learn more about our cookies.

 
Cookie settings