본문으로 건너뛰기

Solana gRPC - Streaming

업데이트됨:
Sep 03, 2026

개요

Solana gRPC (Yellowstone-compatible Geyser 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

Solana gRPC extends Solana's Geyser infrastructure by supporting both gRPC and JSON-RPC protocols, offering enterprise-grade reliability with granular control.

Access

Solana gRPC is included with Scale plans and up. Learn more on our pricing page.

Endpoint and Token Configuration

Solana gRPC operates on port 443. This is a dedicated secure port for gRPC communication and is separate from the standard Solana RPC endpoint. When connecting to the service, specify port 443 in the URL and enable compression.

  • 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 number 443 (e.g., https://example-guide-demo.solana-mainnet.quiknode.pro:443)
  • 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 credentials would be:


  • Endpoint: https://example-guide-demo.solana-mainnet.quiknode.pro:443
  • Token: 123456789

Here is a sample for using this endpoint to connect with TypeScript:

import Client from '@triton-one/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:443';
const TOKEN = '123456789';
const client = new Client(ENDPOINT, TOKEN, {
grpcDefaultCompressionAlgorithm: 0, // 0 = gzip, 1 = zstd
});
await client.connect();

인증

Solana gRPC authenticates with an x-token metadata header sent on every request. The value is the Token from Endpoint and Token Configuration above.

Client libraries expose this differently:


  • 가기 그리고 파이썬 set the x-token metadata header directly. See 가기 그리고 파이썬.
  • Rust sets it with the client builder's x_token method. See Rust.
  • TypeScript client sends it when you pass the token to the Client constructor. See TypeScript.

Compression

The TypeScript example uses gzip. The 가기, Rust, 그리고 파이썬 setup pages show the equivalent client setting. Vixen uses accept-compression = "zstd". See Compression for per-language configuration.

Legacy port 10000

Port 10000 is a legacy Solana gRPC port and is metered from the uncompressed payload size. Use port 443 with compression for new and migrated connections. Port 10000 will sunset on October 1, 2026.

Migrating from Port 10000 to Port 443

Moving an existing connection from port 10000 to port 443 changes the port you connect to, the authentication method you send, and whether you negotiate compression.


  • Port: Change the port in your endpoint from 10000 ~에 443.
  • 인증: Basic Authentication is not supported on port 443. Use x-token authentication, as described in 인증 above.
  • Compression: Enable gzip or zstd on your client. See Compression for per-language configuration.

See Metered Data Pricing for how usage is metered on each port.

Metered Data Pricing

Solana gRPC is metered on the volume of data delivered. From October 1, 2026, metered usage is 15 credits per 0.1 MB.

Port 443 meters compressed response data when the client negotiates compression. Port 10000 is legacy and meters uncompressed response data.

Making Solana gRPC Requests

To make a request to Solana gRPC using different languages you check out below resources:

Compressed Filters (Cuckoo Filters)

Standard subscriptions have per-filter pubkey limits (10-50 depending on plan). Compressed filters encode pubkeys into a cuckoo filter data structure, bypassing these limits. See the compressed filters documentation for implementation details.

자료