递归
沙盒化的一个重要例外是递归:访问“ord”的“/content”允许端点,允许铭文访问其他端点的内容通过请求 /content/<INSCRIPTION_ID>
来获取铭文。
由于对递归端点的更改可能会破坏依赖它们的铭文,递归端点具有向后兼容性保证,这是ord server
的其他端点所不具备的。具体来说:
- 递归端点将不会被移除。
- Object fields returned by recursive endpoints will not be renamed or change types
递归端点返回的对象字段将不会被重命名或更改类型。
这有许多有趣的用例:
-
重新混合现有铭文的内容。
-
将代码、图像、音频或样式表片段发布为公共的共享资源。
-
生成艺术收藏,其中算法使用JavaScript刻写,并从具有独特种子的多个铭文中实例化。
-
生成个人资料图片集,其中包含配件和属性刻录为单独的图像,或刻录在共享纹理图集中,然后组合,拼贴风格,在多个铭文中以独特的组合。
递归端点是
/content/<INSCRIPTION_ID>
: 铭文的内容<INSCRIPTION_ID>
/blockhash/<HEIGHT>
:给定块高度的块哈希。/blockhash
:最新的块哈希。/blockheight
:最新区块高度。/r/blockinfo/<QUERY>
: 区块信息.<QUERY>
可能是区块高度或者区块哈希/blocktime
:最新块的 UNIX 时间戳。/r/children/<INSCRIPTION_ID>
: 前100个子铭文的ID./r/children/<INSCRIPTION_ID>/<PAGE>
: 100个子铭文ID的合集 on<PAGE>
./r/children/<INSCRIPTION_ID>
: 前100个子铭文的ID./r/children/<INSCRIPTION_ID>/<PAGE>
: 100个子铭文ID的合集 on<PAGE>
./r/inscription/:inscription_id
: 关于一个铭文的信息/r/metadata/<INSCRIPTION_ID>
: 包含十六进制编码的 CBOR 元数据 的 JSON 字符串/r/children/<INSCRIPTION_ID>
: 前100个子铭文的ID./r/children/<INSCRIPTION_ID>/<PAGE>
: 100个子铭文ID的合集 on<PAGE>
./r/sat/<SAT_NUMBER>
: 在一个Sats上的头100个铭文ID./r/sat/<SAT_NUMBER>/<PAGE>
: 在<PAGE>
上的100个铭文ID合集./r/sat/<SAT_NUMBER>/at/<INDEX>
: 所有<INDEX>
处在一个聪上的铭文ID<INDEX>
可能是从索引往后的负数比如0
是第一个而-1
是最近的.
注意: <SAT_NUMBER>
仅允许使用sat的实际数字,不允许使用度数、百分位数或小数等其他sat表示法。我们可能会在将来考虑支持这些表示法。
来自上述递归端点的响应是 JSON。为了向后兼容,支持其他端点,其中一些返回纯文本响应。
/blockheight
:最新区块高度。/blockhash
:最新的块哈希。/blockhash/<HEIGHT>
:给定块高度的块哈希。/blocktime
:最新块的 UNIX 时间戳。
示例
/r/blockhash/0
:
"000000000019d6689c085ae165831e934ff763ae46a2a6c172b3f1b60a8ce26f"
/r/blockheight
:
777000
/r/blockinfo/0
:
Note: feerate_percentiles
are feerates at the 10th, 25th, 50th, 75th, and 90th percentile in sats/vB.
{
"average_fee": 0,
"average_fee_rate": 0,
"bits": 486604799,
"chainwork": "0000000000000000000000000000000000000000000000000000000100010001",
"confirmations": 0,
"difficulty": 0.0,
"hash": "000000000019d6689c085ae165831e934ff763ae46a2a6c172b3f1b60a8ce26f",
"feerate_percentiles": [0, 0, 0, 0, 0],
"height": 0,
"max_fee": 0,
"max_fee_rate": 0,
"max_tx_size": 0,
"median_fee": 0,
"median_time": 1231006505,
"merkle_root": "0000000000000000000000000000000000000000000000000000000000000000",
"min_fee": 0,
"min_fee_rate": 0,
"next_block": null,
"nonce": 0,
"previous_block": null,
"subsidy": 5000000000,
"target": "00000000ffff0000000000000000000000000000000000000000000000000000",
"timestamp": 1231006505,
"total_fee": 0,
"total_size": 0,
"total_weight": 0,
"transaction_count": 1,
"version": 1
}
/r/blocktime
:
1700770905
/r/children/60bcf821240064a9c55225c4f01711b0ebbcab39aa3fafeefe4299ab158536fai0/49
:
{
"ids":[
"7cd66b8e3a63dcd2fada917119830286bca0637267709d6df1ca78d98a1b4487i4900",
"7cd66b8e3a63dcd2fada917119830286bca0637267709d6df1ca78d98a1b4487i4901",
...
"7cd66b8e3a63dcd2fada917119830286bca0637267709d6df1ca78d98a1b4487i4935",
"7cd66b8e3a63dcd2fada917119830286bca0637267709d6df1ca78d98a1b4487i4936"
],
"more":false,
"page":49
}
/r/children/60bcf821240064a9c55225c4f01711b0ebbcab39aa3fafeefe4299ab158536fai0/inscriptions/49
:
{
"children": [
{
"charms": [
"cursed"
],
"fee": 44,
"height": 813929,
"id": "7cd66b8e3a63dcd2fada917119830286bca0637267709d6df1ca78d98a1b4487i4900",
"number": -223695,
"output": "dcaaeacf58faea0927468ea5a93f33b7d7447841e66f75db5a655d735510c518:0",
"sat": 1897135510683785,
"satpoint": "dcaaeacf58faea0927468ea5a93f33b7d7447841e66f75db5a655d735510c518:0:74188588",
"timestamp": 1698326262
},
...
{
"charms": [
"cursed"
],
"fee": 44,
"height": 813929,
"id": "7cd66b8e3a63dcd2fada917119830286bca0637267709d6df1ca78d98a1b4487i4936",
"number": -223731,
"output": "dcaaeacf58faea0927468ea5a93f33b7d7447841e66f75db5a655d735510c518:0",
"sat": 1897135510683821,
"satpoint": "dcaaeacf58faea0927468ea5a93f33b7d7447841e66f75db5a655d735510c518:0:74188624",
"timestamp": 1698326262
}
],
"more": false,
"page": 49
}
/r/inscription/3bd72a7ef68776c9429961e43043ff65efa7fb2d8bb407386a9e3b19f149bc36i0
{
"charms": [],
"content_type": "image/png",
"content_length": 144037,
"delegate": null,
"fee": 36352,
"height": 209,
"id": "3bd72a7ef68776c9429961e43043ff65efa7fb2d8bb407386a9e3b19f149bc36i0",
"number": 2,
"output": "3bd72a7ef68776c9429961e43043ff65efa7fb2d8bb407386a9e3b19f149bc36:0",
"sat": null,
"satpoint": "3bd72a7ef68776c9429961e43043ff65efa7fb2d8bb407386a9e3b19f149bc36:0:0",
"timestamp": 1708312562,
"value": 10000,
"address": "bc1pz4kvfpurqc2hwgrq0nwtfve2lfxvdpfcdpzc6ujchyr3ztj6gd9sfr6ayf"
}
/r/metadata/35b66389b44535861c44b2b18ed602997ee11db9a30d384ae89630c9fc6f011fi3
:
"a2657469746c65664d656d6f727966617574686f726e79656c6c6f775f6f72645f626f74"
/r/sat/1023795949035695
:
{
"ids":[
"17541f6adf6eb160d52bc6eb0a3546c7c1d2adfe607b1a3cddc72cc0619526adi0"
],
"more":false,
"page":0
}
/r/sat/1023795949035695/at/-1
:
{
"id":"17541f6adf6eb160d52bc6eb0a3546c7c1d2adfe607b1a3cddc72cc0619526adi0"
}
See examples for on-chain examples of inscriptions that feature this functionality.