getblocktemplate - Zcash 5.10.0 RPC
getblocktemplate ( "jsonrequestobject" ) If the request parameters include a 'mode' key, that is used to explicitly select between the default 'template' request or a 'proposal'. It returns data needed to construct a block to work on. See https://en.bitcoin.it/wiki/BIP_0022 for full specification. To obtain information about founder's reward or funding stream amounts, use 'getblocksubsidy HEIGHT' passing in the height returned by this API. The roots returned in 'defaultroots' are only valid if the block template is used unmodified. If any part of the block template marked as 'mutable' in the output is mutated, these roots may need to be recomputed. For more information on the derivation process, see ZIP 244. Arguments: 1. "jsonrequestobject" (string, optional) A json object in the following spec { "mode":"template," (string, optional) This must be set to "template" or omitted "capabilities":[ (array, optional) A list of strings "support" (string) client side supported feature, 'longpoll', 'coinbasetxn', 'coinbasevalue', 'proposal', 'serverlist', 'workid' ,... ], "longpollid":"id" (string, optional) id to wait for } Result: { "version" : n, (numeric) The block version "previousblockhash" : "xxxx", (string) The hash of current highest block "blockcommitmentshash" : "xxxx", (string) (DEPRECATED) The hash of the block commitments field in the block header "lightclientroothash" : "xxxx", (string) (DEPRECATED) The hash of the light client root field in the block header "finalsaplingroothash" : "xxxx", (string) (DEPRECATED) The hash of the light client root field in the block header "defaultroots" : { (json object) root hashes that need to be recomputed if the transaction set is modified "merkleroot" : "xxxx" (string) The hash of the transactions in the block header "chainhistoryroot" : "xxxx" (string) The hash of the chain history "authdataroot" : "xxxx" (string) (From NU5) The hash of the authorizing data merkel tree "blockcommitmentshash" : "xxxx" (string) (From NU5) The hash of the block commitments field in the block header } "transactions" : [ (array) contents of non-coinbase transactions that should be included in the next block { "data" : "xxxx", (string) transaction data encoded in hexadecimal (byte-for-byte) "hash" : "xxxx", (string) hash/id encoded in little-endian hexadecimal "depends" : [ (array) array of numbers n (numeric) transactions before this one (by 1-based index in 'transactions' list) that must be present in the final block if this one is ,... ], "fee": n, (numeric) difference in value between transaction inputs and outputs (in zatoshis); for coinbase transactions, this is a negative Number of the total collected block fees (i.e., not including the block subsidy); if key is not present, fee is unknown and clients MUST NOT assume there isn't one "sigops" : n, (numeric) total number of SigOps, as counted for purposes of block limits; if key is not present, sigop count is unknown and clients MUST NOT assume there aren't any "required" : true|false (boolean) if provided and true, this transaction must be in the final block } ,... ], "coinbasetxn" : { ... }, (json object) information for coinbase transaction "target" : "xxxx", (string) The hash target "longpollid" : "str", (string) an id to include with a request to longpoll on an update to this template "mintime" : xxx, (numeric) The minimum timestamp appropriate for next block time in seconds since epoch (Jan 1 1970 GMT) "mutable" : [ (array of string) list of ways the block template may be changed "value" (string) A way the block template may be changed, e.g. 'time', 'transactions', 'prevblock' ,... ], "noncerange" : "00000000ffffffff", (string) A range of valid nonces "sigoplimit" : n, (numeric) limit of sigops in blocks "sizelimit" : n, (numeric) limit of block size "curtime" : ttt, (numeric) current timestamp in seconds since epoch (Jan 1 1970 GMT) "bits" : "xxx", (string) compressed target of next block "height" : n (numeric) The height of the next block } Examples: > zcash-cli getblocktemplate > curl --user myusername --data-binary '{"jsonrpc": "1.0", "id":"curltest", "method": "getblocktemplate", "params": [] }' -H 'content-type: text/plain;' http://127.0.0.1:8232/
Maintained by @_garethtdavies; modified by: mdr0id;license of the docs is MIT (see zcash repo), license of the scripts and webpage is also MIT (github repo)
Note it uses a mainnet zcash node
Blockchain
Generating
Mining
Network
Rawtransactions
Wallet
addmultisigaddress
backupwallet
dumpprivkey
encryptwallet
getbalance
getnewaddress
getrawchangeaddress
getreceivedbyaddress
gettransaction
getunconfirmedbalance
getwalletinfo
importaddress
importprivkey
importpubkey
importwallet
keypoolrefill
listaddresses
listaddressgroupings
listlockunspent
listreceivedbyaddress
listsinceblock
listtransactions
listunspent
lockunspent
sendmany
sendtoaddress
settxfee
signmessage
walletconfirmbackup
z_converttex
z_exportkey
z_exportviewingkey
z_exportwallet
z_getaddressforaccount
z_getbalance
z_getbalanceforaccount
z_getbalanceforviewingkey
z_getmigrationstatus
z_getnewaccount
z_getnewaddress
z_getnotescount
z_getoperationresult
z_getoperationstatus
z_gettotalbalance
z_importkey
z_importviewingkey
z_importwallet
z_listaccounts
z_listaddresses
z_listoperationids
z_listreceivedbyaddress
z_listunifiedreceivers
z_listunspent
z_mergetoaddress
z_sendmany
z_setmigration
z_shieldcoinbase
z_viewtransaction
zcbenchmark
zcsamplejoinsplit
backupwallet
dumpprivkey
encryptwallet
getbalance
getnewaddress
getrawchangeaddress
getreceivedbyaddress
gettransaction
getunconfirmedbalance
getwalletinfo
importaddress
importprivkey
importpubkey
importwallet
keypoolrefill
listaddresses
listaddressgroupings
listlockunspent
listreceivedbyaddress
listsinceblock
listtransactions
listunspent
lockunspent
sendmany
sendtoaddress
settxfee
signmessage
walletconfirmbackup
z_converttex
z_exportkey
z_exportviewingkey
z_exportwallet
z_getaddressforaccount
z_getbalance
z_getbalanceforaccount
z_getbalanceforviewingkey
z_getmigrationstatus
z_getnewaccount
z_getnewaddress
z_getnotescount
z_getoperationresult
z_getoperationstatus
z_gettotalbalance
z_importkey
z_importviewingkey
z_importwallet
z_listaccounts
z_listaddresses
z_listoperationids
z_listreceivedbyaddress
z_listunifiedreceivers
z_listunspent
z_mergetoaddress
z_sendmany
z_setmigration
z_shieldcoinbase
z_viewtransaction
zcbenchmark
zcsamplejoinsplit