概述
本指南涵盖使用Helius数字资产标准(DAS)API读取NFT和数字藏品:获取单个资产、列出钱包的NFT、按集合或创建者查询、处理压缩NFT和Merkle证明、列出版本以及读取交易历史。 有关可替代代币——余额、供应、持有者和价格的内容,请参见获取SPL代币指南。相同的getAsset和getAssetsByOwner方法服务于NFT和代币;此页面侧重于NFT和收藏品的工作流程。
何时使用
当您需要以下操作时,请使用此页面上的方法:- 显示单个NFT的元数据、图像和属性
- 列出一个钱包拥有的每一个NFT用于投资组合或画廊
- 使用集合和创建者查询为市场或浏览器提供支持
- 验证或转移压缩NFT(需要Merkle证明)
- 显示NFT的链上交易历史
- 列出从主NFT印刷的版本
NFT方法
首先使用getAsset获取单个NFT或使用getAssetsByOwner获取钱包的集合。每个卡片链接到完整的API参考。
getAsset
通过ID获取一个NFT的完整数据。
getAssetsByOwner
列出一个钱包持有的所有NFT。
searchAssets
按集合、创建者、属性等进行筛选——详见搜索资产指南。
getAssetsByCreator
获取创建者铸造的所有资产。
getAssetsByGroup
获取集合中的所有资产。
getSignaturesForAsset
获取资产的交易历史。
getNftEditions
获取从主NFT印刷的版本。
getAssetProof
获取压缩NFT的Merkle证明。
获取单个NFT
通过其ID检索一个NFT的完整元数据、所有权和集合数据:更多NFT查询
列出钱包的NFT — getAssetsByOwner
列出钱包的NFT — getAssetsByOwner
按创建者 — getAssetsByCreator
按创建者 — getAssetsByCreator
按合集 — getAssetsByGroup
按合集 — getAssetsByGroup
交易历史 — getSignaturesForAsset
交易历史 — getSignaturesForAsset
压缩NFT
状态压缩NFT(cNFTs)使用与常规NFT相同的方法读取 —getAsset、getAssetsByOwner和searchAssets都返回它们。压缩特有的两点是:
- Merkle证明 — 链上操作如转移和销毁需要来自
getAssetProof的证明。 - 历史 — 使用
getSignaturesForAsset(如上所示)获取cNFT的交易历史。
获取Merkle证明 — getAssetProof
获取Merkle证明 — getAssetProof
最佳实践
- 对于返回大量结果集的方法,使用分页。
- 使用try/catch处理错误,并使用指数退避重试瞬时故障。
- 在适当情况下缓存响应以减少API调用。
- 当有多个ID时,使用
getAssetBatch代替多个单独的getAsset调用。
下一步
获取SPL代币
可替代代币余额、供应、持有者和价格。
搜索资产
按合集、创建者和属性过滤NFT。
DAS API 常见问题
关于资产、价格数据和使用的常见问题。