This storage item was removed in v352

This storage item is no longer available in the current runtime. Existed from v195 to v352. Shown here for historical reference.

SubnetIdentities

Storage Removed Map v195 → v352 (removed)

Identity metadata for subnets.

Queried by: developersanalyticswalletssubnet owners

The Big Picture

Beyond technical parameters, subnets have identity - who runs them, what they do, how to learn more. SubnetIdentities stores this metadata on-chain, making subnet discovery and research possible. It's the 'about page' for each subnet, stored permanently on the blockchain.

Why This Matters

What does subnet 18 actually do? Who runs it? SubnetIdentities provides this context. Essential for understanding what you're registering on or delegating to.

Example Scenario

Query SubnetIdentities(netuid=1) returns { subnet_name: 'Apex', github_repo: 'opentensor/apex', subnet_contact: '@apex_team', ... }. Now you know the subnet's name and where to find documentation.

Common Questions

Is this required?
No, subnet identity is optional. Some subnets have rich metadata; others have none. Subnets without identity data are harder to research.
Who can update this?
Only the subnet owner can update SubnetIdentities for their subnet.
What fields are available?
Common fields: subnet_name, github_repo, subnet_contact, description. The exact schema may evolve - check the type definition for current fields.
Is this stored on-chain or IPFS?
Directly on-chain for simplicity. Keep descriptions concise as storage costs TAO.

Use Cases

  • Build subnet explorers and directories
  • Display subnet name and description in UIs
  • Find contact information for subnet operators
  • Research subnet purposes and documentation
  • Create searchable subnet catalogs

Purpose & Usage

Purpose

Store subnet name, description, contact info, and other human-readable metadata.

Common Query Patterns

  • Query by netuid for subnet information
  • Iterate all to build subnet directory
  • Display subnet details in UIs

Query Keys

#NameTypeDescription
1
key1
u16 key1 (u16)

Stored Value

SubnetIdentity

value (SubnetIdentity)

Code Examples

import { ApiPromise, WsProvider } from "@polkadot/api";
import { stringCamelCase } from "@polkadot/util";

const provider = new WsProvider("wss://entrypoint-finney.opentensor.ai:443");
const api = await ApiPromise.create({ provider });

// Query SubnetIdentities storage
const key1 = 0;

const result = await api.query
  [stringCamelCase("SubtensorModule")]
  [stringCamelCase("SubnetIdentities")](
  key1
);

console.log("SubnetIdentities:", result.toHuman());

Runtime Info

View Source
Pallet
SubtensorModule
Storage Kind
Map
First Version
v195
Removed In
v352