Dash RPCs
GetGovernanceInfo
The getgovernanceinfo
RPC returns an object containing governance parameters.
Parameters: none
Result---information about the governance system
Name | Type | Presence | Description |
---|---|---|---|
result | object | Required (exactly 1) | Information about the governance system |
→governanceminquorum | number (int) | Required (exactly 1) | The absolute minimum number of votes needed to trigger a governance action |
→proposalfee | number (int) | Required (exactly 1) | The collateral transaction fee which must be paid to create a proposal in Dash |
→superblockcycle | number (int) | Required (exactly 1) | The number of blocks between superblocks |
→lastsuperblock | number (int) | Required (exactly 1) | The block number of the last superblock |
→nextsuperblock | number (int) | Required (exactly 1) | The block number of the next superblock |
Example from Dash Core 0.14.0
dash-cli -testnet getgovernanceinfo
Result:
{
"governanceminquorum": 1,
"proposalfee": 5.00000000,
"superblockcycle": 24,
"lastsuperblock": 250824,
"nextsuperblock": 250848
}
See also:
- GObject: provides a set of commands for managing governance objects and displaying information about them.
GetPoolInfo
The getpoolinfo
RPC returns an object containing mixing pool related information.
Parameters: none
Result---information about the mixing pool
Name | Type | Presence | Description |
---|---|---|---|
result | object | Required (exactly 1) | Information about the mixing pool |
→state | string | Required (exactly 1) | Mixing pool state. Will be one of the following: • IDLE • QUEUE • ACCEPTING_ENTRIES • SIGNING • ERROR • SUCCESS • UNKNOWN |
→mixing_mode | string | Required (exactly 1) | Mixing mode - will be 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:
GetPrivateSendInfo
The getprivatesendinfo
RPC returns an object containing an information about PrivateSend settings and state.
Parameters: none
Result---(for regular nodes) information about the mixing pool
Name | Type | Presence | Description |
---|---|---|---|
result | object | Required (exactly 1) | Information about the mixing pool |
→enabled | bool | Required (exactly 1) | Whether mixing functionality is enabled |
→multisession | bool | Required (exactly 1) | Whether PrivateSend Multisession option is enabled |
→max_sessions | number (int) | Required (exactly 1) | How many parallel mixing sessions can there be at once |
→max_rounds | number (int) | Required (exactly 1) | How many rounds to mix |
→max_amount | number (int) | Required (exactly 1) | How many DASH to keep anonymized |
→max_denoms | number (int) | Required (exactly 1) | Removed in Dash Core 0.16.0 How many inputs of each denominated amount to create |
→denoms_goal | number (int) | Required (exactly 1) | Added in Dash Core 0.16.0 How many inputs of each denominated amount to target |
→denoms_hardcap | number (int) | Required (exactly 1) | Added in Dash Core 0.16.0 Maximum limit of how many inputs of each denominated amount to create |
→queue_size | number (int) | Required (exactly 1) | How many queues there are currently on the network |
→running | bool | Required (exactly 1) | Whether mixing is currently running |
→sessions | array of json objects | Required (exactly 1) | Information about session(s) |
→ → Session | object | Optional (1 or more) | Information for a session |
→ → →protxhash | string | Required (exactly 1) | The ProTxHash of the masternode |
→ → →outpoint | string (txid-index) | Required (exactly 1) | The outpoint of the masternode |
→ → →service | string (host:port) | Required (exactly 1) | The IP address and port of the masternode |
→ → →denomination | number (int) | Required (exactly 1) | The denomination of the mixing session in DASH |
→ → →state | string | Required (exactly 1) | Current state of the mixing session |
→ → →entries_count | number (int) | Required (exactly 1) | The number of entries in the mixing session |
→keys_left | number (int) | Required (exactly 1) | How many new keys are left since last automatic backup |
→warnings | string | Optional (exactly 1) | Any warnings |
Result---(for masternodes) information about the mixing pool
Name | Type | Presence | Description |
---|---|---|---|
result | object | Required (exactly 1) | Information about the mixing pool |
→queue_size | number (int) | Required (exactly 1) | How many queues there are currently on the network |
→denomination | number (int) | Required (exactly 1) | The denomination of the mixing session in DASH |
→state | string | Required (exactly 1) | Current state of the mixing session |
→entries_count | number (int) | Required (exactly 1) | The number of entries in the mixing session |
Example from Dash Core 0.16.0 (regular node)
dash-cli -testnet getprivatesendinfo
Result:
{
"enabled": true,
"multisession": true,
"max_sessions": 4,
"max_rounds": 16,
"max_amount": 2000,
"denoms_goal": 50,
"denoms_hardcap": 300,
"queue_size": 3,
"running": true,
"sessions": [
{
"protxhash": "0515c9a411df0f1bd9940d9a2e4f6d739c29c52fc8c045c383f1ff6acc87c7b7",
"outpoint": "0a6520a6ef523de71fd0ca70441e1fd648483f094442d986b24e2c9391be61cf-29",
"service": "54.170.119.85:26216",
"denomination": 10.00010000,
"state": "QUEUE",
"entries_count": 0
}
],
"keys_left": 998,
"warnings": ""
}
See also: none
GetSuperblockBudget
The getsuperblockbudget
RPC returns the absolute maximum sum of superblock payments allowed.
Parameter #1---block index
Name | Type | Presence | Description |
---|---|---|---|
index | number (int) | Required (exactly 1) | The superblock index |
Result---maximum sum of superblock payments
Name | Type | Presence | Description |
---|---|---|---|
result | number (int) | Required (exactly 1) | The absolute maximum sum of superblock payments allowed, in DASH |
Example from Dash Core 0.12.2
dash-cli -testnet getsuperblockbudget 7392
Result:
367.20
See also:
- GetGovernanceInfo: returns an object containing governance parameters.
GObject
The gobject
RPC provides a set of commands for managing governance objects and displaying information about them.
GObject Check
The gobject check
RPC validates governance object data (proposals only).
Parameter #1---object data (hex)
Name | Type | Presence | Description |
---|---|---|---|
data-hex | string (hex) | Required (exactly 1) | The data (hex) of a governance proposal object |
Result---governance object status
Name | Type | Presence | Description |
---|---|---|---|
Result | object | Required (exactly 1) | Object containing status |
→Object Status | string | Required (exactly 1) | Status of the governance object |
Example from Dash Core 0.14.0
dash-cli -testnet gobject check 7b22656e645f65706f6368223a3135363034353730\
35352c226e616d65223a2274657374222c227061796d656e745f61646472657373223a22796\
4354b4d52457333474c4d65366d544a597233597248316a75774e777246436642222c227061\
796d656e745f616d6f756e74223a352c2273746172745f65706f6368223a313536303435333\
439302c2274797065223a312c2275726c223a22687474703a2f2f746573742e636f6d227d
Result:
{
"Object status": "OK"
}
GObject Prepare
The gobject prepare
RPC prepares a governance object by signing and creating a collateral transaction.
Parameter #1---parent hash
Name | Type | Presence | Description |
---|---|---|---|
parent-hash | string (hex) | Required (exactly 1) | Hash of the parent object. Usually the root node which has a hash of 0 |
Parameter #2---revision
Name | Type | Presence | Description |
---|---|---|---|
revision | int | Required (exactly 1) | Object revision number |
Parameter #3---time
Name | Type | Presence | Description |
---|---|---|---|
time | int64_t | Required (exactly 1) | Create time (Unix epoch time) |
Parameter #4---data
Name | Type | Presence | Description |
---|---|---|---|
data-hex | string (hex) | Required (exactly 1) | Updated in Dash Core 0.14.0 to require all new proposals to use JSON serialization. Object data (JSON object with governance details). Additional details regarding this are provided in an example below. |
Parameter #5---use-IS
Name | Type | Presence | Description |
---|---|---|---|
use-IS | boolean | Optional (0 or 1) | Deprecated and ignored since Dash Core 0.15.0 |
Parameter #6---outputHash
Name | Type | Presence | Description |
---|---|---|---|
outputHash | string (hex) | Optional (0 or 1) | Added in Dash Core 0.13.0 The single output to submit the proposal fee from |
Parameter #7---outputIndex
Name | Type | Presence | Description |
---|---|---|---|
outputIndex | numeric | Optional (0 or 1) | Added in Dash Core 0.13.0 The output index (required if the outputHash parameter is provided) |
Result---collateral transaction ID
Name | Type | Presence | Description |
---|---|---|---|
result | string (hex) | Required (exactly 1) | Transaction ID for the collateral transaction |
Details of the data-hex
field:
The data-hex
field is comprised of a JSON object as described in GObject
Deserialize which is serialized to hex.
An example of a proposal JSON object is shown here:
{
"end_epoch": 1560457055,
"name": "test",
"payment_address": "yd5KMREs3GLMe6mTJYr3YrH1juwNwrFCfB",
"payment_amount": 5,
"start_epoch": 1560453490,
"type": 1,
"url": "http://test.com"
}
To serialize the object, first remove all spaces from the JSON object as shown below:
{"end_epoch":1560457055,"name":"test","payment_address":"yd5KMREs3GLMe6mTJYr3YrH1juwNwrFCfB","payment_amount":5,"start_epoch":1560453490,"type":1,"url":"http://test.com"}
Then convert the string to its hex equivalent as shown below. This is what will
be used for the data-hex
field of the gobject prepare
command:
7b22656e645f65706f6368223a313536303435373035352c226e616d65223a2274657374222c\
227061796d656e745f61646472657373223a227964354b4d52457333474c4d65366d544a5972\
33597248316a75774e777246436642222c227061796d656e745f616d6f756e74223a352c2273\
746172745f65706f6368223a313536303435333439302c2274797065223a312c2275726c223a\
22687474703a2f2f746573742e636f6d227d
Example from Dash Core 0.14.0
gobject prepare 0 1 1560449223 7b22656e645f65706f6368223a3135363034353730353\
52c226e616d65223a2274657374222c227061796d656e745f61646472657373223a227964354\
b4d52457333474c4d65366d544a597233597248316a75774e777246436642222c227061796d6\
56e745f616d6f756e74223a352c2273746172745f65706f6368223a313536303435333439302\
c2274797065223a312c2275726c223a22687474703a2f2f746573742e636f6d227d
Result (Collateral Transaction ID):
3fd758e7a5761bb07b2850b8ba432ef42c1ea80f0921d2eab0682697dda78262
GObject Submit
The gobject submit
RPC submits a governance object to network (objects must
first be prepared via gobject prepare
).
Note: Parameters 1-4 should be the same values as the ones used for gobject prepare
.
Parameter #1---parent hash
Name | Type | Presence | Description |
---|---|---|---|
parent-hash | string (hex) | Required (exactly 1) | Hash of the parent object. Usually the root node which has a hash of 0 |
Parameter #2---revision
Name | Type | Presence | Description |
---|---|---|---|
revision | int | Required (exactly 1) | Object revision number |
Parameter #3---time
Name | Type | Presence | Description |
---|---|---|---|
time | int64_t | Required (exactly 1) | Create time |
Parameter #4---data
Name | Type | Presence | Description |
---|---|---|---|
data-hex | string (hex) | Required (exactly 1) | Updated in Dash Core 0.14.0 to require all new proposals to use JSON serialization. Object data (JSON object with governance details). See GObject Prepare for additional details about this field. |
Parameter #5---fee transaction ID
Name | Type | Presence | Description |
---|---|---|---|
data | string (hex) | Required (exactly 1) | Fee transaction ID - required for all objects except triggers |
Result---governance object hash
Name | Type | Presence | Description |
---|---|---|---|
result | string (hex) | Required (exactly 1) | Governance object hash |
Example from Dash Core 0.14.0
dash-cli -testnet gobject submit 0 1 1560449223 7b22656e645f65706f6368223a3\
13536303435373035352c226e616d65223a2274657374222c227061796d656e745f61646472\
657373223a227964354b4d52457333474c4d65366d544a597233597248316a75774e7772464\
36642222c227061796d656e745f616d6f756e74223a352c2273746172745f65706f6368223a\
313536303435333439302c2274797065223a312c2275726c223a22687474703a2f2f7465737\
42e636f6d227d \
3fd758e7a5761bb07b2850b8ba432ef42c1ea80f0921d2eab0682697dda78262
Result (Governance Object Hash):
e353b2ab5f7e7cb24b95e00e153ec2a6339249672f18b8e8e144aa711678710d
GObject Deserialize
The gobject deserialize
RPC deserializes a governance object from a hex string to JSON.
Parameter #1---object data (hex)
Name | Type | Presence | Description |
---|---|---|---|
hex_data | string (hex) | Required (exactly 1) | The data (hex) of a governance object |
Results
The result output varies depending on the type of governance object being
deserialized. Examples are shown below for both proposal and trigger object types.
Result - Proposal
Result---governance proposal object deserialized to JSON
Name | Type | Presence | Description |
---|---|---|---|
Result | object | Required (exactly 1) | Array of governance objects |
→ →end_epoch | string | Required (exactly 1) | Governance object info as string |
→ →name | string (hex) | Required (exactly 1) | Proposal name |
→ →payment_address | string (hex) | Required (exactly 1) | Proposal payment address |
→ →payment_amount | string | Required (exactly 1) | Proposal payment amount |
→ →start_epoch | string (hex) | Required (exactly 1) | Proposal start |
→ →type | int | Required (exactly 1) | Object type |
→ →url | string | Required (exactly 1) | Proposal URL |
Example from Dash Core 0.14.0
dash-cli -testnet gobject deserialize 7b22656e645f65706f6368223a313536303435\
373035352c226e616d65223a2274657374222c227061796d656e745f61646472657373223a22\
7964354b4d52457333474c4d65366d544a597233597248316a75774e777246436642222c2270\
61796d656e745f616d6f756e74223a352c2273746172745f65706f6368223a31353630343533\
3439302c2274797065223a312c2275726c223a22687474703a2f2f746573742e636f6d227d
Result:
{
"end_epoch": 1560457055,
"name": "test",
"payment_address": "yd5KMREs3GLMe6mTJYr3YrH1juwNwrFCfB",
"payment_amount": 5,
"start_epoch": 1560453490,
"type": 1,
"url": "http://test.com"
}
Result - Trigger
Result---governance trigger object deserialized to JSON
Name | Type | Presence | Description |
---|---|---|---|
Result | object | Required (exactly 1) | Array of governance objects |
→ →event_block_height | int | Required (exactly 1) | Block height to activate trigger |
→ →payment_addresses | string (hex) | Required (exactly 1) | Proposal payment address |
→ →payment_amounts | string | Required (exactly 1) | Proposal payment amount |
→ →proposal_hashes | string (hex) | Required (exactly 1) | Proposal hashes |
→ →type | int | Required (exactly 1) | Object type |
Example from Dash Core 0.14.0
dash-cli -testnet gobject deserialize 7b226576656e745f626c6f636b5f68656967687\
4223a203131393539322c20227061796d656e745f616464726573736573223a20227954686d6e\
75565a316765516e79776f456147627079333362695435473573587a62222c20227061796d656\
e745f616d6f756e7473223a2022312e3335393631393331222c202270726f706f73616c5f6861\
73686573223a20223836333966636464653131626432373032373663396330333564366435346\
3653962393138323465366466373532636164376464646331616532663734386435222c202274\
797065223a20327d
Result (wrapped):
{
"event_block_height": 119592,
"payment_addresses": "yThmnuVZ1geQnywoEaGbpy33biT5G5sXzb",
"payment_amounts": "1.35961931",
"proposal_hashes": "8639fcdde11bd270276c9c035d6d54ce9b91824e6df752cad7dddc1ae2f748d5",
"type": 2
}
GObject Count
The gobject count
RPC returns the count of governance objects and votes.
Parameter #1---mode
Name | Type | Presence | Description |
---|---|---|---|
mode | string | Optional (exactly 1) | Result return format:json (default)all - Default before Dash Core 0.12.3 (for backwards compatibility) |
Command Mode - json
Result---count of governance objects and votes
Name | Type | Presence | Description |
---|---|---|---|
Result | object | Required (exactly 1) | Information about the governance object |
→objects_total | int | Required (exactly 1) | Total object count |
→proposals | int | Required (exactly 1) | Proposal count |
→triggers | int | Required (exactly 1) | Trigger count |
→other | int | Required (exactly 1) | Non-proposal/trigger count |
→erased | int | Required (exactly 1) | Erased count |
→votes | int | Required (exactly 1) | Vote count |
Example from Dash Core 0.14.0 (mode: json
/default)
dash-cli -testnet gobject count
Result (wrapped):
{
"objects_total": 3,
"proposals": 3,
"triggers": 0,
"other": 0,
"erased": 4,
"votes": 18
}
Command Mode - all
Result---count of governance objects and votes
Name | Type | Presence | Description |
---|---|---|---|
result | string | Required (exactly 1) | The count of governance objects and votes |
Example from Dash Core 0.14.0 (mode: all
)
dash-cli -testnet gobject count all
Result (wrapped):
Governance Objects: 177 (Proposals: 177, Triggers: 0, Other: 0; Erased: 5), \
Votes: 9680
GObject Get
The gobject get
RPC returns a governance object by hash.
Parameter #1---object hash
Name | Type | Presence | Description |
---|---|---|---|
governance-hash | string (hex) | Required (exactly 1) | The hash of a governance object |
Result---governance object details
Name | Type | Presence | Description |
---|---|---|---|
Result | object | Required (exactly 1) | Information about the governance object |
→DataHex | string (hex) | Required (exactly 1) | Governance object info as hex string |
→DataString | string | Required (exactly 1) | Governance object info as string |
→Hash | string (hex) | Required (exactly 1) | Hash of this governance object |
→CollateralHash | string (hex) | Required (exactly 1) | Hash of the collateral payment transaction |
→ObjectType | number | Required (exactly 1) | Object types:1 - Unknown2 - Proposal3 - Trigger |
→CreationTime | number | Required (exactly 1) | Object creation time as Unix epoch time |
→FundingResult | object | Required (exactly 1) | Funding vote details |
→ →AbsoluteYesCount | number | Required (exactly 1) | Number of Yes votes minus number of No votes |
→ →YesCount | number | Required (exactly 1) | Number of Yes votes |
→ →NoCount | number | Required (exactly 1) | Number of No votes |
→ →AbstainCount | number | Required (exactly 1) | Number of Abstain votes |
→ValidResult | object | Required (exactly 1) | Object validity vote details |
→ →AbsoluteYesCount | number | Required (exactly 1) | Number of Yes votes minus number of No votes |
→ →YesCount | number | Required (exactly 1) | Number of Yes votes |
→ →NoCount | number | Required (exactly 1) | Number of No votes |
→ →AbstainCount | number | Required (exactly 1) | Number of Abstain votes |
→DeleteResult | object | Required (exactly 1) | Delete vote details |
→ →AbsoluteYesCount | number | Required (exactly 1) | Number of Yes votes minus number of No votes |
→ →YesCount | number | Required (exactly 1) | Number of Yes votes |
→ →NoCount | number | Required (exactly 1) | Number of No votes |
→ →AbstainCount | number | Required (exactly 1) | Number of Abstain votes |
→EndorsedResult | object | Required (exactly 1) | Endorsed vote details |
→ →AbsoluteYesCount | number | Required (exactly 1) | Number of Yes votes minus number of No votes |
→ →YesCount | number | Required (exactly 1) | Number of Yes votes |
→ →NoCount | number | Required (exactly 1) | Number of No votes |
→ →AbstainCount | number | Required (exactly 1) | Number of Abstain votes |
→fLocalValidity | boolean | Required (exactly 1) | Valid by the blockchain |
→IsValidReason | string | Required (exactly 1) | fLocalValidity error result. Empty if no error returned. |
→fCachedValid | boolean | Required (exactly 1) | Minimum network support has been reached flagging this object as a valid and understood governance object (e.g, the serialized data is correct format, etc) |
→fCachedFunding | boolean | Required (exactly 1) | Minimum network support has been reached for this object to be funded (doesn't mean it will be for sure though) |
→fCachedDelete | boolean | Required (exactly 1) | Minimum network support has been reached saying this object should be deleted from the system entirely |
→fCachedEndorsed | boolean | Required (exactly 1) | Minimum network support has been reached flagging this object as endorsed |
Example from Dash Core 0.12.2
dash-cli -testnet gobject get \
42253a7bec554b97a65d2889e6cb9a1cf308b3d47a778c704bf9cdc1fe1bf6ff
Result (wrapped):
{
"DataHex": "5b5b2270726f706f73616c222c7b22656e645f65706f6368223a2231353037343339353130222c226e616d65223a227465737470726f706f73616c5f2d5f6162636465666768696a6b6c6d6e6f707172737475767778797a3031323334353637383931353037323530343338222c227061796d656e745f61646472657373223a22795668577955345933756456784d5234464b3333556741534a41436831436835516a222c227061796d656e745f616d6f756e74223a2232222c2273746172745f65706f6368223a2231353037323530343338222c2274797065223a312c2275726c223a2268747470733a2f2f7777772e6461736863656e7472616c2e6f72672f702f746573745f70726f706f73616c5f31353037323530343338227d5d5d",
"DataString": "[[\"proposal\",{\"end_epoch\":\"1507439510\",\"name\":\"testproposal_-_abcdefghijklmnopqrstuvwxyz01234567891507250438\",\"payment_address\":\"yVhWyU4Y3udVxMR4FK33UgASJACh1Ch5Qj\",\"payment_amount\":\"2\",\"start_epoch\":\"1507250438\",\"type\":1,\"url\":\"https://www.dashcentral.org/p/test_proposal_1507250438\"}]]",
"Hash": "42253a7bec554b97a65d2889e6cb9a1cf308b3d47a778c704bf9cdc1fe1bf6ff",
"CollateralHash": "cb09bd0310c0a67cde9387ad4d8908a7ad9f5d89c5afd58e9332b8bd26a646c7",
"ObjectType": 1,
"CreationTime": 1507246694,
"FundingResult": {
"AbsoluteYesCount": 0,
"YesCount": 0,
"NoCount": 0,
"AbstainCount": 0
},
"ValidResult": {
"AbsoluteYesCount": 0,
"YesCount": 0,
"NoCount": 0,
"AbstainCount": 0
},
"DeleteResult": {
"AbsoluteYesCount": 31,
"YesCount": 31,
"NoCount": 0,
"AbstainCount": 0
},
"EndorsedResult": {
"AbsoluteYesCount": 0,
"YesCount": 0,
"NoCount": 0,
"AbstainCount": 0
},
"fLocalValidity": true,
"IsValidReason": "",
"fCachedValid": true,
"fCachedFunding": false,
"fCachedDelete": false,
"fCachedEndorsed": false
}
GObject Getcurrentvotes
The gobject getcurrentvotes
RPC gets only current (tallying) votes for a governance object hash (does not include old votes).
Parameter #1---object hash
Name | Type | Presence | Description |
---|---|---|---|
governance-hash | string (hex) | Required (exactly 1) | The hash of a governance object |
Result---votes for specified governance
Name | Type | Presence | Description |
---|---|---|---|
Result | object | Required (exactly 1) | The governance object votes |
→ Vote Info | string | Required (1 or more) | Key: vote-hash Value: vinMasternode, time, outcome, and signal of the vote |
Example from Dash Core 0.12.2
dash-cli -testnet gobject getcurrentvotes 78941af577f639ac94440e4855a1ed8f\
696f1506d1c0bed4f4b68f05be26d3ca
Result (truncated):
{
"174aaba65982d25a23f437e2a66ec3836146ba7b7ce5b3fe2d5476907f7079d9": "2eab488e3a7b030303de0d18e357ce17a9fc6b8876705d61076bbe923b2e5fc8-1:1509354047:YES:DELETE",
"444d4d871ec35479804f060c733f516908382642ec2dfce6044a59fcadfdcd60": "18e496fe85b61ac9a5fcaec1ef683c7e3fc9bce4a83c883608427ecfb1002fca-1:1508866932:YES:FUNDING",
"d49a472c62e9d8105931829fc50ef6c6ce04a230507646ee0eaa615e863ef3a0": "18e496fe85b61ac9a5fcaec1ef683c7e3fc9bce4a83c883608427ecfb1002fca-1:1509117071:YES:DELETE",
"78442507441d4524d2493b8568d130415c1eb394adb2fe38d6ffeb199115bc5d": "3df7fb192e21c34da99bdd10c34e58ecaf3f3c37d6b2289f0ffedba5050188cc-1:1509312524:YES:DELETE",
"aa4dc9d3b9e74e8c1ffc725b737d07f8a32e43c64907e4bea19e64a86135f08a": "af9f5646ace92f76b3a01b0abe08716a0a7ded64074c2d2e712c93174b9013d1-1:1508866932:YES:FUNDING",
}
GObject List
The gobject list
RPC Lists governance objects (can be filtered by signal and/or object type).
Parameter #1---signal
Name | Type | Presence | Description |
---|---|---|---|
signal | string (hex) | Optional (exactly 1) | Type of governance object signal: • valid • funding • delete • endorsed • all (DEFAULT) |
Parameter #2---type
Name | Type | Presence | Description |
---|---|---|---|
type | string (hex) | Optional (exactly 1) | Type of governance object signal: • proposals • triggers • all (DEFAULT) |
Result---governance objects
Name | Type | Presence | Description |
---|---|---|---|
Result | object | Required (exactly 1) | Information about the governance object |
→ Governance Object(s) | object | Required (1 or more) | Key: Governance object hash Values: Governance object details |
→ →DataHex | string (hex) | Required (exactly 1) | Governance object info as hex string |
→ →DataString | string | Required (exactly 1) | Governance object info as string |
→ →Hash | string (hex) | Required (exactly 1) | Hash of this governance object |
→ →CollateralHash | string (hex) | Required (exactly 1) | Hash of the collateral payment transaction |
→ →ObjectType | number | Required (exactly 1) | Object types:1 - Unknown2 - Proposal3 - Trigger |
→ →CreationTime | number | Required (exactly 1) | Object creation time as Unix epoch time |
→ →SigningMasternode | string (hex) | Optional (0 or 1) | Signing masternode's vin (only present in triggers) |
→ →AbsoluteYesCount | number | Required (exactly 1) | Number of Yes votes minus number of No votes |
→ →YesCount | number | Required (exactly 1) | Number of Yes votes |
→ →NoCount | number | Required (exactly 1) | Number of No votes |
→ →AbstainCount | number | Required (exactly 1) | Number of Abstain votes |
→fLocalValidity | boolean | Required (exactly 1) | Valid by the blockchain |
→IsValidReason | string | Required (exactly 1) | fLocalValidity error result. Empty if no error returned. |
→fCachedValid | boolean | Required (exactly 1) | Minimum network support has been reached flagging this object as a valid and understood governance object (e.g, the serialized data is correct format, etc) |
→fCachedFunding | boolean | Required (exactly 1) | Minimum network support has been reached for this object to be funded (doesn't mean it will be for sure though) |
→fCachedDelete | boolean | Required (exactly 1) | Minimum network support has been reached saying this object should be deleted from the system entirely |
→fCachedEndorsed | boolean | Required (exactly 1) | Minimum network support has been reached flagging this object as endorsed |
Example from Dash Core 0.12.2
dash-cli -testnet gobject list all proposals
Result (truncated):
{
"b370fa1afd61aca9aa879abea3087e29656a670478f281d4196efb4e7e893ffe": {
"DataHex": "5b5b2270726f706f73616c222c7b22656e645f65706f6368223a2231353037343430303338222c226e616d65223a227465737470726f706f73616c5f2d5f6162636465666768696a6b6c6d6e6f707172737475767778797a3031323334353637383931353037323530393636222c227061796d656e745f61646472657373223a2279544c636f506d4e315963654432534345474d6b6e34395753565a4277626f646e6e222c227061796d656e745f616d6f756e74223a2232222c2273746172745f65706f6368223a2231353037323530393636222c2274797065223a312c2275726c223a2268747470733a2f2f7777772e6461736863656e7472616c2e6f72672f702f746573745f70726f706f73616c5f31353037323530393636227d5d5d",
"DataString": "[[\"proposal\",{\"end_epoch\":\"1507440038\",\"name\":\"testproposal_-_abcdefghijklmnopqrstuvwxyz01234567891507250966\",\"payment_address\":\"yTLcoPmN1YceD2SCEGMkn49WSVZBwbodnn\",\"payment_amount\":\"2\",\"start_epoch\":\"1507250966\",\"type\":1,\"url\":\"https://www.dashcentral.org/p/test_proposal_1507250966\"}]]",
"Hash": "b370fa1afd61aca9aa879abea3087e29656a670478f281d4196efb4e7e893ffe",
"CollateralHash": "a51ea89c14735f8b5df37cd846b3561494cc616d4a741e4ef83b368d45c960ba",
"ObjectType": 1,
"CreationTime": 1507250966,
"AbsoluteYesCount": 0,
"YesCount": 0,
"NoCount": 0,
"AbstainCount": 0,
"fBlockchainValidity": true,
"IsValidReason": "",
"fCachedValid": true,
"fCachedFunding": false,
"fCachedDelete": false,
"fCachedEndorsed": false
},
"906ae4dbd285e1025832ac9b3160073ecbfeef094d34cf81b3d797a349c720ff": {
"DataHex": "5b5b2270726f706f73616c222c7b22656e645f65706f6368223a2231353037343534383935222c226e616d65223a227465737470726f706f73616c5f2d5f6162636465666768696a6b6c6d6e6f707172737475767778797a3031323334353637383931353037323635383233222c227061796d656e745f61646472657373223a2279664e68484c4c695936577a5a646a51766137324a64395134313468516578514c68222c227061796d656e745f616d6f756e74223a2232222c2273746172745f65706f6368223a2231353037323635383233222c2274797065223a312c2275726c223a2268747470733a2f2f7777772e6461736863656e7472616c2e6f72672f702f746573745f70726f706f73616c5f31353037323635383233227d5d5d",
"DataString": "[[\"proposal\",{\"end_epoch\":\"1507454895\",\"name\":\"testproposal_-_abcdefghijklmnopqrstuvwxyz01234567891507265823\",\"payment_address\":\"yfNhHLLiY6WzZdjQva72Jd9Q414hQexQLh\",\"payment_amount\":\"2\",\"start_epoch\":\"1507265823\",\"type\":1,\"url\":\"https://www.dashcentral.org/p/test_proposal_1507265823\"}]]",
"Hash": "906ae4dbd285e1025832ac9b3160073ecbfeef094d34cf81b3d797a349c720ff",
"CollateralHash": "1707470c4372ba048b72945365b4bb71afc8a986e0755c1f1e8a37bba21fde83",
"ObjectType": 1,
"CreationTime": 1507265823,
"AbsoluteYesCount": 0,
"YesCount": 0,
"NoCount": 0,
"AbstainCount": 0,
"fBlockchainValidity": true,
"IsValidReason": "",
"fCachedValid": true,
"fCachedFunding": false,
"fCachedDelete": false,
"fCachedEndorsed": false
}
}
GObject Diff
The gobject diff
RPC Lists governance objects differences since last diff.
Parameter #1---signal
Name | Type | Presence | Description |
---|---|---|---|
signal | string (hex) | Optional (exactly 1) | Type of governance object signal: • valid • funding • delete • endorsed • all (DEFAULT) |
Parameter #2---type
Name | Type | Presence | Description |
---|---|---|---|
type | string (hex) | Optional (exactly 1) | Type of governance object signal: • proposals • triggers • all (DEFAULT) |
Result---governance objects
Name | Type | Presence | Description |
---|---|---|---|
Result | object | Required (exactly 1) | Information about the governance object |
→ Governance Object(s) | object | Required (1 or more) | Key: Governance object hash Values: Governance object details |
→ →DataHex | string (hex) | Required (exactly 1) | Governance object info as hex string |
→ →DataString | string | Required (exactly 1) | Governance object info as string |
→ →Hash | string (hex) | Required (exactly 1) | Hash of this governance object |
→ →CollateralHash | string (hex) | Required (exactly 1) | Hash of the collateral payment transaction |
→ →ObjectType | number | Required (exactly 1) | Object types:1 - Unknown2 - Proposal3 - Trigger |
→ →CreationTime | number | Required (exactly 1) | Object creation time as Unix epoch time |
→ →SigningMasternode | string (hex) | Optional (0 or 1) | Signing masternode's vin (only present in triggers) |
→ →AbsoluteYesCount | number | Required (exactly 1) | Number of Yes votes minus number of No votes |
→ →YesCount | number | Required (exactly 1) | Number of Yes votes |
→ →NoCount | number | Required (exactly 1) | Number of No votes |
→ →AbstainCount | number | Required (exactly 1) | Number of Abstain votes |
→fLocalValidity | boolean | Required (exactly 1) | Valid by the blockchain |
→IsValidReason | string | Required (exactly 1) | fLocalValidity error result. Empty if no error returned. |
→fCachedValid | boolean | Required (exactly 1) | Minimum network support has been reached flagging this object as a valid and understood governance object (e.g, the serialized data is correct format, etc) |
→fCachedFunding | boolean | Required (exactly 1) | Minimum network support has been reached for this object to be funded (doesn't mean it will be for sure though) |
→fCachedDelete | boolean | Required (exactly 1) | Minimum network support has been reached saying this object should be deleted from the system entirely |
→fCachedEndorsed | boolean | Required (exactly 1) | Minimum network support has been reached flagging this object as endorsed |
Example from Dash Core 0.12.2
dash-cli -testnet gobject diff all all
Result (truncated):
{
"17c2bd32005c5168a52f9b5caa74d875ee8a6867a6109f36923887ef6c36b301": {
"DataHex": "5b5b2270726f706f73616c222c7b22656e645f65706f6368223a2231353037343533353731222c226e616d65223a227465737470726f706f73616c5f2d5f6162636465666768696a6b6c6d6e6f707172737475767778797a3031323334353637383931353037323634343939222c227061796d656e745f61646472657373223a2279697355653636445352487048504233514245426764574746637068435933626234222c227061796d656e745f616d6f756e74223a2232222c2273746172745f65706f6368223a2231353037323634343939222c2274797065223a312c2275726c223a2268747470733a2f2f7777772e6461736863656e7472616c2e6f72672f702f746573745f70726f706f73616c5f31353037323634343939227d5d5d",
"DataString": "[[\"proposal\",{\"end_epoch\":\"1507453571\",\"name\":\"testproposal\",\"payment_address\":\"yisUe66DSRHpHPB3QBEBgdWGFcphCY3bb4\",\"payment_amount\":\"2\",\"start_epoch\":\"1507264499\",\"type\":1,\"url\":\"https://www.dashcentral.org/p/test_proposal_1507264499\"}]]",
"Hash": "17c2bd32005c5168a52f9b5caa74d875ee8a6867a6109f36923887ef6c36b301",
"CollateralHash": "a25c44b57931afd74530ce39741f91456446a8fd794d2f1c58c42d6f492647ad",
"ObjectType": 1,
"CreationTime": 1507264499,
"AbsoluteYesCount": 0,
"YesCount": 0,
"NoCount": 0,
"AbstainCount": 0,
"fBlockchainValidity": true,
"IsValidReason": "",
"fCachedValid": true,
"fCachedFunding": false,
"fCachedDelete": false,
"fCachedEndorsed": false
}
}
GObject Vote-alias
The gobject vote-alias
RPC votes on a governance object by masternode alias (using masternode.conf setup).
Parameter #1---governance hash
Name | Type | Presence | Description |
---|---|---|---|
governance-hash | string (hex) | Required (exactly 1) | Hash of the governance object |
Parameter #2---vote signal
Name | Type | Presence | Description |
---|---|---|---|
signal | string | Required (exactly 1) | Vote signal: funding , valid , or delete |
Parameter #3---vote outcome
Name | Type | Presence | Description |
---|---|---|---|
outcome | string | Required (exactly 1) | Vote outcome: yes , no , or abstain |
Parameter #4---masternode alias
Name | Type | Presence | Description |
---|---|---|---|
alias | string | Required (exactly 1) | Alias of voting masternode |
Result---votes for specified governance
Name | Type | Presence | Description |
---|---|---|---|
Result | object | Required (exactly 1) | The governance object votes |
→overall | string | Required (1 or more) | Reports number of vote successes/failures |
→detail | object | Required (exactly 1) | Vote details |
→ → Masternode Alias | object | Required (1 or more) | Name of the masternode alias |
→ → →result | string | Required (exactly 1) | Vote result |
Example from Dash Core 0.12.2
dash-cli -testnet gobject vote-alias \
0bf97bce78b3b642c36d4ca8e9265f8f66de8774c220221f57739c1956413e2b \
funding yes MN01
Result:
{
"overall": "Voted successfully 1 time(s) and failed 0 time(s).",
"detail": {
"MN01": {
"result": "success"
}
}
}
GObject Vote-conf
The gobject vote-conf
RPC votes on a governance object by masternode configured in dash.conf.
Parameter #1---governance hash
Name | Type | Presence | Description |
---|---|---|---|
governance-hash | string (hex) | Required (exactly 1) | Hash of the governance object |
Parameter #2---vote signal
Name | Type | Presence | Description |
---|---|---|---|
signal | string | Required (exactly 1) | Vote signal: funding , valid , or delete |
Parameter #3---vote outcome
Name | Type | Presence | Description |
---|---|---|---|
outcome | string | Required (exactly 1) | Vote outcome: yes , no , or abstain |
Result---votes for specified governance
Name | Type | Presence | Description |
---|---|---|---|
Result | object | Required (exactly 1) | The governance object votes |
→overall | string | Required (1 or more) | Reports number of vote successes/failures |
→detail | object | Required (exactly 1) | Vote details |
→ →dash.conf | object | Required (1 or more) | |
→ → →result | string | Required (exactly 1) | Vote result |
Example from Dash Core 0.12.2
dash-cli -testnet gobject vote-conf \
0bf97bce78b3b642c36d4ca8e9265f8f66de8774c220221f57739c1956413e2b funding yes
{
"overall": "Voted successfully 1 time(s) and failed 0 time(s).",
"detail": {
"dash.conf": {
"result": "success"
}
}
}
GObject Vote-many
The gobject vote-many
RPC votes on a governance object by all masternodes (using masternode.conf setup).
Parameter #1---governance hash
Name | Type | Presence | Description |
---|---|---|---|
governance-hash | string (hex) | Required (exactly 1) | Hash of the governance object |
Parameter #2---vote signal
Name | Type | Presence | Description |
---|---|---|---|
signal | string | Required (exactly 1) | Vote signal: funding , valid , or delete |
Parameter #3---vote outcome
Name | Type | Presence | Description |
---|---|---|---|
outcome | string | Required (exactly 1) | Vote outcome: yes , no , or abstain |
Parameter #4---masternode alias
Name | Type | Presence | Description |
---|---|---|---|
alias | string | Required (exactly 1) | Alias of voting masternode |
Result---votes for specified governance
Name | Type | Presence | Description |
---|---|---|---|
Result | object | Required (exactly 1) | The governance object votes |
→overall | string | Required (1 or more) | Reports number of vote successes/failures |
→detail | object | Required (exactly 1) | Vote details |
→ → Masternode Alias | object | Required (1 or more) | Name of the masternode alias |
→ → →result | string | Required (exactly 1) | Vote result |
Example from Dash Core 0.12.2
dash-cli -testnet gobject vote-many \
0bf97bce78b3b642c36d4ca8e9265f8f66de8774c220221f57739c1956413e2b funding yes
{
"overall": "Voted successfully 1 time(s) and failed 0 time(s).",
"detail": {
"MN01": {
"result": "success"
}
}
}
See also:
- GetGovernanceInfo: returns an object containing governance parameters.
- GetSuperblockBudget: returns the absolute maximum sum of superblock payments allowed.
Masternode
The masternode
RPC provides a set of commands for managing masternodes and displaying information about them.
Masternode Count
The masternode count
RPC prints the number of all known masternodes.
Parameter #1---mode
Name | Type | Presence | Description |
---|---|---|---|
Mode | string (hex) | Deprecated | Which masternodes to count:total - Pre-0.12.3 default result,ps - PrivateSend capable,enabled - Enabled,all - All,qualify - Eligible for payment |
Result---number of known masternodes
Name | Type | Presence | Description |
---|---|---|---|
result | object | Required (exactly 1) | Masternode count by mode |
→total | int | Required (exactly 1) | Count of all masternodes |
→enabled | int | Required (exactly 1) | Count of enabled masternodes |
Example from Dash Core 0.14.0
dash-cli -testnet masternode count
Result:
{
"total": 185,
"enabled": 130
}
Get summarized count of all masternodes
Result---summary of known masternodes
Name | Type | Presence | Description |
---|---|---|---|
result | string | Required (exactly 1) | Summary of masternodes in each state |
Example from Dash Core 0.14.0
dash-cli -testnet masternode count all
Result:
Total: 185 (Enabled: 130)
Get total count of all masternodes (default output of masternode count
pre-0.12.3)
Result---number of known masternodes in mode
Name | Type | Presence | Description |
---|---|---|---|
result | int | Required (exactly 1) | Number of masternodes |
Example from Dash Core 0.12.3
dash-cli -testnet masternode count total
Result:
142
Masternode Current
The masternode current
RPC prints info on current masternode winner to be paid the next block (calculated locally).
Parameters: none
Result---current winning masternode info
Name | Type | Presence | Description |
---|---|---|---|
Result | object | Required (exactly 1) | Winning masternode info |
→height | int | Required (exactly 1) | Block height |
→IP:port | string | Required (exactly 1) | The IP address/port of the masternode |
→proTxHash | string | Required (exactly 1) | The masternode's Provider Registration transaction hash |
→outpoint | string | Required (exactly 1) | The masternode's outpoint |
→payee | string | Required (exactly 1) | Payee address |
Example from Dash Core 0.14.0
dash-cli -testnet masternode current
Result:
{
"height": 76179,
"IP:port": "34.242.53.163:26155",
"proTxHash": "9de76b8291d00026ab0af86306023c7b90f8e9229dc04916fe1335bf5e11f15d",
"outpoint": "9de76b8291d00026ab0af86306023c7b90f8e9229dc04916fe1335bf5e11f15d-1",
"payee": "yZnU7YJJgGQKvKPQFqXJ4k4DGSsRMhgLXx"
}
Masternode Outputs
The masternode outputs
RPC prints masternode compatible outputs.
Parameters: none
Result---masternode outputs
Name | Type | Presence | Description |
---|---|---|---|
Result | object | Required (exactly 1) | Masternode compatible outputs |
→ Output | string | Required (1 or more) | Masternode compatible output (TXID:Index) |
Example from Dash Core 0.12.2
dash-cli -testnet masternode outputs
Result:
{
"f6c83fd96bfaa47887c4587cceadeb9af6238a2c86fe36b883c4d7a6867eab0f": "1"
}
Masternode Status
The masternode status
RPC prints masternode status information.
Parameters: none
Result---masternode status info
Name | Type | Presence | Description |
---|---|---|---|
Result | object | Required (exactly 1) | Masternode status info |
→outpoint | string | Required (exactly 1) | The masternode's outpoint |
→service | string | Required (exactly 1) | The IP address/port of the masternode |
→proTxHash | string (hex) | Required (exactly 1) | The masternode's ProRegTx hash |
→collateralHash | string (hex) | Required (exactly 1) | The masternode's collateral hash |
→collateralIndex | int | Required (exactly 1) | Index of the collateral |
→dmnState | object | Required (exactly 1) | Deterministic Masternode State |
→ →service | string | Required (exactly 1) | The IP address/port of the masternode |
→ →registeredHeight | int | Required (exactly 1) | Block height at which the masternode was registered |
→ →lastPaidHeight | int | Required (exactly 1) | Block height at which the masternode was last paid |
→ →PoSePenalty | int | Required (exactly 1) | Current proof-of-service penalty |
→ →PoSeRevivedHeight | int | Required (exactly 1) | Block height at which the masternode was last revived from a PoSe ban |
→ →PoSeBanHeight | int | Required (exactly 1) | Block height at which the masternode was last PoSe banned |
→ →revocationReason | int | Required (exactly 1) | Reason code for of masternode operator key revocation |
→ →ownerAddress | string | Required (exactly 1) | The owner address |
→ →votingAddress | string | Required (exactly 1) | The voting address |
→ →payoutAddress | string | Required (exactly 1) | The payout address |
→ →pubKeyOperator | string | Required (exactly 1) | The operator public key |
→ →operatorPayoutAddress | string | Optional (0 or 1) | The operator payout address |
→status | string | Required (1 or more) | The masternode's status |
Example from Dash Core 0.13.2
dash-cli -testnet masternode status
Result:
{
"outpoint": "d1be3a1aa0b9516d06ed180607c168724c21d8ccf6c5a3f5983769830724c357-0",
"service": "45.32.237.76:19999",
"proTxHash": "04d06d16b3eca2f104ef9749d0c1c17d183eb1b4fe3a16808fd70464f03bcd63",
"collateralHash": "d1be3a1aa0b9516d06ed180607c168724c21d8ccf6c5a3f5983769830724c357",
"collateralIndex": 0,
"dmnState": {
"service": "45.32.237.76:19999",
"registeredHeight": 7402,
"lastPaidHeight": 59721,
"PoSePenalty": 0,
"PoSeRevivedHeight": 61915,
"PoSeBanHeight": -1,
"revocationReason": 0,
"ownerAddress": "yT8DDY5NkX4ZtBkUVz7y1RgzbakCnMPogh",
"votingAddress": "yMLrhooXyJtpV3R2ncsxvkrh6wRennNPoG",
"payoutAddress": "yTsGq4wV8WF5GKLaYV2C43zrkr2sfTtysT",
"pubKeyOperator": "02a2e2673109a5e204f8a82baf628bb5f09a8dfc671859e84d2661cae03e6c6e198a037e968253e94cd099d07b98e94e"
},
"state": "READY",
"status": "Ready"
}
Masternode List
The masternode list
prints a list of all known masternodes.
This RPC uses the same parameters and returns the same data as
masternodelist. Please reference it for full details.
Example from Dash Core 0.12.2
dash-cli -testnet masternode list \
rank f6c83fd96bfaa47887c4587cceadeb9af6238a2c86fe36b883c4d7a6867eab0f
Result:
{
"f6c83fd96bfaa47887c4587cceadeb9af6238a2c86fe36b883c4d7a6867eab0f-1": 11
}
Masternode Winner
The masternode winner
RPC prints info on the next masternode winner to vote for.
Parameters: none
Result---next masternode winner info
Name | Type | Presence | Description |
---|---|---|---|
Result | object | Required (exactly 1) | Winning masternode info |
→height | int | Required (exactly 1) | Block height |
→IP:port | string | Required (exactly 1) | The IP address/port of the masternode |
→proTxHash | string | Required (exactly 1) | The masternode's Provider Registration transaction hash |
→outpoint | string | Required (exactly 1) | The masternode's outpoint |
→payee | string | Required (exactly 1) | Payee address |
Example from Dash Core 0.14.0
dash-cli -testnet masternode winner
Result:
{
"height": 76191,
"IP:port": "34.242.53.163:26173",
"proTxHash": "024608d03beb6a6065f14a29a837c68ae449ac1e17056819366ca0b72b6dd81f",
"outpoint": "024608d03beb6a6065f14a29a837c68ae449ac1e17056819366ca0b72b6dd81f-1",
"payee": "yhp182AnF7gUAyHiWgSbDrKqHKt2dzhoyW"
}
Masternode Winners
The masternode winners
RPC prints the list of masternode winners.
By default, the 10 previous block winners, the current block winner, and the
next 20 block winners are displayed. More past block winners can be requested
via the optional count
parameter.
Parameter #1---count
Name | Type | Presence | Description |
---|---|---|---|
Count | string (hex) | Optional (exactly 1) | Number of previous block winners to display (default: 10) |
Parameter #2---filter
Name | Type | Presence | Description |
---|---|---|---|
Filter | string | Optional (exactly 1) | Payment address to filter by |
Result---masternode winners
Name | Type | Presence | Description |
---|---|---|---|
Result | object | Required (exactly 1) | Winning masternode info |
→ Masternode Winner | int | Required (exactly 1) | Key: Block height Value: payee address |
Example from Dash Core 0.12.2
dash-cli -testnet masternode winners
Result (current block - 37458):
{
"37448": "ygSWwhyzU61FNEta8gDh8gfoH5EZZUvc5m:8",
"37449": "yjGZLzSSoFfTFgLDJrgniXfYxu3xF9xKQg:5",
"37450": "yRTo1wXWoNnPFWcQVepKGXuLsoypnPkGWj:7",
"37451": "yYMFRAYZ25XspHZ1EXC39wUMx9FhoC5VT2:9",
"37452": "yX5y3otE4LitGYiSfZhVH4LdbwHShdzQ8v:7",
"37453": "yX5y3otE4LitGYiSfZhVH4LdbwHShdzQ8v:4",
"37454": "yUamtYUFhqUxCMny3JTcZJTyttVt8SYFug:9",
"37455": "yU35XcdGMnj8Exa2ZZqCg4ongiNqQwpeUZ:9",
"37456": "yaJc6tADbEjxQBAC69ugWNoTFpzxqkcgWd:7",
"37457": "yf4WpwRX17p7YRkHJPQpHMXTwzi5s2VDcR:7",
"37458": "ydbfUYWfLm6xg7Y5aBLjy38DvksrvNcHEc:9",
"37459": "yYp9k2iuDptT2MB7qVZtVy6ModHtLXFjio:6",
"37460": "yP1UHNx26ShYLej56SbHiTiPAUv2QppbUv:6",
"37461": "yaCtZRpiYnVFMyWELHZF74v9ayLKCLPcC9:8",
"37462": "ygYFnLHoVRyhRoxd6fXQ9nmEafX4eLoWkB:6",
"37463": "yM5kTThWi8MnAFtZqx98Zipp1BbyypUZGK:7",
"37464": "yeDY39aiqbBHbJft5F6rokR23EaZca6UTU:9",
"37465": "yMME1ns1xfpGS2XbFPktsNyp7Cjr1BoJxb:8",
"37466": "ycn5RWc4Ruo35FTS8bJwugVyCEkfVcrw9a:6",
"37467": "yUTDkKKhbvDrnwkiaoP8HvqxTNC6rNnUe2:6",
"37468": "yTstes2nSaSpvu9nTapiCGnjCLvLD5fUqt:5",
"37469": "Unknown",
"37470": "Unknown",
"37471": "Unknown",
"37472": "Unknown",
"37473": "Unknown",
"37474": "Unknown",
"37475": "Unknown",
"37476": "Unknown",
"37477": "Unknown"
}
Get a filtered list of masternode winners
dash-cli -testnet masternode winners 150 "yTZ99"
Result:
{
"37338": "yTZ99fCnjNu33RDRtawf81iwJ9uxXFmkgM:9",
"37339": "yTZ99fCnjNu33RDRtawf81iwJ9uxXFmkgM:8",
"37432": "yTZ99fCnjNu33RDRtawf81iwJ9uxXFmkgM:6",
"37433": "yTZ99fCnjNu33RDRtawf81iwJ9uxXFmkgM:9"
}
See also:
- MasternodeList: returns a list of masternodes in different modes.
Masternodelist
The masternodelist
RPC returns a list of masternodes in different modes.
Parameter #1---List mode
Name | Type | Presence | Description |
---|---|---|---|
mode | string | Optional (exactly 1); Required to use filter | The mode to run list in |
Mode Options (Default=json)
Mode | Description | |
---|---|---|
addr | Print IP address associated with a masternode (can be additionally filtered, partial match) | |
full | Print info in format 'status payee lastpaidtime lastpaidblock IP' (can be additionally filtered, partial match) | |
info | Print info in format 'status payee IP' (can be additionally filtered, partial match) | |
json (Default) | Print info in JSON format (can be additionally filtered, partial match) | |
lastpaidblock | Print the last block height a node was paid on the network | |
lastpaidtime | Print the last time a node was paid on the network | |
owneraddress | Print the masternode owner Dash address | |
payee | Print Dash address associated with a masternode (can be additionally filtered, partial match) | |
pubKeyOperator | Print the masternode operator public key | |
status | Print masternode status: ENABLED / POSE_BANNED (can be additionally filtered, partial match) | |
votingaddress | Print the masternode voting Dash address |
Parameter #2---List filter
Name | Type | Presence | Description |
---|---|---|---|
filter | string | Optional (exactly 1) | Filter results. Partial match by outpoint by default in all modes, additional matches in some modes are also available. |
Result---the masternode list
Name | Type | Presence | Description |
---|---|---|---|
result | object/null | Required (exactly 1) | Information about the masternode sync status |
→ Masternode Info | string | Required (1 or more) | The requested masternode info. Output varies based on selected mode and filter parameters |
Example from Dash Core 0.14.0
Get unfiltered Masternode list in default mode
dash-cli -testnet masternodelist
Result:
{
"64fbf05880cdbd35a0278ba01a5edf0c20a9c756d15f883d496f5df35b31b542-1": {
"proTxHash": "ab51b2ba4dca27658e13fea81c0764167c1466aa2d92050c67e4490ce7623da0",
"address": "167.99.164.60:19999",
"payee": "ycZgaHNb8AQq7HnJ3rTwx2fXUd7VCWQumX",
"status": "ENABLED",
"lastpaidtime": 1556615121,
"lastpaidblock": 89725,
"owneraddress": "yisedvAxYga44V9bTABzoQ7KoQMugyfU1E",
"votingaddress": "yVpKfQgjkRkezFS5SpZvAEVFsbv9zJedf4",
"collateraladdress": "yeXE94admJeH3oKiaB7UpwWnPZD6Q8srhT",
"pubkeyoperator": "8072ac9a55d1cf5bf9c4262d49e2ef1ffcd716b8983ffdc62b940fec6cb4179d6275f8b68316f29c6c2ad540db329258"
},
"6ed4aa5fa90565c2331bcd22275f684ecdca5da8dd7f83ca943aadc6f44e6746-0": {
"proTxHash": "8f5d5c7c0d9232f45f3a77eef6541922f827930b1f3bb789ad1771dc4d6275c0",
"address": "3.209.222.37:19999",
"payee": "yiVDR2HothEwH2Ss17GntqNp1rBUthnyje",
"status": "POSE_BANNED",
"lastpaidtime": 1554219432,
"lastpaidblock": 72365,
"owneraddress": "ycAZ9adjpGfZ2WLEpyfyUWAjkF6sXdD5df",
"votingaddress": "yQrieR9S99hqnPghoj12RszMXYzc6yzyn2",
"collateraladdress": "ya82BzRBhuFZAPhgXvhkzZgqiVsMdnfan7",
"pubkeyoperator": "0a7fd01cfd502296cfd523d58ee9f4cff34243abb0dcc543ec237ff4d73938e69d187f0b6838bbaf9d54b89adc0d4c8e"
},
"4758b97bbd20024e171767b8baf4290bec1475b254180869cdfe0db75d7faefb-0": {
"proTxHash": "5cd86ed16f87819dca7b6e4e3d24947b1a6328ed8cc4c9aec7af35fa2b162220",
"address": "68.183.167.16:19999",
"payee": "ycZgaHNb8AQq7HnJ3rTwx2fXUd7VCWQumX",
"status": "ENABLED",
"lastpaidtime": 1556616437,
"lastpaidblock": 89734,
"owneraddress": "yPmESxMJhZYuKDLJ1oYdH6kpE8oADVAPUQ",
"votingaddress": "yLvTNLDLHa3pDMbFDRBX5mVMjCshzrDD1X",
"collateraladdress": "ydGCjUEVRHkQZK3ajCsGJGDE9sjrbbS56v",
"pubkeyoperator": "18af4d035eed23d30eb02808af0c133d9879c0fb82c72329ab2ed208ebc1631641ca42bbf462239d151f4e84d8dcde7b"
}
}
Get a filtered Masternode list
dash-cli -testnet masternodelist full "NEW"
Result:
{
"64fbf05880cdbd35a0278ba01a5edf0c20a9c756d15f883d496f5df35b31b542-1": " ENABLED ycZgaHNb8AQq7HnJ3rTwx2fXUd7VCWQumX 1553155206 65121 167.99.164.60:19999",
"809818107c1104bbba6d386567aa231a294219387e591542df599b7ae7d23339-1": " POSE_BANNED yLriZkwBhftk8VBUqrSykhFhAi4PowZ2Rs 1547488185 24447 45.48.177.222:19999",
"d9fd715b7d896f5426e90bd3383a67fd3e311e00c021750560c6e5c5f9cdac85-1": " ENABLED yRbiW3dguCym4fzUGZCf2kWzKUgw97zEqE 1553155396 65122 109.235.71.56:19999",
"0950cce784fadcc2df4febb19d3a21eab4836ba22ea996ce7e2dde32b6c31431-0": " ENABLED ycZgaHNb8AQq7HnJ3rTwx2fXUd7VCWQumX 1553154969 65119 165.227.63.223:19999",
"08b493929f61a3205f09af9290af9034bec6a8355040a82ce4413f294c703e9a-0": " ENABLED ybCE7m9oPjvCjm8MzPdbMBGgkF7p9wXsFq 1553153959 65110 34.207.45.58:19999",
"b4f9de65ae676b63f84f2865317b8b512a12516c4459f2f59ca2626c71f7dda3-1": " POSE_BANNED yYmromZERpc15GTDvgvjmjChPmgHbhWf1r 0 0 1.1.1.1:19999",
"b7ec36db0c4ece8018183dcb90eed910e38e1c8d3641bbb4facced9a48a283a3-5": " ENABLED ybFPBD7hm9KVd2Dubj97K5mw2ymR8gWJre 1553164088 65172 18.202.52.170:20028",
"71fa05269adf3efc9ffa9a9ce33d27320de61c230cdf4a3835ba7f707bd7807a-1": " POSE_BANNED yVxBZ8JeM5qRbLnUnswZ2APV3rgeZ7C9n9 1552466625 61158 167.99.110.59:19999"
}
See also:
- Masternode: provides a set of commands for managing masternodes and displaying information about them.
- MnSync: returns the sync status, updates to the next step or resets it entirely.
MnSync
The mnsync
RPC returns the sync status, updates to the next step or resets it entirely.
Parameter #1---Command mode
Name | Type | Presence | Description |
---|---|---|---|
mode | string | Required (exactly 1) | The command mode to use:status - Get masternode sync statusnext - Move to next sync assetreset - Reset sync status |
Command Mode - status
Result---the sync status
Name | Type | Presence | Description |
---|---|---|---|
result | object/null | Required (exactly 1) | Information about the masternode sync status |
→AssetID | number (int) | Required (exactly 1) | The sync asset ID |
→AssetName | string | Required (exactly 1) | The sync asset name |
→AssetStartTime | number (int) | Required (exactly 1) | The sync asset start time |
→Attempt | number (int) | Required (exactly 1) | The sync attempt number |
→IsBlockchainSynced | boolean | Required (exactly 1) | Blockchain sync status |
→IsSynced | boolean | Required (exactly 1) | Masternode sync status |
→IsFailed | boolean | Required (exactly 1) | Removed in Dash Core 0.16.0 Masternode list sync fail status |
Sync Assets
AssetID | AssetName | |
---|---|---|
0 | MASTERNODE_SYNC_INITIAL (merged with MASTERNODE_SYNC_BLOCKCHAIN in Dash Core 0.16.0) | |
1 | MASTERNODE_SYNC_BLOCKCHAIN (previously MASTERNODE_SYNC_WAITING ) | |
4 | MASTERNODE_SYNC_GOVERNANCE | |
-1 | MASTERNODE_SYNC_FAILED (removed in Dash Core 0.16.0) | |
999 | MASTERNODE_SYNC_FINISHED |
Example from Dash Core 0.16.0
Get Masternode sync status
dash-cli -testnet mnsync status
Result:
{
"AssetID": 999,
"AssetName": "MASTERNODE_SYNC_FINISHED",
"AssetStartTime": 1507662300,
"Attempt": 0,
"IsBlockchainSynced": true,
"IsSynced": true,
}
Command Mode - next
Result---next command return status
Name | Type | Presence | Description |
---|---|---|---|
result | string | Required (exactly 1) | Command return status |
Example from Dash Core 0.12.2
dash-cli -testnet mnsync next
Result:
sync updated to MASTERNODE_SYNC_GOVERNANCE
Command Mode - reset
Result---reset command return status
Name | Type | Presence | Description |
---|---|---|---|
result | string | Required (exactly 1) | Command return status:success or failure |
Example from Dash Core 0.12.2
dash-cli -testnet mnsync reset
Result:
success
See also:
- Masternode: provides a set of commands for managing masternodes and displaying information about them.
- MasternodeList: returns a list of masternodes in different modes.
PrivateSend
As of Dash Core 0.12.3, client-side mixing is not supported on masternodes.
The privatesend
RPC controls the mixing process.
Name | Type | Presence | Description |
---|---|---|---|
mode | string | Required (exactly 1) | The command mode to use:start - Start mixingstop - Stop mixingreset - Reset mixing |
Command Mode - start
Result---start command return status
Name | Type | Presence | Description |
---|---|---|---|
result | string | Required (exactly 1) | Command return status |
Example from Dash Core 0.12.2
dash-cli -testnet privatesend start
Result:
Mixing started successfully
Command Mode - stop
Result---stop command return status
Name | Type | Presence | Description |
---|---|---|---|
result | string | Required (exactly 1) | Command return status |
Example from Dash Core 0.12.2
dash-cli -testnet privatesend stop
Result:
Mixing was stopped
Command Mode - reset
Result---reset command return status
Name | Type | Presence | Description |
---|---|---|---|
result | string | Required (exactly 1) | Command return status |
Example from Dash Core 0.12.2
dash-cli -testnet privatesend reset
Result:
Mixing was reset
See also: none
Spork
The spork
RPC reads or updates spork settings on the network.
To display the status of sporks, use the show
or active
syntax.
Parameter #1---Command mode
Name | Type | Presence | Description |
---|---|---|---|
mode | string | Required (exactly 1) | The command mode to use:show - Display spork valuesactive - Display spork activation status |
Command Mode - show
Result---spork values
Name | Type | Presence | Description |
---|---|---|---|
result | object | Required (exactly 1) | Object containing status |
→Spork Value | int64_t | Required (1 or more) | Spork value (epoch datetime to enable/disable) |
Example from Dash Core 0.16.0
dash-cli -testnet spork show
Result:
{
"SPORK_2_INSTANTSEND_ENABLED": 0,
"SPORK_3_INSTANTSEND_BLOCK_FILTERING": 0,
"SPORK_6_NEW_SIGS": 0,
"SPORK_9_SUPERBLOCKS_ENABLED": 0,
"SPORK_17_QUORUM_DKG_ENABLED": 0,
"SPORK_19_CHAINLOCKS_ENABLED": 1,
"SPORK_21_QUORUM_ALL_CONNECTED": 4070908800
}
Command Mode - active
Result---spork active status
Name | Type | Presence | Description |
---|---|---|---|
result | object | Required (exactly 1) | Object containing status |
→Spork Activation Status | bool | Required (1 or more) | Spork activation status |
Example from Dash Core 0.14.0
dash-cli -testnet spork active
Result:
{
"SPORK_2_INSTANTSEND_ENABLED": true,
"SPORK_3_INSTANTSEND_BLOCK_FILTERING": true,
"SPORK_6_NEW_SIGS": true,
"SPORK_9_SUPERBLOCKS_ENABLED": true,
"SPORK_17_QUORUM_DKG_ENABLED": true,
"SPORK_19_CHAINLOCKS_ENABLED": true,
"SPORK_21_QUORUM_ALL_CONNECTED": false
}
To update the state of a spork activation, use the <name> [value]
syntax.
Command Mode - update
Parameter #1---Spork name
Name | Type | Presence | Description |
---|---|---|---|
name | string | Required (exactly 1) | The name of the spork to update |
Parameter #2---Spork value
Name | Type | Presence | Description |
---|---|---|---|
value | int | Required (exactly 1) | The value to assign the spork |
Result---spork update status
Name | Type | Presence | Description |
---|---|---|---|
result | object | Required (exactly 1) | Update status (success or failure ) |
Example from Dash Core 0.12.2
dash-cli -testnet spork SPORK_2_INSTANTSEND_ENABLED 0
Result:
failure
See also: none
VoteRaw
The voteraw
RPC compiles and relays a governance vote with provided external signature instead of signing vote internally
Parameter #1---masternode collateral transaction hash
Name | Type | Presence | Description |
---|---|---|---|
masternode-collateral-tx-hash | string (hex) | Required (exactly 1) | Hash of the masternode collateral transaction |
Parameter #2---masternode collateral transaction index
Name | Type | Presence | Description |
---|---|---|---|
masternode-collateral-tx-index | string | Required (exactly 1) | Index of the masternode collateral transaction |
Parameter #3---governance hash
Name | Type | Presence | Description |
---|---|---|---|
governance-hash | string (hex) | Required (exactly 1) | Hash of the governance object |
Parameter #4---vote signal
Name | Type | Presence | Description |
---|---|---|---|
signal | string | Required (exactly 1) | Vote signal: funding , valid , or delete |
Parameter #5---vote outcome
Name | Type | Presence | Description |
---|---|---|---|
outcome | string | Required (exactly 1) | Vote outcome: yes , no , or abstain |
Parameter #6---time
Name | Type | Presence | Description |
---|---|---|---|
time | int64_t | Required (exactly 1) | Create time |
Parameter #7---vote signature
Name | Type | Presence | Description |
---|---|---|---|
vote-sig | string (base64) | Required (exactly 1) | The vote signature created by external application (i.e. Dash Masternode Tool or dashmnb). Must match the Dash Core (governance vote signature format). |
Result---votes for specified governance
Name | Type | Presence | Description |
---|---|---|---|
Result | object | Required (exactly 1) | The vote result |
Example from Dash Core 0.12.2
dash-cli -testnet voteraw \
f6c83fd96bfaa47887c4587cceadeb9af6238a2c86fe36b883c4d7a6867eab0f 1 \
65a358fefaace40fc07053350be23e519178519290f963dab8ba92f6f85f98c3 \
funding yes 1512507255 \
H1jXKZQp1TZWBPW11E665OwmGBYV1038FohEr0au7zp+O5BCKmVDP/3rGq38ZMy3KOpwnBu6ehd6jlas79hsRBY=
Result:
Voted successfully
See also:
- GObject: provides a set of commands for managing governance objects and displaying information about them.
Updated about 4 years ago