Doughnut pallet
Derived from live runtime metadata on TRN root (pallet index 48, captured 2026-05-02). For prose-style documentation see Doughnut on the curated reference side.
- Pallet index
48- Calls
- 4
- Events
- 4
- Errors
- 12
- Storage items
- 3
- Constants
- 0
Calls (extrinsics)
Doughnut.transact
See [
Pallet::transact].
api.tx.doughnut.transact(call: Call, doughnut: Bytes, nonce: u32, genesis_hash: H256, tip: u64, signature: Bytes)| Argument | Type | Doc |
|---|---|---|
call | Call | Box<<T as Config>::RuntimeCall> |
doughnut | Bytes | Vec<u8> |
nonce | u32 | u32 |
genesis_hash | H256 | T::Hash |
tip | u64 | u64 |
signature | Bytes | Vec<u8> |
Call index: 0
Doughnut.revoke_doughnut
See [
Pallet::revoke_doughnut].
api.tx.doughnut.revoke_doughnut(doughnut: Bytes, revoke: bool)| Argument | Type | Doc |
|---|---|---|
doughnut | Bytes | Vec<u8> |
revoke | bool | bool |
Call index: 1
Doughnut.revoke_holder
See [
Pallet::revoke_holder].
api.tx.doughnut.revoke_holder(holder: [u8;20], revoke: bool)| Argument | Type | Doc |
|---|---|---|
holder | [u8;20] | T::AccountId |
revoke | bool | bool |
Call index: 2
Doughnut.update_whitelisted_holders
See [
Pallet::update_whitelisted_holders].
api.tx.doughnut.update_whitelisted_holders(holder: [u8;20], add: bool)| Argument | Type | Doc |
|---|---|---|
holder | [u8;20] | T::AccountId |
add | bool | bool |
Call index: 3
Events
Doughnut.DoughnutCallExecuted
Doughnut transaction executed
| Field | Type | Doc |
|---|---|---|
doughnut | Bytes | |
call | Call | |
result | Result<Null, SpRuntimeDispatchError> |
Doughnut.WhitelistedHoldersUpdated
Whitelisted holders updated
| Field | Type | Doc |
|---|---|---|
holder | [u8;20] | |
enabled | bool |
Doughnut.DoughnutRevokeStateUpdated
Doughnut revoke state updated
| Field | Type | Doc |
|---|---|---|
doughnut_hash | [u8;32] | |
revoked | bool |
Doughnut.HolderRevokeStateUpdated
Holder revocation updated
| Field | Type | Doc |
|---|---|---|
issuer | [u8;20] | |
holder | [u8;20] | |
revoked | bool |
Errors
Doughnut.DoughnutDecodeFailed
Doguhnut decode failed.
Doughnut.UnsupportedDoughnutVersion
Unsupported doughnut version
Doughnut.DoughnutVerifyFailed
Doughnut verify failed
Doughnut.UnauthorizedSender
Sender is not authorized to use the doughnut
Doughnut.CallerNotIssuer
Cannot revoke doughnut that does was issued by another account
Doughnut.DoughnutRevoked
The doughnut has been revoked by the issuer
Doughnut.HolderRevoked
The holder address has been revoked by the issuer
Doughnut.ToppingDecodeFailed
Topping decode failed.
Doughnut.TRNDomainNotfound
Unable to find TRN domain.
Doughnut.ToppingPermissionDenied
Topping permissions denied.
Doughnut.UnsupportedInnerCall
Inner call is not whitelisted
Doughnut.HolderNotWhitelisted
Holder not whitelisted
Storage
Doughnut.BlockedDoughnuts
Storage map for revoked doughnut information
await api.query.doughnut.blockedDoughnuts(key1)- Key:
[u8;32](hasher: Twox64Concat) - Returns:
bool
Modifier: Default
Doughnut.BlockedHolders
Double map from issuer to blocked holder
await api.query.doughnut.blockedHolders(key1, key2)- Key:
(SeedPrimitivesSignatureAccountId20,SeedPrimitivesSignatureAccountId20)(hashers: Twox64Concat, Twox64Concat) - Returns:
bool
Modifier: Default
Doughnut.WhitelistedHolders
Storage map for whitelisted holder information
await api.query.doughnut.whitelistedHolders(key1)- Key:
[u8;20](hasher: Twox64Concat) - Returns:
bool
Modifier: Default
wss://root.rootnet.live/archive/ws · captured 2026-05-02