# RPC Method Policy Configuration # Defines which JSON-RPC methods are allowed and their rate limits # Allowed methods for public RPC allowed_methods: - eth_blockNumber - eth_call - eth_estimateGas - eth_gasPrice - eth_getBalance - eth_getBlockByHash - eth_getBlockByNumber - eth_getBlockTransactionCountByHash - eth_getBlockTransactionCountByNumber - eth_getCode - eth_getLogs - eth_getStorageAt - eth_getTransactionByHash - eth_getTransactionByBlockHashAndIndex - eth_getTransactionByBlockNumberAndIndex - eth_getTransactionCount - eth_getTransactionReceipt - eth_getUncleByBlockHashAndIndex - eth_getUncleByBlockNumberAndIndex - eth_getUncleCountByBlockHash - eth_getUncleCountByBlockNumber - eth_protocolVersion - eth_syncing - net_listening - net_peerCount - net_version - web3_clientVersion - web3_sha3 # Blocked methods for public RPC (write operations) blocked_methods: - eth_sendTransaction - eth_sendRawTransaction - miner_start - miner_stop - miner_setEtherbase - admin_addPeer - admin_removePeer - admin_addTrustedPeer - admin_removeTrustedPeer - admin_peers - admin_nodeInfo - debug_traceBlock - debug_traceBlockByNumber - debug_traceBlockByHash - debug_traceTransaction - debug_traceCall - debug_dumpBlock - debug_getBadBlocks - debug_getRawHeader - debug_getRawBlock - debug_getRawReceipts - debug_getRawTransaction # Rate limits (requests per minute per IP) rate_limits: default: 1200 eth_call: 600 eth_getLogs: 300 eth_getBlockByNumber: 600 eth_getTransactionReceipt: 600 eth_estimateGas: 300 # Log range guards for eth_getLogs log_range_limits: max_block_range: 10000 max_topics: 4 max_addresses: 10 # Authentication authentication: required: false # Set to true to require API keys api_key_header: "X-API-Key" jwt_enabled: false jwt_secret: "" # CORS cors: enabled: true allowed_origins: - "*" allowed_methods: - GET - POST - OPTIONS allowed_headers: - Content-Type - Authorization - X-API-Key