Skip to content

NftPeg pallet ​

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

Pallet index
30
Calls
3
Events
5
Errors
12
Storage items
5
Constants
1

Calls (extrinsics) ​

NftPeg.set_contract_address ​

See [Pallet::set_contract_address].

ts
api.tx.nftPeg.set_contract_address(contract: H160)
ArgumentTypeDoc
contractH160H160

Call index: 0

NftPeg.withdraw ​

See [Pallet::withdraw].

ts
api.tx.nftPeg.withdraw(collection_ids: Vec<u32>, serial_numbers: Vec<Vec<u32>>, destination: H160)
ArgumentTypeDoc
collection_idsVec&lt;u32&gt;BoundedVec<CollectionUuid, T::MaxCollectionsPerWithdraw>
serial_numbersVec&lt;Vec&lt;u32&gt;&gt;*BoundedVec<BoundedVec<SerialNumber, T::MaxSerialsPerWithdraw>, T::
MaxCollectionsPerWithdraw,>*
destinationH160H160

Call index: 1

NftPeg.reclaim_blocked_nfts ​

See [Pallet::reclaim_blocked_nfts].

ts
api.tx.nftPeg.reclaim_blocked_nfts(blocked_mint_id: u32, destination: H160)
ArgumentTypeDoc
blocked_mint_idu32BlockedMintId
destinationH160H160

Call index: 2

Events ​

NftPeg.Erc721Deposit ​

An ERC721 deposit was made

FieldTypeDoc
destination[u8;20]

NftPeg.Erc721Mint ​

Bridged ERC721 tokens were minted

FieldTypeDoc
collection_idu32
serial_numbersVec&lt;u32&gt;
owner[u8;20]

NftPeg.ERC721Blocked ​

Bridged ERC721 tokens were unable to be minted due to collection limit being reached

FieldTypeDoc
blocked_mint_idu32
destination_address[u8;20]
collection_idu32
serial_numbersVec&lt;u32&gt;

NftPeg.Erc721Withdraw ​

An ERC721 withdraw was made

FieldTypeDoc
origin[u8;20]
collection_idsVec&lt;u32&gt;
serial_numbersVec&lt;Vec&lt;u32&gt;&gt;
destinationH160

NftPeg.ContractAddressSet ​

The NFT-peg contract address was set

FieldTypeDoc
contractH160

Errors ​

NftPeg.ExceedsMaxAddresses ​

Send more addresses than are allowed

NftPeg.ExceedsMaxTokens ​

Sent more tokens than are allowed

NftPeg.InvalidAbiEncoding ​

The abi data passed in could not be decoded

NftPeg.InvalidAbiPrefix ​

The prefix uint in the abi encoded data was invalid

NftPeg.NoCollectionFound ​

No collection info exists

NftPeg.NoMappedTokenExists ​

No mapped token was stored for bridging the token back to the bridged chain

NftPeg.NoPermissionToBridge ​

Tried to bridge a token that originates from Root, which is not yet supported

NftPeg.StateSyncDisabled ​

The state sync decoding feature is not implemented

NftPeg.TokenListLengthMismatch ​

Multiple tokens were passed from contract, but amounts were unqeual per each array

NftPeg.ExceedsMaxVecLength ​

The length of the given vec exceeds the maximal allowed length limit

NftPeg.NoBlockedTokensFound ​

No blocked tokens for the given id

NftPeg.NotBlockedTokenDestination ​

Blocked tokens can only be reclaimed by the destination address

Storage ​

NftPeg.ContractAddress ​

ts
await api.query.nftPeg.contractAddress()

Returns: H160

Modifier: Default

NftPeg.EthToRootNft ​

ts
await api.query.nftPeg.ethToRootNft(key1)
  • Key: H160 (hasher: Twox64Concat)
  • Returns: u32

Modifier: Optional

NftPeg.RootNftToErc721 ​

ts
await api.query.nftPeg.rootNftToErc721(key1)
  • Key: u32 (hasher: Twox64Concat)
  • Returns: H160

Modifier: Optional

NftPeg.BlockedTokens ​

ts
await api.query.nftPeg.blockedTokens(key1)
  • Key: u32 (hasher: Twox64Concat)
  • Returns: {"collectionId":"u32","destinationAddress":"SeedPrimitivesSignatureAccountId20","serialNumbers":"Vec<u32>"}

Modifier: Optional

NftPeg.NextBlockedMintId ​

The next available BlockedMintId

ts
await api.query.nftPeg.nextBlockedMintId()

Returns: u32

Modifier: Default

Constants ​

NftPeg.DelayLength ​

Type: u32
SCALE-encoded value: 0x05000000

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.