Merge's Webhook Behavior
Merge does send you multiple webhooks for the same event. The hook ID corresponds to the type of event that caused the hook to fire, so it's possible you could see the same ID twice, though there are multiple unique instances of the same event, e.g. "candidate.created."
How to identify unique webhooks
You can avoid false duplicates by relying on the webhook signature as the unique identifier of a given event. This is labeled as the X-Merge-Webhook-Signature
in the header of the payload, so we recommend leveraging this to ensure you're certain webhooks are for distinct events!