# Hyperliquid Order Statuses - Node Data

`node_order_statuses_by_block` records order lifecycle transitions. An event includes the order snapshot, account, status, transaction context, and optional builder attribution at that point in the lifecycle.

Use it to follow placement, filling, cancellation, and rejection behavior. Status strings are open-ended, so consumers must preserve and safely handle unknown status values.

## Access

| Availability  | Access                                                                                                                      | Details                                                                                                                                                                                                                                                                                                                                                            |
| ------------- | --------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ |
| Live / replay | [StreamOrderStatuses](https://www.dwellir.com/docs/hyperliquid/stream_order_statuses) and [GetOrderStatuses](https://www.dwellir.com/docs/hyperliquid/get_order_statuses) | V3 selects with `position.block_number` or `position.timestamp`; `Record.block_number` and `Record.timestamp` are transport cursors. V3 supports the documented `users` and `coins` filters. V2 selects with `block_height` or `timestamp_ms` and returns source JSON bytes in `BlockOrderStatuses.data`; it does not use the V3 record fields or filter contract. |
| Archival      | [S3 Bucket](https://www.dwellir.com/docs/hyperliquid/historical-data)                                                                              | S3 coverage for `node_order_statuses_by_block`: `2026-01-22` to `2026-09-28`, stored as `hourly .lz4`.                                                                                                                                                                                                                                                             |
| Historical    | [Indexed order history](https://www.dwellir.com/docs/hyperliquid/hyperliquid-index/fills/historical-orders)                                        | Supports historical queries.                                                                                                                                                                                                                                                                                                                                       |

## File layout

```text
node_order_statuses_by_block/<YYYYMMDD>/<hour>.lz4
```

Files contain JSON block envelopes with status objects in `events`.

## Sample data

```json
{
  "local_time": "2026-01-01T00:00:00.100000000",
  "block_time": "2026-01-01T00:00:00.000000000",
  "block_number": 12345,
  "events": [
    {
      "time": "2026-01-01T00:00:00.000000000",
      "user": "<redacted-user>",
      "hash": "<redacted-transaction-hash>",
      "builder": { "b": "<redacted-builder>", "f": 50 },
      "status": "open",
      "order": {
        "coin": "LTC",
        "side": "A",
        "limitPx": "68.177",
        "sz": "5.33",
        "oid": 101,
        "timestamp": 1704067200000,
        "orderType": "Limit",
        "origSz": "5.33",
        "tif": "Alo",
        "reduceOnly": false,
        "cloid": "<redacted-client-order-id>"
      }
    }
  ]
}
```

This is synthetic representative data. Production account, transaction, builder, order, and client-order identifiers are replaced or use visible `<redacted-...>` markers. `builder` can be `null` or the compact object `{ b, f }`, where `b` is the builder address and `f` is its fee value.

## Important fields

| Field     | Description                                                                                                     |
| --------- | --------------------------------------------------------------------------------------------------------------- |
| `time`    | Status-event timestamp as an ISO-8601 string.                                                                   |
| `user`    | Account associated with the order.                                                                              |
| `hash`    | Transaction hash; some status variants use `null`.                                                              |
| `builder` | `null` or `{ b, f }` builder attribution.                                                                       |
| `status`  | Lifecycle value such as `open`, `filled`, or `canceled`, plus reason-coded variants. The set is not exhaustive. |
| `order`   | Order snapshot at the transition, including coin, side, price, size, IDs, and conditions.                       |

Key order identity by at least `(coin, oid)` because `oid` is not reliably unique across coins.

## Related pages

- [L4 books](https://www.dwellir.com/docs/hyperliquid/data-catalog/derived/l4-book) — Follow the current resting order set and typed order-level updates.
- [Open orders](https://www.dwellir.com/docs/hyperliquid/open-orders) — Query a user's current open orders.
- [Order action payload](https://www.dwellir.com/docs/hyperliquid/order) — Decode the signed action that creates an order.
