Mint and send a unique NFT in under 5 minutes
In this quickstart you will learn how to create a unique NFT and deliver it to a wallet or email address.
To get started, create a developer account in the Crossmint Staging Console. Open that link, sign in, and accept the dialog to continue.
Crossmint offers two consoles: staging, for development and testing, and production.
Once you log in to the console, the next step is to create an .
Click the "Integrate" tab and click on the "API Keys" option on top.
Within the “Server-side keys” section, click the “Create new key” button in the top right.
Then, check the scopes nfts.create
and nfts.read
under the “Minting API”
category and create your key. Save this key for the next step.
We’re almost there! With our key created, we’re now going to write a small function that creates an NFT and delivers it to a user.
Create a file (e.g. mintNFT.js
) and enter this code into it:
This code creates an NFT, uploads it to the blockchain, and delivers it to a , attached to the email address provided. Before running it, be sure to fill in values for:
YOUR_API_KEY
with the key obtained in the prior step.TEST_EMAIL_ADDRESS
with an email address you control, for testing.Now, run the mintNFT.js
script.
After a few seconds, it should return a response indicating the mint has started processing. Check the full response and save its , as you’ll use it later.
Example response
Here is an example response returned from the API call above:
The mint has started processing. However, blockchains can take a few seconds (or, at times of extreme network congestion, even minutes) to confirm the operation.
Before showing the user a success screen, the next step is checking the status of the mint.
To do this, grab the actionId
received at the end of step 3 and use it
alongside your API key in one of the snippets below.
Example response
Here is an example response from calling the status API:
Pay attention to the “status” field. Once it says “success”:
Congratulations. You have minted your first NFT 🥷 🎉
For scalable production applications, consider using webhooks to determine when your NFT has been minted, instead of periodically polling for its status via the API.
To get started, create a developer account in the Crossmint Staging Console. Open that link, sign in, and accept the dialog to continue.
Crossmint offers two consoles: staging, for development and testing, and production.
Once you log in to the console, the next step is to create an .
Click the "Integrate" tab and click on the "API Keys" option on top.
Within the “Server-side keys” section, click the “Create new key” button in the top right.
Then, check the scopes nfts.create
and nfts.read
under the “Minting API”
category and create your key. Save this key for the next step.
We’re almost there! With our key created, we’re now going to write a small function that creates an NFT and delivers it to a user.
Create a file (e.g. mintNFT.js
) and enter this code into it:
This code creates an NFT, uploads it to the blockchain, and delivers it to a , attached to the email address provided. Before running it, be sure to fill in values for:
YOUR_API_KEY
with the key obtained in the prior step.TEST_EMAIL_ADDRESS
with an email address you control, for testing.Now, run the mintNFT.js
script.
After a few seconds, it should return a response indicating the mint has started processing. Check the full response and save its , as you’ll use it later.
Example response
Here is an example response returned from the API call above:
The mint has started processing. However, blockchains can take a few seconds (or, at times of extreme network congestion, even minutes) to confirm the operation.
Before showing the user a success screen, the next step is checking the status of the mint.
To do this, grab the actionId
received at the end of step 3 and use it
alongside your API key in one of the snippets below.
Example response
Here is an example response from calling the status API:
Pay attention to the “status” field. Once it says “success”:
Congratulations. You have minted your first NFT 🥷 🎉
For scalable production applications, consider using webhooks to determine when your NFT has been minted, instead of periodically polling for its status via the API.
To get started, create a developer account in the Crossmint Staging Console. Open that link, sign in, and accept the dialog to continue.
Crossmint offers two consoles: staging, for development and testing, and production.
Once you log in to the console, the next step is to create an .
Click the "Integrate" tab and click on the "API Keys" option on top.
Within the “Server-side keys” section, click the “Create new key” button in the top right.
Then, check the scopes nfts.create
and nfts.read
under the “Minting API”
category and create your key. Save this key for the next step.
We’re almost there! With our key created, we’re now going to write a small function that creates an NFT and delivers it to a user.
Create a file (e.g. mintNFT.js
) and enter this code into it:
This code creates an NFT, uploads it to the Solana blockchain, and delivers it to a , attached to the email address provided. Before running it, be sure to fill in values for:
YOUR_API_KEY
with the key obtained in the prior step.TEST_EMAIL_ADDRESS
with an email address you control, for testing.Now, run the mintNFT.js
script.
After a few seconds, it should return a response indicating the mint has started processing. Check the full response and save its , as you’ll use it later.
Example response
Here is an example response returned from the API call above:
The mint has started processing. However, blockchains can take a few seconds (or, at times of extreme network congestion, even minutes) to confirm the operation.
Before showing the user a success screen, the next step is checking the status of the mint.
To do this, grab the actionId
received at the end of step 3 and use it
alongside your API key in one of the snippets below.
Example response
Here is an example response from calling the status API:
Pay attention to the “status” field. Once it says “success”:
Congratulations. You have minted your first NFT 🥷 🎉
For scalable production applications, consider using webhooks to determine when your NFT has been minted, instead of periodically polling for its status via the API.
To get started, create a developer account in the Crossmint Staging Console. Open that link, sign in, and accept the dialog to continue.
Crossmint offers two consoles: staging, for development and testing, and production.
Once you log in to the console, the next step is to create an .
Click the "Integrate" tab and click on the "API Keys" option on top.
Within the “Server-side keys” section, click the “Create new key” button in the top right.
Then, check the scopes nfts.create
and nfts.read
under the “Minting API”
category and create your key. Save this key for the next step.
We’re almost there! With our key created, we’re now going to write a small function that creates a compressed NFT and delivers it to a user.
Compressed NFTs are a new standard on the Solana blockchain, for minting NFTs with the lowest cost amongst L1 and L2 blockchains, and the highest throughput (thousands of NFTs per second).
Create a file (e.g. mintCompressedNFT.js
) and enter this code into it:
This code creates a compressed NFT, uploads it to the Solana blockchain, and delivers it to a , attached to the email address provided. Before running it, be sure to fill in values for:
YOUR_API_KEY
with the key obtained in the prior step.TEST_EMAIL_ADDRESS
with an email address you control, for testing.Now, run the mintCompressedNFT.js
script.
Current Protocol Limitations:
After a few seconds, it should return a response indicating the mint has started processing. Check the full response and save its , as you’ll use it later.
Example response
Here is an example response returned from the API call above:
The mint has started processing. However, blockchains can take a few seconds (or, at times of extreme network congestion, even minutes) to confirm the operation.
Before showing the user a success screen, the next step is checking the status of the mint.
To do this, grab the actionId
received at the end of step 3 and use it
alongside your API key in one of the snippets below.
Example response
Here is an example response from calling the status API:
Pay attention to the “status” field. Once it says “success”:
Congratulations. You have minted your first compressed NFT 🥷 🎉
Other explorers, like Solscan, still have not added support.
For scalable production applications, consider using webhooks to determine when your NFT has been minted, instead of periodically polling for its status via the API.
If the NFTs were delivered to an , the recipient can see them by:
If the NFTs were delivered to a wallet address, the user will be able to see them there directly, connecting to testnet if needed, or on the testnet blockchain explorer.
And voilá, there’s your NFT! Now think of all the cool things you can build with this, at scale :)
For production, the steps are almost identical, but some changes are required:
const env = "www"
, so they use the production APIs. You may also need to change the
chain
variable to match your production blockchain.Learn how to create and manage NFT collections.
Check out more advanced options for minting digital assets.
Update and delete tokens after minting.
Mint and send a unique NFT in under 5 minutes
In this quickstart you will learn how to create a unique NFT and deliver it to a wallet or email address.
To get started, create a developer account in the Crossmint Staging Console. Open that link, sign in, and accept the dialog to continue.
Crossmint offers two consoles: staging, for development and testing, and production.
Once you log in to the console, the next step is to create an .
Click the "Integrate" tab and click on the "API Keys" option on top.
Within the “Server-side keys” section, click the “Create new key” button in the top right.
Then, check the scopes nfts.create
and nfts.read
under the “Minting API”
category and create your key. Save this key for the next step.
We’re almost there! With our key created, we’re now going to write a small function that creates an NFT and delivers it to a user.
Create a file (e.g. mintNFT.js
) and enter this code into it:
This code creates an NFT, uploads it to the blockchain, and delivers it to a , attached to the email address provided. Before running it, be sure to fill in values for:
YOUR_API_KEY
with the key obtained in the prior step.TEST_EMAIL_ADDRESS
with an email address you control, for testing.Now, run the mintNFT.js
script.
After a few seconds, it should return a response indicating the mint has started processing. Check the full response and save its , as you’ll use it later.
Example response
Here is an example response returned from the API call above:
The mint has started processing. However, blockchains can take a few seconds (or, at times of extreme network congestion, even minutes) to confirm the operation.
Before showing the user a success screen, the next step is checking the status of the mint.
To do this, grab the actionId
received at the end of step 3 and use it
alongside your API key in one of the snippets below.
Example response
Here is an example response from calling the status API:
Pay attention to the “status” field. Once it says “success”:
Congratulations. You have minted your first NFT 🥷 🎉
For scalable production applications, consider using webhooks to determine when your NFT has been minted, instead of periodically polling for its status via the API.
To get started, create a developer account in the Crossmint Staging Console. Open that link, sign in, and accept the dialog to continue.
Crossmint offers two consoles: staging, for development and testing, and production.
Once you log in to the console, the next step is to create an .
Click the "Integrate" tab and click on the "API Keys" option on top.
Within the “Server-side keys” section, click the “Create new key” button in the top right.
Then, check the scopes nfts.create
and nfts.read
under the “Minting API”
category and create your key. Save this key for the next step.
We’re almost there! With our key created, we’re now going to write a small function that creates an NFT and delivers it to a user.
Create a file (e.g. mintNFT.js
) and enter this code into it:
This code creates an NFT, uploads it to the blockchain, and delivers it to a , attached to the email address provided. Before running it, be sure to fill in values for:
YOUR_API_KEY
with the key obtained in the prior step.TEST_EMAIL_ADDRESS
with an email address you control, for testing.Now, run the mintNFT.js
script.
After a few seconds, it should return a response indicating the mint has started processing. Check the full response and save its , as you’ll use it later.
Example response
Here is an example response returned from the API call above:
The mint has started processing. However, blockchains can take a few seconds (or, at times of extreme network congestion, even minutes) to confirm the operation.
Before showing the user a success screen, the next step is checking the status of the mint.
To do this, grab the actionId
received at the end of step 3 and use it
alongside your API key in one of the snippets below.
Example response
Here is an example response from calling the status API:
Pay attention to the “status” field. Once it says “success”:
Congratulations. You have minted your first NFT 🥷 🎉
For scalable production applications, consider using webhooks to determine when your NFT has been minted, instead of periodically polling for its status via the API.
To get started, create a developer account in the Crossmint Staging Console. Open that link, sign in, and accept the dialog to continue.
Crossmint offers two consoles: staging, for development and testing, and production.
Once you log in to the console, the next step is to create an .
Click the "Integrate" tab and click on the "API Keys" option on top.
Within the “Server-side keys” section, click the “Create new key” button in the top right.
Then, check the scopes nfts.create
and nfts.read
under the “Minting API”
category and create your key. Save this key for the next step.
We’re almost there! With our key created, we’re now going to write a small function that creates an NFT and delivers it to a user.
Create a file (e.g. mintNFT.js
) and enter this code into it:
This code creates an NFT, uploads it to the Solana blockchain, and delivers it to a , attached to the email address provided. Before running it, be sure to fill in values for:
YOUR_API_KEY
with the key obtained in the prior step.TEST_EMAIL_ADDRESS
with an email address you control, for testing.Now, run the mintNFT.js
script.
After a few seconds, it should return a response indicating the mint has started processing. Check the full response and save its , as you’ll use it later.
Example response
Here is an example response returned from the API call above:
The mint has started processing. However, blockchains can take a few seconds (or, at times of extreme network congestion, even minutes) to confirm the operation.
Before showing the user a success screen, the next step is checking the status of the mint.
To do this, grab the actionId
received at the end of step 3 and use it
alongside your API key in one of the snippets below.
Example response
Here is an example response from calling the status API:
Pay attention to the “status” field. Once it says “success”:
Congratulations. You have minted your first NFT 🥷 🎉
For scalable production applications, consider using webhooks to determine when your NFT has been minted, instead of periodically polling for its status via the API.
To get started, create a developer account in the Crossmint Staging Console. Open that link, sign in, and accept the dialog to continue.
Crossmint offers two consoles: staging, for development and testing, and production.
Once you log in to the console, the next step is to create an .
Click the "Integrate" tab and click on the "API Keys" option on top.
Within the “Server-side keys” section, click the “Create new key” button in the top right.
Then, check the scopes nfts.create
and nfts.read
under the “Minting API”
category and create your key. Save this key for the next step.
We’re almost there! With our key created, we’re now going to write a small function that creates a compressed NFT and delivers it to a user.
Compressed NFTs are a new standard on the Solana blockchain, for minting NFTs with the lowest cost amongst L1 and L2 blockchains, and the highest throughput (thousands of NFTs per second).
Create a file (e.g. mintCompressedNFT.js
) and enter this code into it:
This code creates a compressed NFT, uploads it to the Solana blockchain, and delivers it to a , attached to the email address provided. Before running it, be sure to fill in values for:
YOUR_API_KEY
with the key obtained in the prior step.TEST_EMAIL_ADDRESS
with an email address you control, for testing.Now, run the mintCompressedNFT.js
script.
Current Protocol Limitations:
After a few seconds, it should return a response indicating the mint has started processing. Check the full response and save its , as you’ll use it later.
Example response
Here is an example response returned from the API call above:
The mint has started processing. However, blockchains can take a few seconds (or, at times of extreme network congestion, even minutes) to confirm the operation.
Before showing the user a success screen, the next step is checking the status of the mint.
To do this, grab the actionId
received at the end of step 3 and use it
alongside your API key in one of the snippets below.
Example response
Here is an example response from calling the status API:
Pay attention to the “status” field. Once it says “success”:
Congratulations. You have minted your first compressed NFT 🥷 🎉
Other explorers, like Solscan, still have not added support.
For scalable production applications, consider using webhooks to determine when your NFT has been minted, instead of periodically polling for its status via the API.
If the NFTs were delivered to an , the recipient can see them by:
If the NFTs were delivered to a wallet address, the user will be able to see them there directly, connecting to testnet if needed, or on the testnet blockchain explorer.
And voilá, there’s your NFT! Now think of all the cool things you can build with this, at scale :)
For production, the steps are almost identical, but some changes are required:
const env = "www"
, so they use the production APIs. You may also need to change the
chain
variable to match your production blockchain.Learn how to create and manage NFT collections.
Check out more advanced options for minting digital assets.
Update and delete tokens after minting.