# L4 book snapshots

> HyperCore private-preview documentation.

> For the complete documentation index, see [llms.txt](/docs/llms.txt).

<Callout intent="info">
  This API is in private preview. Target October 2026; timing is subject to change.
</Callout>


# L4 book snapshots

Alchemy-original read that returns an order-level L4 snapshot for checkpointing an order-status stream.


<Note>

  **Coming with HyperCore.** This read is documented but is not yet callable.

</Note>

## Request

`POST /{apiKey}/info`

| Parameter              | Type    | Required | Description                                      |
| ---------------------- | ------- | -------- | ------------------------------------------------ |
| `type`                 | string  | Yes      | Selects the Alchemy-original `l4Snapshots` read. |
| `includeUsers`         | boolean | No       | Include order owners.                            |
| `includeTriggerOrders` | boolean | No       | Include trigger orders.                          |

```json
{
  "type": "l4Snapshots",
  "includeUsers": true,
  "includeTriggerOrders": true
}
```

## Response structure

```text
[height, [[coin, {book_orders, untriggered_orders}], ...]]
```

## Response fields

| Field                                  | Type    | Description                                                                            |
| -------------------------------------- | ------- | -------------------------------------------------------------------------------------- |
| `[]`                                   | array   | Snapshot pair containing the block height and per-market snapshots.                   |
| `[0]`                                  | integer | Block height reflected by the snapshot.                                                |
| `[1]`                                  | array   | Per-market `[coin, snapshot]` pairs.                                                  |
| `[1][][0]`                             | string  | Market identifier.                                                                     |
| `[1][][1]`                             | object  | Market snapshot with `book_orders` and `untriggered_orders` keys.                     |
| `[1][][1].book_orders`                 | array   | Two arrays: bids at index `0` and asks at index `1`.                                  |
| `[1][][1].book_orders[0]`              | array   | Bid `[address, order]` pairs.                                                          |
| `[1][][1].book_orders[1]`              | array   | Ask `[address, order]` pairs.                                                          |
| `[1][][1].book_orders[0\|1][]`        | array   | `[address, order]` pair; orders are not bare objects.                                  |
| `[1][][1].book_orders[0\|1][][0]`     | string  | Address associated with the order.                                                    |
| `[1][][1].book_orders[0\|1][][1]`     | object  | Order object described below.                                                          |
| `[1][][1].untriggered_orders`          | array   | Separate node-provided collection of `[address, order]` pairs for untriggered orders. |

### Order fields

The order object in each `[address, order]` pair contains the following fields.

| Field              | Type            | Description                                                                                                                                    |
| ------------------ | --------------- | ---------------------------------------------------------------------------------------------------------------------------------------------- |
| `coin`             | string          | Market symbol for the order.                                                                                                                   |
| `side`             | string          | Side code: A is ask/sell; B is bid/buy.                                                                                                        |
| `limitPx`          | string          | Limit price for the order.                                                                                                                     |
| `sz`               | string          | Current resting size of the order.                                                                                                            |
| `oid`              | integer         | Identifier assigned to the order.                                                                                                              |
| `timestamp`        | integer         | Milliseconds timestamp when the order was created.                                                                                             |
| `triggerCondition` | string          | Human-readable trigger condition, not a programmatic enum. Non-trigger orders use the literal `"N/A"`; use `triggerPx` for the machine-readable price. |
| `isTrigger`        | boolean         | Whether the order is a trigger order.                                                                                                          |
| `triggerPx`        | string          | Machine-readable trigger price; `"0.0"` when `isTrigger` is false.                                                                           |
| `children`         | array           | Child orders associated with the order.                                                                                                        |
| `isPositionTpsl`   | boolean         | Whether the order is a position take-profit or stop-loss order.                                                                                |
| `reduceOnly`       | boolean         | Whether execution can only reduce the position.                                                                                                |
| `orderType`        | string          | Display string: `Limit`, `Stop Limit`, `Stop Market`, `Market`, `Take Profit Market`, or `Take Profit Limit`.                               |
| `origSz`           | string          | Original order size.                                                                                                                           |
| `tif`              | string \| null | Time-in-force: `Alo`, `Ioc`, `Gtc`, `FrontendMarket`, or `LiquidationMarket`; null when not set.                                           |
| `cloid`            | string \| null | Client-supplied order identifier, when present.                                                                                              |

In the sampled market, zero trigger orders appeared in `book_orders`; the node returns untriggered orders in their own `untriggered_orders` collection.