Webhooks

Webhooks in ComplyAdvantage Mesh

ComplyAdvantage Mesh has a comprehensive webhook infrastructure. Setting up, viewing and changing the status of webhooks can be achieved through our webhook endpoints.

Source IP addresses

Webhooks will be delivered from the following IP addresses, depending on the region you are hosted in. If you are unsure of the region you are hosted in, please reach out to our support team who will be able to confirm.

ServerIP addresses
https://api.eu.mesh.complyadvantage.com/99.81.100.211, 99.81.116.122, 99.81.123.126
https://api.eu3.mesh.complyadvantage.com/34.159.166.146, 34.159.147.62, 34.89.250.171
https://api.us.mesh.complyadvantage.com/34.67.184.6, 35.225.126.158, 34.70.66.162
https://api.ca.mesh.complyadvantage.com/34.47.8.155, 34.47.17.48, 34.95.18.164
https://api.au.mesh.complyadvantage.com/34.151.112.133, 35.201.15.175, 35.201.23.82

Delivery Guarantees

Our webhooks operate on an "at least once" delivery guarantee. This means that when an event occurs that triggers a webhook, we ensure that the webhook is sent to your specified endpoint at least one time.

In practice, this guarantee implies that for each webhook, you will receive one or more requests from our systems. While we strive to send each webhook only once, there are scenarios where you may receive the same webhook more than once. This can happen due to various factors such as network issues, server redundancy, or our retry mechanisms.

It's important to note that receiving duplicate webhooks is a normal, though infrequent occurrence in an "at least once" delivery system. We prioritize ensuring that you don't miss webhooks over preventing occasional duplicates. Therefore, we recommend that your webhook handling logic be idempotent - capable of processing the same event multiple times without adverse effects.

Webhooks retry mechanism

If a webhook is sent from our side and the endpoint on the other end is not available to receive it, there will be three retries with an exponential back-off between them:

  • 1st retry after 2 minutes
  • 2nd retry after 4 minutes
  • 3rd retry after 8 minutes