> For the complete documentation index, see [llms.txt](https://docs.quadrata.com/integration/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.quadrata.com/integration/how-to-integrate/webhooks/ongoing-monitoring-webhooks.md).

# Ongoing Monitoring Webhooks

Quadrata will emit a webhook event (HTTP Request) whenever there is a change to a passport's AML score. The payload for this request will contain both, the previous AML score, and the updated AML score, along with the associated wallet address.

{% hint style="danger" %}
Ongoing monitoring is a premium feature. Contact Quadrata at <mark style="color:blue;"><contact@quadrata.com></mark> to enable ongoing monitoring for your dApp.
{% endhint %}

### Payload Structure

Webhooks are sent over HTTPS with a signature verification header. Each payload will include the following data:

#### Request Header

Each webhook request that Quadrata emits will contain a header signature that an integrating application can use to verify the authenticity of the message.

* X-WEBHOOK-SIGNATURE - Base64 Encoded `SHA384` request signature.

{% hint style="success" %}
See [Webhook Request Signature](/integration/how-to-integrate/webhooks/webhook-request-signature.md)for more information on how to verify the webhook request signature.
{% endhint %}

#### Request Body

* `eventId` - The UUID for the event that triggered this webhook
* `monitoring` - JSON payload with the data that was monitored and the monitoring type (AML)
* `nonce` - To ensure the signature is always unique
* `timestamp` - Unix epoch representing the time when the notification was triggered
* `type` - Representing the type of notification,  `MONITORING`
* `walletAddress` - Wallet address associated to the passport

{% hint style="danger" %}
Quadrata will attempt to deliver a webhook payload up to 3 times for each configured URI,  if an HTTP response status code is returned outside of the 2xx range (200, 201, etc).
{% endhint %}

```json
{
  "eventId": "5bab4b6d-8f6b-48c3-ab19-4d1e423ae4be",
  "monitoring": { 
    "previousScore": 1, 
    "score": 3, 
    "type": "AML" 
  },
  "nonce": "e1b2f73a",
  "timestamp": 1703201319,
  "type": "MONITORING",
  "walletAddress": "0x9b913Bb99324963Dc4B772E1e35AE23df0cACDeD"
}
```

{% hint style="info" %}
Monitoring events will always contain the single passport wallet address associated to the AML score that was updated.

Unlike onboarding notifications, this field is not a list, but a single string.
{% endhint %}
