lnrpc 0.10.0 → 0.11.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
- data/README.md +3 -13
- data/examples.rb +5 -5
- data/generate-grpc-service-files.sh +30 -0
- data/lib/grpc_services/autopilotrpc/autopilot_pb.rb +48 -0
- data/lib/grpc_services/autopilotrpc/autopilot_services_pb.rb +40 -0
- data/lib/grpc_services/chainrpc/chainnotifier_pb.rb +67 -0
- data/lib/grpc_services/chainrpc/chainnotifier_services_pb.rb +51 -0
- data/lib/grpc_services/invoicesrpc/invoices_pb.rb +48 -0
- data/lib/grpc_services/invoicesrpc/invoices_services_pb.rb +41 -0
- data/lib/grpc_services/lnclipb/lncli_pb.rb +18 -0
- data/lib/grpc_services/routerrpc/router_pb.rb +229 -0
- data/lib/{lnrpc → grpc_services/routerrpc}/router_services_pb.rb +33 -16
- data/lib/grpc_services/rpc_pb.rb +1265 -0
- data/lib/{lnrpc → grpc_services}/rpc_services_pb.rb +83 -115
- data/lib/grpc_services/signrpc/signer_pb.rb +83 -0
- data/lib/grpc_services/signrpc/signer_services_pb.rb +68 -0
- data/lib/grpc_services/verrpc/verrpc_pb.rb +27 -0
- data/lib/grpc_services/verrpc/verrpc_services_pb.rb +27 -0
- data/lib/grpc_services/walletrpc/walletkit_pb.rb +149 -0
- data/lib/grpc_services/walletrpc/walletkit_services_pb.rb +115 -0
- data/lib/grpc_services/walletunlocker_pb.rb +51 -0
- data/lib/grpc_services/walletunlocker_services_pb.rb +72 -0
- data/lib/grpc_services/watchtowerrpc/watchtower_pb.rb +21 -0
- data/lib/grpc_services/watchtowerrpc/watchtower_services_pb.rb +28 -0
- data/lib/grpc_services/wtclientrpc/wtclient_pb.rb +75 -0
- data/lib/grpc_services/wtclientrpc/wtclient_services_pb.rb +43 -0
- data/lib/lnrpc.rb +6 -2
- data/lib/lnrpc/client.rb +50 -9
- data/lib/lnrpc/grpc_wrapper.rb +19 -42
- data/lib/lnrpc/version.rb +1 -1
- data/lnrpc.gemspec +1 -1
- metadata +27 -8
- data/lib/lnrpc/router.proto +0 -560
- data/lib/lnrpc/router_pb.rb +0 -198
- data/lib/lnrpc/rpc.proto +0 -3687
- data/lib/lnrpc/rpc_pb.rb +0 -1248
@@ -2,19 +2,15 @@
|
|
2
2
|
# Source: rpc.proto for package 'lnrpc'
|
3
3
|
|
4
4
|
require 'grpc'
|
5
|
-
|
5
|
+
require 'rpc_pb'
|
6
6
|
|
7
7
|
module Lnrpc
|
8
|
-
module
|
9
|
-
#
|
8
|
+
module Lightning
|
9
|
+
#
|
10
10
|
# Comments in this file will be directly parsed into the API
|
11
11
|
# Documentation as descriptions of the associated method, message, or field.
|
12
12
|
# These descriptions should go right above the definition of the object, and
|
13
|
-
# can be in either block or
|
14
|
-
#
|
15
|
-
# One edge case exists where a // comment followed by a /// comment in the
|
16
|
-
# next line will cause the description not to show up in the documentation. In
|
17
|
-
# that instance, simply separate the two comments with a blank line.
|
13
|
+
# can be in either block or // comment format.
|
18
14
|
#
|
19
15
|
# An RPC method can be matched to an lncli command by placing a line in the
|
20
16
|
# beginning of the description in exactly the following format:
|
@@ -27,53 +23,7 @@ module Lnrpc
|
|
27
23
|
# this proto file can be found here:
|
28
24
|
# https://github.com/lightninglabs/lightning-api
|
29
25
|
#
|
30
|
-
#
|
31
|
-
# lnd at first startup, and unlock a previously set up wallet.
|
32
|
-
class Service
|
33
|
-
|
34
|
-
include GRPC::GenericService
|
35
|
-
|
36
|
-
self.marshal_class_method = :encode
|
37
|
-
self.unmarshal_class_method = :decode
|
38
|
-
self.service_name = 'lnrpc.WalletUnlocker'
|
39
|
-
|
40
|
-
# *
|
41
|
-
# GenSeed is the first method that should be used to instantiate a new lnd
|
42
|
-
# instance. This method allows a caller to generate a new aezeed cipher seed
|
43
|
-
# given an optional passphrase. If provided, the passphrase will be necessary
|
44
|
-
# to decrypt the cipherseed to expose the internal wallet seed.
|
45
|
-
#
|
46
|
-
# Once the cipherseed is obtained and verified by the user, the InitWallet
|
47
|
-
# method should be used to commit the newly generated seed, and create the
|
48
|
-
# wallet.
|
49
|
-
rpc :GenSeed, GenSeedRequest, GenSeedResponse
|
50
|
-
# *
|
51
|
-
# InitWallet is used when lnd is starting up for the first time to fully
|
52
|
-
# initialize the daemon and its internal wallet. At the very least a wallet
|
53
|
-
# password must be provided. This will be used to encrypt sensitive material
|
54
|
-
# on disk.
|
55
|
-
#
|
56
|
-
# In the case of a recovery scenario, the user can also specify their aezeed
|
57
|
-
# mnemonic and passphrase. If set, then the daemon will use this prior state
|
58
|
-
# to initialize its internal wallet.
|
59
|
-
#
|
60
|
-
# Alternatively, this can be used along with the GenSeed RPC to obtain a
|
61
|
-
# seed, then present it to the user. Once it has been verified by the user,
|
62
|
-
# the seed can be fed into this RPC in order to commit the new wallet.
|
63
|
-
rpc :InitWallet, InitWalletRequest, InitWalletResponse
|
64
|
-
# * lncli: `unlock`
|
65
|
-
# UnlockWallet is used at startup of lnd to provide a password to unlock
|
66
|
-
# the wallet database.
|
67
|
-
rpc :UnlockWallet, UnlockWalletRequest, UnlockWalletResponse
|
68
|
-
# * lncli: `changepassword`
|
69
|
-
# ChangePassword changes the password of the encrypted wallet. This will
|
70
|
-
# automatically unlock the wallet database if successful.
|
71
|
-
rpc :ChangePassword, ChangePasswordRequest, ChangePasswordResponse
|
72
|
-
end
|
73
|
-
|
74
|
-
Stub = Service.rpc_stub_class
|
75
|
-
end
|
76
|
-
module Lightning
|
26
|
+
# Lightning is the main RPC server of the daemon.
|
77
27
|
class Service
|
78
28
|
|
79
29
|
include GRPC::GenericService
|
@@ -82,111 +32,123 @@ module Lnrpc
|
|
82
32
|
self.unmarshal_class_method = :decode
|
83
33
|
self.service_name = 'lnrpc.Lightning'
|
84
34
|
|
85
|
-
#
|
35
|
+
# lncli: `walletbalance`
|
86
36
|
# WalletBalance returns total unspent outputs(confirmed and unconfirmed), all
|
87
37
|
# confirmed unspent outputs and all unconfirmed unspent outputs under control
|
88
38
|
# of the wallet.
|
89
39
|
rpc :WalletBalance, WalletBalanceRequest, WalletBalanceResponse
|
90
|
-
#
|
40
|
+
# lncli: `channelbalance`
|
91
41
|
# ChannelBalance returns the total funds available across all open channels
|
92
42
|
# in satoshis.
|
93
43
|
rpc :ChannelBalance, ChannelBalanceRequest, ChannelBalanceResponse
|
94
|
-
#
|
44
|
+
# lncli: `listchaintxns`
|
95
45
|
# GetTransactions returns a list describing all the known transactions
|
96
46
|
# relevant to the wallet.
|
97
47
|
rpc :GetTransactions, GetTransactionsRequest, TransactionDetails
|
98
|
-
#
|
48
|
+
# lncli: `estimatefee`
|
99
49
|
# EstimateFee asks the chain backend to estimate the fee rate and total fees
|
100
50
|
# for a transaction that pays to multiple specified outputs.
|
51
|
+
#
|
52
|
+
# When using REST, the `AddrToAmount` map type can be set by appending
|
53
|
+
# `&AddrToAmount[<address>]=<amount_to_send>` to the URL. Unfortunately this
|
54
|
+
# map type doesn't appear in the REST API documentation because of a bug in
|
55
|
+
# the grpc-gateway library.
|
101
56
|
rpc :EstimateFee, EstimateFeeRequest, EstimateFeeResponse
|
102
|
-
#
|
57
|
+
# lncli: `sendcoins`
|
103
58
|
# SendCoins executes a request to send coins to a particular address. Unlike
|
104
59
|
# SendMany, this RPC call only allows creating a single output at a time. If
|
105
60
|
# neither target_conf, or sat_per_byte are set, then the internal wallet will
|
106
61
|
# consult its fee model to determine a fee for the default confirmation
|
107
62
|
# target.
|
108
63
|
rpc :SendCoins, SendCoinsRequest, SendCoinsResponse
|
109
|
-
#
|
64
|
+
# lncli: `listunspent`
|
65
|
+
# Deprecated, use walletrpc.ListUnspent instead.
|
66
|
+
#
|
110
67
|
# ListUnspent returns a list of all utxos spendable by the wallet with a
|
111
68
|
# number of confirmations between the specified minimum and maximum.
|
112
69
|
rpc :ListUnspent, ListUnspentRequest, ListUnspentResponse
|
113
|
-
#
|
70
|
+
#
|
114
71
|
# SubscribeTransactions creates a uni-directional stream from the server to
|
115
72
|
# the client in which any newly discovered transactions relevant to the
|
116
73
|
# wallet are sent over.
|
117
74
|
rpc :SubscribeTransactions, GetTransactionsRequest, stream(Transaction)
|
118
|
-
#
|
75
|
+
# lncli: `sendmany`
|
119
76
|
# SendMany handles a request for a transaction that creates multiple specified
|
120
77
|
# outputs in parallel. If neither target_conf, or sat_per_byte are set, then
|
121
78
|
# the internal wallet will consult its fee model to determine a fee for the
|
122
79
|
# default confirmation target.
|
123
80
|
rpc :SendMany, SendManyRequest, SendManyResponse
|
124
|
-
#
|
81
|
+
# lncli: `newaddress`
|
125
82
|
# NewAddress creates a new address under control of the local wallet.
|
126
83
|
rpc :NewAddress, NewAddressRequest, NewAddressResponse
|
127
|
-
#
|
84
|
+
# lncli: `signmessage`
|
128
85
|
# SignMessage signs a message with this node's private key. The returned
|
129
86
|
# signature string is `zbase32` encoded and pubkey recoverable, meaning that
|
130
87
|
# only the message digest and signature are needed for verification.
|
131
88
|
rpc :SignMessage, SignMessageRequest, SignMessageResponse
|
132
|
-
#
|
89
|
+
# lncli: `verifymessage`
|
133
90
|
# VerifyMessage verifies a signature over a msg. The signature must be
|
134
91
|
# zbase32 encoded and signed by an active node in the resident node's
|
135
92
|
# channel database. In addition to returning the validity of the signature,
|
136
93
|
# VerifyMessage also returns the recovered pubkey from the signature.
|
137
94
|
rpc :VerifyMessage, VerifyMessageRequest, VerifyMessageResponse
|
138
|
-
#
|
95
|
+
# lncli: `connect`
|
139
96
|
# ConnectPeer attempts to establish a connection to a remote peer. This is at
|
140
97
|
# the networking level, and is used for communication between nodes. This is
|
141
98
|
# distinct from establishing a channel with a peer.
|
142
99
|
rpc :ConnectPeer, ConnectPeerRequest, ConnectPeerResponse
|
143
|
-
#
|
100
|
+
# lncli: `disconnect`
|
144
101
|
# DisconnectPeer attempts to disconnect one peer from another identified by a
|
145
102
|
# given pubKey. In the case that we currently have a pending or active channel
|
146
103
|
# with the target peer, then this action will be not be allowed.
|
147
104
|
rpc :DisconnectPeer, DisconnectPeerRequest, DisconnectPeerResponse
|
148
|
-
#
|
105
|
+
# lncli: `listpeers`
|
149
106
|
# ListPeers returns a verbose listing of all currently active peers.
|
150
107
|
rpc :ListPeers, ListPeersRequest, ListPeersResponse
|
151
|
-
#
|
108
|
+
#
|
152
109
|
# SubscribePeerEvents creates a uni-directional stream from the server to
|
153
110
|
# the client in which any events relevant to the state of peers are sent
|
154
111
|
# over. Events include peers going online and offline.
|
155
112
|
rpc :SubscribePeerEvents, PeerEventSubscription, stream(PeerEvent)
|
156
|
-
#
|
113
|
+
# lncli: `getinfo`
|
157
114
|
# GetInfo returns general information concerning the lightning node including
|
158
115
|
# it's identity pubkey, alias, the chains it is connected to, and information
|
159
116
|
# concerning the number of open+pending channels.
|
160
117
|
rpc :GetInfo, GetInfoRequest, GetInfoResponse
|
118
|
+
# * lncli: `getrecoveryinfo`
|
119
|
+
# GetRecoveryInfo returns information concerning the recovery mode including
|
120
|
+
# whether it's in a recovery mode, whether the recovery is finished, and the
|
121
|
+
# progress made so far.
|
122
|
+
rpc :GetRecoveryInfo, GetRecoveryInfoRequest, GetRecoveryInfoResponse
|
161
123
|
# TODO(roasbeef): merge with below with bool?
|
162
124
|
#
|
163
|
-
#
|
125
|
+
# lncli: `pendingchannels`
|
164
126
|
# PendingChannels returns a list of all the channels that are currently
|
165
127
|
# considered "pending". A channel is pending if it has finished the funding
|
166
128
|
# workflow and is waiting for confirmations for the funding txn, or is in the
|
167
129
|
# process of closure, either initiated cooperatively or non-cooperatively.
|
168
130
|
rpc :PendingChannels, PendingChannelsRequest, PendingChannelsResponse
|
169
|
-
#
|
131
|
+
# lncli: `listchannels`
|
170
132
|
# ListChannels returns a description of all the open channels that this node
|
171
133
|
# is a participant in.
|
172
134
|
rpc :ListChannels, ListChannelsRequest, ListChannelsResponse
|
173
|
-
#
|
135
|
+
#
|
174
136
|
# SubscribeChannelEvents creates a uni-directional stream from the server to
|
175
137
|
# the client in which any updates relevant to the state of the channels are
|
176
138
|
# sent over. Events include new active channels, inactive channels, and closed
|
177
139
|
# channels.
|
178
140
|
rpc :SubscribeChannelEvents, ChannelEventSubscription, stream(ChannelEventUpdate)
|
179
|
-
#
|
141
|
+
# lncli: `closedchannels`
|
180
142
|
# ClosedChannels returns a description of all the closed channels that
|
181
143
|
# this node was a participant in.
|
182
144
|
rpc :ClosedChannels, ClosedChannelsRequest, ClosedChannelsResponse
|
183
|
-
#
|
145
|
+
#
|
184
146
|
# OpenChannelSync is a synchronous version of the OpenChannel RPC call. This
|
185
147
|
# call is meant to be consumed by clients to the REST proxy. As with all
|
186
148
|
# other sync calls, all byte slices are intended to be populated as hex
|
187
149
|
# encoded strings.
|
188
150
|
rpc :OpenChannelSync, OpenChannelRequest, ChannelPoint
|
189
|
-
#
|
151
|
+
# lncli: `openchannel`
|
190
152
|
# OpenChannel attempts to open a singly funded channel specified in the
|
191
153
|
# request to a remote peer. Users are able to specify a target number of
|
192
154
|
# blocks that the funding transaction should be confirmed in, or a manual fee
|
@@ -196,7 +158,7 @@ module Lnrpc
|
|
196
158
|
# arguments specified in the OpenChannelRequest, this pending channel ID can
|
197
159
|
# then be used to manually progress the channel funding flow.
|
198
160
|
rpc :OpenChannel, OpenChannelRequest, stream(OpenStatusUpdate)
|
199
|
-
#
|
161
|
+
#
|
200
162
|
# FundingStateStep is an advanced funding related call that allows the caller
|
201
163
|
# to either execute some preparatory steps for a funding workflow, or
|
202
164
|
# manually progress a funding workflow. The primary way a funding flow is
|
@@ -206,14 +168,14 @@ module Lnrpc
|
|
206
168
|
# Alternatively, this can be used to interactively drive PSBT signing for
|
207
169
|
# funding for partially complete funding transactions.
|
208
170
|
rpc :FundingStateStep, FundingTransitionMsg, FundingStateStepResp
|
209
|
-
#
|
171
|
+
#
|
210
172
|
# ChannelAcceptor dispatches a bi-directional streaming RPC in which
|
211
173
|
# OpenChannel requests are sent to the client and the client responds with
|
212
174
|
# a boolean that tells LND whether or not to accept the channel. This allows
|
213
175
|
# node operators to specify their own criteria for accepting inbound channels
|
214
176
|
# through a single persistent connection.
|
215
177
|
rpc :ChannelAcceptor, stream(ChannelAcceptResponse), stream(ChannelAcceptRequest)
|
216
|
-
#
|
178
|
+
# lncli: `closechannel`
|
217
179
|
# CloseChannel attempts to close an active channel identified by its channel
|
218
180
|
# outpoint (ChannelPoint). The actions of this method can additionally be
|
219
181
|
# augmented to attempt a force close after a timeout period in the case of an
|
@@ -222,41 +184,42 @@ module Lnrpc
|
|
222
184
|
# closure transaction is confirmed, or a manual fee rate. If neither are
|
223
185
|
# specified, then a default lax, block confirmation target is used.
|
224
186
|
rpc :CloseChannel, CloseChannelRequest, stream(CloseStatusUpdate)
|
225
|
-
#
|
187
|
+
# lncli: `abandonchannel`
|
226
188
|
# AbandonChannel removes all channel state from the database except for a
|
227
189
|
# close summary. This method can be used to get rid of permanently unusable
|
228
190
|
# channels due to bugs fixed in newer versions of lnd. Only available
|
229
191
|
# when in debug builds of lnd.
|
230
192
|
rpc :AbandonChannel, AbandonChannelRequest, AbandonChannelResponse
|
231
|
-
#
|
232
|
-
# Deprecated, use routerrpc.
|
193
|
+
# lncli: `sendpayment`
|
194
|
+
# Deprecated, use routerrpc.SendPaymentV2. SendPayment dispatches a
|
233
195
|
# bi-directional streaming RPC for sending payments through the Lightning
|
234
196
|
# Network. A single RPC invocation creates a persistent bi-directional
|
235
197
|
# stream allowing clients to rapidly send payments through the Lightning
|
236
198
|
# Network with a single persistent connection.
|
237
199
|
rpc :SendPayment, stream(SendRequest), stream(SendResponse)
|
238
|
-
#
|
200
|
+
#
|
239
201
|
# SendPaymentSync is the synchronous non-streaming version of SendPayment.
|
240
202
|
# This RPC is intended to be consumed by clients of the REST proxy.
|
241
203
|
# Additionally, this RPC expects the destination's public key and the payment
|
242
204
|
# hash (if any) to be encoded as hex strings.
|
243
205
|
rpc :SendPaymentSync, SendRequest, SendResponse
|
244
|
-
#
|
245
|
-
# SendToRoute is a bi-directional
|
246
|
-
#
|
247
|
-
#
|
248
|
-
# like rebalancing, and atomic
|
206
|
+
# lncli: `sendtoroute`
|
207
|
+
# Deprecated, use routerrpc.SendToRouteV2. SendToRoute is a bi-directional
|
208
|
+
# streaming RPC for sending payment through the Lightning Network. This
|
209
|
+
# method differs from SendPayment in that it allows users to specify a full
|
210
|
+
# route manually. This can be used for things like rebalancing, and atomic
|
211
|
+
# swaps.
|
249
212
|
rpc :SendToRoute, stream(SendToRouteRequest), stream(SendResponse)
|
250
|
-
#
|
213
|
+
#
|
251
214
|
# SendToRouteSync is a synchronous version of SendToRoute. It Will block
|
252
215
|
# until the payment either fails or succeeds.
|
253
216
|
rpc :SendToRouteSync, SendToRouteRequest, SendResponse
|
254
|
-
#
|
217
|
+
# lncli: `addinvoice`
|
255
218
|
# AddInvoice attempts to add a new invoice to the invoice database. Any
|
256
219
|
# duplicated invoices are rejected, therefore all invoices *must* have a
|
257
220
|
# unique payment preimage.
|
258
221
|
rpc :AddInvoice, Invoice, AddInvoiceResponse
|
259
|
-
#
|
222
|
+
# lncli: `listinvoices`
|
260
223
|
# ListInvoices returns a list of all the invoices currently stored within the
|
261
224
|
# database. Any active debug invoices are ignored. It has full support for
|
262
225
|
# paginated responses, allowing users to query for specific invoices through
|
@@ -265,12 +228,12 @@ module Lnrpc
|
|
265
228
|
# next request. By default, the first 100 invoices created will be returned.
|
266
229
|
# Backwards pagination is also supported through the Reversed flag.
|
267
230
|
rpc :ListInvoices, ListInvoiceRequest, ListInvoiceResponse
|
268
|
-
#
|
231
|
+
# lncli: `lookupinvoice`
|
269
232
|
# LookupInvoice attempts to look up an invoice according to its payment hash.
|
270
233
|
# The passed payment hash *must* be exactly 32 bytes, if not, an error is
|
271
234
|
# returned.
|
272
235
|
rpc :LookupInvoice, PaymentHash, Invoice
|
273
|
-
#
|
236
|
+
#
|
274
237
|
# SubscribeInvoices returns a uni-directional stream (server -> client) for
|
275
238
|
# notifying the client of newly added/settled invoices. The caller can
|
276
239
|
# optionally specify the add_index and/or the settle_index. If the add_index
|
@@ -281,18 +244,18 @@ module Lnrpc
|
|
281
244
|
# of these fields can be set. If no fields are set, then we'll only send out
|
282
245
|
# the latest add/settle events.
|
283
246
|
rpc :SubscribeInvoices, InvoiceSubscription, stream(Invoice)
|
284
|
-
#
|
247
|
+
# lncli: `decodepayreq`
|
285
248
|
# DecodePayReq takes an encoded payment request string and attempts to decode
|
286
249
|
# it, returning a full description of the conditions encoded within the
|
287
250
|
# payment request.
|
288
251
|
rpc :DecodePayReq, PayReqString, PayReq
|
289
|
-
#
|
252
|
+
# lncli: `listpayments`
|
290
253
|
# ListPayments returns a list of all outgoing payments.
|
291
254
|
rpc :ListPayments, ListPaymentsRequest, ListPaymentsResponse
|
292
|
-
#
|
255
|
+
#
|
293
256
|
# DeleteAllPayments deletes all outgoing payments from DB.
|
294
257
|
rpc :DeleteAllPayments, DeleteAllPaymentsRequest, DeleteAllPaymentsResponse
|
295
|
-
#
|
258
|
+
# lncli: `describegraph`
|
296
259
|
# DescribeGraph returns a description of the latest graph state from the
|
297
260
|
# point of view of the node. The graph information is partitioned into two
|
298
261
|
# components: all the nodes/vertexes, and all the edges that connect the
|
@@ -300,36 +263,41 @@ module Lnrpc
|
|
300
263
|
# the node directional specific routing policy which includes: the time lock
|
301
264
|
# delta, fee information, etc.
|
302
265
|
rpc :DescribeGraph, ChannelGraphRequest, ChannelGraph
|
303
|
-
#
|
266
|
+
# lncli: `getnodemetrics`
|
304
267
|
# GetNodeMetrics returns node metrics calculated from the graph. Currently
|
305
268
|
# the only supported metric is betweenness centrality of individual nodes.
|
306
269
|
rpc :GetNodeMetrics, NodeMetricsRequest, NodeMetricsResponse
|
307
|
-
#
|
270
|
+
# lncli: `getchaninfo`
|
308
271
|
# GetChanInfo returns the latest authenticated network announcement for the
|
309
272
|
# given channel identified by its channel ID: an 8-byte integer which
|
310
273
|
# uniquely identifies the location of transaction's funding output within the
|
311
274
|
# blockchain.
|
312
275
|
rpc :GetChanInfo, ChanInfoRequest, ChannelEdge
|
313
|
-
#
|
276
|
+
# lncli: `getnodeinfo`
|
314
277
|
# GetNodeInfo returns the latest advertised, aggregated, and authenticated
|
315
278
|
# channel information for the specified node identified by its public key.
|
316
279
|
rpc :GetNodeInfo, NodeInfoRequest, NodeInfo
|
317
|
-
#
|
280
|
+
# lncli: `queryroutes`
|
318
281
|
# QueryRoutes attempts to query the daemon's Channel Router for a possible
|
319
282
|
# route to a target destination capable of carrying a specific amount of
|
320
283
|
# satoshis. The returned route contains the full details required to craft and
|
321
284
|
# send an HTLC, also including the necessary information that should be
|
322
285
|
# present within the Sphinx packet encapsulated within the HTLC.
|
286
|
+
#
|
287
|
+
# When using REST, the `dest_custom_records` map type can be set by appending
|
288
|
+
# `&dest_custom_records[<record_number>]=<record_data_base64_url_encoded>`
|
289
|
+
# to the URL. Unfortunately this map type doesn't appear in the REST API
|
290
|
+
# documentation because of a bug in the grpc-gateway library.
|
323
291
|
rpc :QueryRoutes, QueryRoutesRequest, QueryRoutesResponse
|
324
|
-
#
|
292
|
+
# lncli: `getnetworkinfo`
|
325
293
|
# GetNetworkInfo returns some basic stats about the known channel graph from
|
326
294
|
# the point of view of the node.
|
327
295
|
rpc :GetNetworkInfo, NetworkInfoRequest, NetworkInfo
|
328
|
-
#
|
296
|
+
# lncli: `stop`
|
329
297
|
# StopDaemon will send a shutdown request to the interrupt handler, triggering
|
330
298
|
# a graceful shutdown of the daemon.
|
331
299
|
rpc :StopDaemon, StopRequest, StopResponse
|
332
|
-
#
|
300
|
+
#
|
333
301
|
# SubscribeChannelGraph launches a streaming RPC that allows the caller to
|
334
302
|
# receive notifications upon any changes to the channel graph topology from
|
335
303
|
# the point of view of the responding node. Events notified include: new
|
@@ -337,21 +305,21 @@ module Lnrpc
|
|
337
305
|
# channels being advertised, updates in the routing policy for a directional
|
338
306
|
# channel edge, and when channels are closed on-chain.
|
339
307
|
rpc :SubscribeChannelGraph, GraphTopologySubscription, stream(GraphTopologyUpdate)
|
340
|
-
#
|
308
|
+
# lncli: `debuglevel`
|
341
309
|
# DebugLevel allows a caller to programmatically set the logging verbosity of
|
342
310
|
# lnd. The logging can be targeted according to a coarse daemon-wide logging
|
343
311
|
# level, or in a granular fashion to specify the logging for a target
|
344
312
|
# sub-system.
|
345
313
|
rpc :DebugLevel, DebugLevelRequest, DebugLevelResponse
|
346
|
-
#
|
314
|
+
# lncli: `feereport`
|
347
315
|
# FeeReport allows the caller to obtain a report detailing the current fee
|
348
316
|
# schedule enforced by the node globally for each channel.
|
349
317
|
rpc :FeeReport, FeeReportRequest, FeeReportResponse
|
350
|
-
#
|
318
|
+
# lncli: `updatechanpolicy`
|
351
319
|
# UpdateChannelPolicy allows the caller to update the fee schedule and
|
352
320
|
# channel policies for all channels globally, or a particular channel.
|
353
321
|
rpc :UpdateChannelPolicy, PolicyUpdateRequest, PolicyUpdateResponse
|
354
|
-
#
|
322
|
+
# lncli: `fwdinghistory`
|
355
323
|
# ForwardingHistory allows the caller to query the htlcswitch for a record of
|
356
324
|
# all HTLCs forwarded within the target time range, and integer offset
|
357
325
|
# within that time range. If no time-range is specified, then the first chunk
|
@@ -363,7 +331,7 @@ module Lnrpc
|
|
363
331
|
# the index offset of the last entry. The index offset can be provided to the
|
364
332
|
# request to allow the caller to skip a series of records.
|
365
333
|
rpc :ForwardingHistory, ForwardingHistoryRequest, ForwardingHistoryResponse
|
366
|
-
#
|
334
|
+
# lncli: `exportchanbackup`
|
367
335
|
# ExportChannelBackup attempts to return an encrypted static channel backup
|
368
336
|
# for the target channel identified by it channel point. The backup is
|
369
337
|
# encrypted with a key generated from the aezeed seed of the user. The
|
@@ -371,25 +339,25 @@ module Lnrpc
|
|
371
339
|
# method once lnd is running, or via the InitWallet and UnlockWallet methods
|
372
340
|
# from the WalletUnlocker service.
|
373
341
|
rpc :ExportChannelBackup, ExportChannelBackupRequest, ChannelBackup
|
374
|
-
#
|
342
|
+
#
|
375
343
|
# ExportAllChannelBackups returns static channel backups for all existing
|
376
344
|
# channels known to lnd. A set of regular singular static channel backups for
|
377
345
|
# each channel are returned. Additionally, a multi-channel backup is returned
|
378
346
|
# as well, which contains a single encrypted blob containing the backups of
|
379
347
|
# each channel.
|
380
348
|
rpc :ExportAllChannelBackups, ChanBackupExportRequest, ChanBackupSnapshot
|
381
|
-
#
|
349
|
+
#
|
382
350
|
# VerifyChanBackup allows a caller to verify the integrity of a channel backup
|
383
351
|
# snapshot. This method will accept either a packed Single or a packed Multi.
|
384
352
|
# Specifying both will result in an error.
|
385
353
|
rpc :VerifyChanBackup, ChanBackupSnapshot, VerifyChanBackupResponse
|
386
|
-
#
|
354
|
+
# lncli: `restorechanbackup`
|
387
355
|
# RestoreChannelBackups accepts a set of singular channel backups, or a
|
388
356
|
# single encrypted multi-chan backup and attempts to recover any funds
|
389
357
|
# remaining within the channel. If we are able to unpack the backup, then the
|
390
358
|
# new channel will be shown under listchannels, as well as pending channels.
|
391
359
|
rpc :RestoreChannelBackups, RestoreChanBackupRequest, RestoreBackupResponse
|
392
|
-
#
|
360
|
+
#
|
393
361
|
# SubscribeChannelBackups allows a client to sub-subscribe to the most up to
|
394
362
|
# date information concerning the state of all channel backups. Each time a
|
395
363
|
# new channel is added, we return the new set of channels, along with a
|
@@ -398,7 +366,7 @@ module Lnrpc
|
|
398
366
|
# ups, but the updated set of encrypted multi-chan backups with the closed
|
399
367
|
# channel(s) removed.
|
400
368
|
rpc :SubscribeChannelBackups, ChannelBackupSubscription, stream(ChanBackupSnapshot)
|
401
|
-
#
|
369
|
+
# lncli: `bakemacaroon`
|
402
370
|
# BakeMacaroon allows the creation of a new macaroon with custom read and
|
403
371
|
# write permissions. No first-party caveats are added since this can be done
|
404
372
|
# offline.
|