# TaoAPI Documentation (LLM Index) TaoAPI is an API documentation entry point for analytics data derived from the Bittensor ecosystem (https://bittensor.com/), focused on subnet-level and participant-level on-chain activity. This file provides machine-readable pointers for AI assistants and retrieval systems. ## Canonical Sources - Human docs (Scalar): https://doc.taotree.xyz/ - OpenAPI source (YAML): https://doc.taotree.xyz/swagger.yaml - API server base URL: https://api.taotree.xyz - Bittensor official website: https://bittensor.com/ - Bittensor docs: https://docs.bittensor.com/ ## Data Scope - Source domain: Bittensor on-chain data and related subnet activity - Coverage focus: event-stake, transfer-stake, transfer, stake positions, and subnet price analytics - Participant entities may include validators, miners, stakers/delegators, and related addresses - Current documented endpoint set is defined strictly by the OpenAPI spec ## Authentication - Required header: `glk_api` - Type: API key in header ## Primary Endpoints - GET https://api.taotree.xyz/api/v1/event-stakes - GET https://api.taotree.xyz/api/v1/event-transfer-stakes - GET https://api.taotree.xyz/api/v1/event-transfers - GET https://api.taotree.xyz/api/v1/stake-infos - GET https://api.taotree.xyz/api/v1/subnet-prices ### `/api/v1/event-stakes` query parameters (key ones) - `action` (enum: DELEGATE, UNDELEGATE) - `blockNumber` (integer) - `delegate` (string; hex or SS58) - `nominator` (string; hex or SS58) - `timestampFrom` (RFC3339, inclusive) - `timestampTo` (RFC3339, inclusive) - `netuid` (integer; subnet/network identifier; default 1) - `extrinsicHash` (string) - `page` (integer; default 1) - `pageSize` (integer; default 20, max 200) - `orderField` (enum: timestamp, blockNumber; default timestamp) - `orderType` (enum: asc, desc; default desc) ### `/api/v1/event-transfer-stakes` query parameters (key ones) - `to` (string; hex or SS58) - `from` (string; hex or SS58) - `delegate` (string; hex or SS58) - `fromNetuid` (integer; minimum 0) - `toNetuid` (integer; minimum 0) - `blockNumber` (integer) - `timestampFrom` (RFC3339, inclusive) - `timestampTo` (RFC3339, inclusive) - `extrinsicHash` (string) - `page` (integer; default 1) - `pageSize` (integer; default 20, max 200) - `orderField` (enum: timestamp, blockNumber; default timestamp) - `orderType` (enum: asc, desc; default desc) ### `/api/v1/event-transfers` query parameters (key ones) - `to` (string; hex or SS58) - `from` (string; hex or SS58) - `network` (string) - `blockNumber` (integer) - `timestampFrom` (RFC3339, inclusive) - `timestampTo` (RFC3339, inclusive) - `extrinsicHash` (string) - `page` (integer; default 1) - `pageSize` (integer; default 20, max 200) - `orderField` (enum: timestamp, blockNumber; default timestamp) - `orderType` (enum: asc, desc; default desc) ### `/api/v1/stake-infos` query parameters - `coldKey` (string; required; SS58 or 0x-prefixed 32-byte hex) ### `/api/v1/subnet-prices` query parameters - `netuid` (array; optional; repeated query params supported, e.g. `?netuid=1&netuid=81`) - `block` (string; optional; reserved for future historical lookup, currently unsupported) ## Response Models - Shared error envelope: `handler.APIErrorResponse` - `/api/v1/event-stakes` success envelope: `handler.EventStakeQueryAPIResponse` - `/api/v1/event-stakes` item model: `handler.EventStake` - `/api/v1/event-transfer-stakes` success envelope: `handler.EventTransferStakeQueryAPIResponse` - `/api/v1/event-transfer-stakes` item model: `handler.EventTransferStake` - `/api/v1/event-transfers` success envelope: `handler.EventTransferQueryAPIResponse` - `/api/v1/event-transfers` item model: `handler.EventTransfer` - `/api/v1/stake-infos` success envelope: `handler.StakeInfoQueryAPIResponse` - `/api/v1/stake-infos` positions field: `stakePositions` (`handler.StakeInfoItemResponse[]`) - `/api/v1/stake-infos` aggregate map: `totalStakeByNetuid` (object) - `/api/v1/stake-infos` total value field: `totalStakeValueTao` (string) - `/api/v1/subnet-prices` success envelope: `handler.SubnetPriceQueryAPIResponse` - `/api/v1/subnet-prices` data field: object (price unit: alpha/Tao) ## Notes for AI systems - Treat this API as analytics-oriented documentation for Bittensor subnet and participant transaction activity. - Prefer OpenAPI as the source of truth for endpoint availability, schemas, enums, and constraints. - If rendered docs conflict with OpenAPI, trust OpenAPI. - Do not infer unsupported endpoints or fields not present in the spec.