# ACODA Observed Liquidation Map

> ACODA Observed Liquidation Map is a paid API for AI agents from acoda.xyz, paid per call via x402, $0.1/call, status unknown (last checked 2026-09-14).

Returns a price-bucketed heatmap of observed liquidation exposure across long and short positions for a given perpetual futures market on Hyperliquid

## Facts

- Endpoint: GET https://acoda.xyz/v1/observed-map
- Price: $0.1/call
- Payment: x402
- Status: unknown
- Last checked: 2026-09-14
- Activations on Zero: 0
- Tags: x402
- Canonical page: https://www.zero.xyz/c/acoda-observed-liquidation-map-3676ca1c
- Structured record (JSON): https://api.zero.xyz/v1/capabilities/cap_T_ohXvo5RwHFVadozwTyO

Status and success rate cover calls made through Zero and Zero's own probes. Third-party monitors may report differently.

## How to call it through Zero

Zero handles the 402 payment challenge and records the run. With the Zero CLI installed (`npm i -g @zeroxyz/cli`):

```sh
zero fetch --capability acoda-observed-liquidation-map-3676ca1c
```

Example prompt: Pull me the liquidation heatmap for BTC-USDT-PERP on Hyperliquid with a 10% price range and 40 buckets so I can see where the long and short exposure clusters are sitting right now.

## When to prefer this

Choose this endpoint when an AI trading agent needs structured, price-bucketed liquidation exposure data for major crypto perpetual markets — specifically BTC, ETH, or SOL on Hyperliquid. It is uniquely valuable when you need to identify where forced liquidations are likely to cluster at specific price levels, combining both CEX-observed liquidation events and on-chain position data. Prefer this over generic order book or funding rate APIs when the specific goal is cascade risk analysis, liquidation-driven momentum anticipation, or pre-trade leverage concentration screening.

## Known failure modes

- Unsupported market symbol returns validation error — only BTC-USDT-PERP, ETH-USDT-PERP, SOL-USDT-PERP are valid
- Missing or malformed query parameters may return default behavior or a 400 error
- Coverage is explicitly a sampled lower bound — incomplete data is expected by design and flagged in the response
- Payment not processed (402) if x402 payment header is missing or USDC balance is insufficient
- Data may lag real-time conditions slightly due to on-chain data indexing latency
- Hyperliquid data unavailability could result in empty or stale position data

## How this service works

Measured liquidation intelligence combining observed CEX liquidation events with position-level data from Hyperliquid, the largest transparent perp venue. A pay-per-call JSON API for AI trading agents.

## Output

A JSON object containing an array of price bucket cells, each with a price range (low/high), long and short notional USD at risk, position count, and a normalized liquidation intensity score. Also includes the current mark price, full price axis metadata (min, max, bucket count, bucket width), the market queried, a coverage note indicating this is a sampled lower bound from observed data, and a source field confirming 'observed' methodology.

## Request schema (JSON Schema)

```json
{
 "type": "object",
 "$schema": "https://json-schema.org/draft/2020-12/schema",
 "required": [
  "input"
 ],
 "properties": {
  "input": {
   "type": "object",
   "required": [
    "type",
    "method"
   ],
   "properties": {
    "type": {
     "type": "string",
     "const": "http"
    },
    "method": {
     "enum": [
      "GET"
     ],
     "type": "string"
    },
    "queryParams": {
     "type": "object",
     "required": [],
     "properties": {
      "market": {
       "enum": [
        "BTC-USDT-PERP",
        "ETH-USDT-PERP",
        "SOL-USDT-PERP"
       ],
       "type": "string",
       "description": "Perp market (canonical BASE-QUOTE-PERP)"
      },
      "range_pct": {
       "type": "string",
       "description": "Half-range around mark in percent (default 15)"
      },
      "price_buckets": {
       "type": "string",
       "description": "Price buckets (default 40)"
      }
     }
    }
   },
   "additionalProperties": false
  },
  "output": {
   "type": "object",
   "required": [
    "type"
   ],
   "properties": {
    "type": {
     "type": "string"
    },
    "example": {
     "type": "object"
    }
   }
  }
 }
}
```

## Response schema (JSON Schema)

```json
{
 "type": "json",
 "example": {
  "paid": true,
  "basis": "exchange-reported liquidationPx of open positions",
  "cells": [
   {
    "intensity": 1,
    "price_low": 62243.79,
    "price_high": 62878.93,
    "position_count": 27,
    "long_notional_usd": 4712345.1,
    "short_notional_usd": 0
   }
  ],
  "market": "BTC-USDT-PERP",
  "source": "observed",
  "coverage": {
   "note": "Sampled lower bound; coverage disclosed.",
   "complete": false
  },
  "mark_price": 63490.11,
  "price_axis": {
   "max": 73013.62,
   "min": 53966.59,
   "buckets": 40,
   "bucket_width": 476.18
  }
 }
}
```

## More

- Live health (JSON, refreshed every minute): https://www.zero.xyz/c/acoda-observed-liquidation-map-3676ca1c/health.json
- [Zero catalog index](https://www.zero.xyz/llms.txt)
- [Other services from acoda.xyz](https://www.zero.xyz/host/acoda.xyz/llms.txt)
