Plugins
Permanent Transfer Plugin
Overview
The Permanent Transfer Delegate Plugin is a Permanent
plugin that will always be present on the MPL Core Asset or MPL Core Collection to which it is added. A permanent plugin can only be added at the time of Asset or Collection creation. This plugin allows the plugin authority to transfer the asset at any point to another address.
The Permanent Transfer Plugin will work in areas such as:
- Gaming event triggers the transfer of a users Asset to another wallet.
Works With
MPL Core Asset | ✅ |
MPL Core Collection | ✅ |
Behaviours
- Asset: Allows transferring of the Asset using the delegated address.
- Collection: Allows transferring of any Asset in the collection using the collection authority. It does not transfer all at once.
Arguments
Arg | Value |
---|---|
frozen | bool |
Creating a MPL Core Asset with a Permanent Transfer Plugin
## Creating a MPL Core Asset with a Permanent Transfer Plugin
import { publicKey } from '@metaplex-foundation/umi'
import { create } from '@metaplex-foundation/mpl-core'
const assetSigner = generateSigner(umi)
const delegate = publicKey('33333333333333333333333333333')
await create(umi, {
asset: assetSigner,
name: 'My Asset',
uri: 'https://example.com/my-asset.json',
plugins: [
{
type: 'PermanentTransferDelegate',
authority: { type: 'Address', address: delegate },
},
],
}).sendAndConfirm(umi)