lightning-listclosedchannels -- Get data on our closed historical channels


listclosedchannels [id]


Command added in v23.05.

The listclosedchannels RPC command returns data on channels which are otherwise forgotten (more than 100 blocks after they're completely resolved onchain).

  • id (pubkey, optional): If no id is supplied, then channel data on all historical channels are given. Supplying id will filter the results to only match channels to that peer. Note that prior to v23.05, old peers were forgotten.


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

  • channel_id (hash): The full channel_id (funding txid Xored with output number).
  • opener (string) (one of "local", "remote"): Who initiated the channel.
  • private (boolean): If True, we will not announce this channel.
  • total_local_commitments (u64): Number of commitment transaction we made.
  • total_remote_commitments (u64): Number of commitment transaction they made.
  • total_htlcs_sent (u64): Number of HTLCs we ever sent.
  • funding_txid (txid): ID of the funding transaction.
  • funding_outnum (u32): The 0-based output number of the funding transaction which opens the channel.
  • leased (boolean): Whether this channel was leased from opener.
  • total_msat (msat): Total amount in the channel.
  • final_to_us_msat (msat): Our balance in final commitment transaction.
  • min_to_us_msat (msat): Least amount owed to us ever. If the peer were to successfully steal from us, this is the amount we would still retain.
  • max_to_us_msat (msat): Most amount owed to us ever. If we were to successfully steal from the peer, this is the amount we could potentially get.
  • close_cause (string) (one of "unknown", "local", "user", "remote", "protocol", "onchain"): What caused the channel to close.
  • peer_id (pubkey, optional): Peer public key (can be missing with pre-v23.05 closes!).
  • short_channel_id (short_channel_id, optional): The short_channel_id.
  • alias (object, optional):
    • local (short_channel_id, optional): An alias assigned by this node to this channel, used for outgoing payments.
    • remote (short_channel_id, optional): An alias assigned by the remote node to this channel, usable in routehints and invoices.
  • closer (string, optional) (one of "local", "remote"): Who initiated the channel close (only present if closing).
  • channel_type (object, optional): Channel_type as negotiated with peer.:
    • bits (array of u32s): Each bit set in this channel_type.:
      • (u32, optional): Bit number.
    • names (array of strings): Feature name for each bit set in this channel_type.:
      • (string, optional) (one of "static_remotekey/even", "anchor_outputs/even", "anchors_zero_fee_htlc_tx/even", "scid_alias/even", "zeroconf/even"): Name of feature bit.
  • funding_fee_paid_msat (msat, optional): How much we paid to lease the channel (iff leased is true and opener is local).
  • funding_fee_rcvd_msat (msat, optional): How much they paid to lease the channel (iff leased is true and opener is remote).
  • funding_pushed_msat (msat, optional): How much opener pushed immediate (if non-zero).
  • last_commitment_txid (hash, optional): The final commitment tx's txid (or mutual close, if we accepted it). Not present for some very old, small channels pre-0.7.0.
  • last_commitment_fee_msat (msat, optional): The fee on last_commitment_txid.
  • last_stable_connection (u64, optional): Last time we reestablished the open channel and stayed connected for 1 minute. (added v24.02)


On error the returned object will contain code and message properties, with code being one of the following:

  • -32602: If the given parameters are wrong.


Rusty Russell <[email protected]>.




Main web site: