# Crypto Slippage & Market Impact API
> What a crypto trade actually costs once it eats into the order book — computed live from Binance's full depth feed (up to 5000 levels per side), no key, nothing stored. Top-of-book price is a fiction for anything but the smallest order: a real market order walks down the book, filling progressively worse levels, and the gap between the quoted price and the realised average fill is slippage. The estimate endpoint takes a pair, a side (buy or sell) and a size — in quote currency (notional, e.g. $250,000) or in base coin (quantity) — walks the live book level by level and returns the average fill price, the slippage versus the mid and versus top-of-book, the price impact (how far the last filled level sits from mid), the number of levels consumed and whether the book even holds enough liquidity to fill. The depth endpoint returns a liquidity profile: top bid/ask, mid, spread and the cumulative bid- and ask-side liquidity sitting within ±0.1%, ±0.25%, ±0.5%, ±1% and ±2% of mid, plus the book imbalance — a one-glance read on how deep and how lopsided a market is. The symbols endpoint lists tradable pairs. This is the execution-cost / market-impact analytics cut for crypto — distinct from the raw exchange order-book feed, from VWAP-on-candles, and from the price, ticker and quote APIs in the catalogue. Pairs are Binance symbols (BTCUSDT) or a coin=BTC&quote=USDT form.

## Authentication
All requests require your oanor API key in the `x-oanor-key` header. Get one at https://www.oanor.com/developer/keys.

```bash
curl -H "x-oanor-key: oanor_live_…" "https://api.oanor.com/slippage-api/..."
```

## Pricing
- **Free** (Free) — 300 calls/Mo, 2 req/s
- **Starter** ($13/Mo) — 12,000 calls/Mo, 6 req/s
- **Pro** ($38/Mo) — 75,000 calls/Mo, 18 req/s
- **Business** ($86/Mo) — 400,000 calls/Mo, 45 req/s

## Endpoints

### Slippage

#### `GET /v1/depth` — Order-book liquidity profile

**Parameters:**
- `symbol` (query, required, string) — Binance pair Example: `BTCUSDT`

**Example:**
```bash
curl -H "x-oanor-key: $KEY" \
  "https://api.oanor.com/slippage-api/v1/depth?symbol=BTCUSDT"
```

**Response:**
```json
{
    "data": {
        "note": "imbalance > 0 means more bid- than ask-side liquidity within the band (buy-side support); < 0 means heavier asks.",
        "levels": {
            "asks": 5000,
            "bids": 5000
        },
        "source": "Binance",
        "spread": 0.01,
        "symbol": "BTCUSDT",
        "best_ask": 63354.7,
        "best_bid": 63354.69,
        "mid_price": 63354.695,
        "spread_pct": 0,
        "liquidity_within": [
            {
                "ask_base": 90.48484,
                "band_pct": 0.1,
                "bid_base": 67.58154,
                "ask_quote": 5735591.07,
                "bid_quote": 4279111.48,
                "imbalance": -0.1454
            },
            {
                "ask_base": 182.15534,
                "band_pct": 0.25,
                "bid_base": 194.59198,
                "ask_quote": 11552679.18,
                "bid_quote": 12311029.17,
                "imbalance": 0.0318
            },
            {
                "ask_base": 216.47567,
                "band_pct": 0.5,
                "bid_base": 234.12193,
                "ask_quote": 13734846.59,
                "bid_quote": 14806181.55,
                "imbalance": 0.0375
            },
            {
                "ask_base": 253.67249,
                "band_pct": 1,
                "bid_base": 285.23814,
                "ask_quote": 16109604.98,
                "bid_quote": 18021851.88,
                "imbalance": 0.056
            },
      
…(truncated, see openapi.json for full schema)
```

#### `GET /v1/estimate` — Slippage & market impact of a market order

**Parameters:**
- `symbol` (query, required, string) — Binance pair Example: `BTCUSDT`
- `side` (query, optional, string) — buy or sell (default buy) Example: `buy`
- `notional` (query, optional, string) — Order size in quote currency Example: `250000`

**Example:**
```bash
curl -H "x-oanor-key: $KEY" \
  "https://api.oanor.com/slippage-api/v1/estimate?symbol=BTCUSDT&side=buy&notional=250000"
```

**Response:**
```json
{
    "data": {
        "note": null,
        "side": "buy",
        "filled": true,
        "source": "Binance",
        "symbol": "BTCUSDT",
        "mid_price": 63354.695,
        "requested": {
            "notional": 250000,
            "quantity": null
        },
        "top_price": 63354.7,
        "base_filled": 3.94601498,
        "worst_price": 63361.22,
        "quote_filled": 250000,
        "avg_fill_price": 63355.05606105,
        "levels_consumed": 43,
        "price_impact_pct": 0.0103,
        "slippage_pct_vs_mid": 0.0006,
        "slippage_pct_vs_top": 0.0006
    },
    "meta": {
        "timestamp": "2026-06-12T01:41:16.511Z",
        "request_id": "d39409ff-b861-4437-819c-dfcfd698bbf3"
    },
    "status": "ok",
    "message": "Estimate retrieved successfully",
    "success": true
}
```

#### `GET /v1/symbols` — Tradable Binance pairs

**Parameters:**
- `quote` (query, optional, string) — Filter by quote asset Example: `USDT`

**Example:**
```bash
curl -H "x-oanor-key: $KEY" \
  "https://api.oanor.com/slippage-api/v1/symbols?quote=USDT"
```

**Response:**
```json
{
    "data": {
        "count": 435,
        "quote": "USDT",
        "source": "Binance",
        "symbols": [
            "0GUSDT",
            "1000CATUSDT",
            "1000CHEEMSUSDT",
            "1000SATSUSDT",
            "1INCHUSDT",
            "1MBABYDOGEUSDT",
            "2ZUSDT",
            "AAVEUSDT",
            "ACEUSDT",
            "ACHUSDT",
            "ACMUSDT",
            "ACTUSDT",
            "ACXUSDT",
            "ADAUSDT",
            "ADXUSDT",
            "AEURUSDT",
            "AEVOUSDT",
            "AGLDUSDT",
            "AIGENSYNUSDT",
            "AIUSDT",
            "AIXBTUSDT",
            "ALCXUSDT",
            "ALGOUSDT",
            "ALICEUSDT",
            "ALLOUSDT",
            "ALPINEUSDT",
            "ALTUSDT",
            "AMPUSDT",
            "ANIMEUSDT",
            "ANKRUSDT",
            "APEUSDT",
            "API3USDT",
            "APTUSDT",
            "ARBUSDT",
            "ARDRUSDT",
            "ARKMUSDT",
            "ARKUSDT",
            "ARPAUSDT",
            "ARUSDT",
            "ASRUSDT",
            "ASTERUSDT",
            "ASTRUSDT",
            "ATMUSDT",
            "ATOMUSDT",
            "ATUSDT",
            "AUCTIONUSDT",
            "AUDIOUSDT",
            "AUSDT",
            "AVAUSDT",
            "AVAXUSDT",
            "AVNTUSDT",
            "AWEUSDT",
            "AXLUSDT",
            "AXSUSDT",
            "BABYUSDT",
            "BANANAS31USDT",
            "BANANAUSDT",
          
…(truncated, see openapi.json for full schema)
```

### Meta

#### `GET /v1/meta` — Spec

**Example:**
```bash
curl -H "x-oanor-key: $KEY" \
  "https://api.oanor.com/slippage-api/v1/meta"
```

**Response:**
```json
{
    "data": {
        "note": "symbol is a Binance pair (BTCUSDT) or coin=BTC&quote=USDT. estimate size is notional (quote currency, e.g. notional=250000) or quantity (base coin, e.g. quantity=5). slippage_pct is signed so positive = costlier than the reference. Depth is read fresh per call (no cache); only the tradable-symbol list is cached hourly.",
        "source": "Binance public REST (api.binance.com/api/v3, live)",
        "service": "slippage-api",
        "endpoints": {
            "GET /v1/meta": "This document.",
            "GET /v1/depth": "Order-book liquidity profile within ±0.1/0.25/0.5/1/2% of mid, with imbalance (symbol=BTCUSDT).",
            "GET /v1/symbols": "Tradable Binance pairs, optionally filtered by quote (quote=USDT).",
            "GET /v1/estimate": "Average fill price, slippage and market impact for a market order (symbol=BTCUSDT, side=buy, notional=250000)."
        },
        "description": "What a crypto trade actually costs once it eats into the order book, computed live from Binance's full depth feed (up to 5000 levels), no key, nothing stored. estimate walks the live book for a pair/side/size (quote or base) and returns the average fill price, slippage vs mid and vs top-of-book, price impact, levels consumed and whether the book holds enough liquidity. depth returns a liquidity profile: top bid/ask, mid, spread and cumulative bid/ask liquidity within ±0.1/0.25/0.5/1/2% of mid plus the imbalance. symbols lists tradable pairs. The execu
…(truncated, see openapi.json for full schema)
```


---
Marketplace page: https://www.oanor.com/api/slippage-api
OpenAPI spec: https://www.oanor.com/api/slippage-api/openapi.json
