Skip to content

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].

ts
api.tx.nfi.set_relayer(relayer: [u8;20])
ArgumentTypeDoc
relayer[u8;20]T::AccountId

Call index: 0

Nfi.set_fee_to ​

See [Pallet::set_fee_to].

ts
api.tx.nfi.set_fee_to(fee_to: Option<SeedPrimitivesSignatureAccountId20>)
ArgumentTypeDoc
fee_toOption&lt;SeedPrimitivesSignatureAccountId20&gt;Option<T::AccountId>

Call index: 1

Nfi.set_fee_details ​

See [Pallet::set_fee_details].

ts
api.tx.nfi.set_fee_details(sub_type: {"_enum":["NFI"]}, fee_details: Option<PalletNfiFeeDetails>)
ArgumentTypeDoc
sub_type{"_enum":["NFI"]}NFISubType
fee_detailsOption&lt;PalletNfiFeeDetails&gt;Option<FeeDetails<T::AccountId>>

Call index: 2

Nfi.enable_nfi_for_trn_collection ​

See [Pallet::enable_nfi_for_trn_collection].

ts
api.tx.nfi.enable_nfi_for_trn_collection(collection_id: u32, sub_type: {"_enum":["NFI"]})
ArgumentTypeDoc
collection_idu32CollectionUuid
sub_type{"_enum":["NFI"]}NFISubType

Call index: 3

Nfi.manual_data_request ​

See [Pallet::manual_data_request].

ts
api.tx.nfi.manual_data_request(token_id: {"chainId":"u64","collectionId":"PalletNfiGenericCollectionId","serialNumber":"PalletNfiGenericSerialNumber"}, sub_type: {"_enum":["NFI"]})
ArgumentTypeDoc
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].

ts
api.tx.nfi.submit_nfi_data(token_id: {"chainId":"u64","collectionId":"PalletNfiGenericCollectionId","serialNumber":"PalletNfiGenericSerialNumber"}, data_item: {"_enum":{"NFI":"PalletNfiNfiMatrix"}})
ArgumentTypeDoc
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

FieldTypeDoc
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

FieldTypeDoc
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

FieldTypeDoc
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

FieldTypeDoc
token_id{"chainId":"u64","collectionId":"PalletNfiGenericCollectionId","serialNumber":"PalletNfiGenericSerialNumber"}

Nfi.FeeDetailsSet ​

New Fee details have been set

FieldTypeDoc
sub_type{"_enum":["NFI"]}
fee_detailsOption&lt;PalletNfiFeeDetails&gt;

Nfi.FeeToSet ​

The network fee receiver address has been updated

FieldTypeDoc
accountOption&lt;SeedPrimitivesSignatureAccountId20&gt;

Nfi.MintFeePaid ​

Additional mint fee has been paid to the receiver address

FieldTypeDoc
sub_type{"_enum":["NFI"]}
who[u8;20]
asset_idu32
total_feeu128

Nfi.NfiEnabled ​

NFI compatibility enabled for a collection

FieldTypeDoc
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

FieldTypeDoc
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

ts
await api.query.nfi.relayer()

Returns: [u8;20]

Modifier: Optional

Nfi.MintFee ​

The extra cost to cover

ts
await api.query.nfi.mintFee(key1)
  • Key: {"_enum":["NFI"]} (hasher: Twox64Concat)
  • Returns: {"assetId":"u32","amount":"u128","receiver":"SeedPrimitivesSignatureAccountId20"}

Modifier: Optional

Nfi.NfiData ​

ts
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

ts
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

ts
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

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.