Skip to main content
Core Lane implements a JSON-RPC API that is compatible with Ethereum’s JSON-RPC specification, enabling developers to interact with the network using familiar tools and libraries.

Connection Details

The JSON-RPC API is available via HTTP POST requests to the node’s RPC endpoint.

Default Endpoint

http://127.0.0.1:8545
You can configure the host and port using command-line flags:
--http-host 127.0.0.1 --http-port 8545

Authentication

The JSON-RPC API does not require authentication by default. All endpoints are publicly accessible on the configured host and port.
For production deployments, ensure your RPC endpoint is properly secured and not exposed to untrusted networks.

Request Format

All JSON-RPC requests follow the standard format:
{
  "jsonrpc": "2.0",
  "method": "method_name",
  "params": [],
  "id": 1
}
jsonrpc
string
required
Protocol version (always “2.0”)
method
string
required
The RPC method name to call
params
array
Method-specific parameters (can be empty)
id
number | string
required
Request identifier for matching responses

Response Format

Success Response

{
  "jsonrpc": "2.0",
  "result": { },
  "id": 1
}
jsonrpc
string
Protocol version (“2.0”)
result
any
Method-specific response data
id
number | string
Request identifier matching the request

Error Response

{
  "jsonrpc": "2.0",
  "error": {
    "code": -32601,
    "message": "Method not found"
  },
  "id": 1
}
error
object
Error information

Standard Error Codes

CodeMessageDescription
-32700Parse errorInvalid JSON was received
-32600Invalid RequestThe JSON sent is not a valid Request object
-32601Method not foundThe method does not exist
-32602Invalid paramsInvalid method parameter(s)
-32603Internal errorInternal JSON-RPC error

ethers.js

import { ethers } from 'ethers';

const provider = new ethers.JsonRpcProvider('http://127.0.0.1:8545');
const blockNumber = await provider.getBlockNumber();
console.log('Current block:', blockNumber);

web3.js

import Web3 from 'web3';

const web3 = new Web3('http://127.0.0.1:8545');
const blockNumber = await web3.eth.getBlockNumber();
console.log('Current block:', blockNumber);

curl

curl -X POST http://127.0.0.1:8545 \
  -H "Content-Type: application/json" \
  -d '{
    "jsonrpc": "2.0",
    "method": "eth_blockNumber",
    "params": [],
    "id": 1
  }'

Chain Information

Chain ID

1281453634 (0x4c616e42)

Network Name

Core Lane

API Categories

Core Lane’s JSON-RPC API is organized into several categories:

Ethereum-Compatible Methods

Standard Ethereum RPC methods for accounts, transactions, blocks, and gas

Core Lane Methods

Custom RPC methods specific to Core Lane features

REST Endpoints

In addition to JSON-RPC, Core Lane provides several REST endpoints for raw data access:
EndpointMethodDescription
/healthGETHealth check endpoint
/get_raw_block/:block_numberGETGet raw block data
/get_raw_block_delta/:block_numberGETGet block state delta
/get_latest_blockGETGet latest block information
/kv/:keyGETGet key-value store data
/bitcoin/wallet/balanceGETGet Bitcoin wallet balance
/do_pollPOSTTrigger on-demand block scan (when enabled)

Rate Limiting

There is no built-in rate limiting. Consider implementing rate limiting at the network or application level for production deployments.

Next Steps

Ethereum-Compatible Methods

Explore standard Ethereum RPC methods

Core Lane Methods

Discover Core Lane-specific functionality

Build docs developers (and LLMs) love