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

# Block fields

> Every field of the blocks row type: request name, output column, Arrow type, JSON form and nullability.

One row per block header, ordered by `number`. See [Blocks](https://docs.bloklake.com/querying/blocks.md) for when block rows are returned.

Select fields under `fields.block` by the name shown in bold; each comes back under its **column** name, with the Arrow type shown next to the name.

## Fields

**number** `UInt64`

Block number.

Column `number` · JSON number · never null

**hash** `FixedSizeBinary(32)`

Block hash.

Column `hash` · JSON hex string · never null

**parentHash** `FixedSizeBinary(32)`

Hash of the parent block.

Column `parent_hash` · JSON hex string · never null

**timestamp** `UInt64`

Block timestamp, Unix seconds.

Column `timestamp` · JSON number · never null

**size** `UInt64`

Block size in bytes.

Column `size` · JSON number · never null

**gasUsed** `UInt64`

Total gas used by the block's transactions.

Column `gas_used` · JSON number · never null

**gasLimit** `UInt64`

Block gas limit.

Column `gas_limit` · JSON number · never null

**baseFeePerGas** `FixedSizeBinary(16)`

EIP-1559 base fee; null before London.

Column `base_fee_per_gas` · JSON decimal string · can be null

**stateRoot** `FixedSizeBinary(32)`

State trie root.

Column `state_root` · JSON hex string · never null

**transactionsRoot** `FixedSizeBinary(32)`

Transactions trie root.

Column `transactions_root` · JSON hex string · never null

**receiptsRoot** `FixedSizeBinary(32)`

Receipts trie root.

Column `receipts_root` · JSON hex string · never null

**logsBloom** `FixedSizeBinary(256)`

Bloom filter of the block's logs, 256 bytes.

Column `logs_bloom` · JSON hex string · never null

**difficulty** `FixedSizeBinary(16)`

Proof-of-work difficulty; 0 after the Merge.

Column `difficulty` · JSON decimal string · can be null

**totalDifficulty** `FixedSizeBinary(16)`

Cumulative difficulty. No client sends it any more, so it is unavailable on every chain served.

Column `total_difficulty` · JSON decimal string · can be null

**miner** `FixedSizeBinary(20)`

Fee recipient (coinbase).

Column `miner` · JSON hex string · never null

**nonce** `FixedSizeBinary(8)`

Proof-of-work nonce, 8 bytes.

Column `nonce` · JSON hex string · can be null

**sha3Uncles** `FixedSizeBinary(32)`

Hash of the uncles list.

Column `sha3_uncles` · JSON hex string · never null

**uncles** `List\<FixedSizeBinary(32)\>`

Uncle block hashes.

Column `uncles` · JSON array · never null

**mixHash** `FixedSizeBinary(32)`

Mix hash (`prevRandao` after the Merge).

Column `mix_hash` · JSON hex string · can be null

**extraData** `Binary`

Extra data set by the block producer.

Column `extra_data` · JSON hex string · never null

**withdrawalsRoot** `FixedSizeBinary(32)`

Withdrawals trie root (Shanghai+).

Column `withdrawals_root` · JSON hex string · can be null

**withdrawals** `List\<Struct\<index: UInt64, validator_index: UInt64, address: FixedSizeBinary(20), amount: UInt64\>\>`

Validator withdrawals (Shanghai+): `{index, validator_index, address, amount}` entries, `amount` in gwei.

Column `withdrawals` · JSON array · can be null

**blobGasUsed** `UInt64`

Blob gas used by the block (Cancun+).

Column `blob_gas_used` · JSON number · can be null

**excessBlobGas** `UInt64`

Excess blob gas (Cancun+).

Column `excess_blob_gas` · JSON number · can be null

**parentBeaconBlockRoot** `FixedSizeBinary(32)`

Parent beacon block root (Cancun+).

Column `parent_beacon_block_root` · JSON hex string · can be null

**requestsHash** `FixedSizeBinary(32)`

EIP-7685 requests hash (Prague+).

Column `requests_hash` · JSON hex string · can be null

## Arbitrum fields

Filled on Arbitrum chains only; `null` (and listed in `unavailable_fields`) elsewhere. Served chains: Robinhood Chain.

**l1BlockNumber** `UInt64`

Arbitrum: the L1 block number.

Column `l1_block_number` · JSON number · can be null

**sendCount** `UInt64`

Arbitrum: number of L2-to-L1 messages so far.

Column `send_count` · JSON number · can be null

**sendRoot** `FixedSizeBinary(32)`

Arbitrum: root of the L2-to-L1 message accumulator.

Column `send_root` · JSON hex string · can be null

## Availability per chain

Which of these a chain fills is on its [chain page](https://docs.bloklake.com/chains/overview.md) and in [`GET /v1/schema`](https://docs.bloklake.com/api-reference/schema).


This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.