Nubit DA Node APIs
Last updated
Last updated
Note: Thanks to your contributions, cycle I of our TestNet Phase 3 journey has officially wrapped up! Now we're one step closer to onboarding the world to Bitcoin. Stay tuned for the next steps!
Here is an example of how to make a Node API call using curl
. This example demonstrates how to retrieve the sync state of the header. Replace <YOUR_API_KEY>
with your actual API key and <YOUR_NODE_ENDPOINT>
with the endpoint of the node you started (for example, 127.0.0.1:26658
).
curl -X POST -H "Content-Type: application/json" -H "Authorization: Bearer <YOUR_API_KEY>" -d '{"id": 1, "jsonrpc": "2.0", "method": "header.SyncState", "params": []}' <YOUR_NODE_ENDPOINT>
This command will send a POST
request to the specified endpoint with the necessary headers and JSON payload. The Authorization
header contains the Bearer token, which is your API key, and the payload specifies the RPC method header.SyncState
with an empty parameter list.
OpenRPC
1.2.6
The Nubit Node API is the collection of RPC methods that can be used to interact with the services provided by Nubit Data Availability Nodes.
API version: v0.1.0-rc.1
Base URI path: /
Method: POST
Headers
Name | Value |
---|---|
Get retrieves the blob by KZG commitment under the given namespace and height.
Auth level: read
func Get(
height uint64,
namespace share.Namespace,
commitment blob.KzgCommitment,
) *blob.Blob
{
"jsonrpc": "2.0",
"method": "blob.Get",
"params": [
42,
"AAAAAAAAAAAAAAAAAAAAAAAAAAECAwQFBgcICRA=",
"Bw=="
],
"id": 0
}
{
"jsonrpc": "2.0",
"result": {
"commitment": "20qrISWy41i+3YG4pGbmtw3BbsK875MrcRX8bTgJOMk=",
"data": "VGhpcyBpcyBhbiBleGFtcGxlIG9mIHNvbWUgYmxvYiBkYXRh",
"index": -1,
"namespace": "AAAAAAAAAAAAAAAAAAAAAAAAAAECAwQFBgcICRA=",
"share_version": 0
},
"id": 0
}
GetAll returns all blobs at the given height under the given namespaces.
Auth level: read
func GetAll(
height uint64,
namespaces []share.Namespace,
) []*blob.Blob
{
"jsonrpc": "2.0",
"method": "blob.GetAll",
"params": [
42,
[
"AAAAAAAAAAAAAAAAAAAAAAAAAAECAwQFBgcICRA="
]
],
"id": 0
}
{
"jsonrpc": "2.0",
"result": [
{
"commitment": "20qrISWy41i+3YG4pGbmtw3BbsK875MrcRX8bTgJOMk=",
"data": "VGhpcyBpcyBhbiBleGFtcGxlIG9mIHNvbWUgYmxvYiBkYXRh",
"index": -1,
"namespace": "AAAAAAAAAAAAAAAAAAAAAAAAAAECAwQFBgcICRA=",
"share_version": 0
}
],
"id": 0
}
GetProof retrieves proofs in the given namespaces at the given height by commitment.
Auth level: read
func GetProof(
height uint64,
namespace share.Namespace,
commitment blob.KzgCommitment,
) *blob.Proof
{
"jsonrpc": "2.0",
"method": "blob.GetProof",
"params": [
42,
"AAAAAAAAAAAAAAAAAAAAAAAAAAECAwQFBgcICRA=",
"Bw=="
],
"id": 0
}
{
"jsonrpc": "2.0",
"result": [
{
"end": 15,
"inclusion_or_absence": true,
"open_end": {
"index": 15,
"proof": "gniKhnjrWbFG15O2a795/oEczV+xCXeho3zw6GV8W9OKA3eAqeU3FRVi5a+QcWU7",
"value": "AAAAAAAAAAAAAAAAAAAAAAAAADEyMzQ1Njc4OTAAAAAAAAAAAAAAAAAAAAAAAAAAMTIzNDU2Nzg5MAABAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQ=="
},
"open_post_index": {
"index": 16,
"proof": "g7rrqOPnk4zsgq4S95DWAenHg0zYnOD6VaKo+MGbXG+BOedF1SNLjbusbz3NbTN/",
"value": "//////////////////////////////////////8AAAAAAAAAAAAAAAAAAAAAAAAAfXpxe3B3fH90RnV0dN89CwsL7UkU5OaRFqBeuwnzFGc8VKvZgAx62brz2XriGHoP2OODkCZW83/LuvPZ2ENF9ZRUq9mADBiBupEmCFFU49hvJ+In4mur46smgSLJqwh/VCb2ySJvDCfY2A26v0OHCwsLCwsLCwsLCwsLCwsLCwsLCxhR9iKFzGuvCL9TQrFKQvcZL9q87TwsLSJaMq/Icw1R4uorDG9wWc26WiMUfS12hvXLrAtDRPWD9Vb1ad1+89gd89h6fn8mkQzzetgNfpFRhcxuGHqDq9l8DSZDUPW+QjWBuSD6M8Gyx49a75IETxt8ir7Ql3jWGck0/svbar0SQ5b15RusveVDQ/WG9ZarVKvZQ5aFvxhrrRDTzlMl1o3jiGu5oc2JoHouUzRjBz0UpYLMiFw7MPk6dDeT+vLKFUccS9uvgXqKbGf5azrTB7Kv0VzLLhEw4jcTEZpx90Os5VOWkka4kwsLCwsLCwsLCwsLCwsLCwsLCwsLCwsLCwsLCwsLCwsLCwsLCwsLCwsLCwsLCwsLCwsLCwsLCwsLCwsLCwsLCwsLCwsLCwsLCwsLCwsLCwsLCwsLCwsLCwsLCwsLCwsLCwsLCwsLCwsLCwsLCwsLCwsLCwsLCwsLCwsLCwsLCwsLCwsLCw=="
},
"open_pre_index": {
"index": 1,
"proof": "qm4Yt72dEqxKQ58lkke6RWbhTU69vnCwkXuzzP4SvYYOE4QwxZ1gqzlJD6LVu4Ij",
"value": "AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABAEAAAFWAAAAJtQCCsgCCpsBCpgBCh0vbnViaXQuYmxvYi52MS5Nc2dQYXlGb3JCbG9icxJ3CixudWJpdDF4bHB5OTJuZ3N6aHZodjd1Z3V5eDRqdTlybnkzajR6dGhzc2VsMBIdAAAAAAAAAAAAAAAAAAAAAAAAADEyMzQ1Njc4OTAaA9CGAyIg7VsJh9zUxTSOPDh7umUydvOgdHqDtydsjiX5WsXmDApCAQASZgpQCkYKHy9jb3Ntb3MuY3J5cHRvLnNlY3AyNTZrMS5QdWJLZXkSIwohA0h4VRz7Le/pipiOr0nx2ghLxCH2FQaTIGpZtkJKJhicEgQKAggBGAISEgoMCgR1bnViEgQ1MDE3ELTPHhpAk7Bn7DdV2Cf9yS78GlmyyM35lUE27OuoFMK5zmBY+35T6F98l0o4eC7EQ//CN7nPyOk45+tC/KUUdmCNpcySIhIBAhoESU5EWAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA=="
},
"open_start": {
"index": 2,
"proof": "kb7NqWxKwPmMRprmNfUbtWqoAqzDsvFaqLniBQAPr0bB6Z1JSXrdx9ztQoDQKQOh",
"value": "AAAAAAAAAAAAAAAAAAAAAAAAADEyMzQ1Njc4OTAAAAAAAAAAAAAAAAAAAAAAAAAAMTIzNDU2Nzg5MAEAAMNQAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQ=="
},
"post_index": 16,
"pre_index": 1,
"start": 2
}
],
"id": 0
}
Included checks whether a blob's given commitment(Merkle subtree root) is included at given height and under the namespace.
Auth level: read
func Included(
height uint64,
namespace share.Namespace,
proof *blob.Proof,
commitment blob.KzgCommitment,
) bool
{
"jsonrpc": "2.0",
"method": "blob.Included",
"params": [
42,
"AAAAAAAAAAAAAAAAAAAAAAAAAAECAwQFBgcICRA=",
[
{
"end": 15,
"inclusion_or_absence": true,
"open_end": {
"index": 15,
"proof": "gniKhnjrWbFG15O2a795/oEczV+xCXeho3zw6GV8W9OKA3eAqeU3FRVi5a+QcWU7",
"value": "AAAAAAAAAAAAAAAAAAAAAAAAADEyMzQ1Njc4OTAAAAAAAAAAAAAAAAAAAAAAAAAAMTIzNDU2Nzg5MAABAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQ=="
},
"open_post_index": {
"index": 16,
"proof": "g7rrqOPnk4zsgq4S95DWAenHg0zYnOD6VaKo+MGbXG+BOedF1SNLjbusbz3NbTN/",
"value": "//////////////////////////////////////8AAAAAAAAAAAAAAAAAAAAAAAAAfXpxe3B3fH90RnV0dN89CwsL7UkU5OaRFqBeuwnzFGc8VKvZgAx62brz2XriGHoP2OODkCZW83/LuvPZ2ENF9ZRUq9mADBiBupEmCFFU49hvJ+In4mur46smgSLJqwh/VCb2ySJvDCfY2A26v0OHCwsLCwsLCwsLCwsLCwsLCwsLCxhR9iKFzGuvCL9TQrFKQvcZL9q87TwsLSJaMq/Icw1R4uorDG9wWc26WiMUfS12hvXLrAtDRPWD9Vb1ad1+89gd89h6fn8mkQzzetgNfpFRhcxuGHqDq9l8DSZDUPW+QjWBuSD6M8Gyx49a75IETxt8ir7Ql3jWGck0/svbar0SQ5b15RusveVDQ/WG9ZarVKvZQ5aFvxhrrRDTzlMl1o3jiGu5oc2JoHouUzRjBz0UpYLMiFw7MPk6dDeT+vLKFUccS9uvgXqKbGf5azrTB7Kv0VzLLhEw4jcTEZpx90Os5VOWkka4kwsLCwsLCwsLCwsLCwsLCwsLCwsLCwsLCwsLCwsLCwsLCwsLCwsLCwsLCwsLCwsLCwsLCwsLCwsLCwsLCwsLCwsLCwsLCwsLCwsLCwsLCwsLCwsLCwsLCwsLCwsLCwsLCwsLCwsLCwsLCwsLCwsLCwsLCwsLCwsLCwsLCwsLCwsLCwsLCw=="
},
"open_pre_index": {
"index": 1,
"proof": "qm4Yt72dEqxKQ58lkke6RWbhTU69vnCwkXuzzP4SvYYOE4QwxZ1gqzlJD6LVu4Ij",
"value": "AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABAEAAAFWAAAAJtQCCsgCCpsBCpgBCh0vbnViaXQuYmxvYi52MS5Nc2dQYXlGb3JCbG9icxJ3CixudWJpdDF4bHB5OTJuZ3N6aHZodjd1Z3V5eDRqdTlybnkzajR6dGhzc2VsMBIdAAAAAAAAAAAAAAAAAAAAAAAAADEyMzQ1Njc4OTAaA9CGAyIg7VsJh9zUxTSOPDh7umUydvOgdHqDtydsjiX5WsXmDApCAQASZgpQCkYKHy9jb3Ntb3MuY3J5cHRvLnNlY3AyNTZrMS5QdWJLZXkSIwohA0h4VRz7Le/pipiOr0nx2ghLxCH2FQaTIGpZtkJKJhicEgQKAggBGAISEgoMCgR1bnViEgQ1MDE3ELTPHhpAk7Bn7DdV2Cf9yS78GlmyyM35lUE27OuoFMK5zmBY+35T6F98l0o4eC7EQ//CN7nPyOk45+tC/KUUdmCNpcySIhIBAhoESU5EWAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA=="
},
"open_start": {
"index": 2,
"proof": "kb7NqWxKwPmMRprmNfUbtWqoAqzDsvFaqLniBQAPr0bB6Z1JSXrdx9ztQoDQKQOh",
"value": "AAAAAAAAAAAAAAAAAAAAAAAAADEyMzQ1Njc4OTAAAAAAAAAAAAAAAAAAAAAAAAAAMTIzNDU2Nzg5MAEAAMNQAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQ=="
},
"post_index": 16,
"pre_index": 1,
"start": 2
}
],
"Bw=="
],
"id": 0
}
{
"jsonrpc": "2.0",
"result": true,
"id": 0
}
Submit sends Blobs and reports the height in which they were included. Allows sending multiple Blobs atomically synchronously. Uses default wallet registered on the Node.
Auth level: write
func Submit(
blobs []*blob.Blob,
gasPrice blob.GasPrice,
) uint64
{
"jsonrpc": "2.0",
"method": "blob.Submit",
"params": [
[
{
"commitment": "20qrISWy41i+3YG4pGbmtw3BbsK875MrcRX8bTgJOMk=",
"data": "VGhpcyBpcyBhbiBleGFtcGxlIG9mIHNvbWUgYmxvYiBkYXRh",
"index": -1,
"namespace": "AAAAAAAAAAAAAAAAAAAAAAAAAAECAwQFBgcICRA=",
"share_version": 0
}
],
0.002
],
"id": 0
}
{
"jsonrpc": "2.0",
"result": 42,
"id": 0
}
SamplingStats returns the current statistics over the DA sampling process.
Auth level: read
func SamplingStats() das.SamplingStats
{
"jsonrpc": "2.0",
"method": "das.SamplingStats",
"params": null,
"id": 0
}
{
"jsonrpc": "2.0",
"result": {
"catch_up_done": false,
"concurrency": 6,
"head_of_catchup": 34101,
"head_of_sampled_chain": 1092,
"is_running": true,
"network_head_height": 470292,
"workers": [
{
"current": 1093,
"from": 1002,
"job_type": "catchup",
"to": 1101
},
{
"current": 33343,
"from": 33302,
"job_type": "catchup",
"to": 33401
},
{
"current": 34047,
"from": 34002,
"job_type": "catchup",
"to": 34101
},
{
"current": 1327,
"from": 1302,
"job_type": "catchup",
"to": 1401
},
{
"current": 1197,
"from": 1102,
"job_type": "catchup",
"to": 1201
},
{
"current": 1408,
"from": 1402,
"job_type": "catchup",
"to": 1501
}
]
},
"id": 0
}
WaitCatchUp blocks until DASer finishes catching up to the network head.
Auth level: read
func WaitCatchUp()
{
"jsonrpc": "2.0",
"method": "das.WaitCatchUp",
"params": null,
"id": 0
}
{
"jsonrpc": "2.0",
"result": null,
"id": 0
}
GetBtcHeight returns the anchored Bitcoin height by the height of the Nubit DA Chain. Allow modular Apps to link Bitcoin Chain and Nubit DA Chain via consensus.
Auth level: read
func GetBtcHeight(nubitHeight uint64) uint64
{
"jsonrpc": "2.0",
"method": "header.GetBtcHeight",
"params": [
42
],
"id": 0
}
{
"jsonrpc": "2.0",
"result": 42,
"id": 0
}
GetByHash returns the header of the given hash from the node's header store.
Auth level: read
func GetByHash(hash libhead.Hash) *header.ExtendedHeader
{
"jsonrpc": "2.0",
"method": "header.GetByHash",
"params": [
"07"
],
"id": 0
}
{
"jsonrpc": "2.0",
"result": {
"commit": {
"block_id": {
"hash": "A7F6B1CF33313121539206754A73FDC22ADA48C4AA8C4BB4F707ED2E089E59D3",
"parts": {
"hash": "6634FE1E1DDDCB9914ACE81F146013986F5FDA03A8F1C16DC5ECA0D9B0E08FBC",
"total": 1
}
},
"height": 67374,
"round": 0,
"signatures": [
{
"block_id_flag": 2,
"signature": "HyR/uRIUNc5GNqQteZyrVjJM47SI9sRAgrLsNqJDls3AzbvHUfN4zzWyw0afyEvNm98Bm2GIoJoZC5D8oQvdBA==",
"timestamp": "2023-02-25T12:10:38.130121476Z",
"validator_address": "57DC09D28388DBF977CFC30EF50BE8B644CCC1FA"
}
]
},
"dah": {
"column_roots": [
"//////////7//////////ql+/VFmJ8PWE9BcjrTDLrY/hzVeGdzFCpfEhiXDXZmt",
"/////////////////////zHeGnUtPJn8QyPpePSYl4qRVrcUvG2fwptyoA85Myik"
],
"row_roots": [
"//////////7//////////ql+/VFmJ8PWE9BcjrTDLrY/hzVeGdzFCpfEhiXDXZmt",
"/////////////////////zHeGnUtPJn8QyPpePSYl4qRVrcUvG2fwptyoA85Myik"
]
},
"header": {
"app_hash": "1FC70854A185737C7FD720FCCE9167876EE4B9ABE23DB1EBB8C552D3E3978435",
"chain_id": "testnet",
"consensus_hash": "048091BC7DDC283F77BFBF91D73C44DA58C3DF8A9CBC867405D8B7F3DAADA22F",
"data_hash": "257760461993F8F197B421EC7435F3C36C3734923E3DA9A42DC73B05F07B3D08",
"evidence_hash": "E3B0C44298FC1C149AFBF4C8996FB92427AE41E4649B934CA495991B7852B855",
"height": "67374",
"last_block_id": {
"hash": "47A2C7758760988500B2F043D3903BBBF1C8B383CA33CF7056AA45E22055663E",
"parts": {
"hash": "33B012F244E27672169DD3D62CDBC92DA9486E410A5530F41FE6A890D8E2EE42",
"total": 1
}
},
"last_commit_hash": "888D47F5E9473501C99F2B6136B6B9FFBC9D1CD2F54002BCD5DF002FFEF0A83D",
"last_results_hash": "E3B0C44298FC1C149AFBF4C8996FB92427AE41E4649B934CA495991B7852B855",
"next_validators_hash": "883A0C92B8D976312B249C1397E73CF2981A9EB715717CBEE3800B8380C22C1D",
"proposer_address": "57DC09D28388DBF977CFC30EF50BE8B644CCC1FA",
"time": "2023-02-25T12:10:28.067566292Z",
"validators_hash": "883A0C92B8D976312B249C1397E73CF2981A9EB715717CBEE3800B8380C22C1D",
"version": {
"block": "11"
}
},
"validator_set": {
"proposer": {
"address": "57DC09D28388DBF977CFC30EF50BE8B644CCC1FA",
"proposer_priority": "0",
"pub_key": {
"type": "tendermint/PubKeyEd25519",
"value": "aoB4xU9//HAqOP9ciyp0+PTdZxt/UGKgZOabU6JxW8o="
},
"voting_power": "5000000000"
},
"validators": [
{
"address": "57DC09D28388DBF977CFC30EF50BE8B644CCC1FA",
"proposer_priority": "0",
"pub_key": {
"type": "tendermint/PubKeyEd25519",
"value": "aoB4xU9//HAqOP9ciyp0+PTdZxt/UGKgZOabU6JxW8o="
},
"voting_power": "5000000000"
}
]
}
},
"id": 0
}
GetByHeight returns the ExtendedHeader at the given height if it is currently available.
Auth level: read
func GetByHeight(u uint64) *header.ExtendedHeader
{
"jsonrpc": "2.0",
"method": "header.GetByHeight",
"params": [
42
],
"id": 0
}
{
"jsonrpc": "2.0",
"result": {
"commit": {
"block_id": {
"hash": "A7F6B1CF33313121539206754A73FDC22ADA48C4AA8C4BB4F707ED2E089E59D3",
"parts": {
"hash": "6634FE1E1DDDCB9914ACE81F146013986F5FDA03A8F1C16DC5ECA0D9B0E08FBC",
"total": 1
}
},
"height": 67374,
"round": 0,
"signatures": [
{
"block_id_flag": 2,
"signature": "HyR/uRIUNc5GNqQteZyrVjJM47SI9sRAgrLsNqJDls3AzbvHUfN4zzWyw0afyEvNm98Bm2GIoJoZC5D8oQvdBA==",
"timestamp": "2023-02-25T12:10:38.130121476Z",
"validator_address": "57DC09D28388DBF977CFC30EF50BE8B644CCC1FA"
}
]
},
"dah": {
"column_roots": [
"//////////7//////////ql+/VFmJ8PWE9BcjrTDLrY/hzVeGdzFCpfEhiXDXZmt",
"/////////////////////zHeGnUtPJn8QyPpePSYl4qRVrcUvG2fwptyoA85Myik"
],
"row_roots": [
"//////////7//////////ql+/VFmJ8PWE9BcjrTDLrY/hzVeGdzFCpfEhiXDXZmt",
"/////////////////////zHeGnUtPJn8QyPpePSYl4qRVrcUvG2fwptyoA85Myik"
]
},
"header": {
"app_hash": "1FC70854A185737C7FD720FCCE9167876EE4B9ABE23DB1EBB8C552D3E3978435",
"chain_id": "testnet",
"consensus_hash": "048091BC7DDC283F77BFBF91D73C44DA58C3DF8A9CBC867405D8B7F3DAADA22F",
"data_hash": "257760461993F8F197B421EC7435F3C36C3734923E3DA9A42DC73B05F07B3D08",
"evidence_hash": "E3B0C44298FC1C149AFBF4C8996FB92427AE41E4649B934CA495991B7852B855",
"height": "67374",
"last_block_id": {
"hash": "47A2C7758760988500B2F043D3903BBBF1C8B383CA33CF7056AA45E22055663E",
"parts": {
"hash": "33B012F244E27672169DD3D62CDBC92DA9486E410A5530F41FE6A890D8E2EE42",
"total": 1
}
},
"last_commit_hash": "888D47F5E9473501C99F2B6136B6B9FFBC9D1CD2F54002BCD5DF002FFEF0A83D",
"last_results_hash": "E3B0C44298FC1C149AFBF4C8996FB92427AE41E4649B934CA495991B7852B855",
"next_validators_hash": "883A0C92B8D976312B249C1397E73CF2981A9EB715717CBEE3800B8380C22C1D",
"proposer_address": "57DC09D28388DBF977CFC30EF50BE8B644CCC1FA",
"time": "2023-02-25T12:10:28.067566292Z",
"validators_hash": "883A0C92B8D976312B249C1397E73CF2981A9EB715717CBEE3800B8380C22C1D",
"version": {
"block": "11"
}
},
"validator_set": {
"proposer": {
"address": "57DC09D28388DBF977CFC30EF50BE8B644CCC1FA",
"proposer_priority": "0",
"pub_key": {
"type": "tendermint/PubKeyEd25519",
"value": "aoB4xU9//HAqOP9ciyp0+PTdZxt/UGKgZOabU6JxW8o="
},
"voting_power": "5000000000"
},
"validators": [
{
"address": "57DC09D28388DBF977CFC30EF50BE8B644CCC1FA",
"proposer_priority": "0",
"pub_key": {
"type": "tendermint/PubKeyEd25519",
"value": "aoB4xU9//HAqOP9ciyp0+PTdZxt/UGKgZOabU6JxW8o="
},
"voting_power": "5000000000"
}
]
}
},
"id": 0
}
GetHeightRangeAtBtcHeight returns the anchored Nubit height range by the height of the Bitcoin Chain. Allow modular Apps to link Bitcoin Chain and Nubit DA Chain via consensus.
Auth level: read
func GetHeightRangeAtBtcHeight(btcHeight uint64) []*header.ExtendedHeader
{
"jsonrpc": "2.0",
"method": "header.GetHeightRangeAtBtcHeight",
"params": [
42
],
"id": 0
}
{
"jsonrpc": "2.0",
"result": [
{
"commit": {
"block_id": {
"hash": "A7F6B1CF33313121539206754A73FDC22ADA48C4AA8C4BB4F707ED2E089E59D3",
"parts": {
"hash": "6634FE1E1DDDCB9914ACE81F146013986F5FDA03A8F1C16DC5ECA0D9B0E08FBC",
"total": 1
}
},
"height": 67374,
"round": 0,
"signatures": [
{
"block_id_flag": 2,
"signature": "HyR/uRIUNc5GNqQteZyrVjJM47SI9sRAgrLsNqJDls3AzbvHUfN4zzWyw0afyEvNm98Bm2GIoJoZC5D8oQvdBA==",
"timestamp": "2023-02-25T12:10:38.130121476Z",
"validator_address": "57DC09D28388DBF977CFC30EF50BE8B644CCC1FA"
}
]
},
"dah": {
"column_roots": [
"//////////7//////////ql+/VFmJ8PWE9BcjrTDLrY/hzVeGdzFCpfEhiXDXZmt",
"/////////////////////zHeGnUtPJn8QyPpePSYl4qRVrcUvG2fwptyoA85Myik"
],
"row_roots": [
"//////////7//////////ql+/VFmJ8PWE9BcjrTDLrY/hzVeGdzFCpfEhiXDXZmt",
"/////////////////////zHeGnUtPJn8QyPpePSYl4qRVrcUvG2fwptyoA85Myik"
]
},
"header": {
"app_hash": "1FC70854A185737C7FD720FCCE9167876EE4B9ABE23DB1EBB8C552D3E3978435",
"chain_id": "testnet",
"consensus_hash": "048091BC7DDC283F77BFBF91D73C44DA58C3DF8A9CBC867405D8B7F3DAADA22F",
"data_hash": "257760461993F8F197B421EC7435F3C36C3734923E3DA9A42DC73B05F07B3D08",
"evidence_hash": "E3B0C44298FC1C149AFBF4C8996FB92427AE41E4649B934CA495991B7852B855",
"height": "67374",
"last_block_id": {
"hash": "47A2C7758760988500B2F043D3903BBBF1C8B383CA33CF7056AA45E22055663E",
"parts": {
"hash": "33B012F244E27672169DD3D62CDBC92DA9486E410A5530F41FE6A890D8E2EE42",
"total": 1
}
},
"last_commit_hash": "888D47F5E9473501C99F2B6136B6B9FFBC9D1CD2F54002BCD5DF002FFEF0A83D",
"last_results_hash": "E3B0C44298FC1C149AFBF4C8996FB92427AE41E4649B934CA495991B7852B855",
"next_validators_hash": "883A0C92B8D976312B249C1397E73CF2981A9EB715717CBEE3800B8380C22C1D",
"proposer_address": "57DC09D28388DBF977CFC30EF50BE8B644CCC1FA",
"time": "2023-02-25T12:10:28.067566292Z",
"validators_hash": "883A0C92B8D976312B249C1397E73CF2981A9EB715717CBEE3800B8380C22C1D",
"version": {
"block": "11"
}
},
"validator_set": {
"proposer": {
"address": "57DC09D28388DBF977CFC30EF50BE8B644CCC1FA",
"proposer_priority": "0",
"pub_key": {
"type": "tendermint/PubKeyEd25519",
"value": "aoB4xU9//HAqOP9ciyp0+PTdZxt/UGKgZOabU6JxW8o="
},
"voting_power": "5000000000"
},
"validators": [
{
"address": "57DC09D28388DBF977CFC30EF50BE8B644CCC1FA",
"proposer_priority": "0",
"pub_key": {
"type": "tendermint/PubKeyEd25519",
"value": "aoB4xU9//HAqOP9ciyp0+PTdZxt/UGKgZOabU6JxW8o="
},
"voting_power": "5000000000"
}
]
}
}
],
"id": 0
}
GetRangeByHeight returns the given range (from:to) of ExtendedHeaders from the node's header store and verifies that the returned headers are adjacent to each other.
Auth level: read
func GetRangeByHeight(
from *header.ExtendedHeader,
to uint64,
) []*header.ExtendedHeader
{
"jsonrpc": "2.0",
"method": "header.GetRangeByHeight",
"params": [
{
"commit": {
"block_id": {
"hash": "A7F6B1CF33313121539206754A73FDC22ADA48C4AA8C4BB4F707ED2E089E59D3",
"parts": {
"hash": "6634FE1E1DDDCB9914ACE81F146013986F5FDA03A8F1C16DC5ECA0D9B0E08FBC",
"total": 1
}
},
"height": 67374,
"round": 0,
"signatures": [
{
"block_id_flag": 2,
"signature": "HyR/uRIUNc5GNqQteZyrVjJM47SI9sRAgrLsNqJDls3AzbvHUfN4zzWyw0afyEvNm98Bm2GIoJoZC5D8oQvdBA==",
"timestamp": "2023-02-25T12:10:38.130121476Z",
"validator_address": "57DC09D28388DBF977CFC30EF50BE8B644CCC1FA"
}
]
},
"dah": {
"column_roots": [
"//////////7//////////ql+/VFmJ8PWE9BcjrTDLrY/hzVeGdzFCpfEhiXDXZmt",
"/////////////////////zHeGnUtPJn8QyPpePSYl4qRVrcUvG2fwptyoA85Myik"
],
"row_roots": [
"//////////7//////////ql+/VFmJ8PWE9BcjrTDLrY/hzVeGdzFCpfEhiXDXZmt",
"/////////////////////zHeGnUtPJn8QyPpePSYl4qRVrcUvG2fwptyoA85Myik"
]
},
"header": {
"app_hash": "1FC70854A185737C7FD720FCCE9167876EE4B9ABE23DB1EBB8C552D3E3978435",
"chain_id": "testnet",
"consensus_hash": "048091BC7DDC283F77BFBF91D73C44DA58C3DF8A9CBC867405D8B7F3DAADA22F",
"data_hash": "257760461993F8F197B421EC7435F3C36C3734923E3DA9A42DC73B05F07B3D08",
"evidence_hash": "E3B0C44298FC1C149AFBF4C8996FB92427AE41E4649B934CA495991B7852B855",
"height": "67374",
"last_block_id": {
"hash": "47A2C7758760988500B2F043D3903BBBF1C8B383CA33CF7056AA45E22055663E",
"parts": {
"hash": "33B012F244E27672169DD3D62CDBC92DA9486E410A5530F41FE6A890D8E2EE42",
"total": 1
}
},
"last_commit_hash": "888D47F5E9473501C99F2B6136B6B9FFBC9D1CD2F54002BCD5DF002FFEF0A83D",
"last_results_hash": "E3B0C44298FC1C149AFBF4C8996FB92427AE41E4649B934CA495991B7852B855",
"next_validators_hash": "883A0C92B8D976312B249C1397E73CF2981A9EB715717CBEE3800B8380C22C1D",
"proposer_address": "57DC09D28388DBF977CFC30EF50BE8B644CCC1FA",
"time": "2023-02-25T12:10:28.067566292Z",
"validators_hash": "883A0C92B8D976312B249C1397E73CF2981A9EB715717CBEE3800B8380C22C1D",
"version": {
"block": "11"
}
},
"validator_set": {
"proposer": {
"address": "57DC09D28388DBF977CFC30EF50BE8B644CCC1FA",
"proposer_priority": "0",
"pub_key": {
"type": "tendermint/PubKeyEd25519",
"value": "aoB4xU9//HAqOP9ciyp0+PTdZxt/UGKgZOabU6JxW8o="
},
"voting_power": "5000000000"
},
"validators": [
{
"address": "57DC09D28388DBF977CFC30EF50BE8B644CCC1FA",
"proposer_priority": "0",
"pub_key": {
"type": "tendermint/PubKeyEd25519",
"value": "aoB4xU9//HAqOP9ciyp0+PTdZxt/UGKgZOabU6JxW8o="
},
"voting_power": "5000000000"
}
]
}
},
42
],
"id": 0
}
{
"jsonrpc": "2.0",
"result": [
{
"commit": {
"block_id": {
"hash": "A7F6B1CF33313121539206754A73FDC22ADA48C4AA8C4BB4F707ED2E089E59D3",
"parts": {
"hash": "6634FE1E1DDDCB9914ACE81F146013986F5FDA03A8F1C16DC5ECA0D9B0E08FBC",
"total": 1
}
},
"height": 67374,
"round": 0,
"signatures": [
{
"block_id_flag": 2,
"signature": "HyR/uRIUNc5GNqQteZyrVjJM47SI9sRAgrLsNqJDls3AzbvHUfN4zzWyw0afyEvNm98Bm2GIoJoZC5D8oQvdBA==",
"timestamp": "2023-02-25T12:10:38.130121476Z",
"validator_address": "57DC09D28388DBF977CFC30EF50BE8B644CCC1FA"
}
]
},
"dah": {
"column_roots": [
"//////////7//////////ql+/VFmJ8PWE9BcjrTDLrY/hzVeGdzFCpfEhiXDXZmt",
"/////////////////////zHeGnUtPJn8QyPpePSYl4qRVrcUvG2fwptyoA85Myik"
],
"row_roots": [
"//////////7//////////ql+/VFmJ8PWE9BcjrTDLrY/hzVeGdzFCpfEhiXDXZmt",
"/////////////////////zHeGnUtPJn8QyPpePSYl4qRVrcUvG2fwptyoA85Myik"
]
},
"header": {
"app_hash": "1FC70854A185737C7FD720FCCE9167876EE4B9ABE23DB1EBB8C552D3E3978435",
"chain_id": "testnet",
"consensus_hash": "048091BC7DDC283F77BFBF91D73C44DA58C3DF8A9CBC867405D8B7F3DAADA22F",
"data_hash": "257760461993F8F197B421EC7435F3C36C3734923E3DA9A42DC73B05F07B3D08",
"evidence_hash": "E3B0C44298FC1C149AFBF4C8996FB92427AE41E4649B934CA495991B7852B855",
"height": "67374",
"last_block_id": {
"hash": "47A2C7758760988500B2F043D3903BBBF1C8B383CA33CF7056AA45E22055663E",
"parts": {
"hash": "33B012F244E27672169DD3D62CDBC92DA9486E410A5530F41FE6A890D8E2EE42",
"total": 1
}
},
"last_commit_hash": "888D47F5E9473501C99F2B6136B6B9FFBC9D1CD2F54002BCD5DF002FFEF0A83D",
"last_results_hash": "E3B0C44298FC1C149AFBF4C8996FB92427AE41E4649B934CA495991B7852B855",
"next_validators_hash": "883A0C92B8D976312B249C1397E73CF2981A9EB715717CBEE3800B8380C22C1D",
"proposer_address": "57DC09D28388DBF977CFC30EF50BE8B644CCC1FA",
"time": "2023-02-25T12:10:28.067566292Z",
"validators_hash": "883A0C92B8D976312B249C1397E73CF2981A9EB715717CBEE3800B8380C22C1D",
"version": {
"block": "11"
}
},
"validator_set": {
"proposer": {
"address": "57DC09D28388DBF977CFC30EF50BE8B644CCC1FA",
"proposer_priority": "0",
"pub_key": {
"type": "tendermint/PubKeyEd25519",
"value": "aoB4xU9//HAqOP9ciyp0+PTdZxt/UGKgZOabU6JxW8o="
},
"voting_power": "5000000000"
},
"validators": [
{
"address": "57DC09D28388DBF977CFC30EF50BE8B644CCC1FA",
"proposer_priority": "0",
"pub_key": {
"type": "tendermint/PubKeyEd25519",
"value": "aoB4xU9//HAqOP9ciyp0+PTdZxt/UGKgZOabU6JxW8o="
},
"voting_power": "5000000000"
}
]
}
}
],
"id": 0
}
LocalHead returns the ExtendedHeader of the chain head.
Auth level: read
func LocalHead() *header.ExtendedHeader
{
"jsonrpc": "2.0",
"method": "header.LocalHead",
"params": null,
"id": 0
}
{
"jsonrpc": "2.0",
"result": {
"commit": {
"block_id": {
"hash": "A7F6B1CF33313121539206754A73FDC22ADA48C4AA8C4BB4F707ED2E089E59D3",
"parts": {
"hash": "6634FE1E1DDDCB9914ACE81F146013986F5FDA03A8F1C16DC5ECA0D9B0E08FBC",
"total": 1
}
},
"height": 67374,
"round": 0,
"signatures": [
{
"block_id_flag": 2,
"signature": "HyR/uRIUNc5GNqQteZyrVjJM47SI9sRAgrLsNqJDls3AzbvHUfN4zzWyw0afyEvNm98Bm2GIoJoZC5D8oQvdBA==",
"timestamp": "2023-02-25T12:10:38.130121476Z",
"validator_address": "57DC09D28388DBF977CFC30EF50BE8B644CCC1FA"
}
]
},
"dah": {
"column_roots": [
"//////////7//////////ql+/VFmJ8PWE9BcjrTDLrY/hzVeGdzFCpfEhiXDXZmt",
"/////////////////////zHeGnUtPJn8QyPpePSYl4qRVrcUvG2fwptyoA85Myik"
],
"row_roots": [
"//////////7//////////ql+/VFmJ8PWE9BcjrTDLrY/hzVeGdzFCpfEhiXDXZmt",
"/////////////////////zHeGnUtPJn8QyPpePSYl4qRVrcUvG2fwptyoA85Myik"
]
},
"header": {
"app_hash": "1FC70854A185737C7FD720FCCE9167876EE4B9ABE23DB1EBB8C552D3E3978435",
"chain_id": "testnet",
"consensus_hash": "048091BC7DDC283F77BFBF91D73C44DA58C3DF8A9CBC867405D8B7F3DAADA22F",
"data_hash": "257760461993F8F197B421EC7435F3C36C3734923E3DA9A42DC73B05F07B3D08",
"evidence_hash": "E3B0C44298FC1C149AFBF4C8996FB92427AE41E4649B934CA495991B7852B855",
"height": "67374",
"last_block_id": {
"hash": "47A2C7758760988500B2F043D3903BBBF1C8B383CA33CF7056AA45E22055663E",
"parts": {
"hash": "33B012F244E27672169DD3D62CDBC92DA9486E410A5530F41FE6A890D8E2EE42",
"total": 1
}
},
"last_commit_hash": "888D47F5E9473501C99F2B6136B6B9FFBC9D1CD2F54002BCD5DF002FFEF0A83D",
"last_results_hash": "E3B0C44298FC1C149AFBF4C8996FB92427AE41E4649B934CA495991B7852B855",
"next_validators_hash": "883A0C92B8D976312B249C1397E73CF2981A9EB715717CBEE3800B8380C22C1D",
"proposer_address": "57DC09D28388DBF977CFC30EF50BE8B644CCC1FA",
"time": "2023-02-25T12:10:28.067566292Z",
"validators_hash": "883A0C92B8D976312B249C1397E73CF2981A9EB715717CBEE3800B8380C22C1D",
"version": {
"block": "11"
}
},
"validator_set": {
"proposer": {
"address": "57DC09D28388DBF977CFC30EF50BE8B644CCC1FA",
"proposer_priority": "0",
"pub_key": {
"type": "tendermint/PubKeyEd25519",
"value": "aoB4xU9//HAqOP9ciyp0+PTdZxt/UGKgZOabU6JxW8o="
},
"voting_power": "5000000000"
},
"validators": [
{
"address": "57DC09D28388DBF977CFC30EF50BE8B644CCC1FA",
"proposer_priority": "0",
"pub_key": {
"type": "tendermint/PubKeyEd25519",
"value": "aoB4xU9//HAqOP9ciyp0+PTdZxt/UGKgZOabU6JxW8o="
},
"voting_power": "5000000000"
}
]
}
},
"id": 0
}
NetworkHead provides the Syncer's view of the current network head.
Auth level: read
func NetworkHead() *header.ExtendedHeader
{
"jsonrpc": "2.0",
"method": "header.NetworkHead",
"params": null,
"id": 0
}
{
"jsonrpc": "2.0",
"result": {
"commit": {
"block_id": {
"hash": "A7F6B1CF33313121539206754A73FDC22ADA48C4AA8C4BB4F707ED2E089E59D3",
"parts": {
"hash": "6634FE1E1DDDCB9914ACE81F146013986F5FDA03A8F1C16DC5ECA0D9B0E08FBC",
"total": 1
}
},
"height": 67374,
"round": 0,
"signatures": [
{
"block_id_flag": 2,
"signature": "HyR/uRIUNc5GNqQteZyrVjJM47SI9sRAgrLsNqJDls3AzbvHUfN4zzWyw0afyEvNm98Bm2GIoJoZC5D8oQvdBA==",
"timestamp": "2023-02-25T12:10:38.130121476Z",
"validator_address": "57DC09D28388DBF977CFC30EF50BE8B644CCC1FA"
}
]
},
"dah": {
"column_roots": [
"//////////7//////////ql+/VFmJ8PWE9BcjrTDLrY/hzVeGdzFCpfEhiXDXZmt",
"/////////////////////zHeGnUtPJn8QyPpePSYl4qRVrcUvG2fwptyoA85Myik"
],
"row_roots": [
"//////////7//////////ql+/VFmJ8PWE9BcjrTDLrY/hzVeGdzFCpfEhiXDXZmt",
"/////////////////////zHeGnUtPJn8QyPpePSYl4qRVrcUvG2fwptyoA85Myik"
]
},
"header": {
"app_hash": "1FC70854A185737C7FD720FCCE9167876EE4B9ABE23DB1EBB8C552D3E3978435",
"chain_id": "testnet",
"consensus_hash": "048091BC7DDC283F77BFBF91D73C44DA58C3DF8A9CBC867405D8B7F3DAADA22F",
"data_hash": "257760461993F8F197B421EC7435F3C36C3734923E3DA9A42DC73B05F07B3D08",
"evidence_hash": "E3B0C44298FC1C149AFBF4C8996FB92427AE41E4649B934CA495991B7852B855",
"height": "67374",
"last_block_id": {
"hash": "47A2C7758760988500B2F043D3903BBBF1C8B383CA33CF7056AA45E22055663E",
"parts": {
"hash": "33B012F244E27672169DD3D62CDBC92DA9486E410A5530F41FE6A890D8E2EE42",
"total": 1
}
},
"last_commit_hash": "888D47F5E9473501C99F2B6136B6B9FFBC9D1CD2F54002BCD5DF002FFEF0A83D",
"last_results_hash": "E3B0C44298FC1C149AFBF4C8996FB92427AE41E4649B934CA495991B7852B855",
"next_validators_hash": "883A0C92B8D976312B249C1397E73CF2981A9EB715717CBEE3800B8380C22C1D",
"proposer_address": "57DC09D28388DBF977CFC30EF50BE8B644CCC1FA",
"time": "2023-02-25T12:10:28.067566292Z",
"validators_hash": "883A0C92B8D976312B249C1397E73CF2981A9EB715717CBEE3800B8380C22C1D",
"version": {
"block": "11"
}
},
"validator_set": {
"proposer": {
"address": "57DC09D28388DBF977CFC30EF50BE8B644CCC1FA",
"proposer_priority": "0",
"pub_key": {
"type": "tendermint/PubKeyEd25519",
"value": "aoB4xU9//HAqOP9ciyp0+PTdZxt/UGKgZOabU6JxW8o="
},
"voting_power": "5000000000"
},
"validators": [
{
"address": "57DC09D28388DBF977CFC30EF50BE8B644CCC1FA",
"proposer_priority": "0",
"pub_key": {
"type": "tendermint/PubKeyEd25519",
"value": "aoB4xU9//HAqOP9ciyp0+PTdZxt/UGKgZOabU6JxW8o="
},
"voting_power": "5000000000"
}
]
}
},
"id": 0
}
Subscribe to recent ExtendedHeaders from the network.
Auth level: read
func Subscribe() <-chan *header.ExtendedHeader
{
"jsonrpc": "2.0",
"method": "header.Subscribe",
"params": null,
"id": 0
}
{
"jsonrpc": "2.0",
"result": null,
"id": 0
}
SyncState returns the current state of the header Syncer.
Auth level: read
func SyncState() sync.State
{
"jsonrpc": "2.0",
"method": "header.SyncState",
"params": null,
"id": 0
}
{
"jsonrpc": "2.0",
"result": {
"end": "0001-01-01T00:00:00Z",
"error": "string value",
"from_hash": "07",
"from_height": 42,
"height": 42,
"id": 42,
"start": "0001-01-01T00:00:00Z",
"to_hash": "07",
"to_height": 42
},
"id": 0
}
SyncWait blocks until the header Syncer is synced to network head.
Auth level: read
func SyncWait()
{
"jsonrpc": "2.0",
"method": "header.SyncWait",
"params": null,
"id": 0
}
{
"jsonrpc": "2.0",
"result": null,
"id": 0
}
WaitForHeight blocks until the header at the given height has been processed by the store or context deadline is exceeded.
Auth level: read
func WaitForHeight(u uint64) *header.ExtendedHeader
{
"jsonrpc": "2.0",
"method": "header.WaitForHeight",
"params": [
42
],
"id": 0
}
{
"jsonrpc": "2.0",
"result": {
"commit": {
"block_id": {
"hash": "A7F6B1CF33313121539206754A73FDC22ADA48C4AA8C4BB4F707ED2E089E59D3",
"parts": {
"hash": "6634FE1E1DDDCB9914ACE81F146013986F5FDA03A8F1C16DC5ECA0D9B0E08FBC",
"total": 1
}
},
"height": 67374,
"round": 0,
"signatures": [
{
"block_id_flag": 2,
"signature": "HyR/uRIUNc5GNqQteZyrVjJM47SI9sRAgrLsNqJDls3AzbvHUfN4zzWyw0afyEvNm98Bm2GIoJoZC5D8oQvdBA==",
"timestamp": "2023-02-25T12:10:38.130121476Z",
"validator_address": "57DC09D28388DBF977CFC30EF50BE8B644CCC1FA"
}
]
},
"dah": {
"column_roots": [
"//////////7//////////ql+/VFmJ8PWE9BcjrTDLrY/hzVeGdzFCpfEhiXDXZmt",
"/////////////////////zHeGnUtPJn8QyPpePSYl4qRVrcUvG2fwptyoA85Myik"
],
"row_roots": [
"//////////7//////////ql+/VFmJ8PWE9BcjrTDLrY/hzVeGdzFCpfEhiXDXZmt",
"/////////////////////zHeGnUtPJn8QyPpePSYl4qRVrcUvG2fwptyoA85Myik"
]
},
"header": {
"app_hash": "1FC70854A185737C7FD720FCCE9167876EE4B9ABE23DB1EBB8C552D3E3978435",
"chain_id": "testnet",
"consensus_hash": "048091BC7DDC283F77BFBF91D73C44DA58C3DF8A9CBC867405D8B7F3DAADA22F",
"data_hash": "257760461993F8F197B421EC7435F3C36C3734923E3DA9A42DC73B05F07B3D08",
"evidence_hash": "E3B0C44298FC1C149AFBF4C8996FB92427AE41E4649B934CA495991B7852B855",
"height": "67374",
"last_block_id": {
"hash": "47A2C7758760988500B2F043D3903BBBF1C8B383CA33CF7056AA45E22055663E",
"parts": {
"hash": "33B012F244E27672169DD3D62CDBC92DA9486E410A5530F41FE6A890D8E2EE42",
"total": 1
}
},
"last_commit_hash": "888D47F5E9473501C99F2B6136B6B9FFBC9D1CD2F54002BCD5DF002FFEF0A83D",
"last_results_hash": "E3B0C44298FC1C149AFBF4C8996FB92427AE41E4649B934CA495991B7852B855",
"next_validators_hash": "883A0C92B8D976312B249C1397E73CF2981A9EB715717CBEE3800B8380C22C1D",
"proposer_address": "57DC09D28388DBF977CFC30EF50BE8B644CCC1FA",
"time": "2023-02-25T12:10:28.067566292Z",
"validators_hash": "883A0C92B8D976312B249C1397E73CF2981A9EB715717CBEE3800B8380C22C1D",
"version": {
"block": "11"
}
},
"validator_set": {
"proposer": {
"address": "57DC09D28388DBF977CFC30EF50BE8B644CCC1FA",
"proposer_priority": "0",
"pub_key": {
"type": "tendermint/PubKeyEd25519",
"value": "aoB4xU9//HAqOP9ciyp0+PTdZxt/UGKgZOabU6JxW8o="
},
"voting_power": "5000000000"
},
"validators": [
{
"address": "57DC09D28388DBF977CFC30EF50BE8B644CCC1FA",
"proposer_priority": "0",
"pub_key": {
"type": "tendermint/PubKeyEd25519",
"value": "aoB4xU9//HAqOP9ciyp0+PTdZxt/UGKgZOabU6JxW8o="
},
"voting_power": "5000000000"
}
]
}
},
"id": 0
}
AuthNew signs and returns a new token with the given permissions.
Auth level: admin
func AuthNew(perms []auth.Permission) string
{
"jsonrpc": "2.0",
"method": "node.AuthNew",
"params": [
[
"admin"
]
],
"id": 0
}
{
"jsonrpc": "2.0",
"result": "string value",
"id": 0
}
AuthVerify returns the permissions assigned to the given token.
Auth level: admin
func AuthVerify(token string) []auth.Permission
{
"jsonrpc": "2.0",
"method": "node.AuthVerify",
"params": [
"string value"
],
"id": 0
}
{
"jsonrpc": "2.0",
"result": [
"admin"
],
"id": 0
}
Info returns administrative information about the node.
Auth level: admin
func Info() Info
{
"jsonrpc": "2.0",
"method": "node.Info",
"params": null,
"id": 0
}
{
"jsonrpc": "2.0",
"result": {
"api_version": "string value",
"type": 3
},
"id": 0
}
LogLevelSet sets the given component log level to the given level.
Auth level: admin
func LogLevelSet(
name string,
level string,
)
{
"jsonrpc": "2.0",
"method": "node.LogLevelSet",
"params": [
"string value",
"string value"
],
"id": 0
}
{
"jsonrpc": "2.0",
"result": null,
"id": 0
}
Ready returns true once the node's RPC is ready to accept requests.
Auth level: read
func Ready() bool
{
"jsonrpc": "2.0",
"method": "node.Ready",
"params": null,
"id": 0
}
{
"jsonrpc": "2.0",
"result": true,
"id": 0
}
BandwidthForPeer returns a Stats struct with bandwidth metrics associated with the given peer.ID. The metrics returned include all traffic sent / received for the peer, regardless of protocol.
Auth level: admin
func BandwidthForPeer(id peer.ID) metrics.Stats
{
"jsonrpc": "2.0",
"method": "p2p.BandwidthForPeer",
"params": [
"CovLVG4fQcqUS6DmoMxAwVJGNW6PMzfwTG6BHW9NH9TLGHcbRfvPVc3JVhnufK3HTzStoTo"
],
"id": 0
}
{
"jsonrpc": "2.0",
"result": {
"RateIn": 42,
"RateOut": 42,
"TotalIn": 42,
"TotalOut": 42
},
"id": 0
}
BandwidthForProtocol returns a Stats struct with bandwidth metrics associated with the given protocol.ID.
Auth level: admin
func BandwidthForProtocol(proto protocol.ID) metrics.Stats
{
"jsonrpc": "2.0",
"method": "p2p.BandwidthForProtocol",
"params": [
"/nubit/testnet/ipfs/bitswap"
],
"id": 0
}
{
"jsonrpc": "2.0",
"result": {
"RateIn": 42,
"RateOut": 42,
"TotalIn": 42,
"TotalOut": 42
},
"id": 0
}
BandwidthStats returns a Stats struct with bandwidth metrics for all data sent/received by the local peer, regardless of protocol or remote peer IDs.
Auth level: admin
func BandwidthStats() metrics.Stats
{
"jsonrpc": "2.0",
"method": "p2p.BandwidthStats",
"params": null,
"id": 0
}
{
"jsonrpc": "2.0",
"result": {
"RateIn": 42,
"RateOut": 42,
"TotalIn": 42,
"TotalOut": 42
},
"id": 0
}
BlockPeer adds a peer to the set of blocked peers.
Auth level: admin
func BlockPeer(p peer.ID)
{
"jsonrpc": "2.0",
"method": "p2p.BlockPeer",
"params": [
"CovLVG4fQcqUS6DmoMxAwVJGNW6PMzfwTG6BHW9NH9TLGHcbRfvPVc3JVhnufK3HTzStoTo"
],
"id": 0
}
{
"jsonrpc": "2.0",
"result": null,
"id": 0
}
ClosePeer closes the connection to a given peer.
Auth level: admin
func ClosePeer(id peer.ID)
{
"jsonrpc": "2.0",
"method": "p2p.ClosePeer",
"params": [
"CovLVG4fQcqUS6DmoMxAwVJGNW6PMzfwTG6BHW9NH9TLGHcbRfvPVc3JVhnufK3HTzStoTo"
],
"id": 0
}
{
"jsonrpc": "2.0",
"result": null,
"id": 0
}
Connect ensures there is a connection between this host and the peer with given peer.
Auth level: admin
func Connect(pi peer.AddrInfo)
{
"jsonrpc": "2.0",
"method": "p2p.Connect",
"params": [
{
"Addrs": [
"/ip6/::1/udp/2121/quic-v1"
],
"ID": "CovLVG4fQcqUS6DmoMxAwVJGNW6PMzfwTG6BHW9NH9TLGHcbRfvPVc3JVhnufK3HTzStoTo"
}
],
"id": 0
}
{
"jsonrpc": "2.0",
"result": null,
"id": 0
}
Connectedness returns a state signaling connection capabilities.
Auth level: admin
func Connectedness(id peer.ID) network.Connectedness
{
"jsonrpc": "2.0",
"method": "p2p.Connectedness",
"params": [
"CovLVG4fQcqUS6DmoMxAwVJGNW6PMzfwTG6BHW9NH9TLGHcbRfvPVc3JVhnufK3HTzStoTo"
],
"id": 0
}
{
"jsonrpc": "2.0",
"result": 1,
"id": 0
}
Info returns address information about the host.
Auth level: admin
func Info() peer.AddrInfo
{
"jsonrpc": "2.0",
"method": "p2p.Info",
"params": null,
"id": 0
}
{
"jsonrpc": "2.0",
"result": {
"Addrs": [
"/ip6/::1/udp/2121/quic-v1"
],
"ID": "CovLVG4fQcqUS6DmoMxAwVJGNW6PMzfwTG6BHW9NH9TLGHcbRfvPVc3JVhnufK3HTzStoTo"
},
"id": 0
}
IsProtected returns whether the given peer is protected.
Auth level: admin
func IsProtected(
id peer.ID,
tag string,
) bool
{
"jsonrpc": "2.0",
"method": "p2p.IsProtected",
"params": [
"CovLVG4fQcqUS6DmoMxAwVJGNW6PMzfwTG6BHW9NH9TLGHcbRfvPVc3JVhnufK3HTzStoTo",
"string value"
],
"id": 0
}
{
"jsonrpc": "2.0",
"result": true,
"id": 0
}
ListBlockedPeers returns a list of blocked peers.
Auth level: admin
func ListBlockedPeers() []peer.ID
{
"jsonrpc": "2.0",
"method": "p2p.ListBlockedPeers",
"params": null,
"id": 0
}
{
"jsonrpc": "2.0",
"result": [
"CovLVG4fQcqUS6DmoMxAwVJGNW6PMzfwTG6BHW9NH9TLGHcbRfvPVc3JVhnufK3HTzStoTo"
],
"id": 0
}
NATStatus returns the current NAT status.
Auth level: admin
func NATStatus() network.Reachability
{
"jsonrpc": "2.0",
"method": "p2p.NATStatus",
"params": null,
"id": 0
}
{
"jsonrpc": "2.0",
"result": 2,
"id": 0
}
PeerInfo returns a small slice of information Peerstore has on the given peer.
Auth level: admin
func PeerInfo(id peer.ID) peer.AddrInfo
{
"jsonrpc": "2.0",
"method": "p2p.PeerInfo",
"params": [
"CovLVG4fQcqUS6DmoMxAwVJGNW6PMzfwTG6BHW9NH9TLGHcbRfvPVc3JVhnufK3HTzStoTo"
],
"id": 0
}
{
"jsonrpc": "2.0",
"result": {
"Addrs": [
"/ip6/::1/udp/2121/quic-v1"
],
"ID": "CovLVG4fQcqUS6DmoMxAwVJGNW6PMzfwTG6BHW9NH9TLGHcbRfvPVc3JVhnufK3HTzStoTo"
},
"id": 0
}
Peers returns connected peers.
Auth level: admin
func Peers() []peer.ID
{
"jsonrpc": "2.0",
"method": "p2p.Peers",
"params": null,
"id": 0
}
{
"jsonrpc": "2.0",
"result": [
"CovLVG4fQcqUS6DmoMxAwVJGNW6PMzfwTG6BHW9NH9TLGHcbRfvPVc3JVhnufK3HTzStoTo"
],
"id": 0
}
Protect adds a peer to the list of peers who have a bidirectional peering agreement that they are protected from being trimmed, dropped or negatively scored.
Auth level: admin
func Protect(
id peer.ID,
tag string,
)
{
"jsonrpc": "2.0",
"method": "p2p.Protect",
"params": [
"CovLVG4fQcqUS6DmoMxAwVJGNW6PMzfwTG6BHW9NH9TLGHcbRfvPVc3JVhnufK3HTzStoTo",
"string value"
],
"id": 0
}
{
"jsonrpc": "2.0",
"result": null,
"id": 0
}
PubSubPeers returns the peer IDs of the peers joined on the given topic.
Auth level: admin
func PubSubPeers(topic string) []peer.ID
{
"jsonrpc": "2.0",
"method": "p2p.PubSubPeers",
"params": [
"string value"
],
"id": 0
}
{
"jsonrpc": "2.0",
"result": [
"CovLVG4fQcqUS6DmoMxAwVJGNW6PMzfwTG6BHW9NH9TLGHcbRfvPVc3JVhnufK3HTzStoTo"
],
"id": 0
}
ResourceState returns the state of the resource manager.
Auth level: admin
func ResourceState() rcmgr.ResourceManagerStat
{
"jsonrpc": "2.0",
"method": "p2p.ResourceState",
"params": null,
"id": 0
}
{
"jsonrpc": "2.0",
"result": {
"Peers": {
"\u0000$\b\u0001\u0012 �-��\u0026��Y�k�\u000e\u0011�S�RM\u0013�\u0015��$����*�\u0002W": {
"Memory": 1048576,
"NumConnsInbound": 0,
"NumConnsOutbound": 3,
"NumFD": 3,
"NumStreamsInbound": 1,
"NumStreamsOutbound": 3
}
},
"Protocols": {
"/floodsub/1.0.0": {
"Memory": 0,
"NumConnsInbound": 0,
"NumConnsOutbound": 0,
"NumFD": 0,
"NumStreamsInbound": 2,
"NumStreamsOutbound": 0
},
"/ipfs/id/1.0.0": {
"Memory": 0,
"NumConnsInbound": 0,
"NumConnsOutbound": 0,
"NumFD": 0,
"NumStreamsInbound": 0,
"NumStreamsOutbound": 1
},
"/meshsub/1.1.0": {
"Memory": 0,
"NumConnsInbound": 0,
"NumConnsOutbound": 0,
"NumFD": 0,
"NumStreamsInbound": 2,
"NumStreamsOutbound": 4
},
"/nubit/arabica-3/ipfs/bitswap/1.2.0": {
"Memory": 0,
"NumConnsInbound": 0,
"NumConnsOutbound": 0,
"NumFD": 0,
"NumStreamsInbound": 0,
"NumStreamsOutbound": 4
},
"/nubit/arabica-3/kad/1.0.0": {
"Memory": 0,
"NumConnsInbound": 0,
"NumConnsOutbound": 0,
"NumFD": 0,
"NumStreamsInbound": 0,
"NumStreamsOutbound": 4
}
},
"Services": {
"libp2p.autonat": {
"Memory": 0,
"NumConnsInbound": 0,
"NumConnsOutbound": 0,
"NumFD": 0,
"NumStreamsInbound": 0,
"NumStreamsOutbound": 0
},
"libp2p.identify": {
"Memory": 0,
"NumConnsInbound": 0,
"NumConnsOutbound": 0,
"NumFD": 0,
"NumStreamsInbound": 0,
"NumStreamsOutbound": 0
}
},
"System": {
"Memory": 4456448,
"NumConnsInbound": 0,
"NumConnsOutbound": 13,
"NumFD": 7,
"NumStreamsInbound": 4,
"NumStreamsOutbound": 13
},
"Transient": {
"Memory": 0,
"NumConnsInbound": 0,
"NumConnsOutbound": 0,
"NumFD": 0,
"NumStreamsInbound": 0,
"NumStreamsOutbound": 0
}
},
"id": 0
}
UnblockPeer removes a peer from the set of blocked peers.
Auth level: admin
func UnblockPeer(p peer.ID)
{
"jsonrpc": "2.0",
"method": "p2p.UnblockPeer",
"params": [
"CovLVG4fQcqUS6DmoMxAwVJGNW6PMzfwTG6BHW9NH9TLGHcbRfvPVc3JVhnufK3HTzStoTo"
],
"id": 0
}
{
"jsonrpc": "2.0",
"result": null,
"id": 0
}
Unprotect removes a peer from the list of peers who have a bidirectional peering agreement that they are protected from being trimmed, dropped or negatively scored, returning a bool representing whether the given peer is protected or not.
Auth level: admin
func Unprotect(
id peer.ID,
tag string,
) bool
{
"jsonrpc": "2.0",
"method": "p2p.Unprotect",
"params": [
"CovLVG4fQcqUS6DmoMxAwVJGNW6PMzfwTG6BHW9NH9TLGHcbRfvPVc3JVhnufK3HTzStoTo",
"string value"
],
"id": 0
}
{
"jsonrpc": "2.0",
"result": true,
"id": 0
}
GetEDS gets the full EDS identified by the given extended header.
Auth level: read
func GetEDS(header *header.ExtendedHeader) *rsmt2d.ExtendedDataSquare
{
"jsonrpc": "2.0",
"method": "share.GetEDS",
"params": [
{
"commit": {
"block_id": {
"hash": "A7F6B1CF33313121539206754A73FDC22ADA48C4AA8C4BB4F707ED2E089E59D3",
"parts": {
"hash": "6634FE1E1DDDCB9914ACE81F146013986F5FDA03A8F1C16DC5ECA0D9B0E08FBC",
"total": 1
}
},
"height": 67374,
"round": 0,
"signatures": [
{
"block_id_flag": 2,
"signature": "HyR/uRIUNc5GNqQteZyrVjJM47SI9sRAgrLsNqJDls3AzbvHUfN4zzWyw0afyEvNm98Bm2GIoJoZC5D8oQvdBA==",
"timestamp": "2023-02-25T12:10:38.130121476Z",
"validator_address": "57DC09D28388DBF977CFC30EF50BE8B644CCC1FA"
}
]
},
"dah": {
"column_roots": [
"//////////7//////////ql+/VFmJ8PWE9BcjrTDLrY/hzVeGdzFCpfEhiXDXZmt",
"/////////////////////zHeGnUtPJn8QyPpePSYl4qRVrcUvG2fwptyoA85Myik"
],
"row_roots": [
"//////////7//////////ql+/VFmJ8PWE9BcjrTDLrY/hzVeGdzFCpfEhiXDXZmt",
"/////////////////////zHeGnUtPJn8QyPpePSYl4qRVrcUvG2fwptyoA85Myik"
]
},
"header": {
"app_hash": "1FC70854A185737C7FD720FCCE9167876EE4B9ABE23DB1EBB8C552D3E3978435",
"chain_id": "testnet",
"consensus_hash": "048091BC7DDC283F77BFBF91D73C44DA58C3DF8A9CBC867405D8B7F3DAADA22F",
"data_hash": "257760461993F8F197B421EC7435F3C36C3734923E3DA9A42DC73B05F07B3D08",
"evidence_hash": "E3B0C44298FC1C149AFBF4C8996FB92427AE41E4649B934CA495991B7852B855",
"height": "67374",
"last_block_id": {
"hash": "47A2C7758760988500B2F043D3903BBBF1C8B383CA33CF7056AA45E22055663E",
"parts": {
"hash": "33B012F244E27672169DD3D62CDBC92DA9486E410A5530F41FE6A890D8E2EE42",
"total": 1
}
},
"last_commit_hash": "888D47F5E9473501C99F2B6136B6B9FFBC9D1CD2F54002BCD5DF002FFEF0A83D",
"last_results_hash": "E3B0C44298FC1C149AFBF4C8996FB92427AE41E4649B934CA495991B7852B855",
"next_validators_hash": "883A0C92B8D976312B249C1397E73CF2981A9EB715717CBEE3800B8380C22C1D",
"proposer_address": "57DC09D28388DBF977CFC30EF50BE8B644CCC1FA",
"time": "2023-02-25T12:10:28.067566292Z",
"validators_hash": "883A0C92B8D976312B249C1397E73CF2981A9EB715717CBEE3800B8380C22C1D",
"version": {
"block": "11"
}
},
"validator_set": {
"proposer": {
"address": "57DC09D28388DBF977CFC30EF50BE8B644CCC1FA",
"proposer_priority": "0",
"pub_key": {
"type": "tendermint/PubKeyEd25519",
"value": "aoB4xU9//HAqOP9ciyp0+PTdZxt/UGKgZOabU6JxW8o="
},
"voting_power": "5000000000"
},
"validators": [
{
"address": "57DC09D28388DBF977CFC30EF50BE8B644CCC1FA",
"proposer_priority": "0",
"pub_key": {
"type": "tendermint/PubKeyEd25519",
"value": "aoB4xU9//HAqOP9ciyp0+PTdZxt/UGKgZOabU6JxW8o="
},
"voting_power": "5000000000"
}
]
}
}
],
"id": 0
}
{
"jsonrpc": "2.0",
"result": {
"codec": "Leopard",
"data_square": [
"//////////////////////////////////////4BAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA=",
"//////////////////////////////////////4BAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA=",
"//////////////////////////////////////4BAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA=",
"//////////////////////////////////////4BAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA="
]
},
"id": 0
}
GetShare gets a Share by coordinates in EDS.
Auth level: read
func GetShare(
header *header.ExtendedHeader,
row int,
col int,
) share.Share
{
"jsonrpc": "2.0",
"method": "share.GetShare",
"params": [
{
"commit": {
"block_id": {
"hash": "A7F6B1CF33313121539206754A73FDC22ADA48C4AA8C4BB4F707ED2E089E59D3",
"parts": {
"hash": "6634FE1E1DDDCB9914ACE81F146013986F5FDA03A8F1C16DC5ECA0D9B0E08FBC",
"total": 1
}
},
"height": 67374,
"round": 0,
"signatures": [
{
"block_id_flag": 2,
"signature": "HyR/uRIUNc5GNqQteZyrVjJM47SI9sRAgrLsNqJDls3AzbvHUfN4zzWyw0afyEvNm98Bm2GIoJoZC5D8oQvdBA==",
"timestamp": "2023-02-25T12:10:38.130121476Z",
"validator_address": "57DC09D28388DBF977CFC30EF50BE8B644CCC1FA"
}
]
},
"dah": {
"column_roots": [
"//////////7//////////ql+/VFmJ8PWE9BcjrTDLrY/hzVeGdzFCpfEhiXDXZmt",
"/////////////////////zHeGnUtPJn8QyPpePSYl4qRVrcUvG2fwptyoA85Myik"
],
"row_roots": [
"//////////7//////////ql+/VFmJ8PWE9BcjrTDLrY/hzVeGdzFCpfEhiXDXZmt",
"/////////////////////zHeGnUtPJn8QyPpePSYl4qRVrcUvG2fwptyoA85Myik"
]
},
"header": {
"app_hash": "1FC70854A185737C7FD720FCCE9167876EE4B9ABE23DB1EBB8C552D3E3978435",
"chain_id": "testnet",
"consensus_hash": "048091BC7DDC283F77BFBF91D73C44DA58C3DF8A9CBC867405D8B7F3DAADA22F",
"data_hash": "257760461993F8F197B421EC7435F3C36C3734923E3DA9A42DC73B05F07B3D08",
"evidence_hash": "E3B0C44298FC1C149AFBF4C8996FB92427AE41E4649B934CA495991B7852B855",
"height": "67374",
"last_block_id": {
"hash": "47A2C7758760988500B2F043D3903BBBF1C8B383CA33CF7056AA45E22055663E",
"parts": {
"hash": "33B012F244E27672169DD3D62CDBC92DA9486E410A5530F41FE6A890D8E2EE42",
"total": 1
}
},
"last_commit_hash": "888D47F5E9473501C99F2B6136B6B9FFBC9D1CD2F54002BCD5DF002FFEF0A83D",
"last_results_hash": "E3B0C44298FC1C149AFBF4C8996FB92427AE41E4649B934CA495991B7852B855",
"next_validators_hash": "883A0C92B8D976312B249C1397E73CF2981A9EB715717CBEE3800B8380C22C1D",
"proposer_address": "57DC09D28388DBF977CFC30EF50BE8B644CCC1FA",
"time": "2023-02-25T12:10:28.067566292Z",
"validators_hash": "883A0C92B8D976312B249C1397E73CF2981A9EB715717CBEE3800B8380C22C1D",
"version": {
"block": "11"
}
},
"validator_set": {
"proposer": {
"address": "57DC09D28388DBF977CFC30EF50BE8B644CCC1FA",
"proposer_priority": "0",
"pub_key": {
"type": "tendermint/PubKeyEd25519",
"value": "aoB4xU9//HAqOP9ciyp0+PTdZxt/UGKgZOabU6JxW8o="
},
"voting_power": "5000000000"
},
"validators": [
{
"address": "57DC09D28388DBF977CFC30EF50BE8B644CCC1FA",
"proposer_priority": "0",
"pub_key": {
"type": "tendermint/PubKeyEd25519",
"value": "aoB4xU9//HAqOP9ciyp0+PTdZxt/UGKgZOabU6JxW8o="
},
"voting_power": "5000000000"
}
]
}
},
42,
42
],
"id": 0
}
{
"jsonrpc": "2.0",
"result": "Ynl0ZSBhcnJheQ==",
"id": 0
}
GetSharesByNamespace gets all shares from an EDS within the given namespace. Shares are returned in a row-by-row order if the namespace spans multiple rows.
Auth level: read
func GetSharesByNamespace(
header *header.ExtendedHeader,
namespace share.Namespace,
) share.NamespacedShares
{
"jsonrpc": "2.0",
"method": "share.GetSharesByNamespace",
"params": [
{
"commit": {
"block_id": {
"hash": "A7F6B1CF33313121539206754A73FDC22ADA48C4AA8C4BB4F707ED2E089E59D3",
"parts": {
"hash": "6634FE1E1DDDCB9914ACE81F146013986F5FDA03A8F1C16DC5ECA0D9B0E08FBC",
"total": 1
}
},
"height": 67374,
"round": 0,
"signatures": [
{
"block_id_flag": 2,
"signature": "HyR/uRIUNc5GNqQteZyrVjJM47SI9sRAgrLsNqJDls3AzbvHUfN4zzWyw0afyEvNm98Bm2GIoJoZC5D8oQvdBA==",
"timestamp": "2023-02-25T12:10:38.130121476Z",
"validator_address": "57DC09D28388DBF977CFC30EF50BE8B644CCC1FA"
}
]
},
"dah": {
"column_roots": [
"//////////7//////////ql+/VFmJ8PWE9BcjrTDLrY/hzVeGdzFCpfEhiXDXZmt",
"/////////////////////zHeGnUtPJn8QyPpePSYl4qRVrcUvG2fwptyoA85Myik"
],
"row_roots": [
"//////////7//////////ql+/VFmJ8PWE9BcjrTDLrY/hzVeGdzFCpfEhiXDXZmt",
"/////////////////////zHeGnUtPJn8QyPpePSYl4qRVrcUvG2fwptyoA85Myik"
]
},
"header": {
"app_hash": "1FC70854A185737C7FD720FCCE9167876EE4B9ABE23DB1EBB8C552D3E3978435",
"chain_id": "testnet",
"consensus_hash": "048091BC7DDC283F77BFBF91D73C44DA58C3DF8A9CBC867405D8B7F3DAADA22F",
"data_hash": "257760461993F8F197B421EC7435F3C36C3734923E3DA9A42DC73B05F07B3D08",
"evidence_hash": "E3B0C44298FC1C149AFBF4C8996FB92427AE41E4649B934CA495991B7852B855",
"height": "67374",
"last_block_id": {
"hash": "47A2C7758760988500B2F043D3903BBBF1C8B383CA33CF7056AA45E22055663E",
"parts": {
"hash": "33B012F244E27672169DD3D62CDBC92DA9486E410A5530F41FE6A890D8E2EE42",
"total": 1
}
},
"last_commit_hash": "888D47F5E9473501C99F2B6136B6B9FFBC9D1CD2F54002BCD5DF002FFEF0A83D",
"last_results_hash": "E3B0C44298FC1C149AFBF4C8996FB92427AE41E4649B934CA495991B7852B855",
"next_validators_hash": "883A0C92B8D976312B249C1397E73CF2981A9EB715717CBEE3800B8380C22C1D",
"proposer_address": "57DC09D28388DBF977CFC30EF50BE8B644CCC1FA",
"time": "2023-02-25T12:10:28.067566292Z",
"validators_hash": "883A0C92B8D976312B249C1397E73CF2981A9EB715717CBEE3800B8380C22C1D",
"version": {
"block": "11"
}
},
"validator_set": {
"proposer": {
"address": "57DC09D28388DBF977CFC30EF50BE8B644CCC1FA",
"proposer_priority": "0",
"pub_key": {
"type": "tendermint/PubKeyEd25519",
"value": "aoB4xU9//HAqOP9ciyp0+PTdZxt/UGKgZOabU6JxW8o="
},
"voting_power": "5000000000"
},
"validators": [
{
"address": "57DC09D28388DBF977CFC30EF50BE8B644CCC1FA",
"proposer_priority": "0",
"pub_key": {
"type": "tendermint/PubKeyEd25519",
"value": "aoB4xU9//HAqOP9ciyp0+PTdZxt/UGKgZOabU6JxW8o="
},
"voting_power": "5000000000"
}
]
}
},
"AAAAAAAAAAAAAAAAAAAAAAAAAAECAwQFBgcICRA="
],
"id": 0
}
{
"jsonrpc": "2.0",
"result": [
{
"proof": {
"end": 15,
"inclusion_or_absence": true,
"open_end": {
"index": 15,
"proof": "gniKhnjrWbFG15O2a795/oEczV+xCXeho3zw6GV8W9OKA3eAqeU3FRVi5a+QcWU7",
"value": "AAAAAAAAAAAAAAAAAAAAAAAAADEyMzQ1Njc4OTAAAAAAAAAAAAAAAAAAAAAAAAAAMTIzNDU2Nzg5MAABAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQ=="
},
"open_post_index": {
"index": 16,
"proof": "g7rrqOPnk4zsgq4S95DWAenHg0zYnOD6VaKo+MGbXG+BOedF1SNLjbusbz3NbTN/",
"value": "//////////////////////////////////////8AAAAAAAAAAAAAAAAAAAAAAAAAfXpxe3B3fH90RnV0dN89CwsL7UkU5OaRFqBeuwnzFGc8VKvZgAx62brz2XriGHoP2OODkCZW83/LuvPZ2ENF9ZRUq9mADBiBupEmCFFU49hvJ+In4mur46smgSLJqwh/VCb2ySJvDCfY2A26v0OHCwsLCwsLCwsLCwsLCwsLCwsLCxhR9iKFzGuvCL9TQrFKQvcZL9q87TwsLSJaMq/Icw1R4uorDG9wWc26WiMUfS12hvXLrAtDRPWD9Vb1ad1+89gd89h6fn8mkQzzetgNfpFRhcxuGHqDq9l8DSZDUPW+QjWBuSD6M8Gyx49a75IETxt8ir7Ql3jWGck0/svbar0SQ5b15RusveVDQ/WG9ZarVKvZQ5aFvxhrrRDTzlMl1o3jiGu5oc2JoHouUzRjBz0UpYLMiFw7MPk6dDeT+vLKFUccS9uvgXqKbGf5azrTB7Kv0VzLLhEw4jcTEZpx90Os5VOWkka4kwsLCwsLCwsLCwsLCwsLCwsLCwsLCwsLCwsLCwsLCwsLCwsLCwsLCwsLCwsLCwsLCwsLCwsLCwsLCwsLCwsLCwsLCwsLCwsLCwsLCwsLCwsLCwsLCwsLCwsLCwsLCwsLCwsLCwsLCwsLCwsLCwsLCwsLCwsLCwsLCwsLCwsLCwsLCwsLCw=="
},
"open_pre_index": {
"index": 1,
"proof": "qm4Yt72dEqxKQ58lkke6RWbhTU69vnCwkXuzzP4SvYYOE4QwxZ1gqzlJD6LVu4Ij",
"value": "AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABAEAAAFWAAAAJtQCCsgCCpsBCpgBCh0vbnViaXQuYmxvYi52MS5Nc2dQYXlGb3JCbG9icxJ3CixudWJpdDF4bHB5OTJuZ3N6aHZodjd1Z3V5eDRqdTlybnkzajR6dGhzc2VsMBIdAAAAAAAAAAAAAAAAAAAAAAAAADEyMzQ1Njc4OTAaA9CGAyIg7VsJh9zUxTSOPDh7umUydvOgdHqDtydsjiX5WsXmDApCAQASZgpQCkYKHy9jb3Ntb3MuY3J5cHRvLnNlY3AyNTZrMS5QdWJLZXkSIwohA0h4VRz7Le/pipiOr0nx2ghLxCH2FQaTIGpZtkJKJhicEgQKAggBGAISEgoMCgR1bnViEgQ1MDE3ELTPHhpAk7Bn7DdV2Cf9yS78GlmyyM35lUE27OuoFMK5zmBY+35T6F98l0o4eC7EQ//CN7nPyOk45+tC/KUUdmCNpcySIhIBAhoESU5EWAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA=="
},
"open_start": {
"index": 2,
"proof": "kb7NqWxKwPmMRprmNfUbtWqoAqzDsvFaqLniBQAPr0bB6Z1JSXrdx9ztQoDQKQOh",
"value": "AAAAAAAAAAAAAAAAAAAAAAAAADEyMzQ1Njc4OTAAAAAAAAAAAAAAAAAAAAAAAAAAMTIzNDU2Nzg5MAEAAMNQAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQ=="
},
"post_index": 16,
"pre_index": 1,
"start": 2
},
"shares": [
"Ynl0ZSBhcnJheQ=="
]
}
],
"id": 0
}
SharesAvailable subjectively validates if Shares committed to the given ExtendedHeader are available on the Network.
Auth level: read
func SharesAvailable(header *header.ExtendedHeader)
{
"jsonrpc": "2.0",
"method": "share.SharesAvailable",
"params": [
{
"commit": {
"block_id": {
"hash": "A7F6B1CF33313121539206754A73FDC22ADA48C4AA8C4BB4F707ED2E089E59D3",
"parts": {
"hash": "6634FE1E1DDDCB9914ACE81F146013986F5FDA03A8F1C16DC5ECA0D9B0E08FBC",
"total": 1
}
},
"height": 67374,
"round": 0,
"signatures": [
{
"block_id_flag": 2,
"signature": "HyR/uRIUNc5GNqQteZyrVjJM47SI9sRAgrLsNqJDls3AzbvHUfN4zzWyw0afyEvNm98Bm2GIoJoZC5D8oQvdBA==",
"timestamp": "2023-02-25T12:10:38.130121476Z",
"validator_address": "57DC09D28388DBF977CFC30EF50BE8B644CCC1FA"
}
]
},
"dah": {
"column_roots": [
"//////////7//////////ql+/VFmJ8PWE9BcjrTDLrY/hzVeGdzFCpfEhiXDXZmt",
"/////////////////////zHeGnUtPJn8QyPpePSYl4qRVrcUvG2fwptyoA85Myik"
],
"row_roots": [
"//////////7//////////ql+/VFmJ8PWE9BcjrTDLrY/hzVeGdzFCpfEhiXDXZmt",
"/////////////////////zHeGnUtPJn8QyPpePSYl4qRVrcUvG2fwptyoA85Myik"
]
},
"header": {
"app_hash": "1FC70854A185737C7FD720FCCE9167876EE4B9ABE23DB1EBB8C552D3E3978435",
"chain_id": "testnet",
"consensus_hash": "048091BC7DDC283F77BFBF91D73C44DA58C3DF8A9CBC867405D8B7F3DAADA22F",
"data_hash": "257760461993F8F197B421EC7435F3C36C3734923E3DA9A42DC73B05F07B3D08",
"evidence_hash": "E3B0C44298FC1C149AFBF4C8996FB92427AE41E4649B934CA495991B7852B855",
"height": "67374",
"last_block_id": {
"hash": "47A2C7758760988500B2F043D3903BBBF1C8B383CA33CF7056AA45E22055663E",
"parts": {
"hash": "33B012F244E27672169DD3D62CDBC92DA9486E410A5530F41FE6A890D8E2EE42",
"total": 1
}
},
"last_commit_hash": "888D47F5E9473501C99F2B6136B6B9FFBC9D1CD2F54002BCD5DF002FFEF0A83D",
"last_results_hash": "E3B0C44298FC1C149AFBF4C8996FB92427AE41E4649B934CA495991B7852B855",
"next_validators_hash": "883A0C92B8D976312B249C1397E73CF2981A9EB715717CBEE3800B8380C22C1D",
"proposer_address": "57DC09D28388DBF977CFC30EF50BE8B644CCC1FA",
"time": "2023-02-25T12:10:28.067566292Z",
"validators_hash": "883A0C92B8D976312B249C1397E73CF2981A9EB715717CBEE3800B8380C22C1D",
"version": {
"block": "11"
}
},
"validator_set": {
"proposer": {
"address": "57DC09D28388DBF977CFC30EF50BE8B644CCC1FA",
"proposer_priority": "0",
"pub_key": {
"type": "tendermint/PubKeyEd25519",
"value": "aoB4xU9//HAqOP9ciyp0+PTdZxt/UGKgZOabU6JxW8o="
},
"voting_power": "5000000000"
},
"validators": [
{
"address": "57DC09D28388DBF977CFC30EF50BE8B644CCC1FA",
"proposer_priority": "0",
"pub_key": {
"type": "tendermint/PubKeyEd25519",
"value": "aoB4xU9//HAqOP9ciyp0+PTdZxt/UGKgZOabU6JxW8o="
},
"voting_power": "5000000000"
}
]
}
}
],
"id": 0
}
{
"jsonrpc": "2.0",
"result": null,
"id": 0
}
AccountAddress retrieves the address of the node's account/signer
Auth level: read
func AccountAddress() state.Address
{
"jsonrpc": "2.0",
"method": "state.AccountAddress",
"params": null,
"id": 0
}
{
"jsonrpc": "2.0",
"result": "nubit1t3egzn706ukv03f66qv6yveeafgge2rtpq9w8t",
"id": 0
}
Balance retrieves the Nubit coin balance for the node's account/signer and verifies it against the corresponding block's AppHash.
Auth level: read
func Balance() *state.Balance
{
"jsonrpc": "2.0",
"method": "state.Balance",
"params": null,
"id": 0
}
{
"jsonrpc": "2.0",
"result": {
"amount": "42",
"denom": "string value"
},
"id": 0
}
BalanceForAddress retrieves the Nubit coin balance for the given address and verifies the returned balance against the corresponding block's AppHash.
NOTE: the balance returned is the balance reported by the block right before the node's current head (head-1). This is due to the fact that for block N, the block's AppHash
is the result of applying the previous block's transaction list.
Auth level: read
func BalanceForAddress(addr state.Address) *state.Balance
{
"jsonrpc": "2.0",
"method": "state.BalanceForAddress",
"params": [
"nubit1t3egzn706ukv03f66qv6yveeafgge2rtpq9w8t"
],
"id": 0
}
{
"jsonrpc": "2.0",
"result": {
"amount": "42",
"denom": "string value"
},
"id": 0
}
BeginRedelegate sends a user's delegated tokens to a new validator for redelegation.
Auth level: write
func BeginRedelegate(
srcValAddr state.ValAddress,
dstValAddr state.ValAddress,
amount state.Int,
fee state.Int,
gasLim uint64,
) *state.TxResponse
{
"jsonrpc": "2.0",
"method": "state.BeginRedelegate",
"params": [
"nubitvaloper1t3egzn706ukv03f66qv6yveeafgge2rtmp2fl0",
"nubitvaloper1t3egzn706ukv03f66qv6yveeafgge2rtmp2fl0",
"42",
"42",
42
],
"id": 0
}
{
"jsonrpc": "2.0",
"result": {
"data": "12260A242F636F736D6F732E62616E6B2E763162657461312E4D736753656E64526573706F6E7365",
"events": [
{
"attributes": [
{
"index": true,
"key": "ZmVl",
"value": null
}
],
"type": "tx"
},
{
"attributes": [
{
"index": true,
"key": "YWNjX3NlcQ==",
"value": "Y2VsZXN0aWExMzc3azVhbjNmOTR2Nnd5YWNldTBjZjRucTZnazJqdHBjNDZnN2gvMA=="
}
],
"type": "tx"
},
{
"attributes": [
{
"index": true,
"key": "c2lnbmF0dXJl",
"value": "R3NlVjhGNThFNGphR05LU0NicDBvNmRILytKK3BNQjNvUmtoNVpKNE8rVjdvNVVYQkJNNXpmNkdiYnN6OW9Takc1OUZkSHJRYzFvVVVBbnRBZW1wV0E9PQ=="
}
],
"type": "tx"
},
{
"attributes": [
{
"index": true,
"key": "YWN0aW9u",
"value": "L2Nvc21vcy5iYW5rLnYxYmV0YTEuTXNnU2VuZA=="
}
],
"type": "message"
},
{
"attributes": [
{
"index": true,
"key": "c3BlbmRlcg==",
"value": "Y2VsZXN0aWExMzc3azVhbjNmOTR2Nnd5YWNldTBjZjRucTZnazJqdHBjNDZnN2g="
},
{
"index": true,
"key": "YW1vdW50",
"value": "MzB1dGlh"
}
],
"type": "coin_spent"
},
{
"attributes": [
{
"index": true,
"key": "cmVjZWl2ZXI=",
"value": "Y2VsZXN0aWExMmxlczhsOGd6c2Fjamp4d3VtOXdkeTdtZTh4OXhhanFjaDRneXc="
},
{
"index": true,
"key": "YW1vdW50",
"value": "MzB1dGlh"
}
],
"type": "coin_received"
},
{
"attributes": [
{
"index": true,
"key": "cmVjaXBpZW50",
"value": "Y2VsZXN0aWExMmxlczhsOGd6c2Fjamp4d3VtOXdkeTdtZTh4OXhhanFjaDRneXc="
},
{
"index": true,
"key": "c2VuZGVy",
"value": "Y2VsZXN0aWExMzc3azVhbjNmOTR2Nnd5YWNldTBjZjRucTZnazJqdHBjNDZnN2g="
},
{
"index": true,
"key": "YW1vdW50",
"value": "MzB1dGlh"
}
],
"type": "transfer"
},
{
"attributes": [
{
"index": true,
"key": "c2VuZGVy",
"value": "Y2VsZXN0aWExMzc3azVhbjNmOTR2Nnd5YWNldTBjZjRucTZnazJqdHBjNDZnN2g="
}
],
"type": "message"
},
{
"attributes": [
{
"index": true,
"key": "bW9kdWxl",
"value": "YmFuaw=="
}
],
"type": "message"
}
],
"gas_used": 69085,
"gas_wanted": 10000000,
"height": 30497,
"logs": [
{
"events": [
{
"attributes": [
{
"key": "receiver",
"value": "nubit12les8l8gzsacjjxwum9wdy7me8x9xajqch4gyw"
},
{
"key": "amount",
"value": "30unub"
}
],
"type": "coin_received"
},
{
"attributes": [
{
"key": "spender",
"value": "nubit1377k5an3f94v6wyaceu0cf4nq6gk2jtpc46g7h"
},
{
"key": "amount",
"value": "30unub"
}
],
"type": "coin_spent"
},
{
"attributes": [
{
"key": "action",
"value": "/cosmos.bank.v1beta1.MsgSend"
},
{
"key": "sender",
"value": "nubit1377k5an3f94v6wyaceu0cf4nq6gk2jtpc46g7h"
},
{
"key": "module",
"value": "bank"
}
],
"type": "message"
},
{
"attributes": [
{
"key": "recipient",
"value": "nubit12les8l8gzsacjjxwum9wdy7me8x9xajqch4gyw"
},
{
"key": "sender",
"value": "nubit1377k5an3f94v6wyaceu0cf4nq6gk2jtpc46g7h"
},
{
"key": "amount",
"value": "30unub"
}
],
"type": "transfer"
}
],
"msg_index": 0
}
],
"raw_log": "[{\"msg_index\":0,\"events\":[{\"type\":\"coin_received\",\"attributes\":[{\"key\":\"receiver\",\"value\":\"nubit12les8l8gzsacjjxwum9wdy7me8x9xajqch4gyw\"},{\"key\":\"amount\",\"value\":\"30unub\"}]},{\"type\":\"coin_spent\",\"attributes\":[{\"key\":\"spender\",\"value\":\"nubit1377k5an3f94v6wyaceu0cf4nq6gk2jtpc46g7h\"},{\"key\":\"amount\",\"value\":\"30unub\"}]},{\"type\":\"message\",\"attributes\":[{\"key\":\"action\",\"value\":\"/cosmos.bank.v1beta1.MsgSend\"},{\"key\":\"sender\",\"value\":\"nubit1377k5an3f94v6wyaceu0cf4nq6gk2jtpc46g7h\"},{\"key\":\"module\",\"value\":\"bank\"}]},{\"type\":\"transfer\",\"attributes\":[{\"key\":\"recipient\",\"value\":\"nubit12les8l8gzsacjjxwum9wdy7me8x9xajqch4gyw\"},{\"key\":\"sender\",\"value\":\"nubit1377k5an3f94v6wyaceu0cf4nq6gk2jtpc46g7h\"},{\"key\":\"amount\",\"value\":\"30unub\"}]}]}]",
"txhash": "05D9016060072AA71B007A6CFB1B895623192D6616D513017964C3BFCD047282"
},
"id": 0
}
CancelUnbondingDelegation cancels a user's pending undelegation from a validator.
Auth level: write
func CancelUnbondingDelegation(
valAddr state.ValAddress,
amount state.Int,
height state.Int,
fee state.Int,
gasLim uint64,
) *state.TxResponse
{
"jsonrpc": "2.0",
"method": "state.CancelUnbondingDelegation",
"params": [
"nubitvaloper1t3egzn706ukv03f66qv6yveeafgge2rtmp2fl0",
"42",
"42",
"42",
42
],
"id": 0
}
{
"jsonrpc": "2.0",
"result": {
"data": "12260A242F636F736D6F732E62616E6B2E763162657461312E4D736753656E64526573706F6E7365",
"events": [
{
"attributes": [
{
"index": true,
"key": "ZmVl",
"value": null
}
],
"type": "tx"
},
{
"attributes": [
{
"index": true,
"key": "YWNjX3NlcQ==",
"value": "Y2VsZXN0aWExMzc3azVhbjNmOTR2Nnd5YWNldTBjZjRucTZnazJqdHBjNDZnN2gvMA=="
}
],
"type": "tx"
},
{
"attributes": [
{
"index": true,
"key": "c2lnbmF0dXJl",
"value": "R3NlVjhGNThFNGphR05LU0NicDBvNmRILytKK3BNQjNvUmtoNVpKNE8rVjdvNVVYQkJNNXpmNkdiYnN6OW9Takc1OUZkSHJRYzFvVVVBbnRBZW1wV0E9PQ=="
}
],
"type": "tx"
},
{
"attributes": [
{
"index": true,
"key": "YWN0aW9u",
"value": "L2Nvc21vcy5iYW5rLnYxYmV0YTEuTXNnU2VuZA=="
}
],
"type": "message"
},
{
"attributes": [
{
"index": true,
"key": "c3BlbmRlcg==",
"value": "Y2VsZXN0aWExMzc3azVhbjNmOTR2Nnd5YWNldTBjZjRucTZnazJqdHBjNDZnN2g="
},
{
"index": true,
"key": "YW1vdW50",
"value": "MzB1dGlh"
}
],
"type": "coin_spent"
},
{
"attributes": [
{
"index": true,
"key": "cmVjZWl2ZXI=",
"value": "Y2VsZXN0aWExMmxlczhsOGd6c2Fjamp4d3VtOXdkeTdtZTh4OXhhanFjaDRneXc="
},
{
"index": true,
"key": "YW1vdW50",
"value": "MzB1dGlh"
}
],
"type": "coin_received"
},
{
"attributes": [
{
"index": true,
"key": "cmVjaXBpZW50",
"value": "Y2VsZXN0aWExMmxlczhsOGd6c2Fjamp4d3VtOXdkeTdtZTh4OXhhanFjaDRneXc="
},
{
"index": true,
"key": "c2VuZGVy",
"value": "Y2VsZXN0aWExMzc3azVhbjNmOTR2Nnd5YWNldTBjZjRucTZnazJqdHBjNDZnN2g="
},
{
"index": true,
"key": "YW1vdW50",
"value": "MzB1dGlh"
}
],
"type": "transfer"
},
{
"attributes": [
{
"index": true,
"key": "c2VuZGVy",
"value": "Y2VsZXN0aWExMzc3azVhbjNmOTR2Nnd5YWNldTBjZjRucTZnazJqdHBjNDZnN2g="
}
],
"type": "message"
},
{
"attributes": [
{
"index": true,
"key": "bW9kdWxl",
"value": "YmFuaw=="
}
],
"type": "message"
}
],
"gas_used": 69085,
"gas_wanted": 10000000,
"height": 30497,
"logs": [
{
"events": [
{
"attributes": [
{
"key": "receiver",
"value": "nubit12les8l8gzsacjjxwum9wdy7me8x9xajqch4gyw"
},
{
"key": "amount",
"value": "30unub"
}
],
"type": "coin_received"
},
{
"attributes": [
{
"key": "spender",
"value": "nubit1377k5an3f94v6wyaceu0cf4nq6gk2jtpc46g7h"
},
{
"key": "amount",
"value": "30unub"
}
],
"type": "coin_spent"
},
{
"attributes": [
{
"key": "action",
"value": "/cosmos.bank.v1beta1.MsgSend"
},
{
"key": "sender",
"value": "nubit1377k5an3f94v6wyaceu0cf4nq6gk2jtpc46g7h"
},
{
"key": "module",
"value": "bank"
}
],
"type": "message"
},
{
"attributes": [
{
"key": "recipient",
"value": "nubit12les8l8gzsacjjxwum9wdy7me8x9xajqch4gyw"
},
{
"key": "sender",
"value": "nubit1377k5an3f94v6wyaceu0cf4nq6gk2jtpc46g7h"
},
{
"key": "amount",
"value": "30unub"
}
],
"type": "transfer"
}
],
"msg_index": 0
}
],
"raw_log": "[{\"msg_index\":0,\"events\":[{\"type\":\"coin_received\",\"attributes\":[{\"key\":\"receiver\",\"value\":\"nubit12les8l8gzsacjjxwum9wdy7me8x9xajqch4gyw\"},{\"key\":\"amount\",\"value\":\"30unub\"}]},{\"type\":\"coin_spent\",\"attributes\":[{\"key\":\"spender\",\"value\":\"nubit1377k5an3f94v6wyaceu0cf4nq6gk2jtpc46g7h\"},{\"key\":\"amount\",\"value\":\"30unub\"}]},{\"type\":\"message\",\"attributes\":[{\"key\":\"action\",\"value\":\"/cosmos.bank.v1beta1.MsgSend\"},{\"key\":\"sender\",\"value\":\"nubit1377k5an3f94v6wyaceu0cf4nq6gk2jtpc46g7h\"},{\"key\":\"module\",\"value\":\"bank\"}]},{\"type\":\"transfer\",\"attributes\":[{\"key\":\"recipient\",\"value\":\"nubit12les8l8gzsacjjxwum9wdy7me8x9xajqch4gyw\"},{\"key\":\"sender\",\"value\":\"nubit1377k5an3f94v6wyaceu0cf4nq6gk2jtpc46g7h\"},{\"key\":\"amount\",\"value\":\"30unub\"}]}]}]",
"txhash": "05D9016060072AA71B007A6CFB1B895623192D6616D513017964C3BFCD047282"
},
"id": 0
}
Delegate sends a user's liquid tokens to a validator for delegation.
Auth level: write
func Delegate(
delAddr state.ValAddress,
amount state.Int,
fee state.Int,
gasLim uint64,
) *state.TxResponse
{
"jsonrpc": "2.0",
"method": "state.Delegate",
"params": [
"nubitvaloper1t3egzn706ukv03f66qv6yveeafgge2rtmp2fl0",
"42",
"42",
42
],
"id": 0
}
{
"jsonrpc": "2.0",
"result": {
"data": "12260A242F636F736D6F732E62616E6B2E763162657461312E4D736753656E64526573706F6E7365",
"events": [
{
"attributes": [
{
"index": true,
"key": "ZmVl",
"value": null
}
],
"type": "tx"
},
{
"attributes": [
{
"index": true,
"key": "YWNjX3NlcQ==",
"value": "Y2VsZXN0aWExMzc3azVhbjNmOTR2Nnd5YWNldTBjZjRucTZnazJqdHBjNDZnN2gvMA=="
}
],
"type": "tx"
},
{
"attributes": [
{
"index": true,
"key": "c2lnbmF0dXJl",
"value": "R3NlVjhGNThFNGphR05LU0NicDBvNmRILytKK3BNQjNvUmtoNVpKNE8rVjdvNVVYQkJNNXpmNkdiYnN6OW9Takc1OUZkSHJRYzFvVVVBbnRBZW1wV0E9PQ=="
}
],
"type": "tx"
},
{
"attributes": [
{
"index": true,
"key": "YWN0aW9u",
"value": "L2Nvc21vcy5iYW5rLnYxYmV0YTEuTXNnU2VuZA=="
}
],
"type": "message"
},
{
"attributes": [
{
"index": true,
"key": "c3BlbmRlcg==",
"value": "Y2VsZXN0aWExMzc3azVhbjNmOTR2Nnd5YWNldTBjZjRucTZnazJqdHBjNDZnN2g="
},
{
"index": true,
"key": "YW1vdW50",
"value": "MzB1dGlh"
}
],
"type": "coin_spent"
},
{
"attributes": [
{
"index": true,
"key": "cmVjZWl2ZXI=",
"value": "Y2VsZXN0aWExMmxlczhsOGd6c2Fjamp4d3VtOXdkeTdtZTh4OXhhanFjaDRneXc="
},
{
"index": true,
"key": "YW1vdW50",
"value": "MzB1dGlh"
}
],
"type": "coin_received"
},
{
"attributes": [
{
"index": true,
"key": "cmVjaXBpZW50",
"value": "Y2VsZXN0aWExMmxlczhsOGd6c2Fjamp4d3VtOXdkeTdtZTh4OXhhanFjaDRneXc="
},
{
"index": true,
"key": "c2VuZGVy",
"value": "Y2VsZXN0aWExMzc3azVhbjNmOTR2Nnd5YWNldTBjZjRucTZnazJqdHBjNDZnN2g="
},
{
"index": true,
"key": "YW1vdW50",
"value": "MzB1dGlh"
}
],
"type": "transfer"
},
{
"attributes": [
{
"index": true,
"key": "c2VuZGVy",
"value": "Y2VsZXN0aWExMzc3azVhbjNmOTR2Nnd5YWNldTBjZjRucTZnazJqdHBjNDZnN2g="
}
],
"type": "message"
},
{
"attributes": [
{
"index": true,
"key": "bW9kdWxl",
"value": "YmFuaw=="
}
],
"type": "message"
}
],
"gas_used": 69085,
"gas_wanted": 10000000,
"height": 30497,
"logs": [
{
"events": [
{
"attributes": [
{
"key": "receiver",
"value": "nubit12les8l8gzsacjjxwum9wdy7me8x9xajqch4gyw"
},
{
"key": "amount",
"value": "30unub"
}
],
"type": "coin_received"
},
{
"attributes": [
{
"key": "spender",
"value": "nubit1377k5an3f94v6wyaceu0cf4nq6gk2jtpc46g7h"
},
{
"key": "amount",
"value": "30unub"
}
],
"type": "coin_spent"
},
{
"attributes": [
{
"key": "action",
"value": "/cosmos.bank.v1beta1.MsgSend"
},
{
"key": "sender",
"value": "nubit1377k5an3f94v6wyaceu0cf4nq6gk2jtpc46g7h"
},
{
"key": "module",
"value": "bank"
}
],
"type": "message"
},
{
"attributes": [
{
"key": "recipient",
"value": "nubit12les8l8gzsacjjxwum9wdy7me8x9xajqch4gyw"
},
{
"key": "sender",
"value": "nubit1377k5an3f94v6wyaceu0cf4nq6gk2jtpc46g7h"
},
{
"key": "amount",
"value": "30unub"
}
],
"type": "transfer"
}
],
"msg_index": 0
}
],
"raw_log": "[{\"msg_index\":0,\"events\":[{\"type\":\"coin_received\",\"attributes\":[{\"key\":\"receiver\",\"value\":\"nubit12les8l8gzsacjjxwum9wdy7me8x9xajqch4gyw\"},{\"key\":\"amount\",\"value\":\"30unub\"}]},{\"type\":\"coin_spent\",\"attributes\":[{\"key\":\"spender\",\"value\":\"nubit1377k5an3f94v6wyaceu0cf4nq6gk2jtpc46g7h\"},{\"key\":\"amount\",\"value\":\"30unub\"}]},{\"type\":\"message\",\"attributes\":[{\"key\":\"action\",\"value\":\"/cosmos.bank.v1beta1.MsgSend\"},{\"key\":\"sender\",\"value\":\"nubit1377k5an3f94v6wyaceu0cf4nq6gk2jtpc46g7h\"},{\"key\":\"module\",\"value\":\"bank\"}]},{\"type\":\"transfer\",\"attributes\":[{\"key\":\"recipient\",\"value\":\"nubit12les8l8gzsacjjxwum9wdy7me8x9xajqch4gyw\"},{\"key\":\"sender\",\"value\":\"nubit1377k5an3f94v6wyaceu0cf4nq6gk2jtpc46g7h\"},{\"key\":\"amount\",\"value\":\"30unub\"}]}]}]",
"txhash": "05D9016060072AA71B007A6CFB1B895623192D6616D513017964C3BFCD047282"
},
"id": 0
}
QueryDelegation retrieves the delegation information between a delegator and a validator.
Auth level: read
func QueryDelegation(valAddr state.ValAddress) *types.QueryDelegationResponse
{
"jsonrpc": "2.0",
"method": "state.QueryDelegation",
"params": [
"nubitvaloper1t3egzn706ukv03f66qv6yveeafgge2rtmp2fl0"
],
"id": 0
}
{
"jsonrpc": "2.0",
"result": {
"delegation_response": {
"balance": {
"amount": "42",
"denom": "string value"
},
"delegation": {
"delegator_address": "string value",
"shares": "0",
"validator_address": "string value"
}
}
},
"id": 0
}
QueryRedelegations retrieves the status of the redelegations between a delegator and a validator.
Auth level: read
func QueryRedelegations(
srcValAddr state.ValAddress,
dstValAddr state.ValAddress,
) *types.QueryRedelegationsResponse
{
"jsonrpc": "2.0",
"method": "state.QueryRedelegations",
"params": [
"nubitvaloper1t3egzn706ukv03f66qv6yveeafgge2rtmp2fl0",
"nubitvaloper1t3egzn706ukv03f66qv6yveeafgge2rtmp2fl0"
],
"id": 0
}
{
"jsonrpc": "2.0",
"result": {
"pagination": {
"next_key": "Ynl0ZSBhcnJheQ==",
"total": 42
},
"redelegation_responses": [
{
"entries": [
{
"balance": "42",
"redelegation_entry": {
"completion_time": "0001-01-01T00:00:00Z",
"creation_height": 42,
"initial_balance": "42",
"shares_dst": "0"
}
}
],
"redelegation": {
"delegator_address": "string value",
"entries": [
{
"completion_time": "0001-01-01T00:00:00Z",
"creation_height": 42,
"initial_balance": "42",
"shares_dst": "0"
}
],
"validator_dst_address": "string value",
"validator_src_address": "string value"
}
}
]
},
"id": 0
}
QueryUnbonding retrieves the unbonding status between a delegator and a validator.
Auth level: read
func QueryUnbonding(valAddr state.ValAddress) *types.QueryUnbondingDelegationResponse
{
"jsonrpc": "2.0",
"method": "state.QueryUnbonding",
"params": [
"nubitvaloper1t3egzn706ukv03f66qv6yveeafgge2rtmp2fl0"
],
"id": 0
}
{
"jsonrpc": "2.0",
"result": {
"unbond": {
"delegator_address": "string value",
"entries": [
{
"balance": "42",
"completion_time": "0001-01-01T00:00:00Z",
"creation_height": 42,
"initial_balance": "42"
}
],
"validator_address": "string value"
}
},
"id": 0
}
SubmitBlob builds, signs and submits a SubmitBlobPayment transaction.
Auth level: write
func SubmitBlob(
fee state.Int,
gasLim uint64,
blobs []*blob.Blob,
) *state.TxResponse
{
"jsonrpc": "2.0",
"method": "state.SubmitBlob",
"params": [
"42",
42,
[
{
"commitment": "20qrISWy41i+3YG4pGbmtw3BbsK875MrcRX8bTgJOMk=",
"data": "VGhpcyBpcyBhbiBleGFtcGxlIG9mIHNvbWUgYmxvYiBkYXRh",
"index": -1,
"namespace": "AAAAAAAAAAAAAAAAAAAAAAAAAAECAwQFBgcICRA=",
"share_version": 0
}
]
],
"id": 0
}
{
"jsonrpc": "2.0",
"result": {
"data": "12260A242F636F736D6F732E62616E6B2E763162657461312E4D736753656E64526573706F6E7365",
"events": [
{
"attributes": [
{
"index": true,
"key": "ZmVl",
"value": null
}
],
"type": "tx"
},
{
"attributes": [
{
"index": true,
"key": "YWNjX3NlcQ==",
"value": "Y2VsZXN0aWExMzc3azVhbjNmOTR2Nnd5YWNldTBjZjRucTZnazJqdHBjNDZnN2gvMA=="
}
],
"type": "tx"
},
{
"attributes": [
{
"index": true,
"key": "c2lnbmF0dXJl",
"value": "R3NlVjhGNThFNGphR05LU0NicDBvNmRILytKK3BNQjNvUmtoNVpKNE8rVjdvNVVYQkJNNXpmNkdiYnN6OW9Takc1OUZkSHJRYzFvVVVBbnRBZW1wV0E9PQ=="
}
],
"type": "tx"
},
{
"attributes": [
{
"index": true,
"key": "YWN0aW9u",
"value": "L2Nvc21vcy5iYW5rLnYxYmV0YTEuTXNnU2VuZA=="
}
],
"type": "message"
},
{
"attributes": [
{
"index": true,
"key": "c3BlbmRlcg==",
"value": "Y2VsZXN0aWExMzc3azVhbjNmOTR2Nnd5YWNldTBjZjRucTZnazJqdHBjNDZnN2g="
},
{
"index": true,
"key": "YW1vdW50",
"value": "MzB1dGlh"
}
],
"type": "coin_spent"
},
{
"attributes": [
{
"index": true,
"key": "cmVjZWl2ZXI=",
"value": "Y2VsZXN0aWExMmxlczhsOGd6c2Fjamp4d3VtOXdkeTdtZTh4OXhhanFjaDRneXc="
},
{
"index": true,
"key": "YW1vdW50",
"value": "MzB1dGlh"
}
],
"type": "coin_received"
},
{
"attributes": [
{
"index": true,
"key": "cmVjaXBpZW50",
"value": "Y2VsZXN0aWExMmxlczhsOGd6c2Fjamp4d3VtOXdkeTdtZTh4OXhhanFjaDRneXc="
},
{
"index": true,
"key": "c2VuZGVy",
"value": "Y2VsZXN0aWExMzc3azVhbjNmOTR2Nnd5YWNldTBjZjRucTZnazJqdHBjNDZnN2g="
},
{
"index": true,
"key": "YW1vdW50",
"value": "MzB1dGlh"
}
],
"type": "transfer"
},
{
"attributes": [
{
"index": true,
"key": "c2VuZGVy",
"value": "Y2VsZXN0aWExMzc3azVhbjNmOTR2Nnd5YWNldTBjZjRucTZnazJqdHBjNDZnN2g="
}
],
"type": "message"
},
{
"attributes": [
{
"index": true,
"key": "bW9kdWxl",
"value": "YmFuaw=="
}
],
"type": "message"
}
],
"gas_used": 69085,
"gas_wanted": 10000000,
"height": 30497,
"logs": [
{
"events": [
{
"attributes": [
{
"key": "receiver",
"value": "nubit12les8l8gzsacjjxwum9wdy7me8x9xajqch4gyw"
},
{
"key": "amount",
"value": "30unub"
}
],
"type": "coin_received"
},
{
"attributes": [
{
"key": "spender",
"value": "nubit1377k5an3f94v6wyaceu0cf4nq6gk2jtpc46g7h"
},
{
"key": "amount",
"value": "30unub"
}
],
"type": "coin_spent"
},
{
"attributes": [
{
"key": "action",
"value": "/cosmos.bank.v1beta1.MsgSend"
},
{
"key": "sender",
"value": "nubit1377k5an3f94v6wyaceu0cf4nq6gk2jtpc46g7h"
},
{
"key": "module",
"value": "bank"
}
],
"type": "message"
},
{
"attributes": [
{
"key": "recipient",
"value": "nubit12les8l8gzsacjjxwum9wdy7me8x9xajqch4gyw"
},
{
"key": "sender",
"value": "nubit1377k5an3f94v6wyaceu0cf4nq6gk2jtpc46g7h"
},
{
"key": "amount",
"value": "30unub"
}
],
"type": "transfer"
}
],
"msg_index": 0
}
],
"raw_log": "[{\"msg_index\":0,\"events\":[{\"type\":\"coin_received\",\"attributes\":[{\"key\":\"receiver\",\"value\":\"nubit12les8l8gzsacjjxwum9wdy7me8x9xajqch4gyw\"},{\"key\":\"amount\",\"value\":\"30unub\"}]},{\"type\":\"coin_spent\",\"attributes\":[{\"key\":\"spender\",\"value\":\"nubit1377k5an3f94v6wyaceu0cf4nq6gk2jtpc46g7h\"},{\"key\":\"amount\",\"value\":\"30unub\"}]},{\"type\":\"message\",\"attributes\":[{\"key\":\"action\",\"value\":\"/cosmos.bank.v1beta1.MsgSend\"},{\"key\":\"sender\",\"value\":\"nubit1377k5an3f94v6wyaceu0cf4nq6gk2jtpc46g7h\"},{\"key\":\"module\",\"value\":\"bank\"}]},{\"type\":\"transfer\",\"attributes\":[{\"key\":\"recipient\",\"value\":\"nubit12les8l8gzsacjjxwum9wdy7me8x9xajqch4gyw\"},{\"key\":\"sender\",\"value\":\"nubit1377k5an3f94v6wyaceu0cf4nq6gk2jtpc46g7h\"},{\"key\":\"amount\",\"value\":\"30unub\"}]}]}]",
"txhash": "05D9016060072AA71B007A6CFB1B895623192D6616D513017964C3BFCD047282"
},
"id": 0
}
SubmitTx submits the given transaction/message to the Nubit network and blocks until the tx is included in a block.
Auth level: read
func SubmitTx(tx state.Tx) *state.TxResponse
{
"jsonrpc": "2.0",
"method": "state.SubmitTx",
"params": [
"Bw=="
],
"id": 0
}
{
"jsonrpc": "2.0",
"result": {
"data": "12260A242F636F736D6F732E62616E6B2E763162657461312E4D736753656E64526573706F6E7365",
"events": [
{
"attributes": [
{
"index": true,
"key": "ZmVl",
"value": null
}
],
"type": "tx"
},
{
"attributes": [
{
"index": true,
"key": "YWNjX3NlcQ==",
"value": "Y2VsZXN0aWExMzc3azVhbjNmOTR2Nnd5YWNldTBjZjRucTZnazJqdHBjNDZnN2gvMA=="
}
],
"type": "tx"
},
{
"attributes": [
{
"index": true,
"key": "c2lnbmF0dXJl",
"value": "R3NlVjhGNThFNGphR05LU0NicDBvNmRILytKK3BNQjNvUmtoNVpKNE8rVjdvNVVYQkJNNXpmNkdiYnN6OW9Takc1OUZkSHJRYzFvVVVBbnRBZW1wV0E9PQ=="
}
],
"type": "tx"
},
{
"attributes": [
{
"index": true,
"key": "YWN0aW9u",
"value": "L2Nvc21vcy5iYW5rLnYxYmV0YTEuTXNnU2VuZA=="
}
],
"type": "message"
},
{
"attributes": [
{
"index": true,
"key": "c3BlbmRlcg==",
"value": "Y2VsZXN0aWExMzc3azVhbjNmOTR2Nnd5YWNldTBjZjRucTZnazJqdHBjNDZnN2g="
},
{
"index": true,
"key": "YW1vdW50",
"value": "MzB1dGlh"
}
],
"type": "coin_spent"
},
{
"attributes": [
{
"index": true,
"key": "cmVjZWl2ZXI=",
"value": "Y2VsZXN0aWExMmxlczhsOGd6c2Fjamp4d3VtOXdkeTdtZTh4OXhhanFjaDRneXc="
},
{
"index": true,
"key": "YW1vdW50",
"value": "MzB1dGlh"
}
],
"type": "coin_received"
},
{
"attributes": [
{
"index": true,
"key": "cmVjaXBpZW50",
"value": "Y2VsZXN0aWExMmxlczhsOGd6c2Fjamp4d3VtOXdkeTdtZTh4OXhhanFjaDRneXc="
},
{
"index": true,
"key": "c2VuZGVy",
"value": "Y2VsZXN0aWExMzc3azVhbjNmOTR2Nnd5YWNldTBjZjRucTZnazJqdHBjNDZnN2g="
},
{
"index": true,
"key": "YW1vdW50",
"value": "MzB1dGlh"
}
],
"type": "transfer"
},
{
"attributes": [
{
"index": true,
"key": "c2VuZGVy",
"value": "Y2VsZXN0aWExMzc3azVhbjNmOTR2Nnd5YWNldTBjZjRucTZnazJqdHBjNDZnN2g="
}
],
"type": "message"
},
{
"attributes": [
{
"index": true,
"key": "bW9kdWxl",
"value": "YmFuaw=="
}
],
"type": "message"
}
],
"gas_used": 69085,
"gas_wanted": 10000000,
"height": 30497,
"logs": [
{
"events": [
{
"attributes": [
{
"key": "receiver",
"value": "nubit12les8l8gzsacjjxwum9wdy7me8x9xajqch4gyw"
},
{
"key": "amount",
"value": "30unub"
}
],
"type": "coin_received"
},
{
"attributes": [
{
"key": "spender",
"value": "nubit1377k5an3f94v6wyaceu0cf4nq6gk2jtpc46g7h"
},
{
"key": "amount",
"value": "30unub"
}
],
"type": "coin_spent"
},
{
"attributes": [
{
"key": "action",
"value": "/cosmos.bank.v1beta1.MsgSend"
},
{
"key": "sender",
"value": "nubit1377k5an3f94v6wyaceu0cf4nq6gk2jtpc46g7h"
},
{
"key": "module",
"value": "bank"
}
],
"type": "message"
},
{
"attributes": [
{
"key": "recipient",
"value": "nubit12les8l8gzsacjjxwum9wdy7me8x9xajqch4gyw"
},
{
"key": "sender",
"value": "nubit1377k5an3f94v6wyaceu0cf4nq6gk2jtpc46g7h"
},
{
"key": "amount",
"value": "30unub"
}
],
"type": "transfer"
}
],
"msg_index": 0
}
],
"raw_log": "[{\"msg_index\":0,\"events\":[{\"type\":\"coin_received\",\"attributes\":[{\"key\":\"receiver\",\"value\":\"nubit12les8l8gzsacjjxwum9wdy7me8x9xajqch4gyw\"},{\"key\":\"amount\",\"value\":\"30unub\"}]},{\"type\":\"coin_spent\",\"attributes\":[{\"key\":\"spender\",\"value\":\"nubit1377k5an3f94v6wyaceu0cf4nq6gk2jtpc46g7h\"},{\"key\":\"amount\",\"value\":\"30unub\"}]},{\"type\":\"message\",\"attributes\":[{\"key\":\"action\",\"value\":\"/cosmos.bank.v1beta1.MsgSend\"},{\"key\":\"sender\",\"value\":\"nubit1377k5an3f94v6wyaceu0cf4nq6gk2jtpc46g7h\"},{\"key\":\"module\",\"value\":\"bank\"}]},{\"type\":\"transfer\",\"attributes\":[{\"key\":\"recipient\",\"value\":\"nubit12les8l8gzsacjjxwum9wdy7me8x9xajqch4gyw\"},{\"key\":\"sender\",\"value\":\"nubit1377k5an3f94v6wyaceu0cf4nq6gk2jtpc46g7h\"},{\"key\":\"amount\",\"value\":\"30unub\"}]}]}]",
"txhash": "05D9016060072AA71B007A6CFB1B895623192D6616D513017964C3BFCD047282"
},
"id": 0
}
Transfer sends the given amount of coins from default wallet of the node to the given account address.
Auth level: write
func Transfer(
to state.AccAddress,
amount state.Int,
fee state.Int,
gasLimit uint64,
) *state.TxResponse
{
"jsonrpc": "2.0",
"method": "state.Transfer",
"params": [
"nubit1t3egzn706ukv03f66qv6yveeafgge2rtpq9w8t",
"42",
"42",
42
],
"id": 0
}
{
"jsonrpc": "2.0",
"result": {
"data": "12260A242F636F736D6F732E62616E6B2E763162657461312E4D736753656E64526573706F6E7365",
"events": [
{
"attributes": [
{
"index": true,
"key": "ZmVl",
"value": null
}
],
"type": "tx"
},
{
"attributes": [
{
"index": true,
"key": "YWNjX3NlcQ==",
"value": "Y2VsZXN0aWExMzc3azVhbjNmOTR2Nnd5YWNldTBjZjRucTZnazJqdHBjNDZnN2gvMA=="
}
],
"type": "tx"
},
{
"attributes": [
{
"index": true,
"key": "c2lnbmF0dXJl",
"value": "R3NlVjhGNThFNGphR05LU0NicDBvNmRILytKK3BNQjNvUmtoNVpKNE8rVjdvNVVYQkJNNXpmNkdiYnN6OW9Takc1OUZkSHJRYzFvVVVBbnRBZW1wV0E9PQ=="
}
],
"type": "tx"
},
{
"attributes": [
{
"index": true,
"key": "YWN0aW9u",
"value": "L2Nvc21vcy5iYW5rLnYxYmV0YTEuTXNnU2VuZA=="
}
],
"type": "message"
},
{
"attributes": [
{
"index": true,
"key": "c3BlbmRlcg==",
"value": "Y2VsZXN0aWExMzc3azVhbjNmOTR2Nnd5YWNldTBjZjRucTZnazJqdHBjNDZnN2g="
},
{
"index": true,
"key": "YW1vdW50",
"value": "MzB1dGlh"
}
],
"type": "coin_spent"
},
{
"attributes": [
{
"index": true,
"key": "cmVjZWl2ZXI=",
"value": "Y2VsZXN0aWExMmxlczhsOGd6c2Fjamp4d3VtOXdkeTdtZTh4OXhhanFjaDRneXc="
},
{
"index": true,
"key": "YW1vdW50",
"value": "MzB1dGlh"
}
],
"type": "coin_received"
},
{
"attributes": [
{
"index": true,
"key": "cmVjaXBpZW50",
"value": "Y2VsZXN0aWExMmxlczhsOGd6c2Fjamp4d3VtOXdkeTdtZTh4OXhhanFjaDRneXc="
},
{
"index": true,
"key": "c2VuZGVy",
"value": "Y2VsZXN0aWExMzc3azVhbjNmOTR2Nnd5YWNldTBjZjRucTZnazJqdHBjNDZnN2g="
},
{
"index": true,
"key": "YW1vdW50",
"value": "MzB1dGlh"
}
],
"type": "transfer"
},
{
"attributes": [
{
"index": true,
"key": "c2VuZGVy",
"value": "Y2VsZXN0aWExMzc3azVhbjNmOTR2Nnd5YWNldTBjZjRucTZnazJqdHBjNDZnN2g="
}
],
"type": "message"
},
{
"attributes": [
{
"index": true,
"key": "bW9kdWxl",
"value": "YmFuaw=="
}
],
"type": "message"
}
],
"gas_used": 69085,
"gas_wanted": 10000000,
"height": 30497,
"logs": [
{
"events": [
{
"attributes": [
{
"key": "receiver",
"value": "nubit12les8l8gzsacjjxwum9wdy7me8x9xajqch4gyw"
},
{
"key": "amount",
"value": "30unub"
}
],
"type": "coin_received"
},
{
"attributes": [
{
"key": "spender",
"value": "nubit1377k5an3f94v6wyaceu0cf4nq6gk2jtpc46g7h"
},
{
"key": "amount",
"value": "30unub"
}
],
"type": "coin_spent"
},
{
"attributes": [
{
"key": "action",
"value": "/cosmos.bank.v1beta1.MsgSend"
},
{
"key": "sender",
"value": "nubit1377k5an3f94v6wyaceu0cf4nq6gk2jtpc46g7h"
},
{
"key": "module",
"value": "bank"
}
],
"type": "message"
},
{
"attributes": [
{
"key": "recipient",
"value": "nubit12les8l8gzsacjjxwum9wdy7me8x9xajqch4gyw"
},
{
"key": "sender",
"value": "nubit1377k5an3f94v6wyaceu0cf4nq6gk2jtpc46g7h"
},
{
"key": "amount",
"value": "30unub"
}
],
"type": "transfer"
}
],
"msg_index": 0
}
],
"raw_log": "[{\"msg_index\":0,\"events\":[{\"type\":\"coin_received\",\"attributes\":[{\"key\":\"receiver\",\"value\":\"nubit12les8l8gzsacjjxwum9wdy7me8x9xajqch4gyw\"},{\"key\":\"amount\",\"value\":\"30unub\"}]},{\"type\":\"coin_spent\",\"attributes\":[{\"key\":\"spender\",\"value\":\"nubit1377k5an3f94v6wyaceu0cf4nq6gk2jtpc46g7h\"},{\"key\":\"amount\",\"value\":\"30unub\"}]},{\"type\":\"message\",\"attributes\":[{\"key\":\"action\",\"value\":\"/cosmos.bank.v1beta1.MsgSend\"},{\"key\":\"sender\",\"value\":\"nubit1377k5an3f94v6wyaceu0cf4nq6gk2jtpc46g7h\"},{\"key\":\"module\",\"value\":\"bank\"}]},{\"type\":\"transfer\",\"attributes\":[{\"key\":\"recipient\",\"value\":\"nubit12les8l8gzsacjjxwum9wdy7me8x9xajqch4gyw\"},{\"key\":\"sender\",\"value\":\"nubit1377k5an3f94v6wyaceu0cf4nq6gk2jtpc46g7h\"},{\"key\":\"amount\",\"value\":\"30unub\"}]}]}]",
"txhash": "05D9016060072AA71B007A6CFB1B895623192D6616D513017964C3BFCD047282"
},
"id": 0
}
Undelegate undelegates a user's delegated tokens, unbonding them from the current validator.
Auth level: write
func Undelegate(
delAddr state.ValAddress,
amount state.Int,
fee state.Int,
gasLim uint64,
) *state.TxResponse
{
"jsonrpc": "2.0",
"method": "state.Undelegate",
"params": [
"nubitvaloper1t3egzn706ukv03f66qv6yveeafgge2rtmp2fl0",
"42",
"42",
42
],
"id": 0
}
{
"jsonrpc": "2.0",
"result": {
"data": "12260A242F636F736D6F732E62616E6B2E763162657461312E4D736753656E64526573706F6E7365",
"events": [
{
"attributes": [
{
"index": true,
"key": "ZmVl",
"value": null
}
],
"type": "tx"
},
{
"attributes": [
{
"index": true,
"key": "YWNjX3NlcQ==",
"value": "Y2VsZXN0aWExMzc3azVhbjNmOTR2Nnd5YWNldTBjZjRucTZnazJqdHBjNDZnN2gvMA=="
}
],
"type": "tx"
},
{
"attributes": [
{
"index": true,
"key": "c2lnbmF0dXJl",
"value": "R3NlVjhGNThFNGphR05LU0NicDBvNmRILytKK3BNQjNvUmtoNVpKNE8rVjdvNVVYQkJNNXpmNkdiYnN6OW9Takc1OUZkSHJRYzFvVVVBbnRBZW1wV0E9PQ=="
}
],
"type": "tx"
},
{
"attributes": [
{
"index": true,
"key": "YWN0aW9u",
"value": "L2Nvc21vcy5iYW5rLnYxYmV0YTEuTXNnU2VuZA=="
}
],
"type": "message"
},
{
"attributes": [
{
"index": true,
"key": "c3BlbmRlcg==",
"value": "Y2VsZXN0aWExMzc3azVhbjNmOTR2Nnd5YWNldTBjZjRucTZnazJqdHBjNDZnN2g="
},
{
"index": true,
"key": "YW1vdW50",
"value": "MzB1dGlh"
}
],
"type": "coin_spent"
},
{
"attributes": [
{
"index": true,
"key": "cmVjZWl2ZXI=",
"value": "Y2VsZXN0aWExMmxlczhsOGd6c2Fjamp4d3VtOXdkeTdtZTh4OXhhanFjaDRneXc="
},
{
"index": true,
"key": "YW1vdW50",
"value": "MzB1dGlh"
}
],
"type": "coin_received"
},
{
"attributes": [
{
"index": true,
"key": "cmVjaXBpZW50",
"value": "Y2VsZXN0aWExMmxlczhsOGd6c2Fjamp4d3VtOXdkeTdtZTh4OXhhanFjaDRneXc="
},
{
"index": true,
"key": "c2VuZGVy",
"value": "Y2VsZXN0aWExMzc3azVhbjNmOTR2Nnd5YWNldTBjZjRucTZnazJqdHBjNDZnN2g="
},
{
"index": true,
"key": "YW1vdW50",
"value": "MzB1dGlh"
}
],
"type": "transfer"
},
{
"attributes": [
{
"index": true,
"key": "c2VuZGVy",
"value": "Y2VsZXN0aWExMzc3azVhbjNmOTR2Nnd5YWNldTBjZjRucTZnazJqdHBjNDZnN2g="
}
],
"type": "message"
},
{
"attributes": [
{
"index": true,
"key": "bW9kdWxl",
"value": "YmFuaw=="
}
],
"type": "message"
}
],
"gas_used": 69085,
"gas_wanted": 10000000,
"height": 30497,
"logs": [
{
"events": [
{
"attributes": [
{
"key": "receiver",
"value": "nubit12les8l8gzsacjjxwum9wdy7me8x9xajqch4gyw"
},
{
"key": "amount",
"value": "30unub"
}
],
"type": "coin_received"
},
{
"attributes": [
{
"key": "spender",
"value": "nubit1377k5an3f94v6wyaceu0cf4nq6gk2jtpc46g7h"
},
{
"key": "amount",
"value": "30unub"
}
],
"type": "coin_spent"
},
{
"attributes": [
{
"key": "action",
"value": "/cosmos.bank.v1beta1.MsgSend"
},
{
"key": "sender",
"value": "nubit1377k5an3f94v6wyaceu0cf4nq6gk2jtpc46g7h"
},
{
"key": "module",
"value": "bank"
}
],
"type": "message"
},
{
"attributes": [
{
"key": "recipient",
"value": "nubit12les8l8gzsacjjxwum9wdy7me8x9xajqch4gyw"
},
{
"key": "sender",
"value": "nubit1377k5an3f94v6wyaceu0cf4nq6gk2jtpc46g7h"
},
{
"key": "amount",
"value": "30unub"
}
],
"type": "transfer"
}
],
"msg_index": 0
}
],
"raw_log": "[{\"msg_index\":0,\"events\":[{\"type\":\"coin_received\",\"attributes\":[{\"key\":\"receiver\",\"value\":\"nubit12les8l8gzsacjjxwum9wdy7me8x9xajqch4gyw\"},{\"key\":\"amount\",\"value\":\"30unub\"}]},{\"type\":\"coin_spent\",\"attributes\":[{\"key\":\"spender\",\"value\":\"nubit1377k5an3f94v6wyaceu0cf4nq6gk2jtpc46g7h\"},{\"key\":\"amount\",\"value\":\"30unub\"}]},{\"type\":\"message\",\"attributes\":[{\"key\":\"action\",\"value\":\"/cosmos.bank.v1beta1.MsgSend\"},{\"key\":\"sender\",\"value\":\"nubit1377k5an3f94v6wyaceu0cf4nq6gk2jtpc46g7h\"},{\"key\":\"module\",\"value\":\"bank\"}]},{\"type\":\"transfer\",\"attributes\":[{\"key\":\"recipient\",\"value\":\"nubit12les8l8gzsacjjxwum9wdy7me8x9xajqch4gyw\"},{\"key\":\"sender\",\"value\":\"nubit1377k5an3f94v6wyaceu0cf4nq6gk2jtpc46g7h\"},{\"key\":\"amount\",\"value\":\"30unub\"}]}]}]",
"txhash": "05D9016060072AA71B007A6CFB1B895623192D6616D513017964C3BFCD047282"
},
"id": 0
}
Content-Type
application/json