CodeInfoOf

Storage Map v334 → v411 Changed in v411

Metadata about stored contract code.

Explore chain
Queried by: developersanalytics

The Big Picture

Metadata about uploaded code: who uploaded it (and can remove it), how much deposit is held, and how many contract instances reference it. Essential for code lifecycle management.

Use Cases

  • Check if code hash exists on-chain
  • Find code owner for removal
  • Analyze code usage (refcount)
  • Track deposit amounts

From Chain Metadata

A mapping from a contract's code hash to its code info.

Purpose & Usage

Purpose

Tracks code properties like owner, deposit, and reference count.

Common Query Patterns

  • Query by code_hash for code metadata
  • Check refcount before code removal
  • Verify code exists

Query Keys

#NameTypeDescription
1
codeHash
raw: key1
[u8; 32] [32] key1 ([u8; 32])

Stored Value

value (CodeInfo)

Relationships

Code Examples

import { createClient, Binary } from "polkadot-api";
import { getWsProvider } from "polkadot-api/ws";
import { sub } from "@polkadot-api/descriptors"; // generated by: npx papi add sub -w wss://entrypoint-finney.opentensor.ai:443

const client = createClient(getWsProvider("wss://entrypoint-finney.opentensor.ai:443"));
const api = client.getTypedApi(sub);

// Query CodeInfoOf storage
const key1 = "0x0000000000000000000000000000000000000000000000000000000000000000";

const result = await api.query.Contracts.CodeInfoOf.getValue(key1);
console.log("CodeInfoOf:", result);

Version History

v334 block 6,811,690 Added
v353–v360 · runtime versions skipped on chain (never deployed)
v361 block 7,063,679 Internal re-bind
v363–v364 · runtime versions skipped on chain (never deployed)
v365 block 7,135,419 Internal re-bind
v378–v384 · runtime versions skipped on chain (never deployed)
v385 block 7,782,670 Internal re-bind
v386–v390 · runtime versions skipped on chain (never deployed)
v391 block 7,782,857 Internal re-bind
v394–v400 · runtime versions skipped on chain (never deployed)
v401 block 8,036,576 Internal re-bind
v403–v410 · runtime versions skipped on chain (never deployed)
v411 block 8,283,784 Internal re-bind Current

Runtime Info

Pallet
Contracts
Storage Kind
Map
First Version
v334
Current Version
v411