- Unique Assets (ERC-721)
- Editions (ERC-1155)
- Compressed NFTs
- Non-transferrable NFTs
To mint and airdrop unique digital assets, you can follow the guide on the Quickstart. For more detail, please check the API reference. You can watch a quick video tutorial for this here.
SFTs (semifungible tokens) follow the ERC-1155 standard. Each token is a replica of a predefined template. Each collection (smart contract) can contain multiple templates, which can contain many tokens.To get started, it’s recommended to read the Introduction for general information on how the minting product works.
All set!To confirm delivery, use the transaction status API or set up a webhook.
This API only supports EVM chains self-serve. Contact us if you need support for another chain.
1. Create an SFT collection to hold your templates
cURL
Copy
Ask AI
curl --request POST \
--url https://staging.crossmint.com/api/2022-06-09/collections \
--header 'accept: application/json' \
--header 'content-type: application/json' \
--header 'x-api-key: YOUR_API_KEY' \
--data '
{
"chain": "polygon-amoy",
"fungibility": "semi-fungible",
"metadata": {
"name": "My New Collection",
"imageUrl": "https://www.crossmint.com/assets/crossmint/logo.png",
"description": "A new collection with its own dedicated smart contract"
}
}'
See example response
See example response
JSON
Copy
Ask AI
{
"id": "5263650e-6d43-4ed3-9e31-0cf593d076a4",
"metadata": {
"name": "Test Collection",
"description": "Test",
"imageUrl": "https://cdn.io/metadata.json",
"symbol": "XMINT"
},
"fungibility": "semi-fungible",
"onChain": {
"chain": "polygon-amoy",
"type": "erc-1155"
},
"actionId": "5263650e-6d43-4ed3-9e31-0cf593d076a4"
}
2. Create a template within that collection
cURL
Copy
Ask AI
curl --request POST \
--url https://staging.crossmint.com/api/2022-06-09/collections/{collectionId}/templates \
--header 'accept: application/json' \
--header 'content-type: application/json' \
--header 'x-api-key: YOUR_API_KEY' \
--data '
{
"onChain": {
"tokenId": "2"
},
"supply": {
"limit": 10
},
"metadata": {
"name": "My template",
"image": "https://www.crossmint.com/assets/crossmint/logo.png",
"description": "A new token template for my ERC1155 collection"
}
}'
See example response
See example response
JSON
Copy
Ask AI
{
"templateId": "58b0c1aa-e457-48dd-bb55-5a27e6a92f74",
"metadata": {
"name": "My template",
"image": "ipfs://bafkreigbqsmxzkbjgbwtj6exfdt5z3t3swgoysf7hr6vjzddqnmykj6x2u",
"description": "A new token template for my ERC1155 collection"
},
"onChain": {
"tokenId": "1"
},
"supply": {
"limit": "10",
"minted": "0"
}
}
3. Mint an SFT from a template
Mint SFTs from the template and send them to wallets or email addresses.cURL
Copy
Ask AI
curl --request POST \
--url https://staging.crossmint.com/api/2022-06-09/collections/{collectionId}/sfts \
--header 'accept: application/json' \
--header 'content-type: application/json' \
--header 'x-api-key: YOUR_API_KEY' \
--data '
{
"templateId": "58b0c1aa-e457-48dd-bb55-5a27e6a92f74",
"recipient": "email:[email protected]:polygon-amoy",
"amount": 1
}'
See example response
See example response
JSON
Copy
Ask AI
{
"actionId": "a91c15e3-60f2-4a45-bf1a-cee508981667",
"action": "nfts.create",
"status": "pending",
"data":
{
"chain": "polygon-amoy",
"collection":
{
"id": "84e3d617-9c1b-4e7a-9686-522a9ea7c520",
"contractAddress": "0x9b8ab8949bd7E73E61945b88F7fe12151f98ad3C"
},
"recipient":
{
"walletAddress": "0xcFDc00Cf926A5053f9Cdf004e6DF17e6dEB2E146",
"email": "[email protected]"
},
"token":
{
"id": "a91c15e3-60f2-4a45-bf1a-cee508981667"
}
},
"startedAt": "2024-01-02T22:05:01.000Z",
"resource": "https://staging.crossmint.com/api/2022-06-09/actions/a91c15e3-60f2-4a45-bf1a-cee508981667"
}
What are Compressed NFTs?
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). Read more details about how it works here.Using this standard to mint NFTs is extremely complicated if you manage everything on your own. On top of the intrinsic complexity usually required to mint a regular NFT, compressed NFTs require deploying and managing Merkle trees, batching, and dealing with nascent infrastructure. Crossmint also supports updating the NFT metadata after minting. Please refer to this doc page.Here’s where Crossmint can help: we’ve done all the hard work so that minting compressed NFTs is no harder than minting regular ones: all it takes is a single API call, and you can even use one of Crossmint’s no-code tools to do so.Current Protocol Limitations
- There’s a 10-30 second delay between when an NFT is minted and it shows in wallets.
How to use the Minting API with Compressed NFTs
The Minting API for Compressed NFTs is exactly the same as for regular NFTs, but it only works on the Solana blockchain.POSThttps://staging.crossmint.com/api/2022-06-09/collections/<collection-id>/nftsYou can mint both compressed and non-compressed NFTs on the same collection.
cURL
Copy
Ask AI
curl --request POST \
--url https://staging.crossmint.com/api/2022-06-09/collections/default-solana/nfts \
--header 'Content-Type: application/json' \
--header 'X-API-KEY: <x-api-key>' \
--data '{
"recipient": "email:[email protected]:solana",
"metadata": {
"name": "Crossmint Example NFT",
"image": "https://www.crossmint.com/assets/crossmint/logo.png",
"description": "My NFT created via the mint API!"
},
"compressed": true,
"reuploadLinkedFiles": false
}'
cURL
Copy
Ask AI
curl --request GET \
--url https://staging.crossmint.com/api/2022-06-09/collections/{collectionId}/nfts/{nftId} \
--header 'X-API-KEY: X_API_KEY'
X_API_KEY,{collectionId}and{nftId}- Recipient: change
VALID_WALLET_ADDRESSwith the wallet you want to send the NFT to - Metadata: add the name, image, and description.
To explore compressed NFTs on the blockchain, you must use Orb, powered by Helius
Other explorers, like Solscan, still have not added support.
There are two ways to set the transferrability of NFTs:
- Defining it at the smart contract level
- If you are using custodial wallets, enabling or disabling transfers from the frontend
| Endpoint | Chain | Description |
|---|---|---|
| Set Transferability | EVM and Aptos | Set transferability to on or off |
| Get Transferability | EVM and Aptos | Get transferability configuration |
For Solana or other non-EVM chain support, contact us
The API also has an idempotent version which prevents you from calling the same API action multiple times and
mitigates the risk of unwanted NFT duplicates.

