Specify Recipient
Learn how to craft the recipient string for minting depending on the recipient type
You can deliver NFTs to three kinds of recipients when using minting APIs:
- Wallet address: directly specify a wallet address, which could be a user owned wallet (e.g. MetaMask, Phantom, etc.) or a wallet you manage.
- Email address: in this modality, Crossmint automatically generates a secure MPC backed custodial wallet for the email, and delivers the NFT inside.
- User identifier: in this modality, Crossmint automatically generates a wallet and associates it with an user ID from your application, and delivers the NFT inside. You must build the interface for users to access this wallet.
Check out the create-wallet endpoint in the API reference if you wish to pre-create a wallet prior to invoking the mint API.
Send NFT to Wallet Address
To mint an NFT directly to an existing blockchain address, the following recipient
format is used:
<chain>:<address>
Examples
- EVM:
polygon:0x123...
- Solana:
solana:3Q5...
- Aptos:
aptos:0x0f07...
Send NFT to Email Address
To mint an NFT and send it to an email address, the following recipient
format is used:
email:<email_address>:<chain>
Examples
- EVM:
email:demo@test.com:polygon
- Solana:
email:demo@test.com:solana
The NFT can then be accessed by logging into Crossmint with the specified email address:
- for
staging/testnet
NFTs: https://staging.crossmint.com/user/collection - for
mainnet
NFTs: https://www.crossmint.com/user/collection
Send NFT by userId
This method allows you to deliver NFTs by directly specifying the user identifier of the recipient in your system. Crossmint will fetch a custodial wallet linked to that user identifier inside your project or, if none exists, create one on the fly. Then the NFT will be delivered there. This way, you don’t need to keep a mapping between your user identifiers and their wallets, just pass your user id and crossmint takes care of the rest.
userId
option cannot be accessed by logging into Crossmint.com.To mint an NFT to this type of recipient, follow this format:
userId:<userIdentifier>:<chain>
Examples
- EVM:
userId:user1234:polygon
- Solana:
userId:user1234:solana