Skip to main content
Lasso provides production-grade routing for stateless Ethereum JSON-RPC reads and subscriptions. This page lists all supported methods organized by category.

Read-Only Methods (HTTP + WebSocket)

All read-only methods support failover, circuit breakers, and performance-based routing.

Blocks & Transactions

Account State

Execution & Gas

Logs & Events

Large eth_getLogs queries may be limited by provider block range caps (typically 2,000-10,000 blocks). See provider capabilities for block range limits.

Network Information

Subscription Methods (WebSocket Only)

These methods are only available over WebSocket connections and include automatic gap-filling on failover.

Supported Subscription Types

When a WebSocket provider fails, Lasso automatically detects gaps, backfills missing events via HTTP, and resumes the stream on a new provider.

Advanced & Non-Standard Methods

These methods are forwarded on a best-effort basis with no guarantees of availability.

Enhanced Batch Methods

EIP-4844 (Blob Transactions)

Debug & Trace Methods

Debug and trace methods are expensive and rarely supported on hosted providers. Use provider override to target specific nodes.
Debug Methods:
  • debug_traceTransaction
  • debug_traceBlockByNumber
  • debug_traceBlockByHash
  • debug_traceCall
  • debug_getBadBlocks
  • debug_storageRangeAt
  • debug_getModifiedAccountsByNumber
  • debug_getModifiedAccountsByHash
Trace Methods (Parity/Erigon):
  • trace_block
  • trace_transaction
  • trace_call
  • trace_callMany
  • trace_rawTransaction
  • trace_replayBlockTransactions
  • trace_replayTransaction
  • trace_filter
  • trace_get
Chain-Specific:
  • arbtrace_* (Arbitrum)
  • optimism_* (Optimism)
  • Other L2-specific extensions

Blocked Methods

The following methods are explicitly blocked for security or architectural reasons:

Subscriptions Over HTTP

eth_subscribe, eth_unsubscribe - Use WebSocket connections instead

Wallet & Signing

❌ Server-side key management is out of scope:
  • eth_sign
  • eth_signTransaction
  • eth_signTypedData, eth_signTypedData_v3, eth_signTypedData_v4
  • eth_sendTransaction
  • eth_accounts
  • All personal_* methods
  • All wallet_* methods (EIP-1193 client APIs)

Transaction Writes

eth_sendRawTransaction - Currently blocked. Multi-provider routing requires nonce management and transaction deduplication.
Write support is planned for future releases with proper nonce queuing, sticky sessions, and idempotency tracking.

Stateful Filters

❌ Filter methods require sticky sessions and are incompatible with failover:
  • eth_newFilter
  • eth_newBlockFilter
  • eth_newPendingTransactionFilter
  • eth_getFilterChanges
  • eth_getFilterLogs
  • eth_uninstallFilter
Alternative: Use WebSocket subscriptions (eth_subscribe) for real-time events.

Transaction Pool

❌ Provider-specific internal state with no standardization:
  • txpool_content
  • txpool_inspect
  • txpool_status

Mining & Local Node Operations

❌ Not available on hosted providers:
  • eth_coinbase
  • eth_mining
  • eth_hashrate
  • eth_getWork
  • eth_submitWork
  • eth_submitHashrate

EIP Compatibility

Best Practices

Gas Estimation Consistency

eth_estimateGas and eth_call can vary across providers due to different node implementations and timing. For consistency:
  • Pin estimates to a single provider using ?provider=<id>
  • Use :priority strategy for consistent results
  • Add a 10-20% buffer on the client side

Large Log Queries

For eth_getLogs with large block ranges:
  • Query 2,000 blocks at a time
  • Filter aggressively using address and topics
  • Monitor for rate limit errors and back off
  • Use :priority strategy for consistency across pages

Non-Standard Method Availability

To check if a specific provider supports a non-standard method: