Solana RPC API

AllenHark provides high-performance, staked Solana RPC endpoints optimized for trading bots, MEV searchers, and production dApps. Our nodes run on bare-metal hardware in TeraSwitch Frankfurt with direct PNI connectivity to Solana validators.

Why AllenHark RPC

FeatureAllenHarkPublic RPC
LatencySub-millisecond (co-located)50–200 ms
Rate LimitsNone40 req/s
Staked ConnectionsYes (SWQoS priority)No
sendTransactionPriority propagation via QUICBest-effort
Uptime99.99% SLANo guarantee
AuthenticationIP whitelisting (no API keys)Open

Getting Started

1. Get Your Endpoint

Join our Discord and request RPC access. You'll receive a dedicated IP and port once your server IP is whitelisted.

2. Connect

All standard Solana JSON-RPC methods are supported. Connections use IP whitelisting — no API keys or tokens needed.

HTTP endpoint:

http://[IP_ADDRESS]:[PORT]

WebSocket endpoint:

ws://[IP_ADDRESS]:[PORT]

3. Start Querying

TypeScript (@solana/web3.js)

1import { Connection } from '@solana/web3.js';
2
3const connection = new Connection('http://[IP_ADDRESS]:[PORT]', 'confirmed');
4const balance = await connection.getBalance(new PublicKey('YOUR_PUBKEY'));
5console.log(`Balance: ${balance / 1e9} SOL`);

Python (solana-py)

1from solana.rpc.api import Client
2
3client = Client("http://[IP_ADDRESS]:[PORT]")
4balance = client.get_balance(Pubkey.from_string("YOUR_PUBKEY"))
5print(f"Balance: {balance.value / 1e9} SOL")

Rust (solana-client)

1use solana_client::rpc_client::RpcClient;
2use solana_sdk::pubkey::Pubkey;
3use std::str::FromStr;
4
5let client = RpcClient::new("http://[IP_ADDRESS]:[PORT]".to_string());
6let pubkey = Pubkey::from_str("YOUR_PUBKEY").unwrap();
7let balance = client.get_balance(&pubkey).unwrap();
8println!("Balance: {} SOL", balance as f64 / 1e9);

cURL

1curl http://[IP_ADDRESS]:[PORT] \
2  -X POST \
3  -H "Content-Type: application/json" \
4  -d '{"jsonrpc":"2.0","id":1,"method":"getBalance","params":["YOUR_PUBKEY"]}'

API Methods Reference

Every standard Solana JSON-RPC method is supported. Click any method below for full documentation with parameters, response format, and code examples.

Account Methods

MethodDescription
getAccountInfoReturns all information associated with an account
getBalanceReturns the SOL balance in lamports
getMultipleAccountsReturns info for multiple accounts in one call
getLargestAccountsReturns the 20 largest accounts by lamport balance
getProgramAccountsReturns all accounts owned by a program
getMinimumBalanceForRentExemptionReturns minimum balance needed for rent exemption

Token Methods

MethodDescription
getTokenAccountBalanceReturns the token balance of an SPL token account
getTokenAccountsByOwnerReturns all token accounts owned by a wallet
getTokenAccountsByDelegateReturns token accounts by approved delegate
getTokenLargestAccountsReturns the 20 largest holders of a token
getTokenSupplyReturns total supply of an SPL token

Transaction Methods

MethodDescription
sendTransactionSubmits a signed transaction to the cluster
simulateTransactionSimulates a transaction without submitting it
confirmTransactionConfirms a transaction has been processed
getTransactionReturns transaction details for a confirmed signature
getSignatureStatusesReturns the statuses of transaction signatures
getSignaturesForAddressReturns confirmed signatures for an address
getTransactionCountReturns the total number of transactions processed
getRecentPrioritizationFeesReturns recent priority fee data for compute budgeting

Block Methods

MethodDescription
getBlockReturns identity and transaction info for a block
getBlockHeightReturns the current block height
getBlockTimeReturns estimated production time of a block
getBlocksReturns a list of confirmed blocks between two slots
getBlocksWithLimitReturns confirmed blocks starting at a slot with a limit
getBlockCommitmentReturns commitment information for a block
getBlockProductionReturns recent block production information
getFirstAvailableBlockReturns the slot of the lowest non-purged block

Blockhash & Fee Methods

MethodDescription
getLatestBlockhashReturns the latest blockhash for transaction signing
getFeeForMessageReturns the fee for a given message
getStakeMinimumDelegationReturns the minimum stake delegation amount

Slot & Epoch Methods

MethodDescription
getSlotReturns the current slot the node is processing
getSlotLeaderReturns the current slot leader
getSlotLeadersReturns slot leaders for a given range
getEpochInfoReturns information about the current epoch
getEpochScheduleReturns the epoch schedule
getLeaderScheduleReturns the leader schedule for an epoch

Network & Node Methods

MethodDescription
getHealthReturns the health status of the node
getVersionReturns the Solana software version running on the node
getIdentityReturns the identity pubkey of the current node
getClusterNodesReturns information about all nodes in the cluster
getGenesisHashReturns the genesis hash
getVoteAccountsReturns the account info and associated stake of all voting accounts
getHighestSnapshotSlotReturns the highest slot for available snapshots
getMaxRetransmitSlotReturns max slot seen from retransmit stage
getMaxShredInsertSlotReturns max slot seen after shred insert

Supply & Inflation Methods

MethodDescription
getSupplyReturns information about the current SOL supply
getInflationGovernorReturns the current inflation governor parameters
getInflationRateReturns the current inflation rate
getInflationRewardReturns inflation rewards for a list of addresses

Stake Methods

MethodDescription
getStakeActivationReturns stake activation state for a stake account

Other Methods

MethodDescription
getRecentPerformanceSamplesReturns recent performance samples
requestAirdropRequests a SOL airdrop (devnet/testnet only)

Deprecated Methods

These methods are still supported but have been superseded by newer alternatives:


Commitment Levels

Solana supports three commitment levels that control how finalized the data must be before a query returns:

LevelDescriptionLatencyUse Case
processedFastest. Node has processed but not confirmed the block.LowestHFT bots, real-time UIs
confirmedSupermajority of the cluster has voted on the block.MediumMost applications
finalizedBlock is confirmed and the supermajority has rooted it.HighestExchanges, settlement

Most methods accept an optional commitment parameter. If not provided, it defaults to finalized.


Support