mirror of
https://github.com/ElementsProject/lightning.git
synced 2024-11-20 02:27:51 +01:00
081ef05dd1
Changelog-Added: JSONRPC: `listchannels` now includes the `funding_outnum`
1134 lines
43 KiB
JSON
1134 lines
43 KiB
JSON
{
|
|
"$schema": "http://json-schema.org/draft-07/schema#",
|
|
"type": "object",
|
|
"additionalProperties": false,
|
|
"required": [
|
|
"peers"
|
|
],
|
|
"properties": {
|
|
"peers": {
|
|
"type": "array",
|
|
"items": {
|
|
"type": "object",
|
|
"additionalProperties": true,
|
|
"required": [
|
|
"id",
|
|
"connected",
|
|
"channels"
|
|
],
|
|
"properties": {
|
|
"id": {
|
|
"type": "pubkey",
|
|
"description": "the public key of the peer"
|
|
},
|
|
"connected": {
|
|
"type": "boolean",
|
|
"description": "True if the peer is currently connected"
|
|
},
|
|
"log": {
|
|
"type": "array",
|
|
"description": "if *level* is specified, logs for this peer",
|
|
"items": {
|
|
"type": "object",
|
|
"additionalProperties": true,
|
|
"required": [
|
|
"type"
|
|
],
|
|
"properties": {
|
|
"type": {
|
|
"type": "string",
|
|
"enum": [
|
|
"SKIPPED",
|
|
"BROKEN",
|
|
"UNUSUAL",
|
|
"INFO",
|
|
"DEBUG",
|
|
"IO_IN",
|
|
"IO_OUT"
|
|
]
|
|
}
|
|
},
|
|
"allOf": [
|
|
{
|
|
"if": {
|
|
"properties": {
|
|
"type": {
|
|
"enum": [
|
|
"SKIPPED"
|
|
]
|
|
}
|
|
}
|
|
},
|
|
"then": {
|
|
"type": "object",
|
|
"additionalProperties": false,
|
|
"required": [
|
|
"num_skipped"
|
|
],
|
|
"properties": {
|
|
"type": {},
|
|
"num_skipped": {
|
|
"type": "u32",
|
|
"description": "number of deleted/omitted entries"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
{
|
|
"if": {
|
|
"properties": {
|
|
"type": {
|
|
"enum": [
|
|
"BROKEN",
|
|
"UNUSUAL",
|
|
"INFO",
|
|
"DEBUG"
|
|
]
|
|
}
|
|
}
|
|
},
|
|
"then": {
|
|
"type": "object",
|
|
"additionalProperties": false,
|
|
"required": [
|
|
"time",
|
|
"source",
|
|
"log",
|
|
"node_id"
|
|
],
|
|
"properties": {
|
|
"type": {},
|
|
"time": {
|
|
"type": "string",
|
|
"description": "UNIX timestamp with 9 decimal places"
|
|
},
|
|
"source": {
|
|
"type": "string",
|
|
"description": "The particular logbook this was found in"
|
|
},
|
|
"log": {
|
|
"type": "string",
|
|
"description": "The actual log message"
|
|
},
|
|
"node_id": {
|
|
"type": "pubkey",
|
|
"description": "The peer this is associated with"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
{
|
|
"if": {
|
|
"properties": {
|
|
"type": {
|
|
"enum": [
|
|
"IO_IN",
|
|
"IO_OUT"
|
|
]
|
|
}
|
|
}
|
|
},
|
|
"then": {
|
|
"type": "object",
|
|
"additionalProperties": false,
|
|
"required": [
|
|
"time",
|
|
"source",
|
|
"log",
|
|
"node_id",
|
|
"data"
|
|
],
|
|
"properties": {
|
|
"type": {},
|
|
"time": {
|
|
"type": "string",
|
|
"description": "UNIX timestamp with 9 decimal places"
|
|
},
|
|
"source": {
|
|
"type": "string",
|
|
"description": "The particular logbook this was found in"
|
|
},
|
|
"log": {
|
|
"type": "string",
|
|
"description": "The actual log message"
|
|
},
|
|
"node_id": {
|
|
"type": "pubkey",
|
|
"description": "The peer this is associated with"
|
|
},
|
|
"data": {
|
|
"type": "hex",
|
|
"description": "The IO which occurred"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
]
|
|
}
|
|
},
|
|
"channels": {
|
|
"type": "array",
|
|
"items": {
|
|
"type": "object",
|
|
"additionalProperties": true,
|
|
"required": [
|
|
"state",
|
|
"opener",
|
|
"features"
|
|
],
|
|
"properties": {
|
|
"state": {
|
|
"type": "string",
|
|
"enum": [
|
|
"OPENINGD",
|
|
"CHANNELD_AWAITING_LOCKIN",
|
|
"CHANNELD_NORMAL",
|
|
"CHANNELD_SHUTTING_DOWN",
|
|
"CLOSINGD_SIGEXCHANGE",
|
|
"CLOSINGD_COMPLETE",
|
|
"AWAITING_UNILATERAL",
|
|
"FUNDING_SPEND_SEEN",
|
|
"ONCHAIN",
|
|
"DUALOPEND_OPEN_INIT",
|
|
"DUALOPEND_AWAITING_LOCKIN"
|
|
],
|
|
"description": "the channel state, in particular \"CHANNELD_NORMAL\" means the channel can be used normally"
|
|
},
|
|
"scratch_txid": {
|
|
"type": "txid",
|
|
"description": "The txid we would use if we went onchain now"
|
|
},
|
|
"feerate": {
|
|
"type": "object",
|
|
"description": "Feerates for the current tx",
|
|
"additionalProperties": false,
|
|
"required": [
|
|
"perkw",
|
|
"perkb"
|
|
],
|
|
"properties": {
|
|
"perkw": {
|
|
"type": "u32",
|
|
"description": "Feerate per 1000 weight (i.e kSipa)"
|
|
},
|
|
"perkb": {
|
|
"type": "u32",
|
|
"description": "Feerate per 1000 virtual bytes"
|
|
}
|
|
}
|
|
},
|
|
"owner": {
|
|
"type": "string",
|
|
"description": "The current subdaemon controlling this connection"
|
|
},
|
|
"short_channel_id": {
|
|
"type": "short_channel_id",
|
|
"description": "The short_channel_id (once locked in)"
|
|
},
|
|
"channel_id": {
|
|
"type": "hex",
|
|
"description": "The full channel_id",
|
|
"minLength": 64,
|
|
"maxLength": 64
|
|
},
|
|
"funding_txid": {
|
|
"type": "txid",
|
|
"description": "ID of the funding transaction"
|
|
},
|
|
"funding_outnum": {
|
|
"type": "u32",
|
|
"description": "The 0-based output number of the funding transaction which opens the channel"
|
|
},
|
|
"initial_feerate": {
|
|
"type": "string",
|
|
"description": "For inflight opens, the first feerate used to initiate the channel open"
|
|
},
|
|
"last_feerate": {
|
|
"type": "string",
|
|
"description": "For inflight opens, the most recent feerate used on the channel open"
|
|
},
|
|
"next_feerate": {
|
|
"type": "string",
|
|
"description": "For inflight opens, the next feerate we'll use for the channel open"
|
|
},
|
|
"next_fee_step": {
|
|
"type": "u32",
|
|
"description": "For inflight opens, the next feerate step we'll use for the channel open"
|
|
},
|
|
"inflight": {
|
|
"type": "array",
|
|
"description": "Current candidate funding transactions (only for dual-funding)",
|
|
"items": {
|
|
"type": "object",
|
|
"additionalProperties": false,
|
|
"required": [
|
|
"funding_txid",
|
|
"funding_outnum",
|
|
"feerate",
|
|
"total_funding_msat",
|
|
"our_funding_msat",
|
|
"scratch_txid"
|
|
],
|
|
"properties": {
|
|
"funding_txid": {
|
|
"type": "txid",
|
|
"description": "ID of the funding transaction"
|
|
},
|
|
"funding_outnum": {
|
|
"type": "u32",
|
|
"description": "The 0-based output number of the funding transaction which opens the channel"
|
|
},
|
|
"feerate": {
|
|
"type": "string",
|
|
"description": "The feerate for this funding transaction in per-1000-weight, with \"kpw\" appended"
|
|
},
|
|
"total_funding_msat": {
|
|
"type": "msat",
|
|
"description": "total amount in the channel"
|
|
},
|
|
"our_funding_msat": {
|
|
"type": "msat",
|
|
"description": "amount we have in the channel"
|
|
},
|
|
"scratch_txid": {
|
|
"type": "txid",
|
|
"description": "The commitment transaction txid we would use if we went onchain now"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"close_to": {
|
|
"type": "hex",
|
|
"description": "scriptPubkey which we have to close to if we mutual close"
|
|
},
|
|
"private": {
|
|
"type": "boolean",
|
|
"description": "if False, we will not announce this channel"
|
|
},
|
|
"opener": {
|
|
"type": "string",
|
|
"enum": [
|
|
"local",
|
|
"remote"
|
|
],
|
|
"description": "Who initiated the channel"
|
|
},
|
|
"closer": {
|
|
"FIXME": "deprecated_apis turns off null!",
|
|
"type": [
|
|
"string",
|
|
"null"
|
|
],
|
|
"enum": [
|
|
"local",
|
|
"remote",
|
|
null
|
|
],
|
|
"description": "Who initiated the channel close (`null` is deprecated!)"
|
|
},
|
|
"features": {
|
|
"type": "array",
|
|
"items": {
|
|
"type": "string",
|
|
"enum": [
|
|
"option_static_remotekey",
|
|
"option_anchor_outputs"
|
|
],
|
|
"description": "BOLT #9 features which apply to this channel"
|
|
}
|
|
},
|
|
"funding": {
|
|
"type": "object",
|
|
"additionalProperties": false,
|
|
"required": [
|
|
"local_msat",
|
|
"remote_msat"
|
|
],
|
|
"properties": {
|
|
"local_msat": {
|
|
"type": "msat",
|
|
"description": "Amount of channel we funded"
|
|
},
|
|
"remote_msat": {
|
|
"type": "msat",
|
|
"description": "Amount of channel they funded"
|
|
}
|
|
}
|
|
},
|
|
"funding_allocation_msat": {
|
|
"deprecated": true
|
|
},
|
|
"funding_msat": {
|
|
"deprecated": true
|
|
},
|
|
"to_us_msat": {
|
|
"type": "msat",
|
|
"description": "how much of channel is owed to us"
|
|
},
|
|
"min_to_us_msat": {
|
|
"type": "msat",
|
|
"description": "least amount owed to us ever"
|
|
},
|
|
"max_to_us_msat": {
|
|
"type": "msat",
|
|
"description": "most amount owed to us ever"
|
|
},
|
|
"total_msat": {
|
|
"type": "msat",
|
|
"description": "total amount in the channel"
|
|
},
|
|
"fee_base_msat": {
|
|
"type": "msat",
|
|
"description": "amount we charge to use the channel"
|
|
},
|
|
"fee_proportional_millionths": {
|
|
"type": "u32",
|
|
"description": "amount we charge to use the channel in parts-per-million"
|
|
},
|
|
"dust_limit_msat": {
|
|
"type": "msat",
|
|
"description": "minimum amount for an output on the channel transactions"
|
|
},
|
|
"max_total_htlc_in_msat": {
|
|
"type": "msat",
|
|
"description": "max amount accept in a single payment"
|
|
},
|
|
"their_reserve_msat": {
|
|
"type": "msat",
|
|
"description": "minimum we insist they keep in channel"
|
|
},
|
|
"our_reserve_msat": {
|
|
"type": "msat",
|
|
"description": "minimum they insist we keep in channel"
|
|
},
|
|
"spendable_msat": {
|
|
"type": "msat",
|
|
"description": "total we could send through channel"
|
|
},
|
|
"receivable_msat": {
|
|
"type": "msat",
|
|
"description": "total peer could send through channel"
|
|
},
|
|
"minimum_htlc_in_msat": {
|
|
"type": "msat",
|
|
"description": "the minimum amount HTLC we accept"
|
|
},
|
|
"their_to_self_delay": {
|
|
"type": "u32",
|
|
"description": "the number of blocks before they can take their funds if they unilateral close"
|
|
},
|
|
"our_to_self_delay": {
|
|
"type": "u32",
|
|
"description": "the number of blocks before we can take our funds if we unilateral close"
|
|
},
|
|
"max_accepted_htlcs": {
|
|
"type": "u32",
|
|
"description": "Maximum number of incoming HTLC we will accept at once"
|
|
},
|
|
"msatoshi_to_us": {
|
|
"deprecated": true
|
|
},
|
|
"msatoshi_to_us_min": {
|
|
"deprecated": true
|
|
},
|
|
"msatoshi_to_us_max": {
|
|
"deprecated": true
|
|
},
|
|
"msatoshi_total": {
|
|
"deprecated": true
|
|
},
|
|
"dust_limit_satoshis": {
|
|
"deprecated": true
|
|
},
|
|
"max_htlc_value_in_flight_msat": {
|
|
"deprecated": true
|
|
},
|
|
"our_channel_reserve_satoshis": {
|
|
"deprecated": true
|
|
},
|
|
"their_channel_reserve_satoshis": {
|
|
"deprecated": true
|
|
},
|
|
"spendable_msatoshi": {
|
|
"deprecated": true
|
|
},
|
|
"receivable_msatoshi": {
|
|
"deprecated": true
|
|
},
|
|
"htlc_minimum_msat": {
|
|
"deprecated": true
|
|
},
|
|
"state_changes": {
|
|
"type": "array",
|
|
"description": "Prior state changes",
|
|
"items": {
|
|
"type": "object",
|
|
"additionalProperties": false,
|
|
"required": [
|
|
"timestamp",
|
|
"old_state",
|
|
"new_state",
|
|
"cause",
|
|
"message"
|
|
],
|
|
"properties": {
|
|
"timestamp": {
|
|
"type": "string",
|
|
"description": "UTC timestamp of form YYYY-mm-ddTHH:MM:SS.%03dZ"
|
|
},
|
|
"old_state": {
|
|
"type": "string",
|
|
"enum": [
|
|
"OPENINGD",
|
|
"CHANNELD_AWAITING_LOCKIN",
|
|
"CHANNELD_NORMAL",
|
|
"CHANNELD_SHUTTING_DOWN",
|
|
"CLOSINGD_SIGEXCHANGE",
|
|
"CLOSINGD_COMPLETE",
|
|
"AWAITING_UNILATERAL",
|
|
"FUNDING_SPEND_SEEN",
|
|
"ONCHAIN",
|
|
"DUALOPEND_OPEN_INIT",
|
|
"DUALOPEND_AWAITING_LOCKIN"
|
|
],
|
|
"description": "Previous state"
|
|
},
|
|
"new_state": {
|
|
"type": "string",
|
|
"enum": [
|
|
"OPENINGD",
|
|
"CHANNELD_AWAITING_LOCKIN",
|
|
"CHANNELD_NORMAL",
|
|
"CHANNELD_SHUTTING_DOWN",
|
|
"CLOSINGD_SIGEXCHANGE",
|
|
"CLOSINGD_COMPLETE",
|
|
"AWAITING_UNILATERAL",
|
|
"FUNDING_SPEND_SEEN",
|
|
"ONCHAIN",
|
|
"DUALOPEND_OPEN_INIT",
|
|
"DUALOPEND_AWAITING_LOCKIN"
|
|
],
|
|
"description": "New state"
|
|
},
|
|
"cause": {
|
|
"type": "string",
|
|
"enum": [
|
|
"unknown",
|
|
"local",
|
|
"user",
|
|
"remote",
|
|
"protocol",
|
|
"onchain"
|
|
],
|
|
"description": "What caused the change"
|
|
},
|
|
"message": {
|
|
"type": "string",
|
|
"description": "Human-readable explanation"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"status": {
|
|
"type": "array",
|
|
"items": {
|
|
"type": "string",
|
|
"description": "Billboard log of significant changes"
|
|
}
|
|
},
|
|
"in_payments_offered": {
|
|
"type": "u64",
|
|
"description": "Number of incoming payment attempts"
|
|
},
|
|
"in_offered_msat": {
|
|
"type": "msat",
|
|
"description": "Total amount of incoming payment attempts"
|
|
},
|
|
"in_msatoshi_offered": {
|
|
"deprecated": true
|
|
},
|
|
"in_payments_fulfilled": {
|
|
"type": "u64",
|
|
"description": "Number of successful incoming payment attempts"
|
|
},
|
|
"in_fulfilled_msat": {
|
|
"type": "msat",
|
|
"description": "Total amount of successful incoming payment attempts"
|
|
},
|
|
"in_msatoshi_fulfilled": {
|
|
"deprecated": true
|
|
},
|
|
"out_payments_offered": {
|
|
"type": "u64",
|
|
"description": "Number of outgoing payment attempts"
|
|
},
|
|
"out_offered_msat": {
|
|
"type": "msat",
|
|
"description": "Total amount of outgoing payment attempts"
|
|
},
|
|
"out_msatoshi_offered": {
|
|
"deprecated": true
|
|
},
|
|
"out_payments_fulfilled": {
|
|
"type": "u64",
|
|
"description": "Number of successful outgoing payment attempts"
|
|
},
|
|
"out_fulfilled_msat": {
|
|
"type": "msat",
|
|
"description": "Total amount of successful outgoing payment attempts"
|
|
},
|
|
"out_msatoshi_fulfilled": {
|
|
"deprecated": true
|
|
},
|
|
"htlcs": {
|
|
"type": "array",
|
|
"description": "current HTLCs in this channel",
|
|
"items": {
|
|
"type": "object",
|
|
"additionalProperties": true,
|
|
"required": [
|
|
"direction",
|
|
"id",
|
|
"amount_msat",
|
|
"expiry",
|
|
"payment_hash",
|
|
"state"
|
|
],
|
|
"properties": {
|
|
"direction": {
|
|
"type": "string",
|
|
"enum": [
|
|
"in",
|
|
"out"
|
|
],
|
|
"description": "Whether it came from peer, or is going to peer"
|
|
},
|
|
"id": {
|
|
"type": "u64",
|
|
"description": "Unique ID for this htlc on this channel in this direction"
|
|
},
|
|
"amount_msat": {
|
|
"type": "msat",
|
|
"description": "Amount send/received for this HTLC"
|
|
},
|
|
"msatoshi": {
|
|
"deprecated": true
|
|
},
|
|
"expiry": {
|
|
"type": "u32",
|
|
"description": "Block this HTLC expires at"
|
|
},
|
|
"payment_hash": {
|
|
"type": "hex",
|
|
"description": "the hash of the payment_preimage which will prove payment",
|
|
"maxLength": 64,
|
|
"minLength": 64
|
|
},
|
|
"local_trimmed": {
|
|
"type": "boolean",
|
|
"enum": [
|
|
true
|
|
],
|
|
"description": "if this is too small to enforce onchain"
|
|
},
|
|
"status": {
|
|
"type": "string",
|
|
"description": "set if this HTLC is currently waiting on a hook (and shows what plugin)"
|
|
}
|
|
},
|
|
"allOf": [
|
|
{
|
|
"if": {
|
|
"properties": {
|
|
"direction": {
|
|
"enum": [
|
|
"out"
|
|
]
|
|
}
|
|
}
|
|
},
|
|
"then": {
|
|
"additionalProperties": false,
|
|
"required": [
|
|
"state"
|
|
],
|
|
"properties": {
|
|
"direction": {},
|
|
"id": {},
|
|
"amount_msat": {},
|
|
"msatoshi": {},
|
|
"expiry": {},
|
|
"payment_hash": {},
|
|
"local_trimmed": {},
|
|
"status": {},
|
|
"state": {
|
|
"type": "string",
|
|
"enum": [
|
|
"SENT_ADD_HTLC",
|
|
"SENT_ADD_COMMIT",
|
|
"RCVD_ADD_REVOCATION",
|
|
"RCVD_ADD_ACK_COMMIT",
|
|
"SENT_ADD_ACK_REVOCATION",
|
|
"RCVD_REMOVE_HTLC",
|
|
"RCVD_REMOVE_COMMIT",
|
|
"SENT_REMOVE_REVOCATION",
|
|
"SENT_REMOVE_ACK_COMMIT",
|
|
"RCVD_REMOVE_ACK_REVOCATION"
|
|
],
|
|
"description": "Status of the HTLC"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
{
|
|
"if": {
|
|
"properties": {
|
|
"direction": {
|
|
"enum": [
|
|
"in"
|
|
]
|
|
}
|
|
}
|
|
},
|
|
"then": {
|
|
"additionalProperties": false,
|
|
"required": [
|
|
"state"
|
|
],
|
|
"properties": {
|
|
"direction": {},
|
|
"id": {},
|
|
"amount_msat": {},
|
|
"msatoshi": {},
|
|
"expiry": {},
|
|
"payment_hash": {},
|
|
"local_trimmed": {},
|
|
"status": {},
|
|
"state": {
|
|
"type": "string",
|
|
"enum": [
|
|
"RCVD_ADD_HTLC",
|
|
"RCVD_ADD_COMMIT",
|
|
"SENT_ADD_REVOCATION",
|
|
"SENT_ADD_ACK_COMMIT",
|
|
"RCVD_ADD_ACK_REVOCATION",
|
|
"SENT_REMOVE_HTLC",
|
|
"SENT_REMOVE_COMMIT",
|
|
"RCVD_REMOVE_REVOCATION",
|
|
"RCVD_REMOVE_ACK_COMMIT",
|
|
"SENT_REMOVE_ACK_REVOCATION"
|
|
],
|
|
"description": "Status of the HTLC"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
]
|
|
}
|
|
}
|
|
},
|
|
"allOf": [
|
|
{
|
|
"if": {
|
|
"required": [
|
|
"close_to"
|
|
]
|
|
},
|
|
"then": {
|
|
"additionalProperties": false,
|
|
"required": [],
|
|
"properties": {
|
|
"state": {},
|
|
"scratch_txid": {},
|
|
"feerate": {},
|
|
"owner": {},
|
|
"short_channel_id": {},
|
|
"channel_id": {},
|
|
"funding_txid": {},
|
|
"funding_outnum": {},
|
|
"close_to": {},
|
|
"private": {},
|
|
"opener": {},
|
|
"closer": {},
|
|
"features": {},
|
|
"funding": {},
|
|
"funding_allocation_msat": {},
|
|
"funding_msat": {},
|
|
"to_us_msat": {},
|
|
"min_to_us_msat": {},
|
|
"max_to_us_msat": {},
|
|
"total_msat": {},
|
|
"fee_base_msat": {},
|
|
"fee_proportional_millionths": {},
|
|
"dust_limit_msat": {},
|
|
"max_total_htlc_in_msat": {},
|
|
"their_reserve_msat": {},
|
|
"our_reserve_msat": {},
|
|
"spendable_msat": {},
|
|
"receivable_msat": {},
|
|
"minimum_htlc_in_msat": {},
|
|
"spendable_msatoshi": {},
|
|
"receivable_msatoshi": {},
|
|
"their_to_self_delay": {},
|
|
"our_to_self_delay": {},
|
|
"max_accepted_htlcs": {},
|
|
"msatoshi_to_us": {},
|
|
"msatoshi_to_us_min": {},
|
|
"msatoshi_to_us_max": {},
|
|
"msatoshi_total": {},
|
|
"dust_limit_satoshis": {},
|
|
"max_htlc_value_in_flight_msat": {},
|
|
"our_channel_reserve_satoshis": {},
|
|
"their_channel_reserve_satoshis": {},
|
|
"spendable_satoshis": {},
|
|
"receivable_satoshis": {},
|
|
"htlc_minimum_msat": {},
|
|
"state_changes": {},
|
|
"status": {},
|
|
"in_payments_offered": {},
|
|
"in_offered_msat": {},
|
|
"in_msatoshi_offered": {},
|
|
"in_payments_fulfilled": {},
|
|
"in_fulfilled_msat": {},
|
|
"in_msatoshi_fulfilled": {},
|
|
"out_payments_offered": {},
|
|
"out_offered_msat": {},
|
|
"out_msatoshi_offered": {},
|
|
"out_payments_fulfilled": {},
|
|
"out_fulfilled_msat": {},
|
|
"out_msatoshi_fulfilled": {},
|
|
"htlcs": {},
|
|
"initial_feerate": {},
|
|
"last_feerate": {},
|
|
"next_feerate": {},
|
|
"inflight": {},
|
|
"last_tx_fee": {},
|
|
"last_tx_fee_msat": {},
|
|
"direction": {},
|
|
"close_to_addr": {
|
|
"type": "string",
|
|
"description": "The bitcoin address we will close to"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
{
|
|
"if": {
|
|
"required": [
|
|
"scratch_txid"
|
|
]
|
|
},
|
|
"then": {
|
|
"additionalProperties": false,
|
|
"required": [
|
|
"last_tx_fee_msat"
|
|
],
|
|
"properties": {
|
|
"state": {},
|
|
"scratch_txid": {},
|
|
"feerate": {},
|
|
"owner": {},
|
|
"short_channel_id": {},
|
|
"channel_id": {},
|
|
"funding_txid": {},
|
|
"funding_outnum": {},
|
|
"inflight": {},
|
|
"close_to": {},
|
|
"private": {},
|
|
"opener": {},
|
|
"closer": {},
|
|
"features": {},
|
|
"funding": {},
|
|
"funding_allocation_msat": {},
|
|
"funding_msat": {},
|
|
"to_us_msat": {},
|
|
"min_to_us_msat": {},
|
|
"max_to_us_msat": {},
|
|
"total_msat": {},
|
|
"fee_base_msat": {},
|
|
"fee_proportional_millionths": {},
|
|
"dust_limit_msat": {},
|
|
"max_total_htlc_in_msat": {},
|
|
"their_reserve_msat": {},
|
|
"our_reserve_msat": {},
|
|
"spendable_msat": {},
|
|
"receivable_msat": {},
|
|
"minimum_htlc_in_msat": {},
|
|
"spendable_msatoshi": {},
|
|
"receivable_msatoshi": {},
|
|
"their_to_self_delay": {},
|
|
"our_to_self_delay": {},
|
|
"max_accepted_htlcs": {},
|
|
"msatoshi_to_us": {},
|
|
"msatoshi_to_us_min": {},
|
|
"msatoshi_to_us_max": {},
|
|
"msatoshi_total": {},
|
|
"dust_limit_satoshis": {},
|
|
"max_htlc_value_in_flight_msat": {},
|
|
"our_channel_reserve_satoshis": {},
|
|
"their_channel_reserve_satoshis": {},
|
|
"spendable_satoshis": {},
|
|
"receivable_satoshis": {},
|
|
"htlc_minimum_msat": {},
|
|
"state_changes": {},
|
|
"status": {},
|
|
"in_payments_offered": {},
|
|
"in_offered_msat": {},
|
|
"in_msatoshi_offered": {},
|
|
"in_payments_fulfilled": {},
|
|
"in_fulfilled_msat": {},
|
|
"in_msatoshi_fulfilled": {},
|
|
"out_payments_offered": {},
|
|
"out_offered_msat": {},
|
|
"out_msatoshi_offered": {},
|
|
"out_payments_fulfilled": {},
|
|
"out_fulfilled_msat": {},
|
|
"out_msatoshi_fulfilled": {},
|
|
"htlcs": {},
|
|
"initial_feerate": {},
|
|
"last_feerate": {},
|
|
"next_feerate": {},
|
|
"close_to_addr": {},
|
|
"direction": {},
|
|
"last_tx_fee": {
|
|
"deprecated": true
|
|
},
|
|
"last_tx_fee_msat": {
|
|
"type": "msat",
|
|
"description": "fee attached to this the current tx"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
{
|
|
"if": {
|
|
"required": [
|
|
"short_channel_id"
|
|
]
|
|
},
|
|
"then": {
|
|
"additionalProperties": false,
|
|
"required": [
|
|
"direction"
|
|
],
|
|
"properties": {
|
|
"state": {},
|
|
"scratch_txid": {},
|
|
"feerate": {},
|
|
"owner": {},
|
|
"short_channel_id": {},
|
|
"channel_id": {},
|
|
"funding_txid": {},
|
|
"funding_outnum": {},
|
|
"inflight": {},
|
|
"close_to": {},
|
|
"private": {},
|
|
"opener": {},
|
|
"closer": {},
|
|
"features": {},
|
|
"funding": {},
|
|
"funding_allocation_msat": {},
|
|
"funding_msat": {},
|
|
"to_us_msat": {},
|
|
"min_to_us_msat": {},
|
|
"max_to_us_msat": {},
|
|
"total_msat": {},
|
|
"fee_base_msat": {},
|
|
"fee_proportional_millionths": {},
|
|
"dust_limit_msat": {},
|
|
"max_total_htlc_in_msat": {},
|
|
"their_reserve_msat": {},
|
|
"our_reserve_msat": {},
|
|
"spendable_msat": {},
|
|
"receivable_msat": {},
|
|
"minimum_htlc_in_msat": {},
|
|
"spendable_msatoshi": {},
|
|
"receivable_msatoshi": {},
|
|
"their_to_self_delay": {},
|
|
"our_to_self_delay": {},
|
|
"max_accepted_htlcs": {},
|
|
"msatoshi_to_us": {},
|
|
"msatoshi_to_us_min": {},
|
|
"msatoshi_to_us_max": {},
|
|
"msatoshi_total": {},
|
|
"dust_limit_satoshis": {},
|
|
"max_htlc_value_in_flight_msat": {},
|
|
"our_channel_reserve_satoshis": {},
|
|
"their_channel_reserve_satoshis": {},
|
|
"spendable_satoshis": {},
|
|
"receivable_satoshis": {},
|
|
"htlc_minimum_msat": {},
|
|
"state_changes": {},
|
|
"status": {},
|
|
"in_payments_offered": {},
|
|
"in_offered_msat": {},
|
|
"in_msatoshi_offered": {},
|
|
"in_payments_fulfilled": {},
|
|
"in_fulfilled_msat": {},
|
|
"in_msatoshi_fulfilled": {},
|
|
"out_payments_offered": {},
|
|
"out_offered_msat": {},
|
|
"out_msatoshi_offered": {},
|
|
"out_payments_fulfilled": {},
|
|
"out_fulfilled_msat": {},
|
|
"out_msatoshi_fulfilled": {},
|
|
"htlcs": {},
|
|
"initial_feerate": {},
|
|
"last_feerate": {},
|
|
"next_feerate": {},
|
|
"last_tx_fee": {},
|
|
"close_to_addr": {},
|
|
"last_tx_fee_msat": {},
|
|
"direction": {
|
|
"type": "u32",
|
|
"description": "0 if we're the lesser node_id, 1 if we're the greater"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
{
|
|
"if": {
|
|
"required": [
|
|
"inflight"
|
|
]
|
|
},
|
|
"then": {
|
|
"additionalProperties": false,
|
|
"required": [
|
|
"initial_feerate",
|
|
"last_feerate",
|
|
"next_feerate"
|
|
],
|
|
"properties": {
|
|
"state": {},
|
|
"scratch_txid": {},
|
|
"feerate": {},
|
|
"owner": {},
|
|
"short_channel_id": {},
|
|
"channel_id": {},
|
|
"funding_txid": {},
|
|
"funding_outnum": {},
|
|
"close_to": {},
|
|
"private": {},
|
|
"opener": {},
|
|
"closer": {},
|
|
"features": {},
|
|
"funding": {},
|
|
"funding_allocation_msat": {},
|
|
"funding_msat": {},
|
|
"to_us_msat": {},
|
|
"min_to_us_msat": {},
|
|
"max_to_us_msat": {},
|
|
"total_msat": {},
|
|
"fee_base_msat": {},
|
|
"fee_proportional_millionths": {},
|
|
"dust_limit_msat": {},
|
|
"max_total_htlc_in_msat": {},
|
|
"their_reserve_msat": {},
|
|
"our_reserve_msat": {},
|
|
"spendable_msat": {},
|
|
"receivable_msat": {},
|
|
"minimum_htlc_in_msat": {},
|
|
"spendable_msatoshi": {},
|
|
"receivable_msatoshi": {},
|
|
"their_to_self_delay": {},
|
|
"our_to_self_delay": {},
|
|
"max_accepted_htlcs": {},
|
|
"msatoshi_to_us": {},
|
|
"msatoshi_to_us_min": {},
|
|
"msatoshi_to_us_max": {},
|
|
"msatoshi_total": {},
|
|
"dust_limit_satoshis": {},
|
|
"max_htlc_value_in_flight_msat": {},
|
|
"our_channel_reserve_satoshis": {},
|
|
"their_channel_reserve_satoshis": {},
|
|
"spendable_satoshis": {},
|
|
"receivable_satoshis": {},
|
|
"htlc_minimum_msat": {},
|
|
"state_changes": {},
|
|
"status": {},
|
|
"in_payments_offered": {},
|
|
"in_offered_msat": {},
|
|
"in_msatoshi_offered": {},
|
|
"in_payments_fulfilled": {},
|
|
"in_fulfilled_msat": {},
|
|
"in_msatoshi_fulfilled": {},
|
|
"out_payments_offered": {},
|
|
"out_offered_msat": {},
|
|
"out_msatoshi_offered": {},
|
|
"out_payments_fulfilled": {},
|
|
"out_fulfilled_msat": {},
|
|
"out_msatoshi_fulfilled": {},
|
|
"htlcs": {},
|
|
"inflight": {},
|
|
"last_tx_fee": {},
|
|
"close_to_addr": {},
|
|
"direction": {},
|
|
"last_tx_fee_msat": {},
|
|
"initial_feerate": {
|
|
"type": "string",
|
|
"description": "The feerate for the initial funding transaction in per-1000-weight, with \"kpw\" appended"
|
|
},
|
|
"last_feerate": {
|
|
"type": "string",
|
|
"description": "The feerate for the latest funding transaction in per-1000-weight, with \"kpw\" appended"
|
|
},
|
|
"next_feerate": {
|
|
"type": "string",
|
|
"description": "The minimum feerate for the next funding transaction in per-1000-weight, with \"kpw\" appended"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
]
|
|
}
|
|
}
|
|
},
|
|
"allOf": [
|
|
{
|
|
"if": {
|
|
"additionalProperties": true,
|
|
"properties": {
|
|
"connected": {
|
|
"enum": [
|
|
true
|
|
]
|
|
}
|
|
}
|
|
},
|
|
"then": {
|
|
"additionalProperties": false,
|
|
"required": [
|
|
"netaddr",
|
|
"features"
|
|
],
|
|
"properties": {
|
|
"id": {},
|
|
"channels": {},
|
|
"connected": {},
|
|
"htlcs": {},
|
|
"log": {},
|
|
"last_tx_fee": {},
|
|
"netaddr": {
|
|
"type": "array",
|
|
"minItems": 1,
|
|
"maxItems": 1,
|
|
"description": "A single entry array",
|
|
"items": {
|
|
"type": "string",
|
|
"description": "address, e.g. 1.2.3.4:1234"
|
|
}
|
|
},
|
|
"features": {
|
|
"type": "hex",
|
|
"description": "bitmap of BOLT #9 features from peer's INIT message"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
]
|
|
}
|
|
}
|
|
}
|
|
}
|