# Anomaly

[All API schemas](/api-reference/schemas/)

<code>object</code> — Additional properties rejected

| Field | Required at this level | Type | Description and constraints |
| --- | --- | --- | --- |
| <code>detectorVersion</code> | Yes | Constant <code>robust-mad-v1</code> | — |
| <code>subject</code> | Yes | <code>object</code> | Additional properties rejected |
| <code>subject.kind</code> | Yes | Constant <code>VAULT</code> | — |
| <code>subject.vaultId</code> | Yes | <code>string</code> | — |
| <code>evaluatedAt</code> | Yes | <code>string</code> | Format: <code>date-time</code> |
| <code>currentObservation</code> | Yes | <code>object</code> | Additional properties rejected |
| <code>currentObservation.capturedAt</code> | Yes | <code>string</code> | Format: <code>date-time</code> |
| <code>currentObservation.value</code> | Yes | [SignedAtomicAmount](/api-reference/schemas/signed-atomic-amount/) | — |
| <code>currentObservation.evidenceHash</code> | Yes | [Hash](/api-reference/schemas/hash/) | — |
| <code>inputHash</code> | No | [Hash](/api-reference/schemas/hash/) | — |
| <code>derivationHash</code> | No | [Hash](/api-reference/schemas/hash/) | — |
| <code>sourceProvider</code> | No | <code>object</code> | Additional properties rejected |
| <code>sourceProvider.providerId</code> | Yes | <code>string</code> | — |
| <code>sourceProvider.providerResourceVersion</code> | Yes | [Hash](/api-reference/schemas/hash/) | — |
| <code>sourceProvider.providerAttestationHash</code> | Yes | [Hash](/api-reference/schemas/hash/) | — |
| <code>sourceProvider.observedAt</code> | Yes | <code>string</code> | Format: <code>date-time</code> |
| <code>sourceProvider.payloadHash</code> | Yes | [Hash](/api-reference/schemas/hash/) | — |
| <code>sourceProvider.signature</code> | Yes | <code>string</code> | Content encoding: <code>base64</code> |
| <code>kind</code> | Yes | <code>string</code> | Allowed: <code>LIQUIDITY&#95;DISAPPEARANCE</code>, <code>ONE&#95;SIDED&#95;FLOW</code>, <code>INACTIVE&#95;RANGE</code>, <code>STABLECOIN&#95;DEPEG</code>, <code>ORACLE&#95;DISAGREEMENT</code>, <code>INVENTORY&#95;ACCUMULATION</code>, <code>EXCESSIVE&#95;TURNOVER</code>, <code>MANIPULATION&#95;INDICATOR</code>, <code>SIMULATED&#95;REALIZED&#95;DIVERGENCE</code> |
| <code>detected</code> | Yes | <code>boolean</code> | — |
| <code>severity</code> | Yes | <code>string</code> | Allowed: <code>INFO</code>, <code>WARNING</code>, <code>CRITICAL</code> |
| <code>median</code> | Yes | [SignedAtomicAmount](/api-reference/schemas/signed-atomic-amount/) | — |
| <code>medianAbsoluteDeviation</code> | Yes | [AtomicAmount](/api-reference/schemas/atomic-amount/) | — |
| <code>deviationMultiplesPips</code> | Yes | <code>integer</code> | Minimum: <code>0</code>; Maximum: <code>9007199254740991</code> |
| <code>coveragePips</code> | Yes | [Pips](/api-reference/schemas/pips/) | — |
| <code>explanation</code> | Yes | <code>string</code> | — |
| <code>responses</code> | Yes | Array of <code>string</code> | Min items: <code>1</code>; Max items: <code>5</code> |
| <code>evidenceHashes</code> | Yes | Array of [Hash](/api-reference/schemas/hash/) | Max items: <code>256</code> |

Nested required fields apply when their parent object or matching union branch is present. Named types link to their complete schema.

Exact definition: <code>#/components/schemas/Anomaly</code> in the [OpenAPI contract](/openapi/liquidity-operating-system-v2.openapi.json).