Skip to main content

eth_capabilities

Returns information about the data available on this node, including the current head block and retention policies for each resource type. This is useful for RPC routers to determine which historical queries a node can serve.

Returns effective capabilities for routing decisions.

Parameters (by position)

This method does not accept any parameters.

Result

Capabilities object

Describes the data available on the node. Each resource reports the oldest available block and the deletion strategy, allowing RPC routers to determine which historical queries a node can serve.


Show Capabilities object

Capabilities fields

  • blocks object required

    Block headers and bodies including transactions and uncles. Determines the available range for block retrieval. Affects: eth_getBlockByHash, eth_getBlockByNumber, eth_getBlockTransactionCountByHash, eth_getBlockTransactionCountByNumber, eth_getUncleCountByBlockHash, eth_getUncleCountByBlockNumber.


    Show blocks object

    blocks fields

    Block headers and bodies including transactions and uncles. Determines the available range for block retrieval. Affects: eth_getBlockByHash, eth_getBlockByNumber, eth_getBlockTransactionCountByHash, eth_getBlockTransactionCountByNumber, eth_getUncleCountByBlockHash, eth_getUncleCountByBlockNumber.

    • deleteStrategy object


      Show Option 1 Sliding window deletion object

      Sliding window deletion fields

      deleteStrategy object

      Sliding window deletion


      Show deleteStrategy object

      deleteStrategy fields

      • retentionBlocks string required

        hex encoded unsigned integer

        Match pattern: ^0x(0|[1-9a-f][0-9a-f]*)$


      • type string required

        Allowed values: window


      • additionalProperties false


    • disabled boolean required


    • oldestBlock string

      hex encoded unsigned integer

      Match pattern: ^0x(0|[1-9a-f][0-9a-f]*)$


    • additionalProperties false


  • head object required

    The latest block known to the node, useful for determining sync status.


    Show head object

    head fields

    The latest block known to the node, useful for determining sync status.

    • hash string required

      Head block hash

      Match pattern: ^0x[0-9a-f]{64}$


    • number string required

      Head block number

      Match pattern: ^0x(0|[1-9a-f][0-9a-f]*)$


    • additionalProperties false


  • logs object required

    Event logs emitted by smart contracts. Determines the available block range for log queries and filters. Affects: eth_getLogs, eth_getFilterLogs, eth_getFilterChanges, eth_newFilter.


    Show logs object

    logs fields

    Event logs emitted by smart contracts. Determines the available block range for log queries and filters. Affects: eth_getLogs, eth_getFilterLogs, eth_getFilterChanges, eth_newFilter.

    • deleteStrategy object


      Show Option 1 Sliding window deletion object

      Sliding window deletion fields

      deleteStrategy object

      Sliding window deletion


      Show deleteStrategy object

      deleteStrategy fields

      • retentionBlocks string required

        hex encoded unsigned integer

        Match pattern: ^0x(0|[1-9a-f][0-9a-f]*)$


      • type string required

        Allowed values: window


      • additionalProperties false


    • disabled boolean required


    • oldestBlock string

      hex encoded unsigned integer

      Match pattern: ^0x(0|[1-9a-f][0-9a-f]*)$


    • additionalProperties false


  • receipts object required

    Transaction execution receipts including status, gas used, and logs bloom. Determines the available range for receipt lookups. Affects: eth_getTransactionReceipt, eth_getBlockReceipts.


    Show receipts object

    receipts fields

    Transaction execution receipts including status, gas used, and logs bloom. Determines the available range for receipt lookups. Affects: eth_getTransactionReceipt, eth_getBlockReceipts.

    • deleteStrategy object


      Show Option 1 Sliding window deletion object

      Sliding window deletion fields

      deleteStrategy object

      Sliding window deletion


      Show deleteStrategy object

      deleteStrategy fields

      • retentionBlocks string required

        hex encoded unsigned integer

        Match pattern: ^0x(0|[1-9a-f][0-9a-f]*)$


      • type string required

        Allowed values: window


      • additionalProperties false


    • disabled boolean required


    • oldestBlock string

      hex encoded unsigned integer

      Match pattern: ^0x(0|[1-9a-f][0-9a-f]*)$


    • additionalProperties false


  • state object required

    Account and contract state including balances, nonces, code, and storage. Determines the available range for historical state queries. Affects: eth_getBalance, eth_getCode, eth_getStorageAt, eth_getTransactionCount, eth_call, eth_estimateGas, eth_createAccessList.


    Show state object

    state fields

    Account and contract state including balances, nonces, code, and storage. Determines the available range for historical state queries. Affects: eth_getBalance, eth_getCode, eth_getStorageAt, eth_getTransactionCount, eth_call, eth_estimateGas, eth_createAccessList.

    • deleteStrategy object


      Show Option 1 Sliding window deletion object

      Sliding window deletion fields

      deleteStrategy object

      Sliding window deletion


      Show deleteStrategy object

      deleteStrategy fields

      • retentionBlocks string required

        hex encoded unsigned integer

        Match pattern: ^0x(0|[1-9a-f][0-9a-f]*)$


      • type string required

        Allowed values: window


      • additionalProperties false


    • disabled boolean required


    • oldestBlock string

      hex encoded unsigned integer

      Match pattern: ^0x(0|[1-9a-f][0-9a-f]*)$


    • additionalProperties false


  • stateproofs object required

    Merkle proofs for account and storage state. Determines the available range for proof generation. Affects: eth_getProof.


    Show stateproofs object

    stateproofs fields

    Merkle proofs for account and storage state. Determines the available range for proof generation. Affects: eth_getProof.

    • deleteStrategy object


      Show Option 1 Sliding window deletion object

      Sliding window deletion fields

      deleteStrategy object

      Sliding window deletion


      Show deleteStrategy object

      deleteStrategy fields

      • retentionBlocks string required

        hex encoded unsigned integer

        Match pattern: ^0x(0|[1-9a-f][0-9a-f]*)$


      • type string required

        Allowed values: window


      • additionalProperties false


    • disabled boolean required


    • oldestBlock string

      hex encoded unsigned integer

      Match pattern: ^0x(0|[1-9a-f][0-9a-f]*)$


    • additionalProperties false


  • tx object required

    Transaction data and lookup indices. Determines the available range for transaction lookups by hash or block position. Affects: eth_getTransactionByHash, eth_getTransactionByBlockHashAndIndex, eth_getTransactionByBlockNumberAndIndex.


    Show tx object

    tx fields

    Transaction data and lookup indices. Determines the available range for transaction lookups by hash or block position. Affects: eth_getTransactionByHash, eth_getTransactionByBlockHashAndIndex, eth_getTransactionByBlockNumberAndIndex.

    • deleteStrategy object


      Show Option 1 Sliding window deletion object

      Sliding window deletion fields

      deleteStrategy object

      Sliding window deletion


      Show deleteStrategy object

      deleteStrategy fields

      • retentionBlocks string required

        hex encoded unsigned integer

        Match pattern: ^0x(0|[1-9a-f][0-9a-f]*)$


      • type string required

        Allowed values: window


      • additionalProperties false


    • disabled boolean required


    • oldestBlock string

      hex encoded unsigned integer

      Match pattern: ^0x(0|[1-9a-f][0-9a-f]*)$


    • additionalProperties false


  • additionalProperties false


Examples

eth_capabilities example

Request

{
"params": []
}

Response

{
"blocks": {
"disabled": false,
"oldestBlock": "0x0"
},
"head": {
"hash": "0xd4e56740f876aef8c010b86a40d5f56745a118d0906a34e69aec8c0db1cb8fa3",
"number": "0x13f8e3a"
},
"logs": {
"deleteStrategy": {
"retentionBlocks": "0x23dbb0",
"type": "window"
},
"disabled": false,
"oldestBlock": "0x11b340a"
},
"receipts": {
"deleteStrategy": {
"retentionBlocks": "0x23dbb0",
"type": "window"
},
"disabled": false,
"oldestBlock": "0x11b340a"
},
"state": {
"deleteStrategy": {
"retentionBlocks": "0x15f90",
"type": "window"
},
"disabled": false,
"oldestBlock": "0x13e022a"
},
"stateproofs": {
"deleteStrategy": {
"retentionBlocks": "0x15f90",
"type": "window"
},
"disabled": false,
"oldestBlock": "0x13e022a"
},
"tx": {
"deleteStrategy": {
"retentionBlocks": "0x23dbb0",
"type": "window"
},
"disabled": false,
"oldestBlock": "0x11b340a"
}
}