Вступление
Данное пособие является руководством по ordinal theory. Ordinal theory занимается сатоши, наделяя их индивидуальностью и позволяя отслеживать, передавать и наделять смыслом.
Сатоши, а не биткоин, являются основной атомарной валютой сети Bitcoin. Один биткоин может быть разделен на 100,000,000 сатоши, но не более.
Ordinal theory не требует сайдчейна или токена помимо Bitcoin и может использоваться без каких-либо изменений в сети Bitcoin. Она работает уже сейчас.
Ordinal theory наделяет сатоши нумизматической ценностью, позволяя коллекционировать их и торговать ими как сувенирами.
На отдельные сатоши можно наносить надписи произвольного содержания, создавая уникальные цифровые артефакты, характерные для биткоина, которые можно хранить в биткоин-кошельках и передавать с помощью биткоин-транзакций. Надписи так же долговечны, неизменяемы, безопасны и децентрализованы, как и сам Биткойн.
Возможны и другие, более необычные варианты использования: colored-coins вне блокчейна, инфраструктура открытых ключей с ротацией ключей, децентрализованная замена для DNS. Однако пока такие варианты использования являются умозрительными и существуют только в головах сторонних ordinal теоритиков.
Подробнее о порядковой теории смотрите в Обзор Ordinal theory.
Подробнее об inscriptions смотрите в разделе inscriptions.
When you're ready to get your hands dirty, a good place to start is with inscriptions, a curious species of digital artifact enabled by ordinal theory.
Authors
Ссылки
- GitHub
- BIP
- Discord
- Сайт Open Ordinals Institute
- Open Ordinals Institute X
- Mainnet Block Explorer
- Signet Block Explorer
Видео
Обзор Ordinal Theory
Ordinals - это схема нумерации сатоши, позволяющая отслеживать и передавать отдельные сатоши. Эти номера называются ordinal numbers. Сатоши нумеруются в том порядке, в котором они добываются, и передаются от входов транзакций к выходам транзакций в порядке: первым пришёл - первым ушёл (FIFO). И схема нумерации, и схема перевода зависят от порядка, причем схема нумерации - от порядка добычи сатоши, а схема перевода - от порядка входов и выходов транзакций. Отсюда и название - ordinals.
Техническая информация представлена в the BIP.
Ordinal theory не требует создания отдельного токена, другого блокчейна или каких-либо изменений в Bitcoin. Она работает прямо сейчас.
Ordinal numbers имеют несколько различных представлений:
-
Целочисленные обозначения:
2099994106992659
Ordinal numer, присваиваемый в соответствии с порядком, в котором были добыты сатоши. -
Десятичные обозначения:
3891094.16797
Первое число - это высота блока, в котором был добыт сатоши, второе - смещение сатоши внутри блока. -
Обозначение степени:
3°111094′214″16797‴
. К этому мы вернемся в ближайшее время. -
Процентное обозначение:
99.99971949060254%
. Положение сатоши в Bitcoin supply, выраженное в процентах. -
Название:
satoshi
. Кодировка порядкового номера с помощью символов отa
доz
.
К сатоши могут быть присоединены произвольные активы, такие как NFT, безопасные токены, счета или стейблкоины, с использованием ordinal numbers в качестве стабильных идентификаторов.
Ordinals - это проект с открытым исходным кодом, разрабатываемый на GitHub. Проект состоит из BIP, описывающего ordinal схему, индекса, взаимодействующего с Bitcoin Core node для отслеживания местоположения всех сатоши, кошелька, позволяющего совершать осведомленные транзакции с учетом ordinal, обозревать блоки для интерактивного изучения блокчейна, функциональности для надписи сатоши цифровыми артефактами, а также данного руководства.
Редкость
Люди - коллекционеры, и поскольку сатоши теперь можно отслеживать и передавать, люди, естественно, захотят их собирать. Ordinal теоретики могут сами решить, какие сатоши являются редкими и желанными, но есть некоторые подсказки…
В биткоине периодически происходят события, одни из которых происходят часто, другие - более редко, и они естественным образом приводят к появлению системы редкости. К таким периодическим событиям относятся:
-
Блоки: Новый блок добывается примерно каждые 10 минут, начиная с настоящего момента и до конца времен.
-
Корректировка сложности: Каждые 2016 блоков, или примерно раз в две недели, сеть Bitcoin реагирует на изменения хешрейта, изменяя целевой уровень сложности, которому должны соответствовать блоки, чтобы быть принятыми.
-
Халвинг: Каждые 210 000 блоков или примерно раз в четыре года, количество новых sats, создаваемых в каждом блоке, сокращается вдвое.
-
Циклы: Каждые шесть халвингов происходит нечто волшебное: халвинг и корректировка сложности совпадают. Это называется объединением, а период времени между объединениями - циклом. Объединение происходит примерно раз в 24 года. Первое объединение должно произойти в 2032 году.
Таким образом, мы получаем следующие уровни редкости:
common
: Любой sat, который не является первым sat в своем блокеuncommon
: Первый sat каждого блокаrare
: Первый sat каждого периода корректировки сложностиepic
: Первый sat каждой эпохи халвингаlegendary
: Первый sat каждого циклаmythic
: Первый sat genesis блока
Это приводит нас к обозначению степени, которая однозначно представляет ordinal number таким образом, что редкость сатоши легко увидеть с первого взгляда:
A°B′C″D‴
│ │ │ ╰─ Index of sat in the block
│ │ ╰─── Index of block in difficulty adjustment period
│ ╰───── Index of block in halving epoch
╰─────── Cycle, numbered starting from 0
Ordinal теоретики часто используют термины "час", "минута", "секунда" и "треть" для обозначения A, B, C, и D, соответственно.
Теперь несколько примеров. Этот сатоши является common:
1°1′1″1‴
│ │ │ ╰─ Not first sat in block
│ │ ╰─── Not first block in difficulty adjustment period
│ ╰───── Not first block in halving epoch
╰─────── Second cycle
Этот сатоши uncommon:
1°1′1″0‴
│ │ │ ╰─ First sat in block
│ │ ╰─── Not first block in difficulty adjustment period
│ ╰───── Not first block in halving epoch
╰─────── Second cycle
Это rare сатоши:
1°1′0″0‴
│ │ │ ╰─ First sat in block
│ │ ╰─── First block in difficulty adjustment period
│ ╰───── Not the first block in halving epoch
╰─────── Second cycle
Это epic сатоши:
1°0′1″0‴
│ │ │ ╰─ First sat in block
│ │ ╰─── Not first block in difficulty adjustment period
│ ╰───── First block in halving epoch
╰─────── Second cycle
Это legendary сатоши:
1°0′0″0‴
│ │ │ ╰─ First sat in block
│ │ ╰─── First block in difficulty adjustment period
│ ╰───── First block in halving epoch
╰─────── Second cycle
И это mithic сатоши:
0°0′0″0‴
│ │ │ ╰─ First sat in block
│ │ ╰─── First block in difficulty adjustment period
│ ╰───── First block in halving epoch
╰─────── First cycle
Если смещение блока равно нулю, то его можно не указывать. Это и есть uncommon сатоши, о котором говорилось выше:
1°1′1″
│ │ ╰─ Not first block in difficulty adjustment period
│ ╰─── Not first block in halving epoch
╰───── Second cycle
Количество rare сатоши
Общее количество
common
: 2,099,999,990,760,000uncommon
: 6,926,535rare
: 3432epic
: 27legendary
: 5mythic
: 1
Текущее количество
common
: ~1.98 quadrillionuncommon
: ~880,000 (a new uncommon is mined roughly every ten minutes)rare
: ~430 (a new rare is mined roughly every two weeks)epic
: 3legendary
: 0mythic
: 1
At the moment, even uncommon satoshis are quite rare. As of this writing, 876,023 uncommon satoshis have been mined - one per 22.6 bitcoin in circulation.
Названия
Каждый сатоши имеет название, состоящее из букв A - Z, которое становится короче по мере добычи сатоши в будущем. Они могли бы начинаться с коротких и становиться длиннее, но тогда все хорошие, короткие названия оказались бы запертыми в неизрасходованном genesis блоке .
Например, название 1905530482684727° - "iaiufjszmoba". Название последнего добытого сатоши - "a". Все комбинации из 10 символов или меньше уже существуют или когда-нибудь будут существовать.
Экзотика
Сатоши могут цениться не только по причине их названия или редкости. Это может быть связано с качеством самого числа, например, с наличием целого квадратного или кубического корня. Или это может быть связано с историческим событием, например, сатоши из блока 477 120 - блока, в котором активировался SegWit, или 2099999997689999° - последнего сатоши, который когда-либо будет добыт.
Такие сатоши называются "экзотическими". Какие сатоши являются экзотическими и что их делает таковыми - вопрос субъективный. Теоретикам ordinal предлагается искать экзотику по собственным критериям.
Надписи
На сатоши можно нанести произвольное содержание, создавая цифровые артефакты, характерные для Биткойна. Нанесение надписи осуществляется путем отправки сатоши в транзакции, которая раскрывает содержание on-chain надписи. Затем это содержимое неразрывно связывается с сатоши, превращая его в неизменяемый цифровой артефакт, который можно отслеживать, передавать, накапливать, покупать, продавать, терять и вновь находить.
Археология
Возникло активное сообщество археологов, занимающихся каталогизацией и коллекционированием ранних NFT. Вот отличный обзор исторических NFT, составленный Chainleft.
Общепринятой точкой отсчета для ранних NFT считается 19 марта 2018 года, когда на Ethereum был развернут первый контракт ERC-721. SU SQUARES
Вопрос о том, представляют ли ординалы интерес для археологов NFT, остается открытым! С одной стороны, ordinals были созданы в начале 2022 года, когда была завершена работа над спецификацией Ordinal. В этом смысле они не представляют исторического интереса.
С другой стороны, ordinals были фактически созданы Сатоши Накамото в 2009 году при майнинге генезисного блока Bitcoin. В этом смысле ordinals, и особенно ранние ordinals, безусловно, представляют исторический интерес.
Многие ordinal теоретики придерживаются последней точки зрения. Не в последнюю очередь это связано с тем, что ordianls были независимо обнаружены, по крайней мере, в двух отдельных случаях, задолго до начала эры современных NFT.
21 августа 2012 года Чарли Ли разместил на форуме Bitcoin Talk предложение добавить в биткоин proof-of-stake. Это не было схемой активов, но использовало ordinal алгоритм и было реализовано, но так и не было развернуто.
8 октября 2012 г., jl2012 разместил схему на том же форуме которая использует десятичную систему обозначений и обладает всеми важными свойствами ordinal. Эта схема обсуждалась, но так и не была реализована.
Эти независимые изобретения ordinals в какой-то мере указывают на то, что ordinals были открыты или заново открыты, а не изобретены. Ordinals - это неизбежность математики биткоина, вытекающая не из их современного документирования, а из их древнего генезиса. Они являются кульминацией последовательности событий, начавшихся много лет назад с момента добычи первого блока.
Цифровые артефакты
Представьте себе физический артефакт. Редкая монета, скажем, хранившаяся несметное количество лет в темных тайниках клада викингов, а теперь выкопанная из земли вашими цепкими руками. Она…
...имеет владельца. Вы. Пока вы храните его в безопасности, никто не может его у вас отнять.
...завершен. В нем нет недостающих частей.
...может быть изменен только вами. Если бы вы были торговцем и попали в Китай XVIII века, никто, кроме вас, не смог бы поставить на нем свой знак.
...может быть отчужден только вами. Продать, обменять или подарить - это ваше право, кому бы вы ни пожелали.
Что такое цифровые артефакты? Проще говоря, это цифровой эквивалент физических артефактов.
Чтобы цифровая вещь стала цифровым артефактом, она должна быть похожа на вашу монету:
-
У цифровых артефактов могут быть владельцы. Число не является цифровым артефактом, поскольку никто не может им владеть.
-
Цифровые артефакты полностью готовы. NFT, указывающий на содержимое вне цепочки на IPFS или Arweave, является неполным, а значит, не является цифровым артефактом.
-
Цифровые артефакты не имеют разрешений. NFT, который нельзя продать без оплаты роялти, не является безразрешительным, а значит, не является цифровым артефактом.
-
Цифровые артефакты не поддаются цензуре. Возможно, вы можете изменить запись в базе данных централизованном Ledger сегодня, но, возможно, не сможете завтра, и поэтому она не может быть цифровым артефактом.
-
Цифровые артефакты неизменяемы. NFT с ключом обновления не является цифровым артефактом.
Определение цифрового артефакта призвано отразить то, чем NFT должны быть, иногда являются, и то, чем надписи всегда являются по своей природе.
Надписи
Надписи содержат sat c произвольным содержанием, создавая цифровые артефакты, характерные для биткоина, более известные как NFT. Надписи не требуют сайдчейна или отдельного токена.
Эти надписанные sats могут передаваться с помощью биткоин-транзакций, отправляться на биткоин-адреса и храниться в биткоин UTXO. Эти транзакции, адреса и UTXO во всех отношениях являются обычными биткойн-транзакциями, адресами и UTXOS, за исключением того, что для отправки отдельных sats, транзакции должны контролировать порядок и значение входов и выходов в соответствии с ordinal theory.
Модель содержания надписей соответствует модели содержания web. Надпись состоит из типа содержимого, известного также как тип-MIME, и самого содержимого, которое представляет собой байтовую строку. Это позволяет возвращать содержимое надписи с веб-сервера, а также создавать HTML-надписи, использующие и переделывающие содержимое других надписей.
Содержимое надписей полностью находится on-chain и хранится в скриптах taproot script-path spend. Скрипты taproot имеют очень мало ограничений на содержимое и дополнительно получают скидку свидетеля, что делает хранение содержимого надписей относительно экономичным.
Поскольку траты taproot script-path spend могут осуществляться только из существующих выходов taproot, надписи делаются с помощью двухфазной процедуры commit/reveal. Во-первых, в транзакции commit создается выход taproot, фиксирующий скрипт, содержащий содержимое надписи. Во-вторых, в транзакции reveal созданный транзакцией commit выход расходуется, раскрывая содержимое on-chain надписи.
Сериализация содержимого надписи осуществляется с помощью data pushes внутри неисполняемых условий, называемых "конвертами". Конверты состоят из OP_FALSE OP_IF … OP_ENDIF
обертывающих любое количество data pushes. Поскольку конверты являются фактически no-ops, они не изменяют семантику скрипта, в который включены, и могут быть объединены с любым другим блокирующим скриптом.
Текстовая надпись, содержащая строку "Hello, world!" сериализуется следующим образом:
OP_FALSE
OP_IF
OP_PUSH "ord"
OP_PUSH 1
OP_PUSH "text/plain;charset=utf-8"
OP_PUSH 0
OP_PUSH "Hello, world!"
OP_ENDIF
Сначала вводится строка ord
, чтобы отделить надписи от других видов использования конвертов.
OP_PUSH 1
указывает, что следующий push содержит тип содержимого, а OP_PUSH 0
- что последующие push-файлы содержат само содержимое. Для больших надписей необходимо использовать несколько push данных, так как одно из немногих ограничений taproot заключается в том, что размер отдельных push данных не может превышать 520 байт.
The inscription content is contained within the input of a reveal transaction, and the inscription is made on the first sat of its input if it has no pointer field. This sat can then be tracked using the familiar rules of ordinal theory, allowing it to be transferred, bought, sold, lost to fees, and recovered.
Содержимое
Модель данных надписей представляет собой HTTP-ответ, что позволяет обслуживать содержимое надписей на веб-сервере и просматривать его в браузере.
Поля
Надписи могут включать поля перед необязательным текстом. Каждое поле состоит из двух push данных - тега и значения.
Currently, there are six defined fields:
content_type
, with a tag of1
, whose value is the MIME type of the body.pointer
, with a tag of2
, see pointer docs.parent
, with a tag of3
, see provenance.metadata
, with a tag of5
, see metadata.metaprotocol
, with a tag of7
, whose value is the metaprotocol identifier.content_encoding
, with a tag of9
, whose value is the encoding of the body.delegate
, with a tag of11
, see delegate.
Начало основного текста и конец полей обозначаются пустым вводом данных.
Нераспознанные метки интерпретируются по-разному в зависимости от того, четные они или нечетные, в соответствии с правилом "нормально быть нечетным", используемым в Lightning Network.
Четные метки используются для полей, которые могут повлиять на создание, первичное присвоение или перенос надписи. Таким образом, надписи с нераспознанными четными полями должны отображаться как "несвязанные", т.е. без указания местоположения.
Нечетные теги используются для полей, которые не влияют на создание, первоначальное назначение или передачу, например, дополнительные метаданные, и поэтому их можно игнорировать.
ID надписей
Надписи содержатся во входах транзакции раскрытия. Для их однозначной идентификации им присваивается ID вида:
521f8eccffa4c41a3a7728dd012ea5a4a02feed81f41159231251ecf1e5c79dai0
Часть перед i
- это ID транзакции (txid
) транзакции раскрытия. Число после i
определяет индекс (начиная с 0) новых надписей, заносимых в транзакцию раскрытия.
Надписи могут располагаться либо в разных входах, либо в одном входе, либо в комбинации обоих вариантов. В любом случае порядок следования понятен, так как синтаксический анализатор будет последовательно просматривать входы и искать все надписи-"конверты".
Вход | Inscription Count | Indices |
---|---|---|
0 | 2 | i0, i1 |
1 | 1 | i2 |
2 | 3 | i3, i4, i5 |
3 | 0 | |
4 | 1 | i6 |
Inscription Numbers
Inscriptions are assigned inscription numbers starting at zero, first by the order reveal transactions appear in blocks, and the order that reveal envelopes appear in those transactions.
Due to a historical bug in ord
which cannot be fixed without changing a great many inscription numbers, inscriptions which are revealed and then immediately spent to fees are numbered as if they appear last in the block in which they are revealed.
Inscriptions which are cursed are numbered starting at negative one, counting down. Cursed inscriptions on and after the jubilee at block 824544 are vindicated, and are assigned positive inscription numbers.
Песочница
Надписи HTML и SVG находятся в песочнице для предотвращения ссылок на off-chain содержимое, что позволяет сохранить неизменяемость и самодостаточность надписей.
Это достигается за счет загрузки HTML и SVG-надписей внутри iframe
с атрибутом sandbox
, а также предоставления содержимого надписей с заголовками Content-Security-Policy
.
Self-Reference
The content of the inscription with ID INSCRIPTION_ID
must served from the URL path /content/<INSCRIPTION_ID>
.
This allows inscriptions to retrieve their own inscription ID with:
let inscription_id = window.location.pathname.split("/").pop();
If an inscription with ID X delegates to an inscription with ID Y, that is to say, if inscription X contains a delegate field with value Y, the content of inscription X must be served from the URL path /content/X
, not /content/Y
.
This allows delegating inscriptions to use their own inscription ID as a seed for generative delegate content.
Reinscriptions
Previously inscribed sats can be reinscribed with the --reinscribe
command if the inscription is present in the wallet. This will only append an inscription to a sat, not change the initial inscription.
Reinscribe with satpoint: ord wallet inscribe --fee-rate <FEE_RATE> --reinscribe --file <FILE> --satpoint <SATPOINT>
Reinscribe on a sat (requires sat index): ord --index-sats wallet inscribe --fee-rate <FEE_RATE> --reinscribe --file <FILE> --sat <SAT>
Burning
Inscriptions may be burned by constructing a transaction that spends them to a script pubkey beginning with OP_RETURN
.
Sending inscriptions to a so-called "burn address" is not recognized by ord
.
Burned inscriptions receive the "burned" charm, recognized with 🔥 on the inscription's /inscription
page.
When burning inscriptions, CBOR metadata may be included in a data push immediately following the OP_RETURN
.
Burn metadata is unstructured, having no meaning to the underlying protocol, and should be human readable. It is displayed on the burned inscription's /inscription
page, in the same manner as inscription metadata, under the heading "burn metadata".
Use it, if you feel like it, to commemorate the inscription, celebrate the closing of a collection, or for whatever other purposes you so desire.
Data pushes after the first are currently ignored by ord
. However, they may be given future meaning by the protocol, and should not be used.
For example, transaction b42f0d8a3277ce6a7e564fec8f5579f76bc19cb24f8eff565ebb81a4c2f94683 burned inscription 681b5373c03e3f819231afd9227f54101395299c9e58356bda278e2f32bef2cdi0.
Delegate
Inscriptions may nominate a delegate inscription. Requests for the content of an inscription with a delegate will instead return the content, content type and content encoding of the delegate. This can be used to cheaply create copies of an inscription.
Описание
To create an inscription I with delegate inscription D:
- Create an inscription D. Note that inscription D does not have to exist when making inscription I. It may be inscribed later. Before inscription D is inscribed, requests for the content of inscription I will return a 404.
- Include tag
11
, i.e.OP_PUSH 11
, in I, with the value of the serialized binary inscription ID of D, serialized as the 32-byteTXID
, followed by the four-byte little-endianINDEX
, with trailing zeroes omitted.
NB В текстовом представлении байты ID транзакции биткоина расположены в обратном порядке, поэтому сериализованные ID транзакции будут расположены в обратном порядке.
Пример
An example of an inscription which delegates to 000102030405060708090a0b0c0d0e0f101112131415161718191a1b1c1d1e1fi0
:
OP_FALSE
OP_IF
OP_PUSH "ord"
OP_PUSH 11
OP_PUSH 0x1f1e1d1c1b1a191817161514131211100f0e0d0c0b0a09080706050403020100
OP_ENDIF
Note that the value of tag 11
is decimal, not hex.
The delegate field value uses the same encoding as the parent field. See provenance for more examples of inscription ID encodings
See examples for on-chain examples of inscriptions that feature this functionality.
Metadata
Inscriptions may include CBOR metadata, stored as data pushes in fields with tag 5
. Since data pushes are limited to 520 bytes, metadata longer than 520 bytes must be split into multiple tag 5
fields, which will then be concatenated before decoding.
Metadata is human readable, and all metadata will be displayed to the user with its inscription. Inscribers are encouraged to consider how metadata will be displayed, and make metadata concise and attractive.
Metadata is rendered to HTML for display as follows:
null
,true
,false
, numbers, floats, and strings are rendered as plain text.- Byte strings are rendered as uppercase hexadecimal.
- Arrays are rendered as
<ul>
tags, with every element wrapped in<li>
tags. - Maps are rendered as
<dl>
tags, with every key wrapped in<dt>
tags, and every value wrapped in<dd>
tags. - Tags are rendered as the tag , enclosed in a
<sup>
tag, followed by the value.
CBOR is a complex spec with many different data types, and multiple ways of representing the same data. Exotic data types, such as tags, floats, and bignums, and encoding such as indefinite values, may fail to display correctly or at all. Contributions to ord
to remedy this are welcome.
Пример
Since CBOR is not human readable, in these examples it is represented as JSON. Keep in mind that this is only for these examples, and JSON metadata will not be displayed correctly.
The metadata {"foo":"bar","baz":[null,true,false,0]}
would be included in an inscription as:
OP_FALSE
OP_IF
...
OP_PUSH 0x05 OP_PUSH '{"foo":"bar","baz":[null,true,false,0]}'
...
OP_ENDIF
And rendered as:
<dl>
...
<dt>metadata</dt>
<dd>
<dl>
<dt>foo</dt>
<dd>bar</dd>
<dt>baz</dt>
<dd>
<ul>
<li>null</li>
<li>true</li>
<li>false</li>
<li>0</li>
</ul>
</dd>
</dl>
</dd>
...
</dl>
Metadata longer than 520 bytes must be split into multiple fields:
OP_FALSE
OP_IF
...
OP_PUSH 0x05 OP_PUSH '{"very":"long","metadata":'
OP_PUSH 0x05 OP_PUSH '"is","finally":"done"}'
...
OP_ENDIF
Which would then be concatenated into {"very":"long","metadata":"is","finally":"done"}
.
See examples for on-chain examples of inscriptions that feature this functionality.
Pointer
In order to make an inscription on a sat other than the first of its input, a zero-based integer, called the "pointer", can be provided with tag 2
, causing the inscription to be made on the sat at the given position in the outputs. If the pointer is equal to or greater than the number of total sats in the outputs of the inscribe transaction, it is ignored, and the inscription is made as usual. The value of the pointer field is a little endian integer, with trailing zeroes ignored.
An even tag is used, so that old versions of ord
consider the inscription to be unbound, instead of assigning it, incorrectly, to the first sat.
This can be used to create multiple inscriptions in a single transaction on different sats, when otherwise they would be made on the same sat.
Examples
An inscription with pointer 255:
OP_FALSE
OP_IF
OP_PUSH "ord"
OP_PUSH 1
OP_PUSH "text/plain;charset=utf-8"
OP_PUSH 2
OP_PUSH 0xff
OP_PUSH 0
OP_PUSH "Hello, world!"
OP_ENDIF
An inscription with pointer 256:
OP_FALSE
OP_IF
OP_PUSH "ord"
OP_PUSH 1
OP_PUSH "text/plain;charset=utf-8"
OP_PUSH 2
OP_PUSH 0x0001
OP_PUSH 0
OP_PUSH "Hello, world!"
OP_ENDIF
An inscription with pointer 256, with trailing zeroes, which are ignored:
OP_FALSE
OP_IF
OP_PUSH "ord"
OP_PUSH 1
OP_PUSH "text/plain;charset=utf-8"
OP_PUSH 2
OP_PUSH 0x000100
OP_PUSH 0
OP_PUSH "Hello, world!"
OP_ENDIF
Properties
Inscriptions may include CBOR properties, stored as data pushes in fields with tag 17
. Since data pushes are limited to 520 bytes, CBOR longer than 520 bytes must be split into multiple tag 17
fields, which will then be concatenated before decoding.
Properties are a structured counterpart to metadata. While metadata may contain arbitrary CBOR which has no protocol-defined meaning and is presented on /inscription
as HTML, properties have protocol-defined meaning and must conform to a strict schema.
Indefinite-length types are not supported. All maps, arrays, byte strings, and text strings must be definite.
The non-normative CDDL schema of the properties value is as follows:
Properties = {
? 0: [*GalleryItem],
* any => any,
}
GalleryItem = {
? 0: bstr .size (32..36),
* any => any,
}
The above CDDL schema is provided as a convenience. As always, the ordinals reference implementation ord
is the normative specification of inscriptions, and thus the properties field.
Fields matching the * any => any
wildcard must be ignored, for compatibility with future additions.
Galleries
Inscriptions whose properties field contains GalleryItem
s are galleries.
Galleries contain GalleryItem
s, whose only defined key 0
contains a serialized inscription ID. Inscription ID TXIDiINDEX
is serialized as a byte string containing the 32 byte TXID, concatenated with by the four-byte little-endian INDEX
. Trailing zeros may be removed from four-byte INDEX
, so IDs ending in i0
may be serialized in 32 bytes.
Gallery items are displayed on the inscriptions /inscription
page on the explorer.
Galleries are similar to children, in that they provide a way to create collections of inscriptions. However, galleries are permissionless. Anyone may create a gallery including any inscriptions. Thus, inclusion in a gallery does not imply provenance. Additionally, because of this, inclusion in a gallery does not create a backlink from the gallery item's /inscription
page to the gallery.
Galleries may be created when batch inscribing with ord wallet batch
by including an array of string inscription IDs of under the gallery
key of the inscription entry in the batch file, or when using ord wallet inscribe
using the --gallery
option.
Провенанс
Владелец надписи может создавать дочерние надписи, не сомневаясь в том, что эти дочерние on-chain надписи были созданы владельцем родительской надписи. Это может быть использовано для коллекций, когда дочерние надписи от родительской надписи являются членами одной коллекции.
Дети могут создавать дочерние элементы, что позволяет создавать комплексные иерархии. Например, художник может создать надпись, представляющую его самого, с вложенными надписями, представляющими созданные им коллекции, а дочерними элементами этих sub надписей являются предметы этих коллекций.
Описание
Чтобы создать child надпись C с parent надписью P:
- Создайте транзакцию надписи T, как обычно, для C.
- Проведите parent P по одному из входов T.
- Включите в C тег
3
, т.е.OP_PUSH 3
, со значением сериализованного двоичного ID надписи P, сериализованного как 32-байтовыйTXID
, за которым следует четырехбайтовый little-endianINDEX
, с опущенными задними нулями.
NB В текстовом представлении байты ID транзакции биткоина расположены в обратном порядке, поэтому сериализованные ID транзакции будут расположены в обратном порядке.
Пример
Пример child надписи из 000102030405060708090a0b0c0d0e0f101112131415161718191a1b1c1d1e1fi0
:
OP_FALSE
OP_IF
OP_PUSH "ord"
OP_PUSH 1
OP_PUSH "text/plain;charset=utf-8"
OP_PUSH 3
OP_PUSH 0x1f1e1d1c1b1a191817161514131211100f0e0d0c0b0a09080706050403020100
OP_PUSH 0
OP_PUSH "Hello, world!"
OP_ENDIF
Заметим, что значение метки 3
двоичное, а не шестнадцатеричное, и что для того, чтобы надпись была признана детской, 000102030405060708090a0b0c0d0e0f101112131415161718191a1b1c1d1e1fi0
должен быть потрачен как один из входов inscribe транзакции.
Пример кодировки ID надписи 000102030405060708090a0b0c0d0e0f101112131415161718191a1b1c1d1e1fi255
:
OP_FALSE
OP_IF
…
OP_PUSH 3
OP_PUSH 0x1f1e1d1c1b1a191817161514131211100f0e0d0c0b0a09080706050403020100ff
…
OP_ENDIF
И ID надписи 000102030405060708090a0b0c0d0e0f101112131415161718191a1b1c1d1e1fi256
:
OP_FALSE
OP_IF
…
OP_PUSH 3
OP_PUSH 0x1f1e1d1c1b1a191817161514131211100f0e0d0c0b0a090807060504030201000001
…
OP_ENDIF
Примечаниe
Метка 3
используется потому что это первая доступная нечетная метка. Нераспознанные нечетные метки не делают надпись несвязанной, поэтому дочерние надписи будут распознаваться и отслеживаться старыми версиями ord
.
Коллекция может быть закрыта путем сжигания родительской надписи коллекции, что гарантирует, что больше ни один предмет коллекции не может быть выпущен.
See examples for on-chain examples of inscriptions that feature this functionality.
Рекурсия
An important exception to sandboxing is recursion. Recursive endpoints are whitelisted endpoints that allow access to on-chain data, including the content of other inscriptions.
Since changes to recursive endpoints might break inscriptions that rely on them, recursive endpoints have backwards-compatibility guarantees not shared by ord server
's other endpoints. In particular:
- Recursive endpoints will not be removed
- Object fields returned by recursive endpoints will not be renamed or change types
However, additional object fields may be added or reordered, so inscriptions must handle additional, unexpected fields, and must not expect fields to be returned in a specific order.
Recursion has a number of interesting use-cases:
-
Ремикс содержания существующих надписей.
-
Публикация фрагментов кода, изображений, аудио или таблиц стилей в качестве общедоступных ресурсов.
-
Генеративные художественные коллекции, в которых алгоритм записан как JavaScript и инстанцирован из множества надписей с уникальными seeds.
-
Генеративные коллекции изображений профиля (PFP), в которых аксессуары и атрибуты вписываются в виде отдельных изображений или в общий атлас текстур, а затем комбинируются, в стиле коллажа, в уникальных сочетаниях в нескольких надписях.
Endpoints
GET
/content/<INSCRIPTION_ID>
Description
The content of the inscription with <INSCRIPTION_ID>
.
Пример
curl -s \
http://0.0.0.0:80/content/6fb976ab49dcec017f1e201e84395983204ae1a7c2abf7ced0a85d692e442799i0 > skull.jpg
no terminal output, just file creation
GET
/r/blockhash
Description
Latest block hash.
Пример
curl -s \
http://0.0.0.0:80/r/blockhash
"00000000000000000002891b440944e0ce40b37b6ccaa138c280e9edfc319d5d"
GET
/r/blockhash/<HEIGHT>
Description
Block hash at given block height as JSON string.
Пример
curl -s \
http://0.0.0.0:80/r/blockhash/840000
"0000000000000000000320283a032748cef8227873ff4872689bf23f1cda83a5"
GET
/r/blockheight
Description
Latest block height.
Пример
curl -s \
http://0.0.0.0:80/r/blockheight
866393
GET
/r/blockinfo/<QUERY>
Description
Block info. <QUERY>
may be a block height or block hash.
Example (blockheight)
curl -s \
http://0.0.0.0:80/r/blockinfo/0
{
"average_fee": 0,
"average_fee_rate": 0,
"bits": 486604799,
"chainwork": "0000000000000000000000000000000000000000000000000000000100010001",
"confirmations": 866396,
"difficulty": 1.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": "4a5e1e4baab89f3a32518a88c31bc87f618f76673e2cc77ab2127b7afdeda33b",
"min_fee": 0,
"min_fee_rate": 0,
"next_block": "00000000839a8e6886ab5951d76f411475428afc90947ee320161bbf18eb6048",
"nonce": 2083236893,
"previous_block": null,
"subsidy": 5000000000,
"target": "00000000ffff0000000000000000000000000000000000000000000000000000",
"timestamp": 1231006505,
"total_fee": 0,
"total_size": 0,
"total_weight": 0,
"transaction_count": 1,
"version": 1
}
Example (blockhash)
curl -s \
http://0.0.0.0:80/r/blockinfo/0000000000000000000320283a032748cef8227873ff4872689bf23f1cda83a5
{
"average_fee": 1234031,
"average_fee_rate": 3770,
"bits": 386089497,
"chainwork": "0000000000000000000000000000000000000000753bdab0e0d745453677442b",
"confirmations": 26397,
"difficulty": 86388558925171.02,
"hash": "0000000000000000000320283a032748cef8227873ff4872689bf23f1cda83a5",
"feerate_percentiles": [
108,
134,
200,
350,
1063
],
],
"height": 840000,
"height": 840000,
"max_fee": 799987800,
"max_fee_rate": 3604819,
"max_tx_size": 166989,
"median_fee": 34800,
"median_fee": 34800,
"median_time": 1713570208,
"merkle_root": "031b417c3a1828ddf3d6527fc210daafcc9218e81f98257f88d4d43bd7a5894f",
"min_fee": 2060,
"min_fee_rate": 15,
"next_block": "00000000000000000001b48a75d5a3077913f3f441eb7e08c13c43f768db2463",
"nonce": 3932395645,
"previous_block": "0000000000000000000172014ba58d66455762add0512355ad651207918494ab",
"subsidy": 312500000,
"target": "0000000000000000000342190000000000000000000000000000000000000000",
"timestamp": 1713571767,
"total_fee": 3762561499,
"total_size": 2325218,
"total_weight": 3991793,
"transaction_count": 3050,
"version": 710926336
}
GET
/r/blocktime
Description
UNIX time stamp of latest block.
Пример
curl -s \
http://0.0.0.0:80/r/blocktime
1729362253
GET
/r/children/<INSCRIPTION_ID>
Description
The first 100 child inscription ids.
Пример
curl -s \
http://0.0.0.0:80/r/children/e317a2a5d68bd1004ae15a06175a319272a10389ff125c98820389edef8b0a94i0
{
"ids": [
"89e4fb2e5ea5c6301b9ac915d1d05619776f5ca41fc02fb6e5dced16f2cabfdei0",
"89e4fb2e5ea5c6301b9ac915d1d05619776f5ca41fc02fb6e5dced16f2cabfdei1",
"89e4fb2e5ea5c6301b9ac915d1d05619776f5ca41fc02fb6e5dced16f2cabfdei2",
"89e4fb2e5ea5c6301b9ac915d1d05619776f5ca41fc02fb6e5dced16f2cabfdei3",
"89e4fb2e5ea5c6301b9ac915d1d05619776f5ca41fc02fb6e5dced16f2cabfdei4",
"89e4fb2e5ea5c6301b9ac915d1d05619776f5ca41fc02fb6e5dced16f2cabfdei5",
"89e4fb2e5ea5c6301b9ac915d1d05619776f5ca41fc02fb6e5dced16f2cabfdei6",
"89e4fb2e5ea5c6301b9ac915d1d05619776f5ca41fc02fb6e5dced16f2cabfdei7",
"89e4fb2e5ea5c6301b9ac915d1d05619776f5ca41fc02fb6e5dced16f2cabfdei8",
"89e4fb2e5ea5c6301b9ac915d1d05619776f5ca41fc02fb6e5dced16f2cabfdei9",
"89e4fb2e5ea5c6301b9ac915d1d05619776f5ca41fc02fb6e5dced16f2cabfdei10",
"89e4fb2e5ea5c6301b9ac915d1d05619776f5ca41fc02fb6e5dced16f2cabfdei11",
"89e4fb2e5ea5c6301b9ac915d1d05619776f5ca41fc02fb6e5dced16f2cabfdei12",
"89e4fb2e5ea5c6301b9ac915d1d05619776f5ca41fc02fb6e5dced16f2cabfdei13",
"89e4fb2e5ea5c6301b9ac915d1d05619776f5ca41fc02fb6e5dced16f2cabfdei14",
"89e4fb2e5ea5c6301b9ac915d1d05619776f5ca41fc02fb6e5dced16f2cabfdei15",
"89e4fb2e5ea5c6301b9ac915d1d05619776f5ca41fc02fb6e5dced16f2cabfdei16",
"89e4fb2e5ea5c6301b9ac915d1d05619776f5ca41fc02fb6e5dced16f2cabfdei17",
"89e4fb2e5ea5c6301b9ac915d1d05619776f5ca41fc02fb6e5dced16f2cabfdei18",
"89e4fb2e5ea5c6301b9ac915d1d05619776f5ca41fc02fb6e5dced16f2cabfdei19",
"89e4fb2e5ea5c6301b9ac915d1d05619776f5ca41fc02fb6e5dced16f2cabfdei20",
"89e4fb2e5ea5c6301b9ac915d1d05619776f5ca41fc02fb6e5dced16f2cabfdei21",
"89e4fb2e5ea5c6301b9ac915d1d05619776f5ca41fc02fb6e5dced16f2cabfdei22",
"89e4fb2e5ea5c6301b9ac915d1d05619776f5ca41fc02fb6e5dced16f2cabfdei23",
"89e4fb2e5ea5c6301b9ac915d1d05619776f5ca41fc02fb6e5dced16f2cabfdei24",
"89e4fb2e5ea5c6301b9ac915d1d05619776f5ca41fc02fb6e5dced16f2cabfdei25",
"89e4fb2e5ea5c6301b9ac915d1d05619776f5ca41fc02fb6e5dced16f2cabfdei26",
"89e4fb2e5ea5c6301b9ac915d1d05619776f5ca41fc02fb6e5dced16f2cabfdei27",
"89e4fb2e5ea5c6301b9ac915d1d05619776f5ca41fc02fb6e5dced16f2cabfdei28",
"89e4fb2e5ea5c6301b9ac915d1d05619776f5ca41fc02fb6e5dced16f2cabfdei29",
"89e4fb2e5ea5c6301b9ac915d1d05619776f5ca41fc02fb6e5dced16f2cabfdei30",
"89e4fb2e5ea5c6301b9ac915d1d05619776f5ca41fc02fb6e5dced16f2cabfdei31",
"89e4fb2e5ea5c6301b9ac915d1d05619776f5ca41fc02fb6e5dced16f2cabfdei32",
"89e4fb2e5ea5c6301b9ac915d1d05619776f5ca41fc02fb6e5dced16f2cabfdei33",
"89e4fb2e5ea5c6301b9ac915d1d05619776f5ca41fc02fb6e5dced16f2cabfdei34",
"89e4fb2e5ea5c6301b9ac915d1d05619776f5ca41fc02fb6e5dced16f2cabfdei35",
"89e4fb2e5ea5c6301b9ac915d1d05619776f5ca41fc02fb6e5dced16f2cabfdei36",
"89e4fb2e5ea5c6301b9ac915d1d05619776f5ca41fc02fb6e5dced16f2cabfdei37",
"89e4fb2e5ea5c6301b9ac915d1d05619776f5ca41fc02fb6e5dced16f2cabfdei38",
"89e4fb2e5ea5c6301b9ac915d1d05619776f5ca41fc02fb6e5dced16f2cabfdei39",
"89e4fb2e5ea5c6301b9ac915d1d05619776f5ca41fc02fb6e5dced16f2cabfdei40",
"89e4fb2e5ea5c6301b9ac915d1d05619776f5ca41fc02fb6e5dced16f2cabfdei41",
"89e4fb2e5ea5c6301b9ac915d1d05619776f5ca41fc02fb6e5dced16f2cabfdei42",
"89e4fb2e5ea5c6301b9ac915d1d05619776f5ca41fc02fb6e5dced16f2cabfdei43",
"89e4fb2e5ea5c6301b9ac915d1d05619776f5ca41fc02fb6e5dced16f2cabfdei44",
"89e4fb2e5ea5c6301b9ac915d1d05619776f5ca41fc02fb6e5dced16f2cabfdei45",
"89e4fb2e5ea5c6301b9ac915d1d05619776f5ca41fc02fb6e5dced16f2cabfdei46",
"89e4fb2e5ea5c6301b9ac915d1d05619776f5ca41fc02fb6e5dced16f2cabfdei47",
"89e4fb2e5ea5c6301b9ac915d1d05619776f5ca41fc02fb6e5dced16f2cabfdei48",
"89e4fb2e5ea5c6301b9ac915d1d05619776f5ca41fc02fb6e5dced16f2cabfdei49",
"89e4fb2e5ea5c6301b9ac915d1d05619776f5ca41fc02fb6e5dced16f2cabfdei50",
"89e4fb2e5ea5c6301b9ac915d1d05619776f5ca41fc02fb6e5dced16f2cabfdei51",
"89e4fb2e5ea5c6301b9ac915d1d05619776f5ca41fc02fb6e5dced16f2cabfdei52",
"89e4fb2e5ea5c6301b9ac915d1d05619776f5ca41fc02fb6e5dced16f2cabfdei53",
"89e4fb2e5ea5c6301b9ac915d1d05619776f5ca41fc02fb6e5dced16f2cabfdei54",
"89e4fb2e5ea5c6301b9ac915d1d05619776f5ca41fc02fb6e5dced16f2cabfdei55",
"89e4fb2e5ea5c6301b9ac915d1d05619776f5ca41fc02fb6e5dced16f2cabfdei56",
"89e4fb2e5ea5c6301b9ac915d1d05619776f5ca41fc02fb6e5dced16f2cabfdei57",
"89e4fb2e5ea5c6301b9ac915d1d05619776f5ca41fc02fb6e5dced16f2cabfdei58",
"89e4fb2e5ea5c6301b9ac915d1d05619776f5ca41fc02fb6e5dced16f2cabfdei59",
"89e4fb2e5ea5c6301b9ac915d1d05619776f5ca41fc02fb6e5dced16f2cabfdei60",
"89e4fb2e5ea5c6301b9ac915d1d05619776f5ca41fc02fb6e5dced16f2cabfdei61",
"89e4fb2e5ea5c6301b9ac915d1d05619776f5ca41fc02fb6e5dced16f2cabfdei62",
"89e4fb2e5ea5c6301b9ac915d1d05619776f5ca41fc02fb6e5dced16f2cabfdei63",
"89e4fb2e5ea5c6301b9ac915d1d05619776f5ca41fc02fb6e5dced16f2cabfdei64",
"89e4fb2e5ea5c6301b9ac915d1d05619776f5ca41fc02fb6e5dced16f2cabfdei65",
"89e4fb2e5ea5c6301b9ac915d1d05619776f5ca41fc02fb6e5dced16f2cabfdei66",
"89e4fb2e5ea5c6301b9ac915d1d05619776f5ca41fc02fb6e5dced16f2cabfdei67",
"89e4fb2e5ea5c6301b9ac915d1d05619776f5ca41fc02fb6e5dced16f2cabfdei68",
"89e4fb2e5ea5c6301b9ac915d1d05619776f5ca41fc02fb6e5dced16f2cabfdei69",
"89e4fb2e5ea5c6301b9ac915d1d05619776f5ca41fc02fb6e5dced16f2cabfdei70",
"89e4fb2e5ea5c6301b9ac915d1d05619776f5ca41fc02fb6e5dced16f2cabfdei71",
"89e4fb2e5ea5c6301b9ac915d1d05619776f5ca41fc02fb6e5dced16f2cabfdei72",
"89e4fb2e5ea5c6301b9ac915d1d05619776f5ca41fc02fb6e5dced16f2cabfdei73",
"89e4fb2e5ea5c6301b9ac915d1d05619776f5ca41fc02fb6e5dced16f2cabfdei74",
"89e4fb2e5ea5c6301b9ac915d1d05619776f5ca41fc02fb6e5dced16f2cabfdei75",
"89e4fb2e5ea5c6301b9ac915d1d05619776f5ca41fc02fb6e5dced16f2cabfdei76",
"89e4fb2e5ea5c6301b9ac915d1d05619776f5ca41fc02fb6e5dced16f2cabfdei77",
"89e4fb2e5ea5c6301b9ac915d1d05619776f5ca41fc02fb6e5dced16f2cabfdei78",
"89e4fb2e5ea5c6301b9ac915d1d05619776f5ca41fc02fb6e5dced16f2cabfdei79",
"89e4fb2e5ea5c6301b9ac915d1d05619776f5ca41fc02fb6e5dced16f2cabfdei80",
"89e4fb2e5ea5c6301b9ac915d1d05619776f5ca41fc02fb6e5dced16f2cabfdei81",
"89e4fb2e5ea5c6301b9ac915d1d05619776f5ca41fc02fb6e5dced16f2cabfdei82",
"89e4fb2e5ea5c6301b9ac915d1d05619776f5ca41fc02fb6e5dced16f2cabfdei83",
"89e4fb2e5ea5c6301b9ac915d1d05619776f5ca41fc02fb6e5dced16f2cabfdei84",
"89e4fb2e5ea5c6301b9ac915d1d05619776f5ca41fc02fb6e5dced16f2cabfdei85",
"89e4fb2e5ea5c6301b9ac915d1d05619776f5ca41fc02fb6e5dced16f2cabfdei86",
"89e4fb2e5ea5c6301b9ac915d1d05619776f5ca41fc02fb6e5dced16f2cabfdei87",
"89e4fb2e5ea5c6301b9ac915d1d05619776f5ca41fc02fb6e5dced16f2cabfdei88",
"89e4fb2e5ea5c6301b9ac915d1d05619776f5ca41fc02fb6e5dced16f2cabfdei89",
"89e4fb2e5ea5c6301b9ac915d1d05619776f5ca41fc02fb6e5dced16f2cabfdei90",
"89e4fb2e5ea5c6301b9ac915d1d05619776f5ca41fc02fb6e5dced16f2cabfdei91",
"89e4fb2e5ea5c6301b9ac915d1d05619776f5ca41fc02fb6e5dced16f2cabfdei92",
"89e4fb2e5ea5c6301b9ac915d1d05619776f5ca41fc02fb6e5dced16f2cabfdei93",
"89e4fb2e5ea5c6301b9ac915d1d05619776f5ca41fc02fb6e5dced16f2cabfdei94",
"89e4fb2e5ea5c6301b9ac915d1d05619776f5ca41fc02fb6e5dced16f2cabfdei95",
"89e4fb2e5ea5c6301b9ac915d1d05619776f5ca41fc02fb6e5dced16f2cabfdei96",
"89e4fb2e5ea5c6301b9ac915d1d05619776f5ca41fc02fb6e5dced16f2cabfdei97",
"89e4fb2e5ea5c6301b9ac915d1d05619776f5ca41fc02fb6e5dced16f2cabfdei98",
"89e4fb2e5ea5c6301b9ac915d1d05619776f5ca41fc02fb6e5dced16f2cabfdei99"
],
"more": true,
"page": 0
}
GET
/r/children/<INSCRIPTION_ID>/<PAGE>
Description
The set of 100 child inscription ids on <PAGE>
.
Пример
curl -s \
http://0.0.0.0:80/r/children/e317a2a5d68bd1004ae15a06175a319272a10389ff125c98820389edef8b0a94i0/9
{
"ids": [
"b205c9d1dc054f24c13aeb886fba42d9dd0aac3cd9bdc4f034affc90f3a0bf3ci60",
"b205c9d1dc054f24c13aeb886fba42d9dd0aac3cd9bdc4f034affc90f3a0bf3ci61",
"b205c9d1dc054f24c13aeb886fba42d9dd0aac3cd9bdc4f034affc90f3a0bf3ci62",
"b205c9d1dc054f24c13aeb886fba42d9dd0aac3cd9bdc4f034affc90f3a0bf3ci63",
"b205c9d1dc054f24c13aeb886fba42d9dd0aac3cd9bdc4f034affc90f3a0bf3ci64",
"b205c9d1dc054f24c13aeb886fba42d9dd0aac3cd9bdc4f034affc90f3a0bf3ci65",
"b205c9d1dc054f24c13aeb886fba42d9dd0aac3cd9bdc4f034affc90f3a0bf3ci66",
"b205c9d1dc054f24c13aeb886fba42d9dd0aac3cd9bdc4f034affc90f3a0bf3ci67",
"b205c9d1dc054f24c13aeb886fba42d9dd0aac3cd9bdc4f034affc90f3a0bf3ci68",
"b205c9d1dc054f24c13aeb886fba42d9dd0aac3cd9bdc4f034affc90f3a0bf3ci69",
"b205c9d1dc054f24c13aeb886fba42d9dd0aac3cd9bdc4f034affc90f3a0bf3ci70",
"b205c9d1dc054f24c13aeb886fba42d9dd0aac3cd9bdc4f034affc90f3a0bf3ci71",
"b205c9d1dc054f24c13aeb886fba42d9dd0aac3cd9bdc4f034affc90f3a0bf3ci72",
"b205c9d1dc054f24c13aeb886fba42d9dd0aac3cd9bdc4f034affc90f3a0bf3ci73",
"b205c9d1dc054f24c13aeb886fba42d9dd0aac3cd9bdc4f034affc90f3a0bf3ci74",
"b205c9d1dc054f24c13aeb886fba42d9dd0aac3cd9bdc4f034affc90f3a0bf3ci75",
"b205c9d1dc054f24c13aeb886fba42d9dd0aac3cd9bdc4f034affc90f3a0bf3ci76",
"b205c9d1dc054f24c13aeb886fba42d9dd0aac3cd9bdc4f034affc90f3a0bf3ci77",
"b205c9d1dc054f24c13aeb886fba42d9dd0aac3cd9bdc4f034affc90f3a0bf3ci78",
"b205c9d1dc054f24c13aeb886fba42d9dd0aac3cd9bdc4f034affc90f3a0bf3ci79",
"b205c9d1dc054f24c13aeb886fba42d9dd0aac3cd9bdc4f034affc90f3a0bf3ci80",
"b205c9d1dc054f24c13aeb886fba42d9dd0aac3cd9bdc4f034affc90f3a0bf3ci81",
"b205c9d1dc054f24c13aeb886fba42d9dd0aac3cd9bdc4f034affc90f3a0bf3ci82",
"b205c9d1dc054f24c13aeb886fba42d9dd0aac3cd9bdc4f034affc90f3a0bf3ci83",
"b205c9d1dc054f24c13aeb886fba42d9dd0aac3cd9bdc4f034affc90f3a0bf3ci84",
"b205c9d1dc054f24c13aeb886fba42d9dd0aac3cd9bdc4f034affc90f3a0bf3ci85",
"b205c9d1dc054f24c13aeb886fba42d9dd0aac3cd9bdc4f034affc90f3a0bf3ci86",
"b205c9d1dc054f24c13aeb886fba42d9dd0aac3cd9bdc4f034affc90f3a0bf3ci87",
"b205c9d1dc054f24c13aeb886fba42d9dd0aac3cd9bdc4f034affc90f3a0bf3ci88",
"b205c9d1dc054f24c13aeb886fba42d9dd0aac3cd9bdc4f034affc90f3a0bf3ci89",
"b205c9d1dc054f24c13aeb886fba42d9dd0aac3cd9bdc4f034affc90f3a0bf3ci90",
"b205c9d1dc054f24c13aeb886fba42d9dd0aac3cd9bdc4f034affc90f3a0bf3ci91",
"b205c9d1dc054f24c13aeb886fba42d9dd0aac3cd9bdc4f034affc90f3a0bf3ci92",
"b205c9d1dc054f24c13aeb886fba42d9dd0aac3cd9bdc4f034affc90f3a0bf3ci93",
"b205c9d1dc054f24c13aeb886fba42d9dd0aac3cd9bdc4f034affc90f3a0bf3ci94",
"b205c9d1dc054f24c13aeb886fba42d9dd0aac3cd9bdc4f034affc90f3a0bf3ci95",
"b205c9d1dc054f24c13aeb886fba42d9dd0aac3cd9bdc4f034affc90f3a0bf3ci96",
"b205c9d1dc054f24c13aeb886fba42d9dd0aac3cd9bdc4f034affc90f3a0bf3ci97",
"b205c9d1dc054f24c13aeb886fba42d9dd0aac3cd9bdc4f034affc90f3a0bf3ci98",
"b205c9d1dc054f24c13aeb886fba42d9dd0aac3cd9bdc4f034affc90f3a0bf3ci99",
"b205c9d1dc054f24c13aeb886fba42d9dd0aac3cd9bdc4f034affc90f3a0bf3ci100",
"b205c9d1dc054f24c13aeb886fba42d9dd0aac3cd9bdc4f034affc90f3a0bf3ci101",
"b205c9d1dc054f24c13aeb886fba42d9dd0aac3cd9bdc4f034affc90f3a0bf3ci102",
"b205c9d1dc054f24c13aeb886fba42d9dd0aac3cd9bdc4f034affc90f3a0bf3ci103",
"b205c9d1dc054f24c13aeb886fba42d9dd0aac3cd9bdc4f034affc90f3a0bf3ci104",
"b205c9d1dc054f24c13aeb886fba42d9dd0aac3cd9bdc4f034affc90f3a0bf3ci105",
"b205c9d1dc054f24c13aeb886fba42d9dd0aac3cd9bdc4f034affc90f3a0bf3ci106",
"b205c9d1dc054f24c13aeb886fba42d9dd0aac3cd9bdc4f034affc90f3a0bf3ci107",
"b205c9d1dc054f24c13aeb886fba42d9dd0aac3cd9bdc4f034affc90f3a0bf3ci108",
"b205c9d1dc054f24c13aeb886fba42d9dd0aac3cd9bdc4f034affc90f3a0bf3ci109",
"b205c9d1dc054f24c13aeb886fba42d9dd0aac3cd9bdc4f034affc90f3a0bf3ci110",
"b205c9d1dc054f24c13aeb886fba42d9dd0aac3cd9bdc4f034affc90f3a0bf3ci111",
"b205c9d1dc054f24c13aeb886fba42d9dd0aac3cd9bdc4f034affc90f3a0bf3ci112",
"b205c9d1dc054f24c13aeb886fba42d9dd0aac3cd9bdc4f034affc90f3a0bf3ci113",
"b205c9d1dc054f24c13aeb886fba42d9dd0aac3cd9bdc4f034affc90f3a0bf3ci114",
"b205c9d1dc054f24c13aeb886fba42d9dd0aac3cd9bdc4f034affc90f3a0bf3ci115",
"b205c9d1dc054f24c13aeb886fba42d9dd0aac3cd9bdc4f034affc90f3a0bf3ci116",
"b205c9d1dc054f24c13aeb886fba42d9dd0aac3cd9bdc4f034affc90f3a0bf3ci117",
"b205c9d1dc054f24c13aeb886fba42d9dd0aac3cd9bdc4f034affc90f3a0bf3ci118",
"b205c9d1dc054f24c13aeb886fba42d9dd0aac3cd9bdc4f034affc90f3a0bf3ci119",
"b205c9d1dc054f24c13aeb886fba42d9dd0aac3cd9bdc4f034affc90f3a0bf3ci120",
"b205c9d1dc054f24c13aeb886fba42d9dd0aac3cd9bdc4f034affc90f3a0bf3ci121",
"b205c9d1dc054f24c13aeb886fba42d9dd0aac3cd9bdc4f034affc90f3a0bf3ci122",
"b205c9d1dc054f24c13aeb886fba42d9dd0aac3cd9bdc4f034affc90f3a0bf3ci123",
"b205c9d1dc054f24c13aeb886fba42d9dd0aac3cd9bdc4f034affc90f3a0bf3ci124",
"b205c9d1dc054f24c13aeb886fba42d9dd0aac3cd9bdc4f034affc90f3a0bf3ci125",
"b205c9d1dc054f24c13aeb886fba42d9dd0aac3cd9bdc4f034affc90f3a0bf3ci126",
"b205c9d1dc054f24c13aeb886fba42d9dd0aac3cd9bdc4f034affc90f3a0bf3ci127",
"b205c9d1dc054f24c13aeb886fba42d9dd0aac3cd9bdc4f034affc90f3a0bf3ci128",
"b205c9d1dc054f24c13aeb886fba42d9dd0aac3cd9bdc4f034affc90f3a0bf3ci129",
"b205c9d1dc054f24c13aeb886fba42d9dd0aac3cd9bdc4f034affc90f3a0bf3ci130",
"b205c9d1dc054f24c13aeb886fba42d9dd0aac3cd9bdc4f034affc90f3a0bf3ci131",
"b205c9d1dc054f24c13aeb886fba42d9dd0aac3cd9bdc4f034affc90f3a0bf3ci132",
"b205c9d1dc054f24c13aeb886fba42d9dd0aac3cd9bdc4f034affc90f3a0bf3ci133",
"b205c9d1dc054f24c13aeb886fba42d9dd0aac3cd9bdc4f034affc90f3a0bf3ci134",
"b205c9d1dc054f24c13aeb886fba42d9dd0aac3cd9bdc4f034affc90f3a0bf3ci135",
"b205c9d1dc054f24c13aeb886fba42d9dd0aac3cd9bdc4f034affc90f3a0bf3ci136",
"b205c9d1dc054f24c13aeb886fba42d9dd0aac3cd9bdc4f034affc90f3a0bf3ci137",
"b205c9d1dc054f24c13aeb886fba42d9dd0aac3cd9bdc4f034affc90f3a0bf3ci138",
"b205c9d1dc054f24c13aeb886fba42d9dd0aac3cd9bdc4f034affc90f3a0bf3ci139",
"b205c9d1dc054f24c13aeb886fba42d9dd0aac3cd9bdc4f034affc90f3a0bf3ci140",
"b205c9d1dc054f24c13aeb886fba42d9dd0aac3cd9bdc4f034affc90f3a0bf3ci141",
"b205c9d1dc054f24c13aeb886fba42d9dd0aac3cd9bdc4f034affc90f3a0bf3ci142",
"b205c9d1dc054f24c13aeb886fba42d9dd0aac3cd9bdc4f034affc90f3a0bf3ci143",
"b205c9d1dc054f24c13aeb886fba42d9dd0aac3cd9bdc4f034affc90f3a0bf3ci144",
"b205c9d1dc054f24c13aeb886fba42d9dd0aac3cd9bdc4f034affc90f3a0bf3ci145",
"b205c9d1dc054f24c13aeb886fba42d9dd0aac3cd9bdc4f034affc90f3a0bf3ci146",
"b205c9d1dc054f24c13aeb886fba42d9dd0aac3cd9bdc4f034affc90f3a0bf3ci147",
"b205c9d1dc054f24c13aeb886fba42d9dd0aac3cd9bdc4f034affc90f3a0bf3ci148",
"b205c9d1dc054f24c13aeb886fba42d9dd0aac3cd9bdc4f034affc90f3a0bf3ci149",
"b205c9d1dc054f24c13aeb886fba42d9dd0aac3cd9bdc4f034affc90f3a0bf3ci150",
"b205c9d1dc054f24c13aeb886fba42d9dd0aac3cd9bdc4f034affc90f3a0bf3ci151",
"b205c9d1dc054f24c13aeb886fba42d9dd0aac3cd9bdc4f034affc90f3a0bf3ci152",
"b205c9d1dc054f24c13aeb886fba42d9dd0aac3cd9bdc4f034affc90f3a0bf3ci153",
"b205c9d1dc054f24c13aeb886fba42d9dd0aac3cd9bdc4f034affc90f3a0bf3ci154",
"b205c9d1dc054f24c13aeb886fba42d9dd0aac3cd9bdc4f034affc90f3a0bf3ci155",
"b205c9d1dc054f24c13aeb886fba42d9dd0aac3cd9bdc4f034affc90f3a0bf3ci156",
"b205c9d1dc054f24c13aeb886fba42d9dd0aac3cd9bdc4f034affc90f3a0bf3ci157",
"b205c9d1dc054f24c13aeb886fba42d9dd0aac3cd9bdc4f034affc90f3a0bf3ci158",
"b205c9d1dc054f24c13aeb886fba42d9dd0aac3cd9bdc4f034affc90f3a0bf3ci159"
],
"more": true,
"page": 9
}
GET
/r/children/<INSCRIPTION_ID>/inscriptions
Description
Details of first 100 child inscriptions of INSCRIPTION_ID
.
Пример
curl -s \
http://0.0.0.0:80/r/children/e317a2a5d68bd1004ae15a06175a319272a10389ff125c98820389edef8b0a94i0/inscriptions
{
"children": [
{
"charms": [],
"fee": 417,
"height": 861224,
"id": "89e4fb2e5ea5c6301b9ac915d1d05619776f5ca41fc02fb6e5dced16f2cabfdei0",
"number": 75744297,
"output": "236ce10d9cd3f9f7f824a07686f7d7bce0d64a400f0328ce5bb2191a60d15262:0",
"sat": null,
"satpoint": "236ce10d9cd3f9f7f824a07686f7d7bce0d64a400f0328ce5bb2191a60d15262:0:0",
"timestamp": 1726282054
},
...
],
"more": true,
"page": 0
}
GET
/r/children/<INSCRIPTION_ID>/inscriptions/<PAGE>
Description
Details of 100 child inscriptions of INSCRIPTION_ID
paginated by PAGE
.
Пример
curl -s \
http://0.0.0.0:80/r/children/e317a2a5d68bd1004ae15a06175a319272a10389ff125c98820389edef8b0a94i0/inscriptions/9
{
"children": [
{
"charms": [
"vindicated"
],
"fee": 418,
"height": 861239,
"id": "b205c9d1dc054f24c13aeb886fba42d9dd0aac3cd9bdc4f034affc90f3a0bf3ci60",
"number": 75750346,
"output": "e8ebadbd9ce4e4372b1b9b30fd5cb831c1f48ff2d0f8f1d1de2e190a2f5bcbe8:1",
"sat": null,
"satpoint": "e8ebadbd9ce4e4372b1b9b30fd5cb831c1f48ff2d0f8f1d1de2e190a2f5bcbe8:1:0",
"timestamp": 1726292222
},
{
"charms": [
"vindicated"
],
"fee": 418,
"height": 861239,
"id": "b205c9d1dc054f24c13aeb886fba42d9dd0aac3cd9bdc4f034affc90f3a0bf3ci61",
"number": 75750347,
"output": "aa46f14bec8842edd7b7c1b79224cd186dda6c5577cd65196da77d7e27b00b0c:0",
"sat": null,
"satpoint": "aa46f14bec8842edd7b7c1b79224cd186dda6c5577cd65196da77d7e27b00b0c:0:0",
"timestamp": 1726292222
},
...
],
"more": true,
"page": 9
}
GET
/r/inscription/<INSCRIPTION_ID>
Description
Information about an inscription.
Пример
curl -s \
http://0.0.0.0:80/r/inscriptions/13130e4b299ed361f2a734f6433844ef0f0211cd504e0ca8f4d4ab20f51b8127i0
{
"charms": [
"vindicated"
],
"content_type": "model/gltf-binary",
"content_length": 3726620,
"delegate": null,
"fee": 7499396,
"height": 866266,
"id": "13130e4b299ed361f2a734f6433844ef0f0211cd504e0ca8f4d4ab20f51b8127i0",
"number": 76545890,
"output": "13130e4b299ed361f2a734f6433844ef0f0211cd504e0ca8f4d4ab20f51b8127:1",
"sat": null,
"satpoint": "13130e4b299ed361f2a734f6433844ef0f0211cd504e0ca8f4d4ab20f51b8127:1:0",
"timestamp": 1729297535,
"value": 1313,
"address": "bc1phj8hgzeptthkur9se2jq5vex7vlyhc8ul689svxea0xsn6r43z7sekz6qh"
}
GET
/r/metadata/<INSCRIPTION_ID>
Description
JSON string containing the hex-encoded CBOR metadata.
Пример
curl -s \
http://0.0.0.0:80/r/metadata/b1ef66c2d1a047cbaa6260b74daac43813924378fe08ef8545da4cb79e8fcf00i0
"ac6c50484f544f475241504845526a5041524b4552204441596643414d4552416c43414e4f4e20454f532d31566446494c4d6f4b4f44414b20454b54415220313030644c454e53781a5a4549535320504c414e415220542a2038354d4d20462f312e346d5348555454455220535045454465312f31323568415045525455524563462f38664d4f44454c5318646650484f544f531903e8684c4f434154494f4e774c4f5320414e47454c45532c2043414c49464f524e49416443524557a36a415353495354414e4345826e41524941532042555244454c4c49684e4153204e495858664d414b45555087754544454e2053594d4f4e45204c415454414e5a494f6a4d494d49204d455945526e53414d414e544841204c455052456f4c4953455454452053414e54414e416e4a45535349434120564552474f4e63504f4e724d415941204e414b415241205352554f4348644841495283694a414b4920494348556c4a4f43454c594e2056454741724a4546464552534f4e2054414e475241444966504154524f4e6e434153455920524f4441524d4f52674c4943454e534563434330"
GET
/r/parents/<INSCRIPTION_ID>
Description
The first 100 parent inscription ids.
Пример
curl -s \
http://0.0.0.0:80/r/parents/b1ef66c2d1a047cbaa6260b74daac43813924378fe08ef8545da4cb79e8fcf00i0
{
"ids": [
"6fb976ab49dcec017f1e201e84395983204ae1a7c2abf7ced0a85d692e442799i0"
],
"more": false,
"page_index": 0
}
GET
/r/parents/<INSCRIPTION_ID>/<PAGE>
Description
The set of 100 parent inscription ids on <PAGE>
.
Пример
curl -s \
http://0.0.0.0:80/r/parents/b1ef66c2d1a047cbaa6260b74daac43813924378fe08ef8545da4cb79e8fcf00i0/9
{
"ids": [],
"more": false,
"page_index": 9
}
GET
/r/parents/<INSCRIPTION_ID>/inscriptions
Description
Details of the first 100 parent inscriptions.
Пример
curl -s -H "Accept: application/json" \
http://0.0.0.0:80/r/parents/4a86d375a70a4ecc7ffcd910e05f5e0771ae6a50133543f1bf6b5651adbf0019i0/inscriptions
{
"parents": [
{
"charms": [],
"fee": 21730,
"height": 775167,
"id": "92c409fb749b1005fe9a1482d3a74a8e73936a72644f4979df8184aba473841di0",
"number": 4573,
"output": "4a86d375a70a4ecc7ffcd910e05f5e0771ae6a50133543f1bf6b5651adbf0019:13",
"sat": null,
"satpoint": "4a86d375a70a4ecc7ffcd910e05f5e0771ae6a50133543f1bf6b5651adbf0019:13:0",
"timestamp": 1675607405
},
{
"charms": [],
"fee": 14977,
"height": 775167,
"id": "c689cbcb8e31858c5e1476d04af4e7e7cedd1fb4fb9cae5bb62036936a08282di0",
"number": 4576,
"output": "4a86d375a70a4ecc7ffcd910e05f5e0771ae6a50133543f1bf6b5651adbf0019:14",
"sat": null,
"satpoint": "4a86d375a70a4ecc7ffcd910e05f5e0771ae6a50133543f1bf6b5651adbf0019:14:0",
"timestamp": 1675607405
},
{
"charms": [],
"fee": 12533,
"height": 775167,
"id": "982d15f6b3510307ef845f1cb3352b27e2b048616b7c0642367ebc05bbd36d3ai0",
"number": 4578,
"output": "4a86d375a70a4ecc7ffcd910e05f5e0771ae6a50133543f1bf6b5651adbf0019:12",
"sat": null,
"satpoint": "4a86d375a70a4ecc7ffcd910e05f5e0771ae6a50133543f1bf6b5651adbf0019:12:0",
"timestamp": 1675607405
}
...
],
"more": true,
"page": 0
}
GET
/r/parents/<INSCRIPTION_ID>/inscriptions/<PAGE>
Description
Details of the set of 100 parent inscriptions on <PAGE>.
Пример
curl -s -H "Accept: application/json" \
http://0.0.0.0:80/r/parents/4a86d375a70a4ecc7ffcd910e05f5e0771ae6a50133543f1bf6b5651adbf0019i0/inscriptions/1
{
"parents": [
{
"charms": [],
"fee": 65049,
"height": 775443,
"id": "972994a55c338e8458bfd156642f4aa56bdab54c68658d6b64d932fedef3c81fi0",
"number": 10804,
"output": "4a86d375a70a4ecc7ffcd910e05f5e0771ae6a50133543f1bf6b5651adbf0019:102",
"sat": null,
"satpoint": "4a86d375a70a4ecc7ffcd910e05f5e0771ae6a50133543f1bf6b5651adbf0019:102:0",
"timestamp": 1675780989
},
{
"charms": [],
"fee": 60111,
"height": 775443,
"id": "dbc21f2d3323df24a378fef3bdbe4e79c4947ce7da54968affcdefa7eda80d21i0",
"number": 10805,
"output": "4a86d375a70a4ecc7ffcd910e05f5e0771ae6a50133543f1bf6b5651adbf0019:110",
"sat": null,
"satpoint": "4a86d375a70a4ecc7ffcd910e05f5e0771ae6a50133543f1bf6b5651adbf0019:110:0",
"timestamp": 1675780989
},
{
"charms": [],
"fee": 49881,
"height": 775443,
"id": "97870f7cf65992a66d0413a7e6773190e686f185500f78c30f989f2d1f1ba922i0",
"number": 10806,
"output": "4a86d375a70a4ecc7ffcd910e05f5e0771ae6a50133543f1bf6b5651adbf0019:101",
"sat": null,
"satpoint": "4a86d375a70a4ecc7ffcd910e05f5e0771ae6a50133543f1bf6b5651adbf0019:101:0",
"timestamp": 1675780989
}
...
],
"more": false,
"page": 1
}
GET
/r/sat/<SAT_NUMBER>
Description
The first 100 inscription ids on a sat. Requires index with --index-sats
flag.
Пример
curl -s \
http://0.0.0.0:80/r/sat/153899938226999
{
"ids": [
"f4ad941ee3892598f34777c4b7b3e2ccccece58ab21aa4364d0d2066daf5b427i3",
"a4bca99fba23122e113bfb9a8010095b2005c4d73fa5b5532de60752b768a3e5i0",
"11b4097bc9ff238c930ed4df44a6a5943ac1b570d424d7e13425244e3f345db7i0",
"488c32e4dfcdc0fa376c2c2af2d572a12f4d33d3245689d1a9f74167f1e14678i0"
],
"more": false,
"page": 0
}
GET
/r/sat/<SAT_NUMBER>/<PAGE>
Description
The set of 100 inscription ids on <PAGE>
. Requires index with --index-sats
flag.
Пример
curl -s \
http://0.0.0.0:80/r/sat/1499676120331756/1
{
"ids": [
"c18b2db646cd23b9745bd40a249fc84975b1105a637f3784aa4dbd46a839750fi0",
"7d7c2db251779ea4147ed881daac210bfa416f39846b60e3e6813b713a393d9ai0",
"f42913d8c95f055b586fa9a6c71d2432c7ac860a9a4524c0abf83b1dbe175383i0",
"52fd615dc56a8efb241e4de141692cfa57b1af0ac5d65da7e9d5f12841c2c56ci0",
"cd65b92b9d4080a850eaf2c67c8e0c40c61ecdebeea9ae03936947f981a7b54ai0",
"708ac95fe35bcfef5403f13e5e32c927adb413ce39597abc20f8e8fa4fa1d005i0",
"2399e57a8f598b4487dda149942404e5002321139997280c736dcd0c3a806672i0",
"4a2b37c1e017646a9ba2aa13487ae55b8621972aac349426df680eaf66b90571i0",
"2a7b8b23f2a36bcff7ab23013cd13b303b8797cfac75e88d4daf1a9ddcdbdc6ai0",
"b4cac4e0c9a9ccf6428c1e3869bbbcc0e094d39d972094af21a3ca342a9afedbi0",
"c5f4bb989cc8bca10079287272d07b77b562938eaad35b3dface018cb6ac1c38i0"
],
"more": false,
"page": 1
}
GET
/r/sat/<SAT_NUMBER>/at/<INDEX>
Description
The inscription id at <INDEX>
of all inscriptions on a sat. <INDEX>
may be a negative number to index from the back. 0
being the first and -1
being the most recent for example. Requires index with --index-sats
flag.
Пример
curl -s \
http://0.0.0.0:80/r/sat/153899938226999/at/-1
{
"id": "488c32e4dfcdc0fa376c2c2af2d572a12f4d33d3245689d1a9f74167f1e14678i0"
}
GET
/r/sat/<SAT_NUMBER>/at/<INDEX>/content
Description
The content of the inscription at <INDEX>
on a sat. <INDEX>
may be a negative number to index from the back. 0
being the first and -1
being the most recent. Requires index with --index-sats
flag.
Пример
Fetch the content of the most recently created inscription on sat 289488340427831.
curl -s \
http://0.0.0.0:80/r/sat/289488340427831/at/-1/content
Hello, world!
GET
/r/tx/<TRANSACTION_ID>
Description
Get hex-encoded transaction with <TRANSACTION_ID>
. In the event of a future change to Bitcoin that changes transaction serialization in a backwards-incompatible fashion, such as SegWit, this endpoint is guaranteed to remain backwards compatible.
Пример
curl -s http://0.0.0.0:80/r/tx/60bcf821240064a9c55225c4f01711b0ebbcab39aa3fafeefe4299ab158536fa
"0100000000010183572872dcb32bee57003d53c2b8dbb5bc5819ff6478052599911f7778d1c7bd0000000000fdffffff011027000000000000225120e41e0cba05c6ac797cf543ff9a6c619a91a53813e59146d1e32ea89747b111a603407aa50d93d6fc01265fd52d3edc93af4e009ccc1a704ce1b5cb8ede1412a5df31eba587d080b3dc903ceb9002ed9d921aad323fd44d7b4dc2a1ad2ea12d4360424d20c7a3a38df198a4fcde7d5dac5819ed19ff4d25bb893c9511f8e1f51d59326effac0063036f7264010118746578742f706c61696e3b636861727365743d7574662d3800077072696d65730a6821c1c7a3a38df198a4fcde7d5dac5819ed19ff4d25bb893c9511f8e1f51d59326eff00000000"
GET
/r/utxo/<OUTPOINT>
Description
Get assets held by an unspent transaction output.
Examples
Unspent transaction output with server without any indices:
curl -s \
http://0.0.0.0:80/r/utxo/4a5e1e4baab89f3a32518a88c31bc87f618f76673e2cc77ab2127b7afdeda33b:0
{
"inscriptions": null,
"runes": null,
"sat_ranges": null,
"value": 5000000000
}
With rune, inscription, and sat index:
curl -s \
http://0.0.0.0:80/r/utxo/626860df36c1047194866c6812f04c15ab84f3690e7cc06fd600c841f1943e05:0
{
"inscriptions": [
"6fb976ab49dcec017f1e201e84395983204ae1a7c2abf7ced0a85d692e442799i0"
],
"runes": {
"UNCOMMON•GOODS": {
"amount": 6845,
"divisibility": 0,
"symbol": "⧉"
}
},
"sat_ranges": [
[
1905800627509113,
1905800627509443
]
],
"value": 330
}
Note: <SAT_NUMBER>
only allows the actual number of a sat no other sat notations like degree, percentile or decimal. We may expand to allow those in the future.
Responses from most of the above recursive endpoints are JSON. For backwards compatibility, some endpoints are supported which only return plain-text responses.
/blockheight
: высота последнего блока./blockhash
: хэш последнего блока./blockhash/<HEIGHT>
: хэш блока при заданной высоте блока./blocktime
: UNIX-метка времени последнего блока.
See examples for on-chain examples of inscriptions that feature this functionality.
Rendering
Aspect Ratio
Inscriptions should be rendered with a square aspect ratio. Non-square aspect ratio inscriptions should not be cropped, and should instead be centered and resized to fit within their container.
Maximum Size
The ord
explorer, used by ordinals.com, displays inscription previews with a maximum size of 576 by 576 pixels, making it a reasonable choice when choosing a maximum display size.
Image Rendering
The CSS image-rendering
property controls how images are resampled when upscaled and downscaled.
When downscaling image inscriptions, image-rendering: auto
, should be used. This is desirable even when downscaling pixel art.
When upscaling image inscriptions other than AVIF, image-rendering: pixelated
should be used. This is desirable when upscaling pixel art, since it preserves the sharp edges of pixels. It is undesirable when upscaling non-pixel art, but should still be used for visual compatibility with the ord
explorer.
When upscaling AVIF and JPEG XL inscriptions, image-rendering: auto
should be used. This allows inscribers to opt-in to non-pixelated upscaling for non-pixel art inscriptions. Until such time as JPEG XL is widely supported by browsers, it is not a recommended image format.
URIs
This document is a draft. It should be considered provisional and subject to change at any time. The ord:
schema has not been registered with the IANA.
Inscriptions content can be addressed with inscription URIs using the ord:
schema.
Inscription URIs consist of ord:
followed by a target inscription ID. ord:
is not followed by //
, since the schema-specific part of inscription URIs, namely the target inscription ID, does not contain a hierarchical structure.
For example, the inscription URI of the genesis inscription is:
ord:6fb976ab49dcec017f1e201e84395983204ae1a7c2abf7ced0a85d692e442799i0
Inscription URIs match the following verbose regular expression:
(?i) # case-insensitive
ord: # schema
[0-9a-f]{64} # transaction ID
i # separator
(0|[1-9][0-9]*) # inscription index
Inscription URIs are case-insensitive and can thus use the more compact alphanumeric mode when encoded as QR codes. Lowercase is, however, the preferred presentation style.
The referent of an inscription URI is an HTTP resource with the content, content type, content encoding, and content length corresponding to the inscription with the given ID.
The referent of an inscription URI is always the original content of the target inscription, and not the content of the delegate, regardless of whether or not the target inscription has a delegate.
Inscription Examples
Delegate
- The first delegate inscription.
- The Oscillations * collection utilizes delegation, provenance, recursion, sat endpoint, and detects the kind of sat that each piece is inscribed on (sattribute-aware). Each piece is a delegate of this inscription.
- This inscription was inscribed as a delegate of this inscription and is also the parent inscription of a rune.
Metadata
- Each member in the FUN collection has metadata that describes its attributes.
- This inscription uses its own metadata to draw the ordinal image.
Провенанс
- Inscription 0 is the parent inscription for Casey's sugar skull collection, a grandparent for the FUN! collection, and the grandparent for the sleepiest rune.
- With the Rug Me collection, owners are able to change the background color by inscribing a child to it.
- This Bitcoin Magazine Cover renders the children as part of the parent inscription.
- The yellow_ord_bot has many different quotes as cursed children.
- The Spellbound collection from the Wizard of Ord utilizes recursion, delegation, metadata, provenance, postage, location, compression.
Рекурсия
- Inscription 12992 was the first recursive inscription inscribed on mainnet.
- OnChain Monkey Genesis (BTC) was one of the earliest collections to use recursion to create its PFP art.
- Blob is a recursive generative collection that seeds its generation with metadata and uses threeJS, React 3 Fiber and other libraries recursively.
- The GPU Ordinals collection takes recursive content and transforms it before rendering, creating what is termed as 'super-recursion'. Use Google Chrome and headphones to experience the spatial audio.
- The Abstractii Genesis collection uses the inscriptions ID as a seed to generate its art.
- The Abstractii Evolved generative collection uses the recursive blockheight endpoint as a seed to generate its art.
- This code is called recursively in this inscription to generate music.
- This code is called recursively in this inscription, allowing it to function as a pixel art drawing program.
Runes
Runes allow Bitcoin transactions to etch, mint, and transfer Bitcoin-native digital commodities.
Whereas every inscription is unique, every unit of a rune is the same. They are interchangeable tokens, fit for a variety of purposes.
Runestones
Rune protocol messages, called runestones, are stored in Bitcoin transaction outputs.
A runestone output's script pubkey begins with an OP_RETURN
, followed by OP_13
, followed by zero or more data pushes. These data pushes are concatenated and decoded into a sequence of 128-bit integers, and finally parsed into a runestone.
A transaction may have at most one runestone.
A runestone may etch a new rune, mint an existing rune, and transfer runes from a transaction's inputs to its outputs.
A transaction output may hold balances of any number of runes.
Runes are identified by IDs, which consist of the block in which a rune was etched and the index of the etching transaction within that block, represented in text as BLOCK:TX
. For example, the ID of the rune etched in the 20th transaction of the 500th block is 500:20
.
Etching
Runes come into existence by being etched. Etching creates a rune and sets its properties. Once set, these properties are immutable, even to its etcher.
Name
Names consist of the letters A through Z and are between one and twenty-six letters long. For example UNCOMMONGOODS
is a rune name.
Names may contain spacers, represented as bullets, to aid readability. UNCOMMONGOODS
might be etched as UNCOMMON•GOODS
.
The uniqueness of a name does not depend on spacers. Thus, a rune may not be etched with the same sequence of letters as an existing rune, even if it has different spacers.
Spacers can only be placed between two letters. Finally, spacers do not count towards the letter count.
Divisibility
A rune's divisibility is how finely it may be divided into its atomic units. Divisibility is expressed as the number of digits permissible after the decimal point in an amount of runes. A rune with divisibility 0 may not be divided. A unit of a rune with divisibility 1 may be divided into ten sub-units, a rune with divisibility 2 may be divided into a hundred, and so on.
Symbol
A rune's currency symbol is a single Unicode code point, for example $
, ⧉
, or 🧿
, displayed after quantities of that rune.
101 atomic units of a rune with divisibility 2 and symbol 🧿
would be rendered as 1.01 🧿
.
If a rune does not have a symbol, the generic currency sign ¤
, also called a scarab, should be used.
Premine
The etcher of a rune may optionally allocate to themselves units of the rune being etched. This allocation is called a premine.
Terms
A rune may have an open mint, allowing anyone to create and allocate units of that rune for themselves. An open mint is subject to terms, which are set upon etching.
A mint is open while all terms of the mint are satisfied, and closed when any of them are not. For example, a mint may be limited to a starting height, an ending height, and a cap, and will be open between the starting height and ending height, or until the cap is reached, whichever comes first.
Cap
The number of times a rune may be minted is its cap. A mint is closed once the cap is reached.
Amount
Each mint transaction creates a fixed amount of new units of a rune.
Start Height
A mint is open starting in the block with the given start height.
End Height
A rune may not be minted in or after the block with the given end height.
Start Offset
A mint is open starting in the block whose height is equal to the start offset plus the height of the block in which the rune was etched.
End Offset
A rune may not be minted in or after the block whose height is equal to the end offset plus the height of the block in which the rune was etched.
Minting
While a rune's mint is open, anyone may create a mint transaction that creates a fixed amount of new units of that rune, subject to the terms of the mint.
Transferring
When transaction inputs contain runes, or new runes are created by a premine or mint, those runes are transferred to that transaction's outputs. A transaction's runestone may change how input runes transfer to outputs.
Edicts
A runestone may contain any number of edicts. Edicts consist of a rune ID, an amount, and an output number. Edicts are processed in order, allocating unallocated runes to outputs.
Pointer
After all edicts are processed, remaining unallocated runes are transferred to the transaction's first non-OP_RETURN
output. A runestone may optionally contain a pointer that specifies an alternative default output.
Burning
Runes may be burned by transferring them to an OP_RETURN
output with an edict or pointer.
Cenotaphs
Runestones may be malformed for a number of reasons, including non-pushdata opcodes in the runestone OP_RETURN
, invalid varints, or unrecognized runestone fields.
Malformed runestones are termed cenotaphs.
Runes input to a transaction with a cenotaph are burned. Runes etched in a transaction with a cenotaph are set as unmintable. Mints in a transaction with a cenotaph count towards the mint cap, but the minted runes are burned.
Cenotaphs are an upgrade mechanism, allowing runestones to be given new semantics that change how runes are created and transferred, while not misleading unupgraded clients as to the location of those runes, as unupgraded clients will see those runes as having been burned.
Runes Does Not Have a Specification
The Runes reference implementation, ord
, is the normative specification of the Runes protocol.
Nothing you read here or elsewhere, aside from the code of ord
, is a specification. This prose description of the runes protocol is provided as a guide to the behavior of ord
, and the code of ord
itself should always be consulted to confirm the correctness of any prose description.
If, due to a bug in ord
, this document diverges from the actual behavior of ord
and it is impractically disruptive to change ord
's behavior, this document will be amended to agree with ord
's actual behavior.
Users of alternative implementations do so at their own risk, and services wishing to integrate Runes are strongly encouraged to use ord
itself to make Runes transactions, and to determine the state of runes, mints, and balances.
Runestones
Rune protocol messages are termed "runestones".
The Runes protocol activates on block 840,000. Runestones in earlier blocks are ignored.
Abstractly, runestones contain the following fields:
#![allow(unused)] fn main() { struct Runestone { edicts: Vec<Edict>, etching: Option<Etching>, mint: Option<RuneId>, pointer: Option<u32>, } }
Runes are created by etchings:
#![allow(unused)] fn main() { struct Etching { divisibility: Option<u8>, premine: Option<u128>, rune: Option<Rune>, spacers: Option<u32>, symbol: Option<char>, terms: Option<Terms>, } }
Which may contain mint terms:
#![allow(unused)] fn main() { struct Terms { amount: Option<u128>, cap: Option<u128>, height: (Option<u64>, Option<u64>), offset: (Option<u64>, Option<u64>), } }
Runes are transferred by edict:
#![allow(unused)] fn main() { struct Edict { id: RuneId, amount: u128, output: u32, } }
Rune IDs are encoded as the block height and transaction index of the transaction in which the rune was etched:
#![allow(unused)] fn main() { struct RuneId { block: u64, tx: u32, } }
Rune IDs are represented in text as BLOCK:TX
.
Rune names are encoded as modified base-26 integers:
#![allow(unused)] fn main() { struct Rune(u128); }
Deciphering
Runestones are deciphered from transactions with the following steps:
-
Find the first transaction output whose script pubkey begins with
OP_RETURN OP_13
. -
Concatenate all following data pushes into a payload buffer.
-
Decode a sequence 128-bit LEB128 integers from the payload buffer.
-
Parse the sequence of integers into an untyped message.
-
Parse the untyped message into a runestone.
Deciphering may produce a malformed runestone, termed a cenotaph.
Locating the Runestone Output
Outputs are searched for the first script pubkey that beings with OP_RETURN OP_13
. If deciphering fails, later matching outputs are not considered.
Assembling the Payload Buffer
The payload buffer is assembled by concatenating data pushes, after OP_13
, in the matching script pubkey.
Data pushes are opcodes 0 through 78 inclusive. If a non-data push opcode is encountered, i.e., any opcode equal to or greater than opcode 79, the deciphered runestone is a cenotaph with no etching, mint, or edicts.
Decoding the Integer Sequence
A sequence of 128-bit integers are decoded from the payload as LEB128 varints.
LEB128 varints are encoded as sequence of bytes, each of which has the most-significant bit set, except for the last.
If a LEB128 varint contains more than 18 bytes, would overflow a u128, or is truncated, meaning that the end of the payload buffer is reached before encountering a byte with the continuation bit not set, the decoded runestone is a cenotaph with no etching, mint, or edicts.
Parsing the Message
The integer sequence is parsed into an untyped message:
#![allow(unused)] fn main() { struct Message { fields: Map<u128, Vec<u128>>, edicts: Vec<Edict>, } }
The integers are interpreted as a sequence of tag/value pairs, with duplicate tags appending their value to the field value.
If a tag with value zero is encountered, all following integers are interpreted as a series of four-integer edicts, each consisting of a rune ID block height, rune ID transaction index, amount, and output.
#![allow(unused)] fn main() { struct Edict { id: RuneId, amount: u128, output: u32, } }
Rune ID block heights and transaction indices in edicts are delta encoded.
Edict rune ID decoding starts with a base block height and transaction index of zero. When decoding each rune ID, first the encoded block height delta is added to the base block height. If the block height delta is zero, the next integer is a transaction index delta. If the block height delta is greater than zero, the next integer is instead an absolute transaction index.
This implies that edicts must first be sorted by rune ID before being encoded in a runestone.
For example, to encode the following edicts:
block | TX | amount | output |
---|---|---|---|
10 | 5 | 5 | 1 |
50 | 1 | 25 | 4 |
10 | 7 | 1 | 8 |
10 | 5 | 10 | 3 |
They are first sorted by block height and transaction index:
block | TX | amount | output |
---|---|---|---|
10 | 5 | 5 | 1 |
10 | 5 | 10 | 3 |
10 | 7 | 1 | 8 |
50 | 1 | 25 | 4 |
And then delta encoded as:
block delta | TX delta | amount | output |
---|---|---|---|
10 | 5 | 5 | 1 |
0 | 0 | 10 | 3 |
0 | 2 | 1 | 8 |
40 | 1 | 25 | 4 |
If an edict output is greater than the number of outputs of the transaction, an edict rune ID is encountered with block zero and nonzero transaction index, or a field is truncated, meaning a tag is encountered without a value, the decoded runestone is a cenotaph.
Note that if a cenotaph is produced here, the cenotaph is not empty, meaning that it contains the fields and edicts, which may include an etching and mint.
Parsing the Runestone
The runestone:
#![allow(unused)] fn main() { struct Runestone { edicts: Vec<Edict>, etching: Option<Etching>, mint: Option<RuneId>, pointer: Option<u32>, } }
Is parsed from the unsigned message using the following tags:
#![allow(unused)] fn main() { enum Tag { Body = 0, Flags = 2, Rune = 4, Premine = 6, Cap = 8, Amount = 10, HeightStart = 12, HeightEnd = 14, OffsetStart = 16, OffsetEnd = 18, Mint = 20, Pointer = 22, Cenotaph = 126, Divisibility = 1, Spacers = 3, Symbol = 5, Nop = 127, } }
Note that tags are grouped by parity, i.e., whether they are even or odd. Unrecognized odd tags are ignored. Unrecognized even tags produce a cenotaph.
All unused tags are reserved for use by the protocol, may be assigned at any time, and should not be used.
Body
The Body
tag marks the end of the runestone's fields, causing all following integers to be interpreted as edicts.
Flags
The Flag
field contains a bitmap of flags, whose position is 1 << FLAG_VALUE
:
#![allow(unused)] fn main() { enum Flag { Etching = 0, Terms = 1, Turbo = 2, Cenotaph = 127, } }
The Etching
flag marks this transaction as containing an etching.
The Terms
flag marks this transaction's etching as having open mint terms.
The Turbo
flag marks this transaction's etching as opting into future protocol changes. These protocol changes may increase light client validation costs, or just be highly degenerate.
The Cenotaph
flag is unrecognized.
If the value of the flags field after removing recognized flags is nonzero, the runestone is a cenotaph.
Rune
The Rune
field contains the name of the rune being etched. If the Etching
flag is set but the Rune
field is omitted, a reserved rune name is allocated.
Premine
The Premine
field contains the amount of premined runes.
Cap
The Cap
field contains the allowed number of mints.
Amount
The Amount
field contains the amount of runes each mint transaction receives.
HeightStart and HeightEnd
The HeightStart
and HeightEnd
fields contain the mint's starting and ending absolute block heights, respectively. The mint is open starting in the block with height HeightStart
, and closes in the block with height HeightEnd
.
OffsetStart and OffsetEnd
The OffsetStart
and OffsetEnd
fields contain the mint's starting and ending block heights, relative to the block in which the etching is mined. The mint is open starting in the block with height OffsetStart
+ ETCHING_HEIGHT
, and closes in the block with height OffsetEnd
+ ETCHING_HEIGHT
.
Mint
The Mint
field contains the Rune ID of the rune to be minted in this transaction.
Pointer
The Pointer
field contains the index of the output to which runes unallocated by edicts should be transferred. If the Pointer
field is absent, unallocated runes are transferred to the first non-OP_RETURN
output. If the pointer is greater than the number of outputs, the runestone is a cenotaph.
Cenotaph
The Cenotaph
field is unrecognized.
Divisibility
The Divisibility
field, raised to the power of ten, is the number of subunits in a super unit of runes.
For example, the amount 1234
of different runes with divisibility 0 through 3 is displayed as follows:
Divisibility | Display |
---|---|
0 | 1234 |
1 | 123.4 |
2 | 12.34 |
3 | 1.234 |
Spacers
The Spacers
field is a bitfield of •
spacers that should be displayed between the letters of the rune's name.
The Nth field of the bitfield, starting from the least significant, determines whether or not a spacer should be displayed between the Nth and N+1th character, starting from the left of the rune's name.
For example, the rune name AAAA
rendered with different spacers:
Spacers | Display |
---|---|
0b1 | A•AAA |
0b11 | A•A•AA |
0b10 | AA•AA |
0b111 | A•A•A•A |
Trailing spacers are ignored.
Symbol
The Symbol
field is the Unicode codepoint of the Rune's currency symbol, which should be displayed after amounts of that rune. If a rune does not have a currency symbol, the generic currency character ¤
should be used.
For example, if the Symbol
is #
and the divisibility is 2, the amount of 1234
units should be displayed as 12.34 #
.
Nop
The Nop
field is unrecognized.
Cenotaphs
Cenotaphs have the following effects:
-
All runes input to a transaction containing a cenotaph are burned.
-
If the runestone that produced the cenotaph contained an etching, the etched rune has supply zero and is unmintable.
-
If the runestone that produced the cenotaph is a mint, the mint counts against the mint cap and the minted runes are burned.
Cenotaphs may be created if a runestone contains an unrecognized even tag, an unrecognized flag, an edict with an output number greater than the number of inputs, a rune ID with block zero and nonzero transaction index, a malformed varint, a non-datapush instruction in the runestone output script pubkey, a tag without a following value, or trailing integers not part of an edict.
Executing the Runestone
Runestones are executed in the order their transactions are included in blocks.
Etchings
A runestone may contain an etching:
#![allow(unused)] fn main() { struct Etching { divisibility: Option<u8>, premine: Option<u128>, rune: Option<Rune>, spacers: Option<u32>, symbol: Option<char>, terms: Option<Terms>, } }
rune
is the name of the rune to be etched, encoded as modified base-26 integer.
Rune names consist of the letters A through Z, with the following encoding:
Name | Encoding |
---|---|
A | 0 |
B | 1 |
… | … |
Y | 24 |
Z | 25 |
AA | 26 |
AB | 27 |
… | … |
AY | 50 |
AZ | 51 |
BA | 52 |
And so on and so on.
Rune names AAAAAAAAAAAAAAAAAAAAAAAAAAA
and above are reserved.
If rune
is omitted a reserved rune name is allocated as follows:
#![allow(unused)] fn main() { fn reserve(block: u64, tx: u32) -> Rune { Rune( 6402364363415443603228541259936211926 + (u128::from(block) << 32 | u128::from(tx)) ) } }
6402364363415443603228541259936211926
corresponds to the rune name AAAAAAAAAAAAAAAAAAAAAAAAAAA
.
If rune
is present, it must be unlocked as of the block in which the etching appears.
Initially, all rune names of length thirteen and longer, up until the first reserved rune name, are unlocked.
Runes begin unlocking in block 840,000, the block in which the runes protocol activates.
Thereafter, every 17,500 block period, the next shortest length of rune names is continuously unlocked. So, between block 840,000 and block 857,500, the twelve-character rune names are unlocked, between block 857,500 and block 875,000 the eleven character rune names are unlocked, and so on and so on, until the one-character rune names are unlocked between block 1,032,500 and block 1,050,000. See the ord
codebase for the precise unlocking schedule.
To prevent front running an etching that has been broadcast but not mined, if a non-reserved rune name is being etched, the etching transaction must contain a valid commitment to the name being etched.
A commitment consists of a data push of the rune name, encoded as a little-endian integer with trailing zero bytes elided, present in an input witness tapscript where the output being spent has at least six confirmations.
If a valid commitment is not present, the etching is ignored.
Minting
A runestone may mint a rune by including the rune's ID in the Mint
field.
If the mint is open, the mint amount is added to the unallocated runes in the transaction's inputs. These runes may be transferred using edicts, and will otherwise be transferred to the first non-OP_RETURN
output, or the output designated by the Pointer
field.
Mints may be made in any transaction after an etching, including in the same block.
Transferring
Runes are transferred by edict:
#![allow(unused)] fn main() { struct Edict { id: RuneId, amount: u128, output: u32, } }
A runestone may contain any number of edicts, which are processed in sequence.
Before edicts are processed, input runes, as well as minted or premined runes, if any, are unallocated.
Each edict decrements the unallocated balance of rune id
and increments the balance allocated to transaction outputs of rune id
.
If an edict would allocate more runes than are currently unallocated, the amount
is reduced to the number of currently unallocated runes. In other words, the edict allocates all remaining unallocated units of rune id
.
Because the ID of an etched rune is not known before it is included in a block, ID 0:0
is used to mean the rune being etched in this transaction, if any.
An edict with amount
zero allocates all remaining units of rune id
.
An edict with output
equal to the number of transaction outputs allocates amount
runes to each non-OP_RETURN
output in order.
An edict with amount
zero and output
equal to the number of transaction outputs divides all unallocated units of rune id
between each non-OP_RETURN
output. If the number of unallocated runes is not divisible by the number of non-OP_RETURN
outputs, 1 additional rune is assigned to the first R
non-OP_RETURN
outputs, where R
is the remainder after dividing the balance of unallocated units of rune id
by the number of non-OP_RETURN
outputs.
If any edict in a runestone has a rune ID with block
zero and tx
greater than zero, or output
greater than the number of transaction outputs, the runestone is a cenotaph.
Note that edicts in cenotaphs are not processed, and all input runes are burned.
Satscard
Satscards are cards which can be used to store bitcoin, inscriptions, and runes.
Slots
Each satscard has ten slots containing private keys with corresponding bitcoin addresses.
Initially, all slots are sealed and the private keys are stored only the satscard.
Slots can be unsealed, which allows the corresponding private key to be extracted.
Unsealing is permanent. If a satscard is sealed, you can have some confidence that private key is not known to anyone. That taking physical ownership of a satscard makes you the sole owner of assets in any sealed slots.
Lifespan
Satscards are expected to have a usable lifetime of ten years. Do not use satscards for long-term storage of valuable assets.
Viewing
When placed on a smartphone, the satscard transmits a URL, beginning with https://satscard.com/start
or https://getsatscard.com/start
, depending on when it was manufactured.
This URL contains a signature which can be used to recover the address of the current slot. This signature is made over a random nonce, so it changes every time the satscard is tapped, and provides some confidence that the satscard contains the private key.
ord
supports viewing the contents of a satscard by entering the full URL into the ord
explorer search bar, or the input field on the /satscard
page.
For ordinals.com
, this is ordinals.com/satscard.
Unsealing
Satscard slots can be unsealed and the private keys extracted using the cktap
binary, available in the coinkite-tap-proto repository.
Sweeping
After a satscard slot is unsealed, all assets should be swept from that slot to another wallet, as the private key can now be read via NFC.
ord
does not yet support sweeping assets from other wallets, so assets will need to be transferred manually.
Be careful, and good luck!
ЧАВО по Ordinals Theory
Что такое ordinal theory?
Ordinal theory - это протокол для присвоения порядковых номеров сатоши, наименьшей части биткоина, и отслеживания этих сатоши по мере их расходования в ходе транзакций.
Эти серийные номера представляют собой большие числа, как, например, этот 804766073970493. Каждый сатоши, который представляет собой ¹⁄₁₀₀₀₀₀₀₀₀ биткоина, имеет порядковый номер.
Требует ли ordinal theory создания side chain, отдельного токена или изменений в Bitcoin?
Нет! Ordinal theory работает прямо сейчас, без side chain, и единственным необходимым токеном является сам биткоин.
Чем полезна ordinal theory?
Коллекционирование, торговля и интриги. Ordinal theory присваивает идентификацию отдельным сатоши, что позволяет отслеживать их по отдельности и торговать ими как диковинами и нумизматическими ценностями.
Ordinal theory также позволяет создавать надписи - протокол для прикрепления произвольного содержимого к отдельным сатоши, превращая их в цифровые артефакты с поддержкой биткоина.
Как работает ordinal theory?
Порядковые номера присваиваются сатоши в том порядке, в котором они добываются. Первый сатоши в первом блоке имеет порядковый номер 0, второй имеет порядковый номер - 1, а последний сатоши первого блока имеет порядковый номер 4,999,999,999.
Сатоши живут в выходах, но транзакции разрушают выходы и создают новые, поэтому порядковая теория использует алгоритм для определения того, как сатоши переходят от входов транзакции к ее выходам.
К счастью, этот алгоритм очень прост.
Сатоши передаются по принципу первым пришёл - первым вышел. Считайте, что на входе транзакции находится список сатоши, а на выходе - список слотов, ожидающих получения сатоши. Чтобы распределить входные сатоши по слотам, переберите все сатоши на входах по порядку и распределите их по первому свободному слоту на выходах.
Представим себе транзакцию с тремя входами и двумя выходами. Входы расположены слева от стрелки, а выходы - справа, все они помечены своими значениями:
[2] [1] [3] → [4] [2]
Теперь обозначим ту же операцию порядковыми номерами сатоши, которые содержит каждый вход, и вопросительными знаками - каждый выходной слот. Порядковые номера большие, поэтому для их обозначения будем использовать буквы:
[a b] [c] [d e f] → [? ? ? ?] [? ?]
Чтобы выяснить, какой сатоши соответствует какому выходу, пройдите по порядку все входные сатоши и присвойте каждому из них вопросительный знак:
[a b] [c] [d e f] → [a b c d] [e f]
А что насчет комиссий, спросите вы? Хороший вопрос! Представим себе ту же транзакцию, но с комиссией в два сатоши. Транзакции с комиссией отправляют на входы больше сатоши, чем получают на выходы, поэтому, чтобы превратить нашу транзакцию в транзакцию которая оплачивает комиссию, мы удалим второй выход:
[2] [1] [3] → [4]
The satoshis e and f now have nowhere to go in the outputs:
[a b] [c] [d e f] → [a b c d]
Поэтому они поступают майнеру, добывшему блок, в качестве вознаграждения. В BIP описаны подробности, но вкратце, комиссии, уплаченные транзакциями, рассматриваются как дополнительные входы в транзакцию coinbase и упорядочиваются так, как упорядочены соответствующие им транзакции в блоке. Транзакция блока coinbase может выглядеть следующим образом:
[SUBSIDY] [e f] → [SUBSIDY e f]
Где я могу найти подробную информацию?
Почему sat надписи называются "цифровыми артефактами", а не "NFT"?
Надпись - это NFT, но вместо нее используется термин "цифровой артефакт", поскольку он прост, наводит на размышления и хорошо знаком.
Фраза "цифровой артефакт" наводит на размышления даже тех, кто никогда раньше не слышал этого термина. Для сравнения, NFT - это аббревиатура, которая не дает никаких указаний на то, что она означает, если вы не слышали этот термин раньше.
Кроме того, в "NFT" чувствуется финансовая терминология, а слова "fungible" и смысл слова "token", используемые в "NFT", нередки вне финансового контекста.
Чем sat-надписи отличаются от…
NFT на Ethereum?
Надписи всегда неизменны.
Для создателя надписи или ее владельца просто не существует возможности изменить ее после создания.
Ethereum NFT могут быть неизменяемыми, но многие из них не являются таковыми и могут быть изменены или удалены владельцем NFT контракта.
Для того чтобы убедиться в неизменяемости конкретного Ethereum NFT, необходимо провести аудит кода контракта, что требует детального знания семантики EVM и Solidity.
Нетехническому пользователю очень сложно определить, является ли данный Ethereum NFT изменяемым или неизменяемым, а платформы Ethereum NFT не предпринимают никаких усилий, чтобы отличить, является ли NFT изменяемым или неизменяемым, а также доступен ли исходный код контракта и прошел ли он аудит.
Содержимое надписей всегда находится on-chain.
Надпись не может ссылаться на off-chain контент. Это делает надписи более долговечными, поскольку контент не может быть потерян, и более редкими, поскольку создатели надписей должны платить за них комиссию, пропорциональную размеру контента.
Часть контента Ethereum NFT находится on-chain, но большая часть - off-chain, и хранится на таких платформах, как IPFS или Arweave, или на традиционных, полностью централизованных веб-серверах. Доступность контента на IPFS не гарантирована, а часть NFT-контента, хранящегося на IPFS, уже потеряна. Платформы типа Arweave опираются на слабые экономические предположения и, скорее всего, потерпят катастрофический крах, когда эти экономические предположения перестанут выполняться. Централизованные веб-серверы могут исчезнуть в любой момент.
Нетехническому пользователю очень сложно определить, где хранится содержимое того или иного Ethereum NFT.
Надписи гораздо проще.
Ethereum NFT зависит от сети и виртуальной машины Ethereum, которые очень сложны, постоянно меняются и вносят изменения через обратно-несовместимые хард форки.
С другой стороны, надписи зависят от блокчейна Bitcoin, который относительно прост и консервативен, а изменения в него вносятся через обратно совместимые софт форки.
Надписи более надежны.
Надписи наследуют модель Bitcoin транзакций, позволяющую пользователю до подписания транзакции видеть, какие именно надписи передаются по ней. Надписи могут быть выставлены на продажу с помощью частично подписанных транзакций, которые не требуют разрешения третьей стороне, например бирже или торговой площадке, передавать их от имени пользователя.
Для сравнения, NFT на Ethereum страдают от уязвимостей безопасности конечных пользователей. Обычным явлением является слепая подпись транзакций, предоставление сторонним приложениям неограниченных прав доступа к NFT пользователя, а также взаимодействие со сложными и непредсказуемыми смарт-контрактами. Это создает минное поле опасностей для пользователей Ethereum NFT, которые просто не волнуют ordinal теоретиков.
Надписи встречаются все реже.
Для нанесения надписей, их передачи и хранения требуется биткоин. На первый взгляд, это недостаток, но смысл существования цифровых артефактов заключается в том, чтобы быть дефицитными и, следовательно, ценными.
С другой стороны, Ethereum NFT можно майнить практически в неограниченном количестве за одну транзакцию, что делает их по своей сути менее дефицитными, а значит, потенциально менее ценными.
Надписи не претендуют на поддержку on-chain роялти.
On-chain Роялти - хорошая идея в теории, но не на практике. Выплата on-chain роялти не может быть обеспечена без сложных и инвазивных ограничений. Экосистема Ethereum NFT в настоящее время борется с путаницей вокруг роялти и коллективно приходит к пониманию того, что on-chain роялти, которые были заявлены художникам в качестве преимущества NFT, невозможны, в то время как платформы гонятся за дном и убирают поддержку роялти.
Надписи полностью исключают подобную ситуацию, не давая ложных обещаний о поддержке on-chain роялти, что позволяет избежать путаницы, хаоса и негатива, характерных для ситуации с NFT на Ethereum.
Надписи открывают новые рынки.
Рыночная капитализация и ликвидность Bitcoin значительно превосходят Ethereum за счёт большей маржи. Значительная часть этой ликвидности недоступна для Ethereum NFT, поскольку многие Bitcoiners предпочитают не взаимодействовать с экосистемой Ethereum из-за опасений, связанных с простотой, безопасностью и децентрализацией.
Такие Bitcoiners могут быть более заинтересованы в надписях, чем в Ethereum NFT, что открывает новые классы коллекционеров.
Надписи имеют более богатую модель данных.
Надписи состоят из типа содержимого, известного также как тип-MIME, и содержимого, представляющего собой произвольную байтовую строку. Это та же модель данных, которая используется в web, и позволяет содержимому надписей развиваться вместе с web и поддерживать любой тип содержимого, поддерживаемый браузерами, не требуя изменений в базовом протоколе.
RGB и активы Taro?
RGB и Taro - протоколы активов второго уровня, построенные на базе Bitcoin. По сравнению с надписями они гораздо сложнее, но и гораздо более функциональны.
Ordinal theory была разработана с нуля для цифровых артефактов, в то время как основной сферой использования RGB и Taro являются взаимозаменяемые токены, поэтому пользовательский опыт для надписей, скорее всего, будет более простым и отточенным, чем пользовательский опыт для NFT RGB и Taro.
RGB и Taro хранят off-chain контент, что требует дополнительной инфраструктуры и может быть утеряно. В отличие от них, содержимое надписей хранится on-chain и не может быть потеряно.
Ordinal theory, RGB и Taro находятся на очень ранних стадиях развития, поэтому это лишь предположение, но то, что ordinal theory уделяет больше внимания цифровым артефактам, может дать ей преимущество в плане возможностей для них, включая лучшую модель контента и такие возможности, как глобально уникальные символы.
Активы Counterparty?
У Counterparty есть собственный токен XCP, который необходим для работы с некоторыми функциями, что заставляет большинство bitcoiners рассматривать его как альткоин, а не как расширение или второй уровень биткоина.
Ordinal theory была разработана с нуля для цифровых артефактов, в то время как Counterparty в первую очередь предназначалась для выпуска финансовых токенов.
Надписи для…
Художников
Надписи на Bitcoin. Bitcoin - это цифровая валюта с самым высоким статусом и наибольшими шансами на долгосрочное выживание. Если вы хотите гарантировать, что ваше искусство сохранится в будущем, нет лучшего способа опубликовать его, чем в виде надписей.
Более дешевое on-chain хранение. При цене $20 000 за BTC и минимальной комиссии за ретрансляцию в размере 1 сатоши за один байт публикация on-chain контента обходится в $50 за 1 млн байт.
Надписи все еще являются ранними! Надписи находятся в стадии разработки и еще не запущены в основной сети. Это дает вам возможность стать ранним последователем и изучать среду по мере ее развития.
Надписи просты. Надписи не требуют написания или понимания смарт-контрактов.
Надписи открывают новую ликвидность. Надписи становятся более доступными и привлекательными для держателей биткоинов, открывая совершенно новый класс коллекционеров.
Надписи предназначены для цифровых артефактов. Надписи разработаны с нуля для поддержки NFT, имеют улучшенную модель данных, а также такие функции, как глобально уникальные символы и улучшенное подтверждение подлинности.
Надписи не поддерживают on-chain роялти. Это негативный момент, но только в зависимости от того, как на него посмотреть. On-chain роялти стали благом для создателей, но в то же время внесли огромную путаницу в экосистему NFT на Ethereum. В настоящее время экосистема решает эту проблему и участвует в гонке на понижение, стремясь к будущему без роялти. Надписи не поддерживают on-chain роялти, поскольку это технически неосуществимо. Если вы решите создавать надписи, есть много способов обойти это ограничение: придержать часть надписей для будущей продажи, чтобы получить выгоду от будущего роста стоимости, или, возможно, предложить привилегии для пользователей, соблюдающих необязательные роялти.
Коллекционеры
Надписи просты, понятны и не содержат сюрпризов. Они всегда неизменны и находятсяon-chain, не требуя специальной проверки.
Надписи находятся на Bitcoin. Вы можете легко проверить местоположение и свойства надписей с помощью Bitcoin fill node, который вы контролируете.
Bitcoiners
Начну этот раздел с того, что самое главное, что делает сеть Bitcoin, - это децентрализация денег. Все остальные варианты использования, в том числе и ordinal theory, являются вторичными. Разработчики ordinal theory понимают и признают это, и считают, что ordinal theory хотя бы в малой степени способствует выполнению основной миссии Биткойна.
В отличие от многих других вещей в альткоин пространстве, цифровые артефакты имеют свои достоинства. Конечно, существует огромное количество NFT, которые являются уродливыми, глупыми и мошенническими. Однако есть и множество фантастически креативных, а создание и коллекционирование произведений искусства было частью истории человечества с момента его зарождения и предшествовало даже торговле и деньгам, которые также являются древними технологиями.
Bitcoin предоставляет потрясающую платформу для создания и сбора цифровых артефактов безопасным, децентрализованным способом, который защищает пользователей и художников точно так же, как и платформа для отправки и получения ценностей, и по всем тем же причинам.
Ordinals и надписи увеличивают спрос на место в блоке Bitcoin, что увеличивает бюджет Bitcoin безопасности, который крайне важен для обеспечения перехода Bitcoin на платно-зависимую модель безопасности, так как субсидия на блок сокращается вдвое и становится незначительной.
Содержимое надписей хранится on-chain, и поэтому спрос на блокчейн для использования в надписях неограничен. Это создает покупателя последней инстанции для всего блокчейна Bitcoin. Это поможет поддержать надежный рынок вознаграждений, что обеспечит безопасность биткойна.
Надписи также противостоят утверждению, что Bitcoin не может быть расширен или использован для новых целей. Если вы следите за такими проектами, как DLCs, Fedimint, Lightning, Taro и RGB, вы знаете, что это утверждение неверно, но надписи предоставляют контраргумент, который легко понять, и который нацелен на популярный и проверенный пример использования - NFT, что делает его весьма наглядным.
Если надписи, как надеются авторы, окажутся востребованными цифровыми артефактами с богатой историей, они послужат мощным крючком для внедрения Bitcoin: приходите за интересным, богатым искусством, оставайтесь за децентрализованными цифровыми деньгами.
Надписи - это исключительно доброкачественный источник спроса на блокчейн. В отличие, например, от стабильных монеток, которые потенциально дают крупным эмитентам стабильных монеток возможность влиять на будущее развитие Биткоина, или DeFi, которые могут централизовать майнинг, создавая возможности для MEV, цифровое искусство и коллекционные предметы на Биткоине вряд ли приведут к появлению отдельных субъектов, обладающих достаточной властью, чтобы коррумпировать Биткоин. Искусство децентрализовано.
Пользователи надписей и поставщики услуг получают стимул запускать Bitcoin full nodes, публиковать и отслеживать надписи и тем самым поддерживать честную цепочку своим экономическим весом.
Ordinal theory и надписи не оказывают существенного влияния на взаимозаменяемость Биткоина. Пользователи Биткоина могут игнорировать и то, и другое, и это их не затронет.
Мы надеемся, что ordinal theory укрепит и обогатит Биткоин, придаст ему еще одно измерение привлекательности и функциональности, это позволит ему более эффективно выполнять свою основную функцию децентрализованного хранилища ценностей человечества.
Вклад в развитие ord
Предлагаемые шаги
- Найдите проблему, над которой вы хотите поработать.
- Определите, что будет хорошим первым шагом к решению проблемы. Это может быть в форме кода, исследование, коммерческое предложение или предложение закрыть проблему, если она устарела или вообще не является хорошей идеей.
- Прокомментируйте проблему, изложив в общих чертах свой первый шаг, и попросите откликнуться. Конечно, можно сразу же приступить к написанию кода или тестов, но это позволит избежать потенциально напрасных усилий, если проблема устарела, нечетко сформулирована, заблокирована на чем-то другом или иным образом не готова к реализации.
- Если проблема требует изменения кода или исправления ошибки, откройте PR проект с тестами и попросите высказать свое мнение. Это позволит убедиться, что все согласны с тем, что нужно сделать, или с тем, каким должен быть первый шаг в решении проблемы. Кроме того, поскольку тесты необходимы, написание тестов вначале позволяет легко убедиться в том, что изменение можно легко протестировать.
- Нажимайте на клавиатуру в произвольном порядке, пока тесты не пройдут, и дорабатывайте код до тех пор, пока он не будет готов к отправке.
- Пометьте PR как готовый к рассмотрению.
- Пересмотрите PR по мере необходимости.
- И, наконец, слияние!
Начните с малого
Небольшие изменения позволят вам быстро добиться результата, а если вы выберете неверный путь, то не потеряете много времени.
Идеи для решения мелких проблем:
- Добавление нового теста или тестового случая, увеличивающего площадь покрытия теста
- Добавление или улучшение документации
- Найдите проблему, которая нуждается в дополнительном исследовании, проведите это исследование и обобщите его в комментарии
- Найти устаревший вопрос и прокомментировать, что его можно закрыть
- Найдите проблему, которую не следует решать, и предоставьте конструктивный фидбек, подробно объяснив, почему вы так считаете
Слияние на ранней стадии и часто
Разбивайте большие задачи на множество мелких шагов, которые по отдельности обеспечивают прогресс. Если есть ошибка, можно открыть PR с добавлением игнорируемого теста. Он может быть объединен, и следующим шагом может быть исправление ошибки и снятие игнорирования теста. Проведите исследование или тестирование и сообщите о результатах. Разбейте функцию на небольшие подфункции и реализуйте их по одной.
Понять, как разбить большой PR на более мелкие, чтобы каждый из них можно было объединить, - это целое искусство, которым стоит заниматься. Сложность заключается в том, что каждый PR должен сам по себе быть улучшением.
Я и сам стараюсь следовать этому совету и всегда чувствую себя лучше.
Небольшие изменения быстро пишутся, рецензируются и объединяются, что гораздо интереснее, чем трудиться над одним огромным PR, на написание, рецензирование и объединение которого уходит целая вечность. Небольшие изменения не занимают много времени, поэтому, если вам нужно прекратить работу над небольшим изменением, вы не потеряете много времени, по сравнению с большим изменением, которое представляет собой многочасовую работу. Быстрое внесение PR улучшает проект сразу же, вместо того чтобы долго ждать более значительных улучшений. Небольшие изменения с меньшей вероятностью приведут к конфликту в процессе слияния. Как говорили Афиняне: Быстрые фиксируют то, что хотят, медленные сливают то, что должны.
Обратиться за помощью
Если вы застряли более чем на 15 минут, попросите помощи, например, в Rust Discord, Stack Exchange или в чате обсуждения проекта.
Практика отладки, основанной на гипотезах
Сформулируйте гипотезу о том, что является причиной проблемы. Придумайте, как проверить эту гипотезу. Проведите тестирование. Если она работает, то вы устранили проблему или теперь знаете, как ее устранить. Если нет, повторите тест с новой гипотезой.
Обращайте внимание на сообщения об ошибке
Читайте все сообщения об ошибке и не миритесь с предупреждениями.
Пожертвование
Ordinals имеет открытый исходный код и финансируется сообществом. В настоящее время ведущий специалист по сопровождению ord
это raphjaph. Работа Рафа над ord
полностью финансируется за счет пожертвований. Если вы можете, пожалуйста, рассмотрите возможность пожертвования!
Адрес для пожертвований в Bitcoin bc1q8kt9pyd6r27k2840l8g5d7zshz3cg9v6rfda0m248lva3ve5072q3sxelt. Адрес для пожертвований в виде надписей bc1qn3map8m9hmk5jyqdkkwlwvt335g94zvxwd9aql7q3vdkdw9r5eyqvlvec0.
Оба адреса находятся в 2 из 4 мультисиг кошельке, ключи от которого принадлежат raphjaph, erin, rodarmor, и ordinally.
Полученные пожертвования пойдут на поддержание и развитие ord
, а также на оплату хостинга для ordinals.com.
Благодарим Вас за пожертвование!
Руководство по ordinal theory
Список руководств приведен в оглавлении, включая руководство для обозревателя, руководство для охотников на sat и руководство по надписям.
JSON-API
By default, the ord server
gives access to endpoints that return JSON instead of HTML if you set the HTTP Accept: application/json
header. The structure of these objects closely follows what is shown in the HTML. These endpoints are:
Endpoints
GET
/address/<ADDRESS>
Description
List all assets of an address. Requires index with --index-addresses
flag.
Пример
curl -s -H "Accept: application/json" \
http://0.0.0.0:80/address/bc1pdrm7tcyk4k6c3cdcjwkp49jmfrwmtvt0dvqyy7y4qp79tgks4lmqdpj6rw
{
"outputs": [
"ddf44a0e0080f458a1a1b6255a9fa0957f2611883a483c1901ccb0f59e3eb302:0",
"77c5a00da7dcf2c8f965effd25dda16ec8ec8d6b8937e89bbbdf10a1dc5aeb0d:0",
"36f5a76644ee3002483e08345feaa97a71c7a210050333a8f02e942af1294227:1434",
"e2a15acfb519ac6d95bbfd411f1f3dba4692672ea0b0a8f868da8b3f565fb428:0",
"2b84aab0b4b9869a005ae2571a94064163652f2aeffecd4fedf0397dd6b7cf41:1",
"e267548a8cc0c6e6033a6f82b355163bc1d041879206d27feb46e605b3e82759:246",
"f5b586cf0e61b7d89c18a74c47a1f8df9ff530a66ed62c02cec72fde9a23a45a:0",
"4fd271181e901809f6e2d5f89ce95ddfeb886f8db1582a35c812401af8e77661:42",
"29f8633939e956b078fb2fa0e1219089bbe2544169e7a2755e97cc254b783cb2:0",
"7aeca5c346aec84acde229e5927dd09aef680992223cfa57fe6f1ff7698b12da:0",
"cccc35d597cd5a8079f6fe54bb9c743e5297d9165b0dcfa74e74687514c66be0:0",
"590745241244d41a90df7e2cf0d7745877e4cedac573525946cc8ac7f18757e8:0",
"590745241244d41a90df7e2cf0d7745877e4cedac573525946cc8ac7f18757e8:1",
"590745241244d41a90df7e2cf0d7745877e4cedac573525946cc8ac7f18757e8:2",
"6b23a6cf6d2850f437a50f1673fc8410ae36146541b3101d8573539871a91bf0:0",
"fe130d3ca1577c65ac768f4b5b9d12a88d947ddcc31196bcf870ed5ff18403f5:2",
"5fddcbdc3eb21a93e8dd1dd3f9087c3677f422b82d5ba39a6b1ec37338154af6:0",
"c63c4910be259007e1119dbbe6fe0d923b207e78058a4f69bd54df6a3a6488f6:0"
],
"inscriptions": [
"77c5a00da7dcf2c8f965effd25dda16ec8ec8d6b8937e89bbbdf10a1dc5aeb0di0",
"1417086d6abf96f68287b799b13b0081ec895d0b4a5fb7b70d2fde404eeb8aa1i0",
"eb6636995ba074472e4193dbf65bb268ef5379509d9fffb20ddd5857039f80abi1",
"4fd271181e901809f6e2d5f89ce95ddfeb886f8db1582a35c812401af8e77661i42",
"40ab704e6123c681554102556ae3f37b0525863968311f845322fe2f2403a4c6i0",
"0b36fa5ebce6c0e028b61647a89f9488a9c9f6ad0b90a215d10eb96ee8aedf9ei0",
"87a0088e83e43a79e0e9b451037067bca726f5fd3da083e8684996dd1e6b6c70i0",
"54abce9b4380e2fe90ac0cb49b442afee76838ffd91f1ffcac46f6a6fea790c5i72",
"54abce9b4380e2fe90ac0cb49b442afee76838ffd91f1ffcac46f6a6fea790c5i768",
"b4ba20c4eb45425f4960820f493a04a3b1c2e1364927d6001e7dc7dd524cf922i931",
"781938d9e2e93698d41f30b4d1c7f7bfcd403761bce3c0ab579be47b408809e2i0",
"fe130d3ca1577c65ac768f4b5b9d12a88d947ddcc31196bcf870ed5ff18403f5i1",
"26482871f33f1051f450f2da9af275794c0b5f1c61ebf35e4467fb42c2813403i0"
],
"sat_balance": 22635,
"runes_balances": [
[
"RSIC•AUBERGINE",
"1100000000",
"🍆"
],
[
"SPACEY•CODARMOR",
"279550",
"🚀"
],
[
"ISABEL•FOXEN•DUKE",
"10000",
"⚡"
],
[
"EPIC•EPIC•EPIC•EPIC",
"1000",
"💥"
]
]
}
GET
/block/<BLOCKHASH>
Description
Returns info about the specified block.
Пример
curl -s -H "Accept: application/json" \
http://0.0.0.0:80/block/000000000019d6689c085ae165831e934ff763ae46a2a6c172b3f1b60a8ce26f
{
"best_height": 864325,
"hash": "000000000019d6689c085ae165831e934ff763ae46a2a6c172b3f1b60a8ce26f",
"height": 0,
"inscriptions": [],
"runes": [],
"target": "00000000ffff0000000000000000000000000000000000000000000000000000",
"transactions": [
{
"version": 1,
"lock_time": 0,
"input": [
{
"previous_output": "0000000000000000000000000000000000000000000000000000000000000000:4294967295",
"script_sig": "04ffff001d0104455468652054696d65732030332f4a616e2f32303039204368616e63656c6c6f72206f6e206272696e6b206f66207365636f6e64206261696c6f757420666f722062616e6b73",
"sequence": 4294967295,
"witness": []
}
],
"output": [
{
"value": 5000000000,
"script_pubkey": "4104678afdb0fe5548271967f1a67130b7105cd6a828e03909a67962e0ea1f61deb649f6bc3f4cef38c4f35504e51ec112de5c384df7ba0b8d578a4c702b6bf11d5fac"
}
]
}
]
}
GET
/block/<BLOCKHEIGHT>
Description
Returns info about the specified block.
Пример
curl -s -H "Accept: application/json" \
http://0.0.0.0:80/block/0
{
"best_height": 864325,
"hash": "000000000019d6689c085ae165831e934ff763ae46a2a6c172b3f1b60a8ce26f",
"height": 0,
"inscriptions": [],
"runes": [],
"target": "00000000ffff0000000000000000000000000000000000000000000000000000",
"transactions": [
{
"version": 1,
"lock_time": 0,
"input": [
{
"previous_output": "0000000000000000000000000000000000000000000000000000000000000000:4294967295",
"script_sig": "04ffff001d0104455468652054696d65732030332f4a616e2f32303039204368616e63656c6c6f72206f6e206272696e6b206f66207365636f6e64206261696c6f757420666f722062616e6b73",
"sequence": 4294967295,
"witness": []
}
],
"output": [
{
"value": 5000000000,
"script_pubkey": "4104678afdb0fe5548271967f1a67130b7105cd6a828e03909a67962e0ea1f61deb649f6bc3f4cef38c4f35504e51ec112de5c384df7ba0b8d578a4c702b6bf11d5fac"
}
]
}
]
}
GET
/blockcount
Description
Returns the height of the latest block.
Пример
curl -s -H "Accept: application/json" \
http://0.0.0.0:80/blockcount
864328
GET
/blockhash
Description
Returns blockhash for the latest block.
Пример
curl -s -H "Accept: application/json" \
http://0.0.0.0:80/blockhash
00000000000000000000c82c12a925a224605b1bb767f696ae4ff10332dbe9bc
GET
/blockhash/<BLOCKHEIGHT>
Description
Returns blockhash of specified block.
Пример
curl -s -H "Accept: application/json" \
http://0.0.0.0:80/blockhash/840000
0000000000000000000320283a032748cef8227873ff4872689bf23f1cda83a5
GET
/blockheight
Description
Returns the height of the latest block.
Пример
curl -s -H "Accept: application/json" \
http://0.0.0.0:80/blockheight
864330
GET
/blocks
Description
Returns the height of the latest block, the blockhashes of the last 100 blocks, and featured inscriptions from them.
Пример
curl -s -H "Accept: application/json" \
http://0.0.0.0:80/blocks
{
"last": 864335,
"blocks": [
"00000000000000000002794398a350a04cc371ee33659296a980214f0f060adc",
"000000000000000000000470180b94350be751ea1ade67c4235c5b9515380b1f",
"000000000000000000016e1769c5aa0f3781dd99ce2d5172a696c546d442e481",
"00000000000000000002043c5ed07ad806a1c7133cf34670333326009d6195a6",
"000000000000000000017cd6200b2711c024094e64797619263d74433c2bc880",
"00000000000000000002dd6a13fffde71c09e67855d03340787e6a9b951c44df",
"00000000000000000000c82c12a925a224605b1bb767f696ae4ff10332dbe9bc",
"000000000000000000024ea66d1cddf1cfd8a3926a8e691844143da1596526db",
"00000000000000000001bd9376dfbd9689239e9c5d11d579d6c8885a0efa199c",
"0000000000000000000081f76cbccc29d92024f07f0e0b7e6b7dd063bed69bcc",
"00000000000000000000e1ca2bab230aeb6cb75b1bb5b766cb55f1a391a7d408",
"00000000000000000001fc567723ff6ccf674981202617384ae2152a711710d3",
"00000000000000000002381ab1fa4661bfecc3429424c415788cef2c62c630bb",
"000000000000000000022a1cacf15fa28d4d3698506c7b76fc62d7e50053be1f",
"000000000000000000023b6d0182255bcc633e27ecdf8a86918830fdfd4f9612",
"00000000000000000001135bd270114428c2c021e6c4161be93ba7ec9dc4e720",
"0000000000000000000269e44d995970caf720ecc272f3554d923b74c57e84ed",
"00000000000000000000e0224234536f4724c144c8da5cbaea486f3b26ef808a",
"0000000000000000000102ae83593c0b5046cc6ec3beadf133e2a9b69fb761da",
"000000000000000000014d52c9b6d9ca1fd2419562d24ff87214fcdf1688b8c4",
"00000000000000000001bc24775ec320b6af4c1210395a4092c29b7af265153c",
"00000000000000000000f4498b608a6a476bed5c4164478f618d19bcc02da3fa",
"0000000000000000000255810324c89ec4ef87a0d028968dc70aed1817bac8e8",
"0000000000000000000213bbddd4cce2831bda4865ae7025074b2a30fb228c7c",
"00000000000000000002b4cf1c7c051fd712df4447ac5e90ecde1d4429a06358",
"000000000000000000006b39a84f7bfc592293bc044c28fb57dfa660d41acc36",
"00000000000000000001cd132f83def8f13b87974eb4d2629b11f52e3016c097",
"00000000000000000001963de3de854dd9da9f384fb2ef753ba94c105cc807c6",
"00000000000000000000fc1b08733842cb0f2d3dae7f56545805b403aa0d3621",
"0000000000000000000049464eaf610aa71edaaf33e465c47981811395c3cdc7",
"0000000000000000000137881c0f7bc6b762daf8370935444fdb13b98ed4572e",
"00000000000000000001e7cc406d66013c17db6e9f8c90b807c93936fa18f192",
"0000000000000000000084d8e77f14bcdc71acedf0ba5be6b70562dcf76e2ba2",
"00000000000000000002e278d6c35e96eebb964694c430527db43301efdf367f",
"00000000000000000002ace24c94d6f927e4cad8d72839508a275d6a2882c408",
"00000000000000000002c165514bb47cef5b8eacedbabce070fc7147f6b8a48e",
"0000000000000000000251f0eabbbf2bb58837cd284a1a44275e76d11b6da62a",
"00000000000000000000650e34e08c4bc732961ce33a2b9051044ed95e95d82f",
"00000000000000000000ecd0dfe9c0a52b2a7bcf48edcdcb2df19b827afcbed2",
"0000000000000000000048131b07192e8f4466e36d025ea773e0dadcf442713f",
"000000000000000000012eb14a615f799bf628e371ee5e7dd0b518d108fc74cd",
"0000000000000000000025d47721b228c712aeb50bfd13768d8925274c1015ef",
"0000000000000000000326c89fe7dfe7737f75368ce78404c1ffb1b08c422641",
"00000000000000000002ff417f03781bbce1a1082cfaff8cf5c066c9a7547a28",
"00000000000000000002bd4acc44f416975f25aa719e07abc2c0dd12761e4d17",
"0000000000000000000188b4408d6131395ef6ca544b35cf37e7575779b15471",
"00000000000000000003253f74e3f5d35aacbef57aee3225c9e071036309aad6",
"0000000000000000000322bfda974265420bb6b604cd577410b9ca5cccbeae17",
"00000000000000000001535fdb2eb0efe673bd505bcec47a9fdedd7b83d22a6c",
"0000000000000000000169fb1a4daaaf4e08d12fcf670a81ed0f7bb4f5328494",
"0000000000000000000315eb8d0ea1cbd251c7ea2404041c352823e29a6f376a",
"000000000000000000021aef6c217e2eae81d1702d1331ab8f91360e55a60c51",
"00000000000000000000ffb1ee2423e399153433e634db68ca4aad8a829b61da",
"00000000000000000000a6e99c9e050d4345606016673d674da4aade02a8ff8a",
"00000000000000000000349de7338756bdb425cc13a3e22e986b4035d00f097b",
"00000000000000000000045218f05f939e0386ddec2460c815e5c671bfd20892",
"000000000000000000007f99d51dd0738c42ce7dc83e59061a2b33f971b6d3ab",
"00000000000000000002fc37d0f7ec804a1063a4ff8613521fcc99f1ab8fe07a",
"00000000000000000002daff4047da69c658a1badb00d14d7d3e709f76b8bf3b",
"00000000000000000001a427c71546cda9a5577d5e38bc95a5d3450df7c1d26f",
"000000000000000000004648af338d38563d26c3a5bef3ca9582ea2ccb72f8ea",
"00000000000000000001428e153a325e9aa859589a80e8b0271d1ba48e8749c7",
"000000000000000000005ea10805f8ab474b9888bdc2c2840cd2e5529bbd0d49",
"00000000000000000002c7b5bcf3372c7441e79bda1310c53f35eb59483b9092",
"00000000000000000001e2486f12c01ca0f76481b40181bf6f8f48802ade8c49",
"000000000000000000024590edc9d2d4878b32a4944dfda1a3929a6e4c9c3592",
"000000000000000000028f255235dca42b10e5da593c2d4eb006cb329a041587",
"000000000000000000006fb8f4a5d906e9c0112d5a97188f392407ab8e95bd81",
"00000000000000000002864156220f1093e76caf233009c1b6be9ee0d810ac29",
"000000000000000000009d28b5b1336abfe552aa8d92e56c1c254a1eee0e0b4b",
"000000000000000000029ad7c816c8a4f79f93e60defbc6aee7cf25e61b46008",
"00000000000000000002af0693f1c73282516b97031b7d956d07756a6f8a13d0",
"00000000000000000001376f75d1785015b1c4717b2612a7c1bc8de69817c768",
"00000000000000000000cd6e3f3ec308a26831d8866ea51beab6b02d3a5d0812",
"00000000000000000002cf32a666fabf1789ffa4fa4215f78b52406b716936d2",
"0000000000000000000310254c2c405a46c9710e52a7a7728bac5079b90e25ba",
"00000000000000000002cb11925574071edd904390823344b7ca616640971081",
"000000000000000000022e5bf2570eaee0532c0edee2a2682d4a74488ca0522f",
"000000000000000000031542e9c2b0dbd43b4e7caa3f24537af0d39bfa3997cf",
"00000000000000000002215bb1138bbc4a7611826b13e532b51d5b4e82eeac3d",
"00000000000000000001c3a1c78d27f0072f27dc1d0060273e0ef03f1bfc0ce9",
"00000000000000000001fe6ba288a1b9a14d15d3e915418cbfb54685595b0cc1",
"0000000000000000000067f8164cd2e75b3ba172cb98cd00f0894faee5c6f763",
"000000000000000000018ef9990389ca9052a0c1c93b65f780d3071346e531f3",
"000000000000000000023e7bee6b1b4647411b0279df23c9ad470d91c1b99081",
"00000000000000000000a085f77681ddf175c74b897758e9f406a17f1a278030",
"000000000000000000001bf9c32af2d6a8a4f3d50c40f927e0867d4ad9481fdd",
"00000000000000000000cde89e34036ece454ca2d07ddd7f71ab46307ca87423",
"00000000000000000001141c91e70decadd60a93f32b70b08a8ec6d74b270b08",
"000000000000000000023562ac878ab6f62329a70a15954bd56e088f3a836426",
"000000000000000000006a4455949ef37cf3c3ee6b4cc2da27137f24445c7058",
"0000000000000000000297397401eee3019168e761464c3716892951a5e33cbc",
"000000000000000000015b68955519ab2925858ebbd02f897ff81cfc4a360dd4",
"000000000000000000018a0932deb92c6bc40d46a34e654f8a2afbd6c745c6a3",
"00000000000000000001996de65cc72f1fdeaebc3141db0a2a2dd269233c8e56",
"00000000000000000000d0434cc36c19d49b9e873661ff171d632543d5c2f454",
"00000000000000000003184a301f7c76332ec629a51bcaab5652f2ba82da55d8",
"00000000000000000001e47fd13c25e24f8933b02a38c3490c0a430c0b71ea9e",
"000000000000000000027fe376111297406696afa48be122d6596b13ac15156a",
"00000000000000000002ab8ba2529a468c0f2781e3afc0f832209c94f95d4f1d"
],
"featured_blocks": {
"000000000000000000000470180b94350be751ea1ade67c4235c5b9515380b1f": [
"0ae94b05b21aa6b7f0620075db618a70124cb422fc5ced577bffbd0d103d4ce7i0",
"65f1922bc83ee43485ed884dbec24c0c1cef6c4f6d999a8ac0c09d7adc8b39dbi0",
"e87c21c7c8ba8b194bd8e389f6cb9ecb2312c076139aff31c629f93df86b98ffi0",
"aeb8d90de7e92efc11ffa6b411e829b6dcb0e00b7fd4f912947065b9084d99bai0",
"6d8f58c7f24e277d614bc6c9bb6648543e47db5431c6c073a6bd5e3be1e47c5ci0",
"770cde7a5c49ae8a4f109bd83fb364ef9b83bc6f72d3654c793f5452d7b30831i0",
"65e51357e67da9dd64a65fff1d9d26153c9969f4acfbab028e74b408559dfc07i0",
"7c63687fabdcd421de925e99b4152b2327328afe51c63903aa4a9cc9fba31872i0"
],
"000000000000000000017cd6200b2711c024094e64797619263d74433c2bc880": [
"c970b695f491a8812b5293da2673f4e6c9ae3d8be07d9da1fbb9c33a45f6fd1fi0",
"d001827b7c48e44399587f12e2fa33b2c0b1eb12c309f1c21729f1e3bc95c5fci0",
"facefc9cd6dec1cc25d7b7321cbbdaed735049a9a3da834a66975d98e23ac4dfi0",
"09353363c2e95891db553f3742a40a74c5dd1b7668669f732d58e52e7c132b92i0",
"48f3f7cbf3061957c06f66c0fe66be9ad4ad73df65b9ded1345e05f904e1e63di0",
"4e65b1d0b36c6727c646d5d6f45f00db35158a49a139282d6544f127734db9adi0",
"b8c744320e735aaaec18fd6b306d6dd678f99461e88dfa25f178627b8480e483i0",
"55d27ab1b4321addc5c34c10ef2ac4957add8b8485f465df7f2883315c9cf5f5i0"
],
"000000000000000000016e1769c5aa0f3781dd99ce2d5172a696c546d442e481": [
"cc2415293c275bea4d73ff8f45f68f269686b819de447f50ec6988ac04a62d1bi0",
"c642cd4cc7a075c61d3a32b949217990aa91dfc928f12a2cdba1f2f228c699c7i0",
"5342721d044e9e9999484b988ce9fb71097d9209c77f6549df9e31ec9b344c5bi0",
"a75f792be155a0b53691289433a6413c1efb1aeaf970f752ee70be3c6e755a06i0",
"19c0d770abaaeb5b24e718231684d53b768450cc324c8fee435910de65c459e2i0",
"30eb7c46bf4f5af33e665a119af40dd45d127cb6cdc2596de75e08f094651fa5i0",
"122631e7b8bab4238582229273a9dbe08544d2d97ad0c9a80b5829ae10ac3f27i0",
"41c304db88c60a27f45957442b857c0affefdfdca45bdf72ab4cbf9fce4d97a0i0"
],
"00000000000000000002043c5ed07ad806a1c7133cf34670333326009d6195a6": [
"2f62d6ed309f838bab143cf3a53ba758eb940b43c30c32e22d9dbf6fe7882613i0",
"83642352c5b670387874995954f79e270cb78b05a9a88b9d4d65e6f94c6df0a3i0",
"68831e3c8669ad5e8fc3585a9e8a55673123ada4c33a699e98e4d9e0297f1800i0",
"20fa9d317af18cc976a6b77797ceb5884127ac5dd7e3f131565a18dd712311c6i0",
"a286d7f705fd410cdd3f1081c4c22f196bdea4c64cfbd963f45302cdec1fe968i0",
"11eb110f86d880d8dcac852edcca7007904fda34ad031fc01f24a3e6b02ef47ci0",
"9fbec6d72d71169dc041693e740dae7bb7bb195ccd4a7f40c4c12bd4afbf7354i0",
"7c823fe74fa783debea8339fbea44b8395805295652749a651aa2133d9a1832di0"
],
"00000000000000000002794398a350a04cc371ee33659296a980214f0f060adc": [
"2596a275dca4b5cc18cd1060ab92d6df3df5507738b8f2b6b7c18c4ff1d1b36ai0",
"93256e5da147f0067d6b11e09d853b838ad1d95cf59664cccbcd52859f9ea1aci0",
"f404b5ebabd4b7fb8b88df52289b983b28f3e36fcbb63e649edea6e7ba62e582i1",
"f404b5ebabd4b7fb8b88df52289b983b28f3e36fcbb63e649edea6e7ba62e582i0",
"1bfbd226fded339cbe197153ab8b6da622c9a20e7d4911013abd385da7e05b89i0",
"af7b8810755bdf7bd62dbb6c5f2639e107a6d9d2c7199ae3650f1e7583d4bd66i0",
"9c594cb991bfecdf9d2116b644262927365f20f03ccdc8a64cbb640c11a58907i0",
"29628c91948bc100185605d11cde0aebda572d73b752bd6ed668bd86e455aa8di0"
]
}
}
GET
/blocktime
Description
Returns the UNIX timestamp of when the latest block was mined.
Пример
curl -s -H "Accept: application/json" \
http://0.0.0.0:80/blocktime
1728158372
GET
/decode/<TRANSCATION_ID>
Description
Decode a transaction, congruent to the ord decode
command
Пример
curl -s -H "Accept: application/json" \
http://0.0.0.0:80/decode/6fb976ab49dcec017f1e201e84395983204ae1a7c2abf7ced0a85d692e442799
{
"inscriptions": [
{
"input": 0,
"offset": 0,
"payload": {
"body": [
137,
80,
78,
71,
13,
10,
26,
10,
0,
0,
0,
13,
73,
72,
68,
82,
0,
0,
0,
100,
0,
0,
0,
100,
1,
3,
0,
0,
0,
74,
44,
7,
23,
0,
0,
0,
6,
80,
76,
84,
69,
255,
255,
255,
0,
0,
0,
85,
194,
211,
126,
0,
0,
2,
206,
73,
68,
65,
84,
56,
203,
149,
212,
75,
104,
19,
65,
24,
7,
240,
148,
74,
19,
16,
93,
20,
180,
20,
105,
22,
193,
179,
61,
21,
11,
125,
44,
228,
90,
176,
39,
41,
90,
75,
14,
30,
74,
91,
74,
43,
69,
18,
250,
200,
86,
60,
120,
80,
154,
187,
104,
5,
17,
81,
170,
205,
161,
96,
11,
77,
178,
161,
120,
145,
98,
2,
30,
4,
109,
147,
77,
201,
33,
133,
154,
221,
196,
144,
108,
146,
221,
157,
191,
33,
51,
59,
1,
193,
67,
231,
246,
227,
155,
239,
49,
51,
236,
186,
206,
184,
36,
172,
181,
209,
9,
212,
218,
18,
178,
46,
210,
214,
136,
8,
161,
189,
181,
14,
148,
179,
60,
205,
0,
108,
158,
232,
214,
36,
172,
91,
142,
196,
180,
170,
4,
100,
222,
237,
80,
85,
150,
101,
167,
140,
172,
198,
186,
21,
57,
193,
4,
77,
246,
39,
193,
138,
118,
168,
165,
198,
104,
9,
11,
172,
65,
24,
68,
7,
25,
96,
13,
194,
168,
22,
64,
134,
168,
4,
213,
172,
84,
76,
132,
152,
74,
90,
161,
170,
149,
8,
149,
247,
38,
10,
85,
104,
97,
170,
222,
95,
234,
92,
85,
157,
13,
48,
77,
162,
82,
129,
49,
206,
78,
167,
106,
149,
138,
134,
121,
58,
154,
148,
55,
235,
101,
211,
2,
83,
29,
181,
28,
202,
76,
50,
113,
141,
232,
107,
2,
232,
216,
193,
58,
146,
183,
229,
114,
142,
42,
16,
128,
49,
9,
59,
77,
53,
55,
15,
243,
26,
200,
15,
170,
25,
213,
109,
238,
89,
226,
12,
139,
69,
175,
219,
59,
197,
167,
159,
89,
222,
195,
115,
171,
198,
151,
75,
44,
47,
152,
93,
24,
54,
30,
39,
88,
77,
249,
32,
19,
215,
35,
75,
50,
213,
224,
126,
195,
171,
159,
63,
89,
166,
179,
244,
135,
177,
17,
145,
72,
63,
213,
224,
38,
89,
215,
250,
26,
123,
84,
146,
128,
245,
45,
137,
136,
84,
189,
34,
146,
154,
140,
110,
246,
40,
227,
24,
139,
251,
109,
63,
149,
32,
34,
109,
200,
240,
50,
9,
120,
45,
74,
132,
201,
189,
73,
94,
25,
125,
141,
40,
191,
121,
69,
84,
200,
16,
211,
126,
67,
194,
179,
147,
21,
166,
131,
204,
106,
119,
106,
201,
81,
118,
193,
54,
142,
19,
22,
83,
176,
211,
220,
171,
117,
30,
81,
117,
141,
8,
166,
73,
132,
231,
44,
38,
195,
232,
5,
142,
184,
170,
23,
184,
4,
25,
191,
223,
1,
25,
42,
17,
248,
185,
45,
3,
84,
18,
176,
125,
87,
129,
243,
42,
50,
201,
223,
215,
161,
210,
91,
90,
133,
153,
212,
150,
97,
80,
25,
10,
54,
116,
9,
177,
108,
75,
150,
10,
209,
47,
98,
170,
165,
142,
211,
113,
226,
247,
143,
217,
247,
138,
45,
153,
119,
106,
170,
242,
160,
50,
65,
101,
169,
127,
82,
241,
105,
76,
81,
65,
169,
78,
69,
191,
65,
161,
58,
197,
206,
98,
79,
90,
105,
180,
228,
170,
146,
239,
75,
163,
95,
231,
11,
180,
67,
125,
115,
160,
120,
156,
123,
177,
77,
21,
90,
33,
110,
75,
200,
167,
216,
107,
62,
209,
109,
131,
212,
36,
42,
9,
101,
211,
172,
59,
103,
16,
176,
146,
143,
230,
85,
194,
110,
130,
40,
205,
57,
35,
22,
85,
7,
81,
136,
142,
72,
209,
249,
252,
82,
68,
39,
139,
89,
166,
91,
1,
162,
219,
233,
53,
166,
158,
212,
225,
68,
104,
145,
193,
229,
141,
223,
120,
27,
142,
56,
186,
24,
59,
52,
3,
91,
142,
4,
25,
64,
134,
11,
0,
8,
223,
169,
120,
124,
34,
223,
233,
14,
26,
177,
220,
17,
87,
224,
101,
126,
184,
173,
57,
143,
239,
106,
91,
211,
30,
223,
229,
255,
197,
116,
143,
207,
107,
113,
205,
2,
13,
30,
235,
250,
208,
204,
251,
200,
245,
169,
153,
199,
229,
126,
228,
241,
93,
105,
87,
49,
154,
221,
121,
149,
206,
221,
230,
100,
187,
92,
104,
78,
93,
115,
212,
161,
3,
164,
232,
200,
101,
2,
102,
150,
43,
244,
230,
125,
36,
193,
37,
218,
227,
248,
231,
63,
120,
182,
245,
23,
127,
181,
197,
106,
45,
115,
252,
75,
0,
0,
0,
0,
73,
69,
78,
68,
174,
66,
96,
130
],
"content_encoding": null,
"content_type": [
105,
109,
97,
103,
101,
47,
112,
110,
103
],
"delegate": null,
"duplicate_field": false,
"incomplete_field": false,
"metadata": null,
"metaprotocol": null,
"parents": [],
"pointer": null,
"rune": null,
"unrecognized_even_field": false
},
"pushnum": false,
"stutter": false
}
],
"runestone": null
}
GET
/inscription/<INSCRIPTION_ID>
Description
Fetch details about a specific inscription by its ID.
Пример
curl -s -H "Accept: application/json" /
http://0.0.0.0:80/inscription/6fb976ab49dcec017f1e201e84395983204ae1a7c2abf7ced0a85d692e442799i0
{
"address": "bc1ppth27qnr74qhusy9pmcyeaelgvsfky6qzquv9nf56gqmte59vfhqwkqguh",
"charms": [],
"children": [
"681b5373c03e3f819231afd9227f54101395299c9e58356bda278e2f32bef2cdi0",
"b1ef66c2d1a047cbaa6260b74daac43813924378fe08ef8545da4cb79e8fcf00i0",
"47c7260764af2ee17aa584d9c035f2e5429aefd96b8016cfe0e3f0bcf04869a3i0"
],
"content_length": 793,
"content_type": "image/png",
"effective_content_type": "image/png",
"fee": 322,
"height": 767430,
"id": "6fb976ab49dcec017f1e201e84395983204ae1a7c2abf7ced0a85d692e442799i0",
"next": "26482871f33f1051f450f2da9af275794c0b5f1c61ebf35e4467fb42c2813403i0",
"number": 0,
"parents": [],
"previous": null,
"rune": null,
"sat": null,
"satpoint": "47c7260764af2ee17aa584d9c035f2e5429aefd96b8016cfe0e3f0bcf04869a3:0:0",
"timestamp": 1671049920,
"value": 606
}
GET
/inscription/<INSCRIPTION_ID>/<CHILD>
Description
Returns the inscription information for the specified child.
Пример
curl -s -H "Accept: application/json" \
http://0.0.0.0:80/inscription/b1ef66c2d1a047cbaa6260b74daac43813924378fe08ef8545da4cb79e8fcf00i0/0
{
"address": "bc1pnhyyzpetra3zvm376ng8ncnv9phtt45fczpt7sv2eatedtjj9vjqwhj080",
"charms": [
"vindicated"
],
"children": [],
"content_length": 106268,
"content_type": "image/avif",
"effective_content_type": "image/avif",
"fee": 1470535,
"height": 839704,
"id": "ab924ff229beca227bf40221faf492a20b5e2ee4f084524c84a5f98b80fe527fi0",
"next": "ab924ff229beca227bf40221faf492a20b5e2ee4f084524c84a5f98b80fe527fi1",
"number": 69994605,
"parents": [
"b1ef66c2d1a047cbaa6260b74daac43813924378fe08ef8545da4cb79e8fcf00i0"
],
"previous": "e2619e0fa641ed2dfba083dc57a15ca1d3f195f15d187de353e1576a0cb6e87ci8",
"rune": null,
"sat": null,
"satpoint": "ab924ff229beca227bf40221faf492a20b5e2ee4f084524c84a5f98b80fe527f:1:0",
"timestamp": 1713399652,
"value": 10000
}
POST
/inscriptions
Description
Fetch details for a list of inscription IDs.
Пример
curl -s -X POST \
-H "Accept: application/json" \
-H "Content-Type: application/json" \
-d '["ab924ff229beca227bf40221faf492a20b5e2ee4f084524c84a5f98b80fe527fi1", "ab924ff229beca227bf40221faf492a20b5e2ee4f084524c84a5f98b80fe527fi0"]' \
http://0.0.0.0:80/inscriptions
[
{
"address": "bc1pnhyyzpetra3zvm376ng8ncnv9phtt45fczpt7sv2eatedtjj9vjqwhj080",
"charms": [
"vindicated"
],
"children": [],
"content_length": 116597,
"content_type": "image/avif",
"effective_content_type": "image/avif",
"fee": 1470535,
"height": 839704,
"id": "ab924ff229beca227bf40221faf492a20b5e2ee4f084524c84a5f98b80fe527fi1",
"next": "ab924ff229beca227bf40221faf492a20b5e2ee4f084524c84a5f98b80fe527fi2",
"number": 69994606,
"parents": [
"b1ef66c2d1a047cbaa6260b74daac43813924378fe08ef8545da4cb79e8fcf00i0"
],
"previous": "ab924ff229beca227bf40221faf492a20b5e2ee4f084524c84a5f98b80fe527fi0",
"rune": null,
"sat": null,
"satpoint": "ab924ff229beca227bf40221faf492a20b5e2ee4f084524c84a5f98b80fe527f:2:0",
"timestamp": 1713399652,
"value": 10000
},
{
"address": "bc1pnhyyzpetra3zvm376ng8ncnv9phtt45fczpt7sv2eatedtjj9vjqwhj080",
"charms": [
"vindicated"
],
"children": [],
"content_length": 106268,
"content_type": "image/avif",
"effective_content_type": "image/avif",
"fee": 1470535,
"height": 839704,
"id": "ab924ff229beca227bf40221faf492a20b5e2ee4f084524c84a5f98b80fe527fi0",
"next": "ab924ff229beca227bf40221faf492a20b5e2ee4f084524c84a5f98b80fe527fi1",
"number": 69994605,
"parents": [
"b1ef66c2d1a047cbaa6260b74daac43813924378fe08ef8545da4cb79e8fcf00i0"
],
"previous": "e2619e0fa641ed2dfba083dc57a15ca1d3f195f15d187de353e1576a0cb6e87ci8",
"rune": null,
"sat": null,
"satpoint": "ab924ff229beca227bf40221faf492a20b5e2ee4f084524c84a5f98b80fe527f:1:0",
"timestamp": 1713399652,
"value": 10000
}
]
GET
/inscriptions
Description
Get a list of the latest 100 inscriptions.
Пример
curl -s -H "Accept: application/json" \
http://0.0.0.0:80/inscriptions
{
"ids": [
"dca3da701a2607de6c89dd0bfe6106532dcefe279d13b105301a2d85eb4ffaafi0",
"0e50a465fc0ca415f3cb8a4aac1555b12a4bf3f33bc039f2a4d39f809e83af7ai0",
"934905624f847731e7f173ba70bfa3a1389b0a7fe2a4ffce8793eef2730b9ab9i0",
"50a42e51e6ce0ef76699f017a1017d7b5b6203e67d283c625ba7d1567b2e43bai0",
"65a78bdbc1e01ac02cda181a71304a8d82305bc2a24bf01e62bea4cfff3e2dd8i0",
"05ab6d843099fb30a1da1bbfe31117cb56466b3ba40a4b3f389cc37174d339b8i0",
"47825a32dd6e3de5fd7d97488d755e6d1005e5c8552b9ede5bc67900b074d09bi0",
"737552653d4424a523f8c652710d0f9416561ea67ee25242f8606b49fb428d9ai0",
"1d7d15ab48fccf7011435584556ee9106be71f7073a857689594c143d7899333i0",
"321e4f598ae0f4841af04d1a84f3abafa44802c7d35315ead91b32ffed0f400di0",
"eb1578eaca0a04eaf174296382fc5d77530f0feceb7747938b29c433c21d1afdi0",
"70d6136e949b5f07b6ac7d50aa9aea1fa6573e1b0e4f490170235ac74738bf5ai0",
"aab2c8514876fb81cb28f0f0516620cf189222e0ffc6fe6282863bb846955409i0",
"ef36dd247b98f12d19d15bab92ea7f8491b0766fb0b8074b7606614dbbab6c13i0",
"cec42963619240ede36fb03cd95d8fba883c9c1af72b1e2fc9746151a60729dci0",
"3124d086c59ce2205f52a108e21380e2c98b1ac6a21fc2f457fb5750317997d2i0",
"c2d19ab0d9e508ed20eb6620a4ed6b5700bcee835278eb171ad15e3d9e9cf3cci0",
"6aa9e8efbc0410adebca732a2baa6812bd4d9678771023503d20c8e90f632853i0",
"96fd8d9b06c9d55d57c926889716b05f03e508d05320ffbe052aed38f49a8a4fi0",
"9429a355eecc994380920e8c9a2fd17adcb2e745bc1c8a460ed016d37e02d11ei0",
"196fa44615bd2215e17f428d9cb6ea5de62e4fc6635e45089623f757189cc3b1i0",
"077ccaf7424917873fe217bc45cfe923d20a9732373fc2b08749106569a198a8i0",
"ea5d4f47955e9ac306113ebd616587d2eaef3fb242474fb5819562ec007db32fi0",
"db377bb1c8ad40dfa6bf69b2ff8f5417b419ee6b0657e75060e088b1ec8b1c93i0",
"3c9720eeaad27cad478404905c9d5dcd332878f95dd65fc9912bfd598041af0bi0",
"61ef119d102389c3daaa5c057514f30cf1cd410b7d5c41a28c58a9a902cb265ai0",
"f971ea01b40b35b8548a902e013a3a1b799d4c2c1613d37ef3a994120d65c10ei0",
"6021306cf760dfbb0da58bce59ffbc703db5c7d9b180a3ae5268ce4c5341bf34i0",
"10aebd52ccd20124d5aa1c7d3e52fa81776ac6a3fb79ada582495328fa968ca4i0",
"9ed8d1fc12ab4d4b50c869bda1a38bb0e82b6eb18d2c14ef880aa2bb1757dbf7i0",
"5f5db3b301aa766f1a22f796248b2cceb8c111419bcefb4a3365d8bb1ff6ca05i0",
"15737d13a3583ef3559090431d5ea846e5126963046041b1f4d42b2fcc9a03eci0",
"05fdf04307e006eefec908ef93806f96c472af9e073837f4b1f5ad52e1d719a9i0",
"559280eb5ceefadee232a5b4dcc2c05dddfc1f123293482fef30ab7632855b85i0",
"76939794300cac687832e68253640e69993b46e0b75e5af4678b3c4b2037bb4bi0",
"1967e5170c27e707545ec05624db313735799fc58142e2bd2b475b088b761022i0",
"b320472502a8750fc6b3cb87ac6a0b3eaef402fa5f218f1153f658642e3d1b3di0",
"456b48e7ef556004e4a9a8b98aee8c797d75e1027dc56982ef6936f8627eeda7i0",
"02fb3081fc7317cbec7adc63761ea373ec239c7703a13f5752c3344acf6312eei0",
"75e567e30b84205ca9f5b6280b29581310bed27504949996b64858110d38c5e8i0",
"47214c34652fda5745b56ac80512e7d353db9d949fac9e0e5a6d8b27507fe4c6i0",
"c3ccc1508fb08a6bc487b25e4d5a994ff73cb44251749619c53d87c7626d74c6i0",
"a8ce87da5b67d9782846d2f718058873c51bcdbbee536540266f868bb5376c8fi0",
"47dd14ebf43bc35ff753cb5acf8335eb1acb788d05a2b0b9d83302e16170127bi0",
"ae7c0ebe825c2bf0d5820bc28da095cfa1cb6913a5913142bc327ab985b3dd7ai0",
"cf68e9b9d1967859b7d832a9c815ae3c837c94031dc8e56d848d151ae24e4776i0",
"0fe7d513cf8c19734f84321a3c49d0e0e39255702ba18546740c2bb1a95c5170i0",
"e760f5028719b2130e0d2305c3531174f4f6167282251adebfc968d127b79369i0",
"aa81f43a1412b0d04c2ef825c3829707aa32cf4cca3452077c2819f012905b5ci0",
"cd3675b40f8056c7b816c02a537a6d997912a26302f77cd3d0ad83b657d24e4bi0",
"3f8bf38d3cd3e50693b9bf187e1a374ff9990ba8e8f6337829f0d7312805741bi0",
"415a9516e1dcad84a60cc7d012c2475361d575f713b1d3aa16f982d2e43e330di0",
"6db363228406a71744cbf9b86e2b58c21b4f2dd0a0ad0affa211b32af20e8809i0",
"ff1aa5bec2a626c8b6f90e6765ceb227d44565a90f9e54cf05f5360ef6e33708i0",
"161191b5de6a1b1ed53e816545176d47e214c50711474b1a4e3ab34d70634189i0",
"f3f7488bc66000965a36f4ddf000c3d3ca3cf94d7cd4defaf3ca0b68e86b3af8i0",
"b2fb38073ade49a3f0f2522a15f4f63122a60d03a9eaed5c1c4198d339a32a1ei0",
"2f99c317739ca8cb6eb904915648ac2044f815d01ecfae6762ecf3885ee3778ai0",
"9d30636a2c5b6e064e6868fe796986014ac4cf9ea7a859d12e2dea07128c04f5i0",
"62ea57535dbe1c748d79c693e507d787af60076eaec7629365c31f52607f1279i0",
"9540b2f1d24ad5750f155ee232b03e4bfe258fde8c396844471bd595cbf0d4e9i0",
"98bfe331d267749357857e86433f974595bdb1d76ff60d35e576b217d7eae4e3i0",
"00bea5fcc8723ce5d177ca1cd4e87f7f2792fa3043231554d584b869d791a9e0i0",
"2ca9e9aedb2bf622c5c499701ce74a1dae456569082704ade20ba125019ea5f9i0",
"83290426401ac68ce29306f6a1ec5c86c69ce66049a1d85fefa49088a0f5a11fi0",
"ebc452becb7438e43281317045ab5c675376486a9344625b5dec09d5a65a9905i8",
"ebc452becb7438e43281317045ab5c675376486a9344625b5dec09d5a65a9905i7",
"ebc452becb7438e43281317045ab5c675376486a9344625b5dec09d5a65a9905i6",
"ebc452becb7438e43281317045ab5c675376486a9344625b5dec09d5a65a9905i5",
"ebc452becb7438e43281317045ab5c675376486a9344625b5dec09d5a65a9905i4",
"ebc452becb7438e43281317045ab5c675376486a9344625b5dec09d5a65a9905i3",
"ebc452becb7438e43281317045ab5c675376486a9344625b5dec09d5a65a9905i2",
"ebc452becb7438e43281317045ab5c675376486a9344625b5dec09d5a65a9905i1",
"ebc452becb7438e43281317045ab5c675376486a9344625b5dec09d5a65a9905i0",
"d431778a7290951d463f356f637a801c4c8b77767f2f53686176202bfd3a1af7i0",
"8bc9f9d88f91d851eeb84481fb33baabd6ea172c0c5152e5b8d4140f8102671ai0",
"12454b1620904b63e8c47f31e17939735515923e674fc42f299b5466258b640ai0",
"a67d21421a27918ab052c4dee3dcca86ad0610ccf4a449f98d3316008953d54ci0",
"920512aa32b5d525495832a3146f32efb0bfa308519bc3e1d5bc151ec6c9412ai0",
"8defe7abfd7d4f9dc94be83ca0b2f823f196a80ea37ebe217702368ffd2c7807i0",
"6b26e994bdabb558d41f5824b3d427ec628e7a1e7596ac20dcf05e889a994fd2i0",
"327610662171136ee252724b6860d0b64b45f81cb2bf8a0606256db730946a39i0",
"e01ec43055caa4bdb73f300076501deb85780891181d07773231db700a7d2099i0",
"9c2dc67e959bf949396d31157f16b6d60e4469ff43ba1ed44957d197f3ebf78bi0",
"89126f596c644721edc65ef293730078f16f0894baf29a1d807aab4afc013d72i0",
"3ea79b7a166ed230046e3d890d6c39a7c64dec8443de933860534449fa3180a0i0",
"2f1b248a957dcfb442b89c4684f65ba7bab7061cd0dfa4eaae8f5c65d7b41985i0",
"ac0fb3d3d301a28d3d979ca7f522eb4fdf0b0fed9d8062ff4944d5dac353092fi0",
"d0ebf39a32d409eb92bdefb354a99408367709830d03d4c6bc36786e79782720i0",
"7bfa54eb0141a93cd9cd2d3a6a52de5c1116653035bd8179608e115c823b7574i0",
"14fbc773b0b7635c4fd598c102a0a5019aee75a1184ac8d189c59478931ba6e9i0",
"0101a253d50138b4ef67c4036246df3e2a74d70874ad3c8f943af54e4b37648ci0",
"d5b41d45f3c45e2bdf36a415d9ece493cca23e762ff5de34a6abcf79936fc614i0",
"4c92503dc1f38bf77c2b1219504bb6eb82dd1d8af172f84d86d433f7bc557d4fi0",
"7b6df715cf052fdf28dbe213fada59b910c9e339137f0bd35698f23d0140a826i0",
"da06b7b4d298c837566b8daafae7cba1d4be19ca3b9e63d867cc2a9f06dd6315i0",
"958655c68793fe9e4dc6c8155c28c6b14c0ed58c5aa340d6bd6ef085134d3fb7i0",
"f8dbba73e65bf996e7cd8388ad85f7303f2caa52acf1ce793d8141dd9f70f6e6i0",
"8d166e2e3ea2a9e5d6460964d533b61656b6a3d671e5f046030319bb73f93e9fi0",
"2a60d61dff2ba192ca81614f8f0bda6c24eaac2c45f879ef84302e8c4c859bc9i2"
],
"more": true,
"page_index": 0
}
GET
/inscriptions/<PAGE>
Description
Pagination allows you to choose which page of 100 inscriptions to return.
Пример
curl -s -H "Accept: application/json" \
http://0.0.0.0:80/inscriptions/9
{
"ids": [
"6fa8b4d1840fdd2172b51a40bde3c8b88ff2ca8b668e56fe05edb1d5eec91fc7i0",
"c6f11a3269e7ea108abb9d596c4273067f33f7e951bb4762b915a6c3c3e1ebc6i0",
"24829232f529c1c4d1bfc5c1c1410313c6388c1db14137fdc351f8659eab72c6i0",
"c068402416ec57e773d9d072ad51950b77359eddbf515a775bc6c70bf75869c6i0",
"3ffdf269a5a6a306c6e2e03b73b505a4f2dac3e0708257bca37c12d2ceec3ac6i0",
"f505cc5a01e603bee41e3986c0bfe020cd4054cbdfd0a35b57d89e375ba1e6c5i0",
"3caeb09bc1a6c7e3ac33528f69b9b10755072aac2c7b6b4f58878df45572ccc5i0",
"2233ee78d07be90ae18d12d51cc89734eb691b550b687c1547b0791de668b2c5i0",
"86475391a0e7f13f3b475e3b4aedb8ada36b63bf9bc4f9ac9203fb083a39a2c5i0",
"18fa7b8a0949b57fa4798ccf48e4ba4a16ecb14651edd5a5adc3806eaea0c9c4i0",
"fb6a338c0de40e88e03e7ae5231b036e5f452343db128b849049c2e63d0bc6c4i0",
"374e71e371dfedcfa2f9ac1d6f2d0664effe46ca27907792e396a3176a82a3c4i0",
"bc2b2fef1231c07232cd1333978366255e317e000a04c050262a7d71eaab0cc4i0",
"d627b48539c497f768279669be7690af5af8f302bfb2641989dacce8c4eed8c3i0",
"632cf2db36977e4e091ed50d61185ad78d97e7a6c6ba468b844bfd7ac9b8aec3i0",
"2fc44592a0d8924c8f48c9fcea8b189f9008f2795380446c0d13a9e452f284c3i0",
"2e84632f9f2965d8648a36e2695070e3f9a06fab1fa72176d95652a19d6d3dc3i0",
"c78e74a90bb23e55d23b221d6f184581d75f0e97acd94b6ab9c2536bae79f2c2i0",
"b4eb0dc05c24f48105d80c38c2ced8789c7910960d07db3e7326cbfae5ded9c2i0",
"5f166abe3f70f72479518451f11d67b6217a67e539c08440f844c6f71f2ea1c2i0",
"32c2d37d9bd7f6a019e48bc8bbcd0b07cee07314724f517935b1e0ff490e5cc2i0",
"0876e126bf57724045c799b0f1f6ae206d2bd15c4533212ec243951f03d834c2i0",
"6492faedbf75e28c4637b6a1e518d063c0da130c461bb193bf7215364c7bf5c1i0",
"be6f1f3e8ac1841f05dc0d67b650890dc845fbfd2d3833f48a0adb5016a6a2c1i0",
"1cb2cb5519aea30e3921d59862bb1ca7d2a61430fdf6b64dc2d84a35fcc52dc1i0",
"00d0f2dab82c0f1ba5208cd95cf204505617cdbaab854675875035f584fc0fc1i0",
"4fd6ea5ecc0660d4b238deeeef7c7a238ed324a5343e5a83d0cd34d0cba7f0c0i0",
"cb1d5b0b9c88e1cd2646939e2809119ba857770e0aacfa069ecf992745435bc0i0",
"30394ffad8c25f93083e9044b3faca9fdcce9610af522a3d72c8bf6478e612c0i0",
"2c80a5b7628e1cba9b890d4946d202fa9d534e0d4edb575ca18fc8fede1d05c0i0",
"e3bca997a4494d2c43b441eefda53ec1c63277fb79e93204787d3733bf9f91bfi0",
"7efeed6060c4a0749bd537b36d469fd874e66914b661de992a053e4702d618bfi0",
"39cc481cad92dfbe5a7db974a8f40f0b945ec0a10cf0e525a1e40214ae9b9ebei0",
"776725263fec5b995932dde0c79a511838b2f4da976d767ec357490d8e5142bei0",
"01d5456b25bf80cf0bc661f5fe65167382cb67c324ab88f9a622c0722f3934bei0",
"6cd9d02f08c818eca61fd40362855dce8157af0708460023710b2982053b2fbei0",
"ff4f062a8e1fba6d5089a7517bfadf996a24a79181cfffa479fb5142227c0bbei0",
"da23c5f3ca73c51fecdbfb7a77f028eb269bc438192e08fa7828850f7907b9bdi0",
"804a382fe000066845dd2f53bb33d880dce201b0595da73843f115d85f789dbdi0",
"3a837c80348691f965dbacf9414498c19eea184be8872509830ddc8e555611bdi0",
"d87bdf8547ff587af6ab4e9ba58cfabd81e9dbae29ebee7f91ee4ce504b1e7bci0",
"47f448eab72fa27e3ecd48cd9366f3900e13e3f385081a63027c3252452dcebci0",
"f98248bd62d1893623d07789d2b77c76c726343272fe33cffd0598496792bfbci0",
"9f4f89d78bf18eec65fad5a7e1e4b48023733678df1f831f762713aa28a7adbci0",
"99603a91e9c394b8a08e41292afa612773054a1852ad50b70b926e8ed5ff98bci0",
"ab9a8bc85f80436eb801f0b44525e735949b702b88165f276d9d5370a08792bci0",
"68a66f966af6a8df8a697d026f53ac3d1bbf16fe60e4c00046c38ca42e4c6abci0",
"f85395c84a44416973091c7b5b54093511a4e420d79b8a95f25392f60ee164bci0",
"0d94b03575c0abcd9b50463402c57c05a8fb13fdc4838b3ea38fdb4214a93fbci0",
"9101836abf01e3c2ec3b131bd392063aab15aafc15c83331e33bd5f27bddeabbi0",
"a6b1b98105d3a8b6552e191e0bc300ac432bdba02b87d7e69cca7a5f22e9cebbi0",
"38031a62f117119561f095109367359b1ec5b513cce605e99d3ad4fb3d73ccbbi0",
"518505a149382542af4a249a0ea3e8393eb11baaf1e607bb7fa089ccb0acb7bbi0",
"d6033366e191c597b5d060ccd11213625f7ca276a8dd3649db9463c401d654bbi0",
"23c94df33db29f2068237528c50bccb9af14dabeb1b4c370c1ce2cfaf2bb12bbi0",
"11407eeb6ecd4b5f721d3bdbb24d80c57bf978438466d44a37f4400dcf40dcbai0",
"26fd15fe036f3ff842e060207150594d5327963a5af729d9d7bb37f9b27cc9bai0",
"c85d49988d0a9e63b57a42b0f43b085ac848b4eec3c7567c6ff9835b28b7bfbai0",
"6f9d8c063ebd8777d42609563d5a2753739ba9822afdbd3f30248aa3622c1bbai0",
"59a5c6c8ebf33e8af27c5ca3a1fc34c6ec4a3933024431d74a7107c4cdb518bai0",
"113a792a0665cc766fe1725e94da88af51d637f0b4b2d8bab8acefc60a7fa2b9i0",
"74f75991f2f1f877c01834c8840778a67a66403ec6fe6db4889bd773a0c8f2b8i0",
"1aea70b0b26f38543f5ac323c88287b8b128f275eac1b26e316a86e14bf6c4b8i0",
"fb24445c829b8e9739be2153bf44f8962191c9ef470fa5a0a8cf6014d3939ab8i0",
"4f7bd6fb95500aad569bd9772f49545f997ffed98782938e6d030d1f0ea482b8i0",
"340716bc1585d9b57fc6c21e298caed04c84b27bd45873799b31b63d7fb965b8i0",
"cc515eb5a3125b80a8d7a2ac8e0ba54206185715332ebe6434dfbc86661053b8i0",
"e1ad8b866a5b25b67ccaf2b4e63eddb02b24e2a7abd8c3fd2c5d4ae488f83bb8i0",
"bd723e4bc055e8a43d52e80041664b94dd24a7e1a1c4aa02f39841596a0d76b7i0",
"45efc579e0fbbc539eeaf6fedc30fdd156fca6e32d7d0fff87c568b411a651b7i0",
"6ff468ac685ea84a44977322e23371aee5c6eb75d35207a60dd8b43d32632db7i0",
"9adda4d80df93b592ed215aee39da04fe4a43aec06a97f7228b483a747f4ebb6i0",
"adf97725b496134ebfd0eaaceb63f23d94052a585f557206f33443c2d659e6b6i0",
"41565db258d48adc4e0ff3467534890ee6a12beaed5378847667735affb8e2b6i0",
"fab5be5f8860e29eb394e56bd0a668752c346d1bdda73dc6a2fc2e824a17dbb6i0",
"1307d9531f2759ffcd125bdaf31ed9116c103a991a17d5b43b2e41a7e17460b6i0",
"5494d587b738c901b727c39628d94eb021a836bd78e82b20f6e331ed5c2850b6i0",
"6e98fb69311cf79bd271b13411df9e6b6138705fd08db20fe36a897eb4b513b6i0",
"f6f5d494bd9211ec6b71e9270f4a87237647e7f655ce7c10392fe1c80d8affb5i0",
"7fe37c78b2be6788af0fe810d5b6aedb1bb9c166b70667105e43de13234ee6b5i0",
"8093e0684c094a22b23f328b1dbd50c487c3ab37bc230de456a12b7fde95bcb5i0",
"7511c5ef23ab23f8e009e368b7954c4ed7e67a7a1cd94bae99b7d93a192a90b5i0",
"c98658f7731c9b5342c6a51f0860fec09fbcab9867b986d4704736abf1b0f6b4i0",
"b56001aa7fc59eb40068ea41e0f35a54f4d73c3483cd69ae0c26bb95dfc9e9b4i0",
"4147fbe40586287b1e6144c066731e43959e1aa7d3c7c8ea301ee44fd0b37fb4i0",
"3d43b7b45e4c0e062b21147be0ebdd68f9094f4e9c7b8a686aeb2948b40fbfb3i0",
"6e66c9e03e18250806515a3a60e4a6012f37e87aa1446a679ade384c7e55a3b3i0",
"8215caa5d781be0d5fae9ce7cb1a04efa17f82fb66cb2fa99e4c7bb1a2f479b3i0",
"ce288cac29042474740fa477163767a0fcf74b228e48748630ac7193118429b3i0",
"6d35d614a3574e85d80e27fdc5854a055c484dbf09f155411e279a839aa8ddb2i0",
"906804e50f92a51329b5009d65e5f6e3c32e512279c835c3171ea6765eaca6b2i0",
"70bd0c3531d62ab836187dd956e1e3fb7ef9903124b818a78e5ecd5198f5a3b2i0",
"92c2668efad88467edded7ffc50fb05a063e7b2b555ccc2073f41d599bb037b2i0",
"e97700fc461598ac01bcb2b74cde9ee31e608bfc7f53047e9e494697509f1fb2i0",
"f9d7f767ae23e67ccb9ffd21d9f83ef9a7b6617f5988a08481e1f722de05d1b1i0",
"262f07835303d1e3a8dce57c93488ed1512ad8ed633c9f129c1bc82535c99ab1i0",
"4ea5e8e9cc2c7414d2652c8db87ef556b48e61d60f68cef9c319eb87566e3db1i0",
"acfae264071fa0bb8bd7875e2d607ad48fac549c0817c2dba40858ee95571eb1i0",
"ed150d8980b923b214b8ea115a31933bbebf82666f93c68a1e11ebd3fee3d9b0i0",
"d9ea50a1c374d2feaf87a4ba82967aab419c1ecc4caac3964f69dac7323ca0b0i0"
],
"more": true,
"page_index": 9
}
GET
/inscriptions/block/<BLOCKHEIGHT>
Description
Get inscriptions for a specific block.
Пример
curl -s -H "Accept: application/json" \
http://0.0.0.0:80/inscriptions/block/767430
{
"ids": [
"6fb976ab49dcec017f1e201e84395983204ae1a7c2abf7ced0a85d692e442799i0"
],
"more": false,
"page_index": 0
}
GET
/output/<OUTPOINT>
Description
Returns information about a UTXO, including inscriptions within it.
Пример
curl -s -H "Accept: application/json" \
http://0.0.0.0:80/output/bc4c30829a9564c0d58e6287195622b53ced54a25711d1b86be7cd3a70ef61ed:0
{
"address": "bc1pz4kvfpurqc2hwgrq0nwtfve2lfxvdpfcdpzc6ujchyr3ztj6gd9sfr6ayf",
"indexed": false,
"inscriptions": [],
"outpoint": "bc4c30829a9564c0d58e6287195622b53ced54a25711d1b86be7cd3a70ef61ed:0",
"runes": {},
"sat_ranges": null,
"script_pubkey": "OP_PUSHNUM_1 OP_PUSHBYTES_32 156cc4878306157720607cdcb4b32afa4cc6853868458d7258b907112e5a434b",
"spent": true,
"transaction": "bc4c30829a9564c0d58e6287195622b53ced54a25711d1b86be7cd3a70ef61ed",
"value": 10000
}
POST
/outputs
Description
List information from a list of outputs.
Пример
curl -s -X POST \
-H "Accept: application/json" \
-H "Content-Type: application/json" \
-d '["bc4c30829a9564c0d58e6287195622b53ced54a25711d1b86be7cd3a70ef61ed:0", "bc4c30829a9564c0d58e6287195622b53ced54a25711d1b86be7cd3a70ef61ed:1"]' \
http://0.0.0.0:80/outputs
[
{
"address": "bc1pz4kvfpurqc2hwgrq0nwtfve2lfxvdpfcdpzc6ujchyr3ztj6gd9sfr6ayf",
"indexed": false,
"inscriptions": [],
"outpoint": "bc4c30829a9564c0d58e6287195622b53ced54a25711d1b86be7cd3a70ef61ed:0",
"runes": {},
"sat_ranges": null,
"script_pubkey": "OP_PUSHNUM_1 OP_PUSHBYTES_32 156cc4878306157720607cdcb4b32afa4cc6853868458d7258b907112e5a434b",
"spent": true,
"transaction": "bc4c30829a9564c0d58e6287195622b53ced54a25711d1b86be7cd3a70ef61ed",
"value": 10000
},
{
"address": "bc1pkc2cdnm6xermt2vzxg9wwcur5prgpl6pms3xf9ydtyax5pnqsgwqvuu5cq",
"indexed": false,
"inscriptions": [],
"outpoint": "bc4c30829a9564c0d58e6287195622b53ced54a25711d1b86be7cd3a70ef61ed:1",
"runes": {},
"sat_ranges": null,
"script_pubkey": "5120b61586cf7a3647b5a982320ae76383a04680ff41dc2264948d593a6a0660821c",
"spent": true,
"transaction": "bc4c30829a9564c0d58e6287195622b53ced54a25711d1b86be7cd3a70ef61ed",
"value": 483528
}
]
GET
/outputs/<ADDRESS>
Description
Get UTXOs held by <ADDRESS>
.
Query Parameters
type
(optional)
Value | Description |
---|---|
any | return all UTXOs |
cardinal | return UTXOs not containing inscriptions or runes |
inscribed | return UTXOs containing inscriptions |
runic | return UTXOs containing runes |
Пример
curl -s -H "Accept: application/json" \
"http://0.0.0.0:80/outputs/358mMRwcxuCSkKheuVWaXHJBGKrXo3f6JW?type=cardinal"
[
{
"address": "358mMRwcxuCSkKheuVWaXHJBGKrXo3f6JW",
"indexed": true,
"inscriptions": [],
"outpoint": "6737d77ee9fba5f37e5f4128b03479209030bf44f78ffa3f4e94bf9783691b00:0",
"runes": {},
"sat_ranges": [
[
567775159437503,
567775159443555
],
[
1266853954166100,
1266853954177531
],
[
1210436862054339,
1210436862084993
],
[
690914221328806,
690914221362332
],
[
957021421066680,
957021421075017
]
],
"script_pubkey": "a91425c70777dfcf84ba7479483e262e1bc7bb0bf4d587",
"spent": false,
"transaction": "6737d77ee9fba5f37e5f4128b03479209030bf44f78ffa3f4e94bf9783691b00",
"value": 90000
},
{
"address": "358mMRwcxuCSkKheuVWaXHJBGKrXo3f6JW",
"indexed": true,
"inscriptions": [],
"outpoint": "0cfa3e55f14812c119e47936d95abbb4e04f3094f6d86ac16c6e10018b0b2900:0",
"runes": {},
"sat_ranges": [
[
1773029001419378,
1773029001509378
]
],
"script_pubkey": "a91425c70777dfcf84ba7479483e262e1bc7bb0bf4d587",
"spent": false,
"transaction": "0cfa3e55f14812c119e47936d95abbb4e04f3094f6d86ac16c6e10018b0b2900",
"value": 90000
}
]
GET
/rune/<RUNE>
Description
Returns details about the specified rune. Requires index with --index-runes
flag.
Пример
curl -s -H "Accept: application/json" \
http://localhost/rune/UNCOMMONGOODS
{
"entry": {
"block": 1,
"burned": 139,
"divisibility": 0,
"etching": "0000000000000000000000000000000000000000000000000000000000000000",
"mints": 33891693,
"number": 0,
"premine": 0,
"spaced_rune": "UNCOMMON•GOODS",
"symbol": "⧉",
"terms": {
"amount": 1,
"cap": 340282366920938463463374607431768211455,
"height": [
840000,
1050000
],
"offset": [
null,
null
]
},
"timestamp": 0,
"turbo": true
},
"id": "1:0",
"mintable": true,
"parent": null
}
GET
/runes
Description
Returns details for last 100 inscribed runes. Requires index with --index-runes
flag.
Пример
curl -s -H "Accept: application/json" \
http://0.0.0.0:80/runes
{
"entries": [
[
"864348:823",
{
"block": 864348,
"burned": 0,
"divisibility": 0,
"etching": "645431123f5ff8b92d057803f2ba786689fd04f2d968d8fb6a4162b63cabc4fd",
"mints": 0,
"number": 119793,
"premine": 0,
"spaced_rune": "ZKSKOOUGYPXB",
"symbol": null,
"terms": {
"amount": 1,
"cap": 87187755,
"height": [
null,
null
],
"offset": [
null,
null
]
},
"timestamp": 1728166072,
"turbo": false
}
],
[
"864348:822",
{
"block": 864348,
"burned": 0,
"divisibility": 0,
"etching": "9d3a1200adfcb2e0ef07e4975120980befcc265cd85b9f2300bc12d4a1ab1beb",
"mints": 0,
"number": 119792,
"premine": 0,
"spaced_rune": "VEMRWZCGQRLL",
"symbol": null,
"terms": {
"amount": 1,
"cap": 183543298,
"height": [
null,
null
],
"offset": [
null,
null
]
},
"timestamp": 1728166072,
"turbo": false
}
],
[
"864346:427",
{
"block": 864346,
"burned": 0,
"divisibility": 0,
"etching": "2acaba44a6dc31cc5f8a8f4ee3a10eb9ca74e47d62975709cb8e81723d91a20d",
"mints": 0,
"number": 119791,
"premine": 0,
"spaced_rune": "LBQPCHACURXD",
"symbol": null,
"terms": {
"amount": 1,
"cap": 12894945,
"height": [
null,
null
],
"offset": [
null,
null
]
},
"timestamp": 1728165011,
"turbo": false
}
],
[
"864343:2413",
{
"block": 864343,
"burned": 0,
"divisibility": 0,
"etching": "6698cd13f630107ccc4b3058cc09b1718aa435e8f9c4eba6b08eea5d13ee809b",
"mints": 0,
"number": 119790,
"premine": 1000000000,
"spaced_rune": "BABY•LEN•SASSAMAN",
"symbol": "Ⱡ",
"terms": {
"amount": 100000,
"cap": 11000,
"height": [
null,
null
],
"offset": [
null,
null
]
},
"timestamp": 1728162943,
"turbo": false
}
],
[
"864342:2591",
{
"block": 864342,
"burned": 0,
"divisibility": 1,
"etching": "095513866c6e7aca84a39f403caac493eaa2f53eda848aaee3e96463571ec6d6",
"mints": 0,
"number": 119789,
"premine": 30000,
"spaced_rune": "COMPLETED•IT•MATE",
"symbol": "⚽",
"terms": {
"amount": 100,
"cap": 299999700,
"height": [
null,
null
],
"offset": [
null,
null
]
},
"timestamp": 1728162376,
"turbo": true
}
],
[
"864338:4768",
{
"block": 864338,
"burned": 0,
"divisibility": 0,
"etching": "0d04505188efc69d4e2cb389607663ff556c062e1e2f8c890bfc598c637700ab",
"mints": 0,
"number": 119788,
"premine": 0,
"spaced_rune": "IJEIKMFKELRFRGRGRGEFREFGR",
"symbol": "d",
"terms": {
"amount": 211,
"cap": 554553,
"height": [
null,
null
],
"offset": [
null,
null
]
},
"timestamp": 1728160156,
"turbo": false
}
],
[
"864338:4767",
{
"block": 864338,
"burned": 0,
"divisibility": 0,
"etching": "e0490721505254c83a69ce1411b1659b6ecd0690751cf43ac45240ca7d3ab4fb",
"mints": 0,
"number": 119787,
"premine": 0,
"spaced_rune": "CQHMUFFTWWPF",
"symbol": null,
"terms": {
"amount": 1,
"cap": 14372222,
"height": [
null,
null
],
"offset": [
null,
null
]
},
"timestamp": 1728160156,
"turbo": false
}
],
[
"864338:4766",
{
"block": 864338,
"burned": 0,
"divisibility": 0,
"etching": "ada836a0e9c834977161543ba7bace0b552e55f88da0398626b1c49a170502dd",
"mints": 0,
"number": 119786,
"premine": 0,
"spaced_rune": "KJMKPVMKREMVBVBFBVFD",
"symbol": "3",
"terms": {
"amount": 332,
"cap": 211222,
"height": [
null,
null
],
"offset": [
null,
null
]
},
"timestamp": 1728160156,
"turbo": false
}
],
[
"864337:4402",
{
"block": 864337,
"burned": 0,
"divisibility": 0,
"etching": "ed45aaf2e9b82d55e35a8d0654d0bb044d1d3e2fdd3eb8787d572854316c53c2",
"mints": 0,
"number": 119785,
"premine": 0,
"spaced_rune": "JNJKMLKMNJCMPMCESCVDSV•DV",
"symbol": "2",
"terms": {
"amount": 3222,
"cap": 1111111,
"height": [
null,
null
],
"offset": [
null,
null
]
},
"timestamp": 1728160097,
"turbo": false
}
],
[
"864335:913",
{
"block": 864335,
"burned": 0,
"divisibility": 0,
"etching": "435cc412c946ced0a5ae5a50ee41d2b541f06f09b6f587619507dfbcc61b8842",
"mints": 0,
"number": 119784,
"premine": 0,
"spaced_rune": "UOBYCVAGPLNO",
"symbol": null,
"terms": {
"amount": 1,
"cap": 194090811,
"height": [
null,
null
],
"offset": [
null,
null
]
},
"timestamp": 1728158372,
"turbo": false
}
],
[
"864335:912",
{
"block": 864335,
"burned": 0,
"divisibility": 0,
"etching": "79d77e44d66af6ec82ff7970eb3f15b9537408e3888ed0348a265810e99ddd3a",
"mints": 0,
"number": 119783,
"premine": 0,
"spaced_rune": "YNJMQPGPUGWN",
"symbol": null,
"terms": {
"amount": 1,
"cap": 71782828,
"height": [
null,
null
],
"offset": [
null,
null
]
},
"timestamp": 1728158372,
"turbo": false
}
],
[
"864335:910",
{
"block": 864335,
"burned": 0,
"divisibility": 0,
"etching": "b014db8f651ec05a1f261f3569c66973318787ad4c7410d6677fc6fcc45e5cfe",
"mints": 0,
"number": 119782,
"premine": 0,
"spaced_rune": "FDLQGMGRYAMF",
"symbol": null,
"terms": {
"amount": 1,
"cap": 135966360,
"height": [
null,
null
],
"offset": [
null,
null
]
},
"timestamp": 1728158372,
"turbo": false
}
],
[
"864335:909",
{
"block": 864335,
"burned": 0,
"divisibility": 0,
"etching": "bd649ba830b262ddcf24b0d6da5091f2dbf1276af26ad0809b65a95c42ddbec2",
"mints": 0,
"number": 119781,
"premine": 0,
"spaced_rune": "LBPOUDNUAIDK",
"symbol": null,
"terms": {
"amount": 1,
"cap": 128338720,
"height": [
null,
null
],
"offset": [
null,
null
]
},
"timestamp": 1728158372,
"turbo": false
}
],
[
"864335:908",
{
"block": 864335,
"burned": 0,
"divisibility": 0,
"etching": "4ee02e12ba76c8c85208510e078810efbb3843fdaa1323d4e84f40a753d97380",
"mints": 0,
"number": 119780,
"premine": 0,
"spaced_rune": "RNVHGUYHAUCM",
"symbol": null,
"terms": {
"amount": 1,
"cap": 3346818,
"height": [
null,
null
],
"offset": [
null,
null
]
},
"timestamp": 1728158372,
"turbo": false
}
],
[
"864335:907",
{
"block": 864335,
"burned": 0,
"divisibility": 0,
"etching": "c9b47a71a2a552450f6259262fc0c23c45148fccb52ee32cd5bb668a467a9f5d",
"mints": 0,
"number": 119779,
"premine": 0,
"spaced_rune": "RTSQQFKTEEBX",
"symbol": null,
"terms": {
"amount": 1,
"cap": 85692692,
"height": [
null,
null
],
"offset": [
null,
null
]
},
"timestamp": 1728158372,
"turbo": false
}
],
[
"864335:906",
{
"block": 864335,
"burned": 0,
"divisibility": 0,
"etching": "df772301fef3107549d200fea54f47e46d6aae197f85e93b0068749640028055",
"mints": 0,
"number": 119778,
"premine": 0,
"spaced_rune": "IWHXSPKPYQOX",
"symbol": null,
"terms": {
"amount": 1,
"cap": 166869547,
"height": [
null,
null
],
"offset": [
null,
null
]
},
"timestamp": 1728158372,
"turbo": false
}
],
[
"864335:905",
{
"block": 864335,
"burned": 0,
"divisibility": 0,
"etching": "186049ed6091d0a4d9e1abf6d436a6af7bc7603a33c71031b8bb0ba02f386b3a",
"mints": 0,
"number": 119777,
"premine": 0,
"spaced_rune": "OHDKZWZHYLVL",
"symbol": null,
"terms": {
"amount": 1,
"cap": 189310557,
"height": [
null,
null
],
"offset": [
null,
null
]
},
"timestamp": 1728158372,
"turbo": false
}
],
[
"864335:904",
{
"block": 864335,
"burned": 0,
"divisibility": 0,
"etching": "74e72d9c58ce6300807d1ca6343fa95f5fa34f3d7e29fc95a94b553ff4c66b36",
"mints": 0,
"number": 119776,
"premine": 0,
"spaced_rune": "NSZNPZDDFYCT",
"symbol": null,
"terms": {
"amount": 1,
"cap": 72959668,
"height": [
null,
null
],
"offset": [
null,
null
]
},
"timestamp": 1728158372,
"turbo": false
}
],
[
"864335:386",
{
"block": 864335,
"burned": 0,
"divisibility": 0,
"etching": "76e81c2a204074d61869f58ce86bf8ecfe66f1213bd444c4f22c6f638a401ef9",
"mints": 0,
"number": 119775,
"premine": 0,
"spaced_rune": "NTOOWMNTOOWMNTOOWM",
"symbol": null,
"terms": {
"amount": 1,
"cap": 1000000,
"height": [
null,
null
],
"offset": [
null,
null
]
},
"timestamp": 1728158372,
"turbo": false
}
],
[
"864334:4073",
{
"block": 864334,
"burned": 0,
"divisibility": 0,
"etching": "6c132c6b69ff19d3dbbd0165bcf2fb5db9bba717824a3ff93e94e976b7da5f9e",
"mints": 0,
"number": 119774,
"premine": 0,
"spaced_rune": "HIDDEN•SELDOM•DISEASE•WISE",
"symbol": null,
"terms": {
"amount": 1,
"cap": 1127,
"height": [
null,
null
],
"offset": [
null,
null
]
},
"timestamp": 1728158138,
"turbo": false
}
],
[
"864334:4070",
{
"block": 864334,
"burned": 0,
"divisibility": 0,
"etching": "adcbc4dc91e0b354baacb37be52e187fab2cf619c43f0675b26c5e7d58ad1ded",
"mints": 0,
"number": 119773,
"premine": 0,
"spaced_rune": "TYDSJXISYECCOQYYSS",
"symbol": null,
"terms": {
"amount": 1,
"cap": 2361833545833,
"height": [
null,
null
],
"offset": [
null,
null
]
},
"timestamp": 1728158138,
"turbo": false
}
],
[
"864334:762",
{
"block": 864334,
"burned": 0,
"divisibility": 0,
"etching": "259fc5e99770c5d2ed0547571981ad191554282e6ab4b2a6eb4083c392edc1cb",
"mints": 0,
"number": 119772,
"premine": 0,
"spaced_rune": "BEGCOAJVXEHW",
"symbol": null,
"terms": {
"amount": 1,
"cap": 38385326,
"height": [
null,
null
],
"offset": [
null,
null
]
},
"timestamp": 1728158138,
"turbo": false
}
],
[
"864334:433",
{
"block": 864334,
"burned": 0,
"divisibility": 0,
"etching": "4d324233f38c0cbf36bf1a76e161cbe0ff9f0efb6ee78d94dffdd5f16ec7e8ba",
"mints": 0,
"number": 119771,
"premine": 0,
"spaced_rune": "BEDIALAMDARBEDIALAMDAR",
"symbol": null,
"terms": {
"amount": 5,
"cap": 100000,
"height": [
null,
null
],
"offset": [
null,
null
]
},
"timestamp": 1728158138,
"turbo": false
}
],
[
"864334:432",
{
"block": 864334,
"burned": 0,
"divisibility": 0,
"etching": "f7b804462b33fd468ef3b171071094f3498968b0a488d08489e16058d470d809",
"mints": 0,
"number": 119770,
"premine": 0,
"spaced_rune": "RUTHMARTINRUTHMARTIN",
"symbol": null,
"terms": {
"amount": 1,
"cap": 999999,
"height": [
null,
null
],
"offset": [
null,
null
]
},
"timestamp": 1728158138,
"turbo": false
}
],
[
"864334:431",
{
"block": 864334,
"burned": 0,
"divisibility": 0,
"etching": "51ce542a9557a4894b0dfd705d13268682aa16c83e5eee9c5b1ba4d67113def8",
"mints": 0,
"number": 119769,
"premine": 0,
"spaced_rune": "ULTIVERSEULTIVERSE",
"symbol": null,
"terms": {
"amount": 1,
"cap": 7777777,
"height": [
null,
null
],
"offset": [
null,
null
]
},
"timestamp": 1728158138,
"turbo": false
}
],
[
"864334:182",
{
"block": 864334,
"burned": 0,
"divisibility": 0,
"etching": "195dc952cb7c9e8a5c370fe098b4aa1d8bba8225bb4706ee7243b8e3c43f2b32",
"mints": 0,
"number": 119768,
"premine": 0,
"spaced_rune": "NUQHRKVWSYEA",
"symbol": null,
"terms": {
"amount": 1,
"cap": 3063483,
"height": [
null,
null
],
"offset": [
null,
null
]
},
"timestamp": 1728158138,
"turbo": false
}
],
[
"864333:3461",
{
"block": 864333,
"burned": 0,
"divisibility": 0,
"etching": "65078629f16f0ce11a91da3de877a0ac5a25b5ed4c68d0ba3f6a8e75eab5f871",
"mints": 0,
"number": 119767,
"premine": 0,
"spaced_rune": "FMTJRFVGNHVZNUCB",
"symbol": null,
"terms": {
"amount": 1,
"cap": 5541274870406,
"height": [
null,
null
],
"offset": [
null,
null
]
},
"timestamp": 1728157837,
"turbo": false
}
],
[
"864333:3458",
{
"block": 864333,
"burned": 0,
"divisibility": 0,
"etching": "8471194b68cfab89a9d6112caf62f97819172d397e91674ec5413ad8f27b2828",
"mints": 0,
"number": 119766,
"premine": 0,
"spaced_rune": "WEELZZLGHGDRTO",
"symbol": null,
"terms": {
"amount": 1,
"cap": 507317119633,
"height": [
null,
null
],
"offset": [
null,
null
]
},
"timestamp": 1728157837,
"turbo": false
}
],
[
"864333:3440",
{
"block": 864333,
"burned": 0,
"divisibility": 0,
"etching": "90d530d1daf7f1f6ece388a846fe8173a427f71b7e1c5cfc1c035dcd1fc0b017",
"mints": 0,
"number": 119765,
"premine": 0,
"spaced_rune": "MIIOBBPODENFJ",
"symbol": null,
"terms": {
"amount": 1,
"cap": 503174265447,
"height": [
null,
null
],
"offset": [
null,
null
]
},
"timestamp": 1728157837,
"turbo": false
}
],
[
"864333:3437",
{
"block": 864333,
"burned": 0,
"divisibility": 0,
"etching": "5c0d2bbf9543cd50293fd6671d94502fa08c8c6d11431e0eee4ac3aedbdbc5bc",
"mints": 0,
"number": 119764,
"premine": 0,
"spaced_rune": "TASTE•RISING•FULL",
"symbol": null,
"terms": {
"amount": 1,
"cap": 4812,
"height": [
null,
null
],
"offset": [
null,
null
]
},
"timestamp": 1728157837,
"turbo": false
}
],
[
"864333:3434",
{
"block": 864333,
"burned": 0,
"divisibility": 0,
"etching": "1766810d3f53cfce81a4e0620c21e8e4643c7a40936dbafa6e88339c025fb5f6",
"mints": 0,
"number": 119763,
"premine": 0,
"spaced_rune": "REGION•MARK•LOW",
"symbol": null,
"terms": {
"amount": 1,
"cap": 2470,
"height": [
null,
null
],
"offset": [
null,
null
]
},
"timestamp": 1728157837,
"turbo": false
}
],
[
"864333:3433",
{
"block": 864333,
"burned": 0,
"divisibility": 0,
"etching": "f2a6805462cebffc6eb5855d1205dedf9c7f746a7dfd420c153011bb572f58ba",
"mints": 0,
"number": 119762,
"premine": 0,
"spaced_rune": "QHKKEWPTDMNB",
"symbol": null,
"terms": {
"amount": 1,
"cap": 53660832,
"height": [
null,
null
],
"offset": [
null,
null
]
},
"timestamp": 1728157837,
"turbo": false
}
],
[
"864333:3432",
{
"block": 864333,
"burned": 0,
"divisibility": 0,
"etching": "5d2127d84533fc9d486eaec1a2b76b2d349fe63a06a9d14847b667d360af6e19",
"mints": 0,
"number": 119761,
"premine": 0,
"spaced_rune": "IWLUKGYIWMBP",
"symbol": null,
"terms": {
"amount": 1,
"cap": 94339731,
"height": [
null,
null
],
"offset": [
null,
null
]
},
"timestamp": 1728157837,
"turbo": false
}
],
[
"864333:3431",
{
"block": 864333,
"burned": 0,
"divisibility": 0,
"etching": "ac4668d63f66c94515dbc2a74faa9152018758a75432cc085a7e7638a24cbc12",
"mints": 0,
"number": 119760,
"premine": 0,
"spaced_rune": "KWUFVEOJVKGQ",
"symbol": null,
"terms": {
"amount": 1,
"cap": 196312580,
"height": [
null,
null
],
"offset": [
null,
null
]
},
"timestamp": 1728157837,
"turbo": false
}
],
[
"864333:2714",
{
"block": 864333,
"burned": 0,
"divisibility": 0,
"etching": "c642cd4cc7a075c61d3a32b949217990aa91dfc928f12a2cdba1f2f228c699c7",
"mints": 26,
"number": 119759,
"premine": 210000,
"spaced_rune": "BOUNCE•THE•BITCOIN•CAT",
"symbol": "🐱",
"terms": {
"amount": 1000,
"cap": 20790,
"height": [
null,
null
],
"offset": [
null,
null
]
},
"timestamp": 1728157837,
"turbo": true
}
],
[
"864333:2482",
{
"block": 864333,
"burned": 0,
"divisibility": 0,
"etching": "cc2415293c275bea4d73ff8f45f68f269686b819de447f50ec6988ac04a62d1b",
"mints": 0,
"number": 119758,
"premine": 30000000,
"spaced_rune": "BITCAT•IS•IN•CONTROL",
"symbol": "🐈",
"terms": {
"amount": 5000,
"cap": 194000,
"height": [
null,
null
],
"offset": [
null,
null
]
},
"timestamp": 1728157837,
"turbo": true
}
],
[
"864333:2462",
{
"block": 864333,
"burned": 0,
"divisibility": 0,
"etching": "a75f792be155a0b53691289433a6413c1efb1aeaf970f752ee70be3c6e755a06",
"mints": 0,
"number": 119757,
"premine": 0,
"spaced_rune": "FIRST•CAT•EATING•BITCOINER",
"symbol": "🙀",
"terms": {
"amount": 1000,
"cap": 21000,
"height": [
null,
null
],
"offset": [
null,
null
]
},
"timestamp": 1728157837,
"turbo": true
}
],
[
"864333:1142",
{
"block": 864333,
"burned": 0,
"divisibility": 0,
"etching": "7488c2909e2bb5f39fb836ee1e18c23487d078e48e2420cc11776c8d7931fea5",
"mints": 0,
"number": 119756,
"premine": 0,
"spaced_rune": "AI•CRYPTO•AI•CRYPTO",
"symbol": "A",
"terms": {
"amount": 1000,
"cap": 1,
"height": [
null,
null
],
"offset": [
null,
null
]
},
"timestamp": 1728157837,
"turbo": false
}
],
[
"864333:1140",
{
"block": 864333,
"burned": 0,
"divisibility": 0,
"etching": "a024e2d4c4e15eab941376a954bb9176bc95990ba6b2a6d31e5b7c26cd8d7e7c",
"mints": 0,
"number": 119755,
"premine": 0,
"spaced_rune": "SACMKSOKCMPOKMWCLWMCLWCDWC",
"symbol": "c",
"terms": {
"amount": 221,
"cap": 2111111,
"height": [
null,
null
],
"offset": [
null,
null
]
},
"timestamp": 1728157837,
"turbo": false
}
],
[
"864333:1136",
{
"block": 864333,
"burned": 0,
"divisibility": 0,
"etching": "d6358e0601130c5ebbdb535aa93bbe2e752fd7fd6eee8601fe5af29e7ff179e1",
"mints": 0,
"number": 119754,
"premine": 0,
"spaced_rune": "XQOFVAHHLCQR",
"symbol": null,
"terms": {
"amount": 1,
"cap": 94964916,
"height": [
null,
null
],
"offset": [
null,
null
]
},
"timestamp": 1728157837,
"turbo": false
}
],
[
"864333:1135",
{
"block": 864333,
"burned": 0,
"divisibility": 0,
"etching": "62aa2bd48b0eb8a1c3bb090c6129bdc52a2348f3b8e25a2e2eeaa27313e242af",
"mints": 0,
"number": 119753,
"premine": 0,
"spaced_rune": "YEPWCVNODTII",
"symbol": null,
"terms": {
"amount": 1,
"cap": 39185064,
"height": [
null,
null
],
"offset": [
null,
null
]
},
"timestamp": 1728157837,
"turbo": false
}
],
[
"864333:1134",
{
"block": 864333,
"burned": 0,
"divisibility": 0,
"etching": "e3e6a144d3ac57d35f7f141f79ea818bd26a78bf900c2d0aeaa2a95ce68f8c9e",
"mints": 0,
"number": 119752,
"premine": 0,
"spaced_rune": "SDFGJUJTYHTGRSFAD",
"symbol": null,
"terms": {
"amount": 1,
"cap": 5,
"height": [
null,
null
],
"offset": [
null,
null
]
},
"timestamp": 1728157837,
"turbo": false
}
],
[
"864333:1133",
{
"block": 864333,
"burned": 0,
"divisibility": 0,
"etching": "97600a89179c0bfd4b7c69bc5f4e9fc2f206124fbc08d4872f18ac6be29a525e",
"mints": 0,
"number": 119751,
"premine": 0,
"spaced_rune": "XQEKAAGEYDXY",
"symbol": null,
"terms": {
"amount": 1,
"cap": 147617461,
"height": [
null,
null
],
"offset": [
null,
null
]
},
"timestamp": 1728157837,
"turbo": false
}
],
[
"864333:1131",
{
"block": 864333,
"burned": 0,
"divisibility": 0,
"etching": "8ecabca3a2b1518c67c5ee41c93e7874d1117edfd0b36e46ea68eb83e6f9eaad",
"mints": 0,
"number": 119750,
"premine": 0,
"spaced_rune": "XFHSGMZJEUML",
"symbol": null,
"terms": {
"amount": 1,
"cap": 1014672,
"height": [
null,
null
],
"offset": [
null,
null
]
},
"timestamp": 1728157837,
"turbo": false
}
],
[
"864333:1130",
{
"block": 864333,
"burned": 0,
"divisibility": 0,
"etching": "77b1518d7ad77d89118eeb8eb92c120e1732d2e7ce9d6780cda180f5f4968df6",
"mints": 0,
"number": 119749,
"premine": 0,
"spaced_rune": "DJLNUHRYYTGR",
"symbol": null,
"terms": {
"amount": 1,
"cap": 146717679,
"height": [
null,
null
],
"offset": [
null,
null
]
},
"timestamp": 1728157837,
"turbo": false
}
],
[
"864333:1129",
{
"block": 864333,
"burned": 0,
"divisibility": 0,
"etching": "4da09c158447950fabd281c7910c6e3f251b9b9a98ab7058e2f4b26304e332ee",
"mints": 0,
"number": 119748,
"premine": 0,
"spaced_rune": "CBAQVALKVMYP",
"symbol": null,
"terms": {
"amount": 1,
"cap": 181932658,
"height": [
null,
null
],
"offset": [
null,
null
]
},
"timestamp": 1728157837,
"turbo": false
}
],
[
"864333:1128",
{
"block": 864333,
"burned": 0,
"divisibility": 0,
"etching": "b947075130f5a5f93a5cdfa9a216c76b761ff7cd2fb7ca677b3d00a3ca5d53e0",
"mints": 0,
"number": 119747,
"premine": 0,
"spaced_rune": "POJSRGWQBBWQ",
"symbol": null,
"terms": {
"amount": 1,
"cap": 100105873,
"height": [
null,
null
],
"offset": [
null,
null
]
},
"timestamp": 1728157837,
"turbo": false
}
],
[
"864333:1127",
{
"block": 864333,
"burned": 0,
"divisibility": 0,
"etching": "a356dd06600bb163cb4d68bbe601f83d987c3c2cd456e3784616ab297d1843c0",
"mints": 0,
"number": 119746,
"premine": 0,
"spaced_rune": "FMPQPSLKENKY",
"symbol": null,
"terms": {
"amount": 1,
"cap": 82531312,
"height": [
null,
null
],
"offset": [
null,
null
]
},
"timestamp": 1728157837,
"turbo": false
}
],
[
"864333:1126",
{
"block": 864333,
"burned": 0,
"divisibility": 0,
"etching": "b6ecdb27bb269949f58ace2ba162726483070e80c140dc60329b5fdbbd3e6395",
"mints": 0,
"number": 119745,
"premine": 0,
"spaced_rune": "GOARBTCEASGJ",
"symbol": null,
"terms": {
"amount": 1,
"cap": 99967467,
"height": [
null,
null
],
"offset": [
null,
null
]
},
"timestamp": 1728157837,
"turbo": false
}
],
[
"864333:1125",
{
"block": 864333,
"burned": 0,
"divisibility": 0,
"etching": "abf680ed211d18428ddda208f164539fbf662705bd88d4041575c53e655ed794",
"mints": 0,
"number": 119744,
"premine": 0,
"spaced_rune": "MNBIUEEAKPBJ",
"symbol": null,
"terms": {
"amount": 1,
"cap": 168164931,
"height": [
null,
null
],
"offset": [
null,
null
]
},
"timestamp": 1728157837,
"turbo": false
}
],
[
"864333:1124",
{
"block": 864333,
"burned": 0,
"divisibility": 0,
"etching": "74e290bc2ed6b39c887ab3b456f86d91edbadb829936c63bb166d42233527491",
"mints": 0,
"number": 119743,
"burned": 0,
"divisibility": 0,
"etching": "74e290bc2ed6b39c887ab3b456f86d91edbadb829936c63bb166d42233527491",
"mints": 0,
"number": 119743,
"divisibility": 0,
"etching": "74e290bc2ed6b39c887ab3b456f86d91edbadb829936c63bb166d42233527491",
"mints": 0,
"number": 119743,
"premine": 0,
"spaced_rune": "CWTYCFSOTBSU",
"symbol": null,
"etching": "74e290bc2ed6b39c887ab3b456f86d91edbadb829936c63bb166d42233527491",
"mints": 0,
"number": 119743,
"premine": 0,
"spaced_rune": "CWTYCFSOTBSU",
"symbol": null,
"terms": {
"amount": 1,
"cap": 29807122,
"mints": 0,
"number": 119743,
"premine": 0,
"spaced_rune": "CWTYCFSOTBSU",
"symbol": null,
"terms": {
"amount": 1,
"cap": 29807122,
"premine": 0,
"spaced_rune": "CWTYCFSOTBSU",
"symbol": null,
"terms": {
"amount": 1,
"cap": 29807122,
"height": [
null,
null
"terms": {
"amount": 1,
"cap": 29807122,
"height": [
null,
null
"height": [
null,
null
null
],
],
"offset": [
null,
null
]
},
"timestamp": 1728157837,
"turbo": false
}
]
],
"more": true,
"prev": null,
"next": 1
}
GET
/runes/<PAGE>
Description
Pagination allows you to specify which page of 100 runes you'd like to return.
Пример
curl -s -H "Accept: application/json" \
http://0.0.0.0:80/runes/0
{
"entries": [
[
"864348:823",
{
"block": 864348,
"burned": 0,
"divisibility": 0,
"etching": "645431123f5ff8b92d057803f2ba786689fd04f2d968d8fb6a4162b63cabc4fd",
"mints": 0,
"number": 119793,
"premine": 0,
"spaced_rune": "ZKSKOOUGYPXB",
"symbol": null,
"terms": {
"amount": 1,
"cap": 87187755,
"height": [
null,
null
],
"offset": [
null,
null
]
},
"timestamp": 1728166072,
"turbo": false
}
],
[
"864348:822",
{
"block": 864348,
"burned": 0,
"divisibility": 0,
"etching": "9d3a1200adfcb2e0ef07e4975120980befcc265cd85b9f2300bc12d4a1ab1beb",
"mints": 0,
"number": 119792,
"premine": 0,
"spaced_rune": "VEMRWZCGQRLL",
"symbol": null,
"terms": {
"amount": 1,
"cap": 183543298,
"height": [
null,
null
],
"offset": [
null,
null
]
},
"timestamp": 1728166072,
"turbo": false
}
],
[
"864346:427",
{
"block": 864346,
"burned": 0,
"divisibility": 0,
"etching": "2acaba44a6dc31cc5f8a8f4ee3a10eb9ca74e47d62975709cb8e81723d91a20d",
"mints": 0,
"number": 119791,
"premine": 0,
"spaced_rune": "LBQPCHACURXD",
"symbol": null,
"terms": {
"amount": 1,
"cap": 12894945,
"height": [
null,
null
],
"offset": [
null,
null
]
},
"timestamp": 1728165011,
"turbo": false
}
],
[
"864343:2413",
{
"block": 864343,
"burned": 0,
"divisibility": 0,
"etching": "6698cd13f630107ccc4b3058cc09b1718aa435e8f9c4eba6b08eea5d13ee809b",
"mints": 0,
"number": 119790,
"premine": 1000000000,
"spaced_rune": "BABY•LEN•SASSAMAN",
"symbol": "Ⱡ",
"terms": {
"amount": 100000,
"cap": 11000,
"height": [
null,
null
],
"offset": [
null,
null
]
},
"timestamp": 1728162943,
"turbo": false
}
],
[
"864342:2591",
{
"block": 864342,
"burned": 0,
"divisibility": 1,
"etching": "095513866c6e7aca84a39f403caac493eaa2f53eda848aaee3e96463571ec6d6",
"mints": 0,
"number": 119789,
"premine": 30000,
"spaced_rune": "COMPLETED•IT•MATE",
"symbol": "⚽",
"terms": {
"amount": 100,
"cap": 299999700,
"height": [
null,
null
],
"offset": [
null,
null
]
},
"timestamp": 1728162376,
"turbo": true
}
],
[
"864338:4768",
{
"block": 864338,
"burned": 0,
"divisibility": 0,
"etching": "0d04505188efc69d4e2cb389607663ff556c062e1e2f8c890bfc598c637700ab",
"mints": 0,
"number": 119788,
"premine": 0,
"spaced_rune": "IJEIKMFKELRFRGRGRGEFREFGR",
"symbol": "d",
"terms": {
"amount": 211,
"cap": 554553,
"height": [
null,
null
],
"offset": [
null,
null
]
},
"timestamp": 1728160156,
"turbo": false
}
],
[
"864338:4767",
{
"block": 864338,
"burned": 0,
"divisibility": 0,
"etching": "e0490721505254c83a69ce1411b1659b6ecd0690751cf43ac45240ca7d3ab4fb",
"mints": 0,
"number": 119787,
"premine": 0,
"spaced_rune": "CQHMUFFTWWPF",
"symbol": null,
"terms": {
"amount": 1,
"cap": 14372222,
"height": [
null,
null
],
"offset": [
null,
null
]
},
"timestamp": 1728160156,
"turbo": false
}
],
[
"864338:4766",
{
"block": 864338,
"burned": 0,
"divisibility": 0,
"etching": "ada836a0e9c834977161543ba7bace0b552e55f88da0398626b1c49a170502dd",
"mints": 0,
"number": 119786,
"premine": 0,
"spaced_rune": "KJMKPVMKREMVBVBFBVFD",
"symbol": "3",
"terms": {
"amount": 332,
"cap": 211222,
"height": [
null,
null
],
"offset": [
null,
null
]
},
"timestamp": 1728160156,
"turbo": false
}
],
[
"864337:4402",
{
"block": 864337,
"burned": 0,
"divisibility": 0,
"etching": "ed45aaf2e9b82d55e35a8d0654d0bb044d1d3e2fdd3eb8787d572854316c53c2",
"mints": 0,
"number": 119785,
"premine": 0,
"spaced_rune": "JNJKMLKMNJCMPMCESCVDSV•DV",
"symbol": "2",
"terms": {
"amount": 3222,
"cap": 1111111,
"height": [
null,
null
],
"offset": [
null,
null
]
},
"timestamp": 1728160097,
"turbo": false
}
],
[
"864335:913",
{
"block": 864335,
"burned": 0,
"divisibility": 0,
"etching": "435cc412c946ced0a5ae5a50ee41d2b541f06f09b6f587619507dfbcc61b8842",
"mints": 0,
"number": 119784,
"premine": 0,
"spaced_rune": "UOBYCVAGPLNO",
"symbol": null,
"terms": {
"amount": 1,
"cap": 194090811,
"height": [
null,
null
],
"offset": [
null,
null
]
},
"timestamp": 1728158372,
"turbo": false
}
],
[
"864335:912",
{
"block": 864335,
"burned": 0,
"divisibility": 0,
"etching": "79d77e44d66af6ec82ff7970eb3f15b9537408e3888ed0348a265810e99ddd3a",
"mints": 0,
"number": 119783,
"premine": 0,
"spaced_rune": "YNJMQPGPUGWN",
"symbol": null,
"terms": {
"amount": 1,
"cap": 71782828,
"height": [
null,
null
],
"offset": [
null,
null
]
},
"timestamp": 1728158372,
"turbo": false
}
],
[
"864335:910",
{
"block": 864335,
"burned": 0,
"divisibility": 0,
"etching": "b014db8f651ec05a1f261f3569c66973318787ad4c7410d6677fc6fcc45e5cfe",
"mints": 0,
"number": 119782,
"premine": 0,
"spaced_rune": "FDLQGMGRYAMF",
"symbol": null,
"terms": {
"amount": 1,
"cap": 135966360,
"height": [
null,
null
],
"offset": [
null,
null
]
},
"timestamp": 1728158372,
"turbo": false
}
],
[
"864335:909",
{
"block": 864335,
"burned": 0,
"divisibility": 0,
"etching": "bd649ba830b262ddcf24b0d6da5091f2dbf1276af26ad0809b65a95c42ddbec2",
"mints": 0,
"number": 119781,
"premine": 0,
"spaced_rune": "LBPOUDNUAIDK",
"symbol": null,
"terms": {
"amount": 1,
"cap": 128338720,
"height": [
null,
null
],
"offset": [
null,
null
]
},
"timestamp": 1728158372,
"turbo": false
}
],
[
"864335:908",
{
"block": 864335,
"burned": 0,
"divisibility": 0,
"etching": "4ee02e12ba76c8c85208510e078810efbb3843fdaa1323d4e84f40a753d97380",
"mints": 0,
"number": 119780,
"premine": 0,
"spaced_rune": "RNVHGUYHAUCM",
"symbol": null,
"terms": {
"amount": 1,
"cap": 3346818,
"height": [
null,
null
],
"offset": [
null,
null
]
},
"timestamp": 1728158372,
"turbo": false
}
],
[
"864335:907",
{
"block": 864335,
"burned": 0,
"divisibility": 0,
"etching": "c9b47a71a2a552450f6259262fc0c23c45148fccb52ee32cd5bb668a467a9f5d",
"mints": 0,
"number": 119779,
"premine": 0,
"spaced_rune": "RTSQQFKTEEBX",
"symbol": null,
"terms": {
"amount": 1,
"cap": 85692692,
"height": [
null,
null
],
"offset": [
null,
null
]
},
"timestamp": 1728158372,
"turbo": false
}
],
[
"864335:906",
{
"block": 864335,
"burned": 0,
"divisibility": 0,
"etching": "df772301fef3107549d200fea54f47e46d6aae197f85e93b0068749640028055",
"mints": 0,
"number": 119778,
"premine": 0,
"spaced_rune": "IWHXSPKPYQOX",
"symbol": null,
"terms": {
"amount": 1,
"cap": 166869547,
"height": [
null,
null
],
"offset": [
null,
null
]
},
"timestamp": 1728158372,
"turbo": false
}
],
[
"864335:905",
{
"block": 864335,
"burned": 0,
"divisibility": 0,
"etching": "186049ed6091d0a4d9e1abf6d436a6af7bc7603a33c71031b8bb0ba02f386b3a",
"mints": 0,
"number": 119777,
"premine": 0,
"spaced_rune": "OHDKZWZHYLVL",
"symbol": null,
"terms": {
"amount": 1,
"cap": 189310557,
"height": [
null,
null
],
"offset": [
null,
null
]
},
"timestamp": 1728158372,
"turbo": false
}
],
[
"864335:904",
{
"block": 864335,
"burned": 0,
"divisibility": 0,
"etching": "74e72d9c58ce6300807d1ca6343fa95f5fa34f3d7e29fc95a94b553ff4c66b36",
"mints": 0,
"number": 119776,
"premine": 0,
"spaced_rune": "NSZNPZDDFYCT",
"symbol": null,
"terms": {
"amount": 1,
"cap": 72959668,
"height": [
null,
null
],
"offset": [
null,
null
]
},
"timestamp": 1728158372,
"turbo": false
}
],
[
"864335:386",
{
"block": 864335,
"burned": 0,
"divisibility": 0,
"etching": "76e81c2a204074d61869f58ce86bf8ecfe66f1213bd444c4f22c6f638a401ef9",
"mints": 0,
"number": 119775,
"premine": 0,
"spaced_rune": "NTOOWMNTOOWMNTOOWM",
"symbol": null,
"terms": {
"amount": 1,
"cap": 1000000,
"height": [
null,
null
],
"offset": [
null,
null
]
},
"timestamp": 1728158372,
"turbo": false
}
],
[
"864334:4073",
{
"block": 864334,
"burned": 0,
"divisibility": 0,
"etching": "6c132c6b69ff19d3dbbd0165bcf2fb5db9bba717824a3ff93e94e976b7da5f9e",
"mints": 0,
"number": 119774,
"premine": 0,
"spaced_rune": "HIDDEN•SELDOM•DISEASE•WISE",
"symbol": null,
"terms": {
"amount": 1,
"cap": 1127,
"height": [
null,
null
],
"offset": [
null,
null
]
},
"timestamp": 1728158138,
"turbo": false
}
],
[
"864334:4070",
{
"block": 864334,
"burned": 0,
"divisibility": 0,
"etching": "adcbc4dc91e0b354baacb37be52e187fab2cf619c43f0675b26c5e7d58ad1ded",
"mints": 0,
"number": 119773,
"premine": 0,
"spaced_rune": "TYDSJXISYECCOQYYSS",
"symbol": null,
"terms": {
"amount": 1,
"cap": 2361833545833,
"height": [
null,
null
],
"offset": [
null,
null
]
},
"timestamp": 1728158138,
"turbo": false
}
],
[
"864334:762",
{
"block": 864334,
"burned": 0,
"divisibility": 0,
"etching": "259fc5e99770c5d2ed0547571981ad191554282e6ab4b2a6eb4083c392edc1cb",
"mints": 0,
"number": 119772,
"premine": 0,
"spaced_rune": "BEGCOAJVXEHW",
"symbol": null,
"terms": {
"amount": 1,
"cap": 38385326,
"height": [
null,
null
],
"offset": [
null,
null
]
},
"timestamp": 1728158138,
"turbo": false
}
],
[
"864334:433",
{
"block": 864334,
"burned": 0,
"divisibility": 0,
"etching": "4d324233f38c0cbf36bf1a76e161cbe0ff9f0efb6ee78d94dffdd5f16ec7e8ba",
"mints": 0,
"number": 119771,
"premine": 0,
"spaced_rune": "BEDIALAMDARBEDIALAMDAR",
"symbol": null,
"terms": {
"amount": 5,
"cap": 100000,
"height": [
null,
null
],
"offset": [
null,
null
]
},
"timestamp": 1728158138,
"turbo": false
}
],
[
"864334:432",
{
"block": 864334,
"burned": 0,
"divisibility": 0,
"etching": "f7b804462b33fd468ef3b171071094f3498968b0a488d08489e16058d470d809",
"mints": 0,
"number": 119770,
"premine": 0,
"spaced_rune": "RUTHMARTINRUTHMARTIN",
"symbol": null,
"terms": {
"amount": 1,
"cap": 999999,
"height": [
null,
null
],
"offset": [
null,
null
]
},
"timestamp": 1728158138,
"turbo": false
}
],
[
"864334:431",
{
"block": 864334,
"burned": 0,
"divisibility": 0,
"etching": "51ce542a9557a4894b0dfd705d13268682aa16c83e5eee9c5b1ba4d67113def8",
"mints": 0,
"number": 119769,
"premine": 0,
"spaced_rune": "ULTIVERSEULTIVERSE",
"symbol": null,
"terms": {
"amount": 1,
"cap": 7777777,
"height": [
null,
null
],
"offset": [
null,
null
]
},
"timestamp": 1728158138,
"turbo": false
}
],
[
"864334:182",
{
"block": 864334,
"burned": 0,
"divisibility": 0,
"etching": "195dc952cb7c9e8a5c370fe098b4aa1d8bba8225bb4706ee7243b8e3c43f2b32",
"mints": 0,
"number": 119768,
"premine": 0,
"spaced_rune": "NUQHRKVWSYEA",
"symbol": null,
"terms": {
"amount": 1,
"cap": 3063483,
"height": [
null,
null
],
"offset": [
null,
null
]
},
"timestamp": 1728158138,
"turbo": false
}
],
[
"864333:3461",
{
"block": 864333,
"burned": 0,
"divisibility": 0,
"etching": "65078629f16f0ce11a91da3de877a0ac5a25b5ed4c68d0ba3f6a8e75eab5f871",
"mints": 0,
"number": 119767,
"premine": 0,
"spaced_rune": "FMTJRFVGNHVZNUCB",
"symbol": null,
"terms": {
"amount": 1,
"cap": 5541274870406,
"height": [
null,
null
],
"offset": [
null,
null
]
},
"timestamp": 1728157837,
"turbo": false
}
],
[
"864333:3458",
{
"block": 864333,
"burned": 0,
"divisibility": 0,
"etching": "8471194b68cfab89a9d6112caf62f97819172d397e91674ec5413ad8f27b2828",
"mints": 0,
"number": 119766,
"premine": 0,
"spaced_rune": "WEELZZLGHGDRTO",
"symbol": null,
"terms": {
"amount": 1,
"cap": 507317119633,
"height": [
null,
null
],
"offset": [
null,
null
]
},
"timestamp": 1728157837,
"turbo": false
}
],
[
"864333:3440",
{
"block": 864333,
"burned": 0,
"divisibility": 0,
"etching": "90d530d1daf7f1f6ece388a846fe8173a427f71b7e1c5cfc1c035dcd1fc0b017",
"mints": 0,
"number": 119765,
"premine": 0,
"spaced_rune": "MIIOBBPODENFJ",
"symbol": null,
"terms": {
"amount": 1,
"cap": 503174265447,
"height": [
null,
null
],
"offset": [
null,
null
]
},
"timestamp": 1728157837,
"turbo": false
}
],
[
"864333:3437",
{
"block": 864333,
"burned": 0,
"divisibility": 0,
"etching": "5c0d2bbf9543cd50293fd6671d94502fa08c8c6d11431e0eee4ac3aedbdbc5bc",
"mints": 0,
"number": 119764,
"premine": 0,
"spaced_rune": "TASTE•RISING•FULL",
"symbol": null,
"terms": {
"amount": 1,
"cap": 4812,
"height": [
null,
null
],
"offset": [
null,
null
]
},
"timestamp": 1728157837,
"turbo": false
}
],
[
"864333:3434",
{
"block": 864333,
"burned": 0,
"divisibility": 0,
"etching": "1766810d3f53cfce81a4e0620c21e8e4643c7a40936dbafa6e88339c025fb5f6",
"mints": 0,
"number": 119763,
"premine": 0,
"spaced_rune": "REGION•MARK•LOW",
"symbol": null,
"terms": {
"amount": 1,
"cap": 2470,
"height": [
null,
null
],
"offset": [
null,
null
]
},
"timestamp": 1728157837,
"turbo": false
}
],
[
"864333:3433",
{
"block": 864333,
"burned": 0,
"divisibility": 0,
"etching": "f2a6805462cebffc6eb5855d1205dedf9c7f746a7dfd420c153011bb572f58ba",
"mints": 0,
"number": 119762,
"premine": 0,
"spaced_rune": "QHKKEWPTDMNB",
"symbol": null,
"terms": {
"amount": 1,
"cap": 53660832,
"height": [
null,
null
],
"offset": [
null,
null
]
},
"timestamp": 1728157837,
"turbo": false
}
],
[
"864333:3432",
{
"block": 864333,
"burned": 0,
"divisibility": 0,
"etching": "5d2127d84533fc9d486eaec1a2b76b2d349fe63a06a9d14847b667d360af6e19",
"mints": 0,
"number": 119761,
"premine": 0,
"spaced_rune": "IWLUKGYIWMBP",
"symbol": null,
"terms": {
"amount": 1,
"cap": 94339731,
"height": [
null,
null
],
"offset": [
null,
null
]
},
"timestamp": 1728157837,
"turbo": false
}
],
[
"864333:3431",
{
"block": 864333,
"burned": 0,
"divisibility": 0,
"etching": "ac4668d63f66c94515dbc2a74faa9152018758a75432cc085a7e7638a24cbc12",
"mints": 0,
"number": 119760,
"premine": 0,
"spaced_rune": "KWUFVEOJVKGQ",
"symbol": null,
"terms": {
"amount": 1,
"cap": 196312580,
"height": [
null,
null
],
"offset": [
null,
null
]
},
"timestamp": 1728157837,
"turbo": false
}
],
[
"864333:2714",
{
"block": 864333,
"burned": 0,
"divisibility": 0,
"etching": "c642cd4cc7a075c61d3a32b949217990aa91dfc928f12a2cdba1f2f228c699c7",
"mints": 26,
"number": 119759,
"premine": 210000,
"spaced_rune": "BOUNCE•THE•BITCOIN•CAT",
"symbol": "🐱",
"terms": {
"amount": 1000,
"cap": 20790,
"height": [
null,
null
],
"offset": [
null,
null
]
},
"timestamp": 1728157837,
"turbo": true
}
],
[
"864333:2482",
{
"block": 864333,
"burned": 0,
"divisibility": 0,
"etching": "cc2415293c275bea4d73ff8f45f68f269686b819de447f50ec6988ac04a62d1b",
"mints": 0,
"number": 119758,
"premine": 30000000,
"spaced_rune": "BITCAT•IS•IN•CONTROL",
"symbol": "🐈",
"terms": {
"amount": 5000,
"cap": 194000,
"height": [
null,
null
],
"offset": [
null,
null
]
},
"timestamp": 1728157837,
"turbo": true
}
],
[
"864333:2462",
{
"block": 864333,
"burned": 0,
"divisibility": 0,
"etching": "a75f792be155a0b53691289433a6413c1efb1aeaf970f752ee70be3c6e755a06",
"mints": 0,
"number": 119757,
"premine": 0,
"spaced_rune": "FIRST•CAT•EATING•BITCOINER",
"symbol": "🙀",
"terms": {
"amount": 1000,
"cap": 21000,
"height": [
null,
null
],
"offset": [
null,
null
]
},
"timestamp": 1728157837,
"turbo": true
}
],
[
"864333:1142",
{
"block": 864333,
"burned": 0,
"divisibility": 0,
"etching": "7488c2909e2bb5f39fb836ee1e18c23487d078e48e2420cc11776c8d7931fea5",
"mints": 0,
"number": 119756,
"premine": 0,
"spaced_rune": "AI•CRYPTO•AI•CRYPTO",
"symbol": "A",
"terms": {
"amount": 1000,
"cap": 1,
"height": [
null,
null
],
"offset": [
null,
null
]
},
"timestamp": 1728157837,
"turbo": false
}
],
[
"864333:1140",
{
"block": 864333,
"burned": 0,
"divisibility": 0,
"etching": "a024e2d4c4e15eab941376a954bb9176bc95990ba6b2a6d31e5b7c26cd8d7e7c",
"mints": 0,
"number": 119755,
"premine": 0,
"spaced_rune": "SACMKSOKCMPOKMWCLWMCLWCDWC",
"symbol": "c",
"terms": {
"amount": 221,
"cap": 2111111,
"height": [
null,
null
],
"offset": [
null,
null
]
},
"timestamp": 1728157837,
"turbo": false
}
],
[
"864333:1136",
{
"block": 864333,
"burned": 0,
"divisibility": 0,
"etching": "d6358e0601130c5ebbdb535aa93bbe2e752fd7fd6eee8601fe5af29e7ff179e1",
"mints": 0,
"number": 119754,
"premine": 0,
"spaced_rune": "XQOFVAHHLCQR",
"symbol": null,
"terms": {
"amount": 1,
"cap": 94964916,
"height": [
null,
null
],
"offset": [
null,
null
]
},
"timestamp": 1728157837,
"turbo": false
}
],
[
"864333:1135",
{
"block": 864333,
"burned": 0,
"divisibility": 0,
"etching": "62aa2bd48b0eb8a1c3bb090c6129bdc52a2348f3b8e25a2e2eeaa27313e242af",
"mints": 0,
"number": 119753,
"premine": 0,
"spaced_rune": "YEPWCVNODTII",
"symbol": null,
"terms": {
"amount": 1,
"cap": 39185064,
"height": [
null,
null
],
"offset": [
null,
null
]
},
"timestamp": 1728157837,
"turbo": false
}
],
[
"864333:1134",
{
"block": 864333,
"burned": 0,
"divisibility": 0,
"etching": "e3e6a144d3ac57d35f7f141f79ea818bd26a78bf900c2d0aeaa2a95ce68f8c9e",
"mints": 0,
"number": 119752,
"premine": 0,
"spaced_rune": "SDFGJUJTYHTGRSFAD",
"symbol": null,
"terms": {
"amount": 1,
"cap": 5,
"height": [
null,
null
],
"offset": [
null,
null
]
},
"timestamp": 1728157837,
"turbo": false
}
],
[
"864333:1133",
{
"block": 864333,
"burned": 0,
"divisibility": 0,
"etching": "97600a89179c0bfd4b7c69bc5f4e9fc2f206124fbc08d4872f18ac6be29a525e",
"mints": 0,
"number": 119751,
"premine": 0,
"spaced_rune": "XQEKAAGEYDXY",
"symbol": null,
"terms": {
"amount": 1,
"cap": 147617461,
"height": [
null,
null
],
"offset": [
null,
null
]
},
"timestamp": 1728157837,
"turbo": false
}
],
[
"864333:1131",
{
"block": 864333,
"burned": 0,
"divisibility": 0,
"etching": "8ecabca3a2b1518c67c5ee41c93e7874d1117edfd0b36e46ea68eb83e6f9eaad",
"mints": 0,
"number": 119750,
"premine": 0,
"spaced_rune": "XFHSGMZJEUML",
"symbol": null,
"terms": {
"amount": 1,
"cap": 1014672,
"height": [
null,
null
],
"offset": [
null,
null
]
},
"timestamp": 1728157837,
"turbo": false
}
],
[
"864333:1130",
{
"block": 864333,
"burned": 0,
"divisibility": 0,
"etching": "77b1518d7ad77d89118eeb8eb92c120e1732d2e7ce9d6780cda180f5f4968df6",
"mints": 0,
"number": 119749,
"premine": 0,
"spaced_rune": "DJLNUHRYYTGR",
"symbol": null,
"terms": {
"amount": 1,
"cap": 146717679,
"height": [
null,
null
],
"offset": [
null,
null
]
},
"timestamp": 1728157837,
"turbo": false
}
],
[
"864333:1129",
{
"block": 864333,
"burned": 0,
"divisibility": 0,
"etching": "4da09c158447950fabd281c7910c6e3f251b9b9a98ab7058e2f4b26304e332ee",
"mints": 0,
"number": 119748,
"premine": 0,
"spaced_rune": "CBAQVALKVMYP",
"symbol": null,
"terms": {
"amount": 1,
"cap": 181932658,
"height": [
null,
null
],
"offset": [
null,
null
]
},
"timestamp": 1728157837,
"turbo": false
}
],
[
"864333:1128",
{
"block": 864333,
"burned": 0,
"divisibility": 0,
"etching": "b947075130f5a5f93a5cdfa9a216c76b761ff7cd2fb7ca677b3d00a3ca5d53e0",
"mints": 0,
"number": 119747,
"premine": 0,
"spaced_rune": "POJSRGWQBBWQ",
"symbol": null,
"terms": {
"amount": 1,
"cap": 100105873,
"height": [
null,
null
],
"offset": [
null,
null
]
},
"timestamp": 1728157837,
"turbo": false
}
],
[
"864333:1127",
{
"block": 864333,
"burned": 0,
"divisibility": 0,
"etching": "a356dd06600bb163cb4d68bbe601f83d987c3c2cd456e3784616ab297d1843c0",
"mints": 0,
"number": 119746,
"premine": 0,
"spaced_rune": "FMPQPSLKENKY",
"symbol": null,
"terms": {
"amount": 1,
"cap": 82531312,
"height": [
null,
null
],
"offset": [
null,
null
]
},
"timestamp": 1728157837,
"turbo": false
}
],
[
"864333:1126",
{
"block": 864333,
"burned": 0,
"divisibility": 0,
"etching": "b6ecdb27bb269949f58ace2ba162726483070e80c140dc60329b5fdbbd3e6395",
"mints": 0,
"number": 119745,
"premine": 0,
"spaced_rune": "GOARBTCEASGJ",
"symbol": null,
"terms": {
"amount": 1,
"cap": 99967467,
"height": [
null,
null
],
"offset": [
null,
null
]
},
"timestamp": 1728157837,
"turbo": false
}
],
[
"864333:1125",
{
"block": 864333,
"burned": 0,
"divisibility": 0,
"etching": "abf680ed211d18428ddda208f164539fbf662705bd88d4041575c53e655ed794",
"mints": 0,
"number": 119744,
"premine": 0,
"spaced_rune": "MNBIUEEAKPBJ",
"symbol": null,
"terms": {
"amount": 1,
"cap": 168164931,
"height": [
null,
null
],
"offset": [
null,
null
]
},
"timestamp": 1728157837,
"turbo": false
}
],
[
"864333:1124",
{
"block": 864333,
"burned": 0,
"divisibility": 0,
"etching": "74e290bc2ed6b39c887ab3b456f86d91edbadb829936c63bb166d42233527491",
"mints": 0,
"number": 119743,
"burned": 0,
"divisibility": 0,
"etching": "74e290bc2ed6b39c887ab3b456f86d91edbadb829936c63bb166d42233527491",
"mints": 0,
"number": 119743,
"divisibility": 0,
"etching": "74e290bc2ed6b39c887ab3b456f86d91edbadb829936c63bb166d42233527491",
"mints": 0,
"number": 119743,
"premine": 0,
"spaced_rune": "CWTYCFSOTBSU",
"symbol": null,
"etching": "74e290bc2ed6b39c887ab3b456f86d91edbadb829936c63bb166d42233527491",
"mints": 0,
"number": 119743,
"premine": 0,
"spaced_rune": "CWTYCFSOTBSU",
"symbol": null,
"terms": {
"amount": 1,
"cap": 29807122,
"mints": 0,
"number": 119743,
"premine": 0,
"spaced_rune": "CWTYCFSOTBSU",
"symbol": null,
"terms": {
"amount": 1,
"cap": 29807122,
"premine": 0,
"spaced_rune": "CWTYCFSOTBSU",
"symbol": null,
"terms": {
"amount": 1,
"cap": 29807122,
"height": [
null,
null
"terms": {
"amount": 1,
"cap": 29807122,
"height": [
null,
null
"height": [
null,
null
null
],
],
"offset": [
null,
null
]
},
"timestamp": 1728157837,
"turbo": false
}
]
],
"more": true,
"prev": null,
"next": 1
}
GET
/sat/<SAT>
Description
Returns details about a specific satoshi. Requires index with --index-sats
flag.
Пример
curl -s -H "Accept: application/json" \
http://0.0.0.0:80/sat/2099994106992659
{
"block": 3891094,
"charms": [],
"cycle": 3,
"decimal": "3891094.16797",
"degree": "3°111094′214″16797‴",
"epoch": 18,
"inscriptions": [],
"name": "satoshi",
"number": 2099994106992659,
"offset": 16797,
"percentile": "99.99971949060254%",
"period": 1930,
"rarity": "common",
"satpoint": null,
"timestamp": 3544214021
}
GET
/status
Description
Returns details about the server installation and index.
Пример
curl -s -H "Accept: application/json" \
http://0.0.0.0:80/status
{
"address_index": true,
"blessed_inscriptions": 76332641,
"chain": "mainnet",
"cursed_inscriptions": 472043,
"height": 864351,
"initial_sync_time": {
"secs": 59213,
"nanos": 979632000
},
"inscriptions": 76804684,
"lost_sats": 0,
"minimum_rune_for_next_block": "PVHGFEDCAZZ",
"rune_index": true,
"runes": 119811,
"sat_index": false,
"started": "2024-09-27T17:43:39.291876400Z",
"transaction_index": false,
"unrecoverably_reorged": false,
"uptime": {
"secs": 709843,
"nanos": 910346200
}
}
GET
/tx/<TRANSACTION_ID>
Description
Returns details about the specified transaction.
Пример
curl -s -H "Accept: application/json" \
http://0.0.0.0:80/tx/99811de396ff10152cdfc9588d9750d0151501f081df2e56071c42dc3532b743
{
"chain": "mainnet",
"etching": null,
"inscription_count": 1,
"transaction": {
"version": 2,
"lock_time": 0,
"input": [
{
"previous_output": "7d154f826f68e86370105641e3b5b1c6afc697613b8dfce48e4e40db01e8317a:1",
"script_sig": "",
"sequence": 4294967295,
"witness": [
"e68e67c60dfc06f570dfa8fe880cc09f1041a9b10b285743dd72b8f2e672987f7176ced40d46d279385c148a0c39b9914b91d9d503b7388791f6758884f0c2f4",
"200c97fe0e7bb78d8dd7447bc098386c61248e1e9a7dfd263fd828c5373b945735ac0063036f7264010109696d6167652f706e67004d080289504e470d0a1a0a0000000d49484452000000360000003608060000008c456add000000017352474200aece1ce900000306494441546881ed9abf4e1b4110c63f477903a4b4a6a04186c21532a54de1c214a432051406d14471830405a2b25cb8701344e75c43a4d0514041112843a8281c642972111ec0cfb029ec3976d7b7e7fd670cd1fe24747b6b666ebf9bbdd9b9b581402010083c93f1e5a8130d18b5776b73defcdae26500a56a8df1e73fbe7f1d3acf6404ff2f29fe9d0f27c5fcba705cdbdcc1dae60ed8086028aad1aea0d1ae18f96612ba76ef8daea24131bf8edb874b004381fd6e0f8c3136bfb46aec4bb6fbfbfba7b6ad97881d1d6e6446471c1d6e089f2d2c2f627e69d56850c0b82853bc08234ad51a00e0e63c12fa49dcf1fe95961f5ed4d3e31d9e1eef70bc7f35f6cca6e155188f2c0e001aed4aaab84e34609d6820881af51b271b6f998932a32c88a20800fd6e2f6e2709e4138b8b28600ac94397b4ece82a0a98e25424f8082e2c2fc66d1abc0cf59fd64f9cd6ba99450c508bf3c1d423362bbc444c2ea9542465ca69613d879bad0b461506210d5cf09dcd1562f17bdb07906d937cb8240f2b233e42095150facce60a8c4f202a7c88339e8aa56a8d513d68220a1866452a942962fcda46647305e7c462953c14d348ebaede3e5ca68a22b2b9020060b73627bceee862953c6ece23a1a230b505c48a24293a24cc164d44012b610917d57e0664db490bb52dffed3a1684bd3582b0b78695b0848ca5bdced0abfe246692ee6dd730575b138c23d6eff650ccaf27550d13a346b60afb18bea4b2ad15ad8a60be524f98562a9f6c643bd13fefd35698ed3396d9db3e00301ca83458a6f88b074db60adf71db657bc069974ab53325fdcf589fce0be769fd049fbe7c7e5d7b1eb6627ce26b6b20b1df568c6bb4802944eca523a3c25a98bc81f35a0411b60b74da9e8792d3fa8970feebcf3700c0d9f5bdcd3052319ec726a23ad1403857a5eeadf20a0344812e3b5480a1b049a2642180d957b25be515e6539c16cdd6052b556bacd9ba10165efaeaa7130dd8e8cec7fd36d7e17db8f8d17ec66867898e141dfe8ed29472e1ecfa3e2347ce066d611f3fe49fdb29a5ce56790580dbaf02489cad7d20100804026f9d7f6be4942aeb43f7890000000049454e44ae42608268",
"c10c97fe0e7bb78d8dd7447bc098386c61248e1e9a7dfd263fd828c5373b945735"
]
}
],
"output": [
{
"value": 546,
"script_pubkey": "51208a2ade400b30af7cae07e30a9afa8ac49f54fb3ff7d0f42bbf4a66578a34c280"
}
]
},
"txid": "99811de396ff10152cdfc9588d9750d0151501f081df2e56071c42dc3532b743"
}
Recursive Endpoints
See Recursion.
Ordinal обозреватель
The ord
binary includes a block explorer. We host an instance of the block explorer on mainnet at ordinals.com, on signet at signet.ordinals.com, and on testnet at testnet.ordinals.com. As of version 0.16.0 the wallet needs ord server
running in the background. This is analogous to how bitcoin-cli
needs bitcoind
running in the background.
Запуск обозревателя
Сервер может быть запущен локально с помощью команды:
ord server
Для указания порта добавьте --http-port
flag:
ord server --http-port 8080
The JSON-API endpoints are enabled by default, to disable them add the --disable-json-api
flag (see here for more info):
ord server --disable-json-api
Поиск
Поле поиска принимает различные представления объектов.
Блоки
Блоки можно искать по хэшу, например, блок genesis:
000000000019d6689c085ae165831e934ff763ae46a2a6c172b3f1b60a8ce26f
Транзакции
Транзакции можно искать по хэшу, например, транзакция coinbase на блоке genesis:
4a5e1e4baab89f3a32518a88c31bc87f618f76673e2cc77ab2127b7afdeda33b
Выходы
Transaction outputs can be searched by outpoint, for example, the only output of the genesis block coinbase transaction:
4a5e1e4baab89f3a32518a88c31bc87f618f76673e2cc77ab2127b7afdeda33b:0
Sats
Sats можно искать по целому числу, по их положению во всем запасе Биткоинов:
По десятичному числу - по блоку и смещению внутри блока:
По степени, их циклу, блокам с момента последнего халвинга, блокам с момента последней корректировки сложности и смещению внутри их блока:
По названию, их базовое представление 26 с использованием букв от "a" до "z":
Или по процентному соотношению - процент от количества Биткоинов, которые были или будут выпущены при их майнинге:
Wallet
На отдельные sats можно наносить надписи с произвольным содержанием, создавая цифровые артефакты, основанные на Биткоинах, которые можно хранить в биткоин-кошельке и передавать с помощью биткоин-транзакций. Надписи столь же долговечны, неизменяемы, безопасны и децентрализованы, как и сам Биткоин.
Для работы с надписями требуется Bitcoin full node, позволяющий видеть текущее состояние блокчейна Bitcoin, и кошелек, способный создавать надписи и осуществлять sat контроль при построении транзакций для отправки надписей на другой кошелек.
Bitcoin Core предоставляет как Bitcoin full node, так и кошелек. Однако кошелек Bitcoin Core не может создавать надписи и не осуществляет sat контроль.
Для этого требуется ord
, ordinal utility. ord
не реализует собственный кошелек, поэтому подкоманды ord wallet
взаимодействуют с кошельками Bitcoin Core.
В этом руководстве рассматриваются:
- Установка Bitcoin Core
- Синхронизация блокчейна Bitcoin
- Создание кошелька Bitcoin Core
- Использование
ord wallet receive
для получения sats - Создание надписей с помощью
ord wallet inscribe
- Отправка надписей с помощью
ord wallet send
- Получение надписей с помощью
ord wallet receive
- Batch inscribing with
ord wallet inscribe --batch
Получение помощи
Если вы застряли, попробуйте обратиться за помощью к Ordinals Discord Server, или проверить GitHub на наличие проблем и для обсуждений.
Установка Bitcoin Core
Установка Bitcoin Core доступна на сайте bitcoincore.org на странице загрузки.
Making inscriptions requires Bitcoin Core 28 or newer.
This guide does not cover installing Bitcoin Core in detail. Once Bitcoin Core is installed, you should be able to run bitcoind -version
successfully from the command line. Do NOT use bitcoin-qt
.
Настройка Bitcoin Core
ord
requires Bitcoin Core's transaction index and rest interface.
Чтобы настроить Bitcoin Core node на ведение индекса транзакций, добавьте следующее в bitcoin.conf
:
txindex=1
Или запустите bitcoind
с помощью -txindex
:
bitcoind -txindex
Details on creating or modifying your bitcoin.conf
file can be found here.
Синхронизация блокчейна Bitcoin
Чтобы синхронизировать сеть, выполните команду:
bitcoind -txindex
...и оставьте его запущенным до получения getblockcount
:
bitcoin-cli getblockcount
совпадает с количеством блоков в обозревателе блоков, например в mempool.space block explorer. ord
взаимодействует с bitcoind
, поэтому вы должны оставитьbitcoind
включенным в фоновом режиме, пока используете ord
.
The blockchain takes about 600GB of disk space. If you have an external drive you want to store blocks on, use the configuration option blocksdir=<external_drive_path>
. This is much simpler than using the datadir
option because the cookie file will still be in the default location for bitcoin-cli
and ord
to find.
Устранение проблем
Make sure you can access bitcoind
with bitcoin-cli -getinfo
and that it is fully synced.
If bitcoin-cli -getinfo
returns Could not connect to the server
, bitcoind
is not running.
Make sure rpcuser
, rpcpassword
, or rpcauth
are NOT set in your bitcoin.conf
file. ord
requires using cookie authentication. Make sure there is a file .cookie
in your bitcoin data directory.
If bitcoin-cli -getinfo
returns Could not locate RPC credentials
, then you must specify the cookie file location. If you are using a custom data directory (specifying the datadir
option), then you must specify the cookie location like bitcoin-cli -rpccookiefile=<your_bitcoin_datadir>/.cookie -getinfo
. When running ord
you must specify the cookie file location with --cookie-file=<your_bitcoin_datadir>/.cookie
.
Make sure you do NOT have disablewallet=1
in your bitcoin.conf
file. If bitcoin-cli listwallets
returns Method not found
then the wallet is disabled and you won't be able to use ord
.
Make sure txindex=1
is set. Run bitcoin-cli getindexinfo
and it should return something like
{
"txindex": {
"synced": true,
"best_block_height": 776546
}
}
If it only returns {}
, txindex
is not set. If it returns "synced": false
, bitcoind
is still creating the txindex
. Wait until "synced": true
before using ord
.
If you have maxuploadtarget
set it can interfere with fetching blocks for ord
index. Either remove it or set whitebind=127.0.0.1:8333
.
Установка ord
ord
написана на языке Rust и может быть собрана из исходного кода. Предварительно собранные бинарные файлы доступны на странице релизов.
Вы можете установить последний предварительно собранный двоичный файл из командной строки с помощью команды:
curl --proto '=https' --tlsv1.2 -fsLS https://ordinals.com/install.sh | bash -s
После установки ord
вы сможете выполнить команду:
ord --version
В результате которой будет выведен номер версии ord
.
Creating a Wallet
ord
uses bitcoind
to manage private keys, sign transactions, and broadcast transactions to the Bitcoin network. Additionally the ord wallet
requires ord server
running in the background. Make sure these programs are running:
bitcoind -txindex
ord server
To create a wallet named ord
, the default, for use with ord wallet
, run:
ord wallet create
This will print out your seed phrase mnemonic, store it somewhere safe.
{
"mnemonic": "dignity buddy actor toast talk crisp city annual tourist orient similar federal",
"passphrase": ""
}
If you want to specify a different name or use an ord server
running on a non-default URL you can set these options:
ord wallet --name foo --server-url http://127.0.0.1:8080 create
To see all available wallet options you can run:
ord wallet help
Restoring and Dumping Wallet
The ord
wallet uses descriptors, so you can export the output descriptors and import them into another descriptor-based wallet. To export the wallet descriptors, which include your private keys:
$ ord wallet dump
==========================================
= THIS STRING CONTAINS YOUR PRIVATE KEYS =
= DO NOT SHARE WITH ANYONE =
==========================================
{
"wallet_name": "ord",
"descriptors": [
{
"desc": "tr([551ac972/86'/1'/0']tprv8h4xBhrfZwX9o1XtUMmz92yNiGRYjF9B1vkvQ858aN1UQcACZNqN9nFzj3vrYPa4jdPMfw4ooMuNBfR4gcYm7LmhKZNTaF4etbN29Tj7UcH/0/*)#uxn94yt5",
"timestamp": 1296688602,
"active": true,
"internal": false,
"range": [
0,
999
],
"next": 0
},
{
"desc": "tr([551ac972/86'/1'/0']tprv8h4xBhrfZwX9o1XtUMmz92yNiGRYjF9B1vkvQ858aN1UQcACZNqN9nFzj3vrYPa4jdPMfw4ooMuNBfR4gcYm7LmhKZNTaF4etbN29Tj7UcH/1/*)#djkyg3mv",
"timestamp": 1296688602,
"active": true,
"internal": true,
"range": [
0,
999
],
"next": 0
}
]
}
An ord
wallet can be restored from a mnemonic:
ord wallet restore --from mnemonic
Type your mnemonic and press return.
To restore from a descriptor in descriptor.json
:
cat descriptor.json | ord wallet restore --from descriptor
To restore from a descriptor in the clipboard:
ord wallet restore --from descriptor
Paste the descriptor into the terminal and press CTRL-D on unix and CTRL-Z on Windows.
Получение sats
Надписи делаются на отдельных sats с использованием обычных Биткоин-транзакций, комиссии которых оплачиваются в sats, поэтому вашему кошельку потребуется некоторое количество sats.
Получите новый адрес из кошелька ord
, выполнив команду:
ord wallet receive
И отправьте на него немного средств.
Вы можете посмотреть ожидающие транзакции, выполнив команду:
ord wallet transactions
Как только транзакция подтвердится, вы сможете увидеть выходные данные транзакций с помощью команды ord wallet outputs
.
Создание контента для надписи
Sats могут содержать любые надписи, но кошелек ord
поддерживает только те типы надписей, которые могут быть отображены в проводнике блоков ord
.
Кроме того, надписи включаются в транзакции, поэтому чем больше содержимое, тем выше комиссия за транзакцию с надписью.
Содержание надписи входит в состав свидетелей транзакций, которые получают льготу свидетеля. Чтобы рассчитать приблизительную комиссию, которую заплатит транзакция inscribe, разделите размер надписи на четыре и умножьте на размер комиссии.
Транзакции с надписями должны быть менее 400 000 весовых единиц, иначе они не будут переданы Bitcoin Core. Один байт содержимого надписи стоит одну весовую единицу. Поскольку транзакция с надписью включает в себя не только содержимое надписи, ограничьте размер транзакции с надписью до менее чем 400 000 весовых единиц. 390 000 весовых единиц должно быть безопасно.
Создание надписей
Чтобы создать надпись с контентом FILE
, выполните команду:
ord wallet inscribe --fee-rate FEE_RATE --file FILE
Ord выдаст два ID транзакций, один для транзакции commit, другой для транзакции reveal, а также ID надписи. ID надписей имеют вид TXIDiN
, где TXID
- ID транзакции reveal, а N - индекс надписи в транзакции reveal.
Транзакция commit фиксирует tapscript, содержащий содержимое надписи, а транзакция reveal использует этот tapscript, раскрывая содержимое по цепочке и прописывая его на первом sat ввода, содержащем соответствующий tapscript.
Дождитесь, пока транзакция reveal будет добыта. Проверить статус транзакций commit и reveal можно с помощью mempool.space block explorer.
После того как транзакция reveal будет добыта, при запуске должен быть выведен ID надписи:
ord wallet inscriptions
Parent-Child Inscriptions
Parent-child inscriptions enable what is colloquially known as collections, see provenance for more information.
To make an inscription a child of another, the parent inscription has to be inscribed and present in the wallet. To choose a parent run ord wallet inscriptions
and copy the inscription id (<PARENT_INSCRIPTION_ID>
).
Now inscribe the child inscription and specify the parent like so:
ord wallet inscribe --fee-rate FEE_RATE --parent <PARENT_INSCRIPTION_ID> --file CHILD_FILE
This relationship cannot be added retroactively, the parent has to be present at inception of the child.
Отправка надписей
Попросите получателя сгенерировать новый адрес, выполнив команду:
ord wallet receive
Отправьте надпись запуском команды:
ord wallet send --fee-rate <FEE_RATE> <ADDRESS> <INSCRIPTION_ID>
Посмотреть транзакцию, находящуюся в ожидании, можно с помощью команды:
ord wallet transactions
Как только транзакция отправки подтвердится, получатель может подтвердить получение, выполнив команду:
ord wallet inscriptions
Sending Runes
Попросите получателя сгенерировать новый адрес, выполнив команду:
ord wallet receive
Send the runes by running:
ord wallet send --fee-rate <FEE_RATE> <ADDRESS> <RUNES_AMOUNT>
Where RUNES_AMOUNT
is the number of runes to send, a :
character, and the name of the rune. For example if you want to send 1000 of the EXAMPLE rune, you would use 1000:EXAMPLE
.
ord wallet send --fee-rate 1 SOME_ADDRESS 1000:EXAMPLE
Посмотреть транзакцию, находящуюся в ожидании, можно с помощью команды:
ord wallet transactions
Once the send transaction confirms, the recipient can confirm receipt with:
ord wallet balance
Получение надписей
Сгенерируйте новый адрес получения с помощью команды:
ord wallet receive
Отправитель может передать надпись на ваш адрес с помощью:
ord wallet send --fee-rate <FEE_RATE> ADDRESS INSCRIPTION_ID
Посмотреть транзакцию, находящуюся в ожидании, можно с помощью команды:
ord wallet transactions
Once the send transaction confirms, you can confirm receipt by running:
ord wallet inscriptions
Batch Inscribing
Multiple inscriptions can be created at the same time using the pointer field. This is especially helpful for collections, or other cases when multiple inscriptions should share the same parent, since the parent can passed into a reveal transaction that creates multiple children.
To create a batch inscription using a batchfile in batch.yaml
, run the following command:
ord wallet batch --fee-rate 21 --batch batch.yaml
Example batch.yaml
# example batch file
# inscription modes:
# - `same-sat`: inscribe on the same sat
# - `satpoints`: inscribe on the first sat of specified satpoint's output
# - `separate-outputs`: inscribe on separate postage-sized outputs
# - `shared-output`: inscribe on a single output separated by postage
mode: separate-outputs
# parent inscriptions:
parents:
- 6ac5cacb768794f4fd7a78bf00f2074891fce68bd65c4ff36e77177237aacacai0
# postage for each inscription:
postage: 12345
# allow reinscribing
reinscribe: true
# sat to inscribe on, can only be used with `same-sat`:
# sat: 5000000000
# rune to etch (optional)
etching:
# rune name
rune: THE•BEST•RUNE
# allow subdividing super-unit into `10^divisibility` sub-units
divisibility: 2
# premine
premine: 1000.00
# total supply, must be equal to `premine + terms.cap * terms.amount`
supply: 10000.00
# currency symbol
symbol: $
# mint terms (optional)
terms:
# amount per mint
amount: 100.00
# maximum number of mints
cap: 90
# mint start and end absolute block height (optional)
height:
start: 840000
end: 850000
# mint start and end block height relative to etching height (optional)
offset:
start: 1000
end: 9000
# future runes protocol changes may be opt-in. this may be for a variety of
# reasons, including that they make light client validation harder, or simply
# because they are too degenerate.
#
# setting `turbo` to `true` opts in to these future protocol changes,
# whatever they may be.
turbo: true
# inscriptions to inscribe
inscriptions:
# path to inscription content
- file: mango.avif
# inscription to delegate content to (optional)
delegate: 6ac5cacb768794f4fd7a78bf00f2074891fce68bd65c4ff36e77177237aacacai0
# destination (optional, if no destination is specified a new wallet change address will be used)
destination: bc1qw508d6qejxtdg4y5r3zarvary0c5xw7kv8f3t4
# inscription metadata (optional)
metadata:
title: Delicious Mangos
description: >
Lorem ipsum dolor sit amet, consectetur adipiscing elit. Aliquam semper,
ligula ornare laoreet tincidunt, odio nisi euismod tortor, vel blandit
metus est et odio. Nullam venenatis, urna et molestie vestibulum, orci
mi efficitur risus, eu malesuada diam lorem sed velit. Nam fermentum
dolor et luctus euismod.
- file: token.json
# inscription metaprotocol (optional)
metaprotocol: DOPEPROTOCOL-42069
- file: tulip.png
destination: bc1pdqrcrxa8vx6gy75mfdfj84puhxffh4fq46h3gkp6jxdd0vjcsdyspfxcv6
metadata:
author: Satoshi Nakamoto
- file: gallery.png
# gallery items
gallery:
- a4676e57277b70171d69dc6ad2781485b491fe0ff5870f6f6b01999e7180b29ei0
- a4676e57277b70171d69dc6ad2781485b491fe0ff5870f6f6b01999e7180b29ei3
Splitting
Complex transactions can be created using the ord wallet split
command.
The split
command takes a YAML configuration file, which specifies any number of outputs to be created, their bitcoin value, and their value of any number of runes. It does not currently allow assigning inscriptions to outputs.
The split
command can be used to split cardinal, bitcoin-only outputs for transacting, distribute runes to large numbers of recipients in a single transaction.
To send a split transaction using the configuration in splits.yaml
, run the following command:
ord wallet split --fee-rate 21 --splits split.yaml
Example splits.yaml
--------------------`
# example split file
# output fields:
# address: output recipient bitcoin address
# value: output bitcoin value (optional, defaults to minimal-non dust value for `address`)
# runes: output rune value map (values respect rune divisibility)
outputs:
- address: bc1p5d7rjq7g6rdk2yhzks9smlaqtedr4dekq08ge8ztwac72sfr9rusxg3297
value: 10 sat
runes:
UNCOMMON•GOODS: 1234
GRIEF•WAGE: 5000000
- address: 3J98t1WpEZ73CNmQviecrnyiWrnqRhWNLy
runes:
HELLO•WORLD: 22.5
Коллекционирование
В настоящее время, ord является единственным кошельком, поддерживающим функции sat-control и sat-selection, необходимые для безопасного хранения и отправки редких сатов и надписей, далее ordinals.
Рекомендуемый способ отправки, получения и хранения ordinals - ord
, но если быть осторожным, то можно безопасно хранить, а в некоторых случаях и отправлять ordinals с помощью других кошельков.
Как правило, получение ordinals на неподдерживаемый кошелек не представляет опасности. Ordinals могут быть отправлены на любой биткоин-адрес и безопасны до тех пор, пока содержащий их UTXO не будет потрачен. Однако если этот кошелек будет использоваться для отправки биткоинов, он может выбрать UTXO, содержащий ordinal, в качестве входного, и отправить надпись или потратить ее на оплату комиссии.
В руководстве содержится информация по созданию ord
-совместимого кошелька с Sparrow Wallet.
Обратите внимание, что если вы следуете этому руководству, то не должны использовать созданный вами кошелек для отправки BTC, если только вы не проводите отправку вручную, чтобы избежать отправки ordinals.
Коллекционирование надписей и Ordinals с помощью Sparrow Wallet
Пользователи, которые не могут или не успели создать кошелек ord, могут получать надписи и ordinals с помощью альтернативных биткоин-кошельков, при условии, что они очень внимательно относятся к тому, как тратят средства с этого кошелька.
В данном руководстве приведены основные шаги по созданию кошелька с помощью Sparrow Wallet, который совместим с ord
и может быть впоследствии импортирован в ord
⚠️⚠️ Внимание!! ⚠️⚠️
Как правило, при таком подходе следует использовать этот кошелек с программой Sparrow в качестве кошелька только для приема транзакций.
Не тратьте сатоши из этого кошелька, если не уверены, что знаете, что делаете. Если вы не прислушаетесь к этому предупреждению, то очень легко можете случайно потерять доступ к своим ordinals и надписям.
Установка кошелька и получение
Загрузите Sparrow Wallet со страницы для вашей конкретной операционной системы.
Выберите File -> New Wallet
и создайте новый кошелек с названием ord
.
Измените Script Type
на Taproot (P2TR)
и выберите опцию New or Imported Software Wallet
.
Выберите Use 12 Words
и нажмите Generate New
. Оставьте блан пароля пустой.
Для вас будет сгенерирована новая начальная фраза BIP39 из 12 слов. Запишите ее в надежном месте, так как это ваш запасной вариант для получения доступа к кошельку. НИКОГДА не сообщайте и не показывайте эту seed-фразу никому другому.
После того как вы записали seed-фразу, нажмите кнопку Confirm Backup
.
Вновь введите записанную вами seed-фразу и нажмите кнопку Create Keystore
.
Нажмите кнопку Import Keystore
.
Нажмите кнопку Apply
. При необходимости добавьте пароль для кошелька.
Теперь у вас есть кошелек, который совместим с ord
и может быть импортирован в ord
с помощью seed-фразы BIP39. Чтобы получить ordinals или надписи, перейдите на вкладку Receive
и скопируйте новый адрес.
Каждый раз для получения необходимо использовать совершенно новый адрес, а не повторно использовать существующие.
Обратите внимание, что биткоин отличается от некоторых других блокчейн кошельков тем, что этот кошелек может генерировать неограниченное количество новых адресов. Сгенерировать новый адрес можно, нажав на кнопку Get Next Address
. Все адреса можно посмотреть на вкладке Addresses
приложения.
К каждому адресу можно добавить лейбл, чтобы отслеживать, для чего он был использован.
Проверка/просмотр полученных надписей
После получения надписи вы увидите новую транзакцию на вкладке Transactions
в Sparrow, а также новый UTXO на вкладке UTXOs
.
Первоначально эта транзакция может иметь статус "Unconfirmed", и вам придется подождать, пока она будет добыта в блокчейне биткоина, прежде чем она будет полностью получена.
Для отслеживания статуса транзакции можно щелкнуть на ней правой кнопкой мыши, выбрать Copy Transaction ID
и затем вставить этот ID транзакции в mempool.space.
После подтверждения транзакции вы можете проверить и просмотреть свою надпись, перейдя на вкладку UTXOs
, найдя UTXO, который вы хотите проверить, щелкнув правой кнопкой мыши на Output
и выбрав Copy Transaction Output
. Затем этот идентификатор транзакционного выхода можно вставить в поиск ordinals.com.
Заморозка UTXO
Как объяснялось выше, каждая из ваших надписей хранится в Unspent Transaction Output (UTXO). Вы должны быть очень осторожны, чтобы случайно не потратить свои надписи, и один из способов затруднить это - заморозить UTXO.
Для этого перейдите на вкладку UTXOs
, найдите UTXO, который необходимо заморозить, щелкните правой кнопкой мыши на Output
и выберите Freeze UTXO
.
Этот UTXO (Inscription) теперь нельзя расходовать в Sparrow Wallet до тех пор, пока вы его не разморозите.
Импорт в кошелек ord
For details on setting up Bitcoin Core and the ord
wallet check out the Wallet Guide
При настройке ord
вместо того, чтобы запускать команду ord wallet create
для создания нового кошелька, можно импортировать существующий кошелек с помощью команды ord wallet restore "BIP39 SEED PHRASE"
, используя seed-фразу, созданную с помощью Sparrow Wallet.
В настоящее время существует ошибка из-за которой импортированный кошелек не может быть автоматически пересканирован на блокчейн. Чтобы решить эту проблему, необходимо вручную запустить повторное сканирование с помощью программы bitcoin core cli: bitcoin-cli -rpcwallet=ord rescanblockchain 767430
Затем вы можете проверить количество надписей в кошельке, используя команду ord wallet inscriptions
Обратите внимание, что если вы ранее создали кошелек с помощью ord
, то у вас уже будет кошелек с именем по умолчанию, и вам необходимо будет дать импортируемому кошельку другое имя. Для ссылки на другой кошелек можно использовать параметр --wallet
во всех командах ord
, например:
ord wallet --name ord_from_sparrow wallet restore --from mnemonic
ord wallet --name ord_from_sparrow wallet inscriptions
bitcoin-cli -rpcwallet=ord_from_sparrow rescanblockchain 767430
Отправка надписей с помощью Sparrow Wallet
⚠️⚠️ Внимание ⚠️⚠️
Хотя настоятельно рекомендуется установить bitcoin core node и запустить программное обеспечение ord
, существуют некоторые ограниченные способы безопасной отправки надписей из Sparrow Wallet. Обратите внимание, что делать это не рекомендуется и следует только в том случае, если вы полностью понимаете, что делаете.
Использование программы ord
устранит большую часть сложностей, которые мы здесь описываем, поскольку она способна автоматически и безопасно обрабатывать отправку надписей в простой форме.
⚠️⚠️ Дополнительное предупреждение ⚠️⚠️
Не используйте свой sparrow inscriptions wallet для общей отправки биткоинов. Вы можете создать отдельный кошелек в Sparrow, если вам нужно совершать обычные транзакции с биткойнами, и держать кошелек для надписей отдельно.
Модель UTXO биткоина
Перед отправкой любой транзакции важно хорошо представлять себе систему вывода Unspent Transaction Output (UTXO) в биткоине. Принцип работы биткоина фундаментально отличается от многих других блокчейнов, таких как Ethereum. В Ethereum, как правило, у вас есть один адрес, на котором вы храните ETH, и вы не можете различать ни один из ETH - все они просто представляют собой единое значение общей суммы, находящейся на этом адресе. Биткоин работает совсем по-другому: для каждого приема мы генерируем новый адрес в кошельке, и каждый раз, когда вы получаете саты на адрес в кошельке, вы создаете новый UTXO. Каждый UTXO можно видеть и управлять им индивидуально. Вы можете выбрать конкретные UTXO, которые хотите потратить, и не тратить определенные UTXO.
Некоторые биткоин-кошельки не предоставляют такой детализации, а просто показывают суммарное значение всех биткоинов в кошельке. Однако при отправке надписей важно использовать такой кошелек, как Sparrow, который позволяет контролировать UTXO.
Проверка надписи перед отправкой
Как мы уже описывали ранее, надписи наносятся на сатоши, а сатоши хранятся в UTXO. UTXO представляют собой набор сатоши с некоторым определенным значением количества сатоши (выходное значение). Обычно (но не всегда) надпись наносится на первый сатоши в UTXO.
При проверке надписи перед отправкой главное, что вы захотите проверить, на каком сатоши в UTXO сделана ваша надпись.
Для этого, следуя описанным выше инструкциям Validating / Viewing Received Inscriptions можно найти страницу надписи на сайте ordinals.com
Там вы найдете метаданные о вашей надписи, которые выглядят следующим образом:
Здесь необходимо проверить несколько важных моментов:
- Идентификатор
output
совпадает с идентификатором UTXO, который вы собираетесь отправить offset
надписи равно0
(это означает, что надпись расположена на первом сате в UTXO)output_value
имеет достаточное количество sats, чтобы покрыть комиссию за отправку транзакции. Точная сумма, которая вам потребуется, зависит от выбранной вами ставки комиссии за транзакцию
Если все вышеперечисленное соответствует для вашей надписи, то ее можно смело отправлять указанным ниже способом.
⚠️⚠️ Будьте очень осторожны при отправке надписи, особенно если значение offset
не равно 0
. Не рекомендуется использовать этот метод, так как в этом случае вы можете случайно отправить надпись майнеру биткоинов, если вы не знаете, что делаете.
Отправка вашей надписи
Для отправки надписи перейдите на вкладку UTXOs
и найдите UTXO, который, как вы ранее подтвердили, содержит вашу надпись.
Если ранее UXTO был заморожен, необходимо щелкнуть на нем правой кнопкой мыши и разморозить его.
Выберите UTXO, который вы хотите отправить, и убедитесь, что выбран единственный UTXO. В интерфейсе должна появиться надпись UTXOs 1/1
. Убедившись, что это так, нажмите кнопку Send Selected
.
После этого появится интерфейс создания транзакции. Здесь необходимо проверить несколько моментов, чтобы убедиться в безопасности отправки:
- Транзакция должна иметь только один вход, и это должен быть UTXO с лейблом, которую вы хотите отправить
- Транзакция должна иметь только один выход - адрес/лейбл, на который необходимо отправить надпись
Если ваша транзакция выглядит иначе, например, у вас несколько входов или несколько выходов, то это может быть небезопасной передачей вашей надписи, и вам следует отказаться от отправки, пока вы не поймете больше или не сможете импортировать в кошелек ord
.
Вы должны установить соответствующую плату за транзакцию, обычно Sparrow рекомендует разумную, но вы также можете проверить mempool.space, чтобы узнать, какова рекомендуемая ставка платы комиссии за отправку транзакции.
Необходимо добавить лейбл для адреса получателя, идеальным вариантом будет метка типа alice address for inscription #123
.
После того как вы убедились в безопасности транзакции с помощью описанных выше проверок и уверены в ее отправке, вы можете нажать кнопку Create Transaction
.
Здесь вы можете еще раз убедиться в безопасности транзакции и, убедившись в этом, нажать кнопку Finalize Transaction for Signing
.
Здесь вы можете трижды проверить все, прежде чем нажать кнопку Sign
.
И тут у вас появляется самый последний шанс все проверить, прежде чем нажать кнопку Broadcast Transaction
. Как только вы передали транзакцию, она отправляется в сеть bitcoin и начинает распространяться в mempool.
Если вы хотите отслеживать статус вашей транзакции, вы можете скопировать Transaction Id (Txid)
и вставить его в mempool.space
После подтверждения транзакции вы можете проверить страницу надписи на сайте ordinals.com, чтобы убедиться, что она переместилась на новое место и адрес вывода.
Устранение проблем
Sparrow wallet не показывает транзакцию/UTXO, но я вижу ее в mempool.space!
Убедитесь, что ваш кошелек подключен к Bitcoin node. Чтобы проверить это, зайдите в настройки Preferences
-> Server
settings и нажмите кнопку Edit Existing Connection
.
После этого можно выбрать node и нажать кнопку Test Connection
, чтобы убедиться, что Sparrow успешно подключился.
Модерация
В состав ord
входит обозреватель блоков, который можно запустить локально с помощью ord server
.
Обозреватель блоков позволяет просматривать надписи. Надписи - это пользовательский контент, который может быть нежелательным или противозаконным.
Каждый пользователь, управляющий экземпляром ordinal block explorer, обязан понимать свою ответственность в отношении противоправного контента и решать, какая политика модерирования подходит для его экземпляра.
Для того чтобы запретить отображение определенных надписей на экземпляре ord
, их можно включить в конфиг файл YAML, который загружается с помощью опции --config
.
Чтобы скрыть надписи, сначала создайте файл конфиг с ID надписи, которую необходимо скрыть:
hidden:
- 0000000000000000000000000000000000000000000000000000000000000000i0
Предлагаемое имя конфиг файлов ord
- ord.yaml
, но можно использовать любое имя.
Затем передайте этот файл в --config
при запуске сервера:
ord --config ord.yaml server
Обратите внимание, что опция --config
идет после ord
, но перед подкомандой server
.
Для загрузки изменений в конфиг файл необходимо перезапустить ord
.
ordinals.com
Экземпляры ordinals.com
используют systemd
для запуска службы ord server
, которая называется ord
, с файлом конфига, расположенным по адресу /var/lib/ord/ord.yaml
.
Чтобы скрыть надпись на ordinals.com
:
- SSH на сервер
- Добавьте ID надписи в
/var/lib/ord/ord.yaml
- Перезапустите службу с помощью команды
systemctl restart ord
- Мониторинг перезапуска с помощью команды
journalctl -u ord
В настоящее время ord
медленно перезапускается, поэтому сайт вернется в онлайн не сразу.
Переиндексация
Sometimes the ord
database must be reindexed, which means deleting the database and restarting the indexing process with either ord index update
or ord server
. Reasons to reindex are:
- Новый основной релиз ord, в котором изменена схема базы данных
- База данных каким-то образом была повреждена
База данных, которую использует ord
, называется redb, поэтому по умолчанию мы присваиваем индексу имя файла index.redb
. По умолчанию мы храним этот файл в разных местах в зависимости от операционной системы.
OC | Value | Пример |
---|---|---|
Linux | $XDG_DATA_HOME /ord or $HOME /.local/share/ord | /home/alice/.local/share/ord |
macOS | $HOME /Library/Application Support/ord | /Users/Alice/Library/Application Support/ord |
Windows | {FOLDERID_RoamingAppData} \ord | C:\Users\Alice\AppData\Roaming\ord |
Поэтому для удаления базы данных и повторной индексации на MacOS необходимо выполнить в терминале следующие команды:
rm ~/Library/Application Support/ord/index.redb
ord index update
You can of course also set the location of the data directory yourself with ord --datadir <DIR> index update
or give it a specific filename and path with ord --index <FILENAME> index update
.
Охота на сатоши
Охота на ordinal - трудное, но вознаграждаемое занятие. Ощущения от обладания кошельком, полным UTXO, наполненным ароматом редких и экзотических сатов, вне сравнения.
Ordinals - это числа для сатоши. Каждый сатоши имеет порядковый номер, а каждый порядковый номер имеет свой сатоши.
Подготовка
Перед началом работы вам потребуется несколько вещей.
-
Во-первых, вам потребуется синхронизированный Bitcoin Core node с индексом транзакций. Чтобы включить индексирование транзакций, передайте в командной строке команду
-txindex
:bitcoind -txindex
Или поместите в файл конфигурации Bitcoin:
txindex=1
Запустите его и дождитесь, пока он догонит вершину цепи, после чего следующая команда должна вывести текущую высоту блока:
bitcoin-cli getblockcount
-
Во-вторых, вам понадобится синхронизированный индекс
ord
.-
Получить копию
ord
из репозитория. -
Run
ord --index-sats server
. It should connect to your bitcoin core node and start indexing. -
Once it has finished indexing, leave the server running and submit new
ord
commands in a separate terminal session.
-
-
В-третьих, вам понадобится кошелек с UTXO, которые вы хотите найти.
Поиск Rare Ordinals
Поиск Rare Ordinals в Bitcoin Core Wallet
Команда ord wallet
- это просто обертка вокруг RPC API Bitcoin Core, поэтому найти rare ordinals в Bitcoin Core wallet довольно легко . Предположим, что ваш кошелек имеет имя foo
:
-
Загрузите свой кошелек:
bitcoin-cli loadwallet foo
-
Отображение любых rare ordinals кошелька
foo
UTXOs:ord --index-sats wallet --name foo sats
Поиск Rare Ordinals в кошельке, не относящемся к Bitcoin Core Wallet
Команда ord wallet
является лишь оберткой для RPC API Bitcoin Core, поэтому для поиска rare ordinals в кошельке, не принадлежащем Bitcoin Core wallet, необходимо импортировать дескрипторы кошелька в Bitcoin Core.
Дескрипторы описывают способы генерации кошельками закрытых и открытых ключей.
В Bitcoin Core следует импортировать дескрипторы только для открытых ключей кошелька, но не для его закрытых ключей.
Если дескриптор открытого ключа вашего кошелька будет скомпрометирован, злоумышленник сможет увидеть адреса вашего кошелька, но ваши средства будут в безопасности.
Если дескриптор закрытого ключа вашего кошелька скомпрометирован, злоумышленник может вывести с него ваши средства.
-
Получите дескриптор кошелька, в кошельке которого вы хотите искать rare ordinals UTXO. Он будет выглядеть примерно так:
wpkh([bf1dd55e/84'/0'/0']xpub6CcJtWcvFQaMo39ANFi1MyXkEXM8T8ZhnxMtSjQAdPmVSTHYnc8Hwoc11VpuP8cb8JUTboZB5A7YYGDonYySij4XTawL6iNZvmZwdnSEEep/0/*)#csvefu29
-
Создайте кошелек с именем
foo-watch-only
, предназначенный только для просмотра:bitcoin-cli createwallet foo-watch-only true true
Не стесняйтесь дать ему более подходящее название, чем
foo-watch-only
! -
Загрузите кошелек
foo-watch-only
:bitcoin-cli loadwallet foo-watch-only
-
Импортируйте дескрипторы вашего кошелька в
foo-watch-only
:bitcoin-cli importdescriptors \ '[{ "desc": "wpkh([bf1dd55e/84h/0h/0h]xpub6CcJtWcvFQaMo39ANFi1MyXkEXM8T8ZhnxMtSjQAdPmVSTHYnc8Hwoc11VpuP8cb8JUTboZB5A7YYGDonYySij4XTawL6iNZvmZwdnSEEep/0/*)#tpnxnxax", "timestamp":0 }]'
Если вам известна временная метка Unix, когда ваш кошелек впервые начал принимать транзакции, вы можете использовать ее в качестве значения
"timestamp"
вместо0
. Это позволит сократить время поиска UTXO кошелька для Bitcoin Core. -
Проверьте, что все работает:
bitcoin-cli getwalletinfo
-
Отображение rare ordinals в кошельке:
ord wallet sats
Поиск Rare Ordinals в кошельке, экспортирующем многопутевые дескрипторы
Некоторые дескрипторы описывают несколько путей в одном дескрипторе с помощью угловых скобок, например,<0;1>
. Bitcoin Core пока не поддерживает многопутевые дескрипторы, поэтому сначала их необходимо преобразовать в многопутевые дескрипторы, а затем импортировать эти многопутевые дескрипторы в Bitcoin Core.
-
Сначала получите многопутевой дескриптор из вашего кошелька. Он будет выглядеть примерно так:
wpkh([bf1dd55e/84h/0h/0h]xpub6CcJtWcvFQaMo39ANFi1MyXkEXM8T8ZhnxMtSjQAdPmVSTHYnc8Hwoc11VpuP8cb8JUTboZB5A7YYGDonYySij4XTawL6iNZvmZwdnSEEep/<0;1>/*)#fw76ulgt
-
Создайте дескриптор для пути адреса приема:
wpkh([bf1dd55e/84'/0'/0']xpub6CcJtWcvFQaMo39ANFi1MyXkEXM8T8ZhnxMtSjQAdPmVSTHYnc8Hwoc11VpuP8cb8JUTboZB5A7YYGDonYySij4XTawL6iNZvmZwdnSEEep/0/*)
И путь смены адреса:
wpkh([bf1dd55e/84'/0'/0']xpub6CcJtWcvFQaMo39ANFi1MyXkEXM8T8ZhnxMtSjQAdPmVSTHYnc8Hwoc11VpuP8cb8JUTboZB5A7YYGDonYySij4XTawL6iNZvmZwdnSEEep/1/*)
-
Получите и запишите контрольную сумму для дескриптора адреса приема, в данном случае
tpnxnxax
:bitcoin-cli getdescriptorinfo \ 'wpkh([bf1dd55e/84h/0h/0h]xpub6CcJtWcvFQaMo39ANFi1MyXkEXM8T8ZhnxMtSjQAdPmVSTHYnc8Hwoc11VpuP8cb8JUTboZB5A7YYGDonYySij4XTawL6iNZvmZwdnSEEep/0/*)'
{ "descriptor": "wpkh([bf1dd55e/84'/0'/0']xpub6CcJtWcvFQaMo39ANFi1MyXkEXM8T8ZhnxMtSjQAdPmVSTHYnc8Hwoc11VpuP8cb8JUTboZB5A7YYGDonYySij4XTawL6iNZvmZwdnSEEep/0/*)#csvefu29", "checksum": "tpnxnxax", "isrange": true, "issolvable": true, "hasprivatekeys": false }
И для дескриптора адреса изменения, в данном случае
64k8wnd7
:bitcoin-cli getdescriptorinfo \ 'wpkh([bf1dd55e/84h/0h/0h]xpub6CcJtWcvFQaMo39ANFi1MyXkEXM8T8ZhnxMtSjQAdPmVSTHYnc8Hwoc11VpuP8cb8JUTboZB5A7YYGDonYySij4XTawL6iNZvmZwdnSEEep/1/*)'
{ "descriptor": "wpkh([bf1dd55e/84'/0'/0']xpub6CcJtWcvFQaMo39ANFi1MyXkEXM8T8ZhnxMtSjQAdPmVSTHYnc8Hwoc11VpuP8cb8JUTboZB5A7YYGDonYySij4XTawL6iNZvmZwdnSEEep/1/*)#fyfc5f6a", "checksum": "64k8wnd7", "isrange": true, "issolvable": true, "hasprivatekeys": false }
-
Загрузите кошелек, в который вы хотите импортировать дескрипторы:
bitcoin-cli loadwallet foo-watch-only
-
Теперь импортируйте дескрипторы с правильными контрольными суммами в Bitcoin Core.
bitcoin-cli \ importdescriptors \ '[ { "desc": "wpkh([bf1dd55e/84h/0h/0h]xpub6CcJtWcvFQaMo39ANFi1MyXkEXM8T8ZhnxMtSjQAdPmVSTHYnc8Hwoc11VpuP8cb8JUTboZB5A7YYGDonYySij4XTawL6iNZvmZwdnSEEep/0/*)#tpnxnxax" "timestamp":0 }, { "desc": "wpkh([bf1dd55e/84h/0h/0h]xpub6CcJtWcvFQaMo39ANFi1MyXkEXM8T8ZhnxMtSjQAdPmVSTHYnc8Hwoc11VpuP8cb8JUTboZB5A7YYGDonYySij4XTawL6iNZvmZwdnSEEep/1/*)#64k8wnd7", "timestamp":0 } ]'
Если вам известна временная метка Unix, когда ваш кошелек впервые начал принимать транзакции, вы можете использовать ее в качестве значения
"timestamp"
вместо0
. Это позволит сократить время поиска UTXO кошелька для Bitcoin Core. -
Проверьте, что все работает:
bitcoin-cli getwalletinfo
-
Отображение rare ordinals в кошельке:
ord wallet sats
Экспорт дескрипторов
Sparrow Wallet
Перейдите на вкладку Settings
, затем на вкладку Script Policy
и нажмите кнопку редактирования для отображения дескриптора.
Отправка Ordinals
The ord
wallet supports transferring specific satoshis by using the name of the satoshi. To send the satoshi zonefruits
, do:
ord wallet send <RECEIVING_ADDRESS> zonefruits --fee-rate 21
You can also use the bitcoin-cli
commands createrawtransaction
, signrawtransactionwithwallet
, and sendrawtransaction
, but this method can be complex and is outside the scope of this guide.
Settings
ord
can be configured with the command line, environment variables, a configuration file, and default values.
The command line takes precedence over environment variables, which take precedence over the configuration file, which takes precedence over defaults.
The path to the configuration file can be given with --config <CONFIG_PATH>
. ord
will error if <CONFIG_PATH>
doesn't exist.
The path to a directory containing a configuration file name named ord.yaml
can be given with --config-dir <CONFIG_DIR_PATH>
or --datadir <DATA_DIR_PATH>
in which case the config path is <CONFIG_DIR_PATH>/ord.yaml
or <DATA_DIR_PATH>/ord.yaml
. It is not an error if it does not exist.
If none of --config
, --config-dir
, or --datadir
are given, and a file named ord.yaml
exists in the default data directory, it will be loaded.
For a setting named --setting-name
on the command line, the environment variable will be named ORD_SETTING_NAME
, and the config file field will be named setting_name
. For example, the data directory can be configured with --datadir
on the command line, the ORD_DATA_DIR
environment variable, or data_dir
in the config file.
See ord --help
for documentation of all the settings.
ord
's current configuration can be viewed as JSON with the ord settings
command.
Example Configuration
# example config
# see `ord --help` for setting documentation
bitcoin_data_dir: /var/lib/bitcoin
bitcoin_rpc_password: bar
bitcoin_rpc_url: https://localhost:8000
bitcoin_rpc_username: foo
chain: mainnet
commit_interval: 10000
config: /var/lib/ord/ord.yaml
config_dir: /var/lib/ord
cookie_file: /var/lib/bitcoin/.cookie
data_dir: /var/lib/ord
height_limit: 1000
hidden:
- 6fb976ab49dcec017f1e201e84395983204ae1a7c2abf7ced0a85d692e442799i0
- 703e5f7c49d82aab99e605af306b9a30e991e57d42f982908a962a81ac439832i0
index: /var/lib/ord/index.redb
index_addresses: true
index_cache_size: 1000000000
index_runes: true
index_sats: true
index_transactions: true
integration_test: true
no_index_inscriptions: true
server_password: bar
server_url: http://localhost:8888
server_username: foo
Hiding Inscription Content
Inscription content can be selectively prevented from being served by ord server
.
Unlike other settings, this can only be configured with the configuration file or environment variables.
To hide inscriptions with an environment variable:
export ORD_HIDDEN='6fb976ab49dcec017f1e201e84395983204ae1a7c2abf7ced0a85d692e442799i0 703e5f7c49d82aab99e605af306b9a30e991e57d42f982908a962a81ac439832i0'
Or with the configuration file:
hidden:
- 6fb976ab49dcec017f1e201e84395983204ae1a7c2abf7ced0a85d692e442799i0
- 703e5f7c49d82aab99e605af306b9a30e991e57d42f982908a962a81ac439832i0
Teleburning
Teleburn addresses can be used to burn assets on other blockchains, leaving behind in the smoking rubble a sort of forwarding address pointing to an inscription on Bitcoin.
Teleburning an asset means something like, "I'm out. Find me on Bitcoin."
Teleburn addresses are derived from inscription IDs. They have no corresponding private key, so assets sent to a teleburn address are burned. Currently, only Ethereum teleburn addresses are supported. Pull requests adding teleburn addresses for other chains are welcome.
Ethereum
Ethereum teleburn addresses are derived by taking the first 20 bytes of the SHA-256 hash of the inscription ID, serialized as 36 bytes, with the first 32 bytes containing the transaction ID, and the last four bytes containing big-endian inscription index, and interpreting it as an Ethereum address.
Пример
The ENS domain name rodarmor.eth, was teleburned to inscription zero.
The inscription ID of inscription zero is 6fb976ab49dcec017f1e201e84395983204ae1a7c2abf7ced0a85d692e442799i0
.
Passing 6fb976ab49dcec017f1e201e84395983204ae1a7c2abf7ced0a85d692e442799i0
to the teleburn command:
$ ord teleburn 6fb976ab49dcec017f1e201e84395983204ae1a7c2abf7ced0a85d692e442799i0
Returns:
{
"ethereum": "0xe43A06530BdF8A4e067581f48Fae3b535559dA9e"
}
Indicating that 0xe43A06530BdF8A4e067581f48Fae3b535559dA9e
is the Ethereum teleburn address for inscription zero, which is, indeed, the current owner, on Ethereum, of rodarmor.eth
.
Тестирование
Test Environment
ord env <DIRECTORY>
creates a test environment in <DIRECTORY>
, spins up bitcoind
and ord server
instances, prints example commands for interacting with the test bitcoind
and ord server
instances, waits for CTRL-C
, and then shuts down bitcoind
and ord server
.
ord env
tries to use port 9000 for bitcoind
's RPC interface, and port 9001
for ord
's RPC interface, but will fall back to random unused ports.
Inside of the env directory, ord env
will write bitcoind
's configuration to bitcoin.conf
, ord
's configuration to ord.yaml
, and the env configuration to env.json
.
env.json
contains the commands needed to invoke bitcoin-cli
and ord wallet
, as well as the ports bitcoind
and ord server
are listening on.
These can be extracted into shell commands using jq
:
bitcoin=`jq -r '.bitcoin_cli_command | join(" ")' env/env.json`
$bitcoin listunspent
ord=`jq -r '.ord_wallet_command | join(" ")' env/env.json`
$ord outputs
If ord
is in the $PATH
and the env directory is env
, the bitcoin-cli
command will be:
bitcoin-cli -datadir=env
And the ord
will be:
ord --datadir env
Test Networks
Ord можно протестировать, используя следующие флаги для указания тестовой сети. Более подробную информацию о запуске Bitcoin Core для тестирования смотрите в документации разработчика Bitcoin.
Most ord
commands in wallet and explorer can be run with the following network flags:
Network | Flag |
---|---|
Testnet | --testnet or -t |
Signet | --signet or -s |
Regtest | --regtest or -r |
Regtest doesn't require downloading the blockchain since you create your own private blockchain, so indexing ord
is almost instantaneous.
Пример
Run bitcoind
in regtest with:
bitcoind -regtest -txindex
Run ord server
in regtest with:
ord --regtest server
Создать кошелек в regtest с:
ord --regtest wallet create
Получите regtest адрес для приема с помощью:
ord --regtest wallet receive
Добыть 101 блок (для разблокировки coinbase) с помощью:
bitcoin-cli -regtest generatetoaddress 101 <receive address>
Inscribe в regtest с:
ord --regtest wallet inscribe --fee-rate 1 --file <file>
Добыть надпись с:
bitcoin-cli -regtest generatetoaddress 1 <receive address>
By default, browsers don't support compression over HTTP. To test compressed content over HTTP, use the --decompress
flag:
ord --regtest server --decompress
Тестирование рекурсии
When testing out recursion, inscribe the dependencies first (example with p5.js):
ord --regtest wallet inscribe --fee-rate 1 --file p5.js
This will return the inscription ID of the dependency which you can then reference in your inscription.
However, inscription IDs differ between mainnet and test chains, so you must change the inscription IDs in your inscription to the mainnet inscription IDs of your dependencies before making the final inscription on mainnet.
Затем можно нанести рекурсивную надпись с помощью:
ord --regtest wallet inscribe --fee-rate 1 --file recursive-inscription.html
Наконец, нужно добыть несколько блоков и запустить сервер:
bitcoin-cli generatetoaddress 6 <receive address>
Mainnet Dependencies
To avoid having to change dependency inscription IDs to mainnet inscription IDs, you may utilize a content proxy when testing. ord server
accepts a --proxy
option, which takes the URL of a another ord server
instance. When making a request to /content/<INSCRIPTION_ID>
when a content proxy is set and the inscription is not found, ord server
will forward the request to the content proxy. This allows you to run a test ord server
instance with a mainnet content proxy. You can then use mainnet inscription IDs in your test inscription, which will then return the content of the mainnet inscriptions.
ord --regtest server --proxy https://ordinals.com
Подсказки по охоте на Ordinal
-
Кошелек
ord
может отправлять и получать определенные сатоши. Кроме того, ordinal theory чрезвычайно проста. Умный хакер сможет с нуля написать код для манипуляций с сатоши с помощью ordinal theory в кратчайшие сроки. -
Более подробную информацию о теории порядков можно найти в ЧАВО для общего обзора, в BIP для технических деталей, а также в ord repo для кошелька
ord
и обозревателя блоков. -
Сатоши Накамото был первым разработчиком ordinal theory. Однако он знал, что другие сочтут ее еретической и опасной, поэтому скрыл свои знания, и они были утеряны в песках времени. Только сейчас эту мощную теорию открывают заново. Вы можете помочь в этом, исследуя редкие сатоши.
Удачи, и да прибудет с вами сила!
Ordinal вознаграждение 0
Критерии
Отправить sat, ordinal номер которого заканчивается нулем, по адресу отправки:
Значение sat должно быть первым sat в передаваемом выводе.
Награда
100,000 sats
Адрес для отправки
1PE7u4wbDP2RqfKN6geD1bG57v9Gj9FXm3
Статус
Собрано@count_null!
Ordinal вознаграждение 1
Критерии
Победителем будет признана та сделка, которая представит UTXO, содержащий самый старый sat, т.е. имеющий наименьший номер, среди всех представленных UTXO.
Заявки на участие в конкурсе принимаются до блока 753984 - первого блока 374 периода корректировки сложности. Заявки, поданные в блок 753984 или позже, рассматриваться не будут.
Награда
200,000 sats
Адрес для отправки
145Z7PFHyVrwiMWwEcUmDgFbmUbQSU9aap
Статус
Собрано @ordinalsindex!
Ordinal вознаграждение 2
Критерии
Send an uncommon sat to the submission address:
Перед отправкой заявки убедитесь в том, что по адресу отправки не было транзакций. Только первая успешная заявка будет вознаграждена.
Награда
300,000 sats
Адрес для отправки
1Hyr94uypwWq5CQffaXHvwUMEyBPp3TUZH
Статус
Собрано @utxoset!
Ordinal вознаграждение 3
Критерии
Ordinal вознаграждение 3 состоит из двух частей, обе из которых основаны на ordinal именах. Ordinal имена представляют собой модифицированную кодировку порядковых чисел base-26. Чтобы избежать блокировки коротких имен внутри неизрасходованного вознаграждения coinbase блока genesis, порядковые имена становятся короче по мере того, как порядковый номер становится длиннее. Имя сата 0, первого sat, который будет добыт, - nvtdijuwxlp
, а имя sat 2 099 999 997 689 999, последнего sat, который будет добыт, - a
.
The bounty is open for submissions until block 840000—the first block after the fourth halving. Submissions included in block 840000 or later will not be considered.
В обеих частях используется frequency.tsv - список слов и количество их повторений в Google Books Ngram dataset, отфильтрованный для включения только тех названий sats, которые будут добыты к концу периода подачи заявок и которые встречаются в корпусе не менее 5000 раз.
frequency.tsv
представляет собой файл значений, разделенных табуляцией. Первый столбец - это слово, второй - количество раз, которое оно встречается в корпусе. Записи отсортированы от наименее часто встречающегося к наиболее часто встречающемуся.
frequency.tsv
был скомпилирован с помощью этой программы.
Для поиска в кошельке ord
sats с именем в файле frequency.tsv
используйте следующую команду ord
:
ord wallet sats --tsv frequency.tsv
Эта команда требует индекса sat, поэтому при первом создании индекса в ord необходимо передать --index-sats
.
Часть 0
Пара редких sats лучше всего сочетаются с парой редких слов.
Победителем 0 части становится транзакция, представившая UTXO, содержащий sat, название которого встречается в файле frequency.tsv
с наименьшим числом повторений.
Часть 1
Popularity is the fount of value.
Победителем в части 1 становится транзакция, представившая UTXO, содержащий sat, название которого встречается в файле frequency.tsv
с наибольшим числом повторений.
Разрыв равенства
В случае равенства, когда две заявки происходят с одинаковой частотой, победителем признается более ранняя заявка.
Награда
- Част 0: 200,000 sats
- Часть 1: 200,000 sats
- Итого: 400,000 sats
Адрес для отправки
17m5rvMpi78zG8RUpCRd6NWWMJtWmu65kg
Статус
Не собрано!