Hosting
Contractless records the metadata CID, but it does not provide IPFS hosting. Upload and pin the metadata JSON, plus any images or media, with a hosting provider before creating the NFT.
Single Image NFT
For one NFT, upload the image first, then upload a JSON file like this. Use the metadata JSON CID in the wallet's IPFS CID field.
{
"name": "Example Artwork #1",
"description": "A short description of the NFT.",
"image": "ipfs://IMAGE_CID/example.png",
"external_url": "https://example.com/nft/1",
"attributes": [
{ "trait_type": "Background", "value": "Blue" },
{ "trait_type": "Edition", "value": "1 of 1" }
]
}
Collection / Series
For a series, pin one parent folder that contains both the metadata folder and the images folder. Use the CID of that parent folder in the wallet's IPFS CID field. Do not use the CID for one numbered JSON file, and do not use the CID for the images folder alone.
collection-root/ <- use this folder CID in the transaction
metadata/
1.json
2.json
3.json
images/
1.png
2.png
3.png
From that parent CID, the wallet can load metadata/1.json, metadata/2.json, and the matching image paths. Each metadata file should use the same single NFT format, with item-specific names, images, and traits.
{
"name": "Example Collection #1",
"description": "Item 1 from Example Collection.",
"image": "ipfs://PARENT_FOLDER_CID/images/1.png",
"attributes": [
{ "trait_type": "Background", "value": "Blue" },
{ "trait_type": "Rarity", "value": "Common" }
]
}
RWA / Non-Image NFT
For real-world assets or non-image records, keep the common fields and place asset-specific details under attributes or a contractless object.
{
"name": "Equipment Certificate #42",
"description": "Ownership record for a physical asset.",
"image": "ipfs://IMAGE_CID/certificate-preview.png",
"external_url": "https://example.com/certificates/42",
"attributes": [
{ "trait_type": "Asset Type", "value": "Equipment" },
{ "trait_type": "Serial Number", "value": "EQ-2026-0042" }
],
"contractless": {
"metadata_type": "rwa",
"issuer": "Example Agency",
"document": "ipfs://DOCUMENT_CID/asset-record.pdf"
}
}