This document highlights all the details regarding ela json rpc interfaces. It follows json-rpc 2.0 protocol but also remains compatible with version 1.0. This that means both named and positional params are acceptable.
"id" is optional, which will be sent back in the result samely if you add it in a request - it's needed when you want to distinguish between different requests.
"jsonrpc" is optional and tells which version this request uses. In version 2.0, it's required, while in version 1.0, it doesn't exist.
getbestblockhash
Return the hash of the most recent block
result:
the hash of the most recent block
Example
Request:
Copy {
"jsonrpc": "2.0",
"method":"getbestblockhash",
"params": [],
"id": 1
}
Response:
Copy {
"id": 1,
"jsonrpc": "2.0",
"result": "68692d63a8bfc8887553b97f99f09e523d34a2b599bf5b388436b2ddc85ed76e",
"error": null
}
getblockhash
Return the hash of the specific blockchain height.
Parameter
Result
Example
Request:
Copy {
"method" : "getblockhash" ,
"params" :{ "height" : 1 }
}
Response:
Copy {
"id" : null ,
"jsonrpc" : "2.0" ,
"result" : "3893390c9fe372eab5b356a02c54d3baa41fc48918bbddfbac78cf48564d9d72" ,
"error" : null
}
getblock
Return the block information of the specific blockchain hash.
Parameter
the verbosity of result, can be 0, 1, 2
Example
Request:
Copy {
"method":"getblock",
"params":{
"blockhash":"f3a7469bb59452ab665f8b8870e1fb30e6a7181e2ea70f377e218d5b13cfa8ed",
"verbosity": 0},
}
Response when verbosity is 0:
Copy {
"error" : null ,
"id" : null ,
"jsonrpc" : "2.0" ,
"result": "00000000c0433b918f500392869aa14cf7a909430fd94502b5c9f05421c9da7519bd6a65219184ea3c0a2973b90b8402c8405b76d7fbe10a268f6de7e4f48e93f5d03df7c31e095bffff7f2000000000d107000001000000010000000000000000000000000000000000000000000000000000000000000000000000002cfabe6d6d3ca6bcc86bada4642fea709731f1653bd34b28ab15b790e102e14e0d7bd138d80100000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000ffffff7f00000000000000000000000000000000000000000000000000000000000000000ce39baabcdbb4adce38c5f23314c5f63a536bbcc8f0a47c7054c36ca27f5acd771d095b00000000020000000101000000000403454c4101000846444170b0e427d2010000000000000000000000000000000000000000000000000000000000000000ffffffffffff02b037db964a231458d2d6ffd5ea18944c4f90e63d547c5d3b9874df66a4ead0a31b2913000000000000000000129e9cf1c5f336fcf3a6c954444ed482c5d916e506b037db964a231458d2d6ffd5ea18944c4f90e63d547c5d3b9874df66a4ead0a341b52c000000000000000000219e9cc4320c3018ced30242b25c03e13a1b2f57c7d107000000"
}
Response when verbosity is 1:
the size of a block in bytes
block header's version in hex format
the merkleroot hash of this block
transaction hashes of this block, in an array
the Unix timestamp of this block
The estimated number of block header hashes miners had to check from the genesis block to this block, encoded as big-endian hex
Auxpow information in hex format
Copy {
"id" : null ,
"error" : null ,
"jsonrpc" : "2.0" ,
"result" : {
"hash" : "3893390c9fe372eab5b356a02c54d3baa41fc48918bbddfbac78cf48564d9d72" ,
"confirmations" : 5156 ,
"strippedsize" : 498 ,
"size" : 498 ,
"weight" : 1992 ,
"height" : 1 ,
"version" : 0 ,
"versionhex" : "00000000" ,
"merkleroot" : "764691821f937fd566bcf533611a5e5b193008ea1ba1396f67b7b0da22717c02" ,
"tx" : [
"764691821f937fd566bcf533611a5e5b193008ea1ba1396f67b7b0da22717c02"
] ,
"time" : 1524737598 ,
"mediantime" : 1524737598 ,
"nonce" : 0 ,
"bits" : 545259519 ,
"difficulty" : "1" ,
"chainwork" : "00001423" ,
"previousblockhash" : "8d7014f2f941caa1972c8033b2f0a860ec8d4938b12bae2c62512852a558f405" ,
"nextblockhash" : "aa98305779686e66294a9b667e6ac77f5231bb2ce09fe7d9ca641775413ecb5a" ,
"auxpow": "01000000010000000000000000000000000000000000000000000000000000000000000000000000002cfabe6d6d3893390c9fe372eab5b356a02c54d3baa41fc48918bbddfbac78cf48564d9d720100000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000ffffff7f0000000000000000000000000000000000000000000000000000000000000000a19035123a440356c0a41a85fe26865620fb4c34dcf1b83b46b5e11efcbbdd893ea6e15a0000000000000000"
}
}
Response when verbosity is 2:
result format except 'tx' is the same as it is when verbosity=1
result format in 'tx' please see interface 'getrawtransaction'
Copy {
"error" : null ,
"id" : null ,
"jsonrpc" : "2.0" ,
"result" : {
"hash" : "3ca6bcc86bada4642fea709731f1653bd34b28ab15b790e102e14e0d7bd138d8" ,
"confirmations" : 1 ,
"strippedsize" : 498 ,
"size" : 498 ,
"weight" : 1992 ,
"height" : 2001 ,
"version" : 0 ,
"versionhex" : "00000000" ,
"merkleroot" : "219184ea3c0a2973b90b8402c8405b76d7fbe10a268f6de7e4f48e93f5d03df7" ,
"tx" : [
{
"txid" : "219184ea3c0a2973b90b8402c8405b76d7fbe10a268f6de7e4f48e93f5d03df7" ,
"hash" : "219184ea3c0a2973b90b8402c8405b76d7fbe10a268f6de7e4f48e93f5d03df7" ,
"size" : 192 ,
"vsize" : 192 ,
"version" : 0 ,
"locktime" : 2001 ,
"vin" : [
{
"txid" : "0000000000000000000000000000000000000000000000000000000000000000" ,
"vout" : 65535 ,
"sequence" : 4294967295
}
] ,
"vout" : [
{
"value" : "0.01255707" ,
"n" : 0 ,
"address" : "8VYXVxKKSAxkmRrfmGpQR2Kc66XhG6m3ta" ,
"assetid" : "b037db964a231458d2d6ffd5ea18944c4f90e63d547c5d3b9874df66a4ead0a3" ,
"outputlock" : 0
} ,
{
"value" : "0.02929985" ,
"n" : 1 ,
"address" : "EXca4DJwqCXa6vbJmpovwatHiP8HRTVS1Z" ,
"assetid" : "b037db964a231458d2d6ffd5ea18944c4f90e63d547c5d3b9874df66a4ead0a3" ,
"outputlock" : 0
}
] ,
"blockhash" : "3ca6bcc86bada4642fea709731f1653bd34b28ab15b790e102e14e0d7bd138d8" ,
"confirmations" : 1 ,
"time" : 1527324355 ,
"blocktime" : 1527324355 ,
"type" : 0 ,
"payloadversion" : 4 ,
"payload" : {
"CoinbaseData" : "ELA"
} ,
"attributes" : [
{
"usage" : 0 ,
"data" : "46444170b0e427d2"
}
] ,
"programs" : []
}
] ,
"time" : 1527324355 ,
"mediantime" : 1527324355 ,
"nonce" : 0 ,
"bits" : 545259519 ,
"difficulty" : "1" ,
"chainwork" : "00000000" ,
"previousblockhash" : "c0433b918f500392869aa14cf7a909430fd94502b5c9f05421c9da7519bd6a65" ,
"nextblockhash" : "0000000000000000000000000000000000000000000000000000000000000000" ,
"auxpow": "01000000010000000000000000000000000000000000000000000000000000000000000000000000002cfabe6d6d3ca6bcc86bada4642fea709731f1653bd34b28ab15b790e102e14e0d7bd138d80100000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000ffffff7f00000000000000000000000000000000000000000000000000000000000000000ce39baabcdbb4adce38c5f23314c5f63a536bbcc8f0a47c7054c36ca27f5acd771d095b0000000002000000"
}
}
getblockcount
Get block count
Example
Request:
Copy {
"method" : "getblockcount"
}
Response:
Copy {
"jsonrpc" : "2.0" ,
"id" : null ,
"error" : null ,
"result" : 171454
}
getrawtransaction
Get transaction information of the given transaction hash.
Parameter
Results
The virtual transaction size, equals to size
The transaction format version number
The transaction’s locktime
The transaction’s sequence number
input utxo vector of this transaction
output utxo vector of this transaction
outputlock of this transaction
Example
Request:
Copy {
"method" : "getrawtransaction" ,
"params" : [ "caa0d52ea2b90a08480834b97c271a8b847aadf90057318a33ccc8674b77c796" ]
}
Response when verbosity is ture:
Copy {
"id" : null ,
"error" : null ,
"jsonrpc" : "2.0" ,
"result" : {
"txid" : "6864bbf52a3e140d40f1d707bae31d006265efc54dcb58e34037645060ce3e16" ,
"hash" : "6864bbf52a3e140d40f1d707bae31d006265efc54dcb58e34037645060ce3e16" ,
"size" : 192 ,
"vsize" : 192 ,
"version" : 0 ,
"locktime" : 1000 ,
"vin" : [
{
"txid" : "0000000000000000000000000000000000000000000000000000000000000000" ,
"vout" : 65535 ,
"sequence" : 4294967295
}
] ,
"vout" : [
{
"value" : "0.01255707" ,
"n" : 0 ,
"address" : "8VYXVxKKSAxkmRrfmGpQR2Kc66XhG6m3ta" ,
"assetid" : "b037db964a231458d2d6ffd5ea18944c4f90e63d547c5d3b9874df66a4ead0a3" ,
"outputlock" : 0
} ,
{
"value" : "0.02929985" ,
"n" : 1 ,
"address" : "ENTogr92671PKrMmtWo3RLiYXfBTXUe13Z" ,
"assetid" : "b037db964a231458d2d6ffd5ea18944c4f90e63d547c5d3b9874df66a4ead0a3" ,
"outputlock" : 0
}
] ,
"blockhash" : "0000000000000000000000000000000000000000000000000000000000000000" ,
"confirmations" : 4158 ,
"time" : 1524737766 ,
"blocktime" : 1524737766 ,
"type" : 0 ,
"payloadversion" : 4 ,
"payload" : {
"CoinbaseData" : "ELA"
} ,
"attributes" : [
{
"usage" : 0 ,
"data" : "b52165c186769037"
}
] ,
"programs" : []
}
}
Response when verbosity is false:
Copy {
"error" : null ,
"id" : null ,
"jsonrpc" : "2.0" ,
"result": "000403454c4101000846444170b0e427d2010000000000000000000000000000000000000000000000000000000000000000ffffffffffff02b037db964a231458d2d 6ffd5ea18944c4f90e63d547c5d3b9874df66a4ead0a31b2913000000000000000000129e9cf1c5f336fcf3a6c954444ed482c5d916e506b037db964a231458d2d6ffd 5ea18944c4f90e63d547c5d3b9874df66a4ead0a341b52c000000000000000000219e9cc4320c3018ced30242b25c03e13a1b2f57c7d107000000"
}
getrawmempool
Return hashes of transactions in the memory pool.
Example
Request:
Copy {
"method" : "getrawmempool"
}
Response:
Copy {
"error" : null ,
"id" : null ,
"jsonrpc" : "2.0" ,
"result":["5da460632a154fe75df0d5ec98560e4bc1115374a37a75e984a534f8da3ca941", "5da460632a154fe75df0d5ec98560e4bc1115374a37a75e984a534f8da3ca941"]
}
Request:
Copy {
"method" : "getrawmempool" ,
"params" :{
"state" : "all"
}
}
Response:
Copy {
"jsonrpc" : "2.0" ,
"result" : [
{
"txid" : "7bc35c1bb5d21c74cb94b73e2774c1be77a460b7ba1a5d8e73baa1721bb8c98d" ,
"hash" : "7bc35c1bb5d21c74cb94b73e2774c1be77a460b7ba1a5d8e73baa1721bb8c98d" ,
"size" : 369 ,
"vsize" : 369 ,
"version" : 0 ,
"type" : 5 ,
"payloadversion" : 0 ,
"payload" : {
"blockheight" : 366174 ,
"sideblockhash" : "50e95c5452808282249827971def9b6d01a83a62251aada221b20ea66755f44b" ,
"sidegenesishash" : "a3c455a90843db2acd22554f2768a8d4233fafbf8dd549e6b261c2786993be56" ,
"signature": "fdcb69746140a2c9b42c91642e5f887c7859c3709c189a83ed09ac2305d524d66e3b77dff3e9c070323d312afb8efedc60ce41c12e6684e0db5088bad1683a92"
} ,
"attributes" : [
{
"usage" : 0 ,
"data" : "38303631373539313233303934363232343938"
}
] ,
"vin" : [
{
"txid" : "754552520bbc5241fe5e59aae333a7e72d65c1d4ecec3a123cab3c773186a6b2" ,
"vout" : 0 ,
"sequence" : 0
}
] ,
"vout" : [
{
"value" : "0.00300000" ,
"n" : 0 ,
"address" : "EfJDXdRiPk8aiSFwQ4Wf6BCddxgLS4o5hG" ,
"assetid" : "a3d0eaa466df74983b5d7c543de6904f4c9418ead5ffd6d25814234a96db37b0" ,
"outputlock" : 0 ,
"type" : 0 ,
"payload" : null
}
] ,
"locktime" : 688434 ,
"programs" : [
{
"code" : "21036eac18a8fe9722f5afee095334b3970496a92024f832530a51f6f1faba36a881ac" ,
"parameter": "407943915fb2d4938479757dea9cd75e957a9bfe9b45fd973139dd101e1ce4cba3520360ecb2a5da90652fbe05682bb6c7548075225effc87aadc272c27eddcc83"
}
] ,
"blockhash" : "" ,
"confirmations" : 0 ,
"time" : 0 ,
"blocktime" : 0
}
] ,
"id" : null ,
"error" : null
}
getreceivedbyaddress
Get the balance of an address
Parameter
Example
Request:
Copy {
"method" : "getreceivedbyaddress" ,
"params" :{ "address" : "8VYXVxKKSAxkmRrfmGpQR2Kc66XhG6m3ta" }
}
Response:
Copy {
"error" : null ,
"id" : null ,
"jsonrpc" : "2.0" ,
"result" : "33000000"
}
listunspent
List all utxo of given addresses
Parameter
If not set, utxotype will use "mixed" as default value. If you set utxotype to "mixed" or not set will get all utxos ignore the type if set utxotype to "vote" will get vote utxos if set utxotype to "normal" will get normal utxos without vote
Example
Request:
Copy {
"method" : "listunspent" ,
"params" :{ "addresses" : [ "8ZNizBf4KhhPjeJRGpox6rPcHE5Np6tFx3" , "EeEkSiRMZqg5rd9a2yPaWnvdPcikFtsrjE" ]}
}
Response:
Copy {
"error" : null ,
"id" : null ,
"jsonrpc" : "2.0" ,
"result" : [
{
"assetid" : "a3d0eaa466df74983b5d7c543de6904f4c9418ead5ffd6d25814234a96db37b0" ,
"txid" : "9132cf82a18d859d200c952aec548d7895e7b654fd1761d5d059b91edbad1768" ,
"vout" : 0 ,
"address" : "8ZNizBf4KhhPjeJRGpox6rPcHE5Np6tFx3" ,
"amount" : "33000000" ,
"confirmations" : 1102 ,
"outputlock" : 0
} ,
{
"assetid" : "a3d0eaa466df74983b5d7c543de6904f4c9418ead5ffd6d25814234a96db37b0" ,
"txid" : "3edbcc839fd4f16c0b70869f2d477b56a006d31dc7a10d8cb49bd12628d6352e" ,
"vout" : 0 ,
"address" : "8ZNizBf4KhhPjeJRGpox6rPcHE5Np6tFx3" ,
"amount" : "0.01255707" ,
"confirmations" : 846 ,
"outputlock" : 0
}
]
}
setloglevel
Set log level
Parameter
Example
Request:
Copy {
"method" : "setloglevel" ,
"params" : {
"level" : 0
}
}
Response:
Copy {
"id" : null ,
"jsonrpc" : "2.0" ,
"error" : null ,
"result" : "log level has been set to 0"
}
getconnectioncount
Get peer's count of this node
Example
Request:
Copy {
"method" : "getconnectioncount"
}
Response:
Copy {
"id" : null ,
"error" : null ,
"jsonrpc" : "2.0" ,
"result" : 0
}
getneighbors
Get peer's info
Example
Request:
Copy {
"method" : "getneighbors"
}
Response:
Copy {
"error" : null ,
"id" : null ,
"jsonrpc" : "2.0" ,
"result" : [
"127.0.0.1:64890 (inbound)" ,
"127.0.0.1:64880 (inbound)" ,
"127.0.0.1:64822 (inbound)" ,
"127.0.0.1:22338 (outbound)" ,
"127.0.0.1:23338 (outbound)" ,
"127.0.0.1:24338 (outbound)"
]
}
getnodestate
Get node state
Result
current height of local node
peer-to-peer network protocol version of this node
the services provided by this node
neighbor nodes information
neighbor:
network address of the neighbor in host:port format
the services neighbor provides
relay transactions to the neighbor or not
the last time send a message to the neighbor
the last time received a message from the neighbor
the time when this neighbor was connected
time offset between local time and the time advertised by the neighbor
peer-to-peer network version advertised by the neighbor
the connection direction of the neighbor (inbound/outbound)
the height advertised by the neighbor when connected
the height of the last block advertised by the neighbor
the last time send a ping message to the neighbor
microseconds to receive pong message after sending last ping message
Example
Request:
Copy {
"method" : "getnodestate"
}
Response:
Copy {
"error" : null ,
"id" : null ,
"jsonrpc" : "2.0" ,
"result" : {
"compile" : "v0.2.2-231-g75d2-dirty" ,
"height" : 0 ,
"version" : 20000 ,
"services" : "SFNodeNetwork|SFTxFiltering|SFNodeBloom" ,
"port" : 21338 ,
"rpcport" : 21336 ,
"restport" : 21334 ,
"wsport" : 21335 ,
"neighbors" : [
{
"netaddress" : "127.0.0.1:57656" ,
"services" : "SFNodeNetwork|SFTxFiltering|SFNodeBloom" ,
"relaytx" : false ,
"lastsend" : "2019-03-06 14:52:03 +0800 CST" ,
"lastrecv" : "2019-03-06 14:52:18 +0800 CST" ,
"conntime" : "2019-03-06 14:51:33.65298 +0800 CST m=+36.604516146" ,
"timeoffset" : 0 ,
"version" : 20000 ,
"inbound" : true ,
"startingheight" : 0 ,
"lastblock" : 0 ,
"lastpingtime" : "2019-03-06 14:52:03.658121 +0800 CST m=+66.609840707" ,
"lastpingmicros" : 1033
} ,
{
"netaddress" : "127.0.0.1:22338" ,
"services" : "SFNodeNetwork|SFTxFiltering|SFNodeBloom" ,
"relaytx" : false ,
"lastsend" : "2019-03-06 14:52:02 +0800 CST" ,
"lastrecv" : "2019-03-06 14:52:02 +0800 CST" ,
"conntime" : "2019-03-06 14:51:02.097149 +0800 CST m=+5.048492921" ,
"timeoffset" : 0 ,
"version" : 20000 ,
"inbound" : false ,
"startingheight" : 0 ,
"lastblock" : 0 ,
"lastpingtime" : "2019-03-06 14:52:02.104806 +0800 CST m=+65.056516088" ,
"lastpingmicros" : 541
}
]
}
}
sendrawtransaction
Send a raw transaction to node
Parameter
raw transaction data in hex
Result
Example
Request:
Copy {
"method" : "sendrawtransaction" ,
"params" : [ "xxxxxx" ]
}
Response:
Copy {
"result" : "764691821f937fd566bcf533611a5e5b193008ea1ba1396f67b7b0da22717c02" ,
"id" : null ,
"jsonrpc" : "2.0" ,
"error" : null
}
togglemining
The switch of mining
Parameter
Example
Request:
Copy {
"method" : "togglemining" ,
"params" :{ "mining" : false }
}
Response:
Copy {
"id" : null ,
"jsonrpc" : "2.0" ,
"result" : "mining stopped" ,
"error" : null
}
discretemining
Generate one or more blocks instantly
Parameter
Example
Request:
Copy {
"method" : "discretemining" ,
"params" :{ "count" : 1 }
}
Response:
Copy {
"id" : null ,
"jsonrpc" : "2.0" ,
"result" : [
"741d8131f0eea94c1c72c8bb1f0e9051a0a98441e131585bf5bf01868bf0ef46"
] ,
"error" : null
}
getmininginfo
Returns a json object containing mining-related information
Result
the number of block transactions of the last assembled block
the network hashes per second
Example
Request:
Copy {
"method" : "getmininginfo" ,
"params" :{}
}
Response:
Copy {
"error" : null ,
"id" : null ,
"jsonrpc" : "2.0" ,
"result" : {
"blocks" : 397720 ,
"currentblocktx" : 7 ,
"difficulty" : "1553768014955882" ,
"networkhashps" : "27618978773646499814" ,
"pooledtx" : 0 ,
"chain" : "mainnet"
}
}
createauxblock
Generate an auxiliary block
Parameter
Example
Request:
named arguments:
Copy {
"method" : "createauxblock" ,
"params" :{ "paytoaddress" : "Ef4UcaHwvFrFzzsyVf5YH4JBWgYgUqfTAB" }
}
positional arguments:
Copy {
"method" : "createauxblock" ,
"params" : [ "Ef4UcaHwvFrFzzsyVf5YH4JBWgYgUqfTAB" ]
}
Response:
Copy {
"error" : null ,
"id" : null ,
"jsonrpc" : "2.0" ,
"result" : {
"chainid" : 1224 ,
"height" : 152789 ,
"coinbasevalue" : 175799086 ,
"bits" : "1d36c855" ,
"hash" : "e28a262b38316fddefb0b5c753f7cc0022afe94e95f881576ad6b8f33f4e49fe" ,
"previousblockhash" : "f297d03791f4cf2c6ef093b02a77465ea876b040b7772e56b8e140f3bff73871"
}
}
submitauxblock
Submit the solved auxpow of an auxiliary block
Parameter
the solved auxpow of this auxiliary block
Example
Request:
named arguments sample:
Copy {
"method" : "submitauxblock" ,
"params" :{
"blockhash" : "7926398947f332fe534b15c628ff0cd9dc6f7d3ea59c74801dc758ac65428e64" ,
"auxpow": "02000000010000000000000000000000000000000000000000000000000000000000000000ffffffff4b0313ee0904a880495b742f4254432e434f4d2ffabe6d6d9581ba0156314f1e92fd03430c6e4428a32bb3f1b9dc627102498e5cfbf26261020000004204cb9a010f32a00601000000000000ffffffff0200000000000000001976a914c0174e89bd93eacd1d5a1af4ba1802d412afc08688ac0000000000000000266a24aa21a9ede2f61c3f71d1defd3fa999dfa36953755c690689799962b48bebd836974e8cf90000000014acac4ee8fdd8ca7e0b587b35fce8c996c70aefdf24c333038bdba7af531266000000000001ccc205f0e1cb435f50cc2f63edd53186b414fcb22b719da8c59eab066cf30bdb0000000000000020d1061d1e456cae488c063838b64c4911ce256549afadfc6a4736643359141b01551e4d94f9e8b6b03eec92bb6de1e478a0e913e5f733f5884857a7c2b965f53ca880495bffff7f20a880495b"
}
}
positional arguments sample:
Copy {
"method" : "submitauxblock" ,
"params" :[
"7926398947f332fe534b15c628ff0cd9dc6f7d3ea59c74801dc758ac65428e64" ,
"02000000010000000000000000000000000000000000000000000000000000000000000000ffffffff4b0313ee0904a880495b742f4254432e434f4d2ffabe6d6d9581ba0156314f1e92fd03430c6e4428a32bb3f1b9dc627102498e5cfbf26261020000004204cb9a010f32a00601000000000000ffffffff0200000000000000001976a914c0174e89bd93eacd1d5a1af4ba1802d412afc08688ac0000000000000000266a24aa21a9ede2f61c3f71d1defd3fa999dfa36953755c690689799962b48bebd836974e8cf90000000014acac4ee8fdd8ca7e0b587b35fce8c996c70aefdf24c333038bdba7af531266000000000001ccc205f0e1cb435f50cc2f63edd53186b414fcb22b719da8c59eab066cf30bdb0000000000000020d1061d1e456cae488c063838b64c4911ce256549afadfc6a4736643359141b01551e4d94f9e8b6b03eec92bb6de1e478a0e913e5f733f5884857a7c2b965f53ca880495bffff7f20a880495b"
]
}
Response:
Copy {
"error" : null ,
"id" : null ,
"jsonrpc" : "2.0" ,
"result" : true
}
getinfo
Return node information. Warning: this interface is ready to be deprecated, so no api information will be supplied.
listproducers
Show producers information
Parameter
the start index of producers
the limit count of producers
the producer state you want
"all": get producers in any state
"pending": get producers in the pendding state
"active": get producers in the active state
"inactive": get producers in the inactive state
"canceled": get producers in the canceled state
"illegal": get producers in the illegal state
"returned": get producers in the returned state | if state flag not provided return the producers in pending and active state.
Result
the owner public key of producer
the node public key of the producer
the nick name of the producer
the location number of the producer
if producer has confirmed
the current state of the producer
the height of cancel producer
the cancel height of the producer
the inactive start height of the producer
the illegal start height of the producer
the index of the producer
the total votes of registered producers
the total counts of registered producers
Example
Request:
Copy {
"method" : "listproducers" ,
"params" :{
"start" : 0 ,
"limit" : 3
}
}
Response:
Copy {
"error" : null ,
"id" : null ,
"jsonrpc" : "2.0" ,
"result" : {
"producers" : [
{
"ownerpublickey" : "0237a5fb316caf7587e052125585b135361be533d74b5a094a68c64c47ccd1e1eb" ,
"nodepublickey" : "0237a5fb316caf7587e052125585b135361be533d74b5a094a68c64c47ccd1e1eb" ,
"nickname" : "elastos1" ,
"url" : "http://www.elastos1.com" ,
"location" : 401 ,
"active" : true ,
"votes" : "3.11100000" ,
"state" : "Active" ,
"registerheight" : 236 ,
"cancelheight" : 0 ,
"inactiveheight" : 0 ,
"illegalheight" : 0 ,
"index" : 0
} ,
{
"ownerpublickey" : "030a26f8b4ab0ea219eb461d1e454ce5f0bd0d289a6a64ffc0743dab7bd5be0be9" ,
"nodepublickey" : "030a26f8b4ab0ea219eb461d1e454ce5f0bd0d289a6a64ffc0743dab7bd5be0be9" ,
"nickname" : "elastos2" ,
"url" : "http://www.elastos2.com" ,
"location" : 402 ,
"active" : true ,
"votes" : "2.10000000" ,
"state" : "Active" ,
"registerheight" : 225 ,
"cancelheight" : 0 ,
"inactiveheight" : 0 ,
"illegalheight" : 0 ,
"index" : 1
} ,
{
"ownerpublickey" : "0288e79636e41edce04d4fa95d8f62fed73a76164f8631ccc42f5425f960e4a0c7" ,
"nodepublickey" : "0288e79636e41edce04d4fa95d8f62fed73a76164f8631ccc42f5425f960e4a0c7" ,
"nickname" : "elastos3" ,
"url" : "http://www.elastos3.com" ,
"location" : 403 ,
"active" : true ,
"votes" : "0" ,
"state" : "Active" ,
"registerheight" : 216 ,
"cancelheight" : 0 ,
"inactiveheight" : 0 ,
"illegalheight" : 0 ,
"index" : 2
}
] ,
"totalvotes" : "5.21100000" ,
"totalcounts" : 10
}
}
producerstatus
Show producer status
Parameter
the public key of producer
Result
0: producer has not registered; 1: producer has confirmed (6 confirms); 2: producer registered but not confirmed (less than 6 confirms)
Example
Request:
Copy {
"method" : "producerstatus" ,
"params" :{
"publickey" : "0237a5fb316caf7587e052125585b135361be533d74b5a094a68c64c47ccd1e1eb"
}
}
Response:
Copy {
"error" : null ,
"id" : null ,
"jsonrpc" : "2.0" ,
"result" : 1
}
votestatus
Show producer vote status
Parameter
Result
Note: If the EnableUtxoDB configuration entry is true, then the total field is computed; otherwise the total field returns -1
Example
Request:
Copy {
"method" : "votestatus" ,
"params" :{
"address" : "EZwPHEMQLNBpP2VStF3gRk8EVoMM2i3hda"
}
}
Response:
Copy {
"error" : null ,
"id" : null ,
"jsonrpc" : "2.0" ,
"result" : {
"total" : "4.66088900" ,
"voting" : "0" ,
"pending" : true
}
}
estimatesmartfee
Estimate the transaction fee smartly.
Parameter
in how many blocks do you want your transaction to be packed
Result
fee rate, the unit is sela per KB
Example
Request:
Copy {
"method" : "estimatesmartfee" ,
"params" :{
"confirmations" : 5
}
}
Response:
Copy {
"error" : null ,
"id" : null ,
"jsonrpc" : "2.0" ,
"result" : 10000
}
getdepositcoin
Get deposit coin by owner public key.
Parameter
the ownerPublicKey of producer
Result
the available deposit coin of producer
the deducted deposit coin of producer
the deposit amount coin of producer
the total assets coin of producer
Example
Request:
Copy {
"method" : "getdepositcoin" ,
"params" :{
"ownerpublickey" : "024babfecea0300971a6f0ad13b27519faff0ef595faf9490dc1f5f4d6e6d7f3fb"
}
}
Response:
Copy {
"error" : null ,
"id" : null ,
"jsonrpc" : "2.0" ,
"result" : {
"available" : "1" ,
"deducted" : "0" ,
"deposit" : "3" ,
"assets" : "4"
}
}
getcrdepositcoin
Get deposit coin by owner public key, or cid/did.
Parameter
the cid or did address of CR candidate
the public key of CR candidate
Result
the available deposit coin of CR candidate
the deducted deposit coin of CR candidate
the deposit amount coin of CR candidate
the total assets coin of CR candidate
Example
Request:
Copy {
"method" : "getcrdepositcoin" ,
"params" :{
"id" : "iUzjmMPTYZq2afqtR46coY6B7h2qD1PQbyq"
}
}
Response:
Copy {
"error" : null ,
"id" : null ,
"jsonrpc" : "2.0" ,
"result" : {
"available" : "1" ,
"deducted" : "0" ,
"deposit" : "3" ,
"assets" : "4"
}
}
getarbiterpeersinfo
Get dpos peers information.
Result
owner public key of the peer which should be one of current arbiters
node public key of the peer which should be one of current arbiters
ip address of the peer (including port)
connection state about the peer, the value can be: NoneConnection, OutboundOnly, InboundOnly, or 2WayConnection
Example
Request:
Copy {
"method" : "getarbiterpeersinfo"
}
Response:
Copy {
"error" : null ,
"id" : null ,
"jsonrpc" : "2.0" ,
"result" : [
{
"ownerpublickey" : "0243ff13f1417c69686bfefc35227ad4f5f4ca03ccb3d3a635ae8ed67d57c20b97" ,
"nodepublickey" : "0243ff13f1417c69686bfefc35227ad4f5f4ca03ccb3d3a635ae8ed67d57c20b97" ,
"ip" : "127.0.0.1:22339" ,
"connstate" : "2WayConnection"
} ,
{
"ownerpublickey" : "024ac1cdf73e3cbe88843b2d7279e6afdc26fc71d221f28cfbecbefb2a48d48304" ,
"nodepublickey" : "0393e823c2087ed30871cbea9fa5121fa932550821e9f3b17acef0e581971efab0" ,
"ip" : "127.0.0.1:23339" ,
"connstate" : "InboundOnly"
} ,
{
"ownerpublickey" : "0274fe9f165574791f74d5c4358415596e408b704be9003f51a25e90fd527660b5" ,
"nodepublickey" : "03e281f89d85b3a7de177c240c4961cb5b1f2106f09daa42d15874a38bbeae85dd" ,
"ip" : "127.0.0.1:24339" ,
"connstate" : "NoneConnection"
}
]
}
submitsidechainillegaldata
Submit illegal data from side chain.
Parameter
serialized illegal data in hex string format
Example
Request:
Copy {
"method" : "submitsidechainillegaldata" ,
"params" :{
"illegaldata": "016400000021023a133480176214f88848c6eaa684a54b316849df2b8570b57f3a917f19bbc77a52fdfc072182654f163f5f0f9a621d729566c74d10037c4d7bbb0407d1e2c64981855ad8681d0d86d1e91e00167939cb6694d2c422acd208a0072939487f699940353662653933363937386332363162326536343964353864626661663366323364346138363832373466353532326364326164623433303861393535633461330221030a26f8b4ab0ea219eb461d1e454ce5f0bd0d289a6a64ffc0743dab7bd5be0be9210288e79636e41edce04d4fa95d8f62fed73a76164f8631ccc42f5425f960e4a0c7"
}
}
Response:
Copy {
"error" : null ,
"id" : null ,
"jsonrpc" : "2.0" ,
"result" : true
}
getconfirmbyheight
Get block confirm by height of block.
Parameter
the verbosity of result, 0 will return serialized confirmed data, default 1
Result
the sponsor nodePublicKey of the proposal
the viewoffset of the proposal
the singner nodePublicKey of the proposal
accept or not of the proposal
Example
Request:
Copy {
"method" : "getconfirmbyheight" ,
"params" :{
"height" : 300000 ,
"verbosity" : 1
}
}
Response:
Copy {
"error" : null ,
"id" : null ,
"jsonrpc" : "2.0" ,
"result" : {
"blockhash" : "65fd07f4069a1ca6833d38e0baa9b0b4a9bac35131feb5c363bd2fb99f8d06d8" ,
"sponsor" : "024ac1cdf73e3cbe88843b2d7279e6afdc26fc71d221f28cfbecbefb2a48d48304" ,
"viewoffset" : 0 ,
"votes" : [
{
"signer" : "024babfecea0300971a6f0ad13b27519faff0ef595faf9490dc1f5f4d6e6d7f3fb" ,
"accept" : true
} ,
{
"signer" : "024ac1cdf73e3cbe88843b2d7279e6afdc26fc71d221f28cfbecbefb2a48d48304" ,
"accept" : true
} ,
{
"signer" : "0274fe9f165574791f74d5c4358415596e408b704be9003f51a25e90fd527660b5" ,
"accept" : true
}
]
}
}
getconfirmbyhash
Get block confirm by hash of block.
Parameter
the verbosity of result, 0 will return serialized confirmed data, default 1
Result
the sponsor nodePublicKey of the proposal
the viewoffset of the proposal
the singner nodePublicKey of the proposal
accept or not of the proposal
Example
Request:
Copy {
"method" : "getconfirmbyhash" ,
"params" :{
"blockhash" : "65fd07f4069a1ca6833d38e0baa9b0b4a9bac35131feb5c363bd2fb99f8d06d8" ,
"verbosity" : 1
}
}
Response:
Copy {
"error" : null ,
"id" : null ,
"jsonrpc" : "2.0" ,
"result" : {
"blockhash" : "65fd07f4069a1ca6833d38e0baa9b0b4a9bac35131feb5c363bd2fb99f8d06d8" ,
"sponsor" : "024ac1cdf73e3cbe88843b2d7279e6afdc26fc71d221f28cfbecbefb2a48d48304" ,
"viewoffset" : 0 ,
"votes" : [
{
"signer" : "024babfecea0300971a6f0ad13b27519faff0ef595faf9490dc1f5f4d6e6d7f3fb" ,
"accept" : true
} ,
{
"signer" : "024ac1cdf73e3cbe88843b2d7279e6afdc26fc71d221f28cfbecbefb2a48d48304" ,
"accept" : true
} ,
{
"signer" : "0274fe9f165574791f74d5c4358415596e408b704be9003f51a25e90fd527660b5" ,
"accept" : true
}
]
}
}
getarbitersinfo
Get arbiters and candidates about current and next turns.
Result
get node public keys about arbiters of current turn
get node public keys about candidates of current turn
get node public keys about arbiters of next turn
get node public keys about candidates of next turn
get node public key of current on duty arbiter
get height of current turn
get an estimate height of next turn
Example
Request:
Copy {
"method" : "getarbitersinfo"
}
Response:
Copy {
"error" : null ,
"id" : null ,
"jsonrpc" : "2.0" ,
"result" : {
"arbiters" : [
"0247984879d35fe662d6dddb4edf111c9f64fde18ccf8af0a51e4b278c3411a8f2" ,
"032e583b6b578cccb9bbe4a53ab54a3e3e60156c01973b16af52b614813fca1bb2" ,
"0223b8e8098dd694f4d20ea74800b1260a5a4a0afe7f6a0043c7e459c84ff80fba" ,
"03982eaa9744a3777860013b6b988dc5250198cb81b3aea157f9b429206e3ae80f" ,
"0328443c1e4bdb5b60ec1d017056f314ba31f8f9f43806128fac20499a9df27bc2"
] ,
"candidates" : [] ,
"nextarbiters" : [
"0247984879d35fe662d6dddb4edf111c9f64fde18ccf8af0a51e4b278c3411a8f2" ,
"032e583b6b578cccb9bbe4a53ab54a3e3e60156c01973b16af52b614813fca1bb2" ,
"0223b8e8098dd694f4d20ea74800b1260a5a4a0afe7f6a0043c7e459c84ff80fba" ,
"03982eaa9744a3777860013b6b988dc5250198cb81b3aea157f9b429206e3ae80f" ,
"0328443c1e4bdb5b60ec1d017056f314ba31f8f9f43806128fac20499a9df27bc2"
] ,
"nextcandidates" : [] ,
"ondutyarbiter" : "03982eaa9744a3777860013b6b988dc5250198cb81b3aea157f9b429206e3ae80f" ,
"currentturnstartheight" : 200 ,
"nextturnstartheight" : 212
}
}
getutxosbyamount
Get utxo by a given amount - amount of utxo >= given amount.
Parameter
the min amount to get utxo
if not set utxotype will use "mixed" as default value if set utxotype to "mixed" or not set will get all utxos ignore the type if set utxotype to "vote" will get vote utxos if set utxotype to "normal" will get normal utxos without vote if set utxotype to "unused" will get all utxos that are not in tx pool
Example
Request:
Copy {
"method" : "getutxosbyamount" ,
"params" :{
"address" : "XKUh4GLhFJiqAMTF6HyWQrV9pK9HcGUdfJ" ,
"amount" : "0.25"
}
}
Response:
Copy {
"error" : null ,
"id" : null ,
"jsonrpc" : "2.0" ,
"result" : [
{
"assetid" : "a3d0eaa466df74983b5d7c543de6904f4c9418ead5ffd6d25814234a96db37b0" ,
"txid" : "9132cf82a18d859d200c952aec548d7895e7b654fd1761d5d059b91edbad1768" ,
"vout" : 0 ,
"address" : "XKUh4GLhFJiqAMTF6HyWQrV9pK9HcGUdfJ" ,
"amount" : "0.1" ,
"confirmations" : 1102 ,
"outputlock" : 0
} ,
{
"assetid" : "a3d0eaa466df74983b5d7c543de6904f4c9418ead5ffd6d25814234a96db37b0" ,
"txid" : "3edbcc839fd4f16c0b70869f2d477b56a006d31dc7a10d8cb49bd12628d6352e" ,
"vout" : 0 ,
"address" : "XKUh4GLhFJiqAMTF6HyWQrV9pK9HcGUdfJ" ,
"amount" : "0.2" ,
"confirmations" : 846 ,
"outputlock" : 0
}
]
}
getamountbyinputs
Get amount of given inputs.
Parameter
Result
Amount of all given inputs, the type is string, if not found input will return error
Example
Request:
Copy {
"method" : "getamountbyinputs" ,
"params" :{
"inputs": "029132cf82a18d859d200c952aec548d7895e7b654fd1761d5d059b91edbad17680000000000003edbcc839fd4f16c0b70869f2d477b56a006d31dc7a10d8cb49bd12628d6352e000000000000"
}
}
Response:
Copy {
"error" : null ,
"id" : null ,
"jsonrpc" : "2.0" ,
"result" : "0.3"
}
getblockbyheight
Get a block by specifying block height.
Parameter
Result
the size of a block in bytes
block header's version in hex format
the merkleroot hash of this block
transactions of this block as an array
the Unix timestamp of this block
The estimated number of block header hashes miners had to check from the genesis block to this block, encoded as big-endian hex
Auxpow information in hex format
Example
Request:
Copy {
"method" : "getblockbyheight" ,
"params" :{
"height" : 5
}
}
Response:
Copy {
"error" : null ,
"id" : null ,
"jsonrpc" : "2.0" ,
"result" : {
"hash" : "d428cf8a8e8e2c265ccceb0ed0a017aae45a89c98529d1f6dd43efc219089e0e" ,
"confirmations" : 452 ,
"strippedsize" : 563 ,
"size" : 563 ,
"weight" : 2252 ,
"height" : 5 ,
"version" : 0 ,
"versionhex" : "00000000" ,
"merkleroot" : "c1accbe3434279f74db674728d7020190680474f11c4ec2976bd1223cf7c9c66" ,
"tx" : [
{
"txid" : "c1accbe3434279f74db674728d7020190680474f11c4ec2976bd1223cf7c9c66" ,
"hash" : "c1accbe3434279f74db674728d7020190680474f11c4ec2976bd1223cf7c9c66" ,
"size" : 257 ,
"vsize" : 257 ,
"version" : 0 ,
"locktime" : 5 ,
"vin" : [
{
"txid" : "0000000000000000000000000000000000000000000000000000000000000000" ,
"vout" : 65535 ,
"sequence" : 4294967295
}
] ,
"vout" : [
{
"value" : "1.50684931" ,
"n" : 0 ,
"address" : "EPha6MJ2Y9HAdrtNvMVrBu6ePMnmZJtmyv" ,
"assetid" : "a3d0eaa466df74983b5d7c543de6904f4c9418ead5ffd6d25814234a96db37b0" ,
"outputlock" : 0 ,
"type" : 0 ,
"payload" : null
} ,
{
"value" : "1.75799086" ,
"n" : 1 ,
"address" : "EQzEvQbz5XGDZeWu2u48dPaeLTzvmfSyG4" ,
"assetid" : "a3d0eaa466df74983b5d7c543de6904f4c9418ead5ffd6d25814234a96db37b0" ,
"outputlock" : 0 ,
"type" : 0 ,
"payload" : null
} ,
{
"value" : "1.75799088" ,
"n" : 2 ,
"address" : "EPha6MJ2Y9HAdrtNvMVrBu6ePMnmZJtmyv" ,
"assetid" : "a3d0eaa466df74983b5d7c543de6904f4c9418ead5ffd6d25814234a96db37b0" ,
"outputlock" : 0 ,
"type" : 0 ,
"payload" : null
}
] ,
"blockhash" : "d428cf8a8e8e2c265ccceb0ed0a017aae45a89c98529d1f6dd43efc219089e0e" ,
"confirmations" : 452 ,
"time" : 1556595214 ,
"blocktime" : 1556595214 ,
"type" : 0 ,
"payloadversion" : 4 ,
"payload" : {
"coinbasedata" : "ELA"
} ,
"attributes" : [
{
"usage" : 0 ,
"data" : "f53c107eec00d337"
}
] ,
"programs" : []
}
] ,
"time" : 1556595214 ,
"mediantime" : 1556595214 ,
"nonce" : 0 ,
"bits" : 545259519 ,
"difficulty" : "1" ,
"chainwork" : "000001c3" ,
"previousblockhash" : "b45f9e479340c6d2889076f6bd1e138d14e8620bc2cc0ef642bd15278509d49f" ,
"nextblockhash" : "185cf0322f3f38abe0ecc0fffbca84d87965492042e87036bf78bfdb665b53fa" ,
"auxpow": "01000000010000000000000000000000000000000000000000000000000000000000000000000000002cfabe6d6d0e9e0819c2ef43ddf6d12985c9895ae4aa17a0d00eebcc5c262c8e8e8acf28d40100000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000ffffff7f0000000000000000000000000000000000000000000000000000000000000000a0c69cab73b8541e6d5b17d5c27e3482d3cc0264da80142645f4ad67677a44940cc2c75c0000000001000000",
"minerinfo" : "ELA"
}
}
getarbitratorgroupbyheight
Get amount of given inputs.
Parameter
block height about the chain
Result
index of current on duty arbitrator
an array of current arbitrators
Example
Request:
Copy {
"method" : "getarbitratorgroupbyheight" ,
"params" :{
"height" : 310
}
}
Response:
Copy {
"error" : null ,
"id" : null ,
"jsonrpc" : "2.0" ,
"result" : {
"ondutyarbitratorindex" : 10 ,
"arbitrators" : [
"02338fc098e08ed9a798f0d40b5320f52ad0539b98a972856a948bf652b0014110" ,
"026ef6740c405e9ff137410f47fe92597c82a8dd236e87e7f4aafe4dc1aa0cd06b" ,
"02c684ec9883bb5397243d9e129b9334a643f4778c28e99d59858162884081b183" ,
"02d20a48b4287737912de6af53b6afef2596a755f2a541374dda1fd3ab0aa1b984" ,
"02d2dd22fa2abfebb94d34666da47b15f214cc1a9ea1b8db0fda22d264bb922b36" ,
"02fc936192cfb02b8a22e4ba090638f05ac60c8bf9d70f1558c5166cb7768a182e" ,
"030936942e4bbe3d7f7dc45cea38195f4c4bb1474b336d6bf35fcba179872332b4" ,
"0320cb8d823c5d202e0ec481f4e0fa0d3e191fb9d0a7629543882bad7444ad3016" ,
"03268eb4064889047863485288515cdd880a986b57ccc9d72ae58d4401f67509a7" ,
"034282d36e034272f7c289fd9655797a352d1c76a917e94d6dedaf484acf167e2d" ,
"03d732f3df7c081d149bd585b77afe1077cedb4b6c6fd9b6278a8ffd456d34c3ab" ,
"03f9a1f5b23e3d57e8d95a45008ad4574352fa55f755a655c81ee22e62894811b2"
]
}
}
getexistwithdrawtransactions
Find out which already exist in the chain by providing a list of withdraw transaction hashes.
Parameter
a list of transaction hashes in string format
Result
A list of existing transaction hashes.
Example
Request:
Copy {
"method" : "getexistwithdrawtransactions" ,
"params" :{
"txs" : [
"3edbcc839fd4f16c0b70869f2d477b56a006d31dc7a10d8cb49bd12628d6352e" ,
"9132cf82a18d859d200c952aec548d7895e7b654fd1761d5d059b91edbad1768" ,
"764691821f937fd566bcf533611a5e5b193008ea1ba1396f67b7b0da22717c02"
]
}
}
Response:
Copy {
"error" : null ,
"id" : null ,
"jsonrpc" : "2.0" ,
"result" : [
"3edbcc839fd4f16c0b70869f2d477b56a006d31dc7a10d8cb49bd12628d6352e" ,
"9132cf82a18d859d200c952aec548d7895e7b654fd1761d5d059b91edbad1768"
]
}
listcrcandidates
Show cr candidates information
Parameter
the start index of cr candidates
the limit count of cr candidates
the cr candidates state you want
"all": get cr candidates in any state
"pending": get cr candidates in the pendding state
"active": get cr candidates in the active state
"canceled": get cr candidates in the canceled state
"returned": get cr candidates in the returned state | if state flag isn't provided, return the cr candidates in pending and active states.
Result
the cr candiate did address
the nick name of the cr candiate
the url of the cr candiate
the location number of the cr candiate
if cr candiate has confirmed
the register CR candidate height
the unregister CR candidate height
the index of the cr candiate
the total votes of registered cr candiate
the total counts of registered cr candiate
Example
Request:
Copy {
"method" : "listcrcandidates" ,
"params" :{
"start" : 0 ,
"limit" : 3
}
}
Response:
Copy {
"error" : null ,
"id" : null ,
"jsonrpc" : "2.0" ,
"result" : {
"crcandidatesinfo" : [
{
"code" : "21036db5984e709d2e0ec62fd974283e9a18e7b87e8403cc784baf1f61f775926535ac" ,
"cid" : "iUzjmMPTYZq2afqtR46coY6B7h2qD1PQbyq" ,
"did" : "iTgmaqaMpMj46MW3GCU2h7bPaytwuvQrV3" ,
"nickname" : "ela_test11" ,
"url" : "ela_test.org11" ,
"location" : 38025 ,
"state" : "Canceled" ,
"votes" : "0" ,
"registerheight" : 111 ,
"cancelheight" : 151 ,
"index" : 0
}
] ,
"totalvotes" : "0" ,
"totalcounts" : 1
}
}
getsecretarygeneral
Get secretary general public key
Example
Request:
Copy {
"method" : "getsecretarygeneral"
}
Response:
Copy {
"error" : null ,
"id" : null ,
"jsonrpc" : "2.0" ,
"result" : {
"secretarygeneral" : "033279a88abf504192f36d0a8f06d66ab1fff80d2715cf3ecbd243b4db8ff2e77e"
}
}
listcurrentcrs
Show current cr members information
Parameter
the cr member state you want know
Result
the cr member did address
the nick name of the cr member
the location number of the cr member
impeachment votes of the cr member
the deposite amout of the cr member
the deposite address of the cr member
the penalty of the cr member
the index of the cr member
the total counts of current cr member
Example
Request:
Copy {
"method" : "listcurrentcrs" ,
"params" :{
"state" : "all"
}
}
Response:
Copy {
"error" : null ,
"id" : null ,
"jsonrpc" : "2.0" ,
"result" : {
"crmembersinfo" : [
{
"code" : "2102e23f70b9b967af35571c32b1442d787c180753bbed5cd6e7d5a5cfe75c7fc1ffac" ,
"cid" : "iaiZJM922uWo2Uc2gYwZk1nEgiVV7NTtxR" ,
"did" : "inTc9GeWyNNKNwT1cDcvvEgQwnjszbtpZ5" ,
"nickname" : "ela_cr2" ,
"url" : "ela_cr2.org" ,
"location" : 112211 , "impeachmentvotes" : 0 ,
"depositamout" : "5000" ,
"deposithash" : "De87Qiekzpx7Xqf8RphdwNX5Z84iGgHLKMF5b" ,
"penalty" : 0 ,
"index" : 0 ,
"State" : "Elected"
} ,
{
"code" : "2103c3dd01baa4e3d0625f6c0026ad3d06d085e80c57477efa1a4aa2ab209c210e95ac" ,
"cid" : "iUBoqE5KnBA1zsd4EWeyj2mXMfUrm5rDmf" ,
"did" : "intySungjAK3uyHeoajez3yRqX5x68NrNi" ,
"nickname" : "ela_cr1" ,
"url" : "ela_cr1.org" ,
"location" : 112211 ,
"impeachmentvotes" : 0 ,
"depositamout" : "5000" ,
"depositaddress" : "DnemZpPgHLKMF5bMX3WbJYSGTpqJkBN7pe" ,
"penalty" : 0 ,
"index" : 1 ,
"State" : "Elected"
}
] ,
"totalcounts" : 2
}
}
listcrproposalbasestate
Show current cr proposal base state information
Parameter
the start index of cr proposal state
the limit count of cr proposal state
the proposal state you want
"all": get proposals in any state
"registered": get proposals in the registered state
"cragreed": get proposals in the cragreed state
"voteragreed": get proposals in the voteragreed state
"finished": get proposals in the finished state
"crcanceled": get proposals in the crcanceled state
"votercanceled": get proposals in the votercanceled state | "aborted": get proposals in the aborted state
Result
the transacion's hash which cr proposal located in
register height of proposal
terminated height of proposal
tracking counts of proposal
the index of the cr proposal
Example
Request:
Copy {
"method" : "listcrproposalbasestate" ,
"params" :{
"state" : "all" ,
"start" : 0 ,
"limit" : 10
}
}
Response:
Copy {
"error" : null ,
"id" : null ,
"jsonrpc" : "2.0" ,
"result" : {
"proposalbasestates" : [
{
"status" : "CRAgreed" ,
"proposalhash" : "e6942385c899889d4afd4b093e44a29f7d374c25c21432347faf3f82af2e5a88" ,
"txhash" : "a859222538901eb656ad293483bb361dc0ec2835ce804fb7dffc67241c0ee965" ,
"crvotes" : {
"intySungjAK3uyHeoajez3yRqX5x68NrNi" : "approve" ,
"iUBoqE5KnBA1zsd4EWeyj2mXMfUrm5rDmf" : "approve" ,
"iTgmaqaMpMj46MW3GCU2h7bPaytwuvQrV3" : "approve" ,
"inTc9GeWyNNKNwT1cDcvvEgQwnjszbtpZ5" : "approve"
} ,
"votersrejectamount" : "324.22213333" ,
"registerHeight" : 1764 ,
"terminatedheight" : 0 ,
"trackingcount" : 0 ,
"proposalowner" : "02de2bdd021fd17418d1696afb4709fb908401c81fa674f26e8ca0afa624a48727" ,
"index" : 14
}
] ,
"totalcounts" : 1
}
}
getcrproposalstate
Get one cr proposal detail state information by proposalhash or drafthash
Parameter
hash of the proposal which you want get detail state
drafthash of the proposal which you want get detail state
Result
hash of the transacion which cr proposal located in
the proposal register height
the public key of proposal's owner
the did of CR Council Member
the hash of draft proposal
the budget of different stages
ProposalType value as follows: 0x00:"Normal" Normal indicates the normal types of proposal. 0x01:"Code" indicates the code upgrade types of proposals. 0x02:"SideChain" indicates the side chain related types of proposals. 0x03:"ChangeOwner" indicates the change proposal owner types of proposals. 0x04:"CloseProposal" indicates the close proposal types of proposals. 0x05:"SecretaryGeneral"indicates the vote secretary general types of proposals.
Example
Request by proposalhash:
Copy {
"method" : "getcrproposalstate" ,
"params" :{
"proposalhash" : "42de0adf2b3673d712fc3efdaf643889ef8442fe25987b25add8c0c961b13612"
}
}
Response:
Copy {
"error" : null ,
"id" : null ,
"jsonrpc" : "2.0" ,
"result" : {
"proposalstate" : {
"status" : "Registered" ,
"proposal" : {
"proposaltype" : 0 ,
"ownerpublickey" : "03c3dd01baa4e3d0625f6c0026ad3d06d085e80c57477efa1a4aa2ab209c210e95" ,
"crcouncilmemberdid" : "iUBoqE5KnBA1zsd4EWeyj2mXMfUrm5rDmf" ,
"drafthash" : "9c5ab8998718e0c1c405a719542879dc7553fca05b4e89132ec8d0e88551fcc0" ,
"budgets" : [
{
"type" : "Imprest" ,
"stage" : 0 ,
"amount" : "1.1" ,
"status" : "Withdrawable"
} ,
{
"type" : "NormalPayment" ,
"stage" : 1 ,
"amount" : "2.2" ,
"status" : "Unfinished"
} ,
{
"type" : "FinalPayment" ,
"stage" : 2 ,
"amount" : "3.3" ,
"status" : "Unfinished"
}
]
} ,
"txhash" : "9f425a8012a3e36128ee61be78a0b6a7832f9d895d08c86cc16e6a084e7f054f" ,
"crvotes" : {
"iTgmaqaMpMj46MW3GCU2h7bPaytwuvQrV3" : 0
} ,
"votersrejectamount" : 0 ,
"registerheight" : 1277
}
}
}
Request by drafthash:
Copy {
"method" : "getcrproposalstate" ,
"params" :{
"drafthash" : "9c5ab8998718e0c1c405a719542879dc7553fca05b4e89132ec8d0e88551fcc0"
}
}
Response:
Copy {
"error" : null ,
"id" : null ,
"jsonrpc" : "2.0" ,
"result" : {
"proposalstate" : {
"status" : "Registered" ,
"proposal" : {
"proposaltype" : 0 ,
"ownerpublickey" : "03c3dd01baa4e3d0625f6c0026ad3d06d085e80c57477efa1a4aa2ab209c210e95" ,
"crcouncilmemberdid" : "iUBoqE5KnBA1zsd4EWeyj2mXMfUrm5rDmf" ,
"drafthash" : "9c5ab8998718e0c1c405a719542879dc7553fca05b4e89132ec8d0e88551fcc0" ,
"budgets" : [
{
"type" : "Imprest" ,
"stage" : 0 ,
"amount" : "1.1" ,
"status" : "Withdrawable"
} ,
{
"type" : "NormalPayment" ,
"stage" : 1 ,
"amount" : "2.2" ,
"status" : "Unfinished"
} ,
{
"type" : "FinalPayment" ,
"stage" : 2 ,
"amount" : "3.3" ,
"status" : "Unfinished"
}
]
} ,
"txhash" : "9f425a8012a3e36128ee61be78a0b6a7832f9d895d08c86cc16e6a084e7f054f" ,
"crvotes" : {
"iTgmaqaMpMj46MW3GCU2h7bPaytwuvQrV3" : 0
} ,
"votersrejectamount" : 0 ,
"registerheight" : 1277 ,
"votestartheight" : 0
}
}
}
getproposaldraftdata
Get draft data of the proposal or proposalReview or proposalTracking transaction detail information by draft hash.
Parameter
draft hash of proposal or proposalReview or proposalTracking transaction
Result
Result is the hex string of draft data.
Example
Request:
Copy {
"method" : "getproposaldraftdata" ,
"params" :{
"drafthash" : "9c5ab8998718e0c1c405a719542879dc7553fca05b4e89132ec8d0e88551fcc0"
}
}
Response:
Copy {
"error" : null ,
"id" : null ,
"jsonrpc" : "2.0" ,
"result" : "6d6d9581ba0156314f1e92fd03430c6e4428a32bb3f1b9dc6271024"
}
createrawtransaction
Create a transaction spending the given inputs and creating new outputs. Warning: you should calculate the change output and append it to transaction outputs - otherwise, the change should be given to the miners.
Parameter
inputs json array of json objects
outputs json array of json objects
the transaction lock time number
Example
Request:
Copy {
"method": "createrawtransaction",
"params":{
"inputs":"[{\"txid\":\"a704c4c04c70043a2cce34fa95e20f3d33b0a3dc95dd948dee573673b701c7e7\",\"vout\":1}]",
"outputs": "[{\"address\":\"EKn3UGyEoycACJxKu7F8R5U1Pe6NUpni1H\",\"amount\":1},{\"address\":\"EUmvbPnoC59DJWnEx5VkcJNhK6GnjkoHao\",\"amount\":98.9}]",
"locktime": 0
}
}
Response:
Copy {
"error": null,
"id": null,
"jsonrpc": "2.0",
"result": "0902000001285f24620c18ddc75b7d1f3090efa619bd5b901a5355c30621dad1c2c6dcfbc000000000000002b037db964a231458d2d6ffd5ea18944c4f90e63d547c5d3b9874df66a4ead0a300e1f5050000000000000000211cc5e2ab8654b4fe70949aceaacb017410df55c300b037db964a231458d2d6ffd5ea18944c4f90e63d547c5d3b9874df66a4ead0a3806c7d4d0200000000000000217f7946d05f62a92ed345ed9f1391869517bff44d000000000000"
}
signrawtransactionwithkey
Sign the raw transaction with a private key.
Parameter
the transaction hex string
the codes json array of json objects
the private key json array of json objects
Example
Request:
Copy {
"method": "signrawtransactionwithkey",
"params":{
"data": "0902000001e7c701b7733657ee8d94dd95dca3b0333d0fe295fa34ce2c3a04704cc0c404a701000000000002b037db964a231458d2d6ffd5ea18944c4f90e63d547c5d3b9874df66a4ead0a300e1f505000000000000000021121c2c946cb3d88b5272038621290e120193c7e600b037db964a231458d2d6ffd5ea18944c4f90e63d547c5d3b9874df66a4ead0a380a2e2110200000000000000126aa11de1372f5763cd93e9eef71008be74a94693000000000000",
"codes": "[\"5321033b4606d3cec58a01a09da325f5849754909fec030e4cf626e6b4104328599fc7210251a471359b13d22cfdb2d8c8ec687a61f9e01c26e6475d58acf77c153c75d62121036e9eebad12dfbd6ea41a770baa735ec8db0a0be39e35db5ff8f5c87a47543e852103e630e917b0cfd076478780dcbfed89bc6db71f2865c2c124c6f95a4e3b9b307b54ae\"]",
"privkeys": "[\"ea3ddc681a780866577334de8a2f3e25cbb590c21671d705ce1fef46d84ffd81\"]"
}
}
Response:
Copy {
"error": null,
"id": null,
"jsonrpc": "2.0",
"result": "0902000001e7c701b7733657ee8d94dd95dca3b0333d0fe295fa34ce2c3a04704cc0c404a701000000000002b037db964a231458d2d6ffd5ea18944c4f90e63d547c5d3b9874df66a4ead0a300e1f505000000000000000021121c2c946cb3d88b5272038621290e120193c7e600b037db964a231458d2d6ffd5ea18944c4f90e63d547c5d3b9874df66a4ead0a380a2e2110200000000000000126aa11de1372f5763cd93e9eef71008be74a946930000000000014140e0bdb6879df338b0aa0039e900237471315342a06e4f40de2777903179c4fd77a48557058e6428bb403318ac2f101501761ce7ae2bb68bc0b5ccf47f5049aef38b5321033b4606d3cec58a01a09da325f5849754909fec030e4cf626e6b4104328599fc7210251a471359b13d22cfdb2d8c8ec687a61f9e01c26e6475d58acf77c153c75d62121036e9eebad12dfbd6ea41a770baa735ec8db0a0be39e35db5ff8f5c87a47543e852103e630e917b0cfd076478780dcbfed89bc6db71f2865c2c124c6f95a4e3b9b307b54ae"
}
decoderawtransaction
Return a JSON object representing the serialized, hex-encoded transaction.
Parameter
the transaction hex string
Example
Request:
Copy {
"method": "decoderawtransaction",
"params":{
"data":"0200018151747970653a746578742c6d73673a46726f6d20454c4142616e6b2c456e74657220456c6173746f73202d43616c6c6973746f205375706572204e6f64652052657761726420446973747269627574696f6e015241653c7bcee5347ce08918fb52232312cdf14611bd5ab3ed8434a44d379a3701000000000002b037db964a231458d2d6ffd5ea18944c4f90e63d547c5d3b9874df66a4ead0a386a20500000000000000000021da7a8bc95561e969706abbaf87b12089cd9667dab037db964a231458d2d6ffd5ea18944c4f90e63d547c5d3b9874df66a4ead0a3b0fdfa5302000000000000002157cbdce387181d010890a972f93acf0ff54346b100000000014140a1d30614cc236006f31d67b9dc74af8298692c0fd09d1236d3c50fd50a64df82864359e441efde018d47f69bbcf92e46720baa160621c2160d7830a2bebfc144232103bd33d4fb0697bba896790a132439f402941b6b184cdd06dddf9ce8658f0c0443ac"
}
}
Response:
Copy {
"error": null,
"id": null,
"jsonrpc": "2.0",
"result": {
"txid": "4089d8362dfae2680bedb0e6ebab78afe64843b16c2b7e5734b70ff1a2659eef",
"hash": "4089d8362dfae2680bedb0e6ebab78afe64843b16c2b7e5734b70ff1a2659eef",
"size": 363,
"vsize": 363,
"version": 0,
"type": 2,
"payloadversion": 0,
"payload": null,
"attributes": [
{
"usage": 129,
"data": "747970653a746578742c6d73673a46726f6d20454c4142616e6b2c456e74657220456c6173746f73202d43616c6c6973746f205375706572204e6f64652052657761726420446973747269627574696f6e"
}
],
"vin": [
{
"txid": "379a374da43484edb35abd1146f1cd12232352fb1889e07c34e5ce7b3c654152",
"vout": 1,
"sequence": 0
}
],
"vout": [
{
"value": "0.00369286",
"n": 0,
"address": "Ed57c3wF3J1u8vEYE9cjGUpqGPkEJC69v8",
"assetid": "a3d0eaa466df74983b5d7c543de6904f4c9418ead5ffd6d25814234a96db37b0",
"outputlock": 0,
"type": 0,
"payload": null
},
{
"value": "99.98892464",
"n": 1,
"address": "ERA8VusTKV78LTiEseuQC4wBPRu3BQo6rE",
"assetid": "a3d0eaa466df74983b5d7c543de6904f4c9418ead5ffd6d25814234a96db37b0",
"outputlock": 0,
"type": 0,
"payload": null
}
],
"locktime": 0,
"programs": [
{
"code": "2103bd33d4fb0697bba896790a132439f402941b6b184cdd06dddf9ce8658f0c0443ac",
"parameter": "40a1d30614cc236006f31d67b9dc74af8298692c0fd09d1236d3c50fd50a64df82864359e441efde018d47f69bbcf92e46720baa160621c2160d7830a2bebfc144"
}
]
}
}
getcrrelatedstage
Get CR related stage information.
Example
Request:
Copy {
"method": "getcrrelatedstage"
}
Response:
Copy {
"error": null,
"id": null,
"jsonrpc": "2.0",
"result": {
"onduty":true,
"ondutystartheight":1000,
"ondutyendheight":2000,
"invoting":false,
"votingstartheight":0,
"votingendheight":0
}
}