如何使用 NFTScan 的 TON API 实现 NFT 应用开发?

news2024/11/7 22:38:30

上周 NFTScan 开发者平台已上线了 TON 网络的 NFT API 服务,TON(The Open Network)是由 Telegram 团队打造的一条 Layer 1 高性能公链,采用自己的 TVM 虚拟机,与 EVM 不兼容。通过先进的技术架构实现每秒百万级 TPS 的高速处理,并支持智能合约和 DApp 开发。TON 采用了分片机制提升扩展性,同时通过数据分片等方式保证网络安全,旨在建立一个高速、安全、可扩展的去中心化网络,为构建 Web 3.0 生态打下坚实基础。 

目前 TON 网络上已累计发行 NFT 资产 1,204,487 枚,NFT Collection 10,123 个,产生交易记录 2,888,936 条,有过交互的钱包地址 762,453 个,总交易额 15,083,265 TON。目前除了兼容 EVM 的 15 条链, NFTScan 还支持了另外 4 条是非 EVM 区块链:Bitcoin、Aptos、Solana。

TON NFTScan:

怎样访问 NFTScan NFT API

创建 NFTScan 开发者账号

在开始使用 NFTScan API 之前,首先需要访问开发者网站并创建一个账户。前往 NFTScan 官方网站点击 NFTScan API “Sign Up”按钮进行注册。

登录后在 Dashboard(面板)上找到自己独有的 API KAY,将其复制。访问 API 文档,将自己的 API KEY 输进 API 文档的相应位置。根据文档的指引,就可以开始使用 API 服务了。在 API 文档中,开发者可以找到多种可供选择的接口模式,根据需求来选择最合适的接口。

在 Dashboard 中,开发人员还可以查看自己 API 使用情况的统计数据,帮助记录历史使用数据。不仅如此,NFTScan 还为每位注册开发者提供 1M CU 的 API 调用服务,用于请求所有的 NFT API 接口,并且 CU 永不过期,用完为止!

查看 TON API 文档

在成功注册开发者账号获取 API Key 后,您需要查看 NFTScan API 文档。API 文档包含了所有可以使用的 API 端点和参数,以及如何构建请求和处理响应的详细信息。请认真阅读 API 文档,并确保理解如何使用 API 来获取您需要的数据。NFTScan API 服务致力于帮助开发者改善获取 NFT 数据分析体验。

NFTScan 目前拥有全网最大最全的 NFT Collection 库,已支持 Ethereum、Solana、BNBChain、Bitcoin、TON、Polygon、zkSync、Aptos、Linea、Base、Avalanche、Arbitrum、Optimism、Scroll、Fantom、Moonbeam、PlatON、Cronos、Gnosis 19 条区块链的 NFT 全量数据,所涵盖的 NFT 数据全、种类丰富,提供一整套的接口来获得 ERC721 和 ERC1155 资产以及交易、项目、市场统计等信息,现在支持 60 多个针对 EVM 兼容链的公共接口,以及针对 Solana、Aptos、Bitcoin、TON 的一批相同模型的接口,很大程度上满足了开发者索引多种类型的 NFT 数据的需求。

TON API 主要包括了以下五个类型接口:

Retrieve Asset/Retrieve Transaction/Retrieve Collection/Statistics/Refresh Metadata,包括里面一些 API 核心的字段的整体介绍和说明,方便开发者知道怎么去获取数据利用这些信息服务于自己正在构建的 Dapp 服务。

Retrieve Asset 系列

  1. Get NFTs by account:/ton/account/own/{account_address}

  2. Get all NFTs by account:/ton/account/own/all/{account_address}

  3. Get minted NFTs by account:/sol/account/mint/{account_address}

  4. Get NFTs by contract:/ton/assets/collection/{contract}

  5. Get single NFT:/ton/assets/{token_address}

  6. Get multiple NFTs:/ton/assets/batch

这个类型的 API 为开发者提供了简单高效的方式去获取各种 NFT 数据,包括根据用户账户或合约地址获取相关 NFT 列表,获取单个或多个 NFT 的详细信息等。开发者可以通过这类接口直接获取链上 NFT 的基础信息、元数据等,无需自己提取和处理链上原始数据。这类接口减轻了链上数据复杂度,大大降低获取 NFT 细节数据的难度,是开发基于 TON NFT 的 DApp、数据分析等应用的重要基础。

Retrieve Transaction 系列:

  1. Get transactions by account:/ton/transactions/account/{account_address}

  2. Get transactions by contract:/ton/transactions/collection/{contract}

  3. Get transactions by NFT:/ton/transactions/{token_address}

这类型的接口可以方便获取 TON NFT 在链上发生的各种交易信息,包括根据账户、集合、资产地址等获取该 NFT 的历史交易记录,返回每笔交易的关键数据。这类接口提供链上原始的区块事件数据,开发者无需处理链上提取,就可以通过简单的接口调用获得需要的 TON NFT 交易数据。获得这些数据后,开发者可以基于此实现数据分析、交易系统等应用。

Retrieve Collection 系列:

  1. Get an NFT collection:/ton/collections/{collection}

  2. Search NFT collections:/ton/collections/filters

通过指定集合地址或过滤条件搜索 NFT Collection,返回匹配条件的集合列表。开发者可以利用这些接口获得任意项目的概况及列表,并基于此开发应用程序,例如数据分析平台可以统计每个集合的情况,可以展示热门 NFT Collection 的信息。

Statistics 系列:

  1. Trade Ranking:/ton/statistics/ranking/trade

  2. Collection Statistics:/ton/statistics/collection/{collection}

Trade Ranking 接口可以获取 TON 链上 NFT 交易排行榜,Collection Statistics 接口可以通过指定项目地址,获取该集合的关键统计数据等。这些统计类接口可以大幅简化开发者获取 NFT 数据来进行统计分析的工作,构建 NFT 交易分析平台,或者为 NFT 应用提供关键的统计参数。

1. Refresh Metadata:/ton/refresh/metadata

这个接口用来提交刷新指定 NFT 资产的元数据后台任务。

查询相关 API 

1/ Get NFTs by contract:/ton/assets/contract/{contract_address}

通过 NFTScan TON API 的该接口,开发者可以通过检索一个 NFT 合约地址,并返回整个 Contract 的一组 NFT 信息列表,NFT 按代币地址升序排列。

这里我们输入合约地址:EQCA14o1-VWhS2efqoh_9M1b_A9DtKTuoqfmkn83AbJzwnPi

点击 Try it 将返回该合约地址下的所有 NFT 资产的详细信息返回数据等等,数据默认分页返回,可通过 limit 和 cursor 参数控制每页数量和页码,返回数据包括每个 NFT 的 token address、token id、metadata、owner 地址等数据。返回数据默认分页返回,可通过 limit 和 cursor 参数控制每页数量和页码,灵活获取不同粒度的 NFT 数据。获得返回的数据后,开发者可以构建应用展示 NFT 详情,或者提取数据进行后续分析处理。

可以看到该合约地址下共有 102185 个 Items,数据显示如下:

2/ Get transactions by account:/ton/transactions/account/{account_address}

通过调用该接口并输入账户地址,查询参数可选择指定 NFT 合约地址进行查询,开发者可以轻松获得该钱包地址作为 sender 或 receiver 参与的所有历史 NFT 转账交易数据,包括每笔交易的区块高度、时间戳、Token ID、交易价格、交易类型等信息。这里我们查询的地址为:

EQBwPvcqbRCICLo3cWOiFPO1QdmNZBcYAfpvwEaxjr9hKP-R

3/ Trade Ranking: /ton/statistics/ranking/trade

该接口可以帮助开发者快速获取 TON 生态中 NFT 项目的 Ranking 排名数据。该接口会返回按照筛选条件如交易额从高到低排列的一组数据。通过该排名列表,开发者可以清晰地看到交易最活跃的 NFT 项目,判断不同项目的流动性情况,确定潜力项目或需要更多研究的项目。

我们可以查看查询参数 time:15m/30m/1h/6h/12h/1d/7d/30d;排序字段:volume/sales/floor_price/average_price 等进行条件筛选的 NFT 交易排名数据统计,可参考 TON NFTScan Trading

构建相关 API 请求

开发者在 NFTScan 的 API 文档中找到所需的 TON API 接口和参数后,可以使用选择的编程语言(如 Python、Java、JavaScript 等)编写 API 请求代码。下面是一些通用的步骤,以及一个示例来说明如何使用 Python 编写 TON API 请求代码:

1、首先,导入所选编程语言中的 HTTP 请求库。在 Python 中,通常会使用 requests 库

2、定义 NFTScan API 的基本 URL 和所需的参数。在 API 文档中找到合适的接口和参数

3、将参数添加到基本 URL 和端点中,构建完整的 API 请求 URL

4、使用所选编程语言的 HTTP 库发起请求,通常是一个 GET 请求

5、检查 HTTP 响应的状态码,通常状态码为 200 表示请求成功

这些通用步骤可以用于与 NFTScan API 或其他类似的 API 进行交互,根据 API 文档中提供的信息来构建和发起请求,以及处理返回的数据。


About NFTScan

NFTScan 成立于 2021 年初,总部位于香港,是全球领先的 NFT 数据基础设施服务商,目前已支持 Bitcoin、Ethereum、BNBChain、Polygon、Solana、TON、Arbitrum、Optimism、zkSync、Aptos 等在内的 19 条主流区块链网络。NFTScan 团队致力于为数以亿计的 Web3 用户提供简洁高效的 NFT 检索服务,为新一代金融科技公司提供安全稳定的多链 NFT 索引服务,用数据来推动 NFT 生态的繁荣发展!目前,NFTScan 在为包括 CMC、Binance NFT、Bybit、KuCoin、HashKey Group 、Mask Network、imToken、Enjin、Coin98 等在内的 5000+ 开发者提供多链 NFT 数据支持!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1114757.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

为什么需要 SOME/IP

传统汽车协议的问题 如今的汽车不仅仅是通勤和交通工具,车辆现在设计得功能齐全,使旅程成为一种豪华体验。所有这些都是通过将先进的电子技术与车辆的发动机控制单元(ECU)集成而实现的。这种新的情景显著改变了ECU的不同单元之间…

生成扩散模型理论框架

1、随机微分方程(Stochastic Differential Equation,SDE) DDPM的一般化形式 2、常微分方程(Ordinary differential equation,ODE) DDIM的一般化形式 3、得分匹配(Score matching) …

如何快速高效的掌握一门新技术

目录 前言1 确定合适的学习目标1.1 SMART目标1.2 不同类型的学习目标 2 建立知识体系3 学习金字塔:教授他人3.1 深化理解3.2 记忆巩固3.3 自信提升3.4 知识共享 4 刻意练习4.1 构建个人项目4.2 参与实际项目4.3 参与开源项目4.4 解决复杂问题 结论 前言 学习一门新…

cAdvisor监控Docker容器做性能测试

cAdvisor监控Docker容器做性能测试 缘起 当前有个服务做技术选型,服务要求比较高的性能,要做性能测试。部署的环境是容器话部署,但申请新的容器流程较长,于是我打算在流程走完之前简单评估下性能,来确定技术选型是否…

微信聚合聊天系统的便捷功能:自动回复

当下,微信已然成为我们在工作中必不可少的沟通工具。但由于微信平台尚未开放自动回复、快捷回复等便捷功能,在通过平台展开工作时,一旦咨询量非常大,往往会出现回复不及时的情况。如此一来便会影响客户的满意度,降低客…

记一次EDU证书站

如果文章对你有帮助,欢迎关注、点赞、收藏一键三连支持以下哦! 想要一起交流学习的小伙伴可以加zkaq222(备注CSDN,不备注通不过哦)进入学习,共同学习进步 目录 目录 1.前言: 2.信息搜集 3.漏…

H5前端开发——BOM

H5前端开发——BOM BOM(Browser Object Model)是指浏览器对象模型,它提供了一组对象和方法,用于与浏览器窗口进行交互。 通过 BOM 对象,开发人员可以操作浏览器窗口的行为和状态,实现与用户的交互和数据传…

sahi切片辅助训练推理

本文的目的切片yolov5标注格式的数据,并保存图片和标注文件 代码实现步骤如下 把yolov5格式转换成coco格式标签;切片图片和coco标签;把切片出来的coco标签转换回yolov5标签格式 # 1. 把yolov5格式转换成coco格式标签; # 2. 切片…

Java关键字 `super` 的骚操作

文章目录 1. 调用父类构造方法2. 访问父类属性和方法3. 创建父类引用4. 在接口中使用 super5. 在 Lambda 表达式中使用 super6. 异常处理结语 🎉欢迎来到Java学习路线专栏~Java关键字 super 的骚操作 ☆* o(≧▽≦)o *☆嗨~我是IT陈寒🍹✨博客主页&#…

Android gradle动态配置不同打包环境参数值

一、背景 在android开发中,包的构建通过gradle脚本来完成的,这个脚本也提供了很多东西来配合我们开发。最常见的类似渠道和不同版本包。 打包的配置常见的是buildTypes节点,通过buildTypes设置不同的action完成不同包的输出 二、gradle的Jav…

(八)vtk常用类的常用函数介绍(附带代码示例)

vtk中类的说明以及函数使用 https://vtk.org/doc/nightly/html/annotated.html 一、vtkObject派生类 1.vtkPoints 点 InsertNextPoint(double, double, double):插入点。 2.vtkCellArray 单元数组 InsertNextCell (vtkIdType npts, const vtkIdType *pts)&…

【底层服务/编程功底系列】「大数据算法体系」带你深入分析MapReduce算法 — Shuffle的执行过程

【底层服务/编程功底系列】「大数据算法体系」带你深入分析MapReduce算法 — Shuffle的执行过程 Shuffle是什么Shuffle的流程处理map任务的执行流程reduce任务的执行流程 Shuffle过程分析和优化map任务深入分析细化步骤分析1. 数据分片读取2. 分配计算Reduce服务Partitioner分区…

LINUX | hexdump以16进制查看文件内容

LINUX | hexdump以16进制查看文件内容 时间:2023-10-20 文章目录 LINUX | hexdump以16进制查看文件内容1.参考2.示例1.以ASCII字符显示文件中字符2.以16进制和相应的ASCII字符显示文件里的字符3.只显示文件中前n个字符4.以偏移量开始格式输出 1.参考 1.Linux命令–h…

C语言指针精简版(二)

目录 数组名的理解 使⽤指针访问数组 ⼀维数组传参的本质 冒泡排序 ⼆级指针及其解引用 指针数组 实例:指针数组模拟⼆维数组 数组名的理解 对于数组名表示的意义一共有三种情况: *1、数组名:表示数组⾸元素地址。 *2、sizeof(数组名…

中文编程工具开发语言开发的实际案例:触摸屏点餐软件应用场景实例

中文编程工具开发语言开发的实际案例:触摸屏点餐软件应用场景实例 软件特色: 1、功能实用,操作简单,不会电脑也会操作,软件免安装,已内置数据库。软件在关闭的时候,可以设置会员数据备份到U盘&…

@Controller与@RestController

总结 Controller :定义一个控制器类. RequestMapping :给出外界访问方法的路径,或者说触发路径 ,触发条件。 具体解析访问路径到某个方法上. ResponseBody :标记Controller类中的方法。把return的结果变成JSON对象…

束从轩的“网红人设”,正在加重老乡鸡的割裂

文 | 螳螂观察 作者 | 图霖 “老乡鸡20周年,我请大家免费吃饭。” 和以往的每场活动一样,“网红老板”束从轩穿着印有老乡鸡品牌Logo的大红短袖T恤,向广大网友发出热情邀请,真诚得像是自家村口小卖部好客的大叔。 这并不是束从…

虹科 | 测试方案 | 汽车示波器 通讯网络(LIN/CAN/FlexRay)测试方案

通讯网络(LIN/CAN/FlexRay)测试 虹科CAN总线示波器把你的PC电脑变成一台功能强大的汽车测试工具,用于检测车辆网络各类通讯信号,如CAN Bus、CAN FD、LIN、FlexRay,还可以检测车上所有传感器和执行器的信号 串行译码 …

【动态规划】647. 回文子串、516. 最长回文子序列

提示:努力生活,开心、快乐的一天 文章目录 647. 回文子串💡解题思路🤔遇到的问题💻代码实现🎯题目总结 516. 最长回文子序列💡解题思路🤔遇到的问题💻代码实现&#x1f3…