I have created an ERC1155 smart contract which works perfectly fine on opensea - it finds the uri and the contractURI well. However, when I add the NFT on testnet to metamask, while the NFT data is accurate, the collection data seems to not be fetched. It puts the NFT in an Untitled Collection tab.
Here is the smart contract function:
function contractURI() public view returns (string memory) {
return theContractUri;
}
Here is how the contact URI is formatted:
{
"collection" :{
"name": "Farmverse Farmers",
"image": "ipfs://bafkreic57ucjp6yrfjg4jt7x2533vm4vismg5gxm4phy4wkhbqlzydfvde/"
},
"collectible" :{
"name": "Farmverse Farmers",
"image": "ipfs://bafkreic57ucjp6yrfjg4jt7x2533vm4vismg5gxm4phy4wkhbqlzydfvde/"
},
"contract" :{
"name": "Farmverse Farmers",
"image": "ipfs://bafkreic57ucjp6yrfjg4jt7x2533vm4vismg5gxm4phy4wkhbqlzydfvde/"
},
"name": "Farmverse Farmers",
"description": "“The Farmers” is an NFT collection that contains 5555 unique, computer-generated little characters. Besides being collectibles these tokens are also your key to unlocking the wonders of Farmverse – a multiplayer play-to-earn online video game.",
"image": "ipfs://bafkreic57ucjp6yrfjg4jt7x2533vm4vismg5gxm4phy4wkhbqlzydfvde/",
"external_link": "https://farm-verse.com"
}
So I do not understand, where is metamask trying to get the collection name from? Where shuld I put it in my contractURI or regular tokenURI in order for the collection name and image to show up in metamask mobile.
Thanks in advance!