LogoLogo
Our WorkHelp CenterAbout Us
  • Developer Resources
    • ⚙️Web/HTML Implementation
      • Getting Started
      • Simple HTML Example
  • Native App Implementation
  • 🛠️API Resources
    • Verify
    • Claim
    • Recover
    • Tag Verifications
  • Protocol
    • 🖼️Overview
      • Technical Specs
    • 📜Smart Contracts
      • 🔓Locking Mechanism
      • 🔓Locked721
      • 🔑Access Control Roles
      • 📃Customizing the Locked721 Contracts
    • 📏Customizations
      • 🛳️Blockchain Deployment Options
      • 🪙Digital ID Options
      • 🗞️Product Metadata Options
      • 🔐Locking Mechanism Options
Powered by GitBook
On this page
  • On-chain metadata
  • Off-chain metadata

Was this helpful?

Export as PDF
  1. Protocol
  2. Customizations

Product Metadata Options

PreviousDigital ID OptionsNextLocking Mechanism Options

Last updated 10 months ago

Was this helpful?

Legitimate maps each unique digital ID to a token on a decentralized blockchain network. For simplicity and consistency, our documentation will refer to each digital ID as a token.

Product metadata is derived from a URL that contains a base_uri as well as a file name that corresponds with the tokenId or locked state.

This metadata can then be generated , or via a separate service such as IPFS or AWS.

When a token is locked, it can be configured to display a separate set of metadata for the NFT including image, animation, title, and description.

On-chain metadata

Legitimate implemented a simple on-chain metadata contract that is useful for tokens of a singular SKU or collection that all leverage similar metadata. This on-chain metadata contract does not provide for a separate set of metadata for the locked state.

This contract can be found .

Off-chain metadata

Off-chain metadata can also be used. Examples can be found .

The base_uri can be an IPFS folder or any HTTP/S folder containing files 1, 2, 3, ..., locked files in JSON format without the .json extension. Do not include the trailing / in the URI. The file locked in the folder is used instead of the respective file that corresponds to the tokenId when the token is in the locked state.

On our standard smart contract, the NFT_MANAGER_ROLE is required to update the metadata URI.

Base URI examples:

https://ipfs.io/ipfs/<folder-hash>
https://www.example.com/token-metadata

Metadata filename examples:

1
2
3
locked
📏
🗞️
on-chain
off-chain
here
here