mirror of
https://github.com/ElementsProject/lightning.git
synced 2024-11-19 09:54:16 +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>
153 lines
4.5 KiB
JSON
153 lines
4.5 KiB
JSON
{
|
|
"$schema": "../rpc-schema-draft.json",
|
|
"type": "object",
|
|
"rpc": "unreserveinputs",
|
|
"title": "Release reserved UTXOs",
|
|
"description": [
|
|
"The **unreserveinputs** RPC command releases (or reduces reservation) on UTXOs which were previously marked as reserved, generally by lightning-reserveinputs(7)."
|
|
],
|
|
"request": {
|
|
"required": [
|
|
"psbt"
|
|
],
|
|
"additionalProperties": false,
|
|
"properties": {
|
|
"psbt": {
|
|
"type": "string",
|
|
"description": [
|
|
"Inputs to unreserve are the inputs specified in the passed-in *psbt*."
|
|
]
|
|
},
|
|
"reserve": {
|
|
"type": "u32",
|
|
"description": [
|
|
"The number of blocks to decrease reservation by."
|
|
],
|
|
"default": 72
|
|
}
|
|
}
|
|
},
|
|
"response": {
|
|
"required": [
|
|
"reservations"
|
|
],
|
|
"additionalProperties": false,
|
|
"properties": {
|
|
"reservations": {
|
|
"type": "array",
|
|
"items": {
|
|
"type": "object",
|
|
"additionalProperties": true,
|
|
"required": [
|
|
"txid",
|
|
"vout",
|
|
"was_reserved",
|
|
"reserved"
|
|
],
|
|
"properties": {
|
|
"txid": {
|
|
"type": "txid",
|
|
"description": [
|
|
"The transaction id."
|
|
]
|
|
},
|
|
"vout": {
|
|
"type": "u32",
|
|
"description": [
|
|
"The output number which was reserved."
|
|
]
|
|
},
|
|
"was_reserved": {
|
|
"type": "boolean",
|
|
"description": [
|
|
"Whether the input was already reserved (usually `true`)."
|
|
]
|
|
},
|
|
"reserved": {
|
|
"type": "boolean",
|
|
"description": [
|
|
"Whether the input is now reserved (may still be `true` if it was reserved for a long time)."
|
|
]
|
|
}
|
|
},
|
|
"allOf": [
|
|
{
|
|
"if": {
|
|
"additionalProperties": true,
|
|
"properties": {
|
|
"reserved": {
|
|
"enum": [
|
|
true
|
|
]
|
|
}
|
|
}
|
|
},
|
|
"then": {
|
|
"required": [
|
|
"reserved_to_block"
|
|
],
|
|
"additionalProperties": false,
|
|
"properties": {
|
|
"txid": {},
|
|
"vout": {},
|
|
"was_reserved": {},
|
|
"reserved": {},
|
|
"reserved_to_block": {
|
|
"type": "u32",
|
|
"description": [
|
|
"What blockheight the reservation will expire."
|
|
]
|
|
}
|
|
}
|
|
}
|
|
}
|
|
]
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"errors": [
|
|
"On failure, an error is reported and no UTXOs are unreserved.",
|
|
"",
|
|
"- -32602: Invalid parameter, i.e. an unparseable PSBT."
|
|
],
|
|
"author": [
|
|
"Lisa Neigut <<niftynei@gmail.com>> is mainly responsible."
|
|
],
|
|
"see_also": [
|
|
"lightning-unreserveinputs(7)",
|
|
"lightning-signpsbt(7)",
|
|
"lightning-sendpsbt(7)"
|
|
],
|
|
"resources": [
|
|
"Main web site: <https://github.com/ElementsProject/lightning>"
|
|
],
|
|
"examples": [
|
|
{
|
|
"request": {
|
|
"id": "example:unreserveinputs#1",
|
|
"method": "unreserveinputs",
|
|
"params": {
|
|
"psbt": "cHNidP8BAF4CAAAAAZiQf/mEs4NcFFfD4K8xauOgSpbz/xeetoXVWAPCI0h6AQAAAAD9////AahhAAAAAAAAIlEg+3d9jpNmK0getyg5W+Mp31CPIRDKcJg/mZs/uaVrQ+GZAAAAAAEAiQIAAAABswU80whDZOoIHS/lfyxwmHh5USHBwbcjWHaJ9/XU+78BAAAAAP3///8CgIQeAAAAAAAiACDJvFwGPK7796bHgUQHtWJ7T4GotW7L6TLGgvnLrA0Z32INzQsAAAAAIlEgyRg+3pEh88b9FJiCLEenYCcyJ2ackJUIhDusW72BP2iYAAAAAQErYg3NCwAAAAAiUSDJGD7ekSHzxv0UmIIsR6dgJzInZpyQlQiEO6xbvYE/aAAA",
|
|
"reserve": 200
|
|
}
|
|
},
|
|
"response": {
|
|
"reservations": []
|
|
}
|
|
},
|
|
{
|
|
"request": {
|
|
"id": "example:unreserveinputs#2",
|
|
"method": "unreserveinputs",
|
|
"params": [
|
|
"cHNidP8BAF4CAAAAAZiQf/mEs4NcFFfD4K8xauOgSpbz/xeetoXVWAPCI0h6AQAAAAD9////AfZRxQsAAAAAIlEg21kTTo7K2doCG6F2JqgaDjc1kRCrH7AL08oPVVJhuE+ZAAAAAAEAiQIAAAABswU80whDZOoIHS/lfyxwmHh5USHBwbcjWHaJ9/XU+78BAAAAAP3///8CgIQeAAAAAAAiACDJvFwGPK7796bHgUQHtWJ7T4GotW7L6TLGgvnLrA0Z32INzQsAAAAAIlEgyRg+3pEh88b9FJiCLEenYCcyJ2ackJUIhDusW72BP2iYAAAAAQErYg3NCwAAAAAiUSDJGD7ekSHzxv0UmIIsR6dgJzInZpyQlQiEO6xbvYE/aAAA"
|
|
]
|
|
},
|
|
"response": {
|
|
"reservations": []
|
|
}
|
|
}
|
|
]
|
|
}
|