# NFT Pallet on Asset Hub

## **Introduction:**&#x20;

The [NFTs Pallet](https://wiki.polkadot.network/docs/learn-nft-pallets) provides a multitude of functionalities to facilitate interactions with Non-Fungible Tokens (NFTs) on the KodaDot platform. With this FRAME pallet meant for developers, you can create, modify, and manage NFT collections in a user-friendly manner.

### **Roles and Permissions:**&#x20;

A collection in the pallet is managed by various roles with specific permissions. An 'Owner' can destroy collections or alter the team, whereas an 'Admin' can change attributes or lock item properties. 'Issuers' can mint NFTs, and 'Freezers' can restrict item transfers.

### **Attributes and Creating a Collection:**&#x20;

You can assign an item with three types of attributes: System attributes, Collection owner’s attributes, and User attributes. The pallet also allows the creation of collections via the NFTs.create extrinsic. Options such as the maximum number of items (maxSupply), price, and a time frame of validity can be specified during creation.

### **Minting an NFT:**&#x20;

Minting an NFT involves using the nfts.mint extrinsic and specifying the collection, item, and the owner of the new NFT. Unique specifications can be set for each item, introducing a high degree of customization.

### **Uploading Files and Metadata:**&#x20;

After minting your NFT, the next steps involve uploading the NFT file and associated metadata into the Pinata service to obtain a unique Content Identifier (CID). The CID can later be assigned to the collection or item through the Polkadot-JS UI.

### **Additional Actions:**&#x20;

The NFTs Pallet offers a variety of actions including buying items, burning items, updating smart attributes, setting metadata, and even transferring ownership. Advanced functions such as NFT fractionalization and mass minting are under development.

### **Conclusion:**&#x20;

The NFTs Pallet in KodaDot provides a robust toolset for developers to easily integrate and manage NFTs within their dApps. This functionality, combined with ongoing enhancements, helps consolidate KodaDot’s position as a go-to platform for innovative NFT solutions.


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://hello.kodadot.xyz/nft-standard/pallet-level/nft-pallet-on-asset-hub.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
