如何使用 NFTScan NFT API 在 Mint Blockchain 上开發 Web3 產品和協議

2024-05-25 00:05:21

Mint Blockchain 是一個基於 OP Stack 構建的 L2 區塊鏈,聚焦在 NFT 領域的創新型 L2 網絡,致力於促進 NFT 資產協議標准的創新和現實商業場景中 NFT 資產的大規模採用。Mint Blockchain 的底層账本安全是完全基於以太坊網絡安全共識構建的。同時作為 L2 網絡,是一個完全兼容 EVM 的公共區塊鏈網絡,以太坊生態的开發者可以無縫將項目擴展到 Mint Blockchain 網絡上來,為以太坊生態提供了有效的可擴展性。

根據 NFTScan 數據顯示,截至 5 月 23 日,Mint Blockchain 上已累計發行 NFT 資產 387,477 枚,NFT Contract 37 個,產生交互記錄 388,471 條,有過交互的錢包地址 381,141 個,總交易額 0.22 ETH。 

創建 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 永不過期,用完為止!

查看 Mint NFT API 文檔

在成功注冊开發者账號獲取 API Key 後,需要查看 NFTScan API 文檔。API 文檔包含了所有可以使用的 API 端點和參數,以及如何構建請求和處理響應的詳細信息。請認真閱讀 API 文檔,並確保理解如何使用 API 來獲取您需要的數據。NFTScan API 服務致力於幫助开發者改善獲取 NFT 數據分析體驗。

NFTScan 目前擁有全網最大最全的 NFT Collection 庫,已支持 Ethereum、Solana、BNBChain、Bitcoin、Mint Blockchain 等在內 25 條區塊鏈的 NFT 全量數據,所涵蓋的 NFT 數據全、種類豐富,提供一整套的接口來獲得 ERC721 和 ERC1155 資產以及交易、項目、市場統計等信息,現在支持 60 多個針對 EVM 兼容鏈的公共接口,以及針對 Solana、Aptos、Bitcoin、TON 的一批相同模型的接口,很大程度上滿足了开發者索引多種類型的 NFT 數據的需求。

Mint NFT API 模型

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

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

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

Collections API:NFTScan 獲取與 NFT Collections 相關的描述、社交媒體及其他基本信息等鏈下數據。NFTScan 通過各個區塊鏈網絡中最主流的 NFT 市場提供的 API 獲取這些信息。此外當前地板價信息是基於 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 升序排序)

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

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

這裏我們通過 Get NFTs by contract 接口為“/v2/assets/{contract_address}”來檢索一個合約地址下 NFT 的詳情信息,路徑參數包括 contract_address 作為選擇,這裏我們查詢的是合約地址 0x776fcec07e65dc03e35a9585f9194b8a9082cddb,名稱為 GreenID 的詳細數據。

點擊 Try it,數據返回如下,數據響應結果顯示該 NFT Collection 所有 item 的基礎數據及元數據信息,這裏我們選擇的 GreenID,可以看到當前項目下一共 374248 個 Items,返回數據按照 token_id 進行排序,例如 id 為 1 的 item:

1)單個 item 基礎數據:

0x776fcec07e65dc03e35a9585f9194b8a9082cddb 及名稱 GreenID,這裏查詢的 NFT Token id 為 1,在項目中的佔比為 1,協議標准為 erc721,鑄造時的錢包地址/持有者錢包地址,被鑄造時的時間戳/Mint 的哈希地址/Token URI 的地址。latest_trade_price(上次成交價)/latest_trade_symbol(上次成交價的貨幣),latest_trade_timestamp(上次成交時間戳)等數據。

2)元數據:從該項目的元數據可以看出 Metadata 數據托管在 ipfs 上,token_uri:https://www.mintchain.io/api/tree/metadata/1,格式為 image/png,存儲路徑以及為對該圖片的細節特徵描述。

3)稀有度描述:得分及綜合稀有度排名。

2/ Retrieve Transactions 系列

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

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

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

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

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

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

這裏我們通過 Get transactions by NFT “/v2/transactions/{contract_address}/{token_id}”這個接口,檢索某 NFT 合約地址的下單個 NFT 交易記錄,查詢參數可選擇交易的 NFT 事件類型(Mint/Transfer/Sale/Burn),使用 ';' 分隔多個事件。

同樣這裏我們檢索 Mint Commemorative NFT tokenID 為 1 的 NFT 交易記錄。按照 Mint/Transfer/Sale/Burn 選擇所有事件類型,結果響應數據包含這個 NFT Item 下所有交易關鍵數據,如交易哈希值、From 和 To 地址、區塊信息、消耗 Gas、交易時間戳等基礎數據等 NFT 交易的特徵信息。數據返回顯示該 item 目前只有一條 Mint 相關交易記錄。

3/ Retrieve Collections 系列

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

  • Search NFT collections(此接口通過在請求正文中應用搜索過濾器來返回 Collection 列表的信息,Collection 按部署塊編號升序排序)

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

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

這裏我們通過接口 Get an NFT collection “/v2/collections/{contract_address}”檢索地址為 0x776fcec07e65dc03e35a9585f9194b8a9082cddb 名稱為 GreenID 的詳情信息:

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 Top Holder 

“/v2/statistics/collection/holder/{contract_address}”主要返回一個 NFT Collection 下的持有量分布,可參考 NFTScan Holders:

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 Mint Blockchain 上各與數據分析和統計有關的信息,如 Trade Ranking、Mint Amount 等等這類接口允許开發者或用戶查詢、分析、和檢索與特定數據集或指標相關的統計數據。可以用於各種用途,包括市場分析、趨勢追蹤、投資決策、以及了解特定數據的性質。

7/ Refresh Metadata

  • Refresh NFT metadata

  • Refresh NFT metadata by contract

  • Submit spam contracts

Refresh Metadata 這類接口可以幫助开發者或用戶提交後臺刷新元數據任務,該任務審核後會刷新提交的指定 Item 或整個合約元數據,以及反饋垃圾詐騙合約地址。

8/ Other

  • Get latest block number(返回 NFTScan 已到達的最新塊號)

  • Get the latest reorganization block numbers(返回最新的重組塊號)

  • Get NFT amount by account(根據請求體中的搜索列表返回账戶地址擁有的 ERC721和 ERC1155 NFT 數量信息)

  • Get NFT owners by contract(返回 ERC721 NFT 合約地址的所有者列表,NFT 按 token_id 升序排序)

  • Get owners by an NFT(返回 ERC1155 NFT 的所有者列表, NFT 按 account_address 升序排序)

構建相關 NFT API 請求

構建 NFTScan 相關的 NFT 數據請求非常簡單便捷。开發者只需要瀏覽 API 文檔找到所需的接口,了解接口地址、請求方法、請求參數等信息。然後根據個人需求選擇編程語言,比如 JavaScript、Python、Java 等,使用該語言的 HTTP 請求庫發送構建好的請求到接口地址,編寫代碼時,开發者只需組織好接口參數,如合約地址、API Key 等,調用對應的 NFTScan 接口,就可以方便地獲取到標准化的 JSON 格式數據。

這裏我們使用接口 Get an NFT collection “/v2/collections/{contract_address}

” 對 Mint Blockchain 上的 GreenID 該項目的詳情數據進行調取,地址為

0x776fcec07e65dc03e35a9585f9194b8a9082cddb,HTTP GET 請求訪問 NFTScan 的 API 接口,使用 Python 的 requests 庫,可以這樣構建請求:

代碼解釋:

  1. 導入 requests 庫:使用 import requests 導入所需的庫。

  2. 定義函數 get_nft_collection_details:

  • contract_address:NFT 合約地址。

  • api_key:用於身份驗證的 API Key。

構建 URL:將基礎 URL 與 contract_address 進行拼接。

設置請求頭:包括 Content-Type 和 x-api-key,後者用於身份驗證。

發送請求:使用 requests.get 發送 GET 請求。

處理響應:

  • 如果請求成功(狀態碼 200),返回 JSON 數據。

  • 否則,返回錯誤信息。

此代碼僅為示例,开發者需要參考實際應用進行構建,請確保將 your_api_key_here 替換為實際的 API Key。

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

推薦文章

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

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

加密蓮
185 4個月前

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

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

倪老師
184 4個月前

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

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

幣圈院士
192 4個月前

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

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

168超神
189 4個月前

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

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

我是周悅盈
164 4個月前

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

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

加密蓮
173 4個月前