Protobuf request
Omit transforms for full blocks. For EVM filtering, encode a sf.ethereum.transform.v1.CombinedFilter in a google.protobuf.Any and include it in transforms.
1syntax = "proto3";2package sf.firehose.v2;3import "google/protobuf/any.proto";45service Stream {6 rpc Blocks(Request) returns (stream Response);7}89message Request {10 int64 start_block_num = 1;11 string cursor = 2;12 uint64 stop_block_num = 3;13 bool final_blocks_only = 4;14 repeated google.protobuf.Any transforms = 10;15}
start_block_num- Inclusive start. Negative values are relative to the head; -1 starts one block behind the current head. Omitted or 0 starts at the first streamable block.
cursor- Resume after a previously received response. Takes precedence over start_block_num; keep the same network and filter configuration.
stop_block_num- Inclusive stop block. Omit or use 0 for an open-ended stream.
final_blocks_only- false receives new blocks with possible undo steps. true waits for final blocks.
transforms- Optional list of protobuf Any messages containing server-side transforms.