#define THROW_IF_SYNCING(INSYNC) if (INSYNC == 0) { throw runtime_error(strprintf("%s: Chain still syncing at height %d, aborting to prevent garbage data. Please wait until the chain is synced to run this RPC",__FUNCTION__,chainActive.Tip()->GetHeight())); }
"\nCompute statistics about the total number and rate of transactions in the chain.\n"
"\nCompute statistics about the total number and rate of transactions in the chain.\n"
"\nThis RPC will return a large amount of additional data if the shielded index (zindex) is enabled.\n"
"\nArguments:\n"
"\nArguments:\n"
"1. nblocks (numeric, optional) Number of blocks in averaging window.\n"
"1. nblocks (numeric, optional) Number of blocks in averaging window.\n"
"2. blockhash (string, optional) The hash of the block which ends the window.\n"
"2. blockhash (string, optional) The hash of the block which ends the window.\n"
"\nResult:\n"
"\nResult:\n"
"{\n"
"{\n"
"\"time\": xxxxx, (numeric) The timestamp for the final block in the window in UNIX format.\n"
"\"time\": xxxxx, (numeric) The timestamp for the final block in the window in UNIX format.\n"
"\"txcount\": xxxxx, (numeric) The total number of transactions in the chain up to that point.\n"
"\"txcount\": xxxxx, (numeric) The total number of transactions in the chain up to that point.\n"
"\"shielded_txcount\": xxxxx, (numeric) The total number of shielded (containing a zaddr) transactions in the chain up to that point.\n"
"\"shielding_txcount\": xxxxx, (numeric) The total number of shielding (containing a zaddr output) transactions in the chain up to that point.\n"
"\"deshielding_txcount\": xxxxx, (numeric) The total number of deshielding (containing a zaddr input) transactions in the chain up to that point.\n"
"\"fully_shielded_txcount\": xxxxx, (numeric) The total number of z2z, AKA fully-shielded (containing only zaddr inputs+outputs) transactions in the chain up to that point.\n"
"\"payments\": xxxxx, (numeric) The total number of payments in the chain up to that point.\n"
"\"shielded_payments\": xxxxx, (numeric) The total number of shielded (containing a zaddr) payments in the chain up to that point.\n"
"\"shielding_payments\": xxxxx, (numeric) The total number of shielding (containing a zaddr output) payments in the chain up to that point.\n"
"\"deshielding_payments\": xxxxx, (numeric) The total number of deshielding (containing a zaddr input) payments in the chain up to that point.\n"
"\"fully_shielded_payments\": xxxxx, (numeric) The total number of z2z, AKA fully-shielded (containing only zaddr inputs+outputs) payments in the chain up to that point.\n"
"\"notarizations\": xxxxx, (numeric) The total number of notarization transactions in the chain up to that point.\n"
"\"window_final_block_hash\": \"...\", (string) The hash of the final block in the window.\n"
"\"window_final_block_hash\": \"...\", (string) The hash of the final block in the window.\n"
"\"window_block_count\": xxxxx, (numeric) Size of the window in number of blocks.\n"
"\"window_final_block_height\": xxxxx, (numeric) Block height of final block in window.\n"
"\"window_tx_count\": xxxxx, (numeric) The number of transactions in the window. Only returned if \"window_block_count\" is > 0.\n"
"\"window_block_count\": xxxxx, (numeric) Size of the window in number of blocks.\n"
"\"window_interval\": xxxxx, (numeric) The elapsed time in the window in seconds. Only returned if \"window_block_count\" is > 0.\n"
"\"window_tx_count\": xxxxx, (numeric) The number of transactions in the window. Only returned if \"window_block_count\" is > 0.\n"
"\"txrate\": x.xx, (numeric) The average rate of transactions per second in the window. Only returned if \"window_interval\" is > 0.\n"
"\"window_interval\": xxxxx, (numeric) The elapsed time in the window in seconds. Only returned if \"window_block_count\" is > 0.\n"
"\"window_shielded_txcount\": xxxxx, (numeric) The total number of shielded (containing a zaddr) transactions in the chain up to that point.\n"
"\"window_shielding_txcount\": xxxxx, (numeric) The total number of shielding (containing a zaddr output) transactions in the chain up to that point.\n"
"\"window_deshielding_txcount\": xxxxx, (numeric) The total number of deshielding (containing a zaddr input) transactions in the chain up to that point.\n"
"\"window_fully_shielded_txcount\": xxxxx, (numeric) The total number of z2z, AKA fully-shielded (containing only zaddr inputs+outputs) transactions in the chain up to that point.\n"
"\"window_shielded_payments\": xxxxx, (numeric) The total number of shielded (containing a zaddr) payments in the chain up to that point.\n"
"\"window_shielding_payments\": xxxxx, (numeric) The total number of shielding (containing a zaddr output) payments in the chain up to that point.\n"
"\"window_deshielding_payments\": xxxxx, (numeric) The total number of deshielding (containing a zaddr input) payments in the chain up to that point.\n"
"\"window_fully_shielded_payments\": xxxxx, (numeric) The total number of z2z, AKA fully-shielded (containing only zaddr inputs+outputs) payments in the chain up to that point.\n"
"\"txrate\": x.xx, (numeric) The average rate of transactions per second in the window. Only returned if \"window_interval\" is > 0.\n"
"\"shielded\": { (string) The set of stats specific to only shieled transactions. \n"
"\"fully_shielded_tx_percent\": (numeric) The percentage of fully shielded transactions.\n"
"\"shielding_tx_percent\": (numeric) The percentage of shielding transactions.\n"
"\"deshielding_tx_percent\": (numeric) The percentage of deshielding transactions.\n"
"\"fully_shielded_payments_percent\": (numeric) The percentage of fully shielded payments.\n"
"\"shielding_payments_percent\": (numeric) The percentage of shielding payments.\n"
"\"deshielding_payments_percent\": (numeric) The percentage of deshielding payments.\n"
" },\n"
"\"organic\": { (string) The set of stats about organic transactions, i.e. those that are not coinbase and not notarizations\n"
"\"fully_shielded_tx_percent\": (numeric) The percentage of fully shielded organic transactions.\n"
"\"shielding_tx_percent\": (numeric) The percentage of shielding organic transactions.\n"
"\"deshielding_tx_percent\": (numeric) The percentage of deshielding organic transactions.\n"
"\"fully_shielded_payments_percent\": (numeric) The percentage of fully shielded organic payments.\n"
"\"shielding_payments_percent\": (numeric) The percentage of shielding organic payments.\n"
"\"deshielding_payments_percent\": (numeric) The percentage of deshielding organic payments.\n"