Account Methods
getAccountInfo
Returns account information for a given public key. Method:getAccountInfo
Account public key as base-58 encoded string
Configuration object
Encoding format:
base58, base64, base64+zstd, jsonParsedCommitment level:
processed, confirmed, finalized (default: finalized)Minimum slot to evaluate request
Account information or null if account doesn’t exist
Account balance in lamports
Base-58 encoded public key of the program owner
Account data, format depends on encoding parameter
Whether the account is executable
Epoch at which account will next owe rent
Request
Response
getBalance
Returns the lamport balance of an account. Method:getBalance
Account public key as base-58 encoded string
Account balance in lamports
Request
Response
Block Methods
getBlock
Returns identity and transaction information about a confirmed block. Method:getBlock
Slot number to query
Configuration object
Encoding for transaction data:
json, jsonParsed, base58, base64 (default: json)Level of transaction detail:
full, accounts, signatures, none (default: full)Whether to populate rewards array (default:
true)Commitment level:
confirmed, finalized (default: finalized)Max transaction version to return (0 for legacy only)
Blockhash of this block
Blockhash of parent block
Slot index of parent block
Estimated production time as Unix timestamp
Number of blocks beneath this block
Array of transaction objects
Block rewards
Request
getBlockHeight
Returns the current block height of the node. Method:getBlockHeight
Current block height
Request
Response
Transaction Methods
getTransaction
Returns transaction details for a confirmed transaction. Method:getTransaction
Transaction signature as base-58 encoded string
Slot this transaction was processed in
Transaction object
Estimated production time as Unix timestamp
Request
sendTransaction
Submits a signed transaction to the cluster for processing. Method:sendTransaction
Fully-signed transaction as encoded string
Configuration object
Skip preflight transaction checks (default:
false)Commitment level for preflight (default:
finalized)Encoding for transaction:
base58, base64 (default: base58)Maximum retry attempts by RPC node
Minimum slot for preflight checks
Transaction signature as base-58 encoded string
Request
Response
simulateTransaction
Simulates sending a transaction without actually submitting it. Method:simulateTransaction
Transaction as encoded string (need not be signed)
Configuration object
Whether to verify signatures (default:
false)Commitment level (default:
finalized)Encoding:
base58, base64 (default: base58)Replace recent blockhash with simulated one (default:
false)Minimum slot for simulation
Request
Response
Additional Methods
getMultipleAccounts
Returns account information for multiple accounts (max 100). Method:getMultipleAccounts
getProgramAccounts
Returns all accounts owned by a program. Method:getProgramAccounts
getSignaturesForAddress
Returns confirmed signatures for transactions involving an address. Method:getSignaturesForAddress
getLatestBlockhash
Returns the latest blockhash. Method:getLatestBlockhash
getSlot
Returns the current slot the node is processing. Method:getSlot
getEpochInfo
Returns information about the current epoch. Method:getEpochInfo
getVersion
Returns the current Solana version. Method:getVersion
getHealth
Returns the health status of the node. Method:getHealth
Source Code References
The HTTP JSON-RPC methods are implemented in:- Core traits:
rpc/src/rpc.rs(lines 2707-3607) - Minimal API:
rpc_minimalmodule (lines 2705-2944) - Full API:
rpc_fullmodule (lines 3455-3607) - Accounts API:
rpc_accountsmodule (lines 3157-3285) - Request processor:
JsonRpcRequestProcessorstructure (lines 235-256)