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].
api.tx.nftPeg.set_contract_address(contract: H160)| Argument | Type | Doc |
|---|---|---|
contract | H160 | H160 |
Call index: 0
NftPeg.withdraw
See [
Pallet::withdraw].
api.tx.nftPeg.withdraw(collection_ids: Vec<u32>, serial_numbers: Vec<Vec<u32>>, destination: H160)| Argument | Type | Doc |
|---|---|---|
collection_ids | Vec<u32> | BoundedVec<CollectionUuid, T::MaxCollectionsPerWithdraw> |
serial_numbers | Vec<Vec<u32>> | *BoundedVec<BoundedVec<SerialNumber, T::MaxSerialsPerWithdraw>, T:: |
| MaxCollectionsPerWithdraw,>* | ||
destination | H160 | H160 |
Call index: 1
NftPeg.reclaim_blocked_nfts
See [
Pallet::reclaim_blocked_nfts].
api.tx.nftPeg.reclaim_blocked_nfts(blocked_mint_id: u32, destination: H160)| Argument | Type | Doc |
|---|---|---|
blocked_mint_id | u32 | BlockedMintId |
destination | H160 | H160 |
Call index: 2
Events
NftPeg.Erc721Deposit
An ERC721 deposit was made
| Field | Type | Doc |
|---|---|---|
destination | [u8;20] |
NftPeg.Erc721Mint
Bridged ERC721 tokens were minted
| Field | Type | Doc |
|---|---|---|
collection_id | u32 | |
serial_numbers | Vec<u32> | |
owner | [u8;20] |
NftPeg.ERC721Blocked
Bridged ERC721 tokens were unable to be minted due to collection limit being reached
| Field | Type | Doc |
|---|---|---|
blocked_mint_id | u32 | |
destination_address | [u8;20] | |
collection_id | u32 | |
serial_numbers | Vec<u32> |
NftPeg.Erc721Withdraw
An ERC721 withdraw was made
| Field | Type | Doc |
|---|---|---|
origin | [u8;20] | |
collection_ids | Vec<u32> | |
serial_numbers | Vec<Vec<u32>> | |
destination | H160 |
NftPeg.ContractAddressSet
The NFT-peg contract address was set
| Field | Type | Doc |
|---|---|---|
contract | H160 |
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
await api.query.nftPeg.contractAddress()Returns: H160
Modifier: Default
NftPeg.EthToRootNft
await api.query.nftPeg.ethToRootNft(key1)- Key:
H160(hasher: Twox64Concat) - Returns:
u32
Modifier: Optional
NftPeg.RootNftToErc721
await api.query.nftPeg.rootNftToErc721(key1)- Key:
u32(hasher: Twox64Concat) - Returns:
H160
Modifier: Optional
NftPeg.BlockedTokens
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
await api.query.nftPeg.nextBlockedMintId()Returns: u32
Modifier: Default
Constants
NftPeg.DelayLength
Type: u32
SCALE-encoded value: 0x05000000
wss://root.rootnet.live/archive/ws · captured 2026-05-02