Skip to content

Session pallet ​

Derived from live runtime metadata on TRN root (pallet index 11, captured 2026-05-02). For prose-style documentation see Session on the curated reference side.

Pallet index
11
Calls
2
Events
1
Errors
5
Storage items
7
Constants
0

Calls (extrinsics) ​

Session.set_keys ​

See [Pallet::set_keys].

ts
api.tx.session.set_keys(keys: {"babe":"SpConsensusBabeAppPublic","imOnline":"PalletImOnlineSr25519AppSr25519Public","grandpa":"SpConsensusGrandpaAppPublic","ethy":"SeedPrimitivesEthyCryptoAppCryptoPublic"}, proof: Bytes)
ArgumentTypeDoc
keys{"babe":"SpConsensusBabeAppPublic","imOnline":"PalletImOnlineSr25519AppSr25519Public","grandpa":"SpConsensusGrandpaAppPublic","ethy":"SeedPrimitivesEthyCryptoAppCryptoPublic"}T::Keys
proofBytesVec<u8>

Call index: 0

Session.purge_keys ​

See [Pallet::purge_keys].

ts
api.tx.session.purge_keys()

Call index: 1

Events ​

Session.NewSession ​

New session has happened. Note that the argument is the session index, not the block number as the type might suggest.

FieldTypeDoc
session_indexu32

Errors ​

Session.InvalidProof ​

Invalid ownership proof.

Session.NoAssociatedValidatorId ​

No associated validator ID for account.

Session.DuplicatedKey ​

Registered duplicate key.

Session.NoKeys ​

No keys are associated with this account.

Session.NoAccount ​

Key setting account is not live, so it's impossible to associate keys.

Storage ​

Session.Validators ​

The current set of validators.

ts
await api.query.session.validators()

Returns: Vec<SeedPrimitivesSignatureAccountId20>

Modifier: Default

Session.CurrentIndex ​

Current index of the session.

ts
await api.query.session.currentIndex()

Returns: u32

Modifier: Default

Session.QueuedChanged ​

True if the underlying economic identities or weighting behind the validators has changed in the queued validator set.

ts
await api.query.session.queuedChanged()

Returns: bool

Modifier: Default

Session.QueuedKeys ​

The queued keys for the next session. When the next session begins, these keys will be used to determine the validator's session keys.

ts
await api.query.session.queuedKeys()

Returns: Vec<(SeedPrimitivesSignatureAccountId20,SeedRuntimeSessionKeys)>

Modifier: Default

Session.DisabledValidators ​

Indices of disabled validators. The vec is always kept sorted so that we can find whether a given validator is disabled using binary search. It gets cleared when on_session_ending returns a new set of identities.

ts
await api.query.session.disabledValidators()

Returns: Vec<u32>

Modifier: Default

Session.NextKeys ​

The next session keys for a validator.

ts
await api.query.session.nextKeys(key1)
  • Key: [u8;20] (hasher: Twox64Concat)
  • Returns: {"babe":"SpConsensusBabeAppPublic","imOnline":"PalletImOnlineSr25519AppSr25519Public","grandpa":"SpConsensusGrandpaAppPublic","ethy":"SeedPrimitivesEthyCryptoAppCryptoPublic"}

Modifier: Optional

Session.KeyOwner ​

The owner of a key. The key is the KeyTypeId + the encoded key.

ts
await api.query.session.keyOwner(key1)
  • Key: (SpCoreCryptoKeyTypeId,Bytes) (hasher: Twox64Concat)
  • Returns: [u8;20]

Modifier: Optional

Source: live chain metadata from wss://root.rootnet.live/archive/ws · captured 2026-05-02

Curated independently by Codeology. Source-attributed reference for The Root Network. Not affiliated with Futureverse / TRN Labs.