# 查询链上信息

查询接口提供查询链上信息查询功能,具体如下表所示。

方法名 说明
getTransaction 查询账户交易信息。
getAccount 查询链上账户信息。
getBlock 根据账户及区块高度查询区块信息。
getStandbys 查询节点候选池中节点信息。
getCGP 查询链上治理参数(on-chain governance parameters)。
getChainInfo 查询主链信息。
queryNodeInfo 查询矿工信息。
queryNodeReward 查询矿工奖励。
listVoteUsed 查询投票者投票的矿工账户地址以及投票数量。
queryVoterDividend 查询投票者分红。
queryProposal 查询提案信息。
getLatestTables 获取最新区块高度。

# 使用前提

查询链上账户信息、查询区块信息、查询账户交易详情,请确保您已经拥有一个链上账户,且已发送过交易。

# 查询账户交易信息

查询指定交易哈希的交易详情信息。

请求方法

getTransaction

请求参数

参数名称 是否必选 默认值 类型 说明
account_addr - String 数据所在账户地址:发送交易或接受交易账户地址。
tx_hash - String 账户交易 hash,可用于查询交易详细信息。

返回参数

参数名称 类型 说明
original_tx_info Object 原始交易信息。
amount Uint64 交易金额。
authorization String 交易体签名。
edge_nodeid String 转发交易的 edge 节点 id,目前未使用。
ext String 预留字段,用于扩展,默认为空字符串。
last_tx_nonce String 上一笔交易 nonce。
note String 交易备注。
premium_price Uint32 预留字段,默认为“0”。
receiver_account String 交易接受方账户地址。
receiver_action_name String 调用合约时,合约的函数名。 其中,系统合约函数请参见 系统智能合约 API。非合约交易时,默认为空。
receiver_action_param JSON 接收方执行内容。不同 action type 执行内容的序列化请参见 action param 序列化
send_timestamp Uint64 交易发送时间戳。
sender_account String 交易发送方账户地址。
sender_action_name String 预留字段,默认为空字符串。
sender_action_param JSON 发送方执行内容。不同 action type 执行内容的序列化请参见 action param 序列化
token_name String token 符号,比如 top 为 TOP。
tx_deposit Uint32 交易保证金,单位为 uTOP。
tx_expire_duration Uint16 交易到期时长,超过则被丢弃,默认 100s。
tx_hash String 交易 hash 的十六进制。
tx_len Uint16 交易大小。交易消耗的 gas 与交易大小相关。
tx_structure_version Uint32 交易结构版本号。默认为"2"
tx_type Uint16 交易类型,不同的交易类型,action 中 action_param(执行内容)及 action type(执行类型)不同。
xtransaction_type_run_contract = 3, // 调用智能合约
xtransaction_type_transfer = 4, // 转账
xtransaction_type_vote = 20, // 投票
xtransaction_type_abolish_vote = 21,// 取消投票
xtransaction_type_pledge_token_gas = 22, // 锁定 TOP token 兑换 gas
xtransaction_type_redeem_token_gas = 23, // 解锁兑换 gas 锁定的 TOP token
xtransaction_type_pledge_token_vote = 27, // 锁定 TOP token 兑换选票
xtransaction_type_redeem_token_vote = 28, // 解锁兑换选票锁定的 TOP token
tx_consensus_state Object 交易共识结果。
跨账户交易会进行三次共识,所以会返回三个 unit 的信息;单账户交易只在交易发送账户下进行一次共识,所以只返回"confirm_block_info"。
confirm_block_info object 打包 confirm 交易的 table 块信息。
account String table 地址。
exec_status String 交易最终共识结果:
success:成功
failure:失败
height Uint64 confirm 交易所在的 table 块的高度。
recv_tx_exec_status String 交易接收方共识结果:
success:成功
failure:失败
交易接收方共识失败或拒绝执行,通常在执行合约交易的时候会出现拒绝共识的情况。例如,注册矿工,矿工保证金低于最低要求,合约将执行失败。
used_deposit Uint64 交易第三次共识结束后,因发送方账户 gas 不足以支付交易花费而扣除的发送方账户的交易保证金,单位为 uTOP。
used_gas Uint64 用户合约交易,交易第三次共识结束后,扣除的发送方账户 gas。
如果合约用户已支付一部分 gas,那么此处扣除整个交易所消耗的 gas 的剩余部分;如果合约无法支付其应承担的 gas,那么此处扣除整个交易消耗的 gas。单位为 Tgas。
recv_block_info object 打包 recv 交易的 table 块信息。
account String table 地址。
height Uint64 receive 交易所在的 table 块的高度。
used_gas Uint64 用户合约交易,交易第二次共识后,扣除接收方账户应承担的的 gas。单位为 Tgas。
send_block_info object 打包 send 交易的 table 块信息。
account String table 地址。
height Uint64 send 交易所在的 table 块的高度。
tx_fee Uint64 对于调用 Beacon 系统合约交易(注册矿工相关、提案相关、启动节点进程入网),系统自动从交易发送方账户中扣除 100*10^6 uTOP token 作为交易手续费,并销毁。
used_deposit Uint64 发送交易消耗的交易保证金。
used_gas Uint64 交易第一次共识扣除的 gas,单位为 Tgas。
对于非调用用户合约的跨账户交易,交易所消耗的 gas 全部由发送方承担,在发送方 gas 足够的情况下,会在第一轮共识就扣完交易所需要的 gas;在 gas 不足的情况下,第一轮共识会扣除发送方账户可用的 gas,剩余 gas 在第三轮共识扣除交易保证金兑换 gas 支付交易费用。
errmsg String 错误信息。
errno Uint64 错误编号。
sequence_id String 客户端会话次数,递增。

请求样例

curl -X 'POST' -d 'target_account_addr=Ta0000@0&body={"params":{"account_addr":"Ta0000@0","tx_hash":"0xb014bcfa3bb14f350531c95f0a5c32f32aaabb5aaaebe9cc214aab3776f483fe"}}&method=getTransaction&sequence_id=8&version=2.0' '127.0.0.1:19081'

返回样例

根据交易不同状态,返回交易信息不同,具体如下。

  • 成功返回:

    • 若交易为单账户交易,交易只在交易发送方下进行一次共识,查询交易最终返回结果中只有"confirm_block_info"的信息。

    • 若交易为跨账户交易,交易总共需要进行三次共识,查询交易最终返回结果中包括三次共识的信息,包括"confirm_block_info(发送方第二次共识)"、"recv_block_info(接收方共识)"、"send_block_info"(发送方第一次共识)。

    • 发送,接收,确认都完成,并且接收交易执行成功,"tx_state": "success"。

      {
       "data" : {
          "original_tx_info" : {
             "amount" : 1000000,
             "authorization" : "0x01c00cf3c8ca7c883b7ab130ac56ccb53c2c066640659d9babe21655a6b3a073455a3b8d06ee5b1a955b756a7800f0230afc7299a97f3ca9c57555d7890518472b",
             "edge_nodeid" : "",
             "ext" : "",
             "last_tx_nonce" : 4,
             "note" : "",
             "premium_price" : 0,
             "receiver_account" : "T8000042537218707b66d49fc06143b60d029cfe2b65f4",
             "receiver_action_name" : "",
             "receiver_action_param": {
                "amount": 1000000,
                "token_name": "TOP"
             },
             "send_timestamp" : 1645012819,
             "sender_account" : "T800008c5a874df3f8b6d1e357890f881704bf8849feeb",
             "sender_action_name" : "",
             "sender_action_param": {
                "amount": 1000000,
                "token_name": "TOP"
             },
             "token_name" : "",
             "tx_deposit" : 100000,
             "tx_expire_duration" : 100,
             "tx_hash" : "0xb014bcfa3bb14f350531c95f0a5c32f32aaabb5aaaebe9cc214aab3776f483fe",
             "tx_len" : 137,
             "tx_structure_version" : 2,
             "tx_type" : 4
          },
          "tx_consensus_state" : {
             "confirm_block_info" : {
                "account" : "Ta0000@31",
                "exec_status" : "success",
                "height" : 28,
                "recv_tx_exec_status" : "success",
                "used_deposit" : 0,
                "used_gas" : 0
             },
             "recv_block_info" : {
                "account" : "Ta0000@27",
                "height" : 17,
                "used_gas" : 0
             },
             "send_block_info" : {
                "account" : "Ta0000@31",
                "height" : 25,
                "tx_fee" : 0,
                "used_deposit" : 0,
                "used_gas" : 411
             }
          },
          "tx_state" : "success"
       },
       "errmsg" : "OK",
       "errno" : 0,
       "sequence_id" : "1"
      }
      
    • 确认交易执行未完成,"tx_state": "queue"。

      {
       "data" : {
          "original_tx_info" : {
             "amount" : 1000000,
             "authorization" : "0x01c00cf3c8ca7c883b7ab130ac56ccb53c2c066640659d9babe21655a6b3a073455a3b8d06ee5b1a955b756a7800f0230afc7299a97f3ca9c57555d7890518472b",
             "edge_nodeid" : "",
             "ext" : "",
             "last_tx_nonce" : 4,
             "note" : "",
             "premium_price" : 0,
             "receiver_account" : "T8000042537218707b66d49fc06143b60d029cfe2b65f4",
             "receiver_action_name" : "",
             "receiver_action_param": {
                "amount": 1000000,
                "token_name": "TOP"
             },
             "send_timestamp" : 1645012819,
             "sender_account" : "T800008c5a874df3f8b6d1e357890f881704bf8849feeb",
             "sender_action_name" : "",
             "sender_action_param": {
                "amount": 1000000,
                "token_name": "TOP"
             },
             "token_name" : "",
             "tx_deposit" : 100000,
             "tx_expire_duration" : 100,
             "tx_hash" : "0xb014bcfa3bb14f350531c95f0a5c32f32aaabb5aaaebe9cc214aab3776f483fe",
             "tx_len" : 137,
             "tx_structure_version" : 2,
             "tx_type" : 4
          },
          "tx_consensus_state" : {
             "confirm_block_info" : {
                "account" : "Ta0000@31",
                "height" : 0
             },
             "recv_block_info" : {
                "account" : "Ta0000@27",
                "height" : 17,
                "used_gas" : 0
             },
             "send_block_info" : {
                "account" : "Ta0000@31",
                "height" : 25,
                "tx_fee" : 0,
                "used_deposit" : 0,
                "used_gas" : 411
             }
          },
          "tx_state" : "queue"
       },
       "errmsg" : "OK",
       "errno" : 0,
       "sequence_id" : "1"
      }
      
    • 合约交易执行失败,"tx_state": "fail"。

      {
      "data": {
        "original_tx_info": {
          "amount": 0,
          "authorization": "0x000188ea6d4c2272f1d2bdb65febbaad968a691d811fc4aa6a7976c7830d3ef1f9074a7579fb9651e18721f4eb342326cf8b909a72a92d901c56edbbbdb924c205",
          "edge_nodeid": "",
          "ext": "",
          "last_tx_nonce": 29,
          "note": "test_app",
          "premium_price": 0,
          "receiver_account": "T20000MTotTKfAJRxrfvEwEJvtgCqzH9GkpMmAUg@19",
          "receiver_action_name": "claimNodeReward",
          "receiver_action_param": {"paras": ""},
          "send_timestamp": 1643285775,
          "sender_account": "T00000LcmaU9qgcsP53o652xMyty5CmEAjXnpW3B",
          "sender_action_name": "",
          "sender_action_param": {
             "amount": “0”,
             "token_name": "TOP"
          },
          "token_name": "",
          "tx_deposit": 100000,
          "tx_expire_duration": 100,
          "tx_hash": "0xb98be7520cf6bb08623e3a5a8802b32ffe5821961adac080ca1612ad1933722b",
          "tx_len": 334,
          "tx_structure_version": 0,
          "tx_type": 3
        },
        "tx_consensus_state": {
          "confirm_block_info": {
            "account": "Ta0000@19",
            "exec_status": "failure",
            "height": 180727,
            "recv_tx_exec_status": "failure",
            "used_deposit": 0,
            "used_gas": 0
          },
          "recv_block_info": {
            "account": "Ta0000@19",
            "height": 180724,
            "used_gas": 0
          },
          "send_block_info": {
            "account": "Ta0000@19",
            "height": 180721,
            "tx_fee": 0,
            "used_gas": 1002,
            "used_deposit": 0
          }
        },
        "tx_state": "fail"
      },
      "errmsg": "OK",
      "errno": 0,
      "sequence_id": "8"
      }
      
  • 失败返回:交易既不在区块,又不在交易池中,此时交易不存在。

    {
         "errmsg" : "account address or transaction hash error/does not exist",
         "errno" : 3,
         "sequence_id" : "20"
      }
    

# 查询链上账户信息

请求方法

getAccount

请求参数

参数名称 是否必选 默认值 类型 说明
account_addr - String 数据所在账户地址,可输入当前正在使用的链上账户地址。

返回参数

RPC 所有关于 TOP token 的单位都为 uTOP,1TOP=1*10^6 uTOP。

参数名称 类型 说明
account_addr String 账户地址。
available_gas Uint64 账户现有可用 gas 的量,单位 Tgas。如返回值为负,可能因为两种原因:
  • 获取了免费 gas 后账户余额不足100*10^6 uTOP。
  • 在用完锁定 TOP token 兑换的 gas 后解锁 TOP token。
balance Uint64 账户余额,单位 uTOP。
burned_token Uint64 该账户所有已经销毁的TOP token,单位 uTOP。
cluster_id Uint8 cluster ID。
created_time Uint64 账户在链上创建的时钟高度。
disk_staked_token Uint64 兑换 disk 锁定的 TOP token,单位 uTOP。
gas_staked_token Uint64 兑换 gas 锁定的 TOP token,单位 uTOP。
group_id Uint8 group ID。
latest_tx_hash String 最新共识成功的交易 hash。
latest_tx_hash_xxhash64 String 最新共识成功的交易 xx64hash。
latest_unit_height Uint64 最新共识成功的交易的 unit block 高度。
lock_balance Uint64 锁定的 TOP token,单位 uTOP,主要用于用户合约交易。
调用用户合约的时候,交易发送方可同时给合约账户转账,如果合约执行失败,转账款需要退还给发送方,所以在合约执行成功前,先将转账款锁定。
nonce Uint64 该账户最新共识成功的交易序号,唯一。
recv_tx_num Uint64 账户作为接收方的交易数量。
table_id Unit16 Table 的 ID。
total_free_gas Uint64 账户免费获取的 gas 总量,单位 Tgas。目前当账户余额 ≥100*10^6 uTOP,系统会免费赠与该账户 25,000 Tgas。该值随着链上参数治理变化而变化。
total_gas Uint64 账户 gas 总量,单位 Tgas。
一个普通账户 24 小时内可以获得的 gas 不超过 200,000 Tgas。
一个合约账户 24 小时内可以获得的 gas 不超过 10,000,000 Tgas。
total_stake_gas Uint64 账户锁定 TOP token 而获得的 gas 总量,单位 Tgas。
unlock_disk_staked Uint64 解锁中的兑换 disk 的 TOP token,发起解锁后,需要等待 24 小时,并由锁定账户发起一笔交易后,解锁的金额才会到账。
unlock_gas_staked Uint64 解锁中的兑换 gas 的 TOP token,发起解锁后,需要等待 24 小时,并由锁定账户发起一笔交易后,解锁的金额才会到账。
unused_free_gas Uint64 免费 gas 余量,单位 Tgas。
unused_stake_gas Uint64 锁定 TOP token 兑换的 gas 余量,单位 Tgas。
unused_vote_amount Uint64 该账户未使用选票数量。
vote_staked_index - 兑票明细,包含以下三个参数:
  • duration:锁定时长,单位为天,参数类型为 Uint16。
  • lock_time:兑票时间,参数类型为 Uint64。
  • lock_token:锁定的 token 数量。
  • vote_num:兑票数量,参数类型为 Uint64。
vote_staked_token Uint64 兑换选票锁定的 TOP token,单位 uTOP。
zone_id Uint8 zone ID。

账户所属分片网络信息:

ID 分片网络
zone_id、cluster_id、group_id,分别为 1、0、0 或者分别为 2、0、0 Beacon Network
zone_id、cluster_id、group_id,分别为 14、1、1 Archive Network
zone_id、cluster_id、group_id,分别为 15、1、1 Edge Network
zone_id、cluster_id,分别为0、1,group_id 的值为 [1,63] Audit Network
zone_id、cluster_id,分别为0、1,group_id 的值为 [64,126] Validate Network

请求样例

curl -X POST --data 'target_account_addr=T800002276a7d58218ac4978733e5cca927a7d86cb7c87&body={"params":{"account_addr":"T8000066ab344963eaa071f9636faac26b0d1a39900325"}}&method=getAccount&sequence_id=5&identity_token=&version=1.0'  http://localhost:19081

返回样例

  • 成功返回

    {
       "data" : {
          "account_addr" : "T8000037d4fbc08bf4513a68a287ed218b0adbd497ef30",
          "available_gas" : 24189,
          "balance" : 99999075443787,
          "burned_token" : 0,
          "cluster_id" : 1,
          "created_time" : 1639104150,
          "disk_staked_token" : 0,
          "gas_staked_token" : 0,
          "group_id" : 65,
          "latest_tx_hash" : "0x658aae45cf8d580a76b0d967f891349d919533a78e817be91ab1985085f65894",
          "latest_tx_hash_xxhash64" : "0x269a19dbec5077b0",
          "latest_unit_height" : 4,
          "lock_balance" : 0,
          "nonce" : 3,
          "recv_tx_num" : 0,
          "table_id" : 39,
          "total_free_gas" : 25000,
          "total_gas" : 25000,
          "total_stake_gas" : 0,
          "unlock_disk_staked" : 0,
          "unlock_gas_staked" : 0,
          "unused_free_gas" : 24189,
          "unused_stake_gas" : 0,
          "unused_vote_amount" : 0,
          "vote_staked_index" : [
             {
                "duration" : 90,
                "lock_time" : 6591504,
                "lock_token" : 924556213,
                "vote_num" : 1000
             }
          ],
          "vote_staked_token" : 924556213,
          "zone_id" : 0
       },
       "errmsg" : "OK",
       "errno" : 0,
       "sequence_id" : "1"
    }
    
  • 失败返回

    链上无此账户,返回:

    {
       "errmsg" : "account not found on chain",
       "errno" : 3,
       "sequence_id" : "38"
    }
    

# 查询区块信息

根据账户地址及区块高度查询区块信息。

查询区块信息的前提是账户已发送交易且交易执行成功。

请求方法

getBlock

请求参数

参数名称 是否必选 默认值 类型 说明
account_addr - String 数据所在账户地址。
  • 查询 unit block 请使用普通账户地址,如"T8000066ab344963eaa071f9636faac26b0d1a39900325"。
  • 查询 table block 请使用 table block 账户地址,如"Ta0000gRD2qVpp2S7UpjAsznRiRhbE1qNnhMbEDp@0"。
height - String/Uint64 最新区块高度"latest"(String)或者具体区块高度(Number)。

返回参数

  • unit block

    参数名称 类型 说明
    body Object
    fullunit Object 为了节约数据存储空间,每 21 个 lightunit 会打包成 1 个 fullunit。
    account_balance Number 账户余额,单位 uTOP。
    account_create_time Number 账户在链上创建时的时钟高度。
    burned_amount_change Number 该账户所有已经销毁的 TOP token,单位 uTOP。
    latest_full_unit_hash String 最新 fullunit 交易 hash。
    latest_full_unit_number Number 最新 fullunit 块高度。
    latest_recv_trans_number Number 接收交易笔数。
    latest_send_trans_hash String 最新发送交易的 hash。
    latest_send_trans_number Number 发送交易笔数。
    txs Object 本区块打包的交易信息,结构为 map 数组,map 的 key 为交易 hash。
    tx_consensus_phase String 交易的发送方或接收方:
    • 1:self
    • 2:send
    • 3:recv
    enum_transaction_subtype_self = 1, // self operate
    enum_transaction_subtype_send = 2, // send to other account
    enum_transaction_subtype_recv = 3, // receive from other account
    enum_transaction_subtype_recv_ack = 4(confirm), // receive ack from other account
    tx_hash String 交易 hash 值。
    lightunit Object 轻单元块数据。
    txs Object 本区块打包的交易信息,结构为 map 数组,map 的 key 为交易 hash。
    tx_consensus_phase String 交易的发送方或接收方:
    • 1:self
    • 2:send
    • 3:recv
    enum_transaction_subtype_self = 1, // self operate
    enum_transaction_subtype_send = 2, // send to other account
    enum_transaction_subtype_recv = 3, // receive from other account
    enum_transaction_subtype_recv_ack = 4(confirm), // receive ack from other account
    tx_hash String 交易 hash 值。
    hash String 本块 hash 的十六进制字符串。
    header Object
    auditor_xip String 本块的 auditor leader 节点。(xip 格式)
    timerblock_height Number 时钟块高度。
    validator String 本块的 validator leader 矿工账户地址。
    validator 和 auditor 节点轮流担任共识 leader 节点,当返回的字段中有账户地址信息时,例如以下返回示例中,validator 字段的值为"T8000085a8e8acd53c72dca85dcb002a6710796975b4ba",证明产生此块为 validator 节点,且矿工账户地址为"T8000085a8e8acd53c72dca85dcb002a6710796975b4ba"。
    validator_xip String 本块的 validator leader 节点。(xip 格式)
    version Number 协议版本号。
    height Number 块高度。
    owner String unit block 所属账户地址。
    prev_hash String 前一区块 hash 的十六进制。
    table_height Number 表高度。
    timestamp Number 出块时间戳。
    status String 块状态。

账户原生属性说明:

属性代码字段 名称 类型 说明
XPROPERTY_CONTRACT_CODE "@1" String 合约执行的具体代码。
XPROPERTY_LOCK_TOKEN_KEY "@4" Map 账号下交易锁定的 TOP token 集合。
XPROPERTY_LOCK_TOKEN_SUM_KEY "@5" String 锁定的 TOP token 总数。
XPORPERTY_SUB_ACCOUNT_KEY "@13" Llist 子账号的列表。
XPORPERTY_CONTRACT_SUB_ACCOUNT_KEY "@14" List 合约子账号列表。
XPORPERTY_CONTRACT_PARENT_ACCOUNT_KEY "@15" String 合约父账号。
XPROPERTY_USED_TGAS_KEY "@30" String gas 衰减值。
XPROPERTY_LAST_TX_HOUR_KEY "@32" String 最近一次更新 @30 的逻辑时钟。
XPROPERTY_USED_DISK_KEY "@34" String 使用的 disk,本期暂时无用。
XPROPERTY_CONTRACT_TGAS_LIMIT_KEY "@37" String 合约的 tgas_limit,合约为调用自己支付的 gas 上限。
XPROPERTY_PLEDGE_VOTE_KEY "@45" List 用于兑换、解锁兑换选票锁定金,存储账户所有兑票交易。
XPROPERTY_EXPIRE_VOTE_TOKEN_KEY "@46" String 兑换选票中,所有锁定期到期的 TOP token 值。
  • table block

    参数名称 类型 说明
    tableblock Object table block 下包含多个 units,当链上长时间没有新交易,查询 tableblock 最新高度数据为"null"。
    txs Object 本区块打包的交易信息,结构为 map 数组,map 的 key 为交易 hash。
    tx_consensus_phase String 交易的发送方或接收方:
    • 1:self
    • 2:send
    • 3:recv
    enum_transaction_subtype_self = 1, // self operate
    enum_transaction_subtype_send = 2, // send to other account
    enum_transaction_subtype_recv = 3, // receive from other account
    enum_transaction_subtype_recv_ack = 4(confirm), // receive ack from other account
    tx_hash String 交易 hash 值。
    units Object tableblock 存储若干 unit 块相关信息。
    account Object 账号地址。
    unit_height Integer unit 块高度。
    hash String 块 hash 的十六进制字符串。
    header Object
    auditor_xip String 本块的 auditor leader 节点(xip)。
    timerblock_height Number 时钟块高度。
    validator String 本块的 validator leader 矿工账户地址。
    validator 和 auditor 节点轮流担任共识 leader 节点,当返回的字段中有账户地址信息时,例如以下返回示例中,validator 字段的值为"T8000085a8e8acd53c72dca85dcb002a6710796975b4ba",证明产生此块为 validator 节点,且矿工账户地址为"T8000085a8e8acd53c72dca85dcb002a6710796975b4ba"。
    validator_xip String 本块的 validator leader 节点(xip)。
    version Number 协议版本号
    height Number 块高度。
    owner String table block 所属账户地址。
    prev_hash String 前一区块 hash 的十六进制。
    table_height Number 表高度。
    timestamp Number 出块时间戳。
    status String 块状态。

请求样例

  • unit block

    curl -X POST --data 'target_account_addr=T800002276a7d58218ac4978733e5cca927a7d86cb7c87&body={"params":{"account_addr":"T8000066ab344963eaa071f9636faac26b0d1a39900325","height":"latest"}}&method=getBlock&sequence_id=9&identity_token=&version=2.0'  http://localhost:19081
    
  • table block

    curl -X POST --data 'target_account_addr=T00000LbgaCLnuxnqaqPh8e9EpeNqsRju6MuCr4z&body={"params":{"account_addr":"T00000LbgaCLnuxnqaqPh8e9EpeNqsRju6MuCr4z","height":42}}&method=getBlock&sequence_id=9&identity_token=&version=2.0'  http://localhost:19081
    

返回样例

  • 成功返回

    • unit block

      • lightunit

        {
           "result" : "ok",
           "value" : {
              "body" : {
                 "lightunit" : {
                    "txs" : [
                       {
                          "tx_consensus_phase" : "send",
                          "tx_hash" : "0x36ec1efb79385bc67629a924caf8db41b25dd080f265866c325be43179d76fe1"
                       }
                    ]
                 }
              },
              "hash" : "1f73f5e7d4b8744d9d051a215bb3aeabc08bde93946550988fd744aecfc10d4e",
              "header" : {
                 "auditor" : "T00000LNi53Ub726HcPXZfC4z6zLgTo5ks6GzTUp",
                 "auditor_xip" : "100000000000016:f60000ff00040401",
                 "timerblock_height" : 7301997,
                 "validator_xip" : "100000000000016:f60000ff000503ff",
                 "version" : 196608
              },
              "height" : 2,
              "owner" : "T8000062d241d05334a8bc02dea1e97a5381cbe4885729",
              "prev_hash" : "3a0aa3d2e728b93ce38dac45778579ab08724d3168ac4fb9c381172f91a21d4e",
              "table_height" : 4,
              "timestamp" : 1646209170
           }
        }
        
      • fullunit

        {
            "data": {
                "value": {
                    "body": {
                        "fullunit": {
                            "account_balance": 1875000762900000,
                            "account_create_time": 1609412970,
                            "burned_amount_change": 0,
                            "latest_full_unit_hash": "82a730ec0df3b86260af57c3dad0c511dd30bf4aea813cb0f4e077991b629b61",
                            "latest_full_unit_number": 42,
                            "latest_recv_trans_number": 1,
                            "latest_send_trans_hash": "401e87b7ba6c5b82311c24a886ab3ea9dc98cb4f2e04779424a6f239be95aecf",
                            "latest_send_trans_number": 8,
                            "txs": [{
                                "tx_consensus_phase": "send",
                                "tx_hash": "0x401e87b7ba6c5b82311c24a886ab3ea9dc98cb4f2e04779424a6f239be95aecf"
                            }]
                        }
                    },
                    "hash": "82a730ec0df3b86260af57c3dad0c511dd30bf4aea813cb0f4e077991b629b61",
                    "header": {
                        "auditor": "T00000LR3QHZf1DD1Usn1oEP4THaYhdBJGgxZ1ga",
                        "auditor_xip": "1000000000005652:f60000000004081",
                        "timerblock_height": 7197540,
                        "validator_xip": "2000000000005652:f600000000050ff",
                        "version": 196608
                    },
                    "height": 9,
                    "owner": "T00000LbgaCLnuxnqaqPh8e9EpeNqsRju6MuCr4z",
                    "prev_hash": "c962a4d464dd9a14e0ff337b07bdda3ff1ff79bcf34394e90ffbcd0de02e2bd8",
                    "table_height": 150872,
                    "timestamp": 1645164600
                }
            },
            "errmsg": "OK",
            "errno": 0,
            "sequence_id": "9"
        }
        
    • table block

      {
          "data": {
              "value": {
                  "body": {
                      "tableblock": {
                          "txs": [{
                              "tx_consensus_phase": "send",
                              "tx_hash": "0x2ed974afd473b8188f0601e1956376897d90fc3175c7b5d3a905032275c84860"
                          }],
                          "units": [{
                              "account": "T00000LhEBn4hwcVgiZJWMtZCV3Xz4Qxko2huSSM",
                              "unit_height": 32039
                          }]
                      }
                  },
                  "hash": "c0eac42fe93d39ff6d7339192f4520d3f4b99d6f833b1f7b6143350d97df7955",
                  "header": {
                      "auditor_xip": "1000000000005c3b:f6000000000407f",
                      "multisign_auditor": "740000005f0000000694de06000000002100038b37abb47aed5d1827e01ceae22b4c7292476f17fce4d57a84b1f4c5417170322000fb10f842a1479949715ad57c20606c1ce1ea6fdf0e6219fde622052e8b78111e4000eb65dbeffefffefb",
                      "multisign_validator": "74000000670000000694de060000000021000316f597e2edf094d63d922db06a32895d72beaf54fde3230fd31476e00d6f548020004e257d99224f8462abc7ca8e36d0e28e25a8779573da58e119306a5e36df8bb7800076e6dc7bef4c3eff20f836f9beb6fffd",
                      "timerblock_height": 7760752,
                      "validator": "T00000LTe5A139dZWCtprNUpeVteR23v8rtEDK5K",
                      "validator_xip": "2000000000005c3b:f60000000005007",
                      "version": 196608
                  },
                  "height": 931803,
                  "owner": "Ta0000@1",
                  "prev_hash": "22adcb9e156724c0e79023f02acd64050660d3e3a6cffa8a685eb46be78f7590",
                  "table_height": 931803,
                  "timestamp": 1650796720
              }
          },
          "errmsg": "OK",
          "errno": 0,
          "sequence_id": "1"
      }
      
  • 失败返回

    未查询到区块信息:

    {
        "errmsg": "account address is valid",
        "errno": 1,
        "sequence_id": "1"
    }
    

# 查询候选池节点信息

查询 Beacon 上候选池合约中所有的节点信息,包括已经被选举为 Edge、Archive、Beacon、auditor 或 validator 节点的信息。

请求方式

getStandbys

请求参数

参数名称 是否必选 默认值 类型 说明
account_addr - String 数据所在账户地址。可使用候选池合约账户地址:T2000138CQwyzFxbWZ59mNjkq3eZ3eH41t7b5midm@0(Beacon 候选池合约账户地址)。
node_account_addr - String 矿工账户地址,如不指定,默认查询所有候选节点。

返回参数

参数名称 类型 说明
consensus_public_key String 矿工注册时使用的公钥。账户公钥或者无资产的公私钥对中的公钥。
node_id String 矿工账户地址。
stake Number 节点权益。
is_genesis_node String 是否是创世节点。
program_version String 程序版本。
miner_type String 矿工类型。
credit_score String 信誉分。

请求样例

curl -X POST --data 'target_account_addr=T800002276a7d58218ac4978733e5cca927a7d86cb7c87&body={"params":{"account_addr":"T8000066ab344963eaa071f9636faac26b0d1a39900325@0","node_account_addr":""}}&method=getStandbys&sequence_id=49&identity_token=&version=1.0'  http://localhost:19081

返回样例

  • 成功返回

     {
        "data": {
           "activated_state": "activated",
           "archive": [{
                 "consensus_public_key": "BMz9dh7/AozzPXzP8vq5jaMKtK7YYTM0YO/C7P4jFWi33kfZo9poTjAceSRJJ5lO8ch+nM71nUuLpqYxgZ+zRpE=",
                 "credit_score": "0",
                 "is_genesis_node": "true",
                 "miner_type": "advance,validator,edge",
                 "node_id": "T00000LMhJMWwmFMwTfpfrCzqtQQ9DBveVUirkSC",
                 "program_version": "1.1.0",
                 "stake": 0
           }],
           "auditor": [{
                 "consensus_public_key": "BMz9dh7/AozzPXzP8vq5jaMKtK7YYTM0YO/C7P4jFWi33kfZo9poTjAceSRJJ5lO8ch+nM71nUuLpqYxgZ+zRpE=",
                 "credit_score": "530000",
                 "is_genesis_node": "true",
                 "miner_type": "advance,validator,edge",
                 "node_id": "T00000LMhJMWwmFMwTfpfrCzqtQQ9DBveVUirkSC",
                 "program_version": "1.1.0",
                 "stake": 0
           }],
           "edge": [{
                 "consensus_public_key": "BMz9dh7/AozzPXzP8vq5jaMKtK7YYTM0YO/C7P4jFWi33kfZo9poTjAceSRJJ5lO8ch+nM71nUuLpqYxgZ+zRpE=",
                 "credit_score": "0",
                 "is_genesis_node": "true",
                 "miner_type": "advance,validator,edge",
                 "node_id": "T00000LMhJMWwmFMwTfpfrCzqtQQ9DBveVUirkSC",
                 "program_version": "1.1.0",
                 "stake": 0
           }],
           "eth": [{
                 "consensus_public_key": "BMz9dh7/AozzPXzP8vq5jaMKtK7YYTM0YO/C7P4jFWi33kfZo9poTjAceSRJJ5lO8ch+nM71nUuLpqYxgZ+zRpE=",
                 "credit_score": "0",
                 "is_genesis_node": "true",
                 "miner_type": "advance,validator,edge",
                 "node_id": "T00000LMhJMWwmFMwTfpfrCzqtQQ9DBveVUirkSC",
                 "program_version": "1.1.0",
                 "stake": 0
           }],
           "exchange": [{
                 "consensus_public_key": "BGGBA8KZEg7cujs0WRZ4TPgsp0lmP1xZx13Zg+mkOqq8yBTnK2Mq5RZIAs3iSbqN8m0iGIPzcYKI7K6CGVbXZ9g=",
                 "credit_score": "0",
                 "is_genesis_node": "false",
                 "miner_type": "exchange",
                 "node_id": "T00000LYSBndie9zVKycUyygy529JaCPCHGGyEX8",
                 "program_version": "1.4.0",
                 "stake": 0
           }],
           "fullnode": [{
                 "consensus_public_key": "BMz9dh7/AozzPXzP8vq5jaMKtK7YYTM0YO/C7P4jFWi33kfZo9poTjAceSRJJ5lO8ch+nM71nUuLpqYxgZ+zRpE=",
                 "credit_score": "0",
                 "is_genesis_node": "true",
                 "miner_type": "advance,validator,edge",
                 "node_id": "T00000LMhJMWwmFMwTfpfrCzqtQQ9DBveVUirkSC",
                 "program_version": "1.1.0",
                 "stake": 0
           }],
           "root_beacon": [{
                 "consensus_public_key": "BMz9dh7/AozzPXzP8vq5jaMKtK7YYTM0YO/C7P4jFWi33kfZo9poTjAceSRJJ5lO8ch+nM71nUuLpqYxgZ+zRpE=",
                 "credit_score": "0",
                 "is_genesis_node": "true",
                 "miner_type": "advance,validator,edge",
                 "node_id": "T00000LMhJMWwmFMwTfpfrCzqtQQ9DBveVUirkSC",
                 "program_version": "1.1.0",
                 "stake": 0
           }],
           "sub_beacon": [{
                 "consensus_public_key": "BMz9dh7/AozzPXzP8vq5jaMKtK7YYTM0YO/C7P4jFWi33kfZo9poTjAceSRJJ5lO8ch+nM71nUuLpqYxgZ+zRpE=",
                 "credit_score": "0",
                 "is_genesis_node": "true",
                 "miner_type": "advance,validator,edge",
                 "node_id": "T00000LMhJMWwmFMwTfpfrCzqtQQ9DBveVUirkSC",
                 "program_version": "1.1.0",
                 "stake": 0
           }],
           "validator": [{
                 "consensus_public_key": "BMz9dh7/AozzPXzP8vq5jaMKtK7YYTM0YO/C7P4jFWi33kfZo9poTjAceSRJJ5lO8ch+nM71nUuLpqYxgZ+zRpE=",
                 "credit_score": "260000",
                 "is_genesis_node": "true",
                 "miner_type": "advance,validator,edge",
                 "node_id": "T00000LMhJMWwmFMwTfpfrCzqtQQ9DBveVUirkSC",
                 "program_version": "1.1.0",
                 "stake": 0
           }]
        },
        "errmsg": "OK",
        "errno": 0,
        "sequence_id": "49"
     }
    
  • 失败返回

    {
    	"data": null,
    	"errmsg": "ok",
    	"errno": 0,
    	"sequence_id": "50"
    }
    

# 查询链上治理参数

请求方式

getCGP

请求参数

参数名称 是否必选 默认值 类型 说明
account_addr - String 数据所在账户地址。可使用链上治理合约账户地址:T2000138QMHWxXshXyZa1E48JU1LREu3UrT5KGD2U@0。

返回参数

查询返回的参数值为参数当前最新值,关于参数的说明及初始值请参见 链上治理参数

请求样例

curl -X POST --data 'target_account_addr=T8000085a8e8acd53c72dca85dcb002a6710796975b4ba&body={"params":{"account_addr":"T2000138QMHWxXshXyZa1E48JU1LREu3UrT5KGD2U@0"}}&method=getCGP&sequence_id=4&identity_token=&version=1.0'  http://localhost:19081

返回样例

  • 成功返回

    {
       "data" : {
          "additional_issue_year_ratio" : "8",
          "application_contract_code_max_len" : "32768",
          "archive_election_interval" : "360",
          "auditor_group_count" : "2",
          "auditor_nodes_per_segment" : "27",
          "auditor_reward_ratio" : "10",
          "award_auditor_credit" : "30000",
          "award_validator_credit" : "30000",
          "backward_auditor_slash_credit" : "100000",
          "backward_node_lock_duration_increment" : "103680",
          "backward_validator_slash_credit" : "100000",
          "beacon_tx_fee" : "100000000",
          "cluster_election_interval" : "60",
          "cluster_election_minimum_rotation_ratio" : "66",
          "cluster_zero_workload" : "0",
          "contract_call_contracts_num" : "25",
          "cpu_gas_exchange_ratio" : "40",
          "cross_reading_rec_reg_contract_height_step_limitation" : "12",
          "cross_reading_rec_reg_contract_logic_timeout_limitation" : "60",
          "cross_reading_rec_standby_pool_contract_height_step_limitation" : "12",
          "cross_reading_rec_standby_pool_contract_logic_timeout_limitation" : "67",
          "custom_property_max_number" : "128",
          "custom_property_name_max_len" : "16",
          "dividend_ratio_change_interval" : "120960",
          "edge_election_interval" : "360",
          "edge_reward_ratio" : "2",
          "election_rotation_count_ratio" : "16",
          "free_gas" : "25000",
          "fullunit_contain_of_unit_num" : "21",
          "governance_reward_ratio" : "4",
          "initial_total_locked_token" : "1000000000000000",
          "max_archive_group_size" : "512",
          "max_auditor_group_size" : "64",
          "max_auditor_rotation_count" : "2",
          "max_edge_group_size" : "512",
          "max_election_committee_size" : "256",
          "max_gas_account" : "1000000",
          "max_gas_contract" : "50000000",
          "max_nodedeposit_lock_duration" : "3110400",
          "max_validator_group_size" : "128",
          "max_validator_stake" : "5000",
          "max_vote_nodes_num" : "10000",
          "min_auditor_deposit" : "1000000000000",
          "min_auditor_group_size" : "6",
          "min_credit" : "100000",
          "min_edge_deposit" : "200000000000",
          "min_election_committee_size" : "32",
          "min_free_gas_balance" : "100000000",
          "min_mainnet_active_archives" : "1",
          "min_mainnet_active_auditors" : "128",
          "min_mainnet_active_edges" : "1",
          "min_mainnet_active_validators" : "512",
          "min_mainnet_active_votes" : "384000000",
          "min_node_reward" : "0",
          "min_ratio_annual_total_reward" : "2",
          "min_stake_votes_num" : "1",
          "min_table_block_report" : "32",
          "min_tcc_proposal_deposit" : "0",
          "min_tx_deposit" : "100000",
          "min_validator_deposit" : "500000000000",
          "min_validator_group_size" : "6",
          "min_voter_dividend" : "0",
          "min_votes_num" : "1",
          "punish_interval_table_block" : "368640",
          "punish_interval_time_block" : "8640",
          "rec_election_interval" : "259201",
          "rec_standby_pool_update_interval" : "11",
          "reward_issue_interval" : "8640",
          "shard_zero_workload" : "0",
          "sign_block_publishment_threshold_value" : "0",
          "sign_block_ranking_publishment_threshold_value" : "10",
          "sign_block_ranking_reward_threshold_value" : "0",
          "sign_block_reward_threshold_value" : "80",
          "tableslash_report_schedule_interval" : "1",
          "tableworkload_report_schedule_interval" : "1",
          "task_num_per_round" : "16",
          "tcc_member_number" : "T800002276a7d58218ac4978733e5cca927a7d86cb7c87,T8000066ab344963eaa071f9636faac26b0d1a39900325",
          "tcc_proposal_expire_time" : "259200",
          "toggle_whitelist" : "0",
          "total_gas_shard" : "2160000000000",
          "tx_deposit_gas_exchange_ratio" : "20",
          "tx_send_timestamp_tolerance" : "300",
          "unlock_gas_staked_delay_time" : "8640",
          "usedgas_decay_cycle" : "8640",
          "validator_group_count" : "4",
          "validator_reward_ratio" : "60",
          "vote_reward_ratio" : "20",
          "votes_report_interval" : "30",
          "whitelist" : "T800002276a7d58218ac4978733e5cca927a7d86cb7c87,T8000066ab344963eaa071f9636faac26b0d1a39900325,T8000085a8e8acd53c72dca85dcb002a6710796975b4ba,T80000fd4f433c036268f17a1b4204ea907e70618d030e",
          "workload_per_tableblock" : "2",
          "workload_per_tx" : "1",
          "workload_report_min_table_block_num" : "32",
          "workload_timer_interval" : "17",
          "zec_election_interval" : "120977",
          "zec_standby_pool_update_interval" : "31",
          "zone_election_trigger_interval" : "31"
       },
       "errmsg" : "OK",
       "errno" : 0,
       "sequence_id" : "1"
    }
    
  • 失败返回

    {
    	"data": null,
    	"errmsg": "ok",
    	"errno": 0,
    	"sequence_id": "5"
    }
    

# 查询主链信息

请求方式

getChainInfo

请求参数

参数名称 是否必选 默认值 类型 说明
account_addr - String 数据所在账户地址。可输入当前正在使用的链上账户。

返回参数

参数名称 类型 说明
first_timerblock_hash String 第一个时钟块 hash。
first_timerblock_stamp Number 第一个时钟块生成时间。
init_total_locked_token Number 系统初始化总 TOP token 锁定金额,系统初始化 gas 兑换率=系统总 gas/总锁定金额,避免系统初始化 gas 兑换率为0。
token_price Number 锁定 TOP token 兑换 gas 的兑换率,单位 tgas/top,该值随着系统中锁定的 TOP token 的变化而动态变化。
total_gas_shard Number 单片 24 小时总 gas 量。
validator_group_count Number validator group 数量,当前默认为 4。
network_activate_time Number 激活时间。

请求样例

curl -X POST --data 'target_account_addr=T800002276a7d58218ac4978733e5cca927a7d86cb7c87&body={"params":{"account_addr":"T8000066ab344963eaa071f9636faac26b0d1a39900325"}}&method=getChainInfo&sequence_id=10&identity_token=&version=1.0'  http://localhost:19081

返回样例

  • 成功返回

    {
       "data" : {
          "first_timerblock_hash" : "0b98350d3e8ec4511ec1720bff0c6d6205519ffa90a879a65eed23e9312b21de",
          "first_timerblock_stamp" : 1573189200,
          "init_total_locked_token" : 10000000000000,
          "network_activate_time":3620325,
          "token_price" : 432000,
          "total_gas_shard" : 2160000000000,
          "validator_group_count" : 2
       },
       "errmsg" : "OK",
       "errno" : 0,
       "sequence_id" : "10"
    }
    
  • 失败返回

    无。

# 查询矿工信息

请求方法

queryNodeInfo

请求参数

参数名称 是否必选 默认值 类型 说明
account_addr - String 数据所在账户地址。可使用注册合约账户地址:T2000138NZjvNJjRNG5iEqVKydpqAqoeNjBuFmNbj@0。
node_account_addr String 矿工账户地址,如不指定,则默认查询所有矿工信息。

返回参数

参数名称 类型 说明
account_addr String 矿工账户地址。
auditor_credit String auditor 节点信誉分。
auditor_stake Number auditor 节点权益:auditor stake =(矿工保证金+矿工得票总数/2)*信誉分
dividend_ratio Number 分红率,百分比 %,值为 [0,100]。
network_id String 值为 0,证明节点加入的是主链网络。
node_deposit Number 矿工保证金,单位 uTOP。
miner_type String 矿工类型:
  • 边缘矿工:edge
  • 验证矿工:validator
  • 高级矿工:advance
  • 交易所节点:exchange
其中 advance、validator、edge 是种子创世节点。
nodename String 矿工昵称。
rec_stake String 主信标权益。
registered_node_type String 矿工注册类型:
  • 边缘矿工:edge
  • 验证矿工:validator
  • 高级矿工:advance
node_sign_key String 注册矿工时使用的公钥。
validator_credit String validator 节点信誉分。
validator_stake Number validator 节点权益:validator stake=(矿工保证金+矿工得票总数/2)*validator 信誉分
vote_amount Number 矿工得票总数。
zec_stake String 子信标权益。
genesis String 是否为创世节点。

请求样例

curl -X POST --data 'target_account_addr=T800002276a7d58218ac4978733e5cca927a7d86cb7c87&body={"params":{"account_addr":"T2000138NZjvNJjRNG5iEqVKydpqAqoeNjBuFmNbj@0","node_account_addr":"T8000066ab344963eaa071f9636faac26b0d1a39900325"}}&method=queryNodeInfo&sequence_id=6&identity_token=&version=1.0'  http://localhost:19081

返回样例

  • 成功返回

     {
        "data": {
           "account_addr": "T00000Lhacc8ecibdjYozdZtwEdinSpL5zwAn3K5",
           "auditor_credit": "0.000000",
           "auditor_stake": 0,
           "dividend_ratio": 0,
           "genesis": "false",
           "miner_type": "validator",
           "network_id": "0 ",
           "node_deposit": 3000000000000,
           "node_sign_key": "BOBtgYod1934eW5G60dppbT+m5hi/1pP5tf+lXineOaiig2l0/gYuIQtf18SosgiPnCg5skgwS2xd6dsUq+tEf0=",
           "nodename": "bitpool",
           "rec_stake": 0,
           "registered_node_type": "validator",
           "validator_credit": "1.000000",
           "validator_stake": 1732,
           "vote_amount": 0,
           "zec_stake": 0
        },
        "errmsg": "OK",
        "errno": 0,
        "sequence_id": "49"
     }
    
  • 失败返回

    节点未注册返回:

    {
    	"data": null,
    	"errmsg": "ok",
    	"errno": 0,
    	"sequence_id": "8"
    }
    

# 查询矿工奖励

请求方法

queryNodeReward

请求参数

参数名称 是否必选 默认值 类型 说明
account_addr - String 数据所在账户地址。可使用分片奖励领取合约账户地址:T20000MTotTKfAJRxrfvEwEJvtgCqzH9GkpMmAUg。
node_account_addr - String 矿工账户地址,如不指定,则查询所有矿工奖励信息。

返回参数

参数名称 类型 说明
accumulated Uint64 奖励总额的整数部分。单位 uTOP。
accumulated_decimals Uint32 奖励总额的小数部分。单位 10^-6 uTOP。
issue_time Uint64 每个矿工奖励发放时的时钟高度。
last_claim_time Uint64 上次领取奖励的时钟高度。
unclaimed Uint64 未领取的奖励的整数部分。单位 uTOP。
unclaimed_decimals Uint64 未领取的奖励的小数部分。单位 10^-6 uTOP。

请求样例

  • 查询单个矿工奖励

    curl -X POST --data 'target_account_addr=T800002276a7d58218ac4978733e5cca927a7d86cb7c87&body={"params":{"account_addr":"T8000066ab344963eaa071f9636faac26b0d1a39900325","node_account_addr":"T8000085a8e8acd53c72dca85dcb002a6710796975b4ba"}}&method=queryNodeReward&sequence_id=49&identity_token=&version=1.0'  http://localhost:19081
    
  • 查询所有矿工奖励

    curl -X POST --data 'target_account_addr=T80000fd4f433c036268f17a1b4204ea907e70618d030e&body={"params":{"account_addr":"T20000MTotTKfAJRxrfvEwEJvtgCqzH9GkpMmAUg","node_account_addr":""}}&method=queryNodeReward&sequence_id=49&identity_token=&version=1.0'  http://localhost:19081
    

返回样例

  • 成功返回

    • 单个矿工奖励

      {
         "data" : {
            "accumulated" : 188072630515731,
            "accumulated_decimals" : 209604,
            "issue_time" : 3533760,
            "last_claim_time" : 0,
            "unclaimed" : 188072630515731,
            "unclaimed_decimals" : 209604
         },
         "errmsg" : "ok",
         "errno" : 0,
         "sequence_id" : "49"
      }
      
    • 所有矿工奖励

      {
         "data" : {
            "T800002276a7d58218ac4978733e5cca927a7d86cb7c87" : {
               "accumulated" : 188072630515731,
               "accumulated_decimals" : 209604,
               "issue_time" : 3533760,
               "last_claim_time" : 0,
               "unclaimed" : 188072630515731,
               "unclaimed_decimals" : 209604
            },
            "T8000066ab344963eaa071f9636faac26b0d1a39900325" : {
               "accumulated" : 135157655656316,
               "accumulated_decimals" : 441988,
               "issue_time" : 3533760,
               "last_claim_time" : 0,
               "unclaimed" : 135157655656316,
               "unclaimed_decimals" : 441988
            }
         },
         "errmsg" : "ok",
         "errno" : 0,
         "sequence_id" : "49"
      }
      
  • 失败返回

    {
    	"data": null,
    	"errmsg": "ok",
    	"errno": 0,
    	"sequence_id": "10"
    }
    

# 查询投票者投票分布

请求方法

listVoteUsed

请求参数

参数名称 是否必选 默认值 类型 说明
account_addr - String 数据所在账户地址。可使用投票合约账户地址:T20000MVfDLsBKVcy1wMp4CoEHWxUeBEAVBL9ZEa。
node_account_addr - String 被查询的投票账户地址。

返回参数

参数名称 类型 说明
vote_infos Map数组 接收投票矿工账户地址(String);给矿工投票数量(Integer)。

请求样例

curl -X POST --data 'target_account_addr=T800002276a7d58218ac4978733e5cca927a7d86cb7c87&body={"params":{"account_addr":"T20000MVfDLsBKVcy1wMp4CoEHWxUeBEAVBL9ZEa","node_account_addr":"T8000066ab344963eaa071f9636faac26b0d1a399003254"}}&method=listVoteUsed&sequence_id=80&identity_token=&version=1.0'  http://localhost:19081

返回样例

  • 成功返回

    {
       "data" : {
          "vote_infos" : {
             "T8000085a8e8acd53c72dca85dcb002a6710796975b4ba" : 200
          }
       },
       "errmsg" : "ok",
       "errno" : 0,
       "sequence_id" : "80"
    }
    
  • 失败返回

    {
    	"data": null,
    	"errmsg": "ok",
    	"errno": 0,
    	"sequence_id": "12"
    }
    

# 查询投票者分红

请求方法

queryVoterDividend

请求参数

参数名称 是否必选 默认值 类型 说明
account_addr - String 数据所在账户地址。可使用分片奖励领取合约地址:T20000MTotTKfAJRxrfvEwEJvtgCqzH9GkpMmAUg。
node_account_addr - String 投票者账户地址。

返回参数

参数名称 类型 说明
accumulated Uint64 投票者分红总额的整数部分。单位 uTOP。
accumulated_decimals Uint32 投票者分红总额的小数部分。单位 10^-6 uTOP。
issue_time Uint64 投票者分红发放时间。
last_claim_time Uint64 投票者上次领取分红的时钟高度。
node_dividend List 被投票矿工的分红信息。
account_addr String 被投票矿工账户地址。
accumulated Uint64 被投票矿工分给该投票者的分红整数部分。单位 uTOP。
accumulated_decimals Uint32 被投票矿工分给该投票者的分红小数部分。单位 10^-6 uTOP。
issue_time Uint64 被投票矿工给该投票者的分红发放时间。
last_claim_time Uint64 被投票矿工分红上次被领取的时钟高度。
unclaimed Uint64 被投票矿工分给该投票者未领取的分红整数部分。单位 uTOP。
unclaimed_decimals Uint32 被投票矿工分给该投票者未领取的分红小数部分。单位 10^-6 uTOP。
unclaimed Uint64 投票者未领取的分红总额整数部分,单位 uTOP。
unclaimed_decimals Uint32 投票者未领取的分红总额小数部分。单位 10^-6 uTOP。

请求样例

curl -X POST --data 'target_account_addr=T800002276a7d58218ac4978733e5cca927a7d86cb7c87&body={"params":{"account_addr":"T20000MTotTKfAJRxrfvEwEJvtgCqzH9GkpMmAUg","node_account_addr":"T8000066ab344963eaa071f9636faac26b0d1a39900325"}}&method=queryVoterDividend&sequence_id=82&identity_token=&version=1.0'  http://localhost:19081

返回样例

  • 成功返回

    {
       "data" : {
             "accumulated" : 6994245799976,
             "accumulated_decimals" : 419004,
             "issue_time" : 3535500,
             "last_claim_time" : 0,
             "node_dividend" : [
                {
                   "account_addr" : "T8000085a8e8acd53c72dca85dcb002a6710796975b4ba",
                   "accumulated" : 6994245799976,
                   "accumulated_decimals" : 419004,
                   "issue_time" : 3535500,
                   "last_claim_time" : 0,
                   "unclaimed" : 6994245799976,
                   "unclaimed_decimals" : 419004
                }
             ],
             "unclaimed" : 6994245799976,
             "unclaimed_decimals" : 419004
       },
       "errmsg" : "OK",
       "errno" : 0,
       "sequence_id" : "1"
    }
    
  • 失败返回

    {
    	"data": null,
    	"errmsg": "ok",
    	"errno": 0,
    	"sequence_id": "14"
    }
    

# 查询提案信息

请求方法

queryProposal

请求参数

参数名称 是否必选 默认值 类型 说明
account_addr - String 数据所在账户地址。可使用链上治理合约账户地址:T2000138Ao4jjYtrXoNwfzb6gdpD2XNBpqUv46p8B@0。
proposal_id String 提案 ID。如不指定,则默认查询所有提案。

返回参数

参数名称 类型 说明
effective_timer_height Uint64 提案通过后生效时钟高度。如生效始终高度小于提案通过时的始终高度,那么提案在通过后会立刻生效。
expire_time String 提案失效时间,提案在 259200 个时钟高度内没有被 TCC 通过或者否决,提案将失效。
priority Uint8 提案优先级:
  • 1:Normal
  • 2:Important
  • 3:Critical
proposal_deposit Uint64 提案保证金,单位 uTOP。
proposal_id String 提案ID,系统自动生成,唯一。
proposal_type Uint8 提案类型:
  • 1:修改链上治理参数提案
  • 2:社区基金管理提案
proposer_account_addr String 提案发起者账户地址。
target String
  • 当提案类型为修改链上治理参数提案时,target 为链上治理参数名称,链上治理参数请参见 链上治理参数
  • 当提案类型为社区基金管理提案时,target 为接受转账账户地址,销毁账户地址为:T-b-gkhLhFJXVN3ZPQYZxphja93BEUtwKRdden。
value String
  • 当 target 为链上治理参数时,value 为修改后的值。
  • 当 target 为接受转账账户地址,value 为转账金额,单位 uTOP。
voting_status Uint16 该提案投票表决状态:
  • 0:未开始
  • 8:进行中
  • 9:失败
  • 10:成功

请求样例

curl -X POST --data 'target_account_addr=T80000fd4f433c036268f17a1b4204ea907e70618d030e&body={"params":{"account_addr":"T2000138Ao4jjYtrXoNwfzb6gdpD2XNBpqUv46p8B@0","proposal_id":"1"}}&method=queryProposal&sequence_id=3&identity_token=&version=1.0'  http://localhost:19081

返回样例

  • 成功返回

    {
        "data" : {
          "1":{
    	      "effective_timer_height": 1010110,
    	      "expire_time": 1000
    	      "priority": 3,
    	      "proposal_deposit": 400,
    	      "proposal_id": 1,
    	      "proposal_type": 1,
             "proposer_account_addr" : "T80000fd4f433c036268f17a1b4204ea907e70618d030e",
    	      "target": archive_deposit,
    	      "value": 1000,
    	      "voting_status": 0
          }
       },
       "errmsg" : "ok",
       "errno" : 0,
       "sequence_id" : "3"
    }
    
  • 失败返回

    {
    	"data": null,
    	"errmsg": "ok",
    	"errno": 0,
    	"sequence_id": "16"
    }
    

# 获取最新区块高度

返回 256 个 shard table 的高度。

请求方法

getLatestTables

请求参数

参数名称 是否必选 默认值 类型 说明
account_addr - String 填写 rec 合约地址,比如 T2000138JQPo5TcurZsVLFUMd5vHJRBLenLWjLhk6@0。

返回参数

参数名称 类型 说明
data Uint64 数组 大小为 256,如 [0,1,2,...,0]
其中,数组中各元素的值代表对应 table 账户的最高高度。例如:数组第一个元素为 0,代表地址为 Ta0000gRD2qVpp2S7UpjAsznRiRhbE1qNnhMbEDp@0 的账户的最高高度为 0。

请求样例

curl -X POST --data 'target_account_addr=T800002276a7d58218ac4978733e5cca927a7d86cb7c87&body={"params":{"account_addr":"T8000066ab344963eaa071f9636faac26b0d1a39900325"}}&method=getLatestTables&sequence_id=5&identity_token=&version=1.0'  http://localhost:19081