From 2dd604c49ba7b6ad35acd3f920b8ffdd8e00cd6a Mon Sep 17 00:00:00 2001 From: thephez Date: Thu, 1 Feb 2024 15:40:49 -0500 Subject: [PATCH 01/13] docs(rpc): add getrawtransactionmulti --- ...remote-procedure-calls-raw-transactions.md | 62 +++++++++++++++++++ 1 file changed, 62 insertions(+) diff --git a/docs/api/remote-procedure-calls-raw-transactions.md b/docs/api/remote-procedure-calls-raw-transactions.md index c166ca1d..0ea67869 100644 --- a/docs/api/remote-procedure-calls-raw-transactions.md +++ b/docs/api/remote-procedure-calls-raw-transactions.md @@ -1144,6 +1144,68 @@ Result: _See also_ +* [GetRawTransactionMulti](../api/remote-procedure-calls-raw-transactions.md#getrawtransactionmulti): gets hex-encoded serialized transactions or a JSON object describing the transactions. +* [GetSpecialTxes](../api/remote-procedure-calls-blockchain.md#getspecialtxes): returns an array of special transactions found in the specified block +* [GetTransaction](../api/remote-procedure-calls-wallet.md#gettransaction): gets detailed information about an in-wallet transaction. + +## GetRawTransactionMulti + +The [`getrawtransactionmulti` RPC](../api/remote-procedure-calls-raw-transactions.md#getrawtransactionmulti) gets hex-encoded serialized transactions or a JSON object describing the transactions. This RPC returns the same type of information as the [`getrawtransaction` RPC](../api/remote-procedure-calls-raw-transactions.md#getrawtransactionmulti). + +_Parameter #1---block hashes and transaction hash list_ + +| Name | Type | Presence | Description | +| ---- | ------------ | ----------------------- | ----------- | +| Transactions | object | Required
(exactly 1) | A JSON object with block hashes as keys and lists of transaction hashes as values (no more than 100 in total) | +|→
Block Hash | array | Required
(1 or more) | The block hash and the list of transaction ids to fetch | +|→ →
Transaction ID | string | Required
(1 or more) | A transaction ID | + +_Parameter #2---whether to get the serialized or decoded transaction_ + +| Name | Type | Presence | Description | +| ------- | ---- | -------------------- | ----------- | +| Verbose | bool | Optional
(0 or 1) | Set to `false` (the default) to return the serialized transaction as hex. Set to `true` to return a decoded transaction in JSON. | + +_Result (if transactions not found)---`null`_ + +| Name | Type | Presence | Description | +| -------- | ---- | ----------------------- | ----------- | +| `result` | null | Required
(exactly 1) | If no transactions were found, the result will be JSON `null`. This can occur because the transactions don't exist in the block chain or memory pool, or because it isn't part of the transaction index. See the Dash Core `-help` entry for `-txindex` | + +_Result (if verbose=`false`)---the serialized transactions_ + +| Name | Type | Presence | Description | +| -------- | ------------ | ----------------------- | ----------- | +| `result` | object | Required
(exactly 1) | If the transaction was found, this will be an object containing the serialized transaction encoded as hex. | +|→
TXID / Raw tx | string:string | Required
(1 or more) | A key/value pair with the transaction ID (key) and raw transaction data (value). See the [`getrawtransaction` RPC](../api/remote-procedure-calls-raw-transactions.md#getrawtransactionmulti) for an example of the hex transaction data. | + +_Result (if verbose=`true`)---the decoded transactions_ + +| Name | Type | Presence | Description | +| --------------------------- | -------------- | ----------------------- | ----------- | +| `result` | object | Required
(exactly 1) | If the transaction was found, this will be an object describing it | +|→
TXID / Decoded tx | string:string | Required
(1 or more) | A key/value pair with the transaction ID (key) and decoded transaction data represented in JSON (value). See the [`getrawtransaction` RPC](../api/remote-procedure-calls-raw-transactions.md#getrawtransactionmulti) for an example of the decoded transaction data. | + +_Examples from Dash Core 20.1.0_ + +Transactions in serialized transaction format: + +```bash +dash-cli getrawtransactionmulti '{"0000014b04deb0fe0884d3ca81a6239016c2a4838cd4b34494858630e457c62c": ["0667ab03bebb827057fcd55285d68dc10f30ef07dd04d1468c9f25888c22333c", "5c278dd4ca54b9c14789357f0311bcbf1b6d3182bcc76d229cb15cfbe6255ed0"]}' false +``` + +Result: + +```json +{ + "0667ab03bebb827057fcd55285d68dc10f30ef07dd04d1468c9f25888c22333c": "03000500010000000000000000000000000000000000000000000000000000000000000000ffffffff060373ad0e0101ffffffff0283706e04000000001976a914c69a0bda7daaae481be8def95e5f347a1d00a4b488ac89514b0d000000001976a91464f2b2b84f62d68a2cd7f7f5fb2b5aa75ef716d788ac00000000af030073ad0e00c63f1ca6d2a0570754d3851f70fae6215fa7741b3d4fd1d988e35add12b22827731b17f8cc2324ca927164dc67064a73aed41a19f418b05dcd57415a627ed9b90081a911644ec88204526c31b16666ba3f514caaaef72ce5bbaa4babb19f35bdd4ef1c7adefd414879f5805526fb9b9cd01566dc35d9599ed58e679373666e938ea0214c14368673f4e5b9766686b6d147ec567c4cd004766a0fa8f2280ab5494e9eca329808000000", + "5c278dd4ca54b9c14789357f0311bcbf1b6d3182bcc76d229cb15cfbe6255ed0": "03000600000000000000fd4901010073ad0e00030001d0c2ab39e1fddbcdee48d2c2c2e807586603d6ff1b31189e46b95849eb00000032ffffffffffff0332ffffffffffff03a1f0b0ce837010f234e3b5906ac171adf25b46fb535e7de4831128c19dc9939a71039d227e355a9b47d7612dd0a3a3d51c588284eb43a9ba7b4f62589db5a16ae1b50305a16093fe5a7c8d9c6ab35e4e97021398ecabbf90ab1199e9c649c8abe65af1a77de449980720775ec2efda5cb1b0e23a002f32a2825f02b070c627e90220bb30a37dd4072ffebffeaa81ba5ca2335137a76da711c86b11666b7e8794846caf4170f9bb99b31f9837408f9f13a5b548cda8a6bf6c980f0351584079b5e4c710123217e7876c4bd2f935b6f098306cd75c07231780cd68e27e97283e37180372cd266ebba1e0c514bd6c304ae58c71c9b1653f4df6bc33553fa22adde4429cbc3ecb9eda76bd4d256eabbb98d4" +} +``` + +_See also_ + +* [GetRawTransaction](../api/remote-procedure-calls-raw-transactions.md#getrawtransaction): gets a hex-encoded serialized transaction or a JSON object describing the transaction. * [GetSpecialTxes](../api/remote-procedure-calls-blockchain.md#getspecialtxes): returns an array of special transactions found in the specified block * [GetTransaction](../api/remote-procedure-calls-wallet.md#gettransaction): gets detailed information about an in-wallet transaction. From 0af1ec7938c90194c1d17a66d2006c3606091600 Mon Sep 17 00:00:00 2001 From: thephez Date: Thu, 1 Feb 2024 15:46:11 -0500 Subject: [PATCH 02/13] docs(rpc): update quick reference --- docs/api/remote-procedure-call-quick-reference.md | 1 + 1 file changed, 1 insertion(+) diff --git a/docs/api/remote-procedure-call-quick-reference.md b/docs/api/remote-procedure-call-quick-reference.md index 98ba491e..eaa79f1f 100644 --- a/docs/api/remote-procedure-call-quick-reference.md +++ b/docs/api/remote-procedure-call-quick-reference.md @@ -130,6 +130,7 @@ These RPCs are all Dash-specific and not found in Bitcoin Core * [FinalizePSBT](../api/remote-procedure-calls-raw-transactions.md#finalizepsbt): finalizes the inputs of a PSBT. The PSBT produces a network serialized transaction if the transaction is fully signed. _New in Dash Core 18.0.0_ * [FundRawTransaction](../api/remote-procedure-calls-raw-transactions.md#fundrawtransaction): adds inputs to a transaction until it has enough in value to meet its out value. **Updated in Dash Core 20.0.0** * [GetRawTransaction](../api/remote-procedure-calls-raw-transactions.md#getrawtransaction): gets a hex-encoded serialized transaction or a JSON object describing the transaction. By default, Dash Core only stores complete transaction data for UTXOs and your own transactions, so the RPC may fail on historic transactions unless you use the non-default `txindex=1` in your Dash Core startup settings. _Updated in Dash Core 0.16.0_ +* [GetRawTransactionMulti](../api/remote-procedure-calls-raw-transactions.md#getrawtransactionmulti): gets hex-encoded serialized transactions or a JSON object describing the multiple transactions. **Added in Dash Core 20.1.0** * [GetTxChainlocks](../api/remote-procedure-calls-raw-transactions.md#gettxchainlocks): returns the block height each transaction was mined at and whether it is ChainLocked or not. **Added in Dash Core 20.0.0** * [JoinPSBTs](../api/remote-procedure-calls-raw-transactions.md#joinpsbts): joins multiple distinct PSBTs with different inputs and outputs into one PSBT with inputs and outputs from all of the PSBTs. * [SendRawTransaction](../api/remote-procedure-calls-raw-transactions.md#sendrawtransaction): validates a transaction and broadcasts it to the peer-to-peer network. _Updated in Dash Core 0.15.0_ From 85befa257be856210efd53ee3a00b4d071b7c6b3 Mon Sep 17 00:00:00 2001 From: thephez Date: Thu, 1 Feb 2024 15:49:16 -0500 Subject: [PATCH 03/13] docs(rpc): fix urls --- docs/api/remote-procedure-calls-raw-transactions.md | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/docs/api/remote-procedure-calls-raw-transactions.md b/docs/api/remote-procedure-calls-raw-transactions.md index 0ea67869..a201a806 100644 --- a/docs/api/remote-procedure-calls-raw-transactions.md +++ b/docs/api/remote-procedure-calls-raw-transactions.md @@ -1150,7 +1150,7 @@ _See also_ ## GetRawTransactionMulti -The [`getrawtransactionmulti` RPC](../api/remote-procedure-calls-raw-transactions.md#getrawtransactionmulti) gets hex-encoded serialized transactions or a JSON object describing the transactions. This RPC returns the same type of information as the [`getrawtransaction` RPC](../api/remote-procedure-calls-raw-transactions.md#getrawtransactionmulti). +The [`getrawtransactionmulti` RPC](../api/remote-procedure-calls-raw-transactions.md#getrawtransactionmulti) gets hex-encoded serialized transactions or a JSON object describing the transactions. This RPC returns the same type of information as the [`getrawtransaction` RPC](../api/remote-procedure-calls-raw-transactions.md#getrawtransaction). _Parameter #1---block hashes and transaction hash list_ @@ -1177,14 +1177,14 @@ _Result (if verbose=`false`)---the serialized transactions_ | Name | Type | Presence | Description | | -------- | ------------ | ----------------------- | ----------- | | `result` | object | Required
(exactly 1) | If the transaction was found, this will be an object containing the serialized transaction encoded as hex. | -|→
TXID / Raw tx | string:string | Required
(1 or more) | A key/value pair with the transaction ID (key) and raw transaction data (value). See the [`getrawtransaction` RPC](../api/remote-procedure-calls-raw-transactions.md#getrawtransactionmulti) for an example of the hex transaction data. | +|→
TXID / Raw tx | string:string | Required
(1 or more) | A key/value pair with the transaction ID (key) and raw transaction data (value). See the [`getrawtransaction` RPC](../api/remote-procedure-calls-raw-transactions.md#getrawtransaction) for an example of the hex transaction data. | _Result (if verbose=`true`)---the decoded transactions_ | Name | Type | Presence | Description | | --------------------------- | -------------- | ----------------------- | ----------- | | `result` | object | Required
(exactly 1) | If the transaction was found, this will be an object describing it | -|→
TXID / Decoded tx | string:string | Required
(1 or more) | A key/value pair with the transaction ID (key) and decoded transaction data represented in JSON (value). See the [`getrawtransaction` RPC](../api/remote-procedure-calls-raw-transactions.md#getrawtransactionmulti) for an example of the decoded transaction data. | +|→
TXID / Decoded tx | string:string | Required
(1 or more) | A key/value pair with the transaction ID (key) and decoded transaction data represented in JSON (value). See the [`getrawtransaction` RPC](../api/remote-procedure-calls-raw-transactions.md#getrawtransaction) for an example of the decoded transaction data. | _Examples from Dash Core 20.1.0_ From 4241dc70e4a5443a13a775a55c5bc6018ec10794 Mon Sep 17 00:00:00 2001 From: thephez Date: Thu, 1 Feb 2024 16:57:09 -0500 Subject: [PATCH 04/13] docs(rpc): add internal links --- docs/api/remote-procedure-calls-raw-transactions.md | 12 ++++++++++-- 1 file changed, 10 insertions(+), 2 deletions(-) diff --git a/docs/api/remote-procedure-calls-raw-transactions.md b/docs/api/remote-procedure-calls-raw-transactions.md index a201a806..4fa8a4b7 100644 --- a/docs/api/remote-procedure-calls-raw-transactions.md +++ b/docs/api/remote-procedure-calls-raw-transactions.md @@ -893,12 +893,20 @@ _Result (if transaction not found)---`null`_ | -------- | ---- | ----------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | | `result` | null | Required
(exactly 1) | If the transaction wasn't found, the result will be JSON `null`. This can occur because the transaction doesn't exist in the block chain or memory pool, or because it isn't part of the transaction index. See the Dash Core `-help` entry for `-txindex` | +```{eval-rst} +.. _rpc-raw-txs-getrawtx-hex: +``` + _Result (if verbose=`false`)---the serialized transaction_ | Name | Type | Presence | Description | | -------- | ------------ | ----------------------- | ------------------------------------------------------------------------------------ | | `result` | string (hex) | Required
(exactly 1) | If the transaction was found, this will be the serialized transaction encoded as hex | +```{eval-rst} +.. _rpc-raw-txs-getrawtx-decoded: +``` + _Result (if verbose=`true`)---the decoded transaction_ | Name | Type | Presence | Description | @@ -1177,14 +1185,14 @@ _Result (if verbose=`false`)---the serialized transactions_ | Name | Type | Presence | Description | | -------- | ------------ | ----------------------- | ----------- | | `result` | object | Required
(exactly 1) | If the transaction was found, this will be an object containing the serialized transaction encoded as hex. | -|→
TXID / Raw tx | string:string | Required
(1 or more) | A key/value pair with the transaction ID (key) and raw transaction data (value). See the [`getrawtransaction` RPC](../api/remote-procedure-calls-raw-transactions.md#getrawtransaction) for an example of the hex transaction data. | +|→
TXID / Raw tx | string:string | Required
(1 or more) | A key/value pair with the transaction ID (key) and raw transaction data (value). See the [`getrawtransaction` RPC](../api/remote-procedure-calls-raw-transactions.md#rpc-raw-txs-getrawtx-hex) for an example of the hex transaction data. | _Result (if verbose=`true`)---the decoded transactions_ | Name | Type | Presence | Description | | --------------------------- | -------------- | ----------------------- | ----------- | | `result` | object | Required
(exactly 1) | If the transaction was found, this will be an object describing it | -|→
TXID / Decoded tx | string:string | Required
(1 or more) | A key/value pair with the transaction ID (key) and decoded transaction data represented in JSON (value). See the [`getrawtransaction` RPC](../api/remote-procedure-calls-raw-transactions.md#getrawtransaction) for an example of the decoded transaction data. | +|→
TXID / Decoded tx | string:string | Required
(1 or more) | A key/value pair with the transaction ID (key) and decoded transaction data represented in JSON (value). See the [`getrawtransaction` RPC](../api/remote-procedure-calls-raw-transactions.md#rpc-raw-txs-getrawtx-decoded) for an example of the decoded transaction data. | _Examples from Dash Core 20.1.0_ From 973a53da58b8ef69ceec4b994bddebf9377f2e49 Mon Sep 17 00:00:00 2001 From: thephez Date: Mon, 5 Feb 2024 11:30:52 -0500 Subject: [PATCH 05/13] feat: add getassetunlockstatuses --- ...remote-procedure-calls-raw-transactions.md | 52 +++++++++++++++++++ 1 file changed, 52 insertions(+) diff --git a/docs/api/remote-procedure-calls-raw-transactions.md b/docs/api/remote-procedure-calls-raw-transactions.md index 4fa8a4b7..44660254 100644 --- a/docs/api/remote-procedure-calls-raw-transactions.md +++ b/docs/api/remote-procedure-calls-raw-transactions.md @@ -853,6 +853,58 @@ _See also_ * [SendRawTransaction](../api/remote-procedure-calls-raw-transactions.md#sendrawtransaction): validates a transaction and broadcasts it to the peer-to-peer network. * [Serialized Transaction Format](../reference/transactions-raw-transaction-format.md) +```{eval-rst} +.. _api-rpc-raw-transactions-getassetunlockstatuses: +``` + +## GetAssetUnlockStatuses + +The [`getassetunlockstatuses` RPC](../api/remote-procedure-calls-raw-transactions.md#getassetunlockstatuses) returns the status of the provided Asset Unlock indexes at the tip of the chain or at a particular block height if specified. + +_Parameter #1---indexes_ + +| Name | Type | Presence | Description | +| ------- | ----- | -------- | ----------- | +| indexes | array | Required | An array of Asset Unlock indexes (no more than 100). Each element is a numeric Asset Unlock index. | + +_Parameter #2---height_ + +| Name | Type | Presence | Description | +| ------ | ------- | ----------------- | ----------- | +| height | numeric | Optional (0 or 1) | The maximum block height to check. If not specified, the chain's tip is used. | + +_Result---Status of the Asset Unlock indexes_ + +| Name | Type | Presence | Description | +| ------ | ----- | ----------------------- | ----------- | +| Result | array | Required (Exactly 1) | An array with the status of each Asset Unlock index. Each element in the array is a JSON object containing the index and its status. | +| → Index data | object | Required
(1 or more) | Details for an Asset Unlock index | +| → →
index | numeric | Required
(Exactly 1) | The Asset Unlock index | +| → →
status | string | Required
(Exactly 1) | Status of the Asset Unlock index. The possible outcomes per each index are:
- `chainlocked`: If the Asset Unlock index is mined on a ChainLocked block or up to the given block height.
- `mined`: If no ChainLock information is available for the mined Asset Unlock index.
- `mempooled`: If the Asset Unlock index is in the mempool.
- `unknown`: If none of the above are valid.
Note: If a specific block height is passed on request, then only `chainlocked` and `unknown` outcomes are possible. | + +_Example from Dash Core 20.1.0_ + +```bash +dash-cli getassetunlockstatuses '["1", "2"]' +``` + +Result: + +```json +[ + { + "index": 1, + "status": "chainlocked" + }, + { + "index": 2, + "status": "mempooled" + } +] +``` + +_See also: none_ + ```{eval-rst} .. _api-rpc-raw-transactions-getrawtransaction: ``` From b37b52c1bbb59157f6ff34cf3d09d86b45270fed Mon Sep 17 00:00:00 2001 From: thephez Date: Mon, 5 Feb 2024 11:46:24 -0500 Subject: [PATCH 06/13] docs: update quick ref with new rpc --- docs/api/remote-procedure-call-quick-reference.md | 1 + 1 file changed, 1 insertion(+) diff --git a/docs/api/remote-procedure-call-quick-reference.md b/docs/api/remote-procedure-call-quick-reference.md index eaa79f1f..e4194c6d 100644 --- a/docs/api/remote-procedure-call-quick-reference.md +++ b/docs/api/remote-procedure-call-quick-reference.md @@ -123,6 +123,7 @@ These RPCs are all Dash-specific and not found in Bitcoin Core * [CombineRawTransaction](../api/remote-procedure-calls-raw-transactions.md#combinerawtransaction): combine multiple partially signed transactions into one transaction. _New in Dash Core 0.15.0_ * [ConvertToPSBT](../api/remote-procedure-calls-raw-transactions.md#converttopsbt): converts a network serialized transaction to a PSBT. _New in Dash Core 18.0.0_ * [CreatePSBT](../api/remote-procedure-calls-raw-transactions.md#createpsbt): creates a transaction in the Partially Signed Transaction (PST) format. _New in Dash Core 18.0.0_ +* [GetAssetUnlockStatuses](../api/remote-procedure-calls-raw-transactions.md#getassetunlockstatuses): returns the status of the provided Asset Unlock indexes at the tip of the chain or at a particular block height if specified. **New in Dash Core 20.1.0** * [CreateRawTransaction](../api/remote-procedure-calls-raw-transactions.md#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. _Updated in Dash Core 0.17.0_ * [DecodePSBT](../api/remote-procedure-calls-raw-transactions.md#decodepsbt): returns a JSON object representing the serialized, base64-encoded partially signed Dash transaction. _New in Dash Core 18.0.0_ * [DecodeRawTransaction](../api/remote-procedure-calls-raw-transactions.md#decoderawtransaction): decodes a serialized transaction hex string into a JSON object describing the transaction. _Updated in Dash Core 0.13.0_ From 2ccf4cf04d65e2ddfcb6462acbda48e448978eea Mon Sep 17 00:00:00 2001 From: thephez Date: Mon, 5 Feb 2024 11:47:29 -0500 Subject: [PATCH 07/13] doc: make see also consistent on page --- ...remote-procedure-calls-raw-transactions.md | 24 +++++++++---------- 1 file changed, 12 insertions(+), 12 deletions(-) diff --git a/docs/api/remote-procedure-calls-raw-transactions.md b/docs/api/remote-procedure-calls-raw-transactions.md index 44660254..1611ea01 100644 --- a/docs/api/remote-procedure-calls-raw-transactions.md +++ b/docs/api/remote-procedure-calls-raw-transactions.md @@ -254,7 +254,7 @@ Result: cHNidP8BAEICAAAAAXgRxzbShUlivVFKgoLyhk0RCCYLZKCYTl/tYRd+yGImAAAAAAD/////AQAAAAAAAAAABmoEAAECAwAAAAAAAAA= ``` -_See also_ +_See also:_ * [CombinePSBT](../api/remote-procedure-calls-raw-transactions.md#combinepsbt): combine multiple partially-signed Dash transactions into one transaction. * [ConvertToPSBT](../api/remote-procedure-calls-raw-transactions.md#converttopsbt): converts a network serialized transaction to a PSBT. @@ -328,7 +328,7 @@ Result: acc0a8f9be010000001976a914811eacc14db8ebb5b64486dc43400c0226b428a488ac00000000 ``` -_See also_ +_See also:_ * [CombineRawTransaction](../api/remote-procedure-calls-raw-transactions.md#combinerawtransaction): combine multiple partially signed transactions into one transaction. * [DecodeRawTransaction](../api/remote-procedure-calls-raw-transactions.md#decoderawtransaction): decodes a serialized transaction hex string into a JSON object describing the transaction. @@ -677,7 +677,7 @@ Result: } ``` -_See also_ +_See also:_ * [CombineRawTransaction](../api/remote-procedure-calls-raw-transactions.md#combinerawtransaction): combine multiple partially signed transactions into one transaction. * [CreateRawTransaction](../api/remote-procedure-calls-raw-transactions.md#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. @@ -733,7 +733,7 @@ Result: } ``` -_See also_ +_See also:_ * [CreateMultiSig](../api/remote-procedure-calls-util.md#createmultisig): creates a P2SH multi-signature address. @@ -845,7 +845,7 @@ Result: } ``` -_See also_ +_See also:_ * [CreateRawTransaction](../api/remote-procedure-calls-raw-transactions.md#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](../api/remote-procedure-calls-raw-transactions.md#decoderawtransaction): decodes a serialized transaction hex string into a JSON object describing the transaction. @@ -1202,7 +1202,7 @@ Result: } ``` -_See also_ +_See also:_ * [GetRawTransactionMulti](../api/remote-procedure-calls-raw-transactions.md#getrawtransactionmulti): gets hex-encoded serialized transactions or a JSON object describing the transactions. * [GetSpecialTxes](../api/remote-procedure-calls-blockchain.md#getspecialtxes): returns an array of special transactions found in the specified block @@ -1263,7 +1263,7 @@ Result: } ``` -_See also_ +_See also:_ * [GetRawTransaction](../api/remote-procedure-calls-raw-transactions.md#getrawtransaction): gets a hex-encoded serialized transaction or a JSON object describing the transaction. * [GetSpecialTxes](../api/remote-procedure-calls-blockchain.md#getspecialtxes): returns an array of special transactions found in the specified block @@ -1341,7 +1341,7 @@ Result: cHNidP8BAHoCAAAAAvisRhf3kqdGJdB8vKvQz81ze9cH6bh0RKZfFTMsXatUAAAAAAD/////eBHHNtKFSWK9UUqCgvKGTREIJgtkoJhOX+1hF37IYiYAAAAAAP////8CAAAAAAAAAAAGagQAAQIDAAAAAAAAAAAGagQAAQIDAAAAAAAAAAAA ``` -_See also_ +_See also:_ * [CombinePSBT](../api/remote-procedure-calls-raw-transactions.md#combinepsbt): combine multiple partially-signed Dash transactions into one transaction. * [ConvertToPSBT](../api/remote-procedure-calls-raw-transactions.md#converttopsbt): converts a network serialized transaction to a PSBT. @@ -1409,7 +1409,7 @@ Result: 2f124cb550d9967b81914b544dea3783de23e85d67a9816f9bada665ecfe1cd5 ``` -_See also_ +_See also:_ * [CombineRawTransaction](../api/remote-procedure-calls-raw-transactions.md#combinerawtransaction): combine multiple partially signed transactions into one transaction. * [CreateRawTransaction](../api/remote-procedure-calls-raw-transactions.md#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. @@ -1483,7 +1483,7 @@ Result: } ``` -_See also_ +_See also:_ * [CombineRawTransaction](../api/remote-procedure-calls-raw-transactions.md#combinerawtransaction): combine multiple partially signed transactions into one transaction. * [CreateRawTransaction](../api/remote-procedure-calls-raw-transactions.md#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. @@ -1533,7 +1533,7 @@ Result: ] ``` -_See also_ +_See also:_ * [CombineRawTransaction](../api/remote-procedure-calls-raw-transactions.md#combinerawtransaction): combine multiple partially signed transactions into one transaction. * [CreateRawTransaction](../api/remote-procedure-calls-raw-transactions.md#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. @@ -1579,7 +1579,7 @@ Result: cHNidP8BAEICAAAAAXgRxzbShUlivVFKgoLyhk0RCCYLZKCYTl/tYRd+yGImAAAAAAD/////AQAAAAAAAAAABmoEAAECAwAAAAAAAAA= ``` -_See also_ +_See also:_ * [CombinePSBT](../api/remote-procedure-calls-raw-transactions.md#combinepsbt): combine multiple partially-signed Dash transactions into one transaction. * [ConvertToPSBT](../api/remote-procedure-calls-raw-transactions.md#converttopsbt): converts a network serialized transaction to a PSBT. From 82707caa85b50c68705eb2f2248cebde53af16d6 Mon Sep 17 00:00:00 2001 From: thephez Date: Mon, 5 Feb 2024 13:18:21 -0500 Subject: [PATCH 08/13] docs: add new rpc to quick ref --- docs/api/remote-procedure-call-quick-reference.md | 1 + 1 file changed, 1 insertion(+) diff --git a/docs/api/remote-procedure-call-quick-reference.md b/docs/api/remote-procedure-call-quick-reference.md index e4194c6d..7e8fa508 100644 --- a/docs/api/remote-procedure-call-quick-reference.md +++ b/docs/api/remote-procedure-call-quick-reference.md @@ -80,6 +80,7 @@ These RPCs are all Dash-specific and not found in Bitcoin Core * [BLS](../api/remote-procedure-calls-evo.md#bls): provides a set of commands to execute BLS-related actions. **_Updated in Dash Core 19.0.0_** * [ProTx](../api/remote-procedure-calls-evo.md#protx): provides a set of commands to execute ProTx related actions. **Updated in Dash Core 20.0.0** * [Quorum](../api/remote-procedure-calls-evo.md#quorum): provides a set of commands for quorums (LLMQs). **Updated in Dash Core 20.1.0** +* [SubmitChainLock](../api/remote-procedure-calls-evo.md#submitchainlock): allows the submission of a ChainLock signature. **New in Dash Core 20.1.0** * [VerifyChainLock](../api/remote-procedure-calls-evo.md#verifychainlock): tests if a quorum signature is valid for a ChainLock. _New in Dash Core 0.17.0_ * [VerifyISLock](../api/remote-procedure-calls-evo.md#verifyislock): tests if a quorum signature is valid for an InstantSend lock. _New in Dash Core 0.17.0_ From 76e94dba79e9c40240aaf2f55cc2eab4c9c03e01 Mon Sep 17 00:00:00 2001 From: thephez Date: Mon, 5 Feb 2024 13:22:49 -0500 Subject: [PATCH 09/13] style: consistent formatting --- docs/api/remote-procedure-calls-evo.md | 68 +++++++++++++------------- 1 file changed, 34 insertions(+), 34 deletions(-) diff --git a/docs/api/remote-procedure-calls-evo.md b/docs/api/remote-procedure-calls-evo.md index 70645154..2503b7bf 100644 --- a/docs/api/remote-procedure-calls-evo.md +++ b/docs/api/remote-procedure-calls-evo.md @@ -126,7 +126,7 @@ The `protx diff` RPC calculates a diff and a proof between two masternode list. | Name | Type | Presence | Description | | ---------- | ------- | -------------------- | ------------------------------------------------------------------------------------------------ | -| `extended` | boolean | Optional
(0 or 1) | _Added in Dash Core 18.1.0_
Show additional fields (e.g. `payoutAddress`) (default=`false`) | +| `extended` | boolean | Optional
(0 or 1) | *Added in Dash Core 18.1.0*
Show additional fields (e.g. `payoutAddress`) (default=`false`) | *Result---JSON provider registration transaction details* @@ -150,8 +150,8 @@ The `protx diff` RPC calculates a diff and a proof between two masternode list. | → →
`isValid` | bool | Required
(exactly 1) | Set to `true` if masternode is valid | | → →
`platformHTTPPort` | number | Optional
(0 or 1) | **Added in Dash Core 19.0.0**
TCP port of Platform HTTP/API interface (evonodes only) | | → →
`platformNodeID` | string (hex) | Optional
(0 or 1) | **Added in Dash Core 19.0.0**
Platform P2P node ID, derived from P2P public key (evonodes only) | -| → →
`payoutAddress` | string | Optional
(0 or 1) | _Added in Dash Core 18.1.0_
The owner's payout address. Only included if the `extended` parameter is set to `true`. | -| → →
`operatorPayoutAddress` | string | Required
(exactly 1) | _Added in Dash Core 18.1.0_
The operator's payout address. Only included if the `extended` parameter is set to `true`. | +| → →
`payoutAddress` | string | Optional
(0 or 1) | *Added in Dash Core 18.1.0*
The owner's payout address. Only included if the `extended` parameter is set to `true`. | +| → →
`operatorPayoutAddress` | string | Required
(exactly 1) | *Added in Dash Core 18.1.0*
The operator's payout address. Only included if the `extended` parameter is set to `true`. | | →
`deletedQuorums` | array | Required
(exactly 1) | An array of deleted quorums | | → →
`llmqType` | number | Required
(exactly 1) | The quorum type | | → →
`quorumHash` | string (hex) | Required
(exactly 1) | The hash of the quorum | @@ -159,7 +159,7 @@ The `protx diff` RPC calculates a diff and a proof between two masternode list. | → →
`version` | number | Required
(exactly 1) | The quorum version | | → →
`llmqType` | number | Required
(exactly 1) | The quorum type | | → →
`quorumHash` | string (hex) | Required
(exactly 1) | The hash of the quorum | -| → →
`quorumIndex` | number | Required
(exactly 1) | _Added in Dash Core 18.0.0_
The index of the quorum | +| → →
`quorumIndex` | number | Required
(exactly 1) | *Added in Dash Core 18.0.0*
The index of the quorum | | → →
`signersCount` | number | Required
(exactly 1) | The number of signers for the quorum | | → →
`signers` | string (hex) | Required
(exactly 1) | *Added in Dash Core 0.16.0*
Bitset representing the aggregated signers of this final commitment | | → →
`validMembersCount` | number | Required
(exactly 1) | The number of valid members in the quorum | @@ -316,7 +316,7 @@ The `protx info` RPC returns detailed information about a deterministic masterno | → →
`ownsCollateral` | bool | Required
(exactly 1) | The collateral is owned by this wallet | | → →
`ownsPayeeScript` | bool | Required
(exactly 1) | The payee script is owned by this wallet | | → →
`ownsOperatorRewardScript` | bool | Required
(exactly 1) | The operator reward script is owned by this wallet | -| →
`metaInfo` | object/null | Required
(exactly 1) | _Added in Dash Core 0.16.0_
An object containing a metainfo related to this ProTx | +| →
`metaInfo` | object/null | Required
(exactly 1) | *Added in Dash Core 0.16.0*
An object containing a metainfo related to this ProTx | | → →
`lastDSQ` | string | Required
(exactly 1) | The owner key is present in this wallet | | → →
`mixingTxCount` | string | Required
(exactly 1) | The operator key is present in this wallet | | → →
`outboundAttemptCount` | integer | Required
(exactly 1) | **Added in Dash Core 19.2.0**
Number of outbound attempts | @@ -402,13 +402,13 @@ Lists all ProTxs in your wallet or on-chain, depending on the given type. If `ty | -------- | ------------ | -------------------- | ---------------------------------------------------------- | | `height` | number (int) | Optional
(0 or 1) | List ProTxs from this height (default: current chain tip). | -_Result (if `detailed` was `false`)---provider registration transaction hash_ +*Result (if `detailed` was `false`)---provider registration transaction hash* | Name | Type | Presence | Description | | -------- | ------------------- | ----------------------- | -------------------------------------------- | | `result` | string (hex): array | Required
(exactly 1) | Array of provider transaction (ProTx) hashes | -_Result (if `detailed` was `true`)---JSON provider registration transaction details_ +*Result (if `detailed` was `true`)---JSON provider registration transaction details* | Name | Type | Presence | Description | | ----------------------------------- | ------------ | ----------------------- | ----------------------------------------------------------------------------------------------- | @@ -443,7 +443,7 @@ _Result (if `detailed` was `true`)---JSON provider registration transaction deta | → →
`ownsCollateral` | bool | Required
(exactly 1) | The collateral is owned by this wallet | | → →
`ownsPayeeScript` | bool | Required
(exactly 1) | The payee script is owned by this wallet | | → →
`ownsOperatorRewardScript` | bool | Required
(exactly 1) | The operator reward script is owned by this wallet | -| →
`metaInfo` | object/null | Required
(exactly 1) | _Added in Dash Core 0.16.0_
An object containing a metainfo related to this ProTx | +| →
`metaInfo` | object/null | Required
(exactly 1) | *Added in Dash Core 0.16.0*
An object containing a metainfo related to this ProTx | | → →
`lastDSQ` | string | Required
(exactly 1) | The owner key is present in this wallet | | → →
`mixingTxCount` | string | Required
(exactly 1) | The operator key is present in this wallet | | → →
`outboundAttemptCount` | integer | Required
(exactly 1) | **Added in Dash Core 19.2.0**
Number of outbound attempts | @@ -662,7 +662,7 @@ The `protx register` RPC creates a ProRegTx referencing an existing collateral a | -------- | ---- | -------------------- | ---------------------------------------------------------------------- | | `submit` | bool | Optional
(0 or 1) | If `true` (default), the resulting transaction is sent to the network. | -_Result if `submit` is not set or set to `true`---provider registration transaction hash_ +*Result if `submit` is not set or set to `true`---provider registration transaction hash* | Name | Type | Presence | Description | | -------- | ------------ | ----------------------- | ------------------------------------------------- | @@ -684,7 +684,7 @@ Result: 61e6d780178d353940c4cb9b3073ac0c50792bbcf0b15c1750d2028b71e34929 ``` -_Result if `submit` set to `false`---serialized and signed provider registration transaction_ +*Result if `submit` set to `false`---serialized and signed provider registration transaction* | Name | Type | Presence | Description | | -------- | ------------ | ----------------------- | ------------------------------------------------------------------ | @@ -788,7 +788,7 @@ The `protx register_legacy` RPC works similar to `protx register`, but parses th | -------- | ---- | -------------------- | ---------------------------------------------------------------------- | | `submit` | bool | Optional
(0 or 1) | If `true` (default), the resulting transaction is sent to the network. | -_Result if `submit` is not set or set to `true`---provider registration transaction hash_ +*Result if `submit` is not set or set to `true`---provider registration transaction hash* | Name | Type | Presence | Description | | -------- | ------------ | ----------------------- | ------------------------------------------------- | @@ -809,7 +809,7 @@ Result: 61e6d780178d353940c4cb9b3073ac0c50792bbcf0b15c1750d2028b71e34929 ``` -_Result if `submit` set to `false`---serialized and signed provider registration transaction_ +*Result if `submit` set to `false`---serialized and signed provider registration transaction* | Name | Type | Presence | Description | | -------- | ------------ | ----------------------- | ------------------------------------------------------------------ | @@ -899,7 +899,7 @@ The `protx register_fund` RPC creates and funds a ProRegTx with the 1,000 DASH n | -------- | ---- | -------------------- | ---------------------------------------------------------------------- | | `submit` | bool | Optional
(0 or 1) | If `true` (default), the resulting transaction is sent to the network. | -_Result if `submit` is not set or set to `true`---provider registration transaction hash_ +*Result if `submit` is not set or set to `true`---provider registration transaction hash* | Name | Type | Presence | Description | | -------- | ------------ | ----------------------- | ------------------------------------------------- | @@ -920,7 +920,7 @@ Result: ba1b3330e16a0876b7a186e7ceb689f03ec646e611e91d7139de021bbf13afdd ``` -_Result if `submit` set to `false`---serialized and signed provider registration transaction_ +*Result if `submit` set to `false`---serialized and signed provider registration transaction* | Name | Type | Presence | Description | | -------- | ------------ | ----------------------- | ------------------------------------------------------------------ | @@ -1037,7 +1037,7 @@ Result: ba1b3330e16a0876b7a186e7ceb689f03ec646e611e91d7139de021bbf13afdd ``` -_Result if `submit` set to `false`---serialized and signed provider registration transaction_ +*Result if `submit` set to `false`---serialized and signed provider registration transaction* | Name | Type | Presence | Description | | -------- | ------------ | ----------------------- | ----------------------------------------- | @@ -1331,7 +1331,7 @@ The `protx register_evo` RPC functions similar to `protx register_fund_evo`, but | -------- | ---- | -------------------- | ---------------------------------------------------------------------- | | `submit` | bool | Optional
(0 or 1) | If `true` (default), the resulting transaction is sent to the network. | -_Result if `submit` is not set or set to `true`---provider registration transaction hash_ +*Result if `submit` is not set or set to `true`---provider registration transaction hash* | Name | Type | Presence | Description | | -------- | ------------ | ----------------------- | ------------------------------------------------- | @@ -1356,7 +1356,7 @@ Result: 61e6d780178d353940c4cb9b3073ac0c50792bbcf0b15c1750d2028b71e34929 ``` -_Result if `submit` set to `false`---serialized and signed provider registration transaction_ +*Result if `submit` set to `false`---serialized and signed provider registration transaction* | Name | Type | Presence | Description | | -------- | ------------ | ----------------------- | ------------------------------------------------------------------ | @@ -2073,13 +2073,13 @@ The `quorum info` RPC returns information about a specific quorum. | →
`height` | number | Required
(exactly 1) | Block height of the quorum | | →
`type` | string | Required
(exactly 1) | Type of LLMQ | | →
`quorumHash` | string (hex) | Required
(exactly 1) | The hash of the quorum | -| →
`quorumIndex` | number | Required
(exactly 1) | _Added in Dash Core 18.0.0_
The index of the quorum | +| →
`quorumIndex` | number | Required
(exactly 1) | *Added in Dash Core 18.0.0*
The index of the quorum | | →
`minedBlock` | string (hex) | Required
(exactly 1) | The hash of the block that established the quorum | | →
`previousConsecutiveDKGFailures` | number | Optional
(0 or 1) | **Added in Dash Core 19.0**
The number of previous consecutive DKG failures for the corresponding `quorumIndex` before the currently active one. Only present for rotating quorums. | | →
`members` | array | Required
(exactly 1) | An array containing quorum member details | | → →
Member | object | Required
(1 or more) | An object describing a particular member | | → → →
`proTxHash` | string (hex) | Required
(exactly 1) | The masternode's Provider Registration transaction hash | -| → → →
`service` | string | Required
(exactly 1) | _Added in Dash Core 18.1.0_
The masternode's IP:Port | +| → → →
`service` | string | Required
(exactly 1) | *Added in Dash Core 18.1.0*
The masternode's IP:Port | | → → →
`pubKeyOperator` | string (hex) | Required
(exactly 1) | *Added in Dash Core 0.15.0*
The masternode's Operator public key | | → → →
`valid` | bool | Required
(exactly 1) | Indicates if the member is valid | | → → →
`pubKeyShare` | string | Optional
(0 or 1) | Member public key share | @@ -2180,8 +2180,8 @@ The `quorum list` RPC displays the status of the current DKG process. | →
`timeStr` | string | Required
(exactly 1) | The UTC time as a string | | →
`session` | array of objects | Required
(exactly 1) | Array of objects containing DKG Session information | | → →
Session | object | Required
(exactly 1) | DKG session object | -| → → →
`llmqType` | string | Required
(exactly 1) | _Added in Dash Core 18.0.0_
[Quorum type name](https://github.com/dashpay/dips/blob/master/dip-0006/llmq-types.md) | -| → → →
`quorumIndex` | number | Required
(exactly 1) | _Added in Dash Core 18.0.0_
The index of the quorum | +| → → →
`llmqType` | string | Required
(exactly 1) | *Added in Dash Core 18.0.0*
[Quorum type name](https://github.com/dashpay/dips/blob/master/dip-0006/llmq-types.md) | +| → → →
`quorumIndex` | number | Required
(exactly 1) | *Added in Dash Core 18.0.0*
The index of the quorum | | → → →
`status` | object | Required
(exactly 1) | DKG session status information | | → → → →
`llmqType` | number | Required
(exactly 1) | [Type of quorum](https://github.com/dashpay/dips/blob/master/dip-0006.md#current-llmq-types):
`1` - LLMQ_50_60
`2` - LLMQ_400_60
`3` - LLMQ_400_85
`4` - LLMQ_100_67 | | → → → →
`quorumHash` | string (hex) | Required
(exactly 1) | The block hash of the quorum | @@ -2199,18 +2199,18 @@ The `quorum list` RPC displays the status of the current DKG process. | → → → →
`receivedJustifications` | number | Required
(exactly 1) | Number of justifications received | | → → → →
`receivedPrematureCommitments` | number | Required
(exactly 1) | Number of premature commitments received | | →
`quorumConnections` | array of objects | Required
(exactly 1) | **Modified in Dash Core 18.0.0**
Array of objects containing quorum connection information | -| → →
Quorum type | object | Required
(exactly 1) | _Added in Dash Core 18.0.0_
An object describing connection information for a quorum index and type | -| → → →
`llmqType` | string | Required
(exactly 1) | _Added in Dash Core 18.0.0_
[Quorum type name](https://github.com/dashpay/dips/blob/master/dip-0006/llmq-types.md) | -| → → →
`quorumIndex` | number | Required
(exactly 1) | _Added in Dash Core 18.0.0_
The index of the quorum | -| → → →
`pQuorumBaseBlockIndex` | number | Required
(exactly 1) | _Added in Dash Core 18.0.0_
The height of the quorum's base block | +| → →
Quorum type | object | Required
(exactly 1) | *Added in Dash Core 18.0.0*
An object describing connection information for a quorum index and type | +| → → →
`llmqType` | string | Required
(exactly 1) | *Added in Dash Core 18.0.0*
[Quorum type name](https://github.com/dashpay/dips/blob/master/dip-0006/llmq-types.md) | +| → → →
`quorumIndex` | number | Required
(exactly 1) | *Added in Dash Core 18.0.0*
The index of the quorum | +| → → →
`pQuorumBaseBlockIndex` | number | Required
(exactly 1) | *Added in Dash Core 18.0.0*
The height of the quorum's base block | | → → →
`quorumHash` | string (hex) | Required
(exactly 1) | The block hash of the quorum | -| → → →
`pindexTip` | number | Required
(exactly 1) | _Added in Dash Core 18.0.0_
The height of the quorum's index tip | +| → → →
`pindexTip` | number | Required
(exactly 1) | *Added in Dash Core 18.0.0*
The height of the quorum's index tip | | → → →
`quorumConnections` | array of objects | Required
(exactly 1) | Array of objects containing quorum connection information | -| → → → →
Connection | object | Required
(exactly 1) | _Added in Dash Core 0.16.0_

An object describing a quorum connection | -| → → → →→
`proTxHash` | string (hex) | Required
(exactly 1) | _Added in Dash Core 0.16.0_

The hash of the quorum member's provider registration transaction as hex in RPC byte order | -| → → → →→
`connected` | boolean | Required
(exactly 1) | _Added in Dash Core 0.16.0_

Whether or not the connection is active | -| → → → →→
`address` | string | Optional
(exactly 1) | _Added in Dash Core 0.16.0_

Address | -| → → → →→
`outbound` | boolean | Required
(exactly 1) | _Added in Dash Core 0.16.0_

Whether or not this is an outbound connection | +| → → → →
Connection | object | Required
(exactly 1) | *Added in Dash Core 0.16.0*

An object describing a quorum connection | +| → → → →→
`proTxHash` | string (hex) | Required
(exactly 1) | *Added in Dash Core 0.16.0*

The hash of the quorum member's provider registration transaction as hex in RPC byte order | +| → → → →→
`connected` | boolean | Required
(exactly 1) | *Added in Dash Core 0.16.0*

Whether or not the connection is active | +| → → → →→
`address` | string | Optional
(exactly 1) | *Added in Dash Core 0.16.0*

Address | +| → → → →→
`outbound` | boolean | Required
(exactly 1) | *Added in Dash Core 0.16.0*

Whether or not this is an outbound connection | | →
`minableCommitments` | object | Required
(exactly 1) | Object containing minable commitments | *Result (if detail level was 1)---JSON DKG details including member index* @@ -2882,15 +2882,15 @@ The `quorum sign` RPC requests threshold-signing for a message. | Name | Type | Presence | Description | | -------- | ---- | -------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `submit` | bool | Optional
(0 or 1) | _Added in Dash Core 0.17.0_

Submits the signature share to the network if this is `true` (default). Returns an object containing the signature share if this is `false`. | +| `submit` | bool | Optional
(0 or 1) | *Added in Dash Core 0.17.0*

Submits the signature share to the network if this is `true` (default). Returns an object containing the signature share if this is `false`. | -_Result---(if submit = `true`) status_ +*Result---(if submit = `true`) status* | Name | Type | Presence | Description | | ------ | ---- | ----------------------- | ---------------------------------- | | result | bool | Required
(exactly 1) | True or false depending on success | -_Result---(if submit = `false`) signature share JSON object_ +*Result---(if submit = `false`) signature share JSON object* | Name | Type | Presence | Description | | ------------------- | ------------ | ----------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | From 3ac62cca5b5038d9c2a0e0db1e6fa0226d4a30e0 Mon Sep 17 00:00:00 2001 From: thephez Date: Mon, 5 Feb 2024 13:23:03 -0500 Subject: [PATCH 10/13] docs: add submitchainlock rpc --- docs/api/remote-procedure-calls-evo.md | 32 ++++++++++++++++++++++++++ 1 file changed, 32 insertions(+) diff --git a/docs/api/remote-procedure-calls-evo.md b/docs/api/remote-procedure-calls-evo.md index 2503b7bf..deb65c93 100644 --- a/docs/api/remote-procedure-calls-evo.md +++ b/docs/api/remote-procedure-calls-evo.md @@ -4065,6 +4065,38 @@ Result: true ``` +## SubmitChainlock + +The [`submitchainlock` RPC](../api/remote-procedure-calls-evo.md#submitchainlock) is used to submit a ChainLock signature if the node does not yet have it. + +*Parameters* + +| Name | Type | Presence | Description | +| --------- | ------ | -------- | ----------- | +| blockHash | string | Required | The block hash of the ChainLock | +| signature | string | Required | The signature of the ChainLock | +| blockHeight | numeric | Required | The height of the ChainLock | + +*Result---The height of the current best ChainLock* + +| Name | Type | Presence | Description | +| ------ | ------- | ----------------------- | ----------- | +| Result | numeric | Required (Exactly 1) | The height of the current best ChainLock. If an error occurs, `-1` is returned. | + +*Example from Dash Core 20.1.0* + +```bash +dash-cli submitchainlock "000000f7e552718cf326024ba0b0110695300b730873de1942a4106b665fc034" "3045022100a59e3b0f..." 964445 +``` + +Result: + +```text +964445 +``` + +*See also: none* + ## VerifyChainLock > 👍 From 032ed437196ea3e183132704e8b6d185e75e550e Mon Sep 17 00:00:00 2001 From: thephez Date: Mon, 5 Feb 2024 13:23:18 -0500 Subject: [PATCH 11/13] docs: minor update --- docs/api/remote-procedure-calls-evo.md | 3 +++ 1 file changed, 3 insertions(+) diff --git a/docs/api/remote-procedure-calls-evo.md b/docs/api/remote-procedure-calls-evo.md index deb65c93..ef4e9f67 100644 --- a/docs/api/remote-procedure-calls-evo.md +++ b/docs/api/remote-procedure-calls-evo.md @@ -535,6 +535,7 @@ Result: } ] ``` + ### ProTx List Diff The `protx listdiff` RPC calculates a full MN list diff between two masternode lists. @@ -551,6 +552,8 @@ The `protx listdiff` RPC calculates a full MN list diff between two masternode l | ------- | ------- | -------------------- | -----------------------| | `block` | numeric | Required (exactly 1) | The ending block height| +*Example from Dash Core* + ```bash dash-cli -testnet protx listdiff 7100 7135 ``` From 7e0c0a1a87e7cfaa4b58cf6716eb7285fbd6c8ec Mon Sep 17 00:00:00 2001 From: thephez Date: Mon, 5 Feb 2024 13:30:54 -0500 Subject: [PATCH 12/13] docs: consolidate params table --- docs/api/remote-procedure-calls-raw-transactions.md | 9 ++------- 1 file changed, 2 insertions(+), 7 deletions(-) diff --git a/docs/api/remote-procedure-calls-raw-transactions.md b/docs/api/remote-procedure-calls-raw-transactions.md index 1611ea01..71eda959 100644 --- a/docs/api/remote-procedure-calls-raw-transactions.md +++ b/docs/api/remote-procedure-calls-raw-transactions.md @@ -861,16 +861,11 @@ _See also:_ The [`getassetunlockstatuses` RPC](../api/remote-procedure-calls-raw-transactions.md#getassetunlockstatuses) returns the status of the provided Asset Unlock indexes at the tip of the chain or at a particular block height if specified. -_Parameter #1---indexes_ +_Parameters_ | Name | Type | Presence | Description | | ------- | ----- | -------- | ----------- | -| indexes | array | Required | An array of Asset Unlock indexes (no more than 100). Each element is a numeric Asset Unlock index. | - -_Parameter #2---height_ - -| Name | Type | Presence | Description | -| ------ | ------- | ----------------- | ----------- | +| Indexes | array | Required | An array of Asset Unlock indexes (no more than 100). Each element is a numeric Asset Unlock index. | | height | numeric | Optional (0 or 1) | The maximum block height to check. If not specified, the chain's tip is used. | _Result---Status of the Asset Unlock indexes_ From bad755b7e42360ea5e704083c8e8d1824be5ada5 Mon Sep 17 00:00:00 2001 From: thephez Date: Wed, 7 Feb 2024 16:02:59 -0500 Subject: [PATCH 13/13] docs: address review comments --- docs/api/remote-procedure-calls-raw-transactions.md | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/docs/api/remote-procedure-calls-raw-transactions.md b/docs/api/remote-procedure-calls-raw-transactions.md index 71eda959..b90a1867 100644 --- a/docs/api/remote-procedure-calls-raw-transactions.md +++ b/docs/api/remote-procedure-calls-raw-transactions.md @@ -1212,7 +1212,7 @@ _Parameter #1---block hashes and transaction hash list_ | Name | Type | Presence | Description | | ---- | ------------ | ----------------------- | ----------- | | Transactions | object | Required
(exactly 1) | A JSON object with block hashes as keys and lists of transaction hashes as values (no more than 100 in total) | -|→
Block Hash | array | Required
(1 or more) | The block hash and the list of transaction ids to fetch | +|→
Block Hash | array | Required
(1 or more) | The block hash and the list of transaction ids to fetch. Note: if a block hash of `0` is provided, mempool transactions will be returned. | |→ →
Transaction ID | string | Required
(1 or more) | A transaction ID | _Parameter #2---whether to get the serialized or decoded transaction_ @@ -1246,7 +1246,7 @@ _Examples from Dash Core 20.1.0_ Transactions in serialized transaction format: ```bash -dash-cli getrawtransactionmulti '{"0000014b04deb0fe0884d3ca81a6239016c2a4838cd4b34494858630e457c62c": ["0667ab03bebb827057fcd55285d68dc10f30ef07dd04d1468c9f25888c22333c", "5c278dd4ca54b9c14789357f0311bcbf1b6d3182bcc76d229cb15cfbe6255ed0"]}' false +dash-cli -testnet getrawtransactionmulti '{"0000014b04deb0fe0884d3ca81a6239016c2a4838cd4b34494858630e457c62c": ["0667ab03bebb827057fcd55285d68dc10f30ef07dd04d1468c9f25888c22333c", "5c278dd4ca54b9c14789357f0311bcbf1b6d3182bcc76d229cb15cfbe6255ed0"]}' false ``` Result: