Yellowstone gRPC - Slot Subscriptions

Track slot progression and chain state with Yellowstone gRPC slot subscriptions for confirmation-aware applications.

Filter Fields

filter_by_commitment optional bool

When true, only receive updates matching the request's commitment level. Reduces update volume.

interslot_updates optional bool

When true, receive updates during slot progression for a more granular view of the slot lifecycle.

Filter Definition

Request Filter Protobuf

message SubscribeRequestFilterSlots {
  optional bool filter_by_commitment = 1;
  optional bool interslot_updates = 2;
}

Response Structure

Response Protobuf

message SubscribeUpdateSlot {
  uint64 slot = 1;
  optional uint64 parent = 2;
  SlotStatus status = 3;
  optional string dead_error = 4;
}
enum SlotStatus {
  SLOT_PROCESSED = 0;
  SLOT_CONFIRMED = 1;
  SLOT_FINALIZED = 2;
  SLOT_FIRST_SHRED_RECEIVED = 3;
  SLOT_COMPLETED = 4;
  SLOT_CREATED_BANK = 5;
  SLOT_DEAD = 6;
}

Example

Stream confirmed slot updates Rust

SubscribeRequest {
    slots: HashMap::from([(
        "confirmed_slots".to_string(),
        SubscribeRequestFilterSlots {
            filter_by_commitment: Some(true),
        },
    )]),
    commitment: Some(CommitmentLevel::Confirmed as i32),
    ..Default::default()
}

Open the section overview for the broader context, live navigation, and interactive code examples.

Continue in this section

← Back to documentation home