# Hyperliquid Misc Events - Node Data

`misc_events_by_block` carries miscellaneous L1 events, including ledger updates, transfers, staking activity, withdrawals, and system-generated records.

The event variants are open-ended. Branch on the discriminator inside `inner`, retain unknown variants, and treat documented variants as examples rather than a closed enum.

## Access

| Availability  | Access                                                                                                          | Details                                                                                                                                                                                                                                                                                                                                                                               |
| ------------- | --------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| Live / replay | [StreamMiscEvents](https://www.dwellir.com/docs/hyperliquid/stream_misc_events) and [GetMiscEvents](https://www.dwellir.com/docs/hyperliquid/get_misc_events) | V3 selects with `position.block_number` or `position.timestamp`; `Record.block_number` and `Record.timestamp` are transport cursors. V3 supports the documented `users` filter. This feed does not accept `coins`. V2 selects with `block_height` or `timestamp_ms` and returns source JSON bytes in `BlockMiscEvents.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 `misc_events_by_block`: `2026-06-29` to today, stored as `hourly .lz4`.                                                                                                                                                                                                                                                                                               |

## File layout

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

Files contain JSON block envelopes. An envelope can have an empty `events` array. That records an empty source block; it is not a transport heartbeat and must not be used as proof that a connection is healthy.

## 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",
      "hash": "<redacted-transaction-hash>",
      "inner": {
        "LedgerUpdate": {
          "users": [
            "<redacted-user-a>",
            "<redacted-user-b>"
          ],
          "delta": {
            "type": "spotTransfer",
            "token": "USDC",
            "amount": "100.058362"
          }
        }
      }
    }
  ]
}
```

This is synthetic representative data. Production transaction and account identifiers use visible `<redacted-...>` markers.

## Important fields

| Field                           | Description                                                                               |
| ------------------------------- | ----------------------------------------------------------------------------------------- |
| `time`                          | Event timestamp as an ISO-8601 string.                                                    |
| `hash`                          | Transaction hash. An all-zero value can identify a system-generated event.                |
| `inner`                         | Single-key variant object such as `LedgerUpdate`; handle an unknown discriminator safely. |
| `inner.LedgerUpdate.users`      | Accounts involved in the ledger update.                                                   |
| `inner.LedgerUpdate.delta.type` | Discriminator for the ledger action. Its remaining fields depend on the type.             |

## Observed fields

`[]` marks an array element, `[0]` a tuple position, `<name>` an object whose `type` is that name, and `{key}` a map keyed by user, asset, or ID. Values after a colon are every distinct value seen for a short enum field. A field missing here can still appear in record types the sample did not contain.

Generated from 49,867 records in `misc_events_by_block/20261021/14.lz4` (2026-10-21).

```text
block_number                     number
block_time                       string
events                           array
events[]                         object
  hash                           string
  inner                          object
    CDeposit                     object
      amount                     string
      user                       string
    CWithdrawal                  object
      amount                     string
      is_finalized               bool
      user                       string
    CreateSubAccount             object
      name                       string
      sub_account                string
      user                       string
    Delegation                   object
      amount                     string
      is_undelegate              bool
      user                       string
      validator                  string
    Funding                      object
      deltas                     array
      deltas[]                   object
        coin                     string
        funding_amount           string
        funding_rate             string
        szi                      string
        user                     string
    GossipPriorityAuctionRestart object
      end_gas                    null | string
      previous_winner            null | object
        Ip                       string
      slot_id                    number
    LedgerUpdate                 object
      delta                      object
      delta<accountActivationGas> object
        amount                   string
        token                    string: HYPE, USDC
      delta<accountClassTransfer> object
        toPerp                   bool
        usdc                     string
      delta<borrowLend>          object
        amount                   string
        interestAmount           string
        operation                string: borrow, repay, supply, withdraw
        token                    string: HYPE, UBTC, USDC
      delta<cStakingTransfer>    object
        amount                   string
        isDeposit                bool
        token                    string: HYPE
      delta<deposit>             object
        usdc                     string
      delta<gossipPriorityGasAuction> object
        amount                   string
        token                    string: HYPE
      delta<internalTransfer>    object
        destination              string
        fee                      string
        usdc                     string
        user                     string
      delta<rewardsClaim>        object
        amount                   string
        token                    string: USDC
      delta<send>                object
        amount                   string
        destination              string
        destinationDex           string: "", io, para, spot, xyz
        fee                      string
        feeToken                 string: "", USDC, USDT0
        nativeTokenFee           string
        nonce                    number
        sourceDex                string: "", io, para, spot, xyz
        token                    string
        usdcValue                string
        user                     string
      delta<spotTransfer>        object
        amount                   string
        destination              string
        fee                      string
        feeToken                 string: "", HYPE, USDC
        nativeTokenFee           string
        nonce                    number
        token                    string
        usdcValue                string
        user                     string
      delta<subAccountTransfer>  object
        destination              string
        usdc                     string
        user                     string
      delta<vaultDeposit>        object
        usdc                     string
        vault                    string
      delta<vaultLeaderCommission> object
        usdc                     string
        user                     string
      delta<vaultWithdraw>       object
        basis                    string
        closingCost              string
        commission               string
        netWithdrawnUsd          string
        requestedUsd             string
        user                     string
        vault                    string
      delta<withdraw>            object
        fee                      string
        nonce                    number
        usdc                     string
      users                      array
      users[]                    string
    ValidatorRewards             object
      validator_to_reward        array
      validator_to_reward[]      array
      validator_to_reward[][]    string
  time                           string
local_time                       string
```

## Related pages

- [Blocks and actions](https://www.dwellir.com/docs/hyperliquid/data-catalog/node-feeds/blocks) — Pair event records with their surrounding block and execution responses.
- [HyperCore Info endpoint](https://www.dwellir.com/docs/hyperliquid/info-endpoint) — Query current HyperCore state through request-response methods.
- [Clearinghouse state](https://www.dwellir.com/docs/hyperliquid/clearinghouse-state) — Read current perpetual positions and margin state for an account.
