Nfi pallet
Derived from live runtime metadata on TRN root (pallet index 50, captured 2026-05-02). For prose-style documentation see Nfi on the curated reference side.
- Pallet index
50- Calls
- 6
- Events
- 9
- Errors
- 7
- Storage items
- 5
- Constants
- 3
Calls (extrinsics)
Nfi.set_relayer
See [
Pallet::set_relayer].
api.tx.nfi.set_relayer(relayer: [u8;20])| Argument | Type | Doc |
|---|---|---|
relayer | [u8;20] | T::AccountId |
Call index: 0
Nfi.set_fee_to
See [
Pallet::set_fee_to].
api.tx.nfi.set_fee_to(fee_to: Option<SeedPrimitivesSignatureAccountId20>)| Argument | Type | Doc |
|---|---|---|
fee_to | Option<SeedPrimitivesSignatureAccountId20> | Option<T::AccountId> |
Call index: 1
Nfi.set_fee_details
See [
Pallet::set_fee_details].
api.tx.nfi.set_fee_details(sub_type: {"_enum":["NFI"]}, fee_details: Option<PalletNfiFeeDetails>)| Argument | Type | Doc |
|---|---|---|
sub_type | {"_enum":["NFI"]} | NFISubType |
fee_details | Option<PalletNfiFeeDetails> | Option<FeeDetails<T::AccountId>> |
Call index: 2
Nfi.enable_nfi_for_trn_collection
See [
Pallet::enable_nfi_for_trn_collection].
api.tx.nfi.enable_nfi_for_trn_collection(collection_id: u32, sub_type: {"_enum":["NFI"]})| Argument | Type | Doc |
|---|---|---|
collection_id | u32 | CollectionUuid |
sub_type | {"_enum":["NFI"]} | NFISubType |
Call index: 3
Nfi.manual_data_request
See [
Pallet::manual_data_request].
api.tx.nfi.manual_data_request(token_id: {"chainId":"u64","collectionId":"PalletNfiGenericCollectionId","serialNumber":"PalletNfiGenericSerialNumber"}, sub_type: {"_enum":["NFI"]})| Argument | Type | Doc |
|---|---|---|
token_id | {"chainId":"u64","collectionId":"PalletNfiGenericCollectionId","serialNumber":"PalletNfiGenericSerialNumber"} | MultiChainTokenId<T::MaxByteLength> |
sub_type | {"_enum":["NFI"]} | NFISubType |
Call index: 4
Nfi.submit_nfi_data
See [
Pallet::submit_nfi_data].
api.tx.nfi.submit_nfi_data(token_id: {"chainId":"u64","collectionId":"PalletNfiGenericCollectionId","serialNumber":"PalletNfiGenericSerialNumber"}, data_item: {"_enum":{"NFI":"PalletNfiNfiMatrix"}})| Argument | Type | Doc |
|---|---|---|
token_id | {"chainId":"u64","collectionId":"PalletNfiGenericCollectionId","serialNumber":"PalletNfiGenericSerialNumber"} | MultiChainTokenId<T::MaxByteLength> |
data_item | {"_enum":{"NFI":"PalletNfiNfiMatrix"}} | NFIDataType<T::MaxDataLength> |
Call index: 5
Events
Nfi.DataRequestNew
Request for new NFI data creation on a token without existing data
| Field | Type | Doc |
|---|---|---|
sub_type | {"_enum":["NFI"]} | |
caller | [u8;20] | |
token_id | {"chainId":"u64","collectionId":"PalletNfiGenericCollectionId","serialNumber":"PalletNfiGenericSerialNumber"} |
Nfi.DataRequestExisting
Request for new NFI data creation on a token with pre-existing data
| Field | Type | Doc |
|---|---|---|
sub_type | {"_enum":["NFI"]} | |
caller | [u8;20] | |
token_id | {"chainId":"u64","collectionId":"PalletNfiGenericCollectionId","serialNumber":"PalletNfiGenericSerialNumber"} |
Nfi.DataSet
A new NFI storage item has been set
| Field | Type | Doc |
|---|---|---|
sub_type | {"_enum":["NFI"]} | |
token_id | {"chainId":"u64","collectionId":"PalletNfiGenericCollectionId","serialNumber":"PalletNfiGenericSerialNumber"} | |
data_item | {"_enum":{"NFI":"PalletNfiNfiMatrix"}} |
Nfi.DataRemoved
NFI storage has been removed for a token
| Field | Type | Doc |
|---|---|---|
token_id | {"chainId":"u64","collectionId":"PalletNfiGenericCollectionId","serialNumber":"PalletNfiGenericSerialNumber"} |
Nfi.FeeDetailsSet
New Fee details have been set
| Field | Type | Doc |
|---|---|---|
sub_type | {"_enum":["NFI"]} | |
fee_details | Option<PalletNfiFeeDetails> |
Nfi.FeeToSet
The network fee receiver address has been updated
| Field | Type | Doc |
|---|---|---|
account | Option<SeedPrimitivesSignatureAccountId20> |
Nfi.MintFeePaid
Additional mint fee has been paid to the receiver address
| Field | Type | Doc |
|---|---|---|
sub_type | {"_enum":["NFI"]} | |
who | [u8;20] | |
asset_id | u32 | |
total_fee | u128 |
Nfi.NfiEnabled
NFI compatibility enabled for a collection
| Field | Type | Doc |
|---|---|---|
sub_type | {"_enum":["NFI"]} | |
collection_id | {"_enum":{"U32":"u32","U64":"u64","U128":"u128","H160":"H160","H256":"H256","Bytes":"Bytes","Empty":"Null","U256":"U256"}} |
Nfi.RelayerSet
A new relayer has been set
| Field | Type | Doc |
|---|---|---|
account | [u8;20] |
Errors
Nfi.InvalidMintFee
The mint fee must be a valid integer above 0
Nfi.InvalidTokenFormat
The token format for TRN tokens is invalid
Nfi.NotEnabled
NFI storage is not enabled for this collection
Nfi.NotRelayer
The caller is not the relayer and does not have permission to perform this action
Nfi.NotCollectionOwner
No the owner of the collection
Nfi.NotTokenOwner
The caller is not the owner of the token
Nfi.NoToken
The token does not exist
Storage
Nfi.Relayer
The permission enabled relayer
await api.query.nfi.relayer()Returns: [u8;20]
Modifier: Optional
Nfi.MintFee
The extra cost to cover
await api.query.nfi.mintFee(key1)- Key:
{"_enum":["NFI"]}(hasher: Twox64Concat) - Returns:
{"assetId":"u32","amount":"u128","receiver":"SeedPrimitivesSignatureAccountId20"}
Modifier: Optional
Nfi.NfiData
await api.query.nfi.nfiData(key1, key2)- Key:
(PalletNfiMultiChainTokenId,PalletNfiNfiSubType)(hashers: Twox64Concat, Twox64Concat) - Returns:
{"_enum":{"NFI":"PalletNfiNfiMatrix"}}
Modifier: Optional
Nfi.NfiEnabled
Flag to enable NFI for collections across chains
await api.query.nfi.nfiEnabled(key1, key2)- Key:
((u64,PalletNfiGenericCollectionId),PalletNfiNfiSubType)(hashers: Twox64Concat, Twox64Concat) - Returns:
bool
Modifier: Default
Nfi.FeeTo
The pallet id for the tx fee pot
await api.query.nfi.feeTo()Returns: [u8;20]
Modifier: Optional
Constants
Nfi.NetworkFeePercentage
Percentage of sale price to charge for network fee
Type: Permill
SCALE-encoded value: 0x88130000
Nfi.MaxDataLength
Max length of data stored per token
Type: u32
SCALE-encoded value: 0x64000000
Nfi.MaxByteLength
Max length of bytes stored for MultiChainTokenId
Type: u32
SCALE-encoded value: 0xf4010000
wss://root.rootnet.live/archive/ws · captured 2026-05-02