如何使用 NFTScan NFT API 在 Ethereum 網絡上开發 Web3 應用

2023-11-02 00:11:49

以太坊(Ethereum)是一個去中心化的开源的有智能合約功能的公共區塊鏈平臺, 由世界各地的計算機組成的網絡,遵循一套稱為以太坊協議的規則。以太坊網絡提供了一個基礎,任何人都可以在上面構建和使用社區、應用程序、組織和數字資產,以太幣(ETH)是以太坊的原生加密貨幣。截至目前以太幣是市值第二高的加密貨幣,僅次於比特幣,目前以太坊是使用最多的區塊鏈。

目前來看 Ethereum NFT 生態處在高速發展的階段,就 NFTScan 數據來看,截至 10 月 31 日,Ethereum 網絡上已累計發行 NFT 資產 150,931,372 枚,NFT Collection 275,120 個,產生交易記錄 262,341,455 條,有過交互的錢包地址 11,049,076 個,總交易額 34,293,393.13 ETH。

Ethereum NFTScan:

NFTScan 提供的 API,开發者可以實現高效自動化地獲取和處理海量 NFT 數據,無需人工操作和復雜判斷,大大降低了开發成本。相比自主开發監測系統,使用 NFTScan 的標准化 API 直接構建,不僅省去了復雜的設計和开發過程,也減少了後續的維護和升級成本。API 可以輕松實現高頻率監測,降低人力成本。此外,NFTScan API 返回規範化的數據格式,使得开發和優化監測工具變得更加簡單高效,自定義的參數設置也讓开發者可以靈活地定制屬於自己的解決方案。

怎樣訪問 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 永不過期,用完為止!

查看 Ethereum 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 數據的需求。

Ethereum NFT API 模型

主要包括了以下三個模型接口,包括裏面一些 API 核心的字段的整體介紹和說明,方便开發者知道怎么去獲取數據利用這些信息服務於自己正在構建的 Dapp 服務。

Assets API:"Assets"是 NFT 中最關鍵的數據字段,用於唯一標識和描述數字資產。开發者可以通過提取 Ethereum 區塊鏈上 NFT 的"Assets"數據來獲取全面的了解,並構建相關應用。"Assets"對象提供了數字資產的唯一標識以及其整個生命周期的數據,為开發者理解和應用 NFT 提供了基礎。

NFTScan Ethereum API 中的核心數據模型即為 Assets,它代表了每一個獨特的數字項目,主要包括了 token_id、collection 名稱、tx_hash、區塊 number、mint 價格、持有者等全面數據。

Transactions API:交易模型代表了區塊鏈上一個 NFT 資產的全量交易數據,為开發者提供 NFT 的完整生命周期交易信息。包括 NFT 的 mint、轉移、銷售、和其他交易活動,為开發者提供了深入了解 NFT 資產在 Ethereum 生態系統中的流動和演變過程的機會。NFTScan 不斷地匯總來自各個區塊鏈網絡的 NFT 交易市場和相關交易合約信息,目前 NFTScan 已收錄用於追蹤和了解 NFT 市場的動態,同時也有助於开發者構建基於 NFT 的應用程序和工具。

用戶可以通過 Transactions API 獲取任意 NFT 資產完整的交易記錄、行為及當前所有權信息,實現對 NFT 的全面跟蹤,為开發者分析 NFT 的交易特徵、價格走勢、流轉路徑等提供了全面可靠的數據來源。

Collections API:NFTScan 獲取與 NFT Collections 相關的描述、社交媒體及其他基本信息等都鏈下數據。NFTScan 通過各個區塊鏈網絡中最主流的 NFT 市場提供的 API 獲取這些信息。此外當前地板價信息是基於 NFT 市場的訂單信息的集中式數據,也是通過 API 可獲取的。

NFTScan 會持續跟蹤新出現的 NFT 項目,並快速獲取其在各交易平臺公开的鏈下數據信息,通過 NFT Collections API 开放給开發者,开發者可以無需逐個聚合不同平臺的數據,就可以通過 Collections API 獲取項目的鏈下描述、持有者、交易活動等關鍵信息,並集成數據於應用中。

Ethereum NFT API 檢索

1/Retrieve Assets 系列

  • Get NFTs by account(通過錢包地址檢索 NFT)

  • Get all NFTs by account(檢索錢包地址的所有 NFT,並根據合約地址對 NFT 進行分組,如果账戶地址擁有的 NFT 總數超過 2000 個,則返回的 NFT 將限制在 2000 個以下。在這種情況下,开發者和用戶可以通過分頁查詢請求按账戶獲取該账戶地址擁有的所有 NFT)

  • Get minted NFTs by account(檢索該錢包地址的 Mint 過的 NFT)

  • Get NFTs by contract(通過合約地址檢索 NFT,並按 token_id 升序排序)

  • Get single NFT(檢索單個 NFT)

  • Get multiple NFTs(同時檢索多個合約地址的 NFT)

  • Search NFTs(該接口通過在請求正文中應用搜索篩選器來返回 NFT 資產列表。資產按 nftscan_id 升序排序。注意:僅使用 block_number 條件過濾數據時,block_number_start 和 block_number_end 之間的範圍不能超過 10000)

  • Get NFTs by attributes(該接口返回一組屬於具有屬性的NFT合約地址的NFT。NFT 按 token_id 升序排序)

  • Get all multi-chain NFTs by account(該接口返回账戶地址擁有的所有多鏈NFT,NFT 根據合約地址進行分組)

這裏我們通過一個錢包地址來檢索 NFT,使用接口 Get NFTs by account:/v2/account/own/{account_address},我們這裏請求的是巨鯨地址:

0xca1257ade6f4fa6c6834fdc42e030be6c0f5a813 的所有 NFT。

點擊 Try it 數據響應結果:該地址下一共有 359 個 item,分別按照 100 的區間進行分組,例如,我們對對其持有一些頂級 NFT Collection 的基礎信息描述等等,可見該地址是 BAYC 系列持倉大戶:

2/ Retrieve Transactions 系列

  • Get transactions by account(該接口返回錢包地址的 NFT 交易列表)

  • Get transactions by contract(該接口返回 NFT 合約地址的 NFT 交易列表)

  • Get transactions by NFT(該接口返回單個 NFT 的 NFT 交易列表)

  • Search transactions(該接口返回在請求正文中應用搜索過濾器來返回 NFT 交易列表)

  • Get transactions by to address(該接口返回按交易參數過濾的 NFT 交易列表)

  • Get transactions by hash(該接口返回根據交易哈希列表查詢到的交易記錄)

這裏我們通過 Get transactions by contract 這個接口,檢索某個地址的交易記錄,查詢參數可選擇交易的 NFT 事件類型(Mint/Transfer/Sale/Burn),使用 ';' 分隔多個事件。這裏按照 Mint 的事件類型,輸入自己的 api-key 之後,結果響應數據包含這筆 NFT 交易的所有關鍵數據,如交易哈希值、區塊信息、From 和 To 地址、合約地址、交易時間戳等基礎數據外,還有轉账的Token ID、交易金額和幣種等 NFT 交易的特徵信息。

3/ Retrieve Collections 系列

  • Get an NFT collection(根據 Collection 的合約地址查詢詳情,包括概覽及按照描述對 Item 進行分類,持有者分布、平均價格、地板價等基本概括信息。

  • Search NFT collections(此接口通過在請求正文中應用搜索過濾器來返回 Collection 列表的信息,Collection 按部署塊編號升序排序。注意:僅使用 block_number 條件篩選數據時,block_number_start 和 block_number_end 之間的範圍不能超過 10000)

  • Get NFT collections by account(該接口返回具有給定账戶地址的項目列表信息,Collection 按地板價價從高到低排序)

  • Get NFT collections by ranking(該接口返回具有給定排序字段的項目列表信息,Collection 按給定的排序字段和給定的排序方向排序)

這裏我們請求通過錢包地址獲取全量 NFT Collection,使用接口 Get NFT collections by account:/v2/collections/own/{account_address} 我們這裏請求的是账戶地址:

0xca1257ade6f4fa6c6834fdc42e030be6c0f5a813 所有 ERC-721 NFT Collection 點擊 Try it 數據響應結果:

該地址下一共持有 20 個 NFT Collection,按照地板價進行排序,以及對其持有項目基礎信息描述等等,該地址下一共持有:BoredApeYachtClub、MutantApeYachtClub、BoredApeKennelClub、Otherdeed、HV-MTL 等等,可見該巨鯨是猴子系列持倉大戶。

4/ Collection Statistics:Collection 統計分析系列

  • Collection Statistics(該接口提供 NFT Collection 的分析統計概覽數據)

  • Collection Trade Distribution(該接口主要提供項目交易分布)

  • Collection Trending Statistics(主要返回一個項目的 Trading 統計排序)

  • Collection Holding Amount Distribution(該接口可返回 NFT 項目持有量的分布信息)

  • Collection Holding Period Distribution(數據返回 NFT 項目持有期分布信息)

  • Collection Blue Chip Statistics(藍籌項目統計概覽數據)

  • Collection Blue Chip List(該項目涉及的藍籌項目清單,可參考 NFTScan Blue Chip Collection)

  • Collection Top Holder(該 Collection 的頂級持有者分布)

這裏我們示例檢索 Collection Trade Distribution 接口為

/v2/statistics/collection/trade/{contract_address} 主要返回一個 NFT Collection 在不同時間段的交易分布數據,具體可參考 NFTScan Traded Distribution:

https://www.nftscan.com/0xbc4ca0eda7647a8ab7c2061c2e118a18a936f13d?module=Overview

5/ Account Statistics 系列

  • Account Overview Statistics(該接口返回账戶地址的概覽統計信息,參考 NFTScan Overview)

  • Account Holding Distribution(該接口返回账戶地址的 NFT 持有分布統計信息,參考 NFTScan Portfolio)

  • Account Holding NFT Trending(該接口返回账戶地址的 NFT 持有量(或數量)統計信息,參考 NFTScan Portfolio)

6/ Analytic Statistics 系列

該系列接口通常用於獲取 NFTScan Ethererum 網絡上各與數據分析和統計有關的信息,如 Trade Ranking、Mint Amount 等這類接口允許开發者或用戶查詢、分析、和檢索與特定數據集或指標相關的統計數據。可以用於各種用途,包括市場分析、趨勢追蹤、投資決策、以及了解特定數據的性質。

參考:https://eth.nftscan.com/analytics

7/ Refresh Metadata 系列及 Other

Refresh Metadata 該接口可以幫助开發者或用戶提交後臺刷新元數據任務,該任務審核後會刷新提交的指定 Item 或整個合約元數據。其他接口包括返回最新區塊號、錢包地址擁有的 ERC721 和 ERC1155 NFT 數量信息等等。

構建相關 NFT API 請求

开發者可以使用不同的語言來編寫調用 NFTScan API 的代碼如 Python、Java、JavaScript 等等 。例如在 Python 中,可以使用 requests 庫來發起 API 請求;在 JavaScript 中可以使用 axios;在 Java 中可以用 OkHttp 或 Retrofit 等庫。編寫代碼時,开發者只需組織好接口參數,如合約地址、API Key 等,調用對應的 NFTScan 接口,就可以方便地獲取到標准化的 JSON 格式數據。

下面按使用 Python 來通過 NFTScan 的 API 請求一個錢包地址的 NFT 持有情況,使用接口 /v2/account/own/{account_address},先保證已安裝 requests庫來發送 GET 請求。

請確保將 YOUR_WALLET_ADDRESS 替換為實際的錢包地址。隨後,开發者可以根據 API 返回的 JSON 數據進一步處理 NFT 數據,提取和分析所需的信息。這是一個基本的示例,开發者可以根據自己的需求定制代碼以處理 NFT 數據,期待开發者可以在這裏自由發揮創意,孕育出更多 NFT 創新應用,推進整個行業的發展!

About NFTScan

NFTScan 成立於 2021 年初,總部位於香港,是全球領先的 NFT 數據基礎設施服務商,目前已支持 Bitcoin、Ethereum、BNBChain、Polygon、Solana、TON、Arbitrum、Optimism、zkSync、Base、Scroll、Aptos 等在內的 19 條主流區塊鏈網絡。NFTScan 團隊致力於為數以億計的 Web3 用戶提供簡潔高效的 NFT 檢索服務,為新一代金融科技公司提供安全穩定的多鏈 NFT 索引服務,用數據來推動 NFT 生態的繁榮發展!目前,NFTScan 在為包括 MetaMask、CMC、Binance NFT、Bybit、KuCoin、HashKey Group 、Mask、imToken、Enjin、Coin98 等在內的 5000+ 开發者提供多鏈 NFT API 數據服務!

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

推薦文章

btc日內再次下跌 短线應當如何處理?

盡管以太坊現貨ETF獲批是個好消息,但市場反應卻不如預期。在消息公布後,以太坊價格出現了小幅下跌,...

加密蓮
66 1個月前

7月23日、BTC(合約)ETH(合約)行情分析及操作策略

昨日收益還是不錯的,日內給出的現價空單分別止盈我們目標點位,恭喜跟上的朋友喫肉。時間一晃到月底了,...

倪老師
66 1個月前

幣圈院士:血與淚的教訓!交易者為何總是撞死在同一棵樹上?

幣圈院士談。交易市場中的幾種“死法” 在幣圈市場鱗次櫛比的海洋,風起雲湧,時常讓人感到驚手不及。在...

幣圈院士
58 1個月前

7月23:Mt. Gox 比特幣錢包在市場緊縮的情況下轉移了價值 28.2 億美元的 BTC

7月23:Mt. Gox 比特幣錢包在市場緊縮的情況下轉移了價值 28.2 億美元的 BTC一個引...

168超神
65 1個月前

悅盈:比特幣68000的空完美落地反彈繼續看跌 以太坊破前高看回撤

一個人的自律中,藏着無限的可能性,你自律的程度,決定着你人生的高度。 人生沒有近路可走,但你走的每...

我是周悅盈
56 1個月前

btc完美盈利 晚間波動較大注意

昨日btc空單完美給到,最大化走出一千七百點空間~ btc: 日內开盤下跌繼續測試66000一线,...

加密蓮
59 1個月前