how did you compute this part? I would think that you only have to call resync 10k times with uri flag, once for every token id
My tests show that you have to call resync then call get nft requiring 10 requests per NFT to get its specific updated metadata.
Also noticed this – Note: /nft/{address}/{token_id}/metadata/resync
has a billing cost of 5 and a rate limit cost of 25, meaning that you can call it only once per second with a free plan and twice a second with a Pro plan
I certainly am new to Moralis so if there is a better way, please let me know.
A bigger problem would be that you can call resync metadata only once per second.
Do you control that smart contract that does the reveal?
We do not control contracts but want to make them visible to people who want to present them in galleries.
If you know when a reveal is done you can run resync only after that once
When I know the date, I can schedule a metadata refresh. what I’d like is a single call to Moralis with a contract_address and you guys refresh the meta for all of the token_ids.
Moralis is currently working on resyncing of entire collections at once yes.
I guess I’ll do some just-in-time metadata updates when someone views a single NFT until that’s ready. Any kind of rough prediction of availability would really help me plan my roadmap. Thanks!
Great can we get an ETA on this.
Any idea how to use with unity ?
This is the method i use on a “refresh” button:
public async void resyncMetadata()
{
await Moralis.Web3Api.Token.ReSyncMetadata(address: "0x34d85754fbad12eca81e2afe6a7648051574a63c", tokenId: "2", GameManager.ContractChain);
}
But it doesnt seem to work, its been hours
what exactly doesn’t work? what is current output and what is the expected output?
Hi there !
Thanks for the reply !
Between pre-reveal and reveal, the metadata in unity have not changed, but they did on opensea.
I have used this resyncMetadata method on a single token to test the update but nothing happened, it is still the unrevealed uri and metadata.
you have to use the uri flag for that resyncMetadata, it will not work if you don’t use uri flag
ok thank you, struggling with syntax:
public async void resyncMetadata()
{
await Moralis.Web3Api.Token.ReSyncMetadata(address: "0x34d85754fbad12eca81e2afe6a7648051574a63c", tokenId: "2", GameManager.ContractChain, flag: "uri");
}
But this shows error: “The best overload for ‘ReSyncMetadata’ does not have a parameter named ‘flag’”
what am I missing?
I don’t know the syntax for unity, you can call a cloud function or use the web3api interface directly
arf okay thanks!
Have no idea how to do that within unity.
You can call a cloud function with a simple http request
syn my nfts on bnb contract
0x0de355aa9364b14c17b9a117d779d3dc4a6ff09e