Links
💎

NFT Collections on Solana

All you need to know to understand NFT collections on Solana.

Background

NFT collections on Solana are difficult to work with because there is no consistent mechanism to reference an NFT collection. NFT marketplaces reference collections by "mintlists", which is the list of mint accounts that make up the collection. The mintlist is determined by the NFT project.
There are two common ways of referencing NFT collections on Solana if you do not have the full mintlist:
  1. 1.
    First verified creator: The first verified creator in the NFT metadata will be the address of the Candy Machine that minted the NFT. This is the most common way to reference an NFT collection in Solana.
  2. 2.
    Verified collection address: This address references an NFT that represents the NFT collection. This is a newer feature added by Metaplex and is not supported by all NFTs. For more information please read here.
To make matters more complicated, some NFT projects opted to use multiple candy machines to mint their collection, meaning that not all NFTs in the collection have the same first verified creator. Bohemia is an example.

Collections with Helius

Helius' approach to querying NFT collections aims to provide the developer with complete flexibility and control. We opted to not create custom identifiers for each collection in favour of simplicity and staying consistent with the on-chain data.
Helius supports querying for collections by both first verified creator and verified collection address. You can query with an array of first verified creator's to reference a collection was minted by multiple candy machines.

Finding The Right Collection Address

There are two main ways to find the collection address for a given NFT on Solana.

Calling Helius' /NFTs endpoint

The easiest way to automatically determine which collection an NFT belongs to is by parsing the response from our /NFTs endpoint for a given NFT mint address:

Looking at an explorer

To determine the collection address of an NFT manually, you can input its mint address onto a Solana explorer. Here is a screenshot of an example, with collection addresses underlined in red.

Collection APIs

The following APIs support NFT collections:
NFT Events (Historical Querying) – Query NFT events for a given collection.
NFT Fingerprint – Provides collection details for a batch of NFTs.
NFT Collection Mintlists – Get the list of NFTs for a given collection.
NFT Active Listings (Alpha) – Query active listings for a given collection.

Example

Query for all the mints in the ABC collection.
const axios = require('axios')
const url = `https://api.helius.xyz/v1/mintlist?api-key=<api_key>`
const getMintlist = async () => {
const { data } = await axios.post(url, {
"query": {
// ABC collection
"firstVerifiedCreators": ["GVkb5GuwGKydA4xXLT9PNpx63h7bhFNrDLQSxi6j5NuF"]
},
"options": {
"limit": 10000
}
});
console.log("Mintlist: ", data.result);
};
getMintlist();