Skip to main content

Вырашэнне імя

Вырашэнне імя

Вырашае імя PIVX, вяртаючы звязаны з ім адрас PIVX, дэталі доказу, кантрольныя пункты сінхранізацыі і даныя рэгістрацыі.

Пункт доступу

GET https://indexer.pivx.name/v1.0/resolve/{name} (толькі вырашэнне імя)
POST https://indexer.pivx.name/v1.0/resolve/{name} (калі патрэбны дадатковыя параметры)

Параметры шляху

ПараметрТыпАбавязковыАпісанне
{name}stringТакІмя PIVX, якое трэба вырашыць (напрыклад, richard.pivx).

Цела запыту

Цела запыту мусіць быць аб'ектам JSON з наступнымі параметрамі:

ПараметрТыпПа змаўчанніАпісанне
extendedbooleanfalseКалі true, дадаткова вяртае domain_tx (хэш транзакцыі рэгістрацыі дамена).
with_checkpointbooleanfalseКалі true, вяртае бягучы кантрольны пункт, да якога сінхранізаваны індэксатар.

Прыклады кода

curl -X POST https://indexer.pivx.name/v1.0/resolve/richard.pivx \
-H "Content-Type: application/json" \
-d '{
"extended": true,
"with_checkpoint": true
}'

Прыклад адказу

{
"response": {
"domain_name": "bob.pivx",
"target_address": "ps12qtzaw6x3dh35xuukrqgk06e9ffx8szg2n2huqncwjsnj3ajczmklqgcx97kn63vwlge6gj2cmn",
"owner_pubkey": "1111111111111111111111111111111111111111111111111111111111111111",
"price": 250000000,
"nonce": 1780000002,
"smt_root": "5892c31e50ad3a4cf0407b91b3012a196d60c4e4f53e37261ac6747dea180eea",
"merkle_proof": [
"29bc98ae3a939618e50ba72e11a25ba30b37bb53a168a17463b9ef3fe90495d8",
"0000000000000000000000000000000000000000000000000000000000000000"
],
"proof_depth": 2,
"proof_terminal": "Occupied"
}
}
ПолеТыпАпісанне
domain_namestringЗарэгістраванае імя
target_addressstringМэтавы адрас PIVX
owner_pubkeystringПублічны ключ уладальніка імя
priceintЦана (выкарыстоўваецца на Маркетплейсе)
nonceintУзрастаючы nonce
smt_rootstringБягучы корань дрэва Меркла (hex)
(калі with_checkpoint:false, інакш гл. корань SMT у "checkpoint")
merkle_proofstring[]Суседнія хэшы ў hex; [0] — самы глыбокі. Даўжыня роўная proof_depth
proof_depthintКолькасць суседзяў — праверце, што яна роўная merkle_proof.length
proof_terminalstring | object"Occupied", "Vacant" або {"Blocked":{…}} — гл. ніжэй
extended:
created_block_idintblock_id блока PIVX, у якім створаны дамен
updated_block_idintblock_id блока PIVX апошняга змянення дамена
domain_txstringХэш транзакцыі PIVX з рэгістрацыяй імя
with_checkpoint:Палі ўнутры "checkpoint":
idxintПазіцыя ў масіве rootChain якарнага кантракта; курсор аднаўлення пры атрыманні чэкпоінтаў
block_idintblock_id блока PIVX апошняга згенераванага доказу SMT
smt_rootstringБягучы корань дрэва Меркла (hex)

proof_terminal

Апісвае, што знаходзіцца ў канцы шляху доказу. Менавіта гэта робіць адсутнасць даказальнай, а не проста заяўленай:

ЗначэннеСэнс
"Occupied"там уласны ліст імя — паспяховае вырашэнне. Адхіляйце любое вырашэнне, тэрмінал якога адрозніваецца ад гэтага.
"Vacant"там пустое паддрэва — імя не зарэгістравана
{"Blocked": {"record": {…}}}гэтую пазіцыю займае ліст іншага імя, значыць, запытанае імя не зарэгістравана. Блакіруючы запіс уключаны цалкам, так што вы можаце праверыць гэта сцвярджэнне, а не давяраць яму.

Код праверкі ўсяго пералічанага на Python, PHP і JavaScript прыведзены ў раздзеле Праверка доказаў.

Адваротнае вырашэнне імя

Укажыце адрас PIVX, каб выканаць адваротнае вырашэнне:

GET/POST https://indexer.pivx.name/v1.0/resolve/reverse/{address}

Параметры POST апісаны вышэй.

Імёны па ўладальніку

Усе імёны, якімі валодае зададзены публічны ключ Ed25519.

GET/POST https://indexer.pivx.name/v1.0/resolve/owner/{Ed25519_public_key}

Параметры POST апісаны вышэй.