core-lightning/doc/schemas/lightning-signpsbt.json
Rusty Russell b327bd30c3 doc: fix all JSON schemas to enforce no additional properties.
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>
2024-10-30 15:39:12 +10:30

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=="
}
}
]
}