Nubit
Nubit
  • Overview
    • Introduction
  • BitVM
    • BitVM IDE
    • Learn More
  • Modular Indexer
    • Introduction
    • Developer Guide
      • API Documentation
        • Modular Indexer API
        • Light Client API
      • Wallet Integration Guide
    • Learn More
  • External resources
    • Github
    • Linktree
    • X (Twitter)
    • Telegram
    • Discord
Powered by GitBook
On this page
  • Nubit Node API Example
  • BLOB
  • Get
  • GetAll
  • GetProof
  • Included
  • Submit
  • DAS
  • SamplingStats
  • WaitCatchUp
  • HEADER
  • GetBtcHeight
  • GetByHash
  • GetByHeight
  • GetHeightRangeAtBtcHeight
  • GetRangeByHeight
  • LocalHead
  • NetworkHead
  • Subscribe
  • SyncState
  • SyncWait
  • WaitForHeight
  • NODE
  • AuthNew
  • AuthVerify
  • Info
  • LogLevelSet
  • Ready
  • P2P
  • BandwidthForPeer
  • BandwidthForProtocol
  • BandwidthStats
  • BlockPeer
  • ClosePeer
  • Connect
  • Connectedness
  • Info
  • IsProtected
  • ListBlockedPeers
  • NATStatus
  • PeerInfo
  • Peers
  • Protect
  • PubSubPeers
  • ResourceState
  • UnblockPeer
  • Unprotect
  • SHARE
  • GetEDS
  • GetShare
  • GetSharesByNamespace
  • SharesAvailable
  • STATE
  • AccountAddress
  • Balance
  • BalanceForAddress
  • BeginRedelegate
  • CancelUnbondingDelegation
  • Delegate
  • QueryDelegation
  • QueryRedelegations
  • QueryUnbonding
  • SubmitBlob
  • SubmitTx
  • Transfer
  • Undelegate
  1. Nubit DA
  2. Developer Guide
  3. API Documentation

Node API

Last updated 5 months ago

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!


Nubit Node API Example

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 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

Content-Type

application/json

BLOB

Get

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

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

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

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

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
}

DAS

SamplingStats

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

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
}

HEADER

GetBtcHeight

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

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

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

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

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

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

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

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

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

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

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
}

NODE

AuthNew

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

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

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

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

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
}

P2P

BandwidthForPeer

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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
}

SHARE

GetEDS

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

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

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

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
}

STATE

AccountAddress

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

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

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

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

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

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

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

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

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

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

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

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

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
}
header.SyncState