Yellowstone gRPC
Geyser-based streaming over gRPC. Faster and more efficient than polling JSON-RPC or subscribing via WebSocket — you get account updates, transactions, slots, and full blocks pushed to your client as they happen.
Endpoint
http://cute-rabbit.by.supanode.xyz:10000/
No TLS on shared tier. No auth token — access is controlled by IP allowlist (same as HTTP/WS).
gRPC is not available on the Free tier. You need Build ($179/mo) or higher.
Example (Rust)
Using yellowstone-grpc-client:
use yellowstone_grpc_client::GeyserGrpcClient;
#[tokio::main]
async fn main() -> anyhow::Result<()> {
let mut client = GeyserGrpcClient::connect(
"http://cute-rabbit.by.supanode.xyz:10000/",
None, // no x-token, IP allowlist handles auth
None,
).await?;
println!("Connected to HighTower gRPC");
// Set up your subscription filters here
// See: https://github.com/rpcpool/yellowstone-grpc
Ok(())
}
What You Can Stream
- Account updates — replicate account state as it changes on-chain
- Transactions — filter by program, account, or signature and get them as they're processed
- Slots — new slot notifications
- Blocks — full block data including all transactions
Filtering is important. An unfiltered subscription on a shared tier will generate a massive data stream and likely get throttled. Always specify account or program filters.
Further Reading
- yellowstone-grpc on GitHub — official client libraries and protobuf definitions
- gRPC Limits — concurrent stream caps and payload size