# SPDX-License-Identifier: CC-BY-NC-SA-4.0 profile: eth-jsonrpc title: The Ethereum JSON-RPC Interface originator: Ethereum generated: '2026-09-13' generated_by: scripts/build-profile.py upstream: repository: https://github.com/ethereum/execution-apis release: v1.0.0-beta.7 commit: 5aebdfdd45cadeb723be4bd45b4611b71c8b1c85 license: CC0-1.0 openrpc: 1.2.4 info_version: 1.0.0-beta.7 methods: 78 method: summary: Tiers are measured by calling the methods, not by counting published specs. A JSON-RPC provider exposes one endpoint and declares no paths, so there is nothing to count; the endpoints are public, so there is something to call. cohort: 21 claimants: 86 cohort_definition: 86 providers in the API Evangelist catalog claim EVM or Ethereum JSON-RPC compatibility. 42 declare an RPC-shaped endpoint and were probed; 21 returned usable results and are the denominator. Probing is read-only and no transaction was ever submitted. signals: ok: The method returned a result. exists_invalid_params: The method returned an error other than -32601. It exists and rejected this particular call, which counts as present. not_supported: JSON-RPC error -32601. The only proof a method is absent. negative_control: Every endpoint was first asked for a method that cannot exist. An endpoint that answered anything but -32601 has no working discriminator, so nothing it says about any method is recorded — it is excluded rather than read as a long list of absences. excluded_endpoints: 5ire: blocked alpen-labs: unreachable ancient8: inconclusive ankr: blocked base-l2: inconclusive chainlens: unreachable consensys: blocked envio: blocked flow-blockchain: blocked hyperliquid: blocked matter-labs: blocked meter: blocked monad: inconclusive optimism: blocked pokt: unreachable snowtrace: inconclusive starknet: inconclusive thundercore: inconclusive vana: blocked worldcoin: inconclusive xmtp: inconclusive thresholds: core: '>= 50.0% of the probed cohort' extended: '>= 5.0% and < 50.0%' vendor: < 5.0%, or not probed counts: core: 22 extended: 6 vendor: 50 operations: - method: eth_blockNumber namespace: eth tier: core probed: true endpoints_serving: 20 percent_of_cohort: 95.2 evidence: 20 of 21 probed public endpoints served this method (95.2%). - method: eth_chainId namespace: eth tier: core probed: true endpoints_serving: 20 percent_of_cohort: 95.2 evidence: 20 of 21 probed public endpoints served this method (95.2%). - method: eth_estimateGas namespace: eth tier: core probed: true endpoints_serving: 20 percent_of_cohort: 95.2 evidence: 20 of 21 probed public endpoints served this method (95.2%). - method: eth_gasPrice namespace: eth tier: core probed: true endpoints_serving: 20 percent_of_cohort: 95.2 evidence: 20 of 21 probed public endpoints served this method (95.2%). - method: eth_getBlockByNumber namespace: eth tier: core probed: true endpoints_serving: 20 percent_of_cohort: 95.2 evidence: 20 of 21 probed public endpoints served this method (95.2%). - method: eth_getBlockTransactionCountByNumber namespace: eth tier: core probed: true endpoints_serving: 20 percent_of_cohort: 95.2 evidence: 20 of 21 probed public endpoints served this method (95.2%). - method: eth_getTransactionCount namespace: eth tier: core probed: true endpoints_serving: 20 percent_of_cohort: 95.2 evidence: 20 of 21 probed public endpoints served this method (95.2%). - method: net_version namespace: net tier: core probed: true endpoints_serving: 20 percent_of_cohort: 95.2 evidence: 20 of 21 probed public endpoints served this method (95.2%). - method: eth_call namespace: eth tier: core probed: true endpoints_serving: 19 percent_of_cohort: 90.5 evidence: 19 of 21 probed public endpoints served this method (90.5%). - method: eth_feeHistory namespace: eth tier: core probed: true endpoints_serving: 19 percent_of_cohort: 90.5 evidence: 19 of 21 probed public endpoints served this method (90.5%). - method: eth_getBalance namespace: eth tier: core probed: true endpoints_serving: 19 percent_of_cohort: 90.5 evidence: 19 of 21 probed public endpoints served this method (90.5%). - method: eth_getCode namespace: eth tier: core probed: true endpoints_serving: 19 percent_of_cohort: 90.5 evidence: 19 of 21 probed public endpoints served this method (90.5%). - method: eth_getLogs namespace: eth tier: core probed: true endpoints_serving: 19 percent_of_cohort: 90.5 evidence: 19 of 21 probed public endpoints served this method (90.5%). - method: eth_accounts namespace: eth tier: core probed: true endpoints_serving: 18 percent_of_cohort: 85.7 evidence: 18 of 21 probed public endpoints served this method (85.7%). - method: eth_getFilterChanges namespace: eth tier: core probed: true endpoints_serving: 18 percent_of_cohort: 85.7 evidence: 18 of 21 probed public endpoints served this method (85.7%). - method: eth_maxPriorityFeePerGas namespace: eth tier: core probed: true endpoints_serving: 18 percent_of_cohort: 85.7 evidence: 18 of 21 probed public endpoints served this method (85.7%). - method: eth_newBlockFilter namespace: eth tier: core probed: true endpoints_serving: 17 percent_of_cohort: 81.0 evidence: 17 of 21 probed public endpoints served this method (81.0%). - method: eth_uninstallFilter namespace: eth tier: core probed: true endpoints_serving: 17 percent_of_cohort: 81.0 evidence: 17 of 21 probed public endpoints served this method (81.0%). - method: eth_syncing namespace: eth tier: core probed: true endpoints_serving: 16 percent_of_cohort: 76.2 evidence: 16 of 21 probed public endpoints served this method (76.2%). - method: eth_getProof namespace: eth tier: core probed: true endpoints_serving: 14 percent_of_cohort: 66.7 evidence: 14 of 21 probed public endpoints served this method (66.7%). - method: eth_createAccessList namespace: eth tier: core probed: true endpoints_serving: 12 percent_of_cohort: 57.1 evidence: 12 of 21 probed public endpoints served this method (57.1%). - method: eth_blobBaseFee namespace: eth tier: core probed: true endpoints_serving: 11 percent_of_cohort: 52.4 evidence: 11 of 21 probed public endpoints served this method (52.4%). - method: eth_coinbase namespace: eth tier: extended probed: true endpoints_serving: 10 percent_of_cohort: 47.6 evidence: 10 of 21 probed public endpoints served this method (47.6%). - method: eth_config namespace: eth tier: extended probed: true endpoints_serving: 6 percent_of_cohort: 28.6 evidence: 6 of 21 probed public endpoints served this method (28.6%). - method: txpool_status namespace: txpool tier: extended probed: true endpoints_serving: 6 percent_of_cohort: 28.6 evidence: 6 of 21 probed public endpoints served this method (28.6%). - method: debug_getRawHeader namespace: debug tier: extended probed: true endpoints_serving: 5 percent_of_cohort: 23.8 evidence: 5 of 21 probed public endpoints served this method (23.8%). - method: debug_getBadBlocks namespace: debug tier: extended probed: true endpoints_serving: 4 percent_of_cohort: 19.0 evidence: 4 of 21 probed public endpoints served this method (19.0%). - method: eth_capabilities namespace: eth tier: extended probed: true endpoints_serving: 2 percent_of_cohort: 9.5 evidence: 2 of 21 probed public endpoints served this method (9.5%). - method: debug_getRawBlock namespace: debug tier: vendor probed: false endpoints_serving: 0 percent_of_cohort: null evidence: Not probed. Graded vendor by default — an unprobed method is not a measured absence, and this is stated rather than implied. - method: debug_getRawBlockAccessList namespace: debug tier: vendor probed: false endpoints_serving: 0 percent_of_cohort: null evidence: Not probed. Graded vendor by default — an unprobed method is not a measured absence, and this is stated rather than implied. - method: debug_getRawReceipts namespace: debug tier: vendor probed: false endpoints_serving: 0 percent_of_cohort: null evidence: Not probed. Graded vendor by default — an unprobed method is not a measured absence, and this is stated rather than implied. - method: debug_getRawTransaction namespace: debug tier: vendor probed: false endpoints_serving: 0 percent_of_cohort: null evidence: Not probed. Graded vendor by default — an unprobed method is not a measured absence, and this is stated rather than implied. - method: engine_exchangeCapabilities namespace: engine tier: vendor probed: false endpoints_serving: 0 percent_of_cohort: null evidence: Not probed. Graded vendor by default — an unprobed method is not a measured absence, and this is stated rather than implied. note: The engine namespace is the consensus-layer API, spoken between a node's execution and consensus clients over an authenticated port. No public endpoint should serve it, so a zero here is the correct result rather than a gap. - method: engine_exchangeTransitionConfigurationV1 namespace: engine tier: vendor probed: false endpoints_serving: 0 percent_of_cohort: null evidence: Not probed. Graded vendor by default — an unprobed method is not a measured absence, and this is stated rather than implied. note: The engine namespace is the consensus-layer API, spoken between a node's execution and consensus clients over an authenticated port. No public endpoint should serve it, so a zero here is the correct result rather than a gap. - method: engine_forkchoiceUpdatedV1 namespace: engine tier: vendor probed: false endpoints_serving: 0 percent_of_cohort: null evidence: Not probed. Graded vendor by default — an unprobed method is not a measured absence, and this is stated rather than implied. note: The engine namespace is the consensus-layer API, spoken between a node's execution and consensus clients over an authenticated port. No public endpoint should serve it, so a zero here is the correct result rather than a gap. - method: engine_forkchoiceUpdatedV2 namespace: engine tier: vendor probed: false endpoints_serving: 0 percent_of_cohort: null evidence: Not probed. Graded vendor by default — an unprobed method is not a measured absence, and this is stated rather than implied. note: The engine namespace is the consensus-layer API, spoken between a node's execution and consensus clients over an authenticated port. No public endpoint should serve it, so a zero here is the correct result rather than a gap. - method: engine_forkchoiceUpdatedV3 namespace: engine tier: vendor probed: false endpoints_serving: 0 percent_of_cohort: null evidence: Not probed. Graded vendor by default — an unprobed method is not a measured absence, and this is stated rather than implied. note: The engine namespace is the consensus-layer API, spoken between a node's execution and consensus clients over an authenticated port. No public endpoint should serve it, so a zero here is the correct result rather than a gap. - method: engine_forkchoiceUpdatedV4 namespace: engine tier: vendor probed: false endpoints_serving: 0 percent_of_cohort: null evidence: Not probed. Graded vendor by default — an unprobed method is not a measured absence, and this is stated rather than implied. note: The engine namespace is the consensus-layer API, spoken between a node's execution and consensus clients over an authenticated port. No public endpoint should serve it, so a zero here is the correct result rather than a gap. - method: engine_getBlobsV1 namespace: engine tier: vendor probed: false endpoints_serving: 0 percent_of_cohort: null evidence: Not probed. Graded vendor by default — an unprobed method is not a measured absence, and this is stated rather than implied. note: The engine namespace is the consensus-layer API, spoken between a node's execution and consensus clients over an authenticated port. No public endpoint should serve it, so a zero here is the correct result rather than a gap. - method: engine_getBlobsV2 namespace: engine tier: vendor probed: false endpoints_serving: 0 percent_of_cohort: null evidence: Not probed. Graded vendor by default — an unprobed method is not a measured absence, and this is stated rather than implied. note: The engine namespace is the consensus-layer API, spoken between a node's execution and consensus clients over an authenticated port. No public endpoint should serve it, so a zero here is the correct result rather than a gap. - method: engine_getBlobsV3 namespace: engine tier: vendor probed: false endpoints_serving: 0 percent_of_cohort: null evidence: Not probed. Graded vendor by default — an unprobed method is not a measured absence, and this is stated rather than implied. note: The engine namespace is the consensus-layer API, spoken between a node's execution and consensus clients over an authenticated port. No public endpoint should serve it, so a zero here is the correct result rather than a gap. - method: engine_getBlobsV4 namespace: engine tier: vendor probed: false endpoints_serving: 0 percent_of_cohort: null evidence: Not probed. Graded vendor by default — an unprobed method is not a measured absence, and this is stated rather than implied. note: The engine namespace is the consensus-layer API, spoken between a node's execution and consensus clients over an authenticated port. No public endpoint should serve it, so a zero here is the correct result rather than a gap. - method: engine_getPayloadBodiesByHashV1 namespace: engine tier: vendor probed: false endpoints_serving: 0 percent_of_cohort: null evidence: Not probed. Graded vendor by default — an unprobed method is not a measured absence, and this is stated rather than implied. note: The engine namespace is the consensus-layer API, spoken between a node's execution and consensus clients over an authenticated port. No public endpoint should serve it, so a zero here is the correct result rather than a gap. - method: engine_getPayloadBodiesByHashV2 namespace: engine tier: vendor probed: false endpoints_serving: 0 percent_of_cohort: null evidence: Not probed. Graded vendor by default — an unprobed method is not a measured absence, and this is stated rather than implied. note: The engine namespace is the consensus-layer API, spoken between a node's execution and consensus clients over an authenticated port. No public endpoint should serve it, so a zero here is the correct result rather than a gap. - method: engine_getPayloadBodiesByRangeV1 namespace: engine tier: vendor probed: false endpoints_serving: 0 percent_of_cohort: null evidence: Not probed. Graded vendor by default — an unprobed method is not a measured absence, and this is stated rather than implied. note: The engine namespace is the consensus-layer API, spoken between a node's execution and consensus clients over an authenticated port. No public endpoint should serve it, so a zero here is the correct result rather than a gap. - method: engine_getPayloadBodiesByRangeV2 namespace: engine tier: vendor probed: false endpoints_serving: 0 percent_of_cohort: null evidence: Not probed. Graded vendor by default — an unprobed method is not a measured absence, and this is stated rather than implied. note: The engine namespace is the consensus-layer API, spoken between a node's execution and consensus clients over an authenticated port. No public endpoint should serve it, so a zero here is the correct result rather than a gap. - method: engine_getPayloadV1 namespace: engine tier: vendor probed: false endpoints_serving: 0 percent_of_cohort: null evidence: Not probed. Graded vendor by default — an unprobed method is not a measured absence, and this is stated rather than implied. note: The engine namespace is the consensus-layer API, spoken between a node's execution and consensus clients over an authenticated port. No public endpoint should serve it, so a zero here is the correct result rather than a gap. - method: engine_getPayloadV2 namespace: engine tier: vendor probed: false endpoints_serving: 0 percent_of_cohort: null evidence: Not probed. Graded vendor by default — an unprobed method is not a measured absence, and this is stated rather than implied. note: The engine namespace is the consensus-layer API, spoken between a node's execution and consensus clients over an authenticated port. No public endpoint should serve it, so a zero here is the correct result rather than a gap. - method: engine_getPayloadV3 namespace: engine tier: vendor probed: false endpoints_serving: 0 percent_of_cohort: null evidence: Not probed. Graded vendor by default — an unprobed method is not a measured absence, and this is stated rather than implied. note: The engine namespace is the consensus-layer API, spoken between a node's execution and consensus clients over an authenticated port. No public endpoint should serve it, so a zero here is the correct result rather than a gap. - method: engine_getPayloadV4 namespace: engine tier: vendor probed: false endpoints_serving: 0 percent_of_cohort: null evidence: Not probed. Graded vendor by default — an unprobed method is not a measured absence, and this is stated rather than implied. note: The engine namespace is the consensus-layer API, spoken between a node's execution and consensus clients over an authenticated port. No public endpoint should serve it, so a zero here is the correct result rather than a gap. - method: engine_getPayloadV5 namespace: engine tier: vendor probed: false endpoints_serving: 0 percent_of_cohort: null evidence: Not probed. Graded vendor by default — an unprobed method is not a measured absence, and this is stated rather than implied. note: The engine namespace is the consensus-layer API, spoken between a node's execution and consensus clients over an authenticated port. No public endpoint should serve it, so a zero here is the correct result rather than a gap. - method: engine_getPayloadV6 namespace: engine tier: vendor probed: false endpoints_serving: 0 percent_of_cohort: null evidence: Not probed. Graded vendor by default — an unprobed method is not a measured absence, and this is stated rather than implied. note: The engine namespace is the consensus-layer API, spoken between a node's execution and consensus clients over an authenticated port. No public endpoint should serve it, so a zero here is the correct result rather than a gap. - method: engine_newPayloadV1 namespace: engine tier: vendor probed: false endpoints_serving: 0 percent_of_cohort: null evidence: Not probed. Graded vendor by default — an unprobed method is not a measured absence, and this is stated rather than implied. note: The engine namespace is the consensus-layer API, spoken between a node's execution and consensus clients over an authenticated port. No public endpoint should serve it, so a zero here is the correct result rather than a gap. - method: engine_newPayloadV2 namespace: engine tier: vendor probed: false endpoints_serving: 0 percent_of_cohort: null evidence: Not probed. Graded vendor by default — an unprobed method is not a measured absence, and this is stated rather than implied. note: The engine namespace is the consensus-layer API, spoken between a node's execution and consensus clients over an authenticated port. No public endpoint should serve it, so a zero here is the correct result rather than a gap. - method: engine_newPayloadV3 namespace: engine tier: vendor probed: false endpoints_serving: 0 percent_of_cohort: null evidence: Not probed. Graded vendor by default — an unprobed method is not a measured absence, and this is stated rather than implied. note: The engine namespace is the consensus-layer API, spoken between a node's execution and consensus clients over an authenticated port. No public endpoint should serve it, so a zero here is the correct result rather than a gap. - method: engine_newPayloadV4 namespace: engine tier: vendor probed: false endpoints_serving: 0 percent_of_cohort: null evidence: Not probed. Graded vendor by default — an unprobed method is not a measured absence, and this is stated rather than implied. note: The engine namespace is the consensus-layer API, spoken between a node's execution and consensus clients over an authenticated port. No public endpoint should serve it, so a zero here is the correct result rather than a gap. - method: engine_newPayloadV5 namespace: engine tier: vendor probed: false endpoints_serving: 0 percent_of_cohort: null evidence: Not probed. Graded vendor by default — an unprobed method is not a measured absence, and this is stated rather than implied. note: The engine namespace is the consensus-layer API, spoken between a node's execution and consensus clients over an authenticated port. No public endpoint should serve it, so a zero here is the correct result rather than a gap. - method: eth_getBlockAccessList namespace: eth tier: vendor probed: false endpoints_serving: 0 percent_of_cohort: null evidence: Not probed. Graded vendor by default — an unprobed method is not a measured absence, and this is stated rather than implied. - method: eth_getBlockByHash namespace: eth tier: vendor probed: false endpoints_serving: 0 percent_of_cohort: null evidence: Not probed. Graded vendor by default — an unprobed method is not a measured absence, and this is stated rather than implied. - method: eth_getBlockReceipts namespace: eth tier: vendor probed: false endpoints_serving: 0 percent_of_cohort: null evidence: Not probed. Graded vendor by default — an unprobed method is not a measured absence, and this is stated rather than implied. - method: eth_getBlockTransactionCountByHash namespace: eth tier: vendor probed: false endpoints_serving: 0 percent_of_cohort: null evidence: Not probed. Graded vendor by default — an unprobed method is not a measured absence, and this is stated rather than implied. - method: eth_getFilterLogs namespace: eth tier: vendor probed: false endpoints_serving: 0 percent_of_cohort: null evidence: Not probed. Graded vendor by default — an unprobed method is not a measured absence, and this is stated rather than implied. - method: eth_getStorageAt namespace: eth tier: vendor probed: false endpoints_serving: 0 percent_of_cohort: null evidence: Not probed. Graded vendor by default — an unprobed method is not a measured absence, and this is stated rather than implied. - method: eth_getStorageValues namespace: eth tier: vendor probed: false endpoints_serving: 0 percent_of_cohort: null evidence: Not probed. Graded vendor by default — an unprobed method is not a measured absence, and this is stated rather than implied. - method: eth_getTransactionByBlockHashAndIndex namespace: eth tier: vendor probed: false endpoints_serving: 0 percent_of_cohort: null evidence: Not probed. Graded vendor by default — an unprobed method is not a measured absence, and this is stated rather than implied. - method: eth_getTransactionByBlockNumberAndIndex namespace: eth tier: vendor probed: false endpoints_serving: 0 percent_of_cohort: null evidence: Not probed. Graded vendor by default — an unprobed method is not a measured absence, and this is stated rather than implied. - method: eth_getTransactionByHash namespace: eth tier: vendor probed: false endpoints_serving: 0 percent_of_cohort: null evidence: Not probed. Graded vendor by default — an unprobed method is not a measured absence, and this is stated rather than implied. - method: eth_getTransactionReceipt namespace: eth tier: vendor probed: false endpoints_serving: 0 percent_of_cohort: null evidence: Not probed. Graded vendor by default — an unprobed method is not a measured absence, and this is stated rather than implied. - method: eth_newFilter namespace: eth tier: vendor probed: false endpoints_serving: 0 percent_of_cohort: null evidence: Not probed. Graded vendor by default — an unprobed method is not a measured absence, and this is stated rather than implied. - method: eth_newPendingTransactionFilter namespace: eth tier: vendor probed: false endpoints_serving: 0 percent_of_cohort: null evidence: Not probed. Graded vendor by default — an unprobed method is not a measured absence, and this is stated rather than implied. - method: eth_sendRawTransaction namespace: eth tier: vendor probed: false endpoints_serving: 0 percent_of_cohort: null evidence: Not probed. Graded vendor by default — an unprobed method is not a measured absence, and this is stated rather than implied. - method: eth_sendTransaction namespace: eth tier: vendor probed: false endpoints_serving: 0 percent_of_cohort: null evidence: Not probed. Graded vendor by default — an unprobed method is not a measured absence, and this is stated rather than implied. - method: eth_sign namespace: eth tier: vendor probed: false endpoints_serving: 0 percent_of_cohort: null evidence: Not probed. Graded vendor by default — an unprobed method is not a measured absence, and this is stated rather than implied. - method: eth_signTransaction namespace: eth tier: vendor probed: false endpoints_serving: 0 percent_of_cohort: null evidence: Not probed. Graded vendor by default — an unprobed method is not a measured absence, and this is stated rather than implied. - method: eth_simulateV1 namespace: eth tier: vendor probed: false endpoints_serving: 0 percent_of_cohort: null evidence: Not probed. Graded vendor by default — an unprobed method is not a measured absence, and this is stated rather than implied. - method: testing_buildBlockV1 namespace: testing tier: vendor probed: false endpoints_serving: 0 percent_of_cohort: null evidence: Not probed. Graded vendor by default — an unprobed method is not a measured absence, and this is stated rather than implied. - method: txpool_content namespace: txpool tier: vendor probed: false endpoints_serving: 0 percent_of_cohort: null evidence: Not probed. Graded vendor by default — an unprobed method is not a measured absence, and this is stated rather than implied. - method: txpool_contentFrom namespace: txpool tier: vendor probed: false endpoints_serving: 0 percent_of_cohort: null evidence: Not probed. Graded vendor by default — an unprobed method is not a measured absence, and this is stated rather than implied.