Webhooks integration is sending duplicate requests

Hello,
I have several boards each with a webhook integration set up to send a request whenever a specific status column is changed. Depending on the status chosen, this could do anything from change a specific column, create a board, or add a pulse.

Until a couple days ago, these integrations worked successfully, sending one request and then showing Success in the Run History.

As of a couple days ago, the webhook request is still sent but the Run History says “In Progress”. Problem is, it never changes to “Success”, and instead keeps sending multiple requests to the webhook! This results in an unending stream of requests to the webhook until I turn off the integration.

Is monday expecting a specific response from the webhook or else it resends the request? What could be causing this to happen, especially since it’s been working for years without issue? We’re using the current API and the code for the webhook has not been changed for a few months.

Hey @AaronAyAaronson - we had something similar happen with a client account a few months ago, specifically with webhook integrations. This occurred when we used the new “Transfer Ownership” option on the individual integrations. We had to get monday.com support to fix it in the backend.

Just wondering if you completed the same process recently?

Mark

And another experience is when you archive a board that contains a webhook integration and then restore it. This will lead to duplicated webhooks. Monday support is aware of it but not sure if and when it will be fixed.

@mark.anley No, we haven’t transferred any ownership.

@basdebruin None of the boards with the issue have been archived and restored.

This issue is happening on both old and new boards and with different webhook links.

One board was created in 2020 and acts as a long term project tracker, so ownership has not changed and automations are rarely changed (and last were updated long before this issue). The newer boards are created as needed to track individual projects and from a different board template.

To clarify, the automation itself is not duplicating in the automations list. Rather, when the automation is triggered, it keeps sending a request to the webhook link until the automation is turned off.

Are those webhooks belonging to an app? If so, the app should delete the webhook upon duplication.

No, they’re triggered by a board automation:

The webhook link is to a Netlify Function, which ingests the request data and goes from there. Best I can tell, the issue is on monday’s end and not Netlify’s (unless monday is expecting a specific response back from the Netlify function…which is not how it used to work)?

Netlify receives the initial webhook request from monday, does its business, keeps receiving new duplicate requests over and over in perpetuity, and then happily carries out those requests. The Run history is stuck on “In progress” until I turn off the automation and then monday stops sending requests:

Up until a couple days ago it would send one webhook request and give a “Success” status.

Hello,

I have several boards each with a webhook integration set up to send a request whenever a specific status column is changed. Depending on the status chosen, this could do anything from change a specific column, create a board, or add a pulse.

Until a couple days ago, these integrations worked successfully, sending one request and then showing Success in the Run History.

As of a couple days ago, the webhook request is still sent but the Run History says “In Progress”. Problem is, it never changes to “Success”, and instead keeps sending multiple requests to the webhook! This results in an unending stream of requests to the webhook until I turn off the integration.

Is monday expecting a specific response from the webhook or else it resends the request? What could be causing this to happen, especially since it’s been working for years without issue? We’re using the current API and the code for the webhook has not been changed for a few months.

Aaron, I am having this same issue. When I create a board from a template, all of the web hooks are no longer connected in the newly created board. Have you been able to resolve this issue or get an answer from monday?

Hey Aaron,

I’ve encountered the same issue before, and it typically happens when my endpoint doesn’t properly respond to the HTTP request.

TLDR: Reply to webhook events with status code 200 to avoid retries.

To authorize a new webhook endpoint, we have to reply to the initial HTTP request with the same event body we received. Even after authorization, endpoints should continue to respond to subsequent HTTP requests with a status code 200. This lets Monday know that the message was received successfully. If Monday doesn’t get a response, it will keep resending the request in an attempt to retry.

I hope this helps you find a solution to your problem, good luck!