Yellowstone gRPC

High-performance real-time Solana data streaming built on the Geyser plugin architecture. Access accounts, transactions, blocks, and slots through efficient gRPC streaming connections.

gRPC Endpoint

Solana: yellowstone.eu.fluxrpc.com

Fogo: yellowstone.eu.fogo.fluxrpc.com

Why Yellowstone gRPC?

Yellowstone gRPC offers significant advantages over traditional REST and WebSocket APIs for applications that need real-time blockchain data with minimal latency and maximum throughput.

FluxRPC Enhancements

High Availability Architecture

Multi-producer and multi-consumer architecture ensures minimal downtime. Multiple Solana nodes feed data to the gRPC service simultaneously. If one producer node goes down, others seamlessly continue providing data.

Block Lag Mitigation

Multi-producer architecture eliminates single-node block lag issues. Data is sourced from multiple nodes simultaneously, providing the freshest possible blockchain data.

Subscription Types

Common Use Cases

Quick Start

grpcurl \
  -d '{"accounts":{"client":{"account":["<ACCOUNT_PUBKEY>"]}},"slots":{},"commitment":1}' \
  -H "x-token: <your-API-key>" \
  yellowstone.eu.fluxrpc.com \
  geyser.Geyser/Subscribe

Protocol Reference

Yellowstone gRPC uses Protocol Buffers for strongly-typed data structures. The service definition is based on the open-source yellowstone-grpc project by Triton.

service Geyser {
  rpc Subscribe(stream SubscribeRequest) returns (stream SubscribeUpdate) {}
  rpc Ping(PingRequest) returns (PongResponse) {}
  rpc GetLatestBlockhash(GetLatestBlockhashRequest) returns (GetLatestBlockhashResponse) {}
  rpc GetBlockHeight(GetBlockHeightRequest) returns (GetBlockHeightResponse) {}
  rpc GetSlot(GetSlotRequest) returns (GetSlotResponse) {}
  rpc IsBlockhashValid(IsBlockhashValidRequest) returns (IsBlockhashValidResponse) {}
  rpc GetVersion(GetVersionRequest) returns (GetVersionResponse) {}
}