Overview
Yellowstone gRPC is a high-performance Solana Geyser plugin that enables real-time blockchain data streaming through gRPC interfaces. It serves as a powerful tool for developers who need to:
- Stream blockchain data in real-time
- Monitor on-chain activities (token mints, program interactions, state changes)
- Query account states efficiently
- Track transactions with minimal latency
The plugin extends Solana's Geyser infrastructure by supporting both gRPC and JSON-RPC protocols, offering offering enterprise-grade reliability with granular control.
Access
To access Yellowstone gRPC, you need to have the Yellowstone gRPC add-on enabled on your QuickNode endpoint.
Endpoint and Token Configuration
Yellowstone gRPC operates on port 10000. This is a dedicated secure port for gRPC communication and is separate from the standard Solana RPC endpoint. When connecting to the service the port must be specified in the URL:
- Endpoint: The name of your gRPC-enabled endpoint (by default, this is three randomly generated words) followed by
.solana-mainnet.quiknode.pro
and the port number10000
(e.g.,https://example-guide-demo.solana-mainnet.quiknode.pro:10000
) - Token: The alphanumeric string that follows the endpoint name in the URL (additional tokens can be generated from the QuickNode Dashboard) Endpoint Security tab.
Given the following example HTTP Provider URL: https://example-guide-demo.solana-mainnet.quiknode.pro/123456789/
, your authentication your credentials would be:
- Endpoint:
https://example-guide-demo.solana-mainnet.quiknode.pro:10000
- Token:
123456789
Here is a sample for using this endpoint to connect with TypeScript:
import { Client } from '@rpcpool/yellowstone-grpc';
// For HTTP Provider URL: https://example-guide-demo.solana-mainnet.quiknode.pro/123456789/
const ENDPOINT = 'https://example-guide-demo.solana-mainnet.quiknode.pro:10000';
const TOKEN = '123456789';
const client = new Client(ENDPOINT, TOKEN, {});
zstd Compression
The Yellowstone gRPC plugin supports zstd compression for faster gRPC requests. For information on how to enable zstd compression, refer to the zstd Compression documentation.
Making Yellowstone gRPC Requests
To make request to Yellowstone gRPC using different languages you check out below resources:
Resources
- Guide: Monitor Solana Programs with Geyser's Yellowstone Plugin (TypeScript)
- Solana Documentation: Solana Validator Geyser Plugins
- GitHub: Yellowstone Geyser gRPC Plugin
- GitHub: Geyser Park - Unofficial List of Geyser Plugins
We ❤️ Feedback!
If you have any feedback or questions about this documentation, let us know. We'd love to hear from you!