mirror of
https://github.com/ElementsProject/lightning.git
synced 2024-11-19 01:43:36 +01:00
b327bd30c3
Without this, we have hardly any enforcement. This is why the schema mistake fixed in the previous patches weren't spotted immediately. The hard work was done by: ``` $ for f in lightning-*.json; do grep -v '^ "additionalProperties": false,' $f | bagto $f; done $ for f in lightning-*.json; do sed 's/"properties": {/"additionalProperties": false, "properties": {/' $f | bagto $f; done $ make fmt-schemas ``` Then checking where 'additionalProperties: true' had been turned to false (we deliberately use it in some places where there are if statements in the schema, or occasionally where there can be arbitrary fields). [Including doc/rpc-schema-draft.json update by Shahana] Signed-off-by: Rusty Russell <rusty@rustcorp.com.au>
93 lines
4.9 KiB
JSON
93 lines
4.9 KiB
JSON
{
|
|
"$schema": "../rpc-schema-draft.json",
|
|
"type": "object",
|
|
"rpc": "signpsbt",
|
|
"title": "Command to sign a wallet's inputs on a provided bitcoin transaction (PSBT).",
|
|
"description": [
|
|
"**signpsbt** is a low-level RPC command which signs a PSBT as defined by BIP-174.",
|
|
"",
|
|
"By default, all known inputs are signed, and others ignored: with *signonly*, only those inputs are signed, and an error is returned if one of them cannot be signed.",
|
|
"",
|
|
"Note that the command will fail if there are no inputs to sign, or if the inputs to be signed were not previously reserved."
|
|
],
|
|
"request": {
|
|
"required": [
|
|
"psbt"
|
|
],
|
|
"additionalProperties": false,
|
|
"properties": {
|
|
"psbt": {
|
|
"type": "string",
|
|
"description": [
|
|
"The psbt to be signed."
|
|
]
|
|
},
|
|
"signonly": {
|
|
"type": "array",
|
|
"description": [
|
|
"Input numbers to sign."
|
|
],
|
|
"items": {
|
|
"type": "u32"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"response": {
|
|
"required": [
|
|
"signed_psbt"
|
|
],
|
|
"additionalProperties": false,
|
|
"properties": {
|
|
"signed_psbt": {
|
|
"type": "string",
|
|
"description": [
|
|
"The fully signed PSBT."
|
|
]
|
|
}
|
|
}
|
|
},
|
|
"errors": [
|
|
"On failure, one of the following error codes may be returned:",
|
|
"",
|
|
"- -32602: Error in given parameters, or there aren't wallet's inputs to sign, or we couldn't sign all of *signonly*, or inputs are not reserved."
|
|
],
|
|
"author": [
|
|
"Vincenzo Palazzo <<vincenzo.palazzo@protonmail.com>> wrote the initial version of this man page,",
|
|
"but many others did the hard work of actually implementing this rpc command."
|
|
],
|
|
"see_also": [
|
|
"lightning-fundpsbt(7)",
|
|
"lightning-sendpsbt(7)"
|
|
],
|
|
"resources": [
|
|
"Main web site: <https://github.com/ElementsProject/lightning>"
|
|
],
|
|
"examples": [
|
|
{
|
|
"request": {
|
|
"id": "example:signpsbt#1",
|
|
"method": "signpsbt",
|
|
"params": {
|
|
"psbt": "cHNidP8BAgQCAAAAAQMEmAAAAAEEAQEBBQECAQYBAwH7BAIAAAAAAQBxAgAAAAGXS8Ixc7e8qbBg2sEqvRuxWOjtaaPnTU9q9ZGbFfV3LAAAAAAA/f///wJ6H/TSAAAAABYAFJq4HdQFbYJVeXL2XWxTpoyZUCr4AMLrCwAAAAAWABQDz+yHFeH0BKNuwBHkI4+GMp+QnJcAAAABAR8AwusLAAAAABYAFAPP7IcV4fQEo27AEeQjj4Yyn5CcAQ4gswU80whDZOoIHS/lfyxwmHh5USHBwbcjWHaJ9/XU+78BDwQBAAAAARAE/f///wz8CWxpZ2h0bmluZwEIQCsNB0i02NIAAQMIQVncCwAAAAABBCJRIDvhN+WjzUt2EEWojAco0yQ1GDbwTtWd/aN5uNhGRlK3DPwJbGlnaHRuaW5nAQgwkgFDAVpmeAABAwhAQg8AAAAAAAEEIgAgybxcBjyu+/emx4FEB7Vie0+BqLVuy+kyxoL5y6wNGd8M/AlsaWdodG5pbmcBCI9GsPn+O/M0AA=="
|
|
}
|
|
},
|
|
"response": {
|
|
"signed_psbt": "cHNidP8BAgQCAAAAAQMEmAAAAAEEAQEBBQECAQYBAwH7BAIAAAAAAQBxAgAAAAGXS8Ixc7e8qbBg2sEqvRuxWOjtaaPnTU9q9ZGbFfV3LAAAAAAA/f///wJ6H/TSAAAAABYAFJq4HdQFbYJVeXL2XWxTpoyZUCr4AMLrCwAAAAAWABQDz+yHFeH0BKNuwBHkI4+GMp+QnJcAAAABAR8AwusLAAAAABYAFAPP7IcV4fQEo27AEeQjj4Yyn5CcIgICRz15z0oQ57qDTAJqrEPqGLCn+3Xs2lGEv6+oxGYV9rdHMEQCIHlCL2oKhnYn6hhaUG8+V+8D6GHFlI61OM507VB6aBwoAiACA2d5TnCdlJ1j2rF/EIHkxl3W0hBp3QqweO7hEul9aQEiBgJHPXnPShDnuoNMAmqsQ+oYsKf7dezaUYS/r6jEZhX2twgDz+yHAAAAAAEOILMFPNMIQ2TqCB0v5X8scJh4eVEhwcG3I1h2iff11Pu/AQ8EAQAAAAEQBP3///8M/AlsaWdodG5pbmcBCEArDQdItNjSAAEDCEFZ3AsAAAAAAQQiUSA74Tflo81LdhBFqIwHKNMkNRg28E7Vnf2jebjYRkZStyEHE0cioCqqq2UZ2npxQi9Q6DXNZheODM6F4GjHHS3XScEJAG/ctUwEAAAADPwJbGlnaHRuaW5nAQgwkgFDAVpmeAABAwhAQg8AAAAAAAEEIgAgybxcBjyu+/emx4FEB7Vie0+BqLVuy+kyxoL5y6wNGd8M/AlsaWdodG5pbmcBCI9GsPn+O/M0AA=="
|
|
}
|
|
},
|
|
{
|
|
"request": {
|
|
"id": "example:signpsbt#2",
|
|
"method": "signpsbt",
|
|
"params": [
|
|
"cHNidP8BAgQCAAAAAQMEmAAAAAEEAQEBBQECAQYBAwH7BAIAAAAAAQBxAgAAAAGXS8Ixc7e8qbBg2sEqvRuxWOjtaaPnTU9q9ZGbFfV3LAAAAAAA/f///wJ6H/TSAAAAABYAFJq4HdQFbYJVeXL2XWxTpoyZUCr4AMLrCwAAAAAWABQDz+yHFeH0BKNuwBHkI4+GMp+QnJcAAAABAR8AwusLAAAAABYAFAPP7IcV4fQEo27AEeQjj4Yyn5CcAQ4gswU80whDZOoIHS/lfyxwmHh5USHBwbcjWHaJ9/XU+78BDwQBAAAAARAE/f///wz8CWxpZ2h0bmluZwEIwRR1uu1r8GoAAQMIgIQeAAAAAAABBCIAIMm8XAY8rvv3pseBRAe1YntPgai1bsvpMsaC+cusDRnfDPwJbGlnaHRuaW5nAQjdRD+FoUsRIAABAwhiDc0LAAAAAAEEIlEgyRg+3pEh88b9FJiCLEenYCcyJ2ackJUIhDusW72BP2gM/AlsaWdodG5pbmcBCPN/JmOnjFW4AA=="
|
|
]
|
|
},
|
|
"response": {
|
|
"signed_psbt": "cHNidP8BAgQCAAAAAQMEmAAAAAEEAQEBBQECAQYBAwH7BAIAAAAAAQBxAgAAAAGXS8Ixc7e8qbBg2sEqvRuxWOjtaaPnTU9q9ZGbFfV3LAAAAAAA/f///wJ6H/TSAAAAABYAFJq4HdQFbYJVeXL2XWxTpoyZUCr4AMLrCwAAAAAWABQDz+yHFeH0BKNuwBHkI4+GMp+QnJcAAAABAR8AwusLAAAAABYAFAPP7IcV4fQEo27AEeQjj4Yyn5CcIgICRz15z0oQ57qDTAJqrEPqGLCn+3Xs2lGEv6+oxGYV9rdHMEQCIA8+zCzZ59t2OEFHWefZeTypY89RRQ8dMQCjtGWw6gskAiArELH1MvjW6j1G1CKnLZdV+/oabLDU48ingGSPFDOYxwEiBgJHPXnPShDnuoNMAmqsQ+oYsKf7dezaUYS/r6jEZhX2twgDz+yHAAAAAAEOILMFPNMIQ2TqCB0v5X8scJh4eVEhwcG3I1h2iff11Pu/AQ8EAQAAAAEQBP3///8M/AlsaWdodG5pbmcBCMEUdbrta/BqAAEDCICEHgAAAAAAAQQiACDJvFwGPK7796bHgUQHtWJ7T4GotW7L6TLGgvnLrA0Z3wz8CWxpZ2h0bmluZwEI3UQ/haFLESAAAQMIYg3NCwAAAAABBCJRIMkYPt6RIfPG/RSYgixHp2AnMidmnJCVCIQ7rFu9gT9oIQeffk+gJsmVIxDZ8UKPKgJB9CLvaUr9xqOEogpzJx1hbAkAEioNzwUAAAAM/AlsaWdodG5pbmcBCPN/JmOnjFW4AA=="
|
|
}
|
|
}
|
|
]
|
|
}
|