> ## Documentation Index
> Fetch the complete documentation index at: https://apidocs.ripio.com/llms.txt
> Use this file to discover all available pages before exploring further.

# orderbook/level_3@BASE_QUOTE

> Subscribe to real-time level 3 order book updates with individual order information

This topic will notify whenever an order is opened, canceled or a trade happens for the given pair (BASE\_QUOTE). By default, the system notifies the topic every 30 seconds, even if a transaction has not taken place. Each side will contain up to 100 orders.

Level 3 order book provides individual order details, allowing you to see each order in the book.

## Subscription Request

<ParamField body="method" type="string" required>
  Subscribe method. Must be `subscribe`
</ParamField>

<ParamField body="topics" type="array" required>
  Array of topics to subscribe to. Format: `orderbook/level_3@BASE_QUOTE`

  Example: `["orderbook/level_3@ETH_BRL"]`
</ParamField>

## Stream Response

<ResponseField name="id" type="integer">
  Each WebSocket message includes a sequential numeric id. Each topic has its own unique sequence, and for private topics, the sequence is unique to each topic and user. It's important to note that some topics will send a "welcome message", which will have an id value of -1. Additionally, this sequence may be reset between connections, so be sure to update this value locally whenever you reconnect.
</ResponseField>

<ResponseField name="topic" type="string">
  Topic name (format: `orderbook/level_3@BASE_QUOTE`)
</ResponseField>

<ResponseField name="timestamp" type="integer">
  Timestamp in milliseconds
</ResponseField>

<ResponseField name="body" type="object">
  Order book details object

  <Expandable title="Order Book Details">
    <ResponseField name="pair" type="string">
      Trading pair code (e.g., ETH\_BRL)
    </ResponseField>

    <ResponseField name="hash" type="string">
      Hash representing the current order book state. For examples of how the order book checksum hash is computed, see: [https://github.com/ripio/api/tree/main/websocket-checksum-hash](https://github.com/ripio/api/tree/main/websocket-checksum-hash)
    </ResponseField>

    <ResponseField name="asks" type="array">
      Array of sell orders (ask side)

      <Expandable title="Ask Order">
        <ResponseField name="id" type="string">
          Order identifier
        </ResponseField>

        <ResponseField name="price" type="number">
          Ask price
        </ResponseField>

        <ResponseField name="amount" type="number">
          Remaining amount available at this price
        </ResponseField>
      </Expandable>
    </ResponseField>

    <ResponseField name="bids" type="array">
      Array of buy orders (bid side)

      <Expandable title="Bid Order">
        <ResponseField name="id" type="string">
          Order identifier
        </ResponseField>

        <ResponseField name="price" type="number">
          Bid price
        </ResponseField>

        <ResponseField name="amount" type="number">
          Remaining amount available at this price
        </ResponseField>
      </Expandable>
    </ResponseField>
  </Expandable>
</ResponseField>

## Subscription Example

```json theme={null}
{
  "method": "subscribe",
  "topics": [
    "orderbook/level_3@ETH_BRL"
  ]
}
```

## Stream Response Example

```json theme={null}
{
  "id": 2,
  "topic": "orderbook/level_3@ETH_BRL",
  "timestamp": 1672857013503,
  "body": {
    "pair": "ETH_BRL",
    "hash": "2254383345",
    "asks": [
      {
        "id": "43758DB1-3257-4C98-A20F-7F246E460A50",
        "price": 20,
        "amount": 184.9
      },
      {
        "id": "4B86ACC5-76B2-4003-AF20-F398CE9EDC92",
        "price": 20,
        "amount": 10
      }
    ],
    "bids": [
      {
        "id": "B075FDF9-9B68-4299-87E0-5FC8B40B3ABD",
        "price": 5,
        "amount": 400
      },
      {
        "id": "606763A5-4B95-4216-9F07-69C6B51D64F0",
        "price": 5,
        "amount": 20
      }
    ]
  }
}
```

## Update Frequency

* **Default**: Every 30 seconds
* **On Change**: Immediately when an order is opened, canceled, or a trade happens
* **Updates Include**: Both sides of the order book (asks and bids)

## Key Characteristics

* **Level 3**: Shows individual orders, not aggregated by price
* **Up to 100 Orders**: Each side contains maximum 100 orders
* **Hash Value**: Used to verify order book integrity
* **Order IDs**: Each order has a unique identifier
* **Full Depth**: Full order book depth is provided in each update

## Usage Notes

* **Order Tracking**: You can track individual orders by their IDs
* **Market Depth**: See the complete market depth with individual orders
* **Price Levels**: Multiple orders can exist at the same price level
* **Hash Verification**: Use the hash to verify the order book hasn't been corrupted
* **Real-time Updates**: Receive immediate updates when orders change

## Use Cases

* **Order Book Visualization**: Display a detailed order book view with individual orders
* **Market Analysis**: Analyze individual order patterns and large orders
* **Price Prediction**: Track large orders that might indicate market direction
* **Liquidity Analysis**: Monitor order liquidity at different price levels
* **Order Tracking**: Track specific orders through their complete lifecycle
