What parameter should I need to pass in [await metaplex.nfts().create({})] in order to create number of master editions . I see the maxSupply represents the number of print editions .
1 Answer
An nft will only have a single "master edition" account, which is a PDA derived using the nft's mint address.
Use printNewEdition
if you're trying to print an "edition" of an nft.
const { nft: printedNft } = await metaplex.nfts().printNewEdition({
originalMint: originalNft.mint
});
Check out the metaplex docs which has great explanations/diagrams for the relationship between accounts: https://docs.metaplex.com/programs/token-metadata/accounts
The Master Edition account, derived from a Mint Account, is an important component of NFTs because its existence is proof of the Non-Fungibility of the token.
When creating a Master Edition account, the Token Metadata program will check for the following conditions:
- The Mint Account has zero decimals, i.e. Decimals = 0.
- The MintAccount minted exactly one token to a wallet, i.e. Supply = 1.
Additionally, it will transfer the Mint Authority and the Freeze Authority to the Master Edition account to prevent anyone from being able to mint additional tokens. You can read more about why these authorities are transferred instead of being voided in the FAQ.
Therefore, what we end up with is a Mint Account whose supply will never go above one and whose token cannot be shared or divided. As such, we end up with a Non-Fungible Token (NFT).
On top of being a Non-Fungible proof, the Master Edition allows NFTs to be printed a limited or unlimited amount of times. The Master Edition NFT acts as the "original record" of the digital asset that can be duplicated or "printed" into Edition NFTs. This allows creators to offer more than one copy of their digital assets to their audience.
The optional Max Supply field of the Master Edition account tells us how many copies of the NFT can be created. When set to None, an unlimited amount of copies can be created. When set to zero, the NFT cannot be copied.