Show / Hide Table of Contents

Create an NFT Collection

An NFT collection (token class) defines the shared metadata — name, symbol, max supply, and management keys — for all NFTs minted under it. Individual NFTs are created later via minting. The Administrator key controls updates to the collection, while the SupplyEndorsement key controls minting and burning.

Code

var receipt = await client.CreateNftAsync(new CreateNftParams
{
    Name = "Sample NFTs",
    Symbol = "SNFT",
    Ceiling = 100,                         // max 100 NFTs in this collection
    Treasury = treasury,
    Administrator = adminEndorsement,
    SupplyEndorsement = supplyEndorsement,
    Memo = "My NFT collection"
});
Console.WriteLine($"Collection ID: {receipt.Token}");

What each parameter does

Parameter Description
Name Human-readable collection name.
Symbol Short ticker (up to 100 characters).
Ceiling Maximum number of NFTs that can be minted. Set to 0 for unlimited.
Treasury Account that receives newly minted NFTs.
Administrator Key authorized to update or delete the collection. Omit for immutable.
SupplyEndorsement Key authorized to mint and burn. Required for minting.
ConfiscateEndorsement Optional. Key authorized to forcibly reclaim NFTs from any holder.
MetadataEndorsement Optional. Key authorized to update individual NFT metadata after minting.

See also

  • Mint an NFT
  • Transfer an NFT
  • CreateNftParams API reference
  • Edit this page
In this article
Back to top .NET Client Library for Hiero Network and Hedera Hashgraph