Subnet Events
Last updated
Fetch the first-party chain-event stream for one subnet (registrations, stake, weights, axon, delegation, lifecycle, transfers), newest first, from the account_events store filtered by netuid. Optional ?kind= filter and ?block_start/?block_end (block-height range); ?limit (<=1000) / ?offset. Pass ?format=csv to download the page as CSV.
Path Parameters
The subnet's numeric id on the Bittensor network, as used by the chain itself.
0 <= valueQuery Parameters
Restrict the result to this kind, matched exactly against the value the rows carry. Open set, so a value nothing matches yields an empty result rather than an error. Omit for every kind.
Inclusive first block height of the range to read. Omit for an unbounded end. Must not be later than the range's upper bound.
0 <= valueInclusive last block height of the range to read. Omit for an unbounded end. Must not be earlier than the range's lower bound.
0 <= valueMaximum number of rows to return in one page (at most 1000). A larger value, or a non-positive one, is rejected with 400 invalid_query -- so a short page means the result set is exhausted, not that the server quietly capped you (#9916). Omitted, the server applies 100.
1 <= value <= 1000100Number of rows to skip before the page begins. Correct only in combination with the page size the response actually returned -- prefer cursor for anything beyond the first few pages, since a row inserted mid-scan shifts every later offset.
0 <= value <= 10000000Opaque pagination token: pass back the next_cursor from the previous response verbatim. Its contents are not stable and must not be parsed or constructed. Stable across inserts, unlike a row offset.
Response format override. Use csv to download the route rows as text/csv; json keeps the default response envelope.
"json"Value in
- "json"
- "csv"
Response Body
application/json
application/json
application/json
application/json
curl -X GET "https://example.com/api/v1/subnets/1/events"{ "data": { "event_count": 1, "events": [ { "block_number": 5000000, "event_kind": "example" } ], "limit": 1, "netuid": 7, "next_cursor": "example", "offset": 1, "schema_version": 1 }, "meta": { "artifact_path": "example", "cache": "short", "contract_version": "2026-06-29.1", "generated_at": "2026-06-01T00:00:00.000Z", "observed_through": "2026-06-01T00:00:00.000Z", "pagination": { "collection": "example", "cursor": 1, "limit": 1, "next_cursor": 1, "order": "asc", "returned": 1, "sort": "example", "total": 1 }, "published_at": "2026-06-01T00:00:00.000Z", "source": "live-cron-prober", "stale_contract": { "built_under": "example", "live": "example" } }, "ok": true, "schema_version": 1}