2022-01-14 19:45:30 +01:00
|
|
|
syntax = "proto3";
|
|
|
|
package cln;
|
|
|
|
|
|
|
|
// This file was automatically derived from the JSON-RPC schemas in
|
|
|
|
// `doc/schemas`. Do not edit this file manually as it would get
|
|
|
|
// overwritten.
|
|
|
|
|
|
|
|
import "primitives.proto";
|
|
|
|
|
|
|
|
service Node {
|
|
|
|
rpc Getinfo(GetinfoRequest) returns (GetinfoResponse) {}
|
2022-01-27 18:17:10 +01:00
|
|
|
rpc ListPeers(ListpeersRequest) returns (ListpeersResponse) {}
|
2022-01-14 19:45:30 +01:00
|
|
|
rpc ListFunds(ListfundsRequest) returns (ListfundsResponse) {}
|
|
|
|
rpc ListChannels(ListchannelsRequest) returns (ListchannelsResponse) {}
|
|
|
|
rpc AddGossip(AddgossipRequest) returns (AddgossipResponse) {}
|
|
|
|
rpc AutoCleanInvoice(AutocleaninvoiceRequest) returns (AutocleaninvoiceResponse) {}
|
|
|
|
rpc CheckMessage(CheckmessageRequest) returns (CheckmessageResponse) {}
|
|
|
|
rpc Close(CloseRequest) returns (CloseResponse) {}
|
|
|
|
}
|
|
|
|
|
|
|
|
message GetinfoRequest {
|
|
|
|
}
|
|
|
|
|
|
|
|
message GetinfoResponse {
|
|
|
|
bytes id = 1;
|
|
|
|
string alias = 2;
|
|
|
|
bytes color = 3;
|
|
|
|
uint32 num_peers = 4;
|
|
|
|
uint32 num_pending_channels = 5;
|
|
|
|
uint32 num_active_channels = 6;
|
|
|
|
uint32 num_inactive_channels = 7;
|
|
|
|
string version = 8;
|
|
|
|
string lightning_dir = 9;
|
|
|
|
uint32 blockheight = 10;
|
|
|
|
string network = 11;
|
|
|
|
Amount fees_collected_msat = 12;
|
|
|
|
repeated GetinfoAddress address = 13;
|
|
|
|
repeated GetinfoBinding binding = 14;
|
|
|
|
optional string warning_bitcoind_sync = 15;
|
|
|
|
optional string warning_lightningd_sync = 16;
|
|
|
|
}
|
|
|
|
|
|
|
|
message GetinfoAddress {
|
|
|
|
// Getinfo.address[].type
|
|
|
|
enum GetinfoAddressType {
|
|
|
|
DNS = 0;
|
|
|
|
IPV4 = 1;
|
|
|
|
IPV6 = 2;
|
|
|
|
TORV2 = 3;
|
|
|
|
TORV3 = 4;
|
|
|
|
WEBSOCKET = 5;
|
|
|
|
}
|
|
|
|
GetinfoAddressType item_type = 1;
|
|
|
|
uint32 port = 2;
|
|
|
|
optional string address = 3;
|
|
|
|
}
|
|
|
|
|
|
|
|
message GetinfoBinding {
|
|
|
|
// Getinfo.binding[].type
|
|
|
|
enum GetinfoBindingType {
|
|
|
|
LOCAL_SOCKET = 0;
|
|
|
|
IPV4 = 1;
|
|
|
|
IPV6 = 2;
|
|
|
|
TORV2 = 3;
|
|
|
|
TORV3 = 4;
|
|
|
|
}
|
|
|
|
GetinfoBindingType item_type = 1;
|
|
|
|
optional string address = 2;
|
|
|
|
optional uint32 port = 3;
|
|
|
|
optional string socket = 4;
|
|
|
|
}
|
|
|
|
|
2022-01-27 18:17:10 +01:00
|
|
|
message ListpeersRequest {
|
|
|
|
optional bytes id = 1;
|
|
|
|
optional string level = 2;
|
|
|
|
}
|
|
|
|
|
|
|
|
message ListpeersResponse {
|
|
|
|
repeated ListpeersPeers peers = 1;
|
|
|
|
}
|
|
|
|
|
|
|
|
message ListpeersPeers {
|
|
|
|
bytes id = 1;
|
|
|
|
bool connected = 2;
|
|
|
|
repeated ListpeersPeersLog log = 3;
|
|
|
|
repeated ListpeersPeersChannels channels = 4;
|
|
|
|
repeated string netaddr = 5;
|
|
|
|
optional bytes features = 6;
|
|
|
|
}
|
|
|
|
|
|
|
|
message ListpeersPeersLog {
|
|
|
|
// ListPeers.peers[].log[].type
|
|
|
|
enum ListpeersPeersLogType {
|
|
|
|
SKIPPED = 0;
|
|
|
|
BROKEN = 1;
|
|
|
|
UNUSUAL = 2;
|
|
|
|
INFO = 3;
|
|
|
|
DEBUG = 4;
|
|
|
|
IO_IN = 5;
|
|
|
|
IO_OUT = 6;
|
|
|
|
}
|
|
|
|
ListpeersPeersLogType item_type = 1;
|
|
|
|
optional uint32 num_skipped = 2;
|
|
|
|
optional string time = 3;
|
|
|
|
optional string source = 4;
|
|
|
|
optional string log = 5;
|
|
|
|
optional bytes node_id = 6;
|
|
|
|
optional bytes data = 7;
|
|
|
|
}
|
|
|
|
|
|
|
|
message ListpeersPeersChannels {
|
|
|
|
// ListPeers.peers[].channels[].state
|
|
|
|
enum ListpeersPeersChannelsState {
|
|
|
|
OPENINGD = 0;
|
|
|
|
CHANNELD_AWAITING_LOCKIN = 1;
|
|
|
|
CHANNELD_NORMAL = 2;
|
|
|
|
CHANNELD_SHUTTING_DOWN = 3;
|
|
|
|
CLOSINGD_SIGEXCHANGE = 4;
|
|
|
|
CLOSINGD_COMPLETE = 5;
|
|
|
|
AWAITING_UNILATERAL = 6;
|
|
|
|
FUNDING_SPEND_SEEN = 7;
|
|
|
|
ONCHAIN = 8;
|
|
|
|
DUALOPEND_OPEN_INIT = 9;
|
|
|
|
DUALOPEND_AWAITING_LOCKIN = 10;
|
|
|
|
}
|
|
|
|
ListpeersPeersChannelsState state = 1;
|
|
|
|
optional bytes scratch_txid = 2;
|
|
|
|
optional string owner = 4;
|
|
|
|
optional string short_channel_id = 5;
|
|
|
|
optional bytes channel_id = 6;
|
|
|
|
optional bytes funding_txid = 7;
|
|
|
|
optional string initial_feerate = 8;
|
|
|
|
optional string last_feerate = 9;
|
|
|
|
optional string next_feerate = 10;
|
|
|
|
optional uint32 next_fee_step = 11;
|
|
|
|
repeated ListpeersPeersChannelsInflight inflight = 12;
|
|
|
|
optional bytes close_to = 13;
|
|
|
|
optional bool private = 14;
|
|
|
|
ChannelSide opener = 15;
|
|
|
|
optional ChannelSide closer = 16;
|
|
|
|
repeated string features = 17;
|
|
|
|
optional Amount to_us_msat = 19;
|
|
|
|
optional Amount min_to_us_msat = 20;
|
|
|
|
optional Amount max_to_us_msat = 21;
|
|
|
|
optional Amount total_msat = 22;
|
|
|
|
optional Amount fee_base_msat = 23;
|
|
|
|
optional uint32 fee_proportional_millionths = 24;
|
|
|
|
optional Amount dust_limit_msat = 25;
|
|
|
|
optional Amount max_total_htlc_in_msat = 26;
|
|
|
|
optional Amount their_reserve_msat = 27;
|
|
|
|
optional Amount our_reserve_msat = 28;
|
|
|
|
optional Amount spendable_msat = 29;
|
|
|
|
optional Amount receivable_msat = 30;
|
|
|
|
optional Amount minimum_htlc_in_msat = 31;
|
|
|
|
optional uint32 their_to_self_delay = 32;
|
|
|
|
optional uint32 our_to_self_delay = 33;
|
|
|
|
optional uint32 max_accepted_htlcs = 34;
|
|
|
|
repeated string status = 36;
|
|
|
|
optional uint64 in_payments_offered = 37;
|
|
|
|
optional Amount in_offered_msat = 38;
|
|
|
|
optional uint64 in_payments_fulfilled = 39;
|
|
|
|
optional Amount in_fulfilled_msat = 40;
|
|
|
|
optional uint64 out_payments_offered = 41;
|
|
|
|
optional Amount out_offered_msat = 42;
|
|
|
|
optional uint64 out_payments_fulfilled = 43;
|
|
|
|
optional Amount out_fulfilled_msat = 44;
|
|
|
|
repeated ListpeersPeersChannelsHtlcs htlcs = 45;
|
|
|
|
optional string close_to_addr = 46;
|
|
|
|
}
|
|
|
|
|
|
|
|
message ListpeersPeersChannelsFeerate {
|
|
|
|
uint32 perkw = 1;
|
|
|
|
uint32 perkb = 2;
|
|
|
|
}
|
|
|
|
|
|
|
|
message ListpeersPeersChannelsInflight {
|
|
|
|
bytes funding_txid = 1;
|
|
|
|
uint32 funding_outnum = 2;
|
|
|
|
string feerate = 3;
|
|
|
|
Amount total_funding_msat = 4;
|
|
|
|
Amount our_funding_msat = 5;
|
|
|
|
bytes scratch_txid = 6;
|
|
|
|
}
|
|
|
|
|
|
|
|
message ListpeersPeersChannelsFunding {
|
|
|
|
Amount local_msat = 1;
|
|
|
|
Amount remote_msat = 2;
|
|
|
|
}
|
|
|
|
|
|
|
|
message ListpeersPeersChannelsHtlcs {
|
|
|
|
// ListPeers.peers[].channels[].htlcs[].direction
|
|
|
|
enum ListpeersPeersChannelsHtlcsDirection {
|
|
|
|
IN = 0;
|
|
|
|
OUT = 1;
|
|
|
|
}
|
|
|
|
// ListPeers.peers[].channels[].htlcs[].state
|
|
|
|
enum ListpeersPeersChannelsHtlcsState {
|
|
|
|
SENT_ADD_HTLC = 0;
|
|
|
|
SENT_ADD_COMMIT = 1;
|
|
|
|
RCVD_ADD_REVOCATION = 2;
|
|
|
|
RCVD_ADD_ACK_COMMIT = 3;
|
|
|
|
SENT_ADD_ACK_REVOCATION = 4;
|
|
|
|
RCVD_REMOVE_HTLC = 5;
|
|
|
|
RCVD_REMOVE_COMMIT = 6;
|
|
|
|
SENT_REMOVE_REVOCATION = 7;
|
|
|
|
SENT_REMOVE_ACK_COMMIT = 8;
|
|
|
|
RCVD_REMOVE_ACK_REVOCATION = 9;
|
|
|
|
}
|
|
|
|
ListpeersPeersChannelsHtlcsDirection direction = 1;
|
|
|
|
uint64 id = 2;
|
|
|
|
Amount amount_msat = 3;
|
|
|
|
uint32 expiry = 4;
|
|
|
|
bytes payment_hash = 5;
|
|
|
|
optional bool local_trimmed = 6;
|
|
|
|
optional string status = 7;
|
|
|
|
ListpeersPeersChannelsHtlcsState state = 8;
|
|
|
|
}
|
|
|
|
|
2022-01-14 19:45:30 +01:00
|
|
|
message ListfundsRequest {
|
|
|
|
optional bool spent = 1;
|
|
|
|
}
|
|
|
|
|
|
|
|
message ListfundsResponse {
|
|
|
|
repeated ListfundsOutputs outputs = 1;
|
|
|
|
repeated ListfundsChannels channels = 2;
|
|
|
|
}
|
|
|
|
|
|
|
|
message ListfundsOutputs {
|
|
|
|
// ListFunds.outputs[].status
|
|
|
|
enum ListfundsOutputsStatus {
|
|
|
|
UNCONFIRMED = 0;
|
|
|
|
CONFIRMED = 1;
|
|
|
|
SPENT = 2;
|
|
|
|
}
|
|
|
|
bytes txid = 1;
|
|
|
|
uint32 output = 2;
|
|
|
|
Amount amount_msat = 3;
|
|
|
|
bytes scriptpubkey = 4;
|
|
|
|
optional string address = 5;
|
|
|
|
optional bytes redeemscript = 6;
|
|
|
|
ListfundsOutputsStatus status = 7;
|
|
|
|
optional uint32 blockheight = 8;
|
|
|
|
}
|
|
|
|
|
|
|
|
message ListfundsChannels {
|
|
|
|
bytes peer_id = 1;
|
|
|
|
Amount our_amount_msat = 2;
|
|
|
|
Amount amount_msat = 3;
|
|
|
|
bytes funding_txid = 4;
|
|
|
|
uint32 funding_output = 5;
|
|
|
|
bool connected = 6;
|
|
|
|
ChannelState state = 7;
|
|
|
|
optional string short_channel_id = 8;
|
|
|
|
}
|
|
|
|
|
|
|
|
message ListchannelsRequest {
|
|
|
|
optional string short_channel_id = 1;
|
|
|
|
optional bytes source = 2;
|
|
|
|
optional bytes destination = 3;
|
|
|
|
}
|
|
|
|
|
|
|
|
message ListchannelsResponse {
|
|
|
|
repeated ListchannelsChannels channels = 1;
|
|
|
|
}
|
|
|
|
|
|
|
|
message ListchannelsChannels {
|
|
|
|
bytes source = 1;
|
|
|
|
bytes destination = 2;
|
|
|
|
bool public = 3;
|
|
|
|
Amount amount_msat = 4;
|
|
|
|
uint32 message_flags = 5;
|
|
|
|
uint32 channel_flags = 6;
|
|
|
|
bool active = 7;
|
|
|
|
uint32 last_update = 8;
|
|
|
|
uint32 base_fee_millisatoshi = 9;
|
|
|
|
uint32 fee_per_millionth = 10;
|
|
|
|
uint32 delay = 11;
|
|
|
|
Amount htlc_minimum_msat = 12;
|
|
|
|
optional Amount htlc_maximum_msat = 13;
|
|
|
|
bytes features = 14;
|
|
|
|
}
|
|
|
|
|
|
|
|
message AddgossipRequest {
|
|
|
|
bytes message = 1;
|
|
|
|
}
|
|
|
|
|
|
|
|
message AddgossipResponse {
|
|
|
|
}
|
|
|
|
|
|
|
|
message AutocleaninvoiceRequest {
|
|
|
|
optional uint64 expired_by = 1;
|
|
|
|
optional uint64 cycle_seconds = 2;
|
|
|
|
}
|
|
|
|
|
|
|
|
message AutocleaninvoiceResponse {
|
|
|
|
bool enabled = 1;
|
|
|
|
optional uint64 expired_by = 2;
|
|
|
|
optional uint64 cycle_seconds = 3;
|
|
|
|
}
|
|
|
|
|
|
|
|
message CheckmessageRequest {
|
|
|
|
string message = 1;
|
|
|
|
string zbase = 2;
|
|
|
|
optional bytes pubkey = 3;
|
|
|
|
}
|
|
|
|
|
|
|
|
message CheckmessageResponse {
|
|
|
|
bool verified = 1;
|
|
|
|
optional bytes pubkey = 2;
|
|
|
|
}
|
|
|
|
|
|
|
|
message CloseRequest {
|
|
|
|
bytes id = 1;
|
|
|
|
optional uint32 unilateraltimeout = 2;
|
|
|
|
optional string destination = 3;
|
|
|
|
optional string fee_negotiation_step = 4;
|
|
|
|
optional bytes wrong_funding = 5;
|
|
|
|
optional bool force_lease_closed = 6;
|
|
|
|
}
|
|
|
|
|
|
|
|
message CloseResponse {
|
|
|
|
// Close.type
|
|
|
|
enum CloseType {
|
|
|
|
MUTUAL = 0;
|
|
|
|
UNILATERAL = 1;
|
|
|
|
UNOPENED = 2;
|
|
|
|
}
|
|
|
|
CloseType item_type = 1;
|
|
|
|
optional bytes tx = 2;
|
|
|
|
optional bytes txid = 3;
|
|
|
|
}
|