Skip to content

Multisig pallet ​

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

Pallet index
28
Calls
4
Events
4
Errors
14
Storage items
1
Constants
3

Calls (extrinsics) ​

Multisig.as_multi_threshold_1 ​

See [Pallet::as_multi_threshold_1].

ts
api.tx.multisig.as_multi_threshold_1(other_signatories: Vec<SeedPrimitivesSignatureAccountId20>, call: Call)
ArgumentTypeDoc
other_signatoriesVec&lt;SeedPrimitivesSignatureAccountId20&gt;Vec<T::AccountId>
callCallBox<<T as Config>::RuntimeCall>

Call index: 0

Multisig.as_multi ​

See [Pallet::as_multi].

ts
api.tx.multisig.as_multi(threshold: u16, other_signatories: Vec<SeedPrimitivesSignatureAccountId20>, maybe_timepoint: Option<PalletMultisigTimepoint>, call: Call, max_weight: {"refTime":"Compact<u64>","proofSize":"Compact<u64>"})
ArgumentTypeDoc
thresholdu16u16
other_signatoriesVec&lt;SeedPrimitivesSignatureAccountId20&gt;Vec<T::AccountId>
maybe_timepointOption&lt;PalletMultisigTimepoint&gt;Option<Timepoint<BlockNumberFor<T>>>
callCallBox<<T as Config>::RuntimeCall>
max_weight{"refTime":"Compact&lt;u64&gt;","proofSize":"Compact&lt;u64&gt;"}Weight

Call index: 1

Multisig.approve_as_multi ​

See [Pallet::approve_as_multi].

ts
api.tx.multisig.approve_as_multi(threshold: u16, other_signatories: Vec<SeedPrimitivesSignatureAccountId20>, maybe_timepoint: Option<PalletMultisigTimepoint>, call_hash: [u8;32], max_weight: {"refTime":"Compact<u64>","proofSize":"Compact<u64>"})
ArgumentTypeDoc
thresholdu16u16
other_signatoriesVec&lt;SeedPrimitivesSignatureAccountId20&gt;Vec<T::AccountId>
maybe_timepointOption&lt;PalletMultisigTimepoint&gt;Option<Timepoint<BlockNumberFor<T>>>
call_hash[u8;32][u8; 32]
max_weight{"refTime":"Compact&lt;u64&gt;","proofSize":"Compact&lt;u64&gt;"}Weight

Call index: 2

Multisig.cancel_as_multi ​

See [Pallet::cancel_as_multi].

ts
api.tx.multisig.cancel_as_multi(threshold: u16, other_signatories: Vec<SeedPrimitivesSignatureAccountId20>, timepoint: {"height":"u32","index":"u32"}, call_hash: [u8;32])
ArgumentTypeDoc
thresholdu16u16
other_signatoriesVec&lt;SeedPrimitivesSignatureAccountId20&gt;Vec<T::AccountId>
timepoint{"height":"u32","index":"u32"}Timepoint<BlockNumberFor<T>>
call_hash[u8;32][u8; 32]

Call index: 3

Events ​

Multisig.NewMultisig ​

A new multisig operation has begun.

FieldTypeDoc
approving[u8;20]
multisig[u8;20]
call_hash[u8;32]

Multisig.MultisigApproval ​

A multisig operation has been approved by someone.

FieldTypeDoc
approving[u8;20]
timepoint{"height":"u32","index":"u32"}
multisig[u8;20]
call_hash[u8;32]

Multisig.MultisigExecuted ​

A multisig operation has been executed.

FieldTypeDoc
approving[u8;20]
timepoint{"height":"u32","index":"u32"}
multisig[u8;20]
call_hash[u8;32]
resultResult&lt;Null, SpRuntimeDispatchError&gt;

Multisig.MultisigCancelled ​

A multisig operation has been cancelled.

FieldTypeDoc
cancelling[u8;20]
timepoint{"height":"u32","index":"u32"}
multisig[u8;20]
call_hash[u8;32]

Errors ​

Multisig.MinimumThreshold ​

Threshold must be 2 or greater.

Multisig.AlreadyApproved ​

Call is already approved by this signatory.

Multisig.NoApprovalsNeeded ​

Call doesn't need any (more) approvals.

Multisig.TooFewSignatories ​

There are too few signatories in the list.

Multisig.TooManySignatories ​

There are too many signatories in the list.

Multisig.SignatoriesOutOfOrder ​

The signatories were provided out of order; they should be ordered.

Multisig.SenderInSignatories ​

The sender was contained in the other signatories; it shouldn't be.

Multisig.NotFound ​

Multisig operation not found when attempting to cancel.

Multisig.NotOwner ​

Only the account that originally created the multisig is able to cancel it.

Multisig.NoTimepoint ​

No timepoint was given, yet the multisig operation is already underway.

Multisig.WrongTimepoint ​

A different timepoint was given to the multisig operation that is underway.

Multisig.UnexpectedTimepoint ​

A timepoint was given, yet no multisig operation is underway.

Multisig.MaxWeightTooLow ​

The maximum weight information provided was too low.

Multisig.AlreadyStored ​

The data to be stored is already stored.

Storage ​

Multisig.Multisigs ​

The set of open multisig operations.

ts
await api.query.multisig.multisigs(key1, key2)
  • Key: (SeedPrimitivesSignatureAccountId20,[u8;32]) (hashers: Twox64Concat, Blake2_128Concat)
  • Returns: {"when":"PalletMultisigTimepoint","deposit":"u128","depositor":"SeedPrimitivesSignatureAccountId20","approvals":"Vec<SeedPrimitivesSignatureAccountId20>"}

Modifier: Optional

Constants ​

Multisig.DepositBase ​

The base amount of currency needed to reserve for creating a multisig execution or to store a dispatch call for later. This is held for an additional storage item whose value size is 4 + sizeof((BlockNumber, Balance, AccountId)) bytes and whose key size is 32 + sizeof(AccountId) bytes.

Type: u128
SCALE-encoded value: 0x74020000000000000000000000000000

Multisig.DepositFactor ​

The amount of currency needed per unit threshold when creating a multisig execution. This is held for adding 32 bytes more into a pre-existing storage value.

Type: u128
SCALE-encoded value: 0xc0000000000000000000000000000000

Multisig.MaxSignatories ​

The maximum amount of signatories allowed in the multisig.

Type: u32
SCALE-encoded value: 0x64000000

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.