How to test if webhook is working?

  • 25 January 2022
  • 3 replies
  • 255 views

Userlevel 3

I created a webhook in a pipe in order for it to export data to a Google Cloud Function that will, in turn, send it to a Google Cloud Pub/Sub topic.

The Cloud function is all set up and tested, surely working when I do a POST request using curl with the same token.

I set up the webhook using https://app.pipefy.com/graphiql with the following piece of code:

mutation{
createWebhook(input:{
actions:"card.move"
name:"Webhook-Test"
url:"https://MY_CLOUD_FUNCTION_URL"
email:"MY_EMAIL@MY_COMPANY.com"
pipe_id:302214108
headers: "[{\"Authorization\":\"Bearer MY_VERY_LONG_TOKEN\"}]"
})
{
clientMutationId
}
}

And it actually does create a webhook, as I could verify with the following piece of code:

{pipe(id:302214108){id webhooks{id url headers actions}}}

However, when I move some cards to test it, I don’t see any invocation in the cloud function dashboard.

 

Is there a way to test and monitor the webhook? Any ideas that could help solve this? I’m totally lost with this, since I’m new to a lot of concepts involved here.


3 replies

Userlevel 7
Badge +15

Hi @davi96

I can't help you much in the doubt about the webhook, but I believe it can help you in solving your problem, which apparently is the extraction of data from Pipefy for presentation in a dashboard.

Is there really a need to extract the data through webhook? Wouldn't it be better to extract the complete tables once a day (or at another frequency)?

Tell me if it makes sense. If this is a viable solution for you, I can give you more information.

Userlevel 3

Hey Lucas, thanks for the reply. The data I’m interested in is from cards, not a table. Anyway, at first, I’ve done something similar to your suggestion, pulling cards data using the API and transforming it to be saved in a table. The reason why this option doesn’t seem ideal to me is that I have to pull the whole thing everytime, instead of just updating the cards’ info where modifications occurred.

This data might be used for dashboards, but this is not the only reason why I need it. It’s also crossed against other sources of data to define production’s priorities, so I need it to refresh more frequently than once a day. Ideally, I’d say it needs to be refreshed every 15 min tops. That’s why I wanted to track the cards’ modifications using webhooks.

Given the context, any ideas you have will be appreciated.

Userlevel 7
Badge +15

@davi96 

I understand your scenario. With this update frequency, you really can't pull all the data out of the Pipe.

I'll think of other alternatives and come back with a comment.

Reply