はじめに
NFTを取得する
Last updated March 12, 2025
Solanaブロックチェーンからnftデータを取得します。
NFTまたはコレクションを取得する
以下のセクションでは、完全なコード例と変更が必要なパラメータを確認できます。NFTとコレクションの取得の詳細については、Coreドキュメントをご覧ください。
1import { fetchAsset, fetchCollection, mplCore } from '@metaplex-foundation/mpl-core';
2import { publicKey } from '@metaplex-foundation/umi';
3import { createUmi } from '@metaplex-foundation/umi-bundle-defaults';
4
5// Initialize UMI
6const umi = createUmi('https://api.devnet.solana.com')
7 .use(mplCore())
8
9// Fetch a Core Asset
10const assetAddress = publicKey('AssetAddressHere...')
11const asset = await fetchAsset(umi, assetAddress)
12
13// Fetch a Core Collection
14const collectionAddress = publicKey('CollectionAddressHere...')
15const collection = await fetchCollection(umi, collectionAddress)
16
17console.log('Asset fetched:', asset)
18console.log('Name:', asset.name)
19console.log('Owner:', asset.owner)
20console.log('URI:', asset.uri)
21
22console.log('\nCollection fetched:', collection)
23console.log('Name:', collection.name)
24console.log('URI:', collection.uri)
1# Fetch an NFT using the Metaplex CLI
2
3# Fetch asset by ID
4mplx core fetch asset <assetId>
5
6# Download all files to a directory
7mplx core fetch asset <assetId> --download --output ./assets
8
9# Download only the image
10mplx core fetch asset <assetId> --download --image
11
12# Download only the metadata
13mplx core fetch asset <assetId> --download --metadata
1// npm install @metaplex-foundation/umi @metaplex-foundation/umi-bundle-defaults @metaplex-foundation/digital-asset-standard-api
2import { publicKey } from '@metaplex-foundation/umi'
3import { createUmi } from '@metaplex-foundation/umi-bundle-defaults'
4import { dasApi } from '@metaplex-foundation/digital-asset-standard-api'
5
6// Initialize Umi with a DAS-enabled RPC endpoint
7const umi = createUmi('https://api.devnet.solana.com').use(dasApi())
8
9// The address of the NFT you want to fetch
10const assetAddress = publicKey('YOUR_NFT_ADDRESS')
11
12// Fetch the asset using DAS API
13const asset = await umi.rpc.getAsset(assetAddress)
14
15console.log('Asset ID:', asset.id)
16console.log('Name:', asset.content.metadata?.name)
17console.log('Description:', asset.content.metadata?.description)
18console.log('Image:', asset.content.links?.image)
19console.log('Owner:', asset.ownership.owner)
20console.log('Interface:', asset.interface)
1# Fetch an NFT using the DAS API
2curl -X POST \
3 -H "Content-Type: application/json" \
4 -d '{
5 "jsonrpc": "2.0",
6 "id": 1,
7 "method": "getAsset",
8 "params": {
9 "id": "<NFT Mint Address>"
10 }
11 }' \
12 https://api.devnet.solana.com
パラメータ
取得に合わせて以下のパラメータをカスタマイズしてください:
| パラメータ | 説明 |
|---|---|
assetAddress | NFTアセットの公開鍵 |
collectionAddress | コレクションの公開鍵(オプション) |
仕組み
取得プロセスには以下の手順が含まれます:
- アドレスを取得 - 取得したいNFTアセットまたはコレクションの公開鍵が必要です
- アセットデータを取得 -
fetchAssetを使用して、名前、URI、所有者、プラグインを含むNFT情報を取得します - コレクションデータを取得 -
fetchCollectionを使用してコレクション情報を取得します(オプション)
NFTとコレクションデータ
アセットを取得すると、すべてのデータが返されます:
- Name - NFTの名前
- URI - メタデータJSONへのリンク
- Owner - NFTを所有するウォレット
- Update Authority - NFTを変更できる人
- Plugins - ロイヤリティや属性などの添付プラグイン
コレクションを取得すると、以下が返されます:
- Name - コレクションの名前
- URI - コレクションメタデータJSONへのリンク
- Update Authority - コレクションを変更できる人
- Num Minted - コレクション内のアセット数
- Plugins - ロイヤリティや属性などの添付プラグイン
