> ## Documentation Index
> Fetch the complete documentation index at: https://docs.validationcloud.io/llms.txt
> Use this file to discover all available pages before exploring further.

# Overview

export const logo_0 = "/nodeapi/assets/chains/ethereum.svg"

export const chain_0 = "Ethereum"

<span className="chain-logo-ethereum" />

<img className="page-cover" src="https://mintcdn.com/validation-cloud/QajBabafGojozKj4/nodeapi/assets/eth.jpg?fit=max&auto=format&n=QajBabafGojozKj4&q=85&s=1715611ff6893cb2205dcfe09a8d0bbe" alt="" noZoom width="1990" height="480" data-path="nodeapi/assets/eth.jpg" />

<div className="not-prose my-8 flex flex-col gap-4 rounded-2xl border border-gray-950/10 p-5 sm:flex-row sm:items-center dark:border-white/10">
  <img src={logo_0} alt="" className="h-10 w-10 shrink-0" noZoom />

  <div className="flex-1">
    <p className="m-0 font-semibold text-gray-900 dark:text-gray-100">Start building on {chain_0} for free</p>
    <p className="m-0 mt-1 text-sm text-gray-600 dark:text-gray-400">Create an endpoint in under a minute. The Free plan includes 50 million compute units a month, and no credit card is required.</p>
  </div>

  <a href="https://app.validationcloud.io/auth/signup?returnTo=%2Fnode%2Fcreate-endpoint" className="shrink-0 rounded-full bg-primary px-5 py-2 text-center text-sm font-semibold text-white no-underline hover:opacity-90">Try free</a>
</div>

Ethereum is a decentralized Layer-1 blockchain that enables developers to build and deploy smart contracts and decentralized applications (dApps) using the Ethereum Virtual Machine (EVM).

As the foundational environment for EVM-compatible chains, Ethereum has become a standard for smart contract execution across a wide range of blockchain ecosystems.

The native token on Ethereum is ETH.

Block explorer: [https://etherscan.io/](https://etherscan.io/)

## Network Support

| Network | Full History / Archive | HTTPS | WSS |
| - | - | - | - |
| Mainnet | ✅ | ✅ | ✅ |
| Testnet (Sepolia) | ✅ | ✅ | ✅ |

> WebSocket clients **MUST** respond to server `ping` frames, otherwise the connection will be closed and re-established every minute.

## Getting Started

Send a request to check that your endpoint works. Replace `<YOUR_API_KEY_HERE>` with the key from your endpoint in the [Validation Cloud app](https://app.validationcloud.io/node).

<CodeGroup>
  ```bash title="mainnet" theme={"theme":{"light":"github-light","dark":"github-dark-default"}}
  curl https://mainnet.ethereum.validationcloud.io/v1/<YOUR_API_KEY_HERE> \
      -X POST \
      -H "Content-Type: application/json" \
      -d '{"jsonrpc":"2.0","method":"eth_blockNumber","params":[],"id":0}'
  ```

  ```bash title="testnet" theme={"theme":{"light":"github-light","dark":"github-dark-default"}}
  curl https://sepolia.ethereum.validationcloud.io/v1/<YOUR_API_KEY_HERE> \
      -X POST \
      -H "Content-Type: application/json" \
      -d '{"jsonrpc":"2.0","method":"eth_blockNumber","params":[],"id":0}'
  ```
</CodeGroup>

Connect over WebSocket:

<CodeGroup>
  ```bash title="mainnet" theme={"theme":{"light":"github-light","dark":"github-dark-default"}}
  wscat -c wss://mainnet.ethereum.validationcloud.io/v1/wss/<YOUR_API_KEY_HERE>
  ```

  ```bash title="testnet" theme={"theme":{"light":"github-light","dark":"github-dark-default"}}
  wscat -c wss://sepolia.ethereum.validationcloud.io/v1/wss/<YOUR_API_KEY_HERE>
  ```
</CodeGroup>

## Compute Units

| Method | Compute units |
| - | - |
| [debug\_getBadBlocks](/nodeapi/ethereum/debug-api/debug_getbadblocks) | 80 |
| [debug\_traceBlockByHash](/nodeapi/ethereum/debug-api/debug_traceblockbyhash) | 80 |
| [debug\_traceBlockByNumber](/nodeapi/ethereum/debug-api/debug_traceblockbynumber) | 80 |
| [debug\_traceCall](/nodeapi/ethereum/debug-api/debug_tracecall) | 80 |
| [debug\_traceTransaction](/nodeapi/ethereum/debug-api/debug_tracetransaction) | 80 |
| [eth\_accounts](/nodeapi/ethereum/execution-api/eth_accounts) | 20 |
| [eth\_blockNumber](/nodeapi/ethereum/execution-api/eth_blocknumber) | 20 |
| [eth\_call](/nodeapi/ethereum/execution-api/eth_call) | 40 |
| [eth\_chainId](/nodeapi/ethereum/execution-api/eth_chainid) | 10 |
| [eth\_estimateGas](/nodeapi/ethereum/execution-api/eth_estimategas) | 40 |
| [eth\_gasPrice](/nodeapi/ethereum/execution-api/eth_gasprice) | 40 |
| [eth\_getBalance](/nodeapi/ethereum/execution-api/eth_getbalance) | 40 |
| [eth\_getBlockByHash](/nodeapi/ethereum/execution-api/eth_getblockbyhash) | 40 |
| [eth\_getBlockByNumber](/nodeapi/ethereum/execution-api/eth_getblockbynumber) | 40 |
| [eth\_getBlockTransactionCountByHash](/nodeapi/ethereum/execution-api/eth_getblocktransactioncountbyhash) | 40 |
| [eth\_getBlockTransactionCountByNumber](/nodeapi/ethereum/execution-api/eth_getblocktransactioncountbynumber) | 40 |
| [eth\_getCode](/nodeapi/ethereum/execution-api/eth_getcode) | 40 |
| [eth\_getFilterChanges](/nodeapi/ethereum/execution-api/eth_getfilterchanges) | 40 |
| [eth\_getFilterLogs](/nodeapi/ethereum/execution-api/eth_getfilterlogs) | 40 |
| [eth\_getLogs](/nodeapi/ethereum/execution-api/eth_getlogs) | 80 |
| [eth\_getStorageAt](/nodeapi/ethereum/execution-api/eth_getstorageat) | 40 |
| [eth\_getTransactionByBlockHashAndIndex](/nodeapi/ethereum/execution-api/eth_gettransactionbyblockhashandindex) | 40 |
| [eth\_getTransactionByBlockNumberAndIndex](/nodeapi/ethereum/execution-api/eth_gettransactionbyblocknumberandindex) | 40 |
| [eth\_getTransactionByHash](/nodeapi/ethereum/execution-api/eth_gettransactionbyhash) | 40 |
| [eth\_getTransactionCount](/nodeapi/ethereum/execution-api/eth_gettransactioncount) | 40 |
| [eth\_getTransactionReceipt](/nodeapi/ethereum/execution-api/eth_gettransactionreceipt) | 40 |
| [eth\_getUncleByBlockHashAndIndex](/nodeapi/ethereum/execution-api/eth_getunclebyblockhashandindex) | 40 |
| [eth\_getUncleByBlockNumberAndIndex](/nodeapi/ethereum/execution-api/eth_getunclebyblocknumberandindex) | 40 |
| [eth\_getUncleCountByBlockHash](/nodeapi/ethereum/execution-api/eth_getunclecountbyblockhash) | 40 |
| [eth\_getUncleCountByBlockNumber](/nodeapi/ethereum/execution-api/eth_getunclecountbyblocknumber) | 40 |
| [eth\_newBlockFilter](/nodeapi/ethereum/execution-api/eth_newblockfilter) | 40 |
| [eth\_maxPriorityFeePerGas](/nodeapi/ethereum/execution-api/eth_maxpriorityfeepergas) | 20 |
| [eth\_newFilter](/nodeapi/ethereum/execution-api/eth_newfilter) | 40 |
| [eth\_newPendingTransactionFilter](/nodeapi/ethereum/execution-api/eth_newpendingtransactionfilter) | 40 |
| [eth\_sendRawTransaction](/nodeapi/ethereum/execution-api/eth_sendrawtransaction) | 80 |
| [eth\_subscribe](/nodeapi/ethereum/execution-api/eth_subscribe) | 20 |
| [eth\_syncing](/nodeapi/ethereum/execution-api/eth_syncing) | 10 |
| [eth\_uninstallFilter](/nodeapi/ethereum/execution-api/eth_uninstallfilter) | 20 |
| [eth\_unsubscribe](/nodeapi/ethereum/execution-api/eth_unsubscribe) | 20 |
| [net\_listening](/nodeapi/ethereum/execution-api/net_listening) | 10 |
| [net\_peerCount](/nodeapi/ethereum/execution-api/net_peercount) | 20 |
| [net\_version](/nodeapi/ethereum/execution-api/net_version) | 10 |
| [trace\_block](/nodeapi/ethereum/trace-api/trace_block) | 80 |
| [trace\_call](/nodeapi/ethereum/trace-api/trace_call) | 80 |
| [trace\_filter](/nodeapi/ethereum/trace-api/trace_filter) | 80 |
| [trace\_get](/nodeapi/ethereum/trace-api/trace_get) | 80 |
| [trace\_rawTransaction](/nodeapi/ethereum/trace-api/trace_rawtransaction) | 80 |
| [trace\_replayBlockTransactions](/nodeapi/ethereum/trace-api/trace_replayblocktransactions) | 270 |
| [trace\_replayTransaction](/nodeapi/ethereum/trace-api/trace_replaytransaction) | 270 |
| [trace\_transaction](/nodeapi/ethereum/trace-api/trace_transaction) | 80 |
| [txpool\_content](/nodeapi/ethereum/execution-api/txpool_content) | 500 |
| [web3\_clientVersion](/nodeapi/ethereum/execution-api/web3_clientversion) | 40 |
| [web3\_sha3](/nodeapi/ethereum/execution-api/web3_sha3) | 40 |


This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.