Ethereum

Ethereum

web3_clientVersion

web3_clientVersion reports which software is running the Ethereum node behind your endpoint and at what version. Mainnet (chain ID 1) is served by several independent execution clients — Geth, Erigon, Reth, Nethermind, Besu — and this method returns a free-form string identifying the one you reached, along with its version and build platform. A typical answer looks like "Geth/v1.12.0-stable-e501b3b0/linux-amd64/go1.20.2". Call it against https://ethereum.therpc.io/YOUR_API_KEY when you want to know what is on the other end. It takes no parameters and the client diversity is the point: no single implementation runs the ETH network, so the string you get back depends on which node answered.

Use cases

  • Read the client name to decide whether a client-specific feature is worth attempting — for instance, the Erigon-only trace_* methods or Geth's txpool namespace.
  • Capture the node identity string in diagnostic logs so you can correlate odd behaviour with a particular Ethereum client and version when triaging incidents.

Parameters

This method takes no parameters. Pass an empty array [].

Response

TypeDescription
stringFree-form version string, e.g. `"Geth/v1.12.0-stable-e501b3b0/linux-amd64/go1.20.2"`. Format varies by client implementation.

Example request

curl https://ethereum.therpc.io/YOUR_API_KEY \
-X POST \
-H "Content-Type: application/json" \
-d '{
"jsonrpc": "2.0",
"method": "web3_clientVersion",
"params": [],
"id": 1
}'

Try it live in the Ethereum playground.

Errors & troubleshooting

Common pitfalls

  • Managed Ethereum endpoints often return a custom or redacted string rather than the raw client build, sometimes to avoid advertising the exact version to potential attackers. Do not assume the string maps to a stock client release.
  • Treating this as feature detection is fragile. Behind a load balancer your requests may hit different clients, and the string can change between calls. When you actually depend on a method, call it and handle method not found rather than guessing from the version banner.

Supported networks

  • Mainnet — Chain ID: 1
  • Sepolia — Chain ID: 11155111

See also

curl https://ethereum.therpc.io/YOUR_API_KEY \
-X POST \
-H 'Content-Type: application/json' \
-d '{"jsonrpc":"2.0","id":1,"method":"web3_clientVersion","params":[]}'

Ready to call this in production?

Free tier covers personal projects. Pay-as-you-go scales without a card.