I am fetching the NFT details for the specific ERC721 token with the endpoint:
https://deep-index.moralis.io/api/v2/nft/0xa5ee245663390e0acf3f89e3cafc0a56ba8bb1b7/0?chain=0x89&format=decimal
The response returned from Moralis for this NFT, indicates the following data
"token_uri": "ar://mjmZl24IPQWDCkAPOxfezdvmBf3Jo5v5oT_xhFCnI-0",
"metadata": null,
However, when reading the contract directly on PolygonScan at https://polygonscan.com/address/0xa5ee245663390e0acf3f89e3cafc0a56ba8bb1b7#readContract, calling the tokenUri
function for tokenId = 0
It returns the following data:
"token_uri": "ipfs://QmbD6KK4Ha1HgipCpcRt6RYRD5mBWUxR8xeWYdne9Z5R8Y"
The metadata from the “token_uri” is also non-null
"metadata": {
"name": "Anvil of Jericho",
"description": "The Anvil grants lifetime access to Jericho. It can only be obtained after an application review and a validated apprenticeship period. Purchasing it on the secondary market won't grant access: The Anvil will be burned and money reimbursed.",
"image": "ipfs://bafybeiaoqfn54pyggyzehxapidwks423fdekedoj2smpf2rbq4vevvylae/"
}
Wondering what is the best way to fix the “wrong” “token_uri” here on Moralis, when it differs from the contract itself