如何使用 NFTScan 的 TON API 實現 NFT 應用开發?

2023-10-21 09:05 NFT_Research


作者:NFT_Research

上周 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 文檔中提供的信息來構建和發起請求,以及處理返回的數據。

鄭重聲明:本文版權歸原作者所有,轉載文章僅為傳播信息之目的,不構成任何投資建議,如有侵權行為,請第一時間聯絡我們修改或刪除,多謝。

標題:如何使用 NFTScan 的 TON API 實現 NFT 應用开發?

地址:https://www.sgitmedia.com/article/13492.html

相關閱讀: