# NFT standards

This article provides a standard NFT Metadata format to facilitate users to integrate the NFT module of the Bounce platform.

The NFT standard is divided into two protocols: ERC721 and ERC1155 (as Enjin first proposed both, we will follow Enjin's Metadata standard).

**ERC721 standard introduction:**

{% embed url="<https://github.com/ethereum/EIPs/blob/master/EIPS/eip-721.md>" %}

**ERC1155 standard introduction:**

{% embed url="<https://github.com/ethereum/EIPs/blob/master/EIPS/eip-1155.md>" %}

#### Metadata usage <a href="#metadata-usage" id="metadata-usage"></a>

Metadata enables NFTs’ subsidiary functions, which can describe each NFT, including pictures, names, descriptions, etc. The details are as follows:

`{"title": "Asset Metadata","type": "object","properties": {"name": {"type": "string","description": "Identifies the asset to which this NFT represents"},"description": {"type": "string","description": "Describes the asset to which this NFT represents"},"image": {"type": "string","description": "A URI pointing to a resource with mime type image/* representing the asset to which this NFT represents. Consider making any images at a width between 320 and 1080 pixels and aspect ratio between 1.91:1 and 4:5 inclusive."}}}`Metadata is obtained on ERC721 by reading the tokenURI function, and in the ERC1155 contract by reading the URI function. Take the tokenURI of a certain NFT in Burger as an example: <https://raw.githubusercontent.com/burgernft/nft_assets/master/ETH-1.json>​Burger puts Metadata information into GitHub, and users can see the current information of Metadata and also its modification records. A user can obtain the URL through the tokenURI, and then read the JSON format data through the URL.This is how the Metadata data looks like on the Bounce platform:

<figure><img src="https://841106785-files.gitbook.io/~/files/v0/b/gitbook-legacy-files/o/assets%2F-MMLqjlwAt55S1SFAMyt%2F-MN3CKxxxZCf_LW6J5TZ%2F-MN3CrUgsX7VINaiLAlx%2FScreenshot%202020-11-26%20at%2012.01.34.png?alt=media&#x26;token=a7aa76b8-8888-490c-b7ca-3677e1f9afbc" alt=""><figcaption></figcaption></figure>

**ERC721 Metadata data structure description**

`{"title": "Never Forget The Girl","type": "art","properties": {"name": {"type": "string","description": "Cindy Yi"},"description": {"type": "string","description": "An irreplaceable girl."},"image": {"type": "string","description": "https://shalomhu.github.io/bounce/NFT/images/img_01.jpg"}}}`

<figure><img src="https://841106785-files.gitbook.io/~/files/v0/b/gitbook-legacy-files/o/assets%2F-MMLqjlwAt55S1SFAMyt%2F-MN3A6Z3UclLlPkD-FyF%2F-MN3B1fQ3iHK1hunWOFb%2FScreenshot%202020-11-26%20at%2011.53.45.png?alt=media&#x26;token=7f9f6d1a-39c8-46b5-a1f3-483128413036" alt=""><figcaption></figcaption></figure>

**ERC1155 Metadata data structure description**

``{"title": "Token Metadata","type": "object","properties": {"name": {"type": "string","description": "Identifies the asset to which this token represents",},"decimals": {"type": "integer","description": "The number of decimal places that the token amount should display - e.g. 18, means to divide the token amount by 1000000000000000000 to get its user representation.",},"description": {"type": "string","description": "Describes the asset to which this token represents",},"image": {"type": "string","description": "A URI pointing to a resource with mime type image/* representing the asset to which this token represents. Consider making any images at a width between 320 and 1080 pixels and aspect ratio between 1.91:1 and 4:5 inclusive.",},"properties": {"type": "object","description": "Arbitrary properties. Values may be strings, numbers, object or arrays.",},"localization": {"type": "object","required": ["uri", "default", "locales"],"properties": {"uri": {"type": "string","description": "The URI pattern to fetch localized data from. This URI should contain the substring `{locale}` which will be replaced with the appropriate locale value before sending the request."},"default": {"type": "string","description": "The locale of the default data within the base JSON"},"locales": {"type": "array","description": "The list of locales for which data is available. These locales should conform to those defined in the Unicode Common Locale Data Repository (http://cldr.unicode.org/)."}}},}}``

<figure><img src="https://841106785-files.gitbook.io/~/files/v0/b/gitbook-legacy-files/o/assets%2F-MMLqjlwAt55S1SFAMyt%2F-MN3BCJsMATf--8l-PVD%2F-MN3C8aBO-O2rYPxh6hL%2FScreenshot%202020-11-26%20at%2011.58.10.png?alt=media&#x26;token=175cccf0-0f63-4231-8c75-737a9413eb5e" alt=""><figcaption></figcaption></figure>

<figure><img src="https://841106785-files.gitbook.io/~/files/v0/b/gitbook-legacy-files/o/assets%2F-MMLqjlwAt55S1SFAMyt%2F-MN3BCJsMATf--8l-PVD%2F-MN3CERen3WESxWBYnSb%2FScreenshot%202020-11-26%20at%2011.58.36.png?alt=media&#x26;token=0828e740-3faf-4da3-9c66-804989baa922" alt=""><figcaption></figcaption></figure>


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://docs.bounce.finance/bounce-nft/nft-issuance/nft-standards.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
