# Comment obtenir les métadonnées d'un NFT spécifique

## Qu'est-ce que les métadonnées NFT ?

Les métadonnées NFT sont l'ensemble des informations descriptives stockées hors chaîne qui détaillent les attributs, les propriétés et le contenu supplémentaire associé à un NFT. Ces détails peuvent être une URL d'image, son nom, sa description et des attributs liés à son unicité et à sa propriété.

## Comment faire avec Moralis

Moralis dispose d'une API NFT que vous pouvez utiliser, et ils fournissent même un exemple de code pour le cas d'utilisation de l'historique du portefeuille :

* [Obtenir les métadonnées NFT](https://docs.moralis.io/web3-data-api/evm/reference/get-nft-metadata?address=0xb47e3cd837dDF8e4c57F05d70Ab865de6e193BBB\&token_id=1\&chain=eth\&format=decimal\&normalizeMetadata=true\&media_items=false)

Pour adapter leur exemple de code, remplacez la référence à Ethereum par son ID pour Chiliz Chain, `0x15b38`:

```typescript
import Moralis from 'moralis';

try {
  await Moralis.start({
    apiKey: "YOUR_API_KEY"
  });

  const response = await Moralis.EvmApi.nft.getNFTMetadata({
    "chain": "0x15b38", // Ceci correspond à Chiliz Chain Mainnet.
                        // Pour Spicy Testnet, utilisez "0x15b32".
    "format": "decimal",
    "normalizeMetadata": true,
    "mediaItems": false,
    "address": "0xYourNFTContractAddress",
    "tokenId": "1"
  });

  console.log(response.raw);
} catch (e) {
  console.error(e);
}
```

## Comment faire avec Tatum

Tatum dispose d'un sous-module NFT dans son outil d'abstraction blockchain que nous pouvons utiliser, et ils fournissent même un exemple de code pour le cas d'utilisation de récupération des métadonnées :

* [Obtenir les métadonnées d'un NFT spécifique](https://docs.tatum.io/docs/get-the-metadata-of-a-specific-nft)

Pour adapter leur exemple de code, remplacez la référence à Ethereum par Chiliz Chain :

```typescript
import {TatumSDK, Network, Chiliz, ResponseDto, NftTokenDetail} from '@tatumio/tatum'

const tatum = await TatumSDK.init<Chiliz>({network: Network.CHILIZ})

const metadata: ResponseDto<NftTokenDetail|null> = await tatum.nft.getNftMetadata({
  tokenAddress: '0xYourNFTContractAddress', // remplacer par votre collection
  tokenId: '1'
})

console.log(metadata.data)
```

## Comment faire avec thirdweb

thirdweb, nous pouvons nous inspirer du code source hébergé sur leur site de documentation :

* [ThirdwebNftMedia](https://portal.thirdweb.com/react/v4/components/ThirdwebNftMedia#usage)

Voici comment nous pourrions adapter cela en code pour récupérer les métadonnées :

```typescript
const { ThirdwebSDK } = require("@thirdweb-dev/sdk");

const sdk = new ThirdwebSDK("https://rpc.chiliz.com");
const nftContractAddress = "0xYourNFTContractAddress";
const tokenId = "YourTokenID";

async function getNFTMetadata() {
  try {
    const nftContract = await sdk.getNFTCollection(nftContractAddress);
    const nftMetadata = await nftContract.get(tokenId);
    console.log(`Métadonnées du NFT ${tokenId} :`, nftMetadata);
  } catch (error) {
    console.error("Erreur lors de la récupération des métadonnées du NFT :", error);
  }
}

getNFTMetadata();
```

## Comment le faire avec Nodit

Nodit fournit l’exemple de code suivant [dans sa doc](https://developer.nodit.io/reference/chiliz-getnftmetadatabytokenids):

```typescript
const url = 'https://web3.nodit.io/v1/chiliz/mainnet/nft/getNftMetadataByTokenIds';
const options = {
  method: 'POST',
  headers: {
    accept: 'application/json',
    'content-type': 'application/json',
    'X-API-KEY': 'nodit-demo'
  },
  body: JSON.stringify({
    tokens: [
      {contractAddress: '0xBC4CA0EdA7647A8aB7C2061c2E118A18a936f13D', tokenId: '1'},
      {contractAddress: '0xBC4CA0EdA7647A8aB7C2061c2E118A18a936f13D', tokenId: '2'}
    ]
  })
};

fetch(url, options)
  .then(res => res.json())
  .then(json => console.log(json))
  .catch(err => console.error(err));
```


---

# 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.chiliz.com/fr-ai/develop/basics/how-tos/how-to-get-the-metadata-of-a-specific-nft.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.
