Yellowstone

API Reference

The SubscribeRequest message is the foundation of all Yellowstone gRPC subscriptions. It defines what data you want to receive and how you want to filter it.

Request Structure

SubscribeRequest
Protobuf
message SubscribeRequest {
  map<string, SubscribeRequestFilterAccounts> accounts = 1;
  map<string, SubscribeRequestFilterSlots> slots = 2;
  map<string, SubscribeRequestFilterTransactions> transactions = 3;
  map<string, SubscribeRequestFilterTransactions> transactions_status = 10;
  map<string, SubscribeRequestFilterBlocks> blocks = 4;
  map<string, SubscribeRequestFilterBlocksMeta> blocks_meta = 5;
  map<string, SubscribeRequestFilterEntry> entry = 8;
  optional CommitmentLevel commitment = 6;
  repeated SubscribeRequestAccountsDataSlice accounts_data_slice = 7;
  optional SubscribeRequestPing ping = 9;
  optional uint64 from_slot = 11;
}

Commitment Levels

Controls when updates are sent based on Solana's confirmation status.

PROCESSED0

Fastest updates, can be rolled back

CONFIRMED1

Supermajority vote received

FINALIZED2

Fully finalized, cannot be rolled back

from_slot is not supported

FluxRPC does not currently support historical replay using from_slot.

Response Structure

The server responds with a stream of SubscribeUpdate messages. The filters field contains the identifiers of the filters that matched each update.

SubscribeUpdate
Protobuf
message SubscribeUpdate {
  repeated string filters = 1;
  oneof update_oneof {
    SubscribeUpdateAccount account = 2;
    SubscribeUpdateSlot slot = 3;
    SubscribeUpdateTransaction transaction = 4;
    SubscribeUpdateTransactionStatus transaction_status = 10;
    SubscribeUpdateBlock block = 5;
    SubscribeUpdatePing ping = 6;
    SubscribeUpdatePong pong = 9;
    SubscribeUpdateBlockMeta block_meta = 7;
    SubscribeUpdateEntry entry = 8;
  }
  google.protobuf.Timestamp created_at = 11;
}