Skip to main content
Core Lane implements standard Ethereum JSON-RPC methods, providing compatibility with existing Ethereum tools and libraries.

Account Methods

eth_getBalance

Returns the balance of the account at the given address.
curl -X POST http://127.0.0.1:8545 \
  -H "Content-Type: application/json" \
  -d '{
    "jsonrpc": "2.0",
    "method": "eth_getBalance",
    "params": ["0xf39Fd6e51aad88F6F4ce6aB8827279cffFb92266", "latest"],
    "id": 1
  }'
params[0]
string
required
Address to check (20-byte hex string with 0x prefix)
params[1]
string
required
Block parameter: “latest”, “earliest”, “pending”, or block number (hex)
result
string
Account balance in wei (hex-encoded)
Example Response:
{
  "jsonrpc": "2.0",
  "result": "0xde0b6b3a7640000",
  "id": 1
}

eth_getTransactionCount

Returns the number of transactions sent from an address (nonce).
curl -X POST http://127.0.0.1:8545 \
  -H "Content-Type: application/json" \
  -d '{
    "jsonrpc": "2.0",
    "method": "eth_getTransactionCount",
    "params": ["0xf39Fd6e51aad88F6F4ce6aB8827279cffFb92266", "latest"],
    "id": 1
  }'
params[0]
string
required
Address to check
params[1]
string
required
Block parameter
result
string
Transaction count (nonce) as hex-encoded integer
Example Response:
{
  "jsonrpc": "2.0",
  "result": "0x5",
  "id": 1
}

eth_getCode

Returns code at a given address.
Core Lane currently returns empty code (0x) as smart contract deployment is not yet supported.
curl -X POST http://127.0.0.1:8545 \
  -H "Content-Type: application/json" \
  -d '{
    "jsonrpc": "2.0",
    "method": "eth_getCode",
    "params": ["0x0000000000000000000000000000000000000045", "latest"],
    "id": 1
  }'
params[0]
string
required
Address to query
params[1]
string
required
Block parameter
result
string
Contract bytecode (currently always “0x”)

eth_getStorageAt

Returns the value from a storage position at a given address.
Core Lane currently returns zero storage values as contract storage is not yet supported.
curl -X POST http://127.0.0.1:8545 \
  -H "Content-Type: application/json" \
  -d '{
    "jsonrpc": "2.0",
    "method": "eth_getStorageAt",
    "params": [
      "0x0000000000000000000000000000000000000045",
      "0x0000000000000000000000000000000000000000000000000000000000000000",
      "latest"
    ],
    "id": 1
  }'
params[0]
string
required
Address of the storage
params[1]
string
required
Storage position (32-byte hex)
params[2]
string
required
Block parameter
result
string
Storage value (32-byte hex, currently always zero)

Transaction Methods

eth_sendRawTransaction

Sends a signed transaction to the network.
curl -X POST http://127.0.0.1:8545 \
  -H "Content-Type: application/json" \
  -d '{
    "jsonrpc": "2.0",
    "method": "eth_sendRawTransaction",
    "params": ["0x02f8...signed_tx_data..."],
    "id": 1
  }'
params[0]
string
required
Signed transaction data (hex-encoded with 0x prefix)
result
string
Transaction hash (32-byte hex)
Example Response:
{
  "jsonrpc": "2.0",
  "result": "0x7d2a2c7e2e7c58e7f9e7d2a2c7e2e7c58e7f9e7d2a2c7e2e7c58e7f9e7d2a2c",
  "id": 1
}
Depending on node configuration, transactions may be:
  • Submitted to Bitcoin DA (if Bitcoin client is configured)
  • Forwarded to a sequencer RPC (if --sequencer-rpc-url is set)
  • Submitted to Espresso (if Espresso submit URL is configured)
  • Forwarded to upstream Core Lane RPC (in derived mode)

eth_sendTransaction

Sends a transaction from an account (requires unlocked account).
This method is not yet implemented. Use eth_sendRawTransaction with pre-signed transactions instead.

eth_getTransactionByHash

Returns transaction information by hash.
curl -X POST http://127.0.0.1:8545 \
  -H "Content-Type: application/json" \
  -d '{
    "jsonrpc": "2.0",
    "method": "eth_getTransactionByHash",
    "params": ["0x7d2a2c7e2e7c58e7f9e7d2a2c7e2e7c58e7f9e7d2a2c7e2e7c58e7f9e7d2a2c"],
    "id": 1
  }'
params[0]
string
required
Transaction hash (32-byte hex)
result
object | null
Transaction object or null if not found

eth_getTransactionReceipt

Returns the receipt of a transaction by hash.
curl -X POST http://127.0.0.1:8545 \
  -H "Content-Type: application/json" \
  -d '{
    "jsonrpc": "2.0",
    "method": "eth_getTransactionReceipt",
    "params": ["0x7d2a2c7e2e7c58e7f9e7d2a2c7e2e7c58e7f9e7d2a2c7e2e7c58e7f9e7d2a2c"],
    "id": 1
  }'
params[0]
string
required
Transaction hash (32-byte hex)
result
object | null
Receipt object or null if not found

eth_getTransactionByBlockHashAndIndex

Returns transaction information by block hash and transaction index.
curl -X POST http://127.0.0.1:8545 \
  -H "Content-Type: application/json" \
  -d '{
    "jsonrpc": "2.0",
    "method": "eth_getTransactionByBlockHashAndIndex",
    "params": [
      "0x1234567890abcdef1234567890abcdef1234567890abcdef1234567890abcdef",
      "0x0"
    ],
    "id": 1
  }'
params[0]
string
required
Block hash (32-byte hex)
params[1]
string
required
Transaction index within block (hex)
result
object | null
Transaction object or null if not found (same format as eth_getTransactionByHash)

eth_getTransactionByBlockNumberAndIndex

Returns transaction information by block number and transaction index.
curl -X POST http://127.0.0.1:8545 \
  -H "Content-Type: application/json" \
  -d '{
    "jsonrpc": "2.0",
    "method": "eth_getTransactionByBlockNumberAndIndex",
    "params": ["latest", "0x0"],
    "id": 1
  }'
params[0]
string
required
Block number (hex) or “latest”, “earliest”, “pending”
params[1]
string
required
Transaction index within block (hex)
result
object | null
Transaction object or null if not found

Block Methods

eth_blockNumber

Returns the current block number.
curl -X POST http://127.0.0.1:8545 \
  -H "Content-Type: application/json" \
  -d '{
    "jsonrpc": "2.0",
    "method": "eth_blockNumber",
    "params": [],
    "id": 1
  }'
result
string
Current block number (hex)
Example Response:
{
  "jsonrpc": "2.0",
  "result": "0x4b7",
  "id": 1
}

eth_getBlockByNumber

Returns information about a block by number.
curl -X POST http://127.0.0.1:8545 \
  -H "Content-Type: application/json" \
  -d '{
    "jsonrpc": "2.0",
    "method": "eth_getBlockByNumber",
    "params": ["latest", false],
    "id": 1
  }'
params[0]
string
required
Block number (hex) or “latest”, “earliest”, “pending”
params[1]
boolean
required
If true, returns full transaction objects; if false, returns only transaction hashes
result
object | null
Block object or null if not found

eth_getBlockByHash

Returns information about a block by hash.
curl -X POST http://127.0.0.1:8545 \
  -H "Content-Type: application/json" \
  -d '{
    "jsonrpc": "2.0",
    "method": "eth_getBlockByHash",
    "params": [
      "0x1234567890abcdef1234567890abcdef1234567890abcdef1234567890abcdef",
      false
    ],
    "id": 1
  }'
params[0]
string
required
Block hash (32-byte hex)
params[1]
boolean
required
If true, returns full transaction objects; if false, returns only transaction hashes
result
object | null
Block object or null if not found (same format as eth_getBlockByNumber)

eth_getBlockTransactionCountByNumber

Returns the number of transactions in a block.
curl -X POST http://127.0.0.1:8545 \
  -H "Content-Type: application/json" \
  -d '{
    "jsonrpc": "2.0",
    "method": "eth_getBlockTransactionCountByNumber",
    "params": ["latest"],
    "id": 1
  }'
params[0]
string
required
Block number (hex) or “latest”, “earliest”, “pending”
result
string
Transaction count (hex)

Network Methods

eth_chainId

Returns the chain ID.
curl -X POST http://127.0.0.1:8545 \
  -H "Content-Type: application/json" \
  -d '{
    "jsonrpc": "2.0",
    "method": "eth_chainId",
    "params": [],
    "id": 1
  }'
result
string
Chain ID: “0x4c616e42” (1281453634 in decimal)

eth_syncing

Returns syncing status.
curl -X POST http://127.0.0.1:8545 \
  -H "Content-Type: application/json" \
  -d '{
    "jsonrpc": "2.0",
    "method": "eth_syncing",
    "params": [],
    "id": 1
  }'
result
boolean | object
false if not syncing, or sync status object if syncing

net_version

Returns the network ID.
curl -X POST http://127.0.0.1:8545 \
  -H "Content-Type: application/json" \
  -d '{
    "jsonrpc": "2.0",
    "method": "net_version",
    "params": [],
    "id": 1
  }'
result
string
Network ID: “1281453634”

net_listening

Returns whether the node is listening for network connections.
curl -X POST http://127.0.0.1:8545 \
  -H "Content-Type: application/json" \
  -d '{
    "jsonrpc": "2.0",
    "method": "net_listening",
    "params": [],
    "id": 1
  }'
result
boolean
Always returns true

net_peerCount

Returns the number of peers connected to the node.
curl -X POST http://127.0.0.1:8545 \
  -H "Content-Type: application/json" \
  -d '{
    "jsonrpc": "2.0",
    "method": "net_peerCount",
    "params": [],
    "id": 1
  }'
result
string
Peer count (hex, currently always “0x0” as P2P is not yet implemented)

Gas and Fee Methods

eth_gasPrice

Returns the current gas price.
curl -X POST http://127.0.0.1:8545 \
  -H "Content-Type: application/json" \
  -d '{
    "jsonrpc": "2.0",
    "method": "eth_gasPrice",
    "params": [],
    "id": 1
  }'
result
string
Gas price in wei (hex)

eth_estimateGas

Estimates the gas needed to execute a transaction.
curl -X POST http://127.0.0.1:8545 \
  -H "Content-Type: application/json" \
  -d '{
    "jsonrpc": "2.0",
    "method": "eth_estimateGas",
    "params": [{
      "from": "0xf39Fd6e51aad88F6F4ce6aB8827279cffFb92266",
      "to": "0x70997970C51812dc3A010C7d01b50e0d17dc79C8",
      "value": "0xde0b6b3a7640000"
    }],
    "id": 1
  }'
params[0]
object
required
Transaction call object
params[1]
string
Block parameter (optional)
result
string
Estimated gas amount (hex, currently returns “0x5208” - 21000 gas)

eth_maxPriorityFeePerGas

Returns the suggested priority fee per gas for EIP-1559 transactions.
curl -X POST http://127.0.0.1:8545 \
  -H "Content-Type: application/json" \
  -d '{
    "jsonrpc": "2.0",
    "method": "eth_maxPriorityFeePerGas",
    "params": [],
    "id": 1
  }'
result
string
Suggested priority fee in wei (hex). Returns 10% of current base fee, minimum 0.1 Gwei

eth_feeHistory

Returns historical gas fee data.
curl -X POST http://127.0.0.1:8545 \
  -H "Content-Type: application/json" \
  -d '{
    "jsonrpc": "2.0",
    "method": "eth_feeHistory",
    "params": ["0x4", "latest", [25, 50, 75]],
    "id": 1
  }'
params[0]
string
required
Number of blocks to retrieve (hex)
params[1]
string
required
Newest block (hex, “latest”, or “pending”)
params[2]
array
Array of reward percentiles (0-100, optional)
result
object
Fee history data

Call Methods

eth_call

Executes a call without creating a transaction.
Core Lane supports intent-related calls via this method. See the Core Lane Methods page for intent-specific functionality.
curl -X POST http://127.0.0.1:8545 \
  -H "Content-Type: application/json" \
  -d '{
    "jsonrpc": "2.0",
    "method": "eth_call",
    "params": [{
      "to": "0x0000000000000000000000000000000000000045",
      "data": "0x..."
    }, "latest"],
    "id": 1
  }'
params[0]
object
required
Transaction call object
params[1]
string
required
Block parameter
result
string
Call result (hex-encoded bytes)

Build docs developers (and LLMs) love