如何使用 Bitcoin Ordinals APIs 开发并追踪比特币 NFT
如何使用 Bitcoin Ordinals APIs 开发并追踪比特币 NFT
Bitcoin NFT,也被称为Bitcoin Ordinals协议,是一种在BTC区块链上创建数字资产的方法。Ordinals 由开发者 Casey Rodarmor于2023年1月20日在比特币主网上推出,Ordinals NFT 是在比特币上创建NFT的最新方式。
自从Ordinals发布以来,越来越多的人开始创造比特币NFT。尽管目前处于早期阶段且生态系统尚未完善,但其受欢迎程度不减,数量也迅速增长。根据 Tokenview 数据,截至9月10日以来,比特币网络上已经铸造超过3000万个NFT资产。Ordinals铭文铸造量于5月30日突破1000万枚,7月29日突破2000万枚,这表示该指标在过去一个多月时间里增长超33%。开发者可以利用Tokenview的比特币Ordinals API快速创建相关应用程序,例如比特币的监控工具、Ordinals交易市场等。
如何开发与追踪 Bitcoin Ordinals ?
1. 创建 Tokenview 开发者账号
在开始使用 Bitcoin Ordinals APIs 快速创建相关应用程序之前,首先需要访问开发者网站并创建一个账户。前往 Tokenview 开发者官方网站 点击 “注册”按钮进行注册。
登录后,在 Dashboard(面板)上找到自己独有的 APIKAY,将其复制。访问 API 文档,替换自己的APIKEY。根据文档的指引,就可以开始使用 API 服务了。在 API 文档中,开发者可以找到多种可供选择的接口模式,根据需求来选择最合适的接口。
2. 查看 Bitcoin Ordinals APIs 文档
Bitcoin Ordinals APIs 主要包括了以下三块内容:1. Inscription Info APIs;2. Inscription Transaction APIs;3. Inscription List APIs;4. Inscription Mint/Transfer APIs,里面有核心的字段的介绍和说明,方便开发者利用合适的接口服务于自己正在构建的 Dapp 服务。
Inscription Info APIs: 通过比特币链上交易哈希或Inscription_id或Inscription Number,可获取 Inscription 详情信息。详细信息包括:Inscription ID、输出值、内容格式、内容链接、所在的区块高度等,如下例:
"data": {
"genesisHeight": "784858", // 创建inscription时所处的块高
"inscriptionId": "153f70fcb169a138ac5ad3ad0af8ea9917b2fd476b83af8b9439bc9dfd839e0bi0",
"outputValue": "331",
"output": "6bd0381de7570573708e281ca99819af8a0507c7806085be1b3ef90ed6c55506:2",
"inscriptionNum": "1068130",
"createdTime": "2023-04-11 02:40:23 UTC",
"contentLink": "/content/153f70fcb169a138ac5ad3ad0af8ea9917b2fd476b83af8b9439bc9dfd839e0bi0",
"location": "6bd0381de7570573708e281ca99819af8a0507c7806085be1b3ef90ed6c55506:2:0",
"contentLength": "342 bytes",
"ownerAddress": "bc1pmp3y938d8panfpwph5uah7gjvha5d62uqh6rj7zuegr47malv45sfl40np",
"genesisTransaction": "153f70fcb169a138ac5ad3ad0af8ea9917b2fd476b83af8b9439bc9dfd839e0b", // 创建inscription的交易
"contentType": "image/png",
"locationHeight": 789790
}
Inscription Transaction APIs 根据inscription_id,返回 inscription 的所有交易,详细信息包括:交易所在的块高、转入转出地址、交易类型、交易哈希等。以及根据比特币 address 返回它拥有的 inscription 列表。
"data": [
{
"block": 789790, // 块高
"from": "bc1pguj4a4tzq74pnutf5vcd55jj0nlapmrx85ajn7h8vx5q4mruwylswlv50n", // from地址
"time": 1684116827, // 时间戳
"to": "bc1pmp3y938d8panfpwph5uah7gjvha5d62uqh6rj7zuegr47malv45sfl40np", // to地址
"type": "transfer", // 交易类型
"txHash": "6bd0381de7570573708e281ca99819af8a0507c7806085be1b3ef90ed6c55506" // 交易哈希
},
{
"block": 784858,
"from": "bc1pu2mu6pldn92czpgrfw3crky8f4jc2qeedzfjv2ez9jwqsgnpa2jsllad0t",
"time": 1681180823,
"to": "bc1pguj4a4tzq74pnutf5vcd55jj0nlapmrx85ajn7h8vx5q4mruwylswlv50n",
"type": "created",
"txHash": "153f70fcb169a138ac5ad3ad0af8ea9917b2fd476b83af8b9439bc9dfd839e0b"
}
]
Inscription List APIs 根据比特币 address 返回地址上的 inscription 列表以及各 Inscription 的详细信息。
"data": [
{
"genesisHeight": "784919", // 创建inscription时所处的块高
"inscriptionId": "ab6881fe414029e73de79fdfbec49c45799322995cb02cf7ecb932f91f3f1c15i0",
"outputValue": "546",
"output": "2ddca85f51707c243a5ed6cd6ff6fdb442d6177ab0c8e523d9fead7c2a50a7a4:2",
"inscriptionNum": "1075664",
"createdTime": "2023-04-11 13:02:11 UTC",
"contentLink": "/content/ab6881fe414029e73de79fdfbec49c45799322995cb02cf7ecb932f91f3f1c15i0",
"location": "2ddca85f51707c243a5ed6cd6ff6fdb442d6177ab0c8e523d9fead7c2a50a7a4:2:0",
"contentLength": "349 bytes",
"ownerAddress": "bc1pmp3y938d8panfpwph5uah7gjvha5d62uqh6rj7zuegr47malv45sfl40np",
"genesisTransaction": "ab6881fe414029e73de79fdfbec49c45799322995cb02cf7ecb932f91f3f1c15", // 创建inscription的交易
"contentType": "image/png",
"locationHeight": 789781
}
]
Inscription Mint/Transfer APIs 获取 Ordinals 指定块高的 Mint/Transfer 列表。通过获取各个块高的Mint数据和Transfer数据,开发者可以实时监控BTC上 Ordinals 的发行和交易量,洞察市场信息。
{
"code": 1,
"msg": "成功",
"data":
{
"page": 1, // 页码
"size": 50, // 每页条数
"total": 2103, // 总条数
"data": [
{
"block": 805000, // 块高
"txHash": "003f48e21bf933c59405fc83b34644f8045ded2027fd8b80dfde8475b65eaf07", // 交易哈希
"input": "2803b57d46c7dd3ba93ba5c7dad621e28927b68ac4ab232b36b4dd6d1843e53e:184",
"output": "003f48e21bf933c59405fc83b34644f8045ded2027fd8b80dfde8475b65eaf07:0",
"satIndex": 0,
"outputAddr": "bc1q44anwwlap82vtw40qyw2e4ct3574jtn6fx3hur", // to地址
"outputValue": "294",
"isGenesis": 1, // 1: create, 0: transfer
"inscriptionId": "003f48e21bf933c59405fc83b34644f8045ded2027fd8b80dfde8475b65eaf07i0",
"inputAddr": "bc1pch0nflq06q49uug6qv79349km2j2hl0yfxljh44sc8rgsmyrvnfsle0h6z", // from地址
"inscriptionInfo":
{
"genesisHeight": "805000", // 创建inscription时所处的块高
"inscriptionId": "003f48e21bf933c59405fc83b34644f8045ded2027fd8b80dfde8475b65eaf07i0",
"outputValue": "294",
"content": "{\"p\":\"brc-20\",\"op\":\"mint\",\"tick\":\"sats\",\"amt\":\"99999999\"}",
"output": "003f48e21bf933c59405fc83b34644f8045ded2027fd8b80dfde8475b65eaf07:0",
"inscriptionNum": "26769914",
"createdTime": "2023-08-27 03:31:42 UTC",
"contentLink": "/content/003f48e21bf933c59405fc83b34644f8045ded2027fd8b80dfde8475b65eaf07i0",
"location": "003f48e21bf933c59405fc83b34644f8045ded2027fd8b80dfde8475b65eaf07:0:0",
"contentLength": "57 bytes",
"ownerAddress": "bc1q44anwwlap82vtw40qyw2e4ct3574jtn6fx3hur",
"genesisTransaction": "003f48e21bf933c59405fc83b34644f8045ded2027fd8b80dfde8475b65eaf07", // 创建inscription的交易
"contentType": "text/plain"
}
}]
}
}
根据上述 Ordinals APIs 可开发 BTC 链上的 NFT 工具,也可以使用Tokenview Bitcoin Ordinal 订阅服务追踪链上Ordinals 的资产变化以及某个昂贵的 Ordinals 的转移情况。
3. 追踪 Ordinals 资产变化与转移
Tokenview Bitcoin Ordinals 订阅服务追踪比特币链上铭文的铸造、买卖、交易等信息。且支持两种订阅方式:比特币地址订阅和 Inscription ID 订阅,当发生交易变动时,交易信息会以 Json 形式推送到开发者所设置的Webhook上。
添加相关地址或 Inscription ID,可追踪某个地址上 Ordinals 的资产变化以及转移情况。返回信息示例如下:
{
"address": "bc1pcks69jup7te4k8h006sxv6v47qyhpkuy9cznj8avlz3yq8ssszxs5r6aem", // 订阅对象
"block": 804910,
"input": "124dc8dd8b013dd29023ab0274b1bad7213d24b11e7319586a5d7489c6b40c3a:0",
"inputAddr": "bc1p454g0l8c7ahq9qv6dspcefqm2tcm2d2l5a6sfj7m2vxf73cx8rfqwqf6rp",
"inscriptionId": "ee615327bb32de543805ff3ad0768fb104c7cb995c6430ba2e8f8688d133ef9bi0",
"inscriptionInfo":
{
"content": "{\"p\":\"brc-20\",\"op\":\"mint\",\"tick\":\"text\",\"amt\":\"1000\"}",
"contentLength": "53 bytes",
"contentLink": "/content/ee615327bb32de543805ff3ad0768fb104c7cb995c6430ba2e8f8688d133ef9bi0",
"contentType": "text/plain;charset=utf-8",
"createdTime": "2023-08-26 09:17:10 UTC",
"genesisHeight": 804910, // 创建inscription时所处的块高
"genesisTransaction": "ee615327bb32de543805ff3ad0768fb104c7cb995c6430ba2e8f8688d133ef9b",
"inscriptionId": "ee615327bb32de543805ff3ad0768fb104c7cb995c6430ba2e8f8688d133ef9bi0",
"inscriptionNum": 26621314,
"location": "ee615327bb32de543805ff3ad0768fb104c7cb995c6430ba2e8f8688d133ef9b:0:0",
"output": "ee615327bb32de543805ff3ad0768fb104c7cb995c6430ba2e8f8688d133ef9b:0",
"outputValue": 546,
"ownerAddress": "bc1pcks69jup7te4k8h006sxv6v47qyhpkuy9cznj8avlz3yq8ssszxs5r6aem"
},
"isGenesis": 1, // 1: create, 0: transfer
"msgType": "address-s",
"network": "BTC",
"output": "ee615327bb32de543805ff3ad0768fb104c7cb995c6430ba2e8f8688d133ef9b:0",
"outputAddr": "bc1pcks69jup7te4k8h006sxv6v47qyhpkuy9cznj8avlz3yq8ssszxs5r6aem",
"outputValue": 546,
"satIndex": 0,
"time": "1693041430000",
"txHash": "ee615327bb32de543805ff3ad0768fb104c7cb995c6430ba2e8f8688d133ef9b",
"txType": "Mint"
}
Tokenview Bitcoin Ordinals 数据服务为开发者提供了全面、实时、可靠的BTC NFT核心数据,以便开发者们能够快速获取所需的数据,从而简化和加速开发过程。开发者可以根据自己的业务场景自由组合这些API和订阅服务,以构建符合自己需求的应用程序或解决方案。