Solana RPC

Network & Cluster Methods

Query cluster health, validator info, epoch schedule, leader slots, and node identity on Solana.

getHealth

POST JSON-RPC

Returns ok when the node is healthy.

Parameters: None

curl https://rpc.nln.clr3.org \  -H "Content-Type: application/json" \  -H "x-api-key: YOUR_API_KEY" \  -d '{"jsonrpc":"2.0","id":"health","method":"getHealth"}'

getClusterNodes

POST - JSON-RPC

Returns information about all the nodes participating in the cluster.

Parameters: None

curl https://rpc.nln.clr3.org \  -H "Content-Type: application/json" \  -H "x-api-key: YOUR_API_KEY" \  -d '{"jsonrpc":"2.0","id":1,"method":"getClusterNodes"}'
result[]array

pubkeystring
Node identity public key.
gossipstring
Gossip network address.
tpustring
TPU network address.
rpcstring
JSON-RPC network address (null if not enabled).
versionstring
Software version.
featureSetinteger
Unique feature set identifier.
shredVersioninteger
Shred version for this node.

getSlot

POST - JSON-RPC

Returns the current slot that has reached the given commitment level.

params[0]object

Configuration object with optional commitment and minContextSlot.

curl https://rpc.nln.clr3.org \  -H "Content-Type: application/json" \  -H "x-api-key: YOUR_API_KEY" \  -d '{"jsonrpc":"2.0","id":1,"method":"getSlot"}'

getSlotLeader

POST - JSON-RPC

Returns the current slot leader's identity Pubkey.

params[0]object

Configuration object with optional commitment and minContextSlot.

curl https://rpc.nln.clr3.org \  -H "Content-Type: application/json" \  -H "x-api-key: YOUR_API_KEY" \  -d '{"jsonrpc":"2.0","id":1,"method":"getSlotLeader"}'

getSlotLeaders

POST - JSON-RPC

Returns the slot leaders for a given slot range.

params[0]integerrequired

Start slot (u64).

params[1]integerrequired

Limit (u64, range 1–5000).

curl https://rpc.nln.clr3.org \  -H "Content-Type: application/json" \  -H "x-api-key: YOUR_API_KEY" \  -d '{"jsonrpc":"2.0","id":1,"method":"getSlotLeaders","params":[100,10]}'

getVersion

POST - JSON-RPC

Returns the current Solana version running on the node.

Parameters: None

curl https://rpc.nln.clr3.org \  -H "Content-Type: application/json" \  -H "x-api-key: YOUR_API_KEY" \  -d '{"jsonrpc":"2.0","id":1,"method":"getVersion"}'

getIdentity

POST - JSON-RPC

Returns the identity public key for the current node.

Parameters: None

curl https://rpc.nln.clr3.org \  -H "Content-Type: application/json" \  -H "x-api-key: YOUR_API_KEY" \  -d '{"jsonrpc":"2.0","id":1,"method":"getIdentity"}'

getEpochInfo

POST - JSON-RPC

Returns information about the current epoch.

params[0]object

Configuration object with optional commitment and minContextSlot.

curl https://rpc.nln.clr3.org \  -H "Content-Type: application/json" \  -H "x-api-key: YOUR_API_KEY" \  -d '{"jsonrpc":"2.0","id":1,"method":"getEpochInfo"}'
resultobject

absoluteSlotinteger
Current slot.
blockHeightinteger
Current block height.
epochinteger
Current epoch number.
slotIndexinteger
Current slot relative to the start of the epoch.
slotsInEpochinteger
Total number of slots in this epoch.
transactionCountinteger
Total transactions processed.

getEpochSchedule

POST - JSON-RPC

Returns the epoch schedule information from the cluster's genesis config.

Parameters: None

curl https://rpc.nln.clr3.org \  -H "Content-Type: application/json" \  -H "x-api-key: YOUR_API_KEY" \  -d '{"jsonrpc":"2.0","id":1,"method":"getEpochSchedule"}'
resultobject

slotsPerEpochinteger
Maximum number of slots per epoch.
leaderScheduleSlotOffsetinteger
Slots before the next epoch to compute the leader schedule.
warmupboolean
Whether epochs start short and grow.
firstNormalEpochinteger
First epoch with slotsPerEpoch slots.
firstNormalSlotinteger
First slot of firstNormalEpoch.

getLeaderSchedule

POST - JSON-RPC

Returns the leader schedule for an epoch.

params[0]integer

Slot to determine which epoch to query (optional, defaults to current).

params[1]object

Configuration object:

  • commitment (string) - commitment level
  • identity (string) - filter results to a single validator
curl https://rpc.nln.clr3.org \  -H "Content-Type: application/json" \  -H "x-api-key: YOUR_API_KEY" \  -d '{"jsonrpc":"2.0","id":1,"method":"getLeaderSchedule","params":[null,{"identity":"4Qkev8aNZcqFNSRhQzwyLMFSsi94jHqE8WNVTJzTP99F"}]}'

getVoteAccounts

POST - JSON-RPC

Returns the account info and associated stake for all the voting accounts.

params[0]object

Configuration object:

  • commitment (string)
  • votePubkey (string) - filter to a single vote account
  • keepUnstakedDelinquents (boolean) - include delinquent validators with no stake
  • delinquentSlotDistance (integer) - slots behind to consider delinquent
curl https://rpc.nln.clr3.org \  -H "Content-Type: application/json" \  -H "x-api-key: YOUR_API_KEY" \  -d '{"jsonrpc":"2.0","id":1,"method":"getVoteAccounts"}'

getRecentPerformanceSamples

POST - JSON-RPC

Returns a list of recent performance samples, in reverse slot order.

params[0]integer

Number of samples to return (max 720, default 720).

curl https://rpc.nln.clr3.org \  -H "Content-Type: application/json" \  -H "x-api-key: YOUR_API_KEY" \  -d '{"jsonrpc":"2.0","id":1,"method":"getRecentPerformanceSamples","params":[4]}'
result[]array

slotinteger
Slot in which the sample was taken.
numTransactionsinteger
Total transactions in sample period.
numNonVoteTransactionsinteger
Non-vote transactions in sample period.
numSlotsinteger
Number of slots in sample period.
samplePeriodSecsinteger
Sample window in seconds.