A Deep-dive into Rarible NFT data and how to backup artwork

Rarible does not guarantee your content

jboogle
5 min readFeb 20, 2021

My obsession with NFT permanence seems permanent, until we can store artworks and metadata on-chain the majority of NFT’s around today are unlikely to be available a lifetime from now.

Currently Rarible take the hit in ensuring the NFT’s associated files (metadata & artwork) are cached and available on IPFS, but that can be costly and we’re told in their own terms and conditions that this service cannot be guaranteed.

https://rarible.com/terms.pdf

But good news, as Rarible stores those files on the IPFS network we can back them up and potentially reinstate them if Rarible were ever to go offline.

How to find your Rarible metadata & art

Navigate to the page on Rarible and click on the View on Opensea link to the right of the artwork.

Here we’ll use this excellent piece by luluxXX “see.what.i.saw” as an example.

When the link opens take a note of the appended series of numbers at the end of the URL.

This number indicates the NFT’s unique Token ID and is needed to locate the metadata file, which we’ll use to find the URL for the artwork itself.

Looking further down the page under the Chain info section we can see the contract address.

https://opensea.io/assets/0xd07dc4262bcdbf85190c01c996b4c06a461d2430/7998

This is the Rarible contract artists use to mint NFT’s to the Rarible platform. Clicking on it opens up the contract address page on Etherscan.

https://etherscan.io/address/0xd07dc4262bcdbf85190c01c996b4c06a461d2430

So much info! We can see there have been 84,929 transactions associated with the contract with the latest being only 7 seconds ago! Great but we’re interested in finding the metadata file associated with the NFT with Token ID of 7998. So if we click on the Contract link

and then on Read Contract, we see a nicely formatted list of the functions contained within the smart contract. We’re interested in the last function on the list 16. uri which relates to token IDs.

By expanding this section and typing in our token ID we find the URL location to the metadata itself.

For Token ID 7998 we can see the metadata JSON file is stored on the IPFS network at the URL: https://ipfs.daonomic.com/ipfs/QmNsynjjWmfD2ApDEzXQ9232QzhEPFqwvW8nK63Nov4uet.

If we head over to this link we find it has the following properties

{"name":"see.what.i.saw. luluxXX","description":".","image":"ipfs://ipfs/QmUzxynWxSRKSEnnDSavrMdLWonUUeppjUaHxytekjJcjN","external_url":"https://app.rarible.com/token/0xd07dc4262bcdbf85190c01c996b4c06a461d2430:7998","attributes":[]}

At this point, if you are interested in backing up an NFT you should save the metadata file by right-clicking and choosing save as

I now have a text file on my local system named

QmNsynjjWmfD2ApDEzXQ9232QzhEPFqwvW8nK63Nov4uet.txt

but you could rename it (e.g. luluxXX-swis-metadata.txt) and it would still have the same CID hash accessible from any IPFS gateway as long as you don’t change the contents in any way. If the file was ever lost on the IPFS network it could be re-pinned and accessed via any IPFS node. For example, these URL’s are all loading the same file.

https://ipfs.io/ipfs/QmNsynjjWmfD2ApDEzXQ9232QzhEPFqwvW8nK63Nov4uet

https://ipfs.daonomic.com/ipfs/QmNsynjjWmfD2ApDEzXQ9232QzhEPFqwvW8nK63Nov4uet

https://gateway.pinata.cloud/ipfs/QmNsynjjWmfD2ApDEzXQ9232QzhEPFqwvW8nK63Nov4uet

This is where we start to see the power of a network like IPFS, the CID hash is a URI (an identifier for a specific resource) that can be accessed via many different URL gateways.

Ok so we have the metadata, where’s my Artwork?

Going back and looking at the contents of the metadata we see it has name, description, image, external_url & attributes properties. Here we can take the image URI and download the high res image. We need to turn this into a URL so prepend the hash with the URL of an IPFS gateway like so.

ipfs://ipfs/QmUzxynWxSRKSEnnDSavrMdLWonUUeppjUaHxytekjJcjNchange to:https://ipfs.daonomic.com/ipfs/QmUzxynWxSRKSEnnDSavrMdLWonUUeppjUaHxytekjJcjN

I’ve used Rarible’s ipfs.daonomic.com gateway in this example but you can use any. Once the high-res file has fully loaded on-screen right click and choose save as. Again you can rename it and, so long as the data within the file remains unchanged, re-upload this to IPFS to get the very same hash.

You can test this by using the handy Pinata CID checker. Upload the file and we find that indeed, the file you downloaded matches the same CID found in the metadata file.

Congratulations, you now have backed up your NFT and have a little more control in preserving artwork to pass onto future generations!

Great so if Rarible shut up shop I can still access my NFT?

Not exactly… Rarible uses its own IPFS node (ipfs.daonomic.com) to access the network which is hardcoded into the contract. We can see the URI prefix at function 15.

https://etherscan.io/address/0xd07dc4262bcdbf85190c01c996b4c06a461d2430#readContract

If this IPFS node went down so would access to all the NFT’s Rarible have minted. However, you now have the metadata file which you could prove is rightfully associated with your NFT token and the image that the metadata file proves it was linked to.

You could mitigate risks further by signing up for a service like Pinata and pinning the files we found above using their Pin By Hash option

This searches IPFS for a file’s CID hash and, once found, pins it on the Pinata gateway. You can pin up to 1GB of content for free so this is another way to protect your dank art from loss in the event of Rarible’s node going down.

Much of the info is new to me compiled from numerous snippets across the web. Please get in touch if I have missed out or could make improvements on any of the content above.

--

--

jboogle

Artist and NFT explorer. For updates follow me on Twitter @jboogle_art.