Skip to content

Recovery pallet ​

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

Pallet index
33
Calls
9
Events
6
Errors
16
Storage items
3
Constants
4

Calls (extrinsics) ​

Recovery.as_recovered ​

See [Pallet::as_recovered].

ts
api.tx.recovery.as_recovered(account: [u8;20], call: Call)
ArgumentTypeDoc
account[u8;20]AccountIdLookupOf<T>
callCallBox<<T as Config>::RuntimeCall>

Call index: 0

Recovery.set_recovered ​

See [Pallet::set_recovered].

ts
api.tx.recovery.set_recovered(lost: [u8;20], rescuer: [u8;20])
ArgumentTypeDoc
lost[u8;20]AccountIdLookupOf<T>
rescuer[u8;20]AccountIdLookupOf<T>

Call index: 1

Recovery.create_recovery ​

See [Pallet::create_recovery].

ts
api.tx.recovery.create_recovery(friends: Vec<SeedPrimitivesSignatureAccountId20>, threshold: u16, delay_period: u32)
ArgumentTypeDoc
friendsVec&lt;SeedPrimitivesSignatureAccountId20&gt;Vec<T::AccountId>
thresholdu16u16
delay_periodu32BlockNumberFor<T>

Call index: 2

Recovery.initiate_recovery ​

See [Pallet::initiate_recovery].

ts
api.tx.recovery.initiate_recovery(account: [u8;20])
ArgumentTypeDoc
account[u8;20]AccountIdLookupOf<T>

Call index: 3

Recovery.vouch_recovery ​

See [Pallet::vouch_recovery].

ts
api.tx.recovery.vouch_recovery(lost: [u8;20], rescuer: [u8;20])
ArgumentTypeDoc
lost[u8;20]AccountIdLookupOf<T>
rescuer[u8;20]AccountIdLookupOf<T>

Call index: 4

Recovery.claim_recovery ​

See [Pallet::claim_recovery].

ts
api.tx.recovery.claim_recovery(account: [u8;20])
ArgumentTypeDoc
account[u8;20]AccountIdLookupOf<T>

Call index: 5

Recovery.close_recovery ​

See [Pallet::close_recovery].

ts
api.tx.recovery.close_recovery(rescuer: [u8;20])
ArgumentTypeDoc
rescuer[u8;20]AccountIdLookupOf<T>

Call index: 6

Recovery.remove_recovery ​

See [Pallet::remove_recovery].

ts
api.tx.recovery.remove_recovery()

Call index: 7

Recovery.cancel_recovered ​

See [Pallet::cancel_recovered].

ts
api.tx.recovery.cancel_recovered(account: [u8;20])
ArgumentTypeDoc
account[u8;20]AccountIdLookupOf<T>

Call index: 8

Events ​

Recovery.RecoveryCreated ​

A recovery process has been set up for an account.

FieldTypeDoc
account[u8;20]

Recovery.RecoveryInitiated ​

A recovery process has been initiated for lost account by rescuer account.

FieldTypeDoc
lost_account[u8;20]
rescuer_account[u8;20]

Recovery.RecoveryVouched ​

A recovery process for lost account by rescuer account has been vouched for by sender.

FieldTypeDoc
lost_account[u8;20]
rescuer_account[u8;20]
sender[u8;20]

Recovery.RecoveryClosed ​

A recovery process for lost account by rescuer account has been closed.

FieldTypeDoc
lost_account[u8;20]
rescuer_account[u8;20]

Recovery.AccountRecovered ​

Lost account has been successfully recovered by rescuer account.

FieldTypeDoc
lost_account[u8;20]
rescuer_account[u8;20]

Recovery.RecoveryRemoved ​

A recovery process has been removed for an account.

FieldTypeDoc
lost_account[u8;20]

Errors ​

Recovery.NotAllowed ​

User is not allowed to make a call on behalf of this account

Recovery.ZeroThreshold ​

Threshold must be greater than zero

Recovery.NotEnoughFriends ​

Friends list must be greater than zero and threshold

Recovery.MaxFriends ​

Friends list must be less than max friends

Recovery.NotSorted ​

Friends list must be sorted and free of duplicates

Recovery.NotRecoverable ​

This account is not set up for recovery

Recovery.AlreadyRecoverable ​

This account is already set up for recovery

Recovery.AlreadyStarted ​

A recovery process has already started for this account

Recovery.NotStarted ​

A recovery process has not started for this rescuer

Recovery.NotFriend ​

This account is not a friend who can vouch

Recovery.DelayPeriod ​

The friend must wait until the delay period to vouch for this recovery

Recovery.AlreadyVouched ​

This user has already vouched for this recovery

Recovery.Threshold ​

The threshold for recovering this account has not been met

Recovery.StillActive ​

There are still active recovery attempts that need to be closed

Recovery.AlreadyProxy ​

This account is already set up for recovery

Recovery.BadState ​

Some internal state is broken.

Storage ​

Recovery.Recoverable ​

The set of recoverable accounts and their recovery configuration.

ts
await api.query.recovery.recoverable(key1)
  • Key: [u8;20] (hasher: Twox64Concat)
  • Returns: {"delayPeriod":"u32","deposit":"u128","friends":"Vec<SeedPrimitivesSignatureAccountId20>","threshold":"u16"}

Modifier: Optional

Recovery.ActiveRecoveries ​

Active recovery attempts. First account is the account to be recovered, and the second account is the user trying to recover the account.

ts
await api.query.recovery.activeRecoveries(key1, key2)
  • Key: (SeedPrimitivesSignatureAccountId20,SeedPrimitivesSignatureAccountId20) (hashers: Twox64Concat, Twox64Concat)
  • Returns: {"created":"u32","deposit":"u128","friends":"Vec<SeedPrimitivesSignatureAccountId20>"}

Modifier: Optional

Recovery.Proxy ​

The list of allowed proxy accounts. Map from the user who can access it to the recovered account.

ts
await api.query.recovery.proxy(key1)
  • Key: [u8;20] (hasher: Blake2_128Concat)
  • Returns: [u8;20]

Modifier: Optional

Constants ​

Recovery.ConfigDepositBase ​

The base amount of currency needed to reserve for creating a recovery configuration. This is held for an additional storage item whose value size is 2 + sizeof(BlockNumber, Balance) bytes.

Type: u128
SCALE-encoded value: 0x0a000000000000000000000000000000

Recovery.FriendDepositFactor ​

The amount of currency needed per additional user when creating a recovery configuration. This is held for adding sizeof(AccountId) bytes more into a pre-existing storage value.

Type: u128
SCALE-encoded value: 0x01000000000000000000000000000000

Recovery.MaxFriends ​

The maximum amount of friends allowed in a recovery configuration. NOTE: The threshold programmed in this Pallet uses u16, so it does not really make sense to have a limit here greater than u16::MAX. But also, that is a lot more than you should probably set this value to anyway...

Type: u32
SCALE-encoded value: 0x03000000

Recovery.RecoveryDeposit ​

The base amount of currency needed to reserve for starting a recovery. This is primarily held for deterring malicious recovery attempts, and should have a value large enough that a bad actor would choose not to place this deposit. It also acts to fund additional storage item whose value size is sizeof(BlockNumber, Balance + T * AccountId) bytes. Where T is a configurable threshold.

Type: u128
SCALE-encoded value: 0x0a000000000000000000000000000000

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.