Azxa
← Gnosis Chain overview

Gnosis Chain · eth

eth_capabilities

Returns effective capabilities for routing decisions.

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.

Result

Capabilities

Schema
{
  "type": "object",
  "title": "Effective routing capabilities",
  "description": "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.",
  "properties": {
    "blocks": {
      "type": "object",
      "title": "Effective resource capability",
      "description": "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.",
      "properties": {
        "deleteStrategy": {
          "title": "Delete strategy",
          "oneOf": [
            {
              "type": "object",
              "title": "Sliding window deletion",
              "properties": {
                "retentionBlocks": {
                  "type": "string",
                  "title": "hex encoded unsigned integer",
                  "pattern": "^0x(0|[1-9a-f][0-9a-f]*)$"
                },
                "type": {
                  "type": "string",
                  "enum": [
                    "window"
                  ]
                }
              },
              "required": [
                "type",
                "retentionBlocks"
              ]
            }
          ]
        },
        "disabled": {
          "type": "boolean"
        },
        "oldestBlock": {
          "type": "string",
          "title": "hex encoded unsigned integer",
          "pattern": "^0x(0|[1-9a-f][0-9a-f]*)$"
        }
      },
      "required": [
        "disabled"
      ]
    },
    "head": {
      "type": "object",
      "title": "Current head block",
      "description": "The latest block known to the node, useful for determining sync status.",
      "properties": {
        "hash": {
          "type": "string",
          "title": "Head block hash",
          "pattern": "^0x[0-9a-f]{64}$"
        },
        "number": {
          "type": "string",
          "title": "Head block number",
          "pattern": "^0x(0|[1-9a-f][0-9a-f]*)$"
        }
      },
      "required": [
        "number",
        "hash"
      ]
    },
    "logs": {
      "type": "object",
      "title": "Effective resource capability",
      "description": "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.",
      "properties": {
        "deleteStrategy": {
          "title": "Delete strategy",
          "oneOf": [
            {
              "type": "object",
              "title": "Sliding window deletion",
              "properties": {
                "retentionBlocks": {
                  "type": "string",
                  "title": "hex encoded unsigned integer",
                  "pattern": "^0x(0|[1-9a-f][0-9a-f]*)$"
                },
                "type": {
                  "type": "string",
                  "enum": [
                    "window"
                  ]
                }
              },
              "required": [
                "type",
                "retentionBlocks"
              ]
            }
          ]
        },
        "disabled": {
          "type": "boolean"
        },
        "oldestBlock": {
          "type": "string",
          "title": "hex encoded unsigned integer",
          "pattern": "^0x(0|[1-9a-f][0-9a-f]*)$"
        }
      },
      "required": [
        "disabled"
      ]
    },
    "receipts": {
      "type": "object",
      "title": "Effective resource capability",
      "description": "Transaction execution receipts including status, gas used, and logs bloom. Determines the available range for receipt lookups. Affects: eth_getTransactionReceipt, eth_getBlockReceipts.",
      "properties": {
        "deleteStrategy": {
          "title": "Delete strategy",
          "oneOf": [
            {
              "type": "object",
              "title": "Sliding window deletion",
              "properties": {
                "retentionBlocks": {
                  "type": "string",
                  "title": "hex encoded unsigned integer",
                  "pattern": "^0x(0|[1-9a-f][0-9a-f]*)$"
                },
                "type": {
                  "type": "string",
                  "enum": [
                    "window"
                  ]
                }
              },
              "required": [
                "type",
                "retentionBlocks"
              ]
            }
          ]
        },
        "disabled": {
          "type": "boolean"
        },
        "oldestBlock": {
          "type": "string",
          "title": "hex encoded unsigned integer",
          "pattern": "^0x(0|[1-9a-f][0-9a-f]*)$"
        }
      },
      "required": [
        "disabled"
      ]
    },
    "state": {
      "type": "object",
      "title": "Effective resource capability",
      "description": "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.",
      "properties": {
        "deleteStrategy": {
          "title": "Delete strategy",
          "oneOf": [
            {
              "type": "object",
              "title": "Sliding window deletion",
              "properties": {
                "retentionBlocks": {
                  "type": "string",
                  "title": "hex encoded unsigned integer",
                  "pattern": "^0x(0|[1-9a-f][0-9a-f]*)$"
                },
                "type": {
                  "type": "string",
                  "enum": [
                    "window"
                  ]
                }
              },
              "required": [
                "type",
                "retentionBlocks"
              ]
            }
          ]
        },
        "disabled": {
          "type": "boolean"
        },
        "oldestBlock": {
          "type": "string",
          "title": "hex encoded unsigned integer",
          "pattern": "^0x(0|[1-9a-f][0-9a-f]*)$"
        }
      },
      "required": [
        "disabled"
      ]
    },
    "stateproofs": {
      "type": "object",
      "title": "Effective resource capability",
      "description": "Merkle proofs for account and storage state. Determines the available range for proof generation. Affects: eth_getProof.",
      "properties": {
        "deleteStrategy": {
          "title": "Delete strategy",
          "oneOf": [
            {
              "type": "object",
              "title": "Sliding window deletion",
              "properties": {
                "retentionBlocks": {
                  "type": "string",
                  "title": "hex encoded unsigned integer",
                  "pattern": "^0x(0|[1-9a-f][0-9a-f]*)$"
                },
                "type": {
                  "type": "string",
                  "enum": [
                    "window"
                  ]
                }
              },
              "required": [
                "type",
                "retentionBlocks"
              ]
            }
          ]
        },
        "disabled": {
          "type": "boolean"
        },
        "oldestBlock": {
          "type": "string",
          "title": "hex encoded unsigned integer",
          "pattern": "^0x(0|[1-9a-f][0-9a-f]*)$"
        }
      },
      "required": [
        "disabled"
      ]
    },
    "tx": {
      "type": "object",
      "title": "Effective resource capability",
      "description": "Transaction data and lookup indices. Determines the available range for transaction lookups by hash or block position. Affects: eth_getTransactionByHash, eth_getTransactionByBlockHashAndIndex, eth_getTransactionByBlockNumberAndIndex.",
      "properties": {
        "deleteStrategy": {
          "title": "Delete strategy",
          "oneOf": [
            {
              "type": "object",
              "title": "Sliding window deletion",
              "properties": {
                "retentionBlocks": {
                  "type": "string",
                  "title": "hex encoded unsigned integer",
                  "pattern": "^0x(0|[1-9a-f][0-9a-f]*)$"
                },
                "type": {
                  "type": "string",
                  "enum": [
                    "window"
                  ]
                }
              },
              "required": [
                "type",
                "retentionBlocks"
              ]
            }
          ]
        },
        "disabled": {
          "type": "boolean"
        },
        "oldestBlock": {
          "type": "string",
          "title": "hex encoded unsigned integer",
          "pattern": "^0x(0|[1-9a-f][0-9a-f]*)$"
        }
      },
      "required": [
        "disabled"
      ]
    }
  },
  "required": [
    "head",
    "state",
    "tx",
    "logs",
    "receipts",
    "blocks",
    "stateproofs"
  ]
}

Example request

Endpoint: https://your-gno-node.azxa.io

JSON-RPC
{
  "jsonrpc": "2.0",
  "id": 1,
  "method": "eth_capabilities",
  "params": []
}
Example response
{
  "jsonrpc": "2.0",
  "id": 1,
  "result": {
    "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"
    }
  }
}

Test fixture

Fixture: get-capabilities

Request
{
  "jsonrpc": "2.0",
  "id": 1,
  "method": "eth_capabilities"
}
Response
{
  "jsonrpc": "2.0",
  "id": 1,
  "result": {
    "head": {
      "number": "0x36",
      "hash": "0xd226371d0b1551adb03fb52b71f08e3e11247fe9b1af994768af8cdaa8e7dcd7"
    },
    "state": {
      "disabled": false,
      "oldestBlock": "0x0"
    },
    "tx": {
      "disabled": false,
      "oldestBlock": "0x0"
    },
    "logs": {
      "disabled": false,
      "oldestBlock": "0x0",
      "deleteStrategy": {
        "type": "window",
        "retentionBlocks": "0x23dbb0"
      }
    },
    "receipts": {
      "disabled": false,
      "oldestBlock": "0x0"
    },
    "blocks": {
      "disabled": false,
      "oldestBlock": "0x0"
    },
    "stateproofs": {
      "disabled": false,
      "oldestBlock": "0x0"
    }
  }
}

cURL

curl -X POST https://your-gno-node.azxa.io \
  -H "Content-Type: application/json" \
  -d '{"jsonrpc":"2.0","id":1,"method":"eth_capabilities","params":[]}'
1

Select Chain

2

Desired Period

3

Contact Information

cross

Select Preferred Chain

BNB Smart Chain
Polygon
Tron
Arbitrum
Optimism
IoTeX
Gnosis
Fantom
Moonbeam
Polkadot
Avalanche
Bitcoin
Ethereum
Aptos
Other
cube

Other Chain

Continue
logo
cross
background