ListFeeds - Discover V3 Raw Feeds
Discover the raw feeds available from a Hyperliquid V3 gRPC endpoint, including supported cursors and server-side filter fields.
ListFeeds returns the V3 raw block-envelope feeds available on the selected endpoint. Call it during startup or capability refresh instead of assuming that every declared raw RPC is available.
Method signature
rpc ListFeeds(ListFeedsRequest) returns (ListFeedsResponse) {}The authenticated request has no parameters:
grpcurl -format json \
-proto v3.proto \
-H "x-api-key: ${DWELLIR_API_KEY}" \
-d '{}' \
"${HYPERLIQUID_GRPC_ENDPOINT}" \
hyperliquid_l1_gateway.v3.HyperliquidL1Gateway/ListFeedsCurrent feed inventory
A typical response lists these six raw feeds:
feeds: {
id: "blocks"
source: "replica_cmds"
position_kinds: POSITION_KIND_TIMESTAMP
position_kinds: POSITION_KIND_BLOCK_NUMBER
}
feeds: {
id: "fills"
source: "node_fills_by_block"
position_kinds: POSITION_KIND_TIMESTAMP
position_kinds: POSITION_KIND_BLOCK_NUMBER
filter_fields: "users"
filter_fields: "coins"
}
feeds: {
id: "misc-events"
source: "misc_events_by_block"
position_kinds: POSITION_KIND_TIMESTAMP
position_kinds: POSITION_KIND_BLOCK_NUMBER
}
feeds: {
id: "order-statuses"
source: "node_order_statuses_by_block"
position_kinds: POSITION_KIND_TIMESTAMP
position_kinds: POSITION_KIND_BLOCK_NUMBER
filter_fields: "users"
filter_fields: "coins"
}
feeds: {
id: "raw-book-diffs"
source: "node_raw_book_diffs_by_block"
position_kinds: POSITION_KIND_TIMESTAMP
position_kinds: POSITION_KIND_BLOCK_NUMBER
filter_fields: "users"
filter_fields: "coins"
}
feeds: {
id: "twap-statuses"
source: "node_twap_statuses_by_block"
position_kinds: POSITION_KIND_TIMESTAMP
position_kinds: POSITION_KIND_BLOCK_NUMBER
filter_fields: "users"
filter_fields: "coins"
}Registries can vary by endpoint. Call ListFeeds at runtime and refresh the inventory after changing endpoints.
Response fields
| Field | Meaning |
|---|---|
feeds[].id | Stable feed identifier used by the gateway |
feeds[].source | Stable source identifier for the feed |
feeds[].position_kinds | Cursor kinds accepted by that feed |
feeds[].filter_fields | Valid V3 FieldFilter.field values; empty means the feed is not filterable |
Order-book snapshots are intentionally outside the registry because they are generated from periodic ABCI state rather than exposed as a block-envelope feed. StreamOrderbookSnapshots and GetOrderbookSnapshot are the public methods for accessing them. Snapshot availability and maximum response size vary by endpoint. Oversized responses return RESOURCE_EXHAUSTED.
Errors
UNAUTHENTICATEDorPERMISSION_DENIEDmeans the request did not include usable credentials.- Transport failures and
UNAVAILABLEshould be handled with a bounded retry; keep the last known capabilities only if that fallback is acceptable for your application.
See the gRPC overview for positioning, filtering, retention, and recovery semantics shared by raw methods.