EVM network documentation
Ethereum RPC API reference
Ethereum mainnet RPC endpoint: https://triport.io/eth (HTTPS) and wss://triport.io/ws/eth (WebSocket), chain ID 1. Requests need a Triport API key in the x-token header; the Free plan is a 7-day trial. Endpoint, plans and limits: Ethereum RPC endpoint.
https://triport.io/ethAll Ethereum reference pages 62
JSON-RPC · eth trace
JSON-RPC · eth debug
JSON-RPC · eth read rpc
- eth_blockNumber
- eth_call
- eth_chainId
- eth_estimateGas
- eth_feeHistory
- eth_gasPrice
- eth_getBalance
- eth_getBlockByHash
- eth_getBlockByNumber
- eth_getBlockReceipts
- eth_getBlockTransactionCountByHash
- eth_getBlockTransactionCountByNumber
- eth_getCode
- eth_getLogs
- eth_getStorageAt
- eth_getTransactionByBlockHashAndIndex
- eth_getTransactionByBlockNumberAndIndex
- eth_getTransactionByHash
- eth_getTransactionCount
- eth_getTransactionReceipt
- eth_getUncleByBlockHashAndIndex
- eth_getUncleByBlockNumberAndIndex
- eth_getUncleCountByBlockHash
- eth_getUncleCountByBlockNumber
- eth_maxPriorityFeePerGas
- eth_protocolVersion
- eth_syncing
- net_listening
- net_peerCount
- net_version
- web3_clientVersion
- web3_sha3
JSON-RPC · eth getproof
JSON-RPC · eth send tx
JSON-RPC · eth trace filter
JSON-RPC · eth txpool
REST
Streams
Guides & operations
Contracts
Capabilities
- JSON-RPC readsAvailableFree+
- Transaction submissionAvailableFree+
- DebugAvailablePro+
- eth_getProofAvailablePro+
- Trace and simulationAvailablePro+
- trace_filterAvailablePro+
- txpool (routed node view)AvailablePro+Pool of the routed node, not the whole network mempool.
- WebSocket logsAvailableBasic+
- WebSocket newPendingTransactionsAvailableFree+
- WebSocket newHeads, syncingAvailablePro+
- Beacon events (SSE)Available
Statuses reflect checks up to 2026-10-10. Rate limits are plan policy, not measured capacity.
One key covers Ethereum eth_*, debug_*, trace_*, and txpool_* JSON-RPC, REST wallet/mempool/MEV/validator/peer products, beacon access, and WebSocket Pub/Sub.
| Method / Endpoint | Network | Chain ID | Authentication | Required scope | Tier / rate limit |
|---|---|---|---|---|---|
POST https://triport.io/eth | Ethereum mainnet | 1 | x-token: $TRIPORT_API_KEY | eth:rpc | Category-specific RPS; see Limits |
Endpoints
| Surface | Endpoint | Reference |
|---|---|---|
| HTTPS | https://triport.io/eth | Backend path /rpc |
| WSS | wss://triport.io/ws/eth | Registry path /ws/eth |
| REST | Product routes | REST catalog |
| Stream contract | eth ws | AsyncAPI |
Quickstart
curl https://triport.io/eth \
-H "x-token: $TRIPORT_API_KEY" \
-H "Content-Type: application/json" \
-d '{"jsonrpc":"2.0","id":1,"method":"eth_blockNumber","params":[]}'What's available
58 JSON-RPC methods in the OpenRPC catalog:
eth_peergraph: 5eth_trace: 6eth_debug: 7eth_read_rpc: 32eth_send_bundle: 2eth_getproof: 1eth_send_tx: 1eth_trace_filter: 1eth_txpool: 3
Deep inspection, pending-pool visibility, MEV submission and intelligence, peer topology, and consensus-layer access are part of the published catalogs.
Limits
See network limits and Rate Limits & Tiers.
Finite request-rate budgets include a 2× burst buffer at no extra cost. It refills at sustained RPS; there is no quota on the number of bursts. Interval categories use seconds and have no RPS burst. See Burst capacity.
| Category | Free | Basic | Pro | Business | Enterprise |
|---|---|---|---|---|---|
eth_debug | — | — | 5 RPS sustained · up to 10 burst | 15 RPS sustained · up to 30 burst | unlimited |
eth_getproof | — | — | 5 RPS sustained · up to 10 burst | 15 RPS sustained · up to 30 burst | unlimited |
eth_mempool_live | — | 100 RPS sustained · up to 200 burst | 800 RPS sustained · up to 1600 burst | 1130 RPS sustained · up to 2260 burst | unlimited |
eth_peergraph | — | — | — | 20 RPS sustained · up to 40 burst | unlimited |
eth_read_rpc | 10 RPS sustained · up to 20 burst | 20 RPS sustained · up to 40 burst | 100 RPS sustained · up to 200 burst | 250 RPS sustained · up to 500 burst | unlimited |
eth_send_bundle | — | — | 5 RPS sustained · up to 10 burst | 15 RPS sustained · up to 30 burst | unlimited |
eth_send_tx | 3 RPS sustained · up to 6 burst | 5 RPS sustained · up to 10 burst | 30 RPS sustained · up to 60 burst | 80 RPS sustained · up to 160 burst | unlimited |
eth_trace | — | — | 5 RPS sustained · up to 10 burst | 15 RPS sustained · up to 30 burst | unlimited |
eth_txpool | — | — | 1 RPS sustained · up to 2 burst | 2 RPS sustained · up to 4 burst | unlimited |
eth_txpool_snapshot_min_interval_sec | — | — | 5 | 2 | unlimited |
eth_validator_registry | — | — | — | 50 RPS sustained · up to 100 burst | unlimited |
debug_* and trace_* use heavier, premium categories.
Errors
See network-specific errors and the shared error reference.
Methods
eth trace (6)
alchemy_simulateAssetChangesalchemy_simulateExecutionBundletrace_blocktrace_calltrace_replayBlockTransactionstrace_transaction
eth debug (7)
debug_getRawBlockdebug_getRawHeaderdebug_storageRangeAtdebug_traceBlockByHashdebug_traceBlockByNumberdebug_traceCalldebug_traceTransaction
eth read rpc (32)
eth_blockNumbereth_calleth_chainIdeth_estimateGaseth_feeHistoryeth_gasPriceeth_getBalanceeth_getBlockByHasheth_getBlockByNumbereth_getBlockReceiptseth_getBlockTransactionCountByHasheth_getBlockTransactionCountByNumbereth_getCodeeth_getLogseth_getStorageAteth_getTransactionByBlockHashAndIndexeth_getTransactionByBlockNumberAndIndexeth_getTransactionByHasheth_getTransactionCounteth_getTransactionReceipteth_getUncleByBlockHashAndIndexeth_getUncleByBlockNumberAndIndexeth_getUncleCountByBlockHasheth_getUncleCountByBlockNumbereth_maxPriorityFeePerGaseth_protocolVersioneth_syncingnet_listeningnet_peerCountnet_versionweb3_clientVersionweb3_sha3
eth send bundle (1)
eth_sendBundle— sent through the private RPC forwarder, not the shared endpoint
eth getproof (1)
eth send tx (1)
eth trace filter (1)
eth txpool (3)
Streams
JavaScript (fetch)
The same request from JavaScript (Node 18+ or the browser):
const res = await fetch("https://triport.io/eth", {
method: "POST",
headers: {
"x-token": process.env.TRIPORT_API_KEY,
"Content-Type": "application/json",
},
body: JSON.stringify({"jsonrpc":"2.0","id":1,"method":"eth_blockNumber","params":[]}),
});
const { result } = await res.json();
console.log(result);Related
Tutorial: stream pending Ethereum and Polygon transactions — full transaction objects over /ws/eth, and the read budget behind body fetches.