1. Home
  2. Docs
  3. Paralism 节点 RPC 接口
  4. RPC方法列表
  5. 节点基本RPC方法

节点基本RPC方法

help

功能:查询节点支持的RPC方法

参数:无

返回结果:节点所支持RPC方法列表

调用样例:

{
  "method":"help",
  "params":[],
  "id":xxx
}

返回结果样例:

{
  "result": "
  backupwallet <destination>
  encryptwallet <passphrase>
  getaccount <address>
  getaccountaddress <account>
  getaddressesbyaccount <account>
  getbalance [account] [minconf=1]
  getblockcount
  getblocknumber
  getcoininfo <hyperblockId> <chainId> <localblockId> 
  getconnectioncount
  getdifficulty
  getgenerate
  getinfo
  getnewaddress [account]
  getreceivedbyaccount <account> [minconf=1]
  getreceivedbyaddress <address> [minconf=1]
  gettransaction <txid>
  gettransactionaddr <txid>
  gid2rid {GID}
  importcoin <hyperblockId> <chainId> <localblockId> 
  issuecoin <Name> [Genesis block message] [Model] [Logo]
  keypoolrefill
  listaccounts [minconf=1]
  listreceivedbyaccount [minconf=1] [includeempty=false]
  listreceivedbyaddress [minconf=1] [includeempty=false]
  listtransactions [account] [count=10] [from=0]
  move <fromaccount> <toaccount> <amount> [minconf=1] [comment]
  querygenesisblock <GID>
  queryminingstatus
  sendfrom <fromaccount> <toaddress> <amount> [minconf=1] [comment] [comment-to]
  sendmany <fromaccount> {address:amount,...} [minconf=1] [comment]
  sendtoaddress <ledgeraddress> <amount> [comment] [comment-to]
  setaccount <address> <account>
  setgenerate <generate> [genproclimit]
  settxfee <amount>
  startmining [<name> | <hyperblockId> <chainId> <localblockId>]
  stopmining
  validateaddress <ledgeraddress>",
  "error": null,
  "id": xxx
}

getblockcount

功能:返回节点本地最优链中的区块高度

参数:无

返回结果:返回一个整数值,表示本地最优链中的区块高度

调用样例:

{
  "method":"getblockcount",
  "params":[],
  "id":xxx
}

返回结果样例:

{
    "result": 572,
    "error": null,
    "id": xxx
}

getblocknumber

同getblockcount

getconnectioncount

功能:查询节点的在线邻居节点数量

参数:无

返回结果:返回一个整数值,节点的在线邻居节点数量

调用样例:

{
  "method":" getconnectioncount",
  "params":[],
  "id":xxx
}

返回结果样例:

{
    "result": 5,
    "error": null,
    "id": xxx
}

getinfo

功能:查询节点运行状态信息

参数:无

返回结果:返回当前节点的运行状态属性列表

调用样例:

{
  "method":" getinfo",
  "params":[],
  "id":xxx
}

返回结果样例:

{
    "result": {
        "version": 40000, //节点软件版本?
        "balance": 864.00000000,//节点钱包所有地址总余额
        "blocks": 572,//节点本地区块数?
        "connections": 1,//邻居节点数
        "proxy ": "",
        "generate": true,//挖矿功能是否开启
        "difficulty": 0.00000095,//节点当前出块难度
        "hashespersec": 0,//节点算例,每秒hash次数
        "testnet": false, //是否测试网节点
        "keypoololdest": 1603867377, //节点钱包密钥池年龄
        "keypoolsize": 101,//节点密钥池大小
        "paytxfee": 0.00000000, //交易费用设置
        "errors": "" //什么错误信息?
    },
    "error": null,
    "id": xxx
}

getnewaddress

功能:为指定的账户生成一个新地址

参数:<account>,account为账户名字符串

返回结果:返回为指定账户生成的新地址

备注:

1.若账户名为空[“”],则为节点缺省账户生成新地址。

2.若输入的账户名不存在,则节点内自动生成该账户,并将生成的新地址关联到该账户。生成的账户可通过listaccounts方法查看。

调用样例:

{
  "method":"getnewaddress",
  "params":["yage"],
  "id":xxx
}

返回结果样例:

{
    "result": "1ae9CcbE49TnpFygKt7udeP5NbZ7REcC2",
    "error": null,
    "id": xxx
}

getaccountaddress

功能:获取指定账户可用的钱包地址

参数:<account>,账户名字符串

返回结果:返回一个账户可用钱包地址

备注:如果输入的账户没有可用地址,则节点自动生成并返回一个新地址。

调用样例:

{
  "method":"getaccountaddress",
  "params":[“yage”],
  "id":xxx
}

返回结果样例:

{
    "result": {
        "yage": "15yKypansKe1voCJWHZBdYhVsBVbQx6rZv"
    },
    "error": null,
    "id": xxx
}

setaccount

功能:关联地址到指定账户

参数:<address>,钱包地址字符串

<account>,账户名字符串

返回结果:关联成功则result返回null,失败则返回error错误信息。

调用样例:

{
  "method":"setaccount",
  "params":["15yKypansKe1voCJWHZBdYhVsBVbQx6rZv", "yage"],
  "id":xxx
}

返回结果样例:

{
    "result": null,
    "error": null,
    "id": xxx
}

getaccount

功能:查询钱包地址所关联的账户

参数:<address> ,钱包地址字符串

返回结果:返回地址所关联的账户名字符串

调用样例:

{
  "method":"getaccount",
  "params":["15yKypansKe1voCJWHZBdYhVsBVbQx6rZv"],
  "id":xxx
}

返回结果样例:

{
    "result": "yage",
    "error": null,
    "id": xxx
}

getaddressesbyaccount

功能:查询指定账户关联的所有钱包地址

参数:<account>,账户名字符串

返回结果:返回账户所关联的所有钱包地址列表

调用方式:

{
  "method": "getaddressesbyaccount",
  "params":["yage"],
  "id":xxx
}

返回结果:

{
    "result": [
        "1ae9CcbE49TnpFygKt7udeP5NbZ7REcC2",
        "14R5qXbGCANCbvi4z7JZGLZxQ9VHdDM7TU",
        "15yKypansKe1voCJWHZBdYhVsBVbQx6rZv"
    ],
    "error": null,
    "id": xxx
}

sendtoaddress

功能:转账到指定的钱包地址

参数:<address-to>,收款钱包地址

<amount>,转账金额

[comment],转账备注

[comment-to],给接受方的备注

返回结果:返回转账交易的标识。

调用方式:

{
  "method":"sendtoaddress",
  "params":["1ae9CcbE49TnpFygKt7udeP5NbZ7REcC2",100],
  "id":xxx
}

返回结果:

{
    "result": {
        "txid": "3d56953163e3c66bb56a5996690dcc1a625b26c4e42b53aa9360a43b299f2e41"
    },
    "error": null,
    "id": xxx
}

getreceivedbyaddress

功能:获取指定钱包地址上接收到的所有币总额

参数:<address>,钱包地址

[minconf=1],最小币龄,缺省值为1

返回结果:返回该地址上接收到的所有币总额

调用样例:

{
  "method":"getreceivedbyaddress",
  "params":["1ae9CcbE49TnpFygKt7udeP5NbZ7REcC2 "],
  "id":xxx
}

返回结果样例:

{
    "result": 100.00000000,
    "error": null,
    "id": xxx
}

getreceivedbyaccount

功能:获取指定账户接收的币总额

参数:<account>,账户名

[minconf=1],最小币龄,缺省值为1

返回结果:返回该账户所有地址上接收到的币总额

调用方式:

{
  "method":"getreceivedbyaccount",
  "params":["yage"],
  "id":xxx
}

返回结果:

{
    "result": 100.00000000,
    "error": null,
    "id": xxx
}

listreceivedbyaddress

功能:按钱包地址列出接收到的币总额

参数:[minconf=1],最小币龄,默认值为1

[includeempty=false],是否列出没有收到币的地址,默认不列出

返回结果:返回钱包地址与相应收币额的列表

调用样例:

{
  "method":"listreceivedbyaddress",
  "params":[""],
  "id":xxx
}

返回结果样例:

{
    "result": [
        {
            "address": "1ae9CcbE49TnpFygKt7udeP5NbZ7REcC2",
            "account": "yage",
            "label": "yage",
            "amount": 100.00000000,
            "confirmations": 18
        }
    ],
    "error": null,
    "id": 77
}

listreceivedbyaccount

功能:按钱包账户分别列出相关入账交易总额

参数:[minconf=1],最小币龄,默认值为1

[includeempty=false],是否列出没有收到币的账户,默认不列出

返回结果:返回钱包账户相关入账交易总额的列表

调用样例:

{
  "method":"listreceivedbyaccount",
  "params":[],
  "id":xxx
}

返回结果样例:

{
    "result": [
        {
            "account": "yage",
            "label": "yage",
            "amount": 100.00000000,
            "confirmations": 14
        },
        {
            "account": "yage1",
            "label": "yage1",
            "amount": 100.00000000,
            "confirmations": 14
        }

    ],
    "error": null,
    "id": 77
}

keypoolrefill

功能:生成新的密钥对填充密钥池,每次生成100个

参数: 无

返回结果:成功则result返回null,失败则返回error错误信息。

调用样例:

{
  "method":"keypoolrefill",
  "params":[],
  "id":xxx
}

返回结果样例:

{
    "result": null,
    "error": null,
    "id": xxx
}

walletpassphrase

功能:输入密码解锁已加密的钱包,并指定解锁有效时间,解锁时间内可免密操作钱包。

参数:<passphrase> 钱包解锁密码

<timeout> 解锁有效时间,单位秒

返回结果:成功则result返回null,失败则返回error错误信息。

调用样例:

{
  "method":" walletpassphrase ",
  "params":["xxxxyyyyzzzz",10],
  "id":xxx
}

返回结果样例:

{
    "result": null,
    "error": null,
    "id": xxx
}

walletlock

功能:锁定钱包,操作已加密钱包需要先提供密码解锁。

参数: 无

返回结果:成功则result返回null,失败则返回error错误信息。

调用样例:

{
  "method":"walletlock",
  "params":[],
  "id":xxx
}

返回结果样例:

{
    "result": null,
    "error": null,
    "id": xxx
}

encryptwallet

功能:对钱包加密,对已加密钱包操作需要先输入密码解锁

参数: <passphrase>,密码

返回结果:成功则result返回null,失败则返回error错误信息。

调用方式:

{
  "method":"encryptwallet",
  "params":["xxxxyyyyzzzz"],
  "id":xxx
}

返回结果:

{
    "result": null,
    "error": null,
    "id": xxx
}

validateaddress

功能:校验钱包地址是否合法

参数:<address>,钱包地址

返回结果:返回地址和是否合法信息。

调用样例:

{
  "method":"validateaddress",
  "params":["1ae9CcbE49TnpFygKt7udeP5NbZ7REcC2"],
  "id":xxx
}

返回结果样例:

{
    "result": {
        "isvalid": true,//地址是否合法
        "address": "1ae9CcbE49TnpFygKt7udeP5NbZ7REcC2",//被校验地址
        "ismine":  false 
    },
    "error": null,
    "id": 12
}

getbalance

功能:查询指定账户可用余额

参数:[account],钱包账户

[minconf=1],最小币龄,默认值为1

返回结果:返回账户所有地址可用总余额

调用样例:

{
  "method":"getbalance",
  "params":["yage"],
  "id":xxx
}

返回结果样例:

{
    "result": 520.00000000,
    "error": null,
    "id": 12
}

move

功能:节点钱包内部地址间转账

参数:<fromacount>,发送方账号名,账户名为””表示缺省钱包账户

<toaddress>, 接收方地址

<amount>,金额

[comment],备注

返回结果:成功则result返回true,失败则返回false和error错误信息。

调用样例:

{
  "method":"move",
  "params":["","1ae9CcbE49TnpFygKt7udeP5NbZ7REcC2",0.02],
  "id":xxx
}

返回结果样例:

{
    "result": true,
    "error": null,
    "id": 12
}

sendfrom

功能:从节点本地钱包账户转账到任意一个地址

参数:<fromacount>,发送方账号名,账户名为””表示缺省钱包账户

<toaddress>, 接收方地址

<amount>,金额

[comment],备注

[comment-to],给接收方的备注

    返回结果:返回节点向区块链网络发送的交易标识txid。

调用样例:

{
  "method":"sendfrom",
  "params":["","1ae9CcbE49TnpFygKt7udeP5NbZ7REcC2",0.02],
  "id":xxx
}

返回结果样例:

{
    "result": "37399f8cfd5cd6746065973b33e4955380804cc39ec11e22914521eac99250da",
    "error": null,
    "id": 12
}

sendmany

功能:向多人转账

参数:<fromaccount> ,发送方账号名,账户名为””表示缺省钱包账户

{address:amount,…} ,接收方地址和金额元组

[minconf=1],最小币龄,默认值为1

[comment],备注

返回结果:返回节点向区块链网络发送的交易标识txid

调用样例:

{
  "method":"sendmany",
  "params":[
    "",
    {
      "1ae9CcbE49TnpFygKt7udeP5NbZ7REcC2": 12.8, 
      "14R5qXbGCANCbvi4z7JZGLZxQ9VHdDM7TU": 23
    }
  ],
  "id":xxx
}

返回结果样例:

{
    "result": "fcafcfe9e680e24475416989426f3fc96f5d1fd6a85c6aed63a0822b9cfc9307",
    "error": null,
    "id": xxx
}

gettransaction

功能:查询交易信息

参数:<txid> ,交易标识

返回结果:返回交易详细信息

调用样例:

{
  "method":"gettransaction",
  "params":["37399f8cfd5cd6746065973b33e4955380804cc39ec11e22914521eac99250da"],
  "id":133
}

返回结果样例:

{
  "result": {
    "amount": -0.02000000, //发送金额
    "fee": 0.00000000,//交易手续费
    "confirmations": 10, //币龄
    "txid": "37399f8cfd5cd6746065973b33e4955380804cc39ec11e22914521eac99250da",
    "time": 1603963924,
    "details": [
      {
        "account": "",
        "address": "1ae9CcbE49TnpFygKt7udeP5NbZ7REcC2",
        "category": "send",
        "amount": -0.02000000,
        "fee": 0.00000000
      }
    ]
  },
  "error": null,
  "id": 133
}

gettransactionaddr

功能:查询交易所在子链区块的超块链三元组地址

参数:<txid> 交易标识

返回结果:返回交易所在子链区块的超块链三元组地址

调用样例:

{
  "method":"gettransactionaddr",
  "params":["37399f8cfd5cd6746065973b33e4955380804cc39ec11e22914521eac99250da"],
  "id":133
}

返回结果:

{
    "result": {
        "address  ": [13,2,1] //超块链三元组地址
    },
    "error": null,
    "id": 133
}

listtransactions

功能:列出节点钱包账号最近相关交易

参数:[account],钱包账号

[count=10],请求记录数量,默认为10

[from=0],请求记录起点,默认为0

返回结果:返回钱包账号最近交易记录列表

调用样例:

{
  "method":"listtransactions",
  "params":[],
  "id":133
}

返回结果样例:

{
  "result": [
    {
      "account": "",
      "category": "generate", 
      "amount": 8.00000000,
      "confirmations": 21,
      "txid": "43941624bc17ffae87fca66c3272fd305377ec0b9a0b9877c430170a8f0e6914",
      "time": 1603964054
    },
    {
      "account": "",
      "category": "immature",
      "amount": 8.00000000,
      "confirmations": 20,
      "txid": "0ca69b6be62e76a47a83f385c136f7f9531dfe0b661c7cc53974c21738be1dbe",
      "time": 1603964098
    },                     
    {
      "account": "",
      "address": "1ae9CcbE49TnpFygKt7udeP5NbZ7REcC2",
      "category": "send",
      "amount": -12.80000000,
      "fee": 0.00000000,
      "confirmations": 9,
      "txid": "fcafcfe9e680e24475416989426f3fc96f5d1fd6a85c6aed63a0822b9cfc9307",
      "time": 1603965018
    },
    {
      "account": "",
      "category": "immature",
      "amount": 8.00000000,
      "confirmations": 5,
      "txid": "adaec471c7bfe421bdce6ca5275c9b0391d91d41642ee08dae4b2a147754bd05",
      "time": 1603965175
    },
    {
      "account": "",
      "category": "immature",
      "amount": 8.00000000,
      "confirmations": 3,
      "txid": "e88849df751ccf5c3d1c3f6a42036f1b8be51b8d3f5d3f253f2f9e4d656e95cd",
      "time": 1603965309
    },
    {
      "account": "",
      "category": "immature",
      "amount": 8.00000000,
      "confirmations": 2,
      "txid": "0cdf4eddce6517a315178c00ab3c78c4a6d048e88fccaca0cb7dc2e18d18d20e",
      "time": 1603965336
    },
    {
      "account": "",
      "category": "orphan",
      "amount": 8.00000000,
      "confirmations": 0,
      "txid": "e64d4fa0abcb7937e0c093d3a43e42474fe6229bd52d1c6936ce494fdb012eb1",
      "time": 1603965341
    }
  ],
  "error": null,
  "id": 133
}

listaccounts

功能:列出节点钱包所有账号余额

参数:[minconf=1],币龄,默认值为1

返回结果:返回钱包各账号余额列表

调用方式:

{
  "method":" listaccounts",
  "params":[""],
  "id":xxx
}

返回结果:

{
  "result": {
    "": [
        952.00000000, //钱包账户总额
        864.00000000  //已成熟para币数量,根据币龄参数值区分
    ]
    "yage" : [
      10.00000000,
      10.00000000
    ]
  },
  "error": null,
  "id": xxx
}

settxfee

功能:设置钱包交易支付时采用的每千字节手续费率

参数:<FeePerKB>,每千字节费率

返回结果:设置成功返回true,失败返回false和error信息

调用样例:

{
  "method":"settxfee",
  "params":[0.00002],
  "id":xxx
}

返回结果样例:

{
    "result": "true",
    "error": null,
    "id": xxx
}
Was this article helpful to you? Yes No