---
title: Market Data
description: Compare L1, L2, and L3 order book views, then choose between REST snapshots and WebSocket updates for your integration.
---

L1, L2, and L3 describe how much of an order book you can see. The examples below are illustrative; use the API reference for the exact response shape.

## L1: Best Prices

L1 shows the best available bid and ask with aggregate size, plus the latest trade.

```text L1 example
Best bid   $0.54 × 120 contracts
Best ask   $0.56 ×  80 contracts
```

Use L1 when you need the current spread but not the depth behind it.

## L2: Price Levels

L2 shows the full price ladder with quantity aggregated at each price level. It does not expose individual orders.

```json
{
  "orderbook": {
    "ticker": "UDX-EXAMPLE-MARKET",
    "bids": [
      ["0.54", "120"],
      ["0.53", "300"]
    ],
    "asks": [
      ["0.56", "80"],
      ["0.57", "250"]
    ]
  }
}
```

Each pair is `[price, quantity]`. UDX prices the book from the YES side.

Use L2 to display depth, estimate available liquidity, or recover a local order book. The public REST snapshot and WebSocket stream currently use this model.

## L3: Individual Orders

L3 shows every individual resting order, including its size, updates, and FIFO queue position. Use L3 only when the published interface provides it.

```text L3 example
$0.54 bid
  Order A    50 contracts
  Order B    70 contracts
```

When L3 is available, use it when your integration needs order-level queue information.

:::note[Walkthrough]
Follow [Market Data Flow](/market-data-flow) to build and recover a live L2 order book.
:::
