---
title: Streams Data Sources
description: Quicknode Streams allows users to access a variety of datasets tailored for different types of blockchain data. Datasets are supported across chains and multiple destinations.
tags: []
---

## Overview

Each stream delivery contains two top-level fields:

  

-   `data` — the dataset content. The shape of `data` depends on the selected dataset type and chain client's structure for the given data. We do not modify the structure of the underlying data.
-   `metadata` — an object containing metadata about the stream and the current batch.

Metadata is always included in every delivery:

  

-   **HTTP headers**: Metadata fields are sent as HTTP headers on every delivery request.
-   **Payload body**: Metadata is included as a `metadata` object in the JSON payload body.
-   **Filter function**: The full payload (including `metadata`) is passed to your filter function when one is configured.

> **Note**: Metadata is sent once per batch, not per individual data record.

****Stream Metadata Properties (once per batch)****

| Property | Type | Header Name | Description | Example |
| --- | --- | --- | --- | --- |
| batch_start_range | integer | Batch-Start-Range | Starting block of the current batch | 19271200 |
| batch_end_range | integer | Batch-End-Range | Ending block of the current batch | 19271294 |
| data_size_bytes | integer | Batch-Data-Size-Bytes | Total size of the raw data content in bytes | 48230 |
| blocks_reorged | array or null | Batch-Blocks-Reorged | Block numbers in the batch delivered as a result of a chain reorganization. `null` in body when empty, `[]` in headers. | `null` or `[19271293, 19271294]` |
| reorgs | array or null | Batch-Reorgs | Detailed reorg info including block number, hash, and timestamp of the displaced block. `null` in body when empty, `[]` in headers. | `null` or `[{"block_number": 19271294, ...}]` |
| dataset | string | Stream-Dataset | Type of dataset | "block" |
| network | string | Stream-Network | Blockchain network | "ethereum-mainnet" |
| start_range | integer | Stream-Start-Range | Starting range of data capture for the stream | 100 |
| end_range | integer | Stream-End-Range | Ending range of data capture for the stream | 200 |
| keep_distance_from_tip | integer | Stream-Keep-Distance-From-Tip | Distance from the chain tip | 0 |
| stream_id | string | Stream-Id | ID of the stream | "f6ad6459-b5ad-4183-b370-1c1388e47e83" |
| stream_name | string | Stream-Name | Name of the stream | "stream test1" |
| stream_region | string | Stream-Region | Region of the stream | "usa_east" |

### Payload Examples

  

**No Reorgs**

**HTTP Headers:**

```text
Stream-Id: f6ad6459-b5ad-4183-b370-1c1388e47e83
Stream-Name: stream test1
Stream-Region: usa_east
Stream-Network: ethereum-mainnet
Stream-Dataset: block
Stream-Start-Range: 100
Stream-End-Range: 200
Stream-Keep-Distance-From-Tip: 0
Batch-Start-Range: 19271200
Batch-End-Range: 19271294
Batch-Data-Size-Bytes: 48230
Batch-Reorgs: []
Batch-Blocks-Reorged: []
```

**Payload Body:**

```json
{
  "data": [
    // Dataset content structure varies by dataset type
    // and maintains the original format from the data source
  ],
  "metadata": {
    "stream_id": "f6ad6459-b5ad-4183-b370-1c1388e47e83",
    "stream_name": "stream test1",
    "stream_region": "usa_east",
    "network": "ethereum-mainnet",
    "dataset": "block",
    "start_range": 100,
    "end_range": 200,
    "keep_distance_from_tip": 0,
    "batch_start_range": 19271200,
    "batch_end_range": 19271294,
    "data_size_bytes": 48230,
    "reorgs": null,
    "blocks_reorged": null
  }
}
```

**With Reorgs**

When a chain reorganization occurs, the affected blocks are re-delivered with updated data. The `reorgs` field contains the block number, hash, and timestamp of the **displaced** (orphaned) block, while `data` contains the new canonical block data.

**HTTP Headers:**

```text
Stream-Id: f6ad6459-b5ad-4183-b370-1c1388e47e83
Stream-Name: stream test1
Stream-Region: usa_east
Stream-Network: ethereum-mainnet
Stream-Dataset: block
Stream-Start-Range: 100
Stream-End-Range: 200
Stream-Keep-Distance-From-Tip: 0
Batch-Start-Range: 19271293
Batch-End-Range: 19271294
Batch-Data-Size-Bytes: 12500
Batch-Reorgs: [{"block_number":19271293,"block_hash":"0x1a2b3c...","block_timestamp":"1700000000"},{"block_number":19271294,"block_hash":"0x4d5e6f...","block_timestamp":"1700000012"}]
Batch-Blocks-Reorged: [19271293,19271294]
```

**Payload Body:**

```json
{
  "data": [
    // Re-delivered blocks with updated canonical data after the reorg
  ],
  "metadata": {
    "stream_id": "f6ad6459-b5ad-4183-b370-1c1388e47e83",
    "stream_name": "stream test1",
    "stream_region": "usa_east",
    "network": "ethereum-mainnet",
    "dataset": "block",
    "start_range": 100,
    "end_range": 200,
    "keep_distance_from_tip": 0,
    "batch_start_range": 19271293,
    "batch_end_range": 19271294,
    "data_size_bytes": 12500,
    "reorgs": [
      {
        "block_number": 19271293,
        "block_hash": "0x1a2b3c4d5e6f7a8b9c0d1e2f3a4b5c6d7e8f9a0b1c2d3e4f5a6b7c8d9e0f1a2b",
        "block_timestamp": "1700000000"
      },
      {
        "block_number": 19271294,
        "block_hash": "0x4d5e6f7a8b9c0d1e2f3a4b5c6d7e8f9a0b1c2d3e4f5a6b7c8d9e0f1a2b3c4d5e",
        "block_timestamp": "1700000012"
      }
    ],
    "blocks_reorged": [19271293, 19271294]
  }
}
```

  

Data Schema Information

Select a blockchain type below to view the relevant data schemas and payload structures specific to that chain type. Each tab contains detailed information about supported dataset types and their JSON specifications.

  

**Ethereum + EVM Chains**

### Dataset Types (EVM)

### Block

The data returned is an `array` of block objects as returned by [eth_getBlockByNumber](https://www.quicknode.com/docs/ethereum/eth_getBlockByNumber). The **Block** schema models the structure of individual blocks on a chain, including fields like `hash`, `number`, `nonce`, and other relevant block data.

Additionally, it supports configuration options for re-org handling and batch sizes, allowing for customized data management and retrieval.

_Note: Please review the chain specific documentation for the RPC method indicated above for more details about that chain's expected payload shape._

****JSON Spec****

```json
{
		"data": [
				{
						"gasUsed": "0xd0d11a",
						"hash": "0xd964c5deacbea3e3df775ad1ed49744882d95dbdd1ae058b813cece959676820",
						"number": "0x125d3e5",
						"parentHash": "0xf31bcd75d2bebfe97a9aabae5c644c8d137552d2be3d8ff9f01278624d911011",
						"timestamp": "0x65d2444f",
						"transactions": [
								{
										"blockHash": "0xd964c5deacbea3e3df775ad1ed49744882d95dbdd1ae058b813cece959676820",
										"blockNumber": "0x125d3e5",
						}],
						...
				}
		],	
		"metadata": {
			"dataset": "block",
			"end_range": -1,
			"network": "ethereum-mainnet",
			"stream_id": "f6ad6459-b5ad-4183-b370-1c1388e47e83",
			...
	}
}
```

### Receipts

The data returned is an `array` of arrays, each containing receipt objects as returned by [eth_getBlockReceipts](https://www.quicknode.com/docs/ethereum/eth_getBlockReceipts). The **Receipts** schema corresponds to transaction receipts, focusing solely on transactions and excluding block details. These receipts serve as proof of transaction execution, detailing outcomes and specifics like gas usage.

_Note: Please review the chain specific documentation for the RPC method indicated above for more details about that chain's expected payload shape._

****JSON Spec****

```json
{
  "data": [
    [
      {
        "blockHash": "0xd010dbc965455076441782aa97a7aa1f526fe9da73b9af6ad319b87e84703475",
        "blockNumber": "0x16263bb",
        "contractAddress": null,
        "cumulativeGasUsed": "0x5208",
        "effectiveGasPrice": "0x2646fc5db",
        "from": "0xab4f2fdca7521012edfee6e916778c6dae719bd3",
        "gasUsed": "0x5208",
        "logs": [],
        "logsBloom": "0x00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000",
        "status": "0x1",
        "to": "0x82268e2cb7ac9ab32e3a99c68e5c13fbde1ae1f8",
        "transactionHash": "0xfd3b28c03c750477a8451aa0fd66dad27ed06065bdcd21b092ebecd14c12649b",
        "transactionIndex": "0x0",
        "type": "0x0"
      },
	  ...
	]
		"metadata": {
			"dataset": "block",
			"end_range": -1,
			"network": "ethereum-mainnet",
			"stream_id": "f6ad6459-b5ad-4183-b370-1c1388e47e83",
			...
	}
  ]
}
```

### Block with Receipts

The data returned is an `array` of objects containing a composite dataset with:

  

-   `block`: as returned by [eth_getBlockByNumber](https://www.quicknode.com/docs/ethereum/eth_getBlockByNumber)
-   `receipts`: array of receipts as returned by [eth_getBlockReceipts](https://www.quicknode.com/docs/ethereum/eth_getBlockReceipts)

The **Block with Receipts** schema represents comprehensive details on individual blocks and their transaction receipts. These receipts contain details such as the transaction status (successful or failed), gas utilized, value transferred, logs generated, and more.

_Note: Please review the chain specific documentation for the RPC method indicated above for more details about that chain's expected payload shape._

****JSON Spec****

```json
{
  "data": [
    {
      "block": {
        "baseFeePerGas": "0xfd069ed",
        "blobGasUsed": "0x120000",
        "parentBeaconBlockRoot": "0x1a623c846de9af135b2bf3902e72dfb4d3922c6af5f2463af72080048c11f4bf",
        "parentHash": "0x590857a38b05fead84006130b330716de40d87d054266d2c2589fb6c4d7ac4b0",
        "size": "0x260c9",
        "stateRoot": "0x56f5424f549df97b940ceceaa17e7f606676bbf4951ba81e0e2cc41dcb59887e",
        "timestamp": "0x68ada7e3",
        "transactions": [
          {
            "blockHash": "0xd010dbc965455076441782aa97a7aa1f526fe9da73b9af6ad319b87e84703475",
            "blockNumber": "0x16263bb",
            "from": "0xab4f2fdca7521012edfee6e916778c6dae719bd3",
            "gas": "0x186a0",
			...
          },
		  ...
		]
	  }
	}
  ]
}
```

### Logs

The data returned is an `array` of arrays of log objects, as they appear within the `logs` array in transaction receipts. The **Logs** data schema corresponds to event logs generated by smart contract transactions, documenting significant events, function calls, or other relevant activities occurring within smart contracts. This data is associated with the [eth_getLogs](https://www.quicknode.com/docs/ethereum/eth_getLogs) JSON-RPC method, providing insights on smart contract interactions per block.

_Note: Please review the chain specific documentation for the RPC method indicated above for more details about that chain's expected payload shape._

****JSON Spec****

```json
{
  "data": [
    [
      [
        {
          "address": "0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2",
          "topics": [
            "0xddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef",
            "0x000000000000000000000000d4bc53434c5e12cb41381a556c3c47e1a86e80e3",
            "0x00000000000000000000000011b815efb8f581194ae79006d24e0d814b7697f6"
          ],
          "data": "0x0000000000000000000000000000000000000000000000144cb0059dd91ec491",
          "blockNumber": "0x16263be",
          "transactionHash": "0x4cda2112bfb02ff07b3a88eced7e5f972ea2827bdcab448ae07d6330d62b30a2",
          "transactionIndex": "0x0",
          "blockHash": "0xb0587a2035660384c0a2f31bc2977f2dc60408618f67be97149d14b5fbc0741b",
          "logIndex": "0x0",
          "removed": false
        },
		...
	  ]
	]
  ]
}
```

### Transactions

The data returned is an `array` of arrays of transaction objects, as they appear in the `transactions` array of block data. The **Transactions** data schema narrows data down to focus on transaction details, similar to each transaction object you would get when using the [eth_getTransactionByHash](https://www.quicknode.com/docs/ethereum/eth_getTransactionByHash) method. It utilizes transaction hashes, returned from a method like [eth_getBlockByNumber](https://www.quicknode.com/docs/ethereum/eth_getBlockByNumber), to loop over each transaction hash and return its transaction object. This makes it easy to look up detailed transaction information.

_Note: Please review the chain specific documentation for the RPC method indicated above for more details about that chain's expected payload shape._

****JSON Spec****

```json
{
  "data": [
    [
      {
        "blockHash": "0xb0587a2035660384c0a2f31bc2977f2dc60408618f67be97149d14b5fbc0741b",
        "blockNumber": "0x16263be",
        "from": "0xd1fa51f2db23a9fa9d7bb8437b89fb2e70c60cb7",
        "gas": "0x62b01",
        "gasPrice": "0x121f68f4",
        "accessList": [
          {
            "address": "0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2",
            "storageKeys": [
              "0x4407b7e3a4d56c18eef645ef52b0e5371965ec86a7c46343194da25177be0647",
              "0x0cb865ff1951c90111975d77bc75fa8312f25b08bb19b908f6b9c43691ac0caf"
            ]
          },
		]
		...
	  }
	]
  ]
}
```

### Traces (debug_traceBlock)

The data returned is an `array` of arrays of trace data as returned by [debug_traceBlock](https://www.quicknode.com/docs/ethereum/debug_traceBlock). The **Traces (debug_trace)** data source provides a granular, step-by-step look at transaction executions, including internal calls and state changes, which is critical for debugging and optimizing smart contracts.

_Note: Please review the chain specific documentation for the RPC method indicated above for more details about that chain's expected payload shape._

****JSON Spec****

```json
{
  "data": [
    [
      {
        "txHash": "0x4cda2112bfb02ff07b3a88eced7e5f972ea2827bdcab448ae07d6330d62b30a2",
        "result": {
          "from": "0xd1fa51f2db23a9fa9d7bb8437b89fb2e70c60cb7",
          "gas": "0x62b01",
          "gasUsed": "0x4514e",
          "to": "0xd4bc53434c5e12cb41381a556c3c47e1a86e80e3",
          "input": "0x2b8e11b815efb8f581194ae79006d24e0d814b7697f6c02aaa39b223fe8d0a0e5c4f27ead9083c756cc2dac17f958d2ee523a2206206994597c13d831ec701f4fd107afd10847b040a9b58b8144cb0ffd8bf95feff06",
          "calls": [
            {
              "from": "0xd4bc53434c5e12cb41381a556c3c47e1a86e80e3",
              "gas": "0x4d23e",
              "gasUsed": "0x30ba3",
              "to": "0x11b815efb8f581194ae79006d24e0d814b7697f6",
              "input": "0x3c8a7d8d000000000000000000000000d4bc53434c5e12cb41381a556c3c47e1a86e80e3fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffd107afffffffffffffffffffffffffffffffffffffffffffffffffffffffffffd10840000000000000000000000000000000000000000000000040a9b58000000000000000000000000000000000000000000000000000000000000000000000000a00000000000000000000000000000000000000000000000000000000000000062000000000000000000000000c02aaa39b223fe8d0a0e5c4f27ead9083c756cc2000000000000000000000000dac17f958d2ee523a2206206994597c13d831ec700000000000000000000000000000000000000000000000000000000000001f41af0",
              "output": "0x0000000000000000000000000000000000000000000000144cb0059dd91ec491000000000000000000000000000000000000000000000000000000bf95fe129e",
              "calls": [
                {
                  "from": "0x11b815efb8f581194ae79006d24e0d814b7697f6",
                  "gas": "0x233a2",
                  "gasUsed": "0x216",
                  "to": "0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2",
                  "input": "0x70a0823100000000000000000000000011b815efb8f581194ae79006d24e0d814b7697f6",
                  "output": "0x000000000000000000000000000000000000000000000080345e162ea2af791c",
                  "type": "STATICCALL"
                },
				...
			  ]
			}
			...
		  ]
		}
	  }
	]
  ]
}
```

### Traces (trace_block)

The data returned is an `array` of arrays of trace data as returned by [trace_block](https://www.quicknode.com/docs/ethereum/trace_block). The **Traces (trace_block)** data source provides a granular, step-by-step look at transaction executions, including internal calls and state changes, which is critical for debugging and optimizing smart contracts. This data source is based off the [trace_block](https://www.quicknode.com/docs/ethereum/trace_block) and [trace_transaction](https://www.quicknode.com/docs/ethereum/trace_transaction) RPC methods and is served by Erigon blockchain node clients.

_Note: Please review the chain specific documentation for the RPC method indicated above for more details about that chain's expected payload shape._

****JSON Spec****

```json
{
  "data": [
    [
      {
        "action": {
          "from": "0xd1fa51f2db23a9fa9d7bb8437b89fb2e70c60cb7",
          "callType": "call",
          "gas": "0x4e7a9",
          "input": "0x2b8e11b815efb8f581194ae79006d24e0d814b7697f6c02aaa39b223fe8d0a0e5c4f27ead9083c756cc2dac17f958d2ee523a2206206994597c13d831ec701f4fd107afd10847b040a9b58b8144cb0ffd8bf95feff06",
          "to": "0xd4bc53434c5e12cb41381a556c3c47e1a86e80e3",
          "value": "0x7"
        },
        "blockHash": "0xb0587a2035660384c0a2f31bc2977f2dc60408618f67be97149d14b5fbc0741b",
        "blockNumber": 23225278,
        "result": {
          "gasUsed": "0x30df6",
          "output": "0x"
        },
        "subtraces": 1,
        "traceAddress": [],
        "transactionHash": "0x4cda2112bfb02ff07b3a88eced7e5f972ea2827bdcab448ae07d6330d62b30a2",
        "transactionPosition": 0,
        "type": "call"
      },
	  ...
	]
  ]
}
```

### Block with Receipts + debug_traces

The data returned is an `array` of objects containing a composite dataset with:

  

-   `block`
-   `receipts`
-   `traces` (from `debug_traceBlock`)

If you want to retrieve an all-in-one data source for backfilling historical blockchain data, a data schema like **Block with Receipts and debug_trace** can retrieve block and transaction receipts, along with step-by-step transaction execution traces and internal transactions. This data source uses the [eth_getBlockByNumber](https://www.quicknode.com/docs/ethereum/eth_getBlockByNumber), [eth_getBlockReceipts](https://www.quicknode.com/docs/ethereum/eth_getBlockReceipts), and [debug_traceBlock](https://www.quicknode.com/docs/ethereum/debug_traceBlock) RPC methods.

_Note: Please review the chain specific documentation for the RPC method indicated above for more details about that chain's expected payload shape._

****JSON Spec****

```json
{
  "data": [
    [
      {
        "action": {
          "from": "0xd1fa51f2db23a9fa9d7bb8437b89fb2e70c60cb7",
          "callType": "call",
          "gas": "0x4e7a9",
          "input": "0x2b8e11b815efb8f581194ae79006d24e0d814b7697f6c02aaa39b223fe8d0a0e5c4f27ead9083c756cc2dac17f958d2ee523a2206206994597c13d831ec701f4fd107afd10847b040a9b58b8144cb0ffd8bf95feff06",
          "to": "0xd4bc53434c5e12cb41381a556c3c47e1a86e80e3",
          "value": "0x7"
        },
        "blockHash": "0xb0587a2035660384c0a2f31bc2977f2dc60408618f67be97149d14b5fbc0741b",
        "blockNumber": 23225278,
        "result": {
          "gasUsed": "0x30df6",
          "output": "0x"
        },
        "subtraces": 1,
        "traceAddress": [],
        "transactionHash": "0x4cda2112bfb02ff07b3a88eced7e5f972ea2827bdcab448ae07d6330d62b30a2",
        "transactionPosition": 0,
        "type": "call"
      },
	  ...
	]
  ]
}
```

### Block with Receipts + trace_block

The data returned is an `array` of objects containing a composite dataset with:

  

-   `block`
-   `receipts`
-   `traces` (from `trace_block`)

> **NOTE**: This data source is an alternative to the **Block with Receipts & debug_trace** schema above. It utilizes the [trace_transaction](https://www.quicknode.com/docs/ethereum/trace_transaction) RPC method from Erigon, instead of using the debug API from Geth.

If you want to backfill historical blockchain data, a data schema like **Block with Receipts and trace_block**, is one solution. This data source uses the [trace_transaction](https://www.quicknode.com/docs/ethereum/trace_transaction) RPC method to retrieve transaction execution traces and internal transactions along with block and transaction receipt information using [eth_getBlockByNumber](https://www.quicknode.com/docs/ethereum/eth_getBlockByNumber), [eth_getBlockReceipts](https://www.quicknode.com/docs/ethereum/eth_getBlockReceipts) RPC methods.

_Note: Please review the chain specific documentation for the RPC method indicated above for more details about that chain's expected payload shape._

****JSON Spec****

```json
{
  "data": [
    {
      "block": {
        "baseFeePerGas": "0x11d38b33",
        "blobGasUsed": "0xa0000",
        "difficulty": "0x0",
        "excessBlobGas": "0x100000",
        "extraData": "0x4275696c6465724e65742028466c617368626f747329",
        "gasLimit": "0x2aea515",
		...
        "transactions": [
          {
            "blockHash": "0xda7dc0d852bf5fb4d512a4cd57d341ac908794851ce0b7f169f9963c851bb385",
            "blockNumber": "0x16263c0",
            "from": "0xae2fc483527b8ef99eb5d9b44875f005ba1fae13",
            "gas": "0x453e74",
            "gasPrice": "0x11d38b33",
            "hash": "0x7d3220bd6b43886a3d30262c5b5e5366a16d0597f417e3010bea0a478a3e12e5",
			...
            "accessList": [
              {
                "address": "0x041db0b7aa2237c33ea836ad12c3ee8d0afd5e4d",
                "storageKeys": [
                  "0x000000000000000000000000000000000000000000000000000000000000000e",
                  "0x000000000000000000000000000000000000000000000000000000000000000f",
				  ...
                ]
              },
              {
                "address": "0x40aabef1aa8f0eec637e0e7d92fbffb2f26a8b7b",
                "storageKeys": [
                  "0x360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc",
                  "0x000000000000000000000000000000000000000000000000000000000000003a",
				   ...
                ]
              },
			  ...
			]
		  }
		...
	  }
	}
  ]
}
```

**Bitcoin**

### Dataset Types (Bitcoin)

### Block

The data returned is an `array` of objects as returned by Blockbook's [bb_getBlock](https://www.quicknode.com/docs/bitcoin/bb_getblock). The **Block** schema models the structure of individual blocks on the Bitcoin blockchain, including fields like `hash`, `height`, transactions, and other relevant block data.

_Note: Please review the chain specific documentation for the RPC method indicated above for more details about that chain's expected payload shape._

****JSON Spec****

```json
{
  "data": [
    {
      "bits": "17022b91",
      "confirmations": 1,
      "difficulty": "129699156960680.9",
      "hash": "00000000000000000000ce900f9b7d7f530b791ac60cfb617808a32bf203a407",
      "height": 911785,
      "merkleRoot": "5dea508e8b4fa157ec0cb422a22a5e65b5843a3f029f79491a3cf312de0ea4aa",
      "nonce": "3591125566",
      "previousBlockHash": "000000000000000000001344943e4e7bd7906f1176edeeed823d2f4b56c2701a",
      "size": 1808508,
      "time": 1756211024,
      "txCount": 3882,
      "txs": [
        {
          "blockHash": "00000000000000000000ce900f9b7d7f530b791ac60cfb617808a32bf203a407",
          "blockHeight": 911785,
          "blockTime": 1756211024,
          "confirmations": 1,
          "fees": "0",
          "txid": "54139d6d7e51b5fed15a0e6963dc6ef7f563af5da4e20264fe905ef900fbc168",
          "value": "313404924",
          "valueIn": "0",
          "vin": [
            {
              "isAddress": false,
              "n": 0,
              "value": "0"
            }
          ],
          "vout": [
            {
              "addresses": [
                "1BM1sAcrfV6d4zPKytzziu4McLQDsFC2Qc"
              ],
              "isAddress": true,
              "n": 0,
              "value": "313404924"
            },
			...
          ]
        },
		...
	  ]
	}
  ]
}
```

**Solana**

### Dataset Types (Solana)

### Block

The data returned is an `array` of block objects as returned by `getBlock`. The **Block** dataset includes data from individual blocks on Solana, such as `blockHeight`, `blockTime`, and detailed transaction information. This schema allows for real-time and historical block monitoring and is suitable for use cases that require in-depth block and transaction analysis.

_Note: Please review the chain specific documentation for the RPC method indicated above for more details about that chain's expected payload shape._

****JSON Spec****

```json
{
  "data": [
    {
      "blockHeight": 340815276,
      "blockTime": 1756212475,
      "blockhash": "9Myyx73E435AbaGc6WN2Z9RSSr2g7uxd3kVN6EoMkLvR",
      "parentSlot": 362636340,
      "previousBlockhash": "5sPr2BdPk3YmchJEhcdAz7BfyXvmF5KJEpmQx6Jsn74w",
      "rewards": [
        {
          "commission": null,
          "lamports": 17442017,
          "postBalance": 143347413535,
          "pubkey": "CwyVpfmfSiMeCexi3JgUNvaiDfYN14cLDjzT99zcBuD2",
          "rewardType": "Fee"
        }
      ],
      "transactions": [
        {
          "meta": {
            "computeUnitsConsumed": 593,
            "costUnits": 1942,
            "logMessages": [
              "Program 9H6tua7jkLhdm3w8BvgpTn5LZNU7g4ZynDmCiNN3q6Rp invoke [1]",
              "Program 9H6tua7jkLhdm3w8BvgpTn5LZNU7g4ZynDmCiNN3q6Rp consumed 143 of 594 compute units",
            ],
            "postBalances": [
              68115860487,
              13018006,
              1,
              1169280,
              1141545
            ],
            "postTokenBalances": [],
            "preBalances": [
              68115868267,
            ],
            "preTokenBalances": [],
            "rewards": [],
            "status": {
              "Ok": null
            }
			...
          },
		}
		...
	  ]
	}
  ]
}
```

### Programs + Logs

The data returned is an `array` of objects containing log messages and transaction metadata relating to program invocations. The **Programs + Logs** dataset captures detailed program invocations, log messages, and associated transaction metadata. This schema supports use cases requiring a deep dive into program interactions and transaction logs on Solana.

_Note: Please review the chain specific documentation for the RPC method indicated above for more details about that chain's expected payload shape._

****JSON Spec****

```json
{
  "data": [
    [
      {
        "signature": "5nbSbCNEZ6tEtRaT1JTdHTFxNC8YBMNNSmYpeN3NPBwD1SKwGM5J7WvA7P59UwAg5NMKJiSKqcDC6AP5zLGnn2o3",
        "slot": 362636341,
        "blockTime": 1756212475,
        "programInvocations": [
          {
            "programId": "9H6tua7jkLhdm3w8BvgpTn5LZNU7g4ZynDmCiNN3q6Rp",
            "instruction": {
              "index": 0,
              "accounts": [
                {
                  "pubkey": "CmmZXMztbTuAyWXJecn96Q5WvcyMYcMK7JcMukJdku8U",
                  "preBalance": 68115868267,
                  "postBalance": 68115860487
                },
				...
              ],
              "data": "41xuHrNVbLomH7zziRZbFNyuKPf2AeFN2dJ8ZEREXsNfGKoebhgaZ5JAdLfLmAQwcAfttXWUT6VgKmGZi9TcPwYMk",
              "tokenBalances": []
            }
          }
        ],
        "logs": [
          "Program 9H6tua7jkLhdm3w8BvgpTn5LZNU7g4ZynDmCiNN3q6Rp invoke [1]",
          "Program 9H6tua7jkLhdm3w8BvgpTn5LZNU7g4ZynDmCiNN3q6Rp consumed 143 of 594 compute units",
		  ...
        ],
        "success": true
      },
	  ...
	]
  ]
}
```

**XRPL**

### Dataset Types (XRPL)

### Ledger

The data returned is an `array` of ledger objects as returned by `ledger`. The **Ledger** schema provides comprehensive data about XRP Ledger blocks, including ledger metadata, transaction details, and account state changes. This dataset is specifically designed for XRP Ledger and includes detailed information about each ledger close, including all transactions, account modifications, and metadata.

_Note: Please review the chain specific documentation for the RPC method indicated above for more details about that chain's expected payload shape._

****JSON Spec****

```json
{
  "data": [
    {
      "ledger_hash": "1E29CCCA497DD6F5AFB61D2CDBCE5FF45FF740A703D8C3AE2F5CC7B60B972B29",
      "ledger_index": 98423211,
      "validated": true,
      "ledger": {
        "account_hash": "C027A15DCC533E6FA8D40EA3BCAC207C0DF0C21F44FD225756C55A9DEB1C34C1",
        "close_flags": 0,
        "close_time": 809528101,
        "close_time_human": "2025-Aug-26 12:55:01.000000000 UTC",
        "close_time_iso": "2025-08-26T12:55:01Z",
        "ledger_hash": "1E29CCCA497DD6F5AFB61D2CDBCE5FF45FF740A703D8C3AE2F5CC7B60B972B29",
        "parent_hash": "9339A21D5012EFABE92B30462535A1BBEAC1E38C2D3FF7AD939C30B8351D7096",
        "total_coins": "99985811617695167",
        "transaction_hash": "19615CD59B57CE0DA9D7A5CE58D6D5E82BB40FA38F51CCFA16740CB5CDA7CF7E",
        "ledger_index": "98423211",
        "closed": true,
        "transactions": [
          {
            "Account": "rfmdBKhtJw2J22rw1JxQcchQTM68qzE4N2",
            "Fee": "15",
            "Flags": 524288,
            "LastLedgerSequence": 98423212,
            "Sequence": 109407893,
            "TransactionType": "OfferCreate",
            "TakerGets": {
              "currency": "ETH",
              "issuer": "rvYAfWj5gh67oV6fW32ZzP3Aw4Eubs59B",
              "value": "8.51"
            },
            "TakerPays": {
              "currency": "524C555344000000000000000000000000000000",
              "issuer": "rMxCKbEDwqr76QuheSUMdEGf4B9xJ8m5De",
              "value": "38038.27032"
            },
            "hash": "008812DF7E51C51A6C257B7527132AAB5558DB6D38FB3652DE4166AA550DBF32",
            "metaData": {
              "AffectedNodes": [
                {
                  "ModifiedNode": {
                    "FinalFields": {
                      "Account": "rfmdBKhtJw2J22rw1JxQcchQTM68qzE4N2",
                      "Balance": "276749216903",
                      "OwnerCount": 51,
                      "Sequence": 109407894
                    },
                    "LedgerEntryType": "AccountRoot",
                    "LedgerIndex": "6BC9286C5146B76D0D140873B509D72581AABEB79037BF1D9849830FBF5A9FE6"
                  }
                }
              ],
              "TransactionIndex": 17,
              "TransactionResult": "tesSUCCESS"
            }
          },
          {
            "Account": "rP4gybHF3astaSuih16DMpL16aFa6DjYkX",
            "Fee": "179",
            "TransactionType": "OfferCreate",
            "TakerGets": "173114023",
            "TakerPays": {
              "currency": "CNY",
              "issuer": "rKiCet8SdvWxPXnAgYarFUXMh1zCPz432Y",
              "value": "3614.584654031998"
            },
            "hash": "010F74D72FC2ADFE267E2BAED507544A2D440880091B3F4900DEE349D5EBC60E",
            "metaData": {
              "TransactionResult": "tesSUCCESS"
            }
          }
        ]
      }
    }
  ]
}
```

**Stellar**

### Dataset Types (Stellar)

### Ledger

The data returned is an `array` of ledger objects from the `ledgers` array as returned by [getLedgers](https://www.quicknode.com/docs/stellar/getLedgers) from the Soroban JSON-RPC API. The **Ledger** schema provides comprehensive data about Stellar network ledgers, including ledger metadata, sequence numbers, close times, and more.

_Note: Please review the chain specific documentation for the RPC method indicated above for more details about that chain's expected payload shape._

****JSON Spec****

```json
{
  "data": [
    {
      "hash": "26baa81f829d03378312890fbcd0323f49480b341f6827b91e1353d02653efdf",
      "sequence": 60643919,
      "ledgerCloseTime": "1767708487",
      "headerXdr": "",
      "headerJson": {
        "hash": "26baa81f829d03378312890fbcd0323f49480b341f6827b91e1353d02653efdf",
        "header": {
          "ledger_version": 24,
          "previous_ledger_hash": "6ffbb8dc7e19113e11d98f2164d855851e79c80ab63b857f2512d3625af055f4",
          "scp_value": {
            "tx_set_hash": "5d64d128b9ca1201f8799fee806986e5d98294f0afef65dec3b024063e366f34",
            "close_time": "1767708487",
            "upgrades": [],
            "ext": {
              "signed": {
                "node_id": "GAAV2GCVFLNN522ORUYFV33E76VPC22E72S75AQ6MBR5V45Z5DWVPWEU",
                "signature": "0466d76095facbf157b86f248bf6506c739c65290d6270207bac1997f3182cab5e7d434cad91c1726095ef10c0cbadc456a35baeb970c1deea8a1a45eb5e200d"
              }
            }
          },
          "tx_set_result_hash": "2acabe80097cbf631b614d2f0b62b841777eddaae0380cbc839615f5e0635958",
          "bucket_list_hash": "8e779574d5f82a4e1b6cdadbb21e1bbd8176543a4ba3ff7e02bde83fc0aa2ac7",
          "ledger_seq": 60643919,
          "total_coins": "1054439020873472865",
          "fee_pool": "90282383974307",
          "inflation_seq": 278,
          "id_pool": "1817559933",
          "base_fee": 100,
          "base_reserve": 5000000,
          "max_tx_set_size": 1000,
          "skip_list": [
            "17776bb45307e1839b94df2ffadf29624ce999e4dbbe482662ed6519bc2a1aac"
          ],
          "ext": "v0"
        },
        "ext": "v0"
      },
      "metadataXdr": "",
      "metadataJson": {
        "v2": {
          "ext": "v0",
          "ledger_header": {
            "hash": "26baa81f829d03378312890fbcd0323f49480b341f6827b91e1353d02653efdf",
            "header": {
              "ledger_version": 24,
              "previous_ledger_hash": "6ffbb8dc7e19113e11d98f2164d855851e79c80ab63b857f2512d3625af055f4",
              "scp_value": {
                "tx_set_hash": "5d64d128b9ca1201f8799fee806986e5d98294f0afef65dec3b024063e366f34",
                "close_time": "1767708487",
                "upgrades": [],
                "ext": {
                  "signed": {
                    "node_id": "GAAV2GCVFLNN522ORUYFV33E76VPC22E72S75AQ6MBR5V45Z5DWVPWEU",
                    "signature": "0466d76095facbf157b86f248bf6506c739c65290d6270207bac1997f3182cab5e7d434cad91c1726095ef10c0cbadc456a35baeb970c1deea8a1a45eb5e200d"
                  }
                }
              },
              "tx_set_result_hash": "2acabe80097cbf631b614d2f0b62b841777eddaae0380cbc839615f5e0635958",
              "bucket_list_hash": "8e779574d5f82a4e1b6cdadbb21e1bbd8176543a4ba3ff7e02bde83fc0aa2ac7",
              "ledger_seq": 60643919,
              "total_coins": "1054439020873472865",
              "fee_pool": "90282383974307",
              "inflation_seq": 278,
              "id_pool": "1817559933",
              "base_fee": 100,
              "base_reserve": 5000000,
              "max_tx_set_size": 1000,
              "skip_list": [
                "17776bb45307e1839b94df2ffadf29624ce999e4dbbe482662ed6519bc2a1aac"
              ],
              "ext": "v0"
            },
            "ext": "v0"
          },
          "tx_set": {
            "v1": {
              "previous_ledger_hash": "6ffbb8dc7e19113e11d98f2164d855851e79c80ab63b857f2512d3625af055f4",
              "phases": [
                {
                  "v0": [
                    {
                      "txset_comp_txs_maybe_discounted_fee": {
                        "base_fee": "100",
                        "txs": [
                          {
                            "tx": {
                              "tx": {
                                "source_account": "GCXUGSQUSALX4VTSTNGAM7ABMKF5O7K67RYL723UMTNAUOAO4XABDUET",
                                "fee": 500000,
                                "seq_num": "203250956395573383",
                                "cond": {
                                  "time": {
                                    "min_time": "0",
                                    "max_time": "1767708514"
                                  }
                                },
                                "memo": "none",
                                "operations": [
                                  {
                                    "source_account": null,
                                    "body": {
                                      "manage_sell_offer": {
                                        "selling": {
                                          "credit_alphanum4": {
                                            "asset_code": "XRP",
                                            "issuer": "GBXRPL45NPHCVMFFAYZVUVFFVKSIZ362ZXFP7I2ETNQ3QKZMFLPRDTD5"
                                          }
                                        },
                                        "buying": "native",
                                        "amount": "0",
                                        "price": {
                                          "n": 716658,
                                          "d": 78125
                                        },
                                        "offer_id": "1817559295"
                                      }
                                    }
                                  }
                                ],
                                "ext": "v0"
                              },
                              "signatures": [
                                {
                                  "hint": "0ee5c011",
                                  "signature": "1b09e2091ff6f7ca878a251d26acb316d938e67edbc79f02818dc54a0e68905c37bddc358db4d0570443e3b059707e84b4fc3ebf0ed88c7df2276405534fa40c"
                                }
                              ]
                            }
                          }
                        ]
                      }
                    }
                  ]
                }
              ]
            }
          }
        }
      }
    }
  ]
}
```

**Hypercore**

### Dataset Types (Hypercore)

### Block

The **Block** dataset is a composite dataset for Hypercore Mainnet that delivers all Hypercore activity types per block in a single payload. Each element in `data` corresponds to one block and includes every supported data type: events, orders, trades, book updates, TWAP events, and writer actions. Arrays are empty when no activity of that type occurred in the block.

Not the same as the Hyperliquid gRPC blocks stream

The Streams `block` dataset is not the equivalent of the Hyperliquid gRPC `blocks` stream or `replica_cmds`. It is a convenience dataset that aggregates all Hypercore Streams datasets into a single per-block delivery, not a low-level replication feed.

****JSON Spec****

```json
{
  "data": [
    {
      "local_time": "2026-05-08T16:57:35.818386641",
      "block_time": "2026-05-08T16:57:35.663766253",
      "block_number": 988879584,
      "events": [],
      "orders": [],
      "trades": [],
      "book_updates": [],
      "twap_events": [],
      "writer_actions": []
    }
  ],
  "metadata": {
    "batch_end_range": 988879584,
    "batch_start_range": 988879584,
    "blocks_reorged": null,
    "data_size_bytes": 1005193,
    "dataset": "block",
    "end_range": 988879584,
    "keep_distance_from_tip": 0,
    "network": "hypercore-mainnet",
    "reorgs": null,
    "start_range": 988879584,
    "stream_id": "067dff07-ca14-48d8-a7cc-a786a8945cbe",
    "stream_name": "test-stream",
    "stream_region": "usa_east"
  }
}
```

### Events

The data returned is an `array` of objects containing event data from Hypercore Mainnet. The **Events** dataset captures detailed event information including ledger updates, user activities, and other on-chain events. Each event includes metadata such as block number, block time, event hash, and inner event data.

****JSON Spec****

```json
{
  "data": [
    {
      "block_number": 863437379,
      "block_time": "2026-01-16T16:16:11.494479201",
      "events": [
        {
          "time": "2025-11-05T16:09:18.466557521",
          "hash": "0x4a3367a1c546233d4bad042ee5d5ba020b2a00876049420fedfc12f48449fd27",
          "inner": {
            "LedgerUpdate": {
              "users": [
                "0x025a744111554e57c66ba2069a8081249fbe5e11",
                "0x1e37a337ed460039d1b15bd3bc489de789768d5e"
              ],
              "delta": {
                "type": "vaultWithdraw",
                "vault": "0x1e37a337ed460039d1b15bd3bc489de789768d5e",
                "user": "0x025a744111554e57c66ba2069a8081249fbe5e11",
                "requestedUsd": "7.203866",
                "commission": "0.0",
                "closingCost": "0.0",
                "basis": "7.22722",
                "netWithdrawnUsd": "7.203866"
              }
            }
          }
        }
      ],
      "local_time": "2026-01-16T16:16:11.774409420"
    }
  ]
}
```

### Orders

The data returned is an `array` of objects containing order data from Hypercore Mainnet. The **Orders** dataset captures detailed order information including order status, order details, user information, and transaction metadata. This dataset is useful for tracking trading activity, order placements, and order state changes on Hypercore.

****JSON Spec****

```json
{
  "data": [
    {
      "block_number": 863437379,
      "block_time": "2026-01-16T16:16:11.494479201",
      "events": [
        {
          "time": "2025-12-04T17:00:00.268701903",
          "user": "0xeb6eda4756f831824cd28e568ef8adcff35016e3",
          "hash": "0x81598918a9303dff82d30430bf015102068e00fe44335cd12522346b683417ea",
          "builder": null,
          "status": "open",
          "order": {
            "coin": "ZEC",
            "side": "B",
            "limitPx": "356.42",
            "sz": "1.1",
            "oid": 258166303284,
            "timestamp": 1764867600268,
            "triggerCondition": "N/A",
            "isTrigger": false,
            "triggerPx": "0.0",
            "children": [],
            "isPositionTpsl": false,
            "reduceOnly": false,
            "orderType": "Limit",
            "origSz": "1.1",
            "tif": "Gtc",
            "cloid": "0x89119db7aae18b90abe620888af9aadc"
          }
        }
      ],
      "local_time": "2026-01-16T16:16:11.774409420"
    }
  ]
}
```

### Trades

The data returned is an `array` of objects containing executed trade data (also known as fills) from the Hyperliquid exchange. The **Trades** dataset captures detailed information about completed trades including price, size, side, fees, and position changes. This dataset is essential for tracking trading activity, analyzing market movements, and monitoring executed orders on Hypercore.

****JSON Spec****

```json
{
  "data": [
    {
      "block_number": 863437379,
      "block_time": "2026-01-16T16:16:11.494479201",
      "events": [
        [
          "0x<user_address>",
          {
            "coin": "BTC",
            "px": "92385.0",
            "sz": "0.00361",
            "side": "B",
            "time": 1764867600518,
            "startPosition": "0.0",
            "dir": "Open Long",
            "closedPnl": "0.0",
            "hash": "0x<transaction_hash>",
            "oid": 258166309475,
            "crossed": true,
            "fee": "0.190767",
            "tid": 1081368440085115,
            "feeToken": "USDC",
            "cloid": "0x<client_order_id>",
            "builder": "0x<builder_address>",
            "builderFee": "0.046691",
            "twapId": 1430535
          }
        ]
      ],
      "local_time": "2026-01-16T16:16:11.774409420"
    }
  ]
}
```

### Book Updates

The data returned is an `array` of objects containing Level 2 order book updates (also known as book_diffs) from the Hyperliquid exchange. The **Book Updates** dataset tracks every order placement, modification, and cancellation, showing incremental changes to the order book. This dataset is useful for building real-time order book visualizations, analyzing market depth, and monitoring liquidity changes.

****JSON Spec****

```json
{
  "data": [
    {
      "block_number": 863437379,
      "block_time": "2026-01-16T16:16:11.494479201",
      "events": [
        {
          "user": "0x1c1c270b573d55b68b3d14722b5d5d401511bed0",
          "oid": 258166296856,
          "coin": "ETH",
          "side": "B",
          "px": "3167.4",
          "raw_book_diff": {
            "new": {
              "sz": "1.5785"
            }
          }
        }
      ],
      "local_time": "2026-01-16T16:16:11.774409420"
    }
  ]
}
```

### TWAP

The data returned is an `array` of objects containing Time-Weighted Average Price (TWAP) order status updates from the Hyperliquid exchange. The **TWAP** dataset tracks algorithmic orders that execute gradually over a specified time period to minimize market impact. This dataset includes TWAP order state changes, execution progress, and status updates, making it useful for monitoring algorithmic trading strategies and order execution analytics.

****JSON Spec****

```json
{
  "data": [
    {
      "block_number": 863437379,
      "block_time": "2026-01-16T16:16:11.494479201",
      "events": [
        {
          "time": "2025-12-04T17:00:22.417074898",
          "twap_id": 1430699,
          "state": {
            "coin": "HYPE",
            "user": "0x9d6a5ab97a8eed617bde9968d9ab6fcf72fde1b8",
            "side": "A",
            "sz": "108.36",
            "executedSz": "0.0",
            "executedNtl": "0.0",
            "minutes": 10,
            "reduceOnly": false,
            "randomize": false,
            "timestamp": 1764867622417
          },
          "status": "activated"
        }
      ],
      "local_time": "2026-01-16T16:16:11.774409420"
    }
  ]
}
```

### Writer Actions

The data returned is an `array` of objects containing system operations for spot token transfers. The **Writer Actions** dataset tracks automated asset movements and system-level transfers within Hyperliquid's ecosystem. This dataset captures system operations including spot token transfers, making it useful for monitoring automated processes and system-level asset movements.

****JSON Spec****

```json
{
  "data": [
    {
      "block_number": 863437379,
      "block_time": "2026-01-16T16:16:11.494479201",
      "events": [
        [
          "0x200000000000000000000000000000000000012b",
          {
            "user": "0x200000000000000000000000000000000000012b",
            "nonce": 33554479,
            "evm_tx_hash": "0x80b1b5b2f1fd3e7c68d7b2e6e0f5c0a7d4c3b2a1",
            "action": {
              "type": "SystemSpotSendAction",
              "destination": "0x200000000000000000000000000000000000012b",
              "token": 299,
              "wei": "200000000000"
            }
          }
        ]
      ],
      "local_time": "2026-01-16T16:16:11.774409420"
    }
  ]
}
```

## Supported Chains

| Chain | Block | Block with Receipts | Transactions | Logs | Receipts | Traces (trace_block) | Traces (debug_trace) | Block with Receipts + debug_trace | Block with Receipts + trace_block |
| --- | --- | --- | --- | --- | --- | --- | --- | --- | --- |
| 0g | ✅ | ✅ | ✅ | ✅ | ✅ | ❌ | ✅ | ✅ | ❌ |
| Abstract | ✅ | ✅ | ✅ | ✅ | ✅ | ❌ | ✅ | ✅ | ❌ |
| Arbitrum | ✅ | ✅ | ✅ | ✅ | ✅ | ❌ | ✅ | ✅ | ❌ |
| Arbitrum Nova | ✅ | ✅ | ✅ | ✅ | ✅ | ❌ | ✅ | ✅ | ❌ |
| Arc | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ |
| Ault | ✅ | ✅ | ✅ | ✅ | ✅ | ❌ | ✅ | ✅ | ❌ |
| Avalanche C-Chain | ✅ | ✅ | ✅ | ✅ | ✅ | ❌ | ✅ | ✅ | ❌ |
| B3 | ✅ | ✅ | ✅ | ✅ | ✅ | ❌ | ✅ | ✅ | ❌ |
| Base | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ |
| Bera | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ |
| Bitcoin | ✅ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ |
| Bitcoin Cash | ✅ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ |
| Blast | ✅ | ✅ | ✅ | ✅ | ✅ | ❌ | ✅ | ✅ | ❌ |
| BNB Smart Chain | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ |
| Celo | ✅ | ✅ | ✅ | ✅ | ✅ | ❌ | ✅ | ✅ | ❌ |
| Cyber | ✅ | ✅ | ✅ | ✅ | ✅ | ❌ | ✅ | ✅ | ❌ |
| Dogecoin | ✅ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ |
| Ethereum | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ |
| Fantom | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ |
| Flare | ✅ | ✅ | ✅ | ✅ | ✅ | ❌ | ✅ | ✅ | ❌ |
| Flow | ✅ | ✅ | ✅ | ✅ | ✅ | ❌ | ✅ | ✅ | ❌ |
| Fluent | ✅ | ✅ | ✅ | ✅ | ✅ | ❌ | ✅ | ✅ | ❌ |
| Fraxtal | ✅ | ✅ | ✅ | ✅ | ✅ | ❌ | ✅ | ✅ | ❌ |
| Gnosis | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ |
| Gravity | ✅ | ✅ | ✅ | ✅ | ✅ | ❌ | ✅ | ✅ | ❌ |
| Hedera | ✅ | ✅ | ✅ | ✅ | ✅ | ❌ | ✅ | ✅ | ❌ |
| Hemi | ✅ | ✅ | ✅ | ✅ | ✅ | ❌ | ✅ | ✅ | ❌ |
| Hyperliquid Hypercore | ✅ (Composite) | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ |
| Hyperliquid EVM | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ |
| Immutable zkEVM | ✅ | ✅ | ✅ | ✅ | ✅ | ❌ | ✅ | ✅ | ❌ |
| Injective | ✅ | ✅ | ✅ | ✅ | ✅ | ❌ | ✅ | ✅ | ❌ |
| Ink | ✅ | ✅ | ✅ | ✅ | ✅ | ❌ | ✅ | ✅ | ❌ |
| Japan Open Chain | ✅ | ✅ | ✅ | ✅ | ✅ | ❌ | ✅ | ✅ | ❌ |
| Kaia | ✅ | ✅ | ✅ | ✅ | ✅ | ❌ | ✅ | ✅ | ❌ |
| Katana | ✅ | ✅ | ✅ | ✅ | ✅ | ❌ | ✅ | ✅ | ❌ |
| Lens | ✅ | ✅ | ✅ | ✅ | ✅ | ❌ | ✅ | ✅ | ❌ |
| Linea | ✅ | ✅ | ✅ | ✅ | ✅ | ❌ | ✅ | ✅ | ❌ |
| Lisk | ✅ | ✅ | ✅ | ✅ | ✅ | ❌ | ✅ | ✅ | ❌ |
| Litecoin | ✅ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ |
| Mantle | ✅ | ✅ | ✅ | ✅ | ✅ | ❌ | ✅ | ✅ | ❌ |
| MegaETH | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ |
| Moca | ✅ | ✅ | ✅ | ✅ | ✅ | ❌ | ❌ | ❌ | ❌ |
| Mode | ✅ | ✅ | ✅ | ✅ | ✅ | ❌ | ✅ | ✅ | ❌ |
| Monad | ✅ | ✅ | ✅ | ✅ | ✅ | ❌ | ✅ | ✅ | ❌ |
| Morph | ✅ | ✅ | ✅ | ✅ | ✅ | ❌ | ✅ | ✅ | ❌ |
| Optimism | ✅ | ✅ | ✅ | ✅ | ✅ | ❌ | ✅ | ✅ | ❌ |
| Peaq | ✅ | ✅ | ✅ | ✅ | ✅ | ❌ | ❌ | ❌ | ❌ |
| Plasma | ✅ | ✅ | ✅ | ✅ | ✅ | ❌ | ✅ | ✅ | ❌ |
| Polygon | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ |
| Polygon zkEVM | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ |
| Robinhood | ✅ | ✅ | ✅ | ✅ | ✅ | ❌ | ✅ | ✅ | ❌ |
| Sahara | ✅ | ✅ | ✅ | ✅ | ✅ | ❌ | ✅ | ✅ | ❌ |
| Scroll | ✅ | ✅ | ✅ | ✅ | ✅ | ❌ | ✅ | ✅ | ❌ |
| Sei | ✅ | ✅ | ✅ | ✅ | ✅ | ❌ | ✅ | ✅ | ❌ |
| Solana | ✅ | ❌ | ❌ | ✅ (with Programs) | ❌ | ❌ | ❌ | ❌ | ❌ |
| Soneium | ✅ | ✅ | ✅ | ✅ | ✅ | ❌ | ✅ | ✅ | ❌ |
| Sonic | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ |
| Sophon | ✅ | ✅ | ✅ | ✅ | ✅ | ❌ | ✅ | ✅ | ❌ |
| Stellar | ✅ (Ledger) | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ |
| Story | ✅ | ✅ | ✅ | ✅ | ✅ | ❌ | ✅ | ✅ | ❌ |
| Tempo | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ |
| Tron | ✅ | ✅ | ✅ | ✅ | ✅ | ❌ | ❌ | ❌ | ❌ |
| Unichain | ✅ | ✅ | ✅ | ✅ | ✅ | ❌ | ✅ | ✅ | ❌ |
| Vana | ✅ | ✅ | ✅ | ✅ | ✅ | ❌ | ✅ | ✅ | ❌ |
| Worldchain | ✅ | ✅ | ✅ | ✅ | ✅ | ❌ | ✅ | ✅ | ❌ |
| X Layer | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ |
| Xai | ✅ | ✅ | ✅ | ✅ | ✅ | ❌ | ✅ | ✅ | ❌ |
| XRP Ledger | ✅ (Ledger) | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ |
| XRPL EVM | ✅ | ✅ | ✅ | ✅ | ✅ | ❌ | ❌ | ❌ | ❌ |
| zkSync | ✅ | ✅ | ✅ | ✅ | ✅ | ❌ | ✅ | ✅ | ❌ |
| Zora | ✅ | ✅ | ✅ | ✅ | ✅ | ❌ | ❌ | ❌ | ❌ |

  

## We ❤️ Feedback!

If you have any feedback or questions about this documentation, [let us know](https://airtable.com/shrfIppvMmbdWxHgC). We'd love to hear from you!