lightning-reserveinputs

lightning-reserveinputs -- Construct a transaction and reserve the UTXOs it spends

SYNOPSIS

reserveinputs psbt [exclusive] [reserve]

DESCRIPTION

The reserveinputs RPC command places (or increases) reservations on any inputs specified in psbt which are known to lightningd. It will fail with an error if any of the inputs are known to be spent, and ignore inputs which are unknown.

Normally the command will fail (with no reservations made) if an input is already reserved.

  • psbt (string): The PSBT to reserve inputs from.
  • exclusive (boolean, optional): If set to False, existing reservations are simply extended, rather than causing failure.
  • reserve (u32, optional): The number of blocks to reserve. By default, reservations are for the next 72 blocks (approximately 6 hours).

RETURN VALUE

On success, an object containing reservations is returned. It is an array of objects, where each object contains:

  • txid (txid): The input transaction id.
  • vout (u32): The input index output number which was reserved.
  • was_reserved (boolean): Whether the input was already reserved.
  • reserved (boolean) (always true): Whether the input is now reserved.
  • reserved_to_block (u32): What blockheight the reservation will expire.

ERRORS

On failure, an error is reported and no UTXOs are reserved.

  • -32602: Invalid parameter, such as specifying a spent/reserved input in psbt.

AUTHOR

Lisa Neigut <[email protected]> is mainly responsible.

SEE ALSO

lightning-unreserveinputs(7), lightning-signpsbt(7), lightning-sendpsbt(7)

RESOURCES

Main web site: https://github.com/ElementsProject/lightning

EXAMPLES

Example 1:

Request:

lightning-cli reserveinputs -k "psbt"="cHNidP8BAgQCAAAAAQMEbwAAAAEEAQpsbt011100011100011100011100011100011100011100011100011100011100011100011100011100011100011100011100011100011100011100011100011100011100011100011100011100011100011100011100011100011100011100011100011100011100011100011100011100011100011100011100"
{
  "id": "example:reserveinputs#1",
  "method": "reserveinputs",
  "params": {
    "psbt": "cHNidP8BAgQCAAAAAQMEbwAAAAEEAQpsbt011100011100011100011100011100011100011100011100011100011100011100011100011100011100011100011100011100011100011100011100011100011100011100011100011100011100011100011100011100011100011100011100011100011100011100011100011100011100011100011100"
  }
}

Response:

{
  "reservations": [
    {
      "txid": "channeltxid111200111200111200111200111200111200111200111200111200",
      "vout": 1,
      "was_reserved": false,
      "reserved": true,
      "reserved_to_block": 226
    }
  ]
}

Example 2:

Request:

lightning-cli reserveinputs -k "psbt"="cHNidP8BAgQCAAAAAQMEbwAAAAEEAQpsbt011200011200011200011200011200011200011200011200011200011200011200011200011200011200011200011200011200011200011200011200011200011200011200011200011200011200011200011200011200011200011200011200011200011200011200011200011200011200011200011200"
{
  "id": "example:reserveinputs#2",
  "method": "reserveinputs",
  "params": {
    "psbt": "cHNidP8BAgQCAAAAAQMEbwAAAAEEAQpsbt011200011200011200011200011200011200011200011200011200011200011200011200011200011200011200011200011200011200011200011200011200011200011200011200011200011200011200011200011200011200011200011200011200011200011200011200011200011200011200011200"
  }
}

Response:

{
  "reservations": [
    {
      "txid": "txidocsigned1011000110001100011000110001100011000110001100011000",
      "vout": 1,
      "was_reserved": false,
      "reserved": true,
      "reserved_to_block": 226
    }
  ]
}

Core Lightning (previously c-lightning) is a lightweight, highly customizable and standard compliant implementation of the Lightning Network protocol.

© 2023 Core Lightning
All rights reserved.

Discussion Forum

The official Core Lightning forum is hosted at discuss.corelightning.org

BuildonL2 Community

The official BuildOnL2 community lives at community.corelightning.org. Join us and build the future of bitcoin on lightning.

Mailing List

For general discussions about CLN implementation, use [email protected]. For the Lightning Network, use [email protected]

Telegram

Community-driven telegram group where most of the node operators hang out. Go to https://t.me/lightningd to join.

Discord

Community-driven discord server where the devs flock together. Go to https://discord.gg/w27fMFESMN to join.

Internet Relay Chat

Don't hesitate to reach out to us on IRC at #lightning-dev @ libera.chat, #c-lightning @ libera.chat.