Removed RPCs
New site!
All content has been migrated to docs.dash.org. You will be automatically redirected momentarily.
EstimateFee
Warning: Removed in Dash Core 0.17.0.
The estimatefee
RPC estimates the transaction fee per kilobyte that needs to be paid for a transaction to begin confirmation within a certain number of blocks.
Parameter #1---how many blocks the transaction may wait before being included
Name | Type | Presence | Description |
---|---|---|---|
Blocks | number (int) | Required (exactly 1) | The maximum number of blocks a transaction should have to wait before it is predicted to be included in a block. Has to be between 2 and 25 blocks |
Result---the fee the transaction needs to pay per kilobyte
Inability to estimate
If the node doesn't have enough information to make an estimate, the value
-1
will be returned.
Name | Type | Presence | Description |
---|---|---|---|
result | number (Dash) | Required (exactly 1) | The estimated fee the transaction should pay in order to be included within the specified number of blocks. |
Examples from Dash Core 0.12.2
dash-cli estimatefee 6
Result:
0.00044345
Requesting data the node can't calculate (out of range):
dash-cli estimatefee 100
Result:
-1
See also
- SetTxFee: sets the transaction fee per kilobyte paid by transactions created by this wallet.
GetPoolInfo
The getpoolinfo
RPC returns an object containing CoinJoin pool related information.
Parameters: none
Result---information about the CoinJoin pool
Name | Type | Presence | Description |
---|---|---|---|
result | object | Required (exactly 1) | Information about the pool |
→state | string | Required (exactly 1) | Pool state. Will be one of the following: • IDLE • QUEUE • ACCEPTING_ENTRIES • SIGNING • ERROR • SUCCESS • UNKNOWN |
→mixing_mode | string | Required (exactly 1) | One of the following: • normal • multi-session |
→queue | number (int) | Required (exactly 1) | Queue size |
→entries | number (int) | Required (exactly 1) | The number of entries |
→status | string | Required (exactly 1) | A more detailed description of the current state |
→outpoint | string (hex) | Optional (exactly 1) | Previous output |
→addr | string | Optional (exactly 1) | Address |
→keys_left | number (int) | Optional (exactly 1) | The number of keys left in the local wallet |
→warnings | number (int) | Optional (exactly 1) | Warnings related to local wallet |
Example from Dash Core 0.12.2
dash-cli -testnet getpoolinfo
Result:
{
"state": "IDLE",
"mixing_mode": "normal",
"queue": 0,
"entries": 0,
"status": "PrivateSend is idle.",
"keys_left": 617,
"warnings": ""
}
{
"state": "QUEUE",
"mixing_mode": "normal",
"queue": 1,
"entries": 0,
"status": "Submitted to masternode, waiting in queue .",
"outpoint": "e3a6b7878a7e9413898bb379b323c521676f9d460db17ec3bf42d9ac0c9a432f-1",
"addr": "217.182.229.146:19999",
"keys_left": 571,
"warnings": ""
}
{
"state": "ERROR",
"mixing_mode": "normal",
"queue": 0,
"entries": 0,
"status": "PrivateSend request incomplete: Session timed out. Will retry...",
"keys_left": 571,
"warnings": ""
}
See also:
GetReceivedByAccount
Warning: Removed in Dash Core 18.0.0
Requires wallet support (unavailable on masternodes)
The getreceivedbyaccount
RPC returns the total amount received by addresses in a particular account from transactions with the specified number of confirmations. It does not count coinbase transactions.
Parameter #1---the account name
Name | Type | Presence | Description |
---|---|---|---|
Account | string | Required (exactly 1) | The name of the account containing the addresses to get. For the default account, use an empty string (\")" |
Parameter #2---the minimum number of confirmations
Name | Type | Presence | Description |
---|---|---|---|
Confirmations | number (int) | Optional (0 or 1) | The minimum number of confirmations an externally-generated transaction must have before it is counted towards the balance. Transactions generated by this node are counted immediately. Typically, externally-generated transactions are payments to this wallet and transactions generated by this node are payments to other wallets. Use 0 to count unconfirmed transactions. Default is 1 |
Parameter #3---whether to include transactions locked via InstantSend
Name | Type | Presence | Description |
---|---|---|---|
addlocked | bool | Optional (exactly 1) | Add the balance from InstantSend locked transactions (default=false) |
Result---the number of dash received
Name | Type | Presence | Description |
---|---|---|---|
result | number (dash) | Required (exactly 1) | The number of dash received by the account. May be 0 |
Example from Dash Core 0.12.2
Get the dash received by the "doc test" account with six or more
confirmations:
dash-cli -testnet getreceivedbyaccount "doc test" 6
Result:
0.30000000
See also
- GetReceivedByAddress: returns the total amount received by the specified address in transactions with the specified number of confirmations. It does not count coinbase transactions.
- GetAddressesByAccount: returns a list of every address assigned to a particular account.
- ListAccounts: lists accounts and their balances.
KeePass
Warning: Removed in Dash Core 18.0.0
The keepass
RPC provides commands for configuring and managing KeePass authentication
Parameter #1---Command mode
Name | Type | Presence | Description |
---|---|---|---|
mode | string | Required (exactly 1) | The command mode to use:genkey ,init ,setpassphrase |
Command Options
Mode | Description |
---|---|
genkey | Generates a base64 encoded 256 bit AES key that can be used for the communication with KeePassHttp. This is only necessary for manual configuration. |
init | Sets up the association between Dash Core and KeePass by generating an AES key and sending an association message to KeePassHttp. This will trigger KeePass to ask for an Id for the association. Returns the association and the base64 encoded string for the AES key. |
setpassphrase | Updates the passphrase in KeePassHttp to a new value. This should match the passphrase you intend to use for the wallet. Please note that the standard RPC commands walletpassphrasechange and the wallet encryption from the QT GUI already send the updates to KeePassHttp, so this is only necessary for manual manipulation of the password. |
Command Mode - genkey
Result---the new key
Name | Type | Presence | Description |
---|---|---|---|
Result | string (base64) | Required (exactly 1) | The new key |
Example from Dash Core 0.12.2
Manually generate a key
dash-cli -testnet keepass genkey
Result:
Generated Key: dNjo+J8Jb30txbJiKq4s9H6vEgWq/whb1w9bb2cTOFo=
Command Mode - init
Result---initialization response
Name | Type | Presence | Description |
---|---|---|---|
Result | string | Required (exactly 1) | The success/error status |
Example from Dash Core 0.12.2
Automatically initialize
dash-cli -testnet keepass init
Result (wrapped):
Association successful. Id: testwalletassociation - \
Key: MSb+JLygqz7ZH40SyJ1QR62i00IXoa3tmT85MGGI2K0=
Command Mode - setpassphrase
Parameter #2---Passphrase
Name | Type | Presence | Description |
---|---|---|---|
Passphrase | string | Required (exactly 1) | The passphrase to set |
Result---status
Name | Type | Presence | Description |
---|---|---|---|
Result | string | Required (exactly 1) | The success/error status |
Example from Dash Core 0.12.2
Set KeePass passphrase
dash-cli -testnet keepass setpassphrase 1BWi20Xyk76uWumxJQy4
Result:
setlogin: Updated credentials.
See also: none
ListAccounts
Warning: Removed in Dash Core 18.0.0
Requires wallet support (unavailable on masternodes)
The listaccounts
RPC lists accounts and their balances.
Parameter #1---the minimum number of confirmations a transaction must have
Name | Type | Presence | Description |
---|---|---|---|
Confirmations | number (int) | Optional (0 or 1) | The minimum number of confirmations an externally-generated transaction must have before it is counted towards the balance. Transactions generated by this node are counted immediately. Typically, externally-generated transactions are payments to this wallet and transactions generated by this node are payments to other wallets. Use 0 to count unconfirmed transactions. Default is 1 |
Parameter #2--- whether to include transactions locked via InstantSend
Name | Type | Presence | Description |
---|---|---|---|
addlocked | bool | Optional (exactly 1) | Add the balance from InstantSend locked transactions |
Parameter #3---whether to include watch-only addresses in results
Name | Type | Presence | Description |
---|---|---|---|
Include Watch-Only | bool | Optional (0 or 1) | If set to true , include watch-only addresses in details and calculations as if they were regular addresses belonging to the wallet. If set to false (the default), treat watch-only addresses as if they didn't belong to this wallet |
Result---a list of accounts and their balances
Name | Type | Presence | Description |
---|---|---|---|
result | object | Required (exactly 1) | A JSON array containing key/value pairs with account names and values. Must include, at the very least, the default account (\")" |
→ Account : Balance | string : number (dash) | Required (1 or more) | The name of an account as a string paired with the balance of the account as a number of dash. The number of dash may be negative if the account has spent more dash than it received. Accounts with zero balances and zero transactions will be displayed |
Example from Dash Core 0.13.0
Display account balances with one confirmation and watch-only addresses
included. Add the balance of InstantSend locked transactions also.
dash-cli -testnet listaccounts 1 true true
Result:
{
"": -2941.30029732,
"Watching": 8.50000000,
"MN": 2000.25442744,
"PS": 37.02970000,
"Recv1": 3843.48167912,
}
See also
- GetAccount: returns the name of the account associated with the given address.
- GetAddressesByAccount: returns a list of every address assigned to a particular account.
- ListReceivedByAccount: lists the total number of dash received by each account.
- ListReceivedByLabel: lists the total number of dash received by each label.
ListReceivedByAccount
Warning: Removed in Dash Core 18.0.0
Requires wallet support (unavailable on masternodes)
The listreceivedbyaccount
RPC lists the total number of dash received by each account.
Parameter #1---the minimum number of confirmations a transaction must have to be counted
Name | Type | Presence | Description |
---|---|---|---|
Confirmations | number (int) | Optional (0 or 1) | The minimum number of confirmations an externally-generated transaction must have before it is counted towards the balance. Transactions generated by this node are counted immediately. Typically, externally-generated transactions are payments to this wallet and transactions generated by this node are payments to other wallets. Use 0 to count unconfirmed transactions. Default is 1 |
Parameter #2---whether to include transactions locked via InstantSend
Name | Type | Presence | Description |
---|---|---|---|
addlocked | bool | Optional (exactly 1) | Add the balance from InstantSend locked transactions |
Parameter #3---whether to include empty accounts
Name | Type | Presence | Description |
---|---|---|---|
Include Empty | bool | Optional (0 or 1) | Set to true to display accounts which have never received a payment. Set to false (the default) to only include accounts which have received a payment. Any account which has received a payment will be displayed even if its current balance is 0 |
Parameter #4---whether to include watch-only addresses in results
Name | Type | Presence | Description |
---|---|---|---|
Include Watch-Only | bool | Optional (0 or 1) | If set to true , include watch-only addresses in details and calculations as if they were regular addresses belonging to the wallet. If set to false (the default), treat watch-only addresses as if they didn't belong to this wallet |
Result---account names, balances, and minimum confirmations
Name | Type | Presence | Description |
---|---|---|---|
result | array | Required (exactly 1) | An array containing objects each describing an account. At the very least, the default account (\") will be included" |
→ Account | object | Required (1 or more) | An object describing an account |
→ →involvesWatchonly | bool | Optional (0 or 1) | Set to true if the balance of this account includes a watch-only address which has received a spendable payment (that is, a payment with at least the specified number of confirmations and which is not an immature coinbase). Otherwise not returned |
→ →account | string | Required (exactly 1) | The name of the account |
→ →amount | number (dash) | Required (exactly 1) | The total amount received by this account in dash |
→ →confirmations | number (int) | Required (exactly 1) | The number of confirmations received by the last transaction received by this account. May be 0 |
→ →label | string | Optional (0 or 1) | A comment for the address/transaction |
Example from Dash Core 0.13.0
Get the balances for all non-empty accounts, including transactions
which have been confirmed at least six times and InstantSend locked transactions:
dash-cli -testnet listreceivedbyaccount 6 true false true
Result (edited to only show the first two results):
[
{
"account" : "",
"amount" : 0.19960000,
"confirmations" : 53601
},
{
"account" : "doc test",
"amount" : 0.30000000,
"confirmations" : 8991
}
]
See also
- ListReceivedByAddress: lists the total number of dash received by each address.
- ListReceivedByLabel: lists the total number of dash received by each label.
- GetReceivedByAccount: returns the total amount received by addresses in a particular account from transactions with the specified number of confirmations. It does not count coinbase transactions.
- GetReceivedByAddress: returns the total amount received by the specified address in transactions with the specified number of confirmations. It does not count coinbase transactions.
Move
Warning: Removed in Dash Core 18.0.0
Requires wallet support (unavailable on masternodes)
The move
RPC moves a specified amount from one account in your wallet to another using an off-block-chain transaction.
Warning: it's possible to move more funds than are in an account, giving the sending account a negative balance and giving the receiving account a balance that may exceed the number of dash in the wallet (or the number of dash in existence).
Parameter #1---from account
Name | Type | Presence | Description |
---|---|---|---|
From Account | string | Required (exactly 1) | The name of the account to move the funds from |
Parameter #2---to account
Name | Type | Presence | Description |
---|---|---|---|
To Account | string | Required (exactly 1) | The name of the account to move the funds to |
Parameter #3---amount to move
Name | Type | Presence | Description |
---|---|---|---|
Amount | number (dash) | Required (exactly 1) | The amount of dash to move |
Parameter #4---an unused parameter
Name | Type | Presence | Description |
---|---|---|---|
Unused | number (int) | Optional (0 or 1) | This parameter is no longer used. If parameter #5 needs to be specified, this can be any integer |
Parameter #5---a comment
Name | Type | Presence | Description |
---|---|---|---|
Comment | string | Optional (0 or 1) | A comment to assign to this move payment |
Result---true
on success
Name | Type | Presence | Description |
---|---|---|---|
result | bool | Required (exactly 1) | Set to true if the move was successful |
Example from Dash Core 0.12.2
Move 1 dash from "doc test" to "test1", giving the transaction the
comment "Example move":
dash-cli -testnet move "doc test" "test1" 0.1 0 "Example move"
Result:
true
See also
- ListAccounts: lists accounts and their balances.
- SendToAddress: spends an amount to a given address.
SendFrom
Warning: Removed in Dash Core 18.0.0
Requires wallet support (unavailable on masternodes). Requires an unlocked wallet or an unencrypted wallet.
The sendfrom
RPC spends an amount from a local account to a dash address.
Parameter #1---from account
Name | Type | Presence | Description |
---|---|---|---|
From Account | string | Required (exactly 1) | The name of the account from which the dash should be spent. Use an empty string (\") for the default account" |
Parameter #2---to address
Name | Type | Presence | Description |
---|---|---|---|
To Address | string | Required (exactly 1) | A P2PKH or P2SH address to which the dash should be sent |
Parameter #3---amount to spend
Name | Type | Presence | Description |
---|---|---|---|
Amount | number (dash) | Required (exactly 1) | The amount to spend in dash. Dash Core will ensure the account has sufficient dash to pay this amount (but the transaction fee paid is not included in the calculation, so an account can spend a total of its balance plus the transaction fee) |
Parameter #4---minimum confirmations
Name | Type | Presence | Description |
---|---|---|---|
Confirmations | number (int) | Optional (0 or 1) | The minimum number of confirmations an incoming transaction must have for its outputs to be credited to this account's balance. Outgoing transactions are always counted, as are move transactions made with the move RPC. If an account doesn't have a balance high enough to pay for this transaction, the payment will be rejected. Use 0 to spend unconfirmed incoming payments. Default is 1 |
Warning: if account1 receives an unconfirmed payment and transfers it to account2 with the
move
RPC, account2 will be able to spend those dash even if this parameter is set to1
or higher.
Parameter #5---whether to add the balance from transactions locked via InstantSend
Name | Type | Presence | Description |
---|---|---|---|
addlocked | bool | Optional (0 or 1) | If set to true , add the balance from InstantSend locked transactions. If set to false (the default), InstantSend locked transaction balances are not included. |
Parameter #6---a comment
Name | Type | Presence | Description |
---|---|---|---|
Comment | string | Optional (0 or 1) | A locally-stored (not broadcast) comment assigned to this transaction. Default is no comment |
Parameter #7---a comment about who the payment was sent to
Name | Type | Presence | Description |
---|---|---|---|
Comment To | string | Optional (0 or 1) | A locally-stored (not broadcast) comment assigned to this transaction. Meant to be used for describing who the payment was sent to. Default is no comment |
Result---a TXID of the sent transaction
Name | Type | Presence | Description |
---|---|---|---|
result | string | Required (exactly 1) | The TXID of the sent transaction, encoded as hex in RPC byte order |
Example from Dash Core 0.12.2
Spend 0.1 dash from the account "test" to the address indicated below
using only UTXOs with at least six confirmations, giving the
transaction the comment "Example spend" and labeling the spender
"Example.com":
dash-cli -testnet sendfrom "test" \
yhJays6zGUFKq1KS5V5WLbyk3cwCXyGrKd \
0.1 \
6 \
false \
"Example spend" \
"Example.com"
Result:
cd64b9d55c63bf247f2eca32f978e340622107b607a46c422dabcdc20c0571fe
See also
- SendToAddress: spends an amount to a given address.
- SendMany: creates and broadcasts a transaction which sends outputs to multiple addresses.
SignRawTransaction
Warning: Removed in Dash Core 18.0.0
The signrawtransaction
RPC signs a transaction in the serialized transaction format using private keys stored in the wallet or provided in the call.
Parameter #1---the transaction to sign
Name | Type | Presence | Description |
---|---|---|---|
Transaction | string (hex) | Required (exactly 1) | The transaction to sign as a serialized transaction |
Parameter #2---unspent transaction output details
Name | Type | Presence | Description |
---|---|---|---|
Dependencies | array | Optional (0 or 1) | The previous outputs being spent by this transaction |
→ Output | object | Optional (0 or more) | An output being spent |
→ →txid | string (hex) | Required (exactly 1) | The TXID of the transaction the output appeared in. The TXID must be encoded in hex in RPC byte order |
→ →vout | number (int) | Required (exactly 1) | The index number of the output (vout) as it appeared in its transaction, with the first output being 0 |
→ →scriptPubKey | string (hex) | Required (exactly 1) | The output's pubkey script encoded as hex |
→ →redeemScript | string (hex) | Optional (0 or 1) | If the pubkey script was a script hash, this must be the corresponding redeem script |
→ →amount | numeric | Required (exactly 1) | The amount of Dash spent |
Parameter #3---private keys for signing
Name | Type | Presence | Description |
---|---|---|---|
Private Keys | array | Optional (0 or 1) | An array holding private keys. If any keys are provided, only they will be used to sign the transaction (even if the wallet has other matching keys). If this array is empty or not used, and wallet support is enabled, keys from the wallet will be used |
→ Key | string (base58) | Required (1 or more) | A private key in base58check format to use to create a signature for this transaction |
Parameter #4---signature hash type
Name | Type | Presence | Description | |||
---|---|---|---|---|---|---|
SigHash | string | Optional (0 or 1) | The type of signature hash to use for all of the signatures performed. (You must use separate calls to the signrawtransaction RPC if you want to use different signature hash types for different signatures. The allowed values are: ALL , NONE , SINGLE , `ALL | ANYONECANPAY, NONE | ANYONECANPAY, and SINGLE | ANYONECANPAY` |
Result---the transaction with any signatures made
Name | Type | Presence | Description |
---|---|---|---|
result | object | Required (exactly 1) | The results of the signature |
→hex | string (hex) | Required (exactly 1) | The resulting serialized transaction encoded as hex with any signatures made inserted. If no signatures were made, this will be the same transaction provided in parameter #1 |
→complete | bool | Required (exactly 1) | The value true if transaction is fully signed; the value false if more signatures are required |
Example from Dash Core 0.12.2
Sign the hex generated in the example section for the createrawtransaction
RPC:
dash-cli -testnet signrawtransaction 01000000016b490886c0198b028c6c5cb14\
5c4eb3b1055a224a7a105aadeff41b69ec91e060100000000ffffffff0200205fa012000\
0001976a914485485425fa99504ec1638ac4213f3cfc9f32ef388acc0a8f9be010000001\
976a914811eacc14db8ebb5b64486dc43400c0226b428a488ac00000000
Result:
{
"hex": "01000000016b490886c0198b028c6c5cb145c4eb3b1055a224a7a105aadeff41b69ec91e060100000069463043022033a61c56fa0867ed67b76b023204a9dc0ee6b0d63305dc5f65fe94335445ff2f021f712f55399d5238fc7146497c431fc4182a1de0b96fc22716e0845f561d542e012102eacba539d92eb88d4e73bb32749d79f53f6e8d7947ac40a71bd4b26c13b6ec29ffffffff0200205fa0120000001976a914485485425fa99504ec1638ac4213f3cfc9f32ef388acc0a8f9be010000001976a914811eacc14db8ebb5b64486dc43400c0226b428a488ac00000000",
"complete": true
}
See also
- CombineRawTransaction: combine multiple partially signed transactions into one transaction.
- CreateRawTransaction: creates an unsigned serialized transaction that spends a previous output to a new output with a P2PKH or P2SH address. The transaction is not stored in the wallet or transmitted to the network.
- DecodeRawTransaction: decodes a serialized transaction hex string into a JSON object describing the transaction.
- SendRawTransaction: validates a transaction and broadcasts it to the peer-to-peer network.
- SignRawTransactionWithKey: signs inputs for a transaction in the serialized transaction format using private keys provided in the call.
Generate
Warning: Removed in Dash Core 18.1.0
The generate
RPC mines blocks immediately (before the RPC call returns).
Parameter #1---the number of blocks to generate
Name | Type | Presence | Description |
---|---|---|---|
numblocks | number (int) | Required (exactly 1) | The number of blocks to generate. The RPC call will not return until all blocks have been generated. |
Parameter #2---the number of iterations
Name | Type | Presence | Description |
---|---|---|---|
maxtries | number (int) | Required (exactly 1) | The number of iterations to try (default = 1000000). |
Result---the generated block header hashes
Name | Type | Presence | Description |
---|---|---|---|
result | array | Required (exactly 1) | An array containing the block header hashes of the generated blocks (may be empty if used with generate 0 ) |
→ Header Hashes | string (hex) | Required (1 or more) | The hashes of the headers of the blocks generated in regtest mode, as hex in RPC byte order |
Example from Dash Core 0.12.2
Using regtest mode, generate 2 blocks:
dash-cli -regtest generate 2
Result:
[
"55a4c47da8151c0823eec22c41ebc6d690a0288302179625bae9eb6f36808266",
"3f07b9aa4e3bcd5518610945c4a6b32699acac71b1762605ff79ba553111fc79"
]
See also
- GenerateToAddress: mines blocks immediately to a specified address.
- GetBlockTemplate: gets a block template or proposal for use with mining software.
- GetMiningInfo: returns various mining-related information.
Updated over 1 year ago