> 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 %}


---

# Agent Instructions
This documentation is published with GitBook. GitBook is the documentation platform designed so that both humans and AI agents can read, navigate, and reason over technical content effectively. Learn more at gitbook.com.

## Querying This Documentation
If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter, and the optional `goal` query parameter:

```
GET https://docs.quadrata.com/integration/how-to-integrate/webhooks/ongoing-monitoring-webhooks.md?ask=<question>&goal=<endgoal>
```

`ask` is the immediate question: it should be specific, self-contained, and written in natural language.
`goal` is optional and describes the broader end goal you are ultimately trying to accomplish on behalf of the user. GitBook uses it to tailor the answer towards what is most useful for that goal.

The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
