Lightning Labs · Capability

Lightning Labs LND API — Lightning

Lightning Labs LND API — Lightning. 71 operations. Lead operation: lncli: `listaliases` ListAliases returns the set of all aliases that have ever existed with their confirmed SCID (if it exists) and/or the base SCID (in the case of zero conf).. Self-contained Naftiko capability covering one Lightning Labs business surface.

Run with Naftiko Lightning LabsLightning

What You Can Do

GET
Lightninglistaliases — lncli: `listaliases`
/v1/v1/aliases/list
GET
Lightningwalletbalance — lncli: `walletbalance`
/v1/v1/balance/blockchain
GET
Lightningchannelbalance — lncli: `channelbalance`
/v1/v1/balance/channels
GET
Lightninglistchannels — lncli: `listchannels`
/v1/v1/channels
POST
Lightningopenchannelsync — OpenChannelSync is a synchronous version of the OpenChannel RPC call. This
/v1/v1/channels
DELETE
Lightningabandonchannel — lncli: `abandonchannel`
/v1/v1/channels/abandon/{channel-point-funding-txid-str}/{channel-point-output-index}
POST
Lightningchannelacceptor — ChannelAcceptor dispatches a bi-directional streaming RPC in which
/v1/v1/channels/acceptor
GET
Lightningexportallchannelbackups — ExportAllChannelBackups returns static channel backups for all existing
/v1/v1/channels/backup
POST
Lightningrestorechannelbackups — lncli: `restorechanbackup`
/v1/v1/channels/backup/restore
GET
Lightningsubscribechannelbackups — SubscribeChannelBackups allows a client to sub-subscribe to the most up to
/v1/v1/channels/backup/subscribe
POST
Lightningverifychanbackup — lncli: `verifychanbackup`
/v1/v1/channels/backup/verify
GET
Lightningexportchannelbackup — lncli: `exportchanbackup`
/v1/v1/channels/backup/{chan-point-funding-txid-str}/{chan-point-output-index}
POST
Lightningbatchopenchannel — lncli: `batchopenchannel`
/v1/v1/channels/batch
GET
Lightningclosedchannels — lncli: `closedchannels`
/v1/v1/channels/closed
GET
Lightningpendingchannels — lncli: `pendingchannels`
/v1/v1/channels/pending
POST
Lightningopenchannel — lncli: `openchannel`
/v1/v1/channels/stream
GET
Lightningsubscribechannelevents — SubscribeChannelEvents creates a uni-directional stream from the server to
/v1/v1/channels/subscribe
POST
Lightningsendpayment — lncli: `sendpayment`
/v1/v1/channels/transaction-stream
POST
Lightningsendpaymentsync — Deprecated, use routerrpc.SendPaymentV2. SendPaymentSync is the synchronous
/v1/v1/channels/transactions
POST
Lightningsendtoroutesync — Deprecated, use routerrpc.SendToRouteV2. SendToRouteSync is a synchronous
/v1/v1/channels/transactions/route
DELETE
Lightningclosechannel — lncli: `closechannel`
/v1/v1/channels/{channel-point-funding-txid-str}/{channel-point-output-index}
POST
Lightningupdatechannelpolicy — lncli: `updatechanpolicy`
/v1/v1/chanpolicy
POST
Lightningsendcustommessage — lncli: `sendcustom`
/v1/v1/custommessage
GET
Lightningsubscribecustommessages — lncli: `subscribecustom`
/v1/v1/custommessage/subscribe
POST
Lightningdebuglevel — lncli: `debuglevel`
/v1/v1/debuglevel
GET
Lightningfeereport — lncli: `feereport`
/v1/v1/fees
POST
Lightningfundingstatestep — FundingStateStep is an advanced funding related call that allows the caller
/v1/v1/funding/step
GET
Lightninggetdebuginfo — lncli: 'getdebuginfo'
/v1/v1/getdebuginfo
GET
Lightninggetinfo — lncli: `getinfo`
/v1/v1/getinfo
GET
Lightninggetrecoveryinfo — * lncli: `getrecoveryinfo`
/v1/v1/getrecoveryinfo
GET
Lightningdescribegraph — lncli: `describegraph`
/v1/v1/graph
GET
Lightninggetchaninfo — lncli: `getchaninfo`
/v1/v1/graph/edge/{chan-id}
GET
Lightninggetnetworkinfo — lncli: `getnetworkinfo`
/v1/v1/graph/info
GET
Lightninggetnodeinfo — lncli: `getnodeinfo`
/v1/v1/graph/node/{pub-key}
GET
Lightninggetnodemetrics — lncli: `getnodemetrics`
/v1/v1/graph/nodemetrics
GET
Lightningqueryroutes — lncli: `queryroutes`
/v1/v1/graph/routes/{pub-key}/{amt}
POST
Lightningqueryroutes2 — lncli: `queryroutes`
/v1/v1/graph/routes/{pub-key}/{amt}
GET
Lightningsubscribechannelgraph — SubscribeChannelGraph launches a streaming RPC that allows the caller to
/v1/v1/graph/subscribe
GET
Lightninglookuphtlcresolution — LookupHtlcResolution retrieves a final htlc resolution from the database.
/v1/v1/htlc-resolution/{chan-id}/{htlc-index}
GET
Lightninglookupinvoice — lncli: `lookupinvoice`
/v1/v1/invoice/{r-hash-str}
GET
Lightninglistinvoices — lncli: `listinvoices`
/v1/v1/invoices
DELETE
Lightningdeletecanceledinvoice — lncli: `deletecanceledinvoice`
/v1/v1/invoices
POST
Lightningaddinvoice — lncli: `addinvoice`
/v1/v1/invoices
GET
Lightningsubscribeinvoices — SubscribeInvoices returns a uni-directional stream (server -> client) for
/v1/v1/invoices/subscribe
POST
Lightningbakemacaroon — lncli: `bakemacaroon`
/v1/v1/macaroon
POST
Lightningcheckmacaroonpermissions — CheckMacaroonPermissions checks whether the provided macaroon contains all
/v1/v1/macaroon/checkpermissions
GET
Lightninglistmacaroonids — lncli: `listmacaroonids`
/v1/v1/macaroon/ids
GET
Lightninglistpermissions — lncli: `listpermissions`
/v1/v1/macaroon/permissions
DELETE
Lightningdeletemacaroonid — lncli: `deletemacaroonid`
/v1/v1/macaroon/{root-key-id}
POST
Lightningregisterrpcmiddleware — RegisterRPCMiddleware adds a new gRPC middleware to the interceptor chain. A
/v1/v1/middleware
GET
Lightningnewaddress — lncli: `newaddress`
/v1/v1/newaddress
POST
Lightningsendonionmessage — lncli: `sendonion`
/v1/v1/onionmessage
GET
Lightningsubscribeonionmessages — lncli: `subscribeonion`
/v1/v1/onionmessage/subscribe
DELETE
Lightningdeletepayment — lncli: `deletepayments`
/v1/v1/payment
GET
Lightninglistpayments — lncli: `listpayments`
/v1/v1/payments
DELETE
Lightningdeleteallpayments — lncli: `deletepayments --all`
/v1/v1/payments
GET
Lightningdecodepayreq — lncli: `decodepayreq`
/v1/v1/payreq/{pay-req}
GET
Lightninglistpeers — lncli: `listpeers`
/v1/v1/peers
POST
Lightningconnectpeer — lncli: `connect`
/v1/v1/peers
GET
Lightningsubscribepeerevents — SubscribePeerEvents creates a uni-directional stream from the server to
/v1/v1/peers/subscribe
DELETE
Lightningdisconnectpeer — lncli: `disconnect`
/v1/v1/peers/{pub-key}
POST
Lightningsignmessage — lncli: `signmessage`
/v1/v1/signmessage
POST
Lightningstopdaemon — lncli: `stop`
/v1/v1/stop
POST
Lightningforwardinghistory — lncli: `fwdinghistory`
/v1/v1/switch
GET
Lightninggettransactions — lncli: `listchaintxns`
/v1/v1/transactions
POST
Lightningsendcoins — lncli: `sendcoins`
/v1/v1/transactions
GET
Lightningestimatefee — lncli: `estimatefee`
/v1/v1/transactions/fee
POST
Lightningsendmany — lncli: `sendmany`
/v1/v1/transactions/many
GET
Lightningsubscribetransactions — SubscribeTransactions creates a uni-directional stream from the server to
/v1/v1/transactions/subscribe
GET
Lightninglistunspent — lncli: `listunspent`
/v1/v1/utxos
POST
Lightningverifymessage — lncli: `verifymessage`
/v1/v1/verifymessage

MCP Tools

lncli-listaliases

lncli: `listaliases`

read-only idempotent
lncli-walletbalance

lncli: `walletbalance`

read-only idempotent
lncli-channelbalance

lncli: `channelbalance`

read-only idempotent
lncli-listchannels

lncli: `listchannels`

read-only idempotent
openchannelsync-is-synchronous-version-openchannel

OpenChannelSync is a synchronous version of the OpenChannel RPC call. This

lncli-abandonchannel

lncli: `abandonchannel`

idempotent
channelacceptor-dispatches-bi-directional-streaming

ChannelAcceptor dispatches a bi-directional streaming RPC in which

exportallchannelbackups-returns-static-channel-backups

ExportAllChannelBackups returns static channel backups for all existing

read-only idempotent
lncli-restorechanbackup

lncli: `restorechanbackup`

subscribechannelbackups-allows-client-sub-subscribe

SubscribeChannelBackups allows a client to sub-subscribe to the most up to

read-only idempotent
lncli-verifychanbackup

lncli: `verifychanbackup`

lncli-exportchanbackup

lncli: `exportchanbackup`

read-only idempotent
lncli-batchopenchannel

lncli: `batchopenchannel`

lncli-closedchannels

lncli: `closedchannels`

read-only idempotent
lncli-pendingchannels

lncli: `pendingchannels`

read-only idempotent
lncli-openchannel

lncli: `openchannel`

subscribechannelevents-creates-uni-directional-stream

SubscribeChannelEvents creates a uni-directional stream from the server to

read-only idempotent
lncli-sendpayment

lncli: `sendpayment`

deprecated-use-routerrpc-sendpaymentv2-sendpaymentsync-is

Deprecated, use routerrpc.SendPaymentV2. SendPaymentSync is the synchronous

deprecated-use-routerrpc-sendtoroutev2-sendtoroutesync-is

Deprecated, use routerrpc.SendToRouteV2. SendToRouteSync is a synchronous

lncli-closechannel

lncli: `closechannel`

idempotent
lncli-updatechanpolicy

lncli: `updatechanpolicy`

lncli-sendcustom

lncli: `sendcustom`

lncli-subscribecustom

lncli: `subscribecustom`

read-only idempotent
lncli-debuglevel

lncli: `debuglevel`

lncli-feereport

lncli: `feereport`

read-only idempotent
fundingstatestep-is-advanced-funding-related

FundingStateStep is an advanced funding related call that allows the caller

lncli-getdebuginfo

lncli: 'getdebuginfo'

read-only idempotent
lncli-getinfo

lncli: `getinfo`

read-only idempotent
lncli-getrecoveryinfo

* lncli: `getrecoveryinfo`

read-only idempotent
lncli-describegraph

lncli: `describegraph`

read-only idempotent
lncli-getchaninfo

lncli: `getchaninfo`

read-only idempotent
lncli-getnetworkinfo

lncli: `getnetworkinfo`

read-only idempotent
lncli-getnodeinfo

lncli: `getnodeinfo`

read-only idempotent
lncli-getnodemetrics

lncli: `getnodemetrics`

read-only idempotent
lncli-queryroutes

lncli: `queryroutes`

read-only idempotent
lncli-queryroutes-2

lncli: `queryroutes`

read-only
subscribechannelgraph-launches-streaming-rpc-that

SubscribeChannelGraph launches a streaming RPC that allows the caller to

read-only idempotent
lookuphtlcresolution-retrieves-final-htlc-resolution

LookupHtlcResolution retrieves a final htlc resolution from the database.

read-only idempotent
lncli-lookupinvoice

lncli: `lookupinvoice`

read-only idempotent
lncli-listinvoices

lncli: `listinvoices`

read-only idempotent
lncli-deletecanceledinvoice

lncli: `deletecanceledinvoice`

idempotent
lncli-addinvoice

lncli: `addinvoice`

subscribeinvoices-returns-uni-directional-stream

SubscribeInvoices returns a uni-directional stream (server -> client) for

read-only idempotent
lncli-bakemacaroon

lncli: `bakemacaroon`

checkmacaroonpermissions-checks-whether-provided-macaroon

CheckMacaroonPermissions checks whether the provided macaroon contains all

lncli-listmacaroonids

lncli: `listmacaroonids`

read-only idempotent
lncli-listpermissions

lncli: `listpermissions`

read-only idempotent
lncli-deletemacaroonid

lncli: `deletemacaroonid`

idempotent
registerrpcmiddleware-adds-new-grpc-middleware

RegisterRPCMiddleware adds a new gRPC middleware to the interceptor chain. A

lncli-newaddress

lncli: `newaddress`

read-only idempotent
lncli-sendonion

lncli: `sendonion`

lncli-subscribeonion

lncli: `subscribeonion`

read-only idempotent
lncli-deletepayments

lncli: `deletepayments`

idempotent
lncli-listpayments

lncli: `listpayments`

read-only idempotent
lncli-deletepayments-all

lncli: `deletepayments --all`

idempotent
lncli-decodepayreq

lncli: `decodepayreq`

read-only idempotent
lncli-listpeers

lncli: `listpeers`

read-only idempotent
lncli-connect

lncli: `connect`

subscribepeerevents-creates-uni-directional-stream

SubscribePeerEvents creates a uni-directional stream from the server to

read-only idempotent
lncli-disconnect

lncli: `disconnect`

idempotent
lncli-signmessage

lncli: `signmessage`

lncli-stop

lncli: `stop`

lncli-fwdinghistory

lncli: `fwdinghistory`

lncli-listchaintxns

lncli: `listchaintxns`

read-only idempotent
lncli-sendcoins

lncli: `sendcoins`

lncli-estimatefee

lncli: `estimatefee`

read-only idempotent
lncli-sendmany

lncli: `sendmany`

subscribetransactions-creates-uni-directional-stream

SubscribeTransactions creates a uni-directional stream from the server to

read-only idempotent
lncli-listunspent

lncli: `listunspent`

read-only idempotent
lncli-verifymessage

lncli: `verifymessage`

Capability Spec

lightning-labs-lightning.yaml Raw ↑
naftiko: 1.0.0-alpha2
info:
  label: Lightning Labs LND API — Lightning
  description: 'Lightning Labs LND API — Lightning. 71 operations. Lead operation: lncli: `listaliases`

    ListAliases returns the set of all aliases that have ever existed with

    their confirmed SCID (if it exists) and/or the base SCID (in the case of

    zero conf).. Self-contained Naftiko capability covering one Lightning Labs business surface.'
  tags:
  - Lightning Labs
  - Lightning
  created: '2026-05-19'
  modified: '2026-05-19'
binds:
- namespace: env
  keys:
    LIGHTNING_LABS_API_KEY: LIGHTNING_LABS_API_KEY
capability:
  consumes:
  - type: http
    namespace: lightning-labs-lightning
    baseUri: ''
    description: Lightning Labs LND API — Lightning business capability. Self-contained, no shared references.
    resources:
    - name: v1-aliases-list
      path: /v1/aliases/list
      operations:
      - name: lightninglistaliases
        method: GET
        description: 'lncli: `listaliases`'
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
    - name: v1-balance-blockchain
      path: /v1/balance/blockchain
      operations:
      - name: lightningwalletbalance
        method: GET
        description: 'lncli: `walletbalance`'
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: account
          in: query
          type: string
          description: The wallet account the balance is shown for.
        - name: min_confs
          in: query
          type: integer
          description: The minimum number of confirmations each one of your outputs used for the
    - name: v1-balance-channels
      path: /v1/balance/channels
      operations:
      - name: lightningchannelbalance
        method: GET
        description: 'lncli: `channelbalance`'
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
    - name: v1-channels
      path: /v1/channels
      operations:
      - name: lightninglistchannels
        method: GET
        description: 'lncli: `listchannels`'
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: active_only
          in: query
          type: boolean
        - name: inactive_only
          in: query
          type: boolean
        - name: public_only
          in: query
          type: boolean
        - name: private_only
          in: query
          type: boolean
        - name: peer
          in: query
          type: string
          description: Filters the response for channels with a target peer's pubkey. If peer is
        - name: peer_alias_lookup
          in: query
          type: boolean
          description: Informs the server if the peer alias lookup per channel should be
      - name: lightningopenchannelsync
        method: POST
        description: OpenChannelSync is a synchronous version of the OpenChannel RPC call. This
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: body
          in: body
          type: string
          required: true
    - name: v1-channels-abandon-channel_point.funding_txid_str-channel_point.output_index
      path: /v1/channels/abandon/{channel_point.funding_txid_str}/{channel_point.output_index}
      operations:
      - name: lightningabandonchannel
        method: DELETE
        description: 'lncli: `abandonchannel`'
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: channel_point.funding_txid_str
          in: path
          type: string
          description: Hex-encoded string representing the byte-reversed hash of the funding
          required: true
        - name: channel_point.output_index
          in: path
          type: integer
          description: The index of the output of the funding transaction
          required: true
        - name: channel_point.funding_txid_bytes
          in: query
          type: string
          description: Txid of the funding transaction. When using REST, this field must be
        - name: pending_funding_shim_only
          in: query
          type: boolean
        - name: i_know_what_i_am_doing
          in: query
          type: boolean
          description: Override the requirement for being in dev mode by setting this to true and
    - name: v1-channels-acceptor
      path: /v1/channels/acceptor
      operations:
      - name: lightningchannelacceptor
        method: POST
        description: ChannelAcceptor dispatches a bi-directional streaming RPC in which
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: body
          in: body
          type: string
          description: (streaming inputs)
          required: true
    - name: v1-channels-backup
      path: /v1/channels/backup
      operations:
      - name: lightningexportallchannelbackups
        method: GET
        description: ExportAllChannelBackups returns static channel backups for all existing
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
    - name: v1-channels-backup-restore
      path: /v1/channels/backup/restore
      operations:
      - name: lightningrestorechannelbackups
        method: POST
        description: 'lncli: `restorechanbackup`'
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: body
          in: body
          type: string
          required: true
    - name: v1-channels-backup-subscribe
      path: /v1/channels/backup/subscribe
      operations:
      - name: lightningsubscribechannelbackups
        method: GET
        description: SubscribeChannelBackups allows a client to sub-subscribe to the most up to
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
    - name: v1-channels-backup-verify
      path: /v1/channels/backup/verify
      operations:
      - name: lightningverifychanbackup
        method: POST
        description: 'lncli: `verifychanbackup`'
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: body
          in: body
          type: string
          required: true
    - name: v1-channels-backup-chan_point.funding_txid_str-chan_point.output_index
      path: /v1/channels/backup/{chan_point.funding_txid_str}/{chan_point.output_index}
      operations:
      - name: lightningexportchannelbackup
        method: GET
        description: 'lncli: `exportchanbackup`'
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: chan_point.funding_txid_str
          in: path
          type: string
          description: Hex-encoded string representing the byte-reversed hash of the funding
          required: true
        - name: chan_point.output_index
          in: path
          type: integer
          description: The index of the output of the funding transaction
          required: true
        - name: chan_point.funding_txid_bytes
          in: query
          type: string
          description: Txid of the funding transaction. When using REST, this field must be
    - name: v1-channels-batch
      path: /v1/channels/batch
      operations:
      - name: lightningbatchopenchannel
        method: POST
        description: 'lncli: `batchopenchannel`'
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: body
          in: body
          type: string
          required: true
    - name: v1-channels-closed
      path: /v1/channels/closed
      operations:
      - name: lightningclosedchannels
        method: GET
        description: 'lncli: `closedchannels`'
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: cooperative
          in: query
          type: boolean
        - name: local_force
          in: query
          type: boolean
        - name: remote_force
          in: query
          type: boolean
        - name: breach
          in: query
          type: boolean
        - name: funding_canceled
          in: query
          type: boolean
        - name: abandoned
          in: query
          type: boolean
    - name: v1-channels-pending
      path: /v1/channels/pending
      operations:
      - name: lightningpendingchannels
        method: GET
        description: 'lncli: `pendingchannels`'
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: include_raw_tx
          in: query
          type: boolean
          description: Indicates whether to include the raw transaction hex for
    - name: v1-channels-stream
      path: /v1/channels/stream
      operations:
      - name: lightningopenchannel
        method: POST
        description: 'lncli: `openchannel`'
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: body
          in: body
          type: string
          required: true
    - name: v1-channels-subscribe
      path: /v1/channels/subscribe
      operations:
      - name: lightningsubscribechannelevents
        method: GET
        description: SubscribeChannelEvents creates a uni-directional stream from the server to
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
    - name: v1-channels-transaction-stream
      path: /v1/channels/transaction-stream
      operations:
      - name: lightningsendpayment
        method: POST
        description: 'lncli: `sendpayment`'
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: body
          in: body
          type: string
          description: (streaming inputs)
          required: true
    - name: v1-channels-transactions
      path: /v1/channels/transactions
      operations:
      - name: lightningsendpaymentsync
        method: POST
        description: Deprecated, use routerrpc.SendPaymentV2. SendPaymentSync is the synchronous
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: body
          in: body
          type: string
          required: true
    - name: v1-channels-transactions-route
      path: /v1/channels/transactions/route
      operations:
      - name: lightningsendtoroutesync
        method: POST
        description: Deprecated, use routerrpc.SendToRouteV2. SendToRouteSync is a synchronous
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: body
          in: body
          type: string
          required: true
    - name: v1-channels-channel_point.funding_txid_str-channel_point.output_index
      path: /v1/channels/{channel_point.funding_txid_str}/{channel_point.output_index}
      operations:
      - name: lightningclosechannel
        method: DELETE
        description: 'lncli: `closechannel`'
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: channel_point.funding_txid_str
          in: path
          type: string
          description: Hex-encoded string representing the byte-reversed hash of the funding
          required: true
        - name: channel_point.output_index
          in: path
          type: integer
          description: The index of the output of the funding transaction
          required: true
        - name: channel_point.funding_txid_bytes
          in: query
          type: string
          description: Txid of the funding transaction. When using REST, this field must be
        - name: force
          in: query
          type: boolean
          description: If true, then the channel will be closed forcibly. This means the
        - name: target_conf
          in: query
          type: integer
          description: The target number of blocks that the closure transaction should be
        - name: sat_per_byte
          in: query
          type: string
          description: Deprecated, use sat_per_vbyte.
        - name: delivery_address
          in: query
          type: string
          description: An optional address to send funds to in the case of a cooperative close.
        - name: sat_per_vbyte
          in: query
          type: string
          description: A manual fee rate set in sat/vbyte that should be used when crafting the
        - name: max_fee_per_vbyte
          in: query
          type: string
          description: The maximum fee rate the closer is willing to pay.
        - name: no_wait
          in: query
          type: boolean
          description: If true, then the rpc call will not block while it awaits a closing txid
    - name: v1-chanpolicy
      path: /v1/chanpolicy
      operations:
      - name: lightningupdatechannelpolicy
        method: POST
        description: 'lncli: `updatechanpolicy`'
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: body
          in: body
          type: string
          required: true
    - name: v1-custommessage
      path: /v1/custommessage
      operations:
      - name: lightningsendcustommessage
        method: POST
        description: 'lncli: `sendcustom`'
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: body
          in: body
          type: string
          required: true
    - name: v1-custommessage-subscribe
      path: /v1/custommessage/subscribe
      operations:
      - name: lightningsubscribecustommessages
        method: GET
        description: 'lncli: `subscribecustom`'
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
    - name: v1-debuglevel
      path: /v1/debuglevel
      operations:
      - name: lightningdebuglevel
        method: POST
        description: 'lncli: `debuglevel`'
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: body
          in: body
          type: string
          required: true
    - name: v1-fees
      path: /v1/fees
      operations:
      - name: lightningfeereport
        method: GET
        description: 'lncli: `feereport`'
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
    - name: v1-funding-step
      path: /v1/funding/step
      operations:
      - name: lightningfundingstatestep
        method: POST
        description: FundingStateStep is an advanced funding related call that allows the caller
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: body
          in: body
          type: string
          required: true
    - name: v1-getdebuginfo
      path: /v1/getdebuginfo
      operations:
      - name: lightninggetdebuginfo
        method: GET
        description: 'lncli: ''getdebuginfo'''
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: include_log
          in: query
          type: boolean
          description: If set to true, the log file content will be included in the response.
    - name: v1-getinfo
      path: /v1/getinfo
      operations:
      - name: lightninggetinfo
        method: GET
        description: 'lncli: `getinfo`'
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
    - name: v1-getrecoveryinfo
      path: /v1/getrecoveryinfo
      operations:
      - name: lightninggetrecoveryinfo
        method: GET
        description: '* lncli: `getrecoveryinfo`'
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
    - name: v1-graph
      path: /v1/graph
      operations:
      - name: lightningdescribegraph
        method: GET
        description: 'lncli: `describegraph`'
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: include_unannounced
          in: query
          type: boolean
          description: Whether unannounced channels are included in the response or not. If set,
        - name: include_auth_proof
          in: query
          type: boolean
          description: If true, will include announcements' signatures into ChannelEdge.
    - name: v1-graph-edge-chan_id
      path: /v1/graph/edge/{chan_id}
      operations:
      - name: lightninggetchaninfo
        method: GET
        description: 'lncli: `getchaninfo`'
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: chan_id
          in: path
          type: string
          description: The unique channel ID for the channel. The first 3 bytes are the block
          required: true
        - name: chan_point
          in: query
          type: string
          description: The channel point of the channel in format funding_txid:output_index. If
        - name: include_auth_proof
          in: query
          type: boolean
          description: If true, will include announcements' signatures into ChannelEdge.
    - name: v1-graph-info
      path: /v1/graph/info
      operations:
      - name: lightninggetnetworkinfo
        method: GET
        description: 'lncli: `getnetworkinfo`'
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
    - name: v1-graph-node-pub_key
      path: /v1/graph/node/{pub_key}
      operations:
      - name: lightninggetnodeinfo
        method: GET
        description: 'lncli: `getnodeinfo`'
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: pub_key
          in: path
          type: string
          description: The 33-byte hex-encoded compressed public of the target node
          required: true
        - name: include_channels
          in: query
          type: boolean
          description: If true, will include all known channels associated with the node.
        - name: include_auth_proof
          in: query
          type: boolean
          description: If true, will include announcements' signatures into ChannelEdge.
    - name: v1-graph-nodemetrics
      path: /v1/graph/nodemetrics
      operations:
      - name: lightninggetnodemetrics
        method: GET
        description: 'lncli: `getnodemetrics`'
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: types
          in: query
          type: array
          description: The requested node metrics.
    - name: v1-graph-routes-pub_key-amt
      path: /v1/graph/routes/{pub_key}/{amt}
      operations:
      - name: lightningqueryroutes
        method: GET
        description: 'lncli: `queryroutes`'
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: pub_key
          in: path
          type: string
          description: The 33-byte hex-encoded public key for the payment destination
          required: true
        - name: amt
          in: path
          type: string
          description: The amount to send expressed in satoshis.
          required: true
        - name: amt_msat
          in: query
          type: string
          description: The amount to send expressed in millisatoshis.
        - name: final_cltv_delta
          in: query
          type: integer
          description: An optional CLTV delta from the current height that should be used for the
        - name: fee_limit.fixed
          in: query
          type: string
          description: The fee limit expressed as a fixed amount of satoshis.
        - name: fee_limit.fixed_msat
          in: query
          type: string
          description: The fee limit expressed as a fixed amount of millisatoshis.
        - name: fee_limit.percent
          in: query
          type: string
          description: The fee limit expressed as a percentage of the payment amount.
        - name: ignored_nodes
          in: query
          type: array
          description: A list of nodes to ignore during path finding. When using REST, these fields
        - name: source_pub_key
          in: query
          type: string
          description: The source node where the request route should originated from. If empty,
        - name: use_mission_control
          in: query
          type: boolean
          description: If set to true, edge probabilities from mission control will be used to get
        - name: cltv_limit
          in: query
          type: integer
          description: An optional maximum total time lock for the route. If the source is empty or
        - name: dest_custom_records[string]
          in: query
          type: string
          description: This is a request variable of the map type. The query format is "map_name[key]=value", e.g. If the
            map name is Age, the key type is string, and the value type i
        - name: outgoing_chan_id
          in: query
          type: string
          description: Deprecated, use outgoing_chan_ids. The channel id of the channel that must
        - name: last_hop_pubkey
          in: query
          type: string
          description: The pubkey of the last hop of the route. If empty, any hop may be used.
        - name: dest_features
          in: query
          type: array
          description: Features assumed to be supported by the final node. All transitive feature
        - name: time_pref
          in: query
          type: number
          description: The time preference for this payment. Set to -1 to optimize for fees
        - name: outgoing_chan_ids
          in: query
          type: array
          description: The channel ids of the channels allowed for the first hop. If empty, any
      - name: lightningqueryroutes2
        method: POST
        description: 'lncli: `queryroutes`'
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: pub_key
          in: path
          type: string
          description: The 33-byte hex-encoded public key for the payment destination
          required: true
        - name: amt
          in: path
          type: string
          description: The amount to send expressed in satoshis.
          required: true
        - name: body
          in: body
          type: object
          required: true
    - name: v1-graph-subscribe
      path: /v1/graph/subscribe
      operations:
      - name: lightningsubscribechannelgraph
        method: GET
        description: SubscribeChannelGraph launches a streaming RPC that allows the caller to
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
    - name: v1-htlc-resolution-chan_id-htlc_index
      path: /v1/htlc-resolution/{chan_id}/{htlc_index}
      operations:
      - name: lightninglookuphtlcresolution
        method: GET
        description: LookupHtlcResolution retrieves a final htlc resolution from the database.
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: chan_id
          in: path
          type: string
          required: true
        - name: htlc_index
          in: path
          type: string
          required: true
    - name: v1-invoice-r_hash_str
      path: /v1/invoice/{r_hash_str}
      operations:
      - name: lightninglookupinvoice
        method: GET
        description: 'lncli: `lookupinvoice`'
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: r_hash_str
          in: path
          type: string
          description: The hex-encoded payment hash of the invoice to be looked up. The passed
          required: true
        - name: r_hash
          in: query
          type: string
          description: The payment hash of the invoice to be looked up. When using REST, this field
    - name: v1-invoices
      path: /v1/invoices
      operations:
      - name: lightninglistinvoices
        method: GET
        description: 'lncli: `listinvoices`'
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: pending_only
          in: query
          type: boolean
          description: If set, only invoices that are not settled and not canceled will be returned
        - name: index_offset
          in: query
          type: string
          description: The index of an invoice that will be used as either the start or end of a
        - name: num_max_invoices
          in: query
          type: string
          description: The max number of invoices to return in the response to this query.
        - name: reversed
          in: query
          type: boolean
          description: If set, the invoices returned will result from seeking backwards from the
        - name: creation_date_start
          in: query
          type: string
          description: If set, returns all invoices with a creation date greater than or equal
        - name: creation_date_end
          in: query
          type: string
          description: If set, returns all invoices with a creation date less than or equal to
      - name: lightningdeletecanceledinvoice
        method: DELETE
        description: 'lncli: `deletecanceledinvoice`'
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: invoice_hash
          in: query
          type: string
          description: Invoice payment hash to delete.
      - name: lightningaddinvoice
        method: POST
        description: 'lncli: `addinvoice`'
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: body
          in: body
          type: string
          required: true
    - name: v1-invoices-subscribe
      path: /v1/invoices/subscribe
      operations:
      - name: lightningsubscribeinvoices
        method: GET
        description: SubscribeInvoices returns a uni-directional stream (server -> client) for
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: add_index
          in: query
          type: string
          description: If specified (non-zero), then we'll first start by sending out
        - name: settle_index
          in: query
          type: string
          description: If specified (non-zero), then we'll first start by sending out
    - name: v1-macaroon
      path: /v1/macaroon
      operations:
      - name: lightningbakemacaroon
        method: POST
        description: 'lncli: `bakemacaroon`'
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: body
          in: body
          type: string
          required: true
    - name: v1-macaroon-checkpermissions
      path: /v1/macaroon/checkpermissions
      operations:
      - name: lightningcheckmacaroonpermissions
        method: POST
        description: CheckMacaroonPermissions checks whether the provided macaroon contains all
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: body
          in: body
          type: string
          required: true
    - name: v1-macaroon-ids
      path: /v1/macaroon/ids
      operations:
      - name: lightninglistmacaroonids
        method: GET
        description: 'lncli: `listmacaroonids`'
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
    - name: v1-macaroon-permissions
      path: /v1/macaroon/permissions
      operations:
      - name: lightninglistpermissions
        method: GET
        description: 'lncli: `listpermissions`'
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
    - name: v1-macaroon-root_key_id
      path: /v1/macaroon/{root_key_id}
      operations:
      - name: lightningdeletemacaroonid
        method: DELETE
        description: 'lncli: `deletemacaroonid`'
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: root_key_id
          in: path
          type: string
          description: The root key ID to be removed.
          required: true
    - name: v1-middleware
      path: /v1/middleware
      operations:
      - name: lightningregisterrpcmiddleware
        method: POST
        description: RegisterRPCMiddleware adds a new gRPC middleware to the interceptor chain. A
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: ref_msg_id
          in: query
          type: string
          description: The request message ID this response refers to. Must always be set when
        - name: register.middleware_name
          in: query
          type: string
          description: The name of the middleware to register. The name should be as informative
        - name: register.custom_macaroon_caveat_name
          in: query
          type: string
          description: The name of the custom macaroon caveat that this middleware is responsible
        - name: register.read_only_mode
          in: query
          type: boolean
          description: Instead of defining a custom macaroon caveat name a middleware can register
        - name: feedback.error
          in: query
          type: string
          description: The error to return to the user. If this is non-empty, the incoming gRPC
        - name: feedback.replace_response
          in: query
          type: boolean
          description: A boolean indicating that the gRPC message should be replaced/overwritten.
        - name: feedback.replacement_serialized
          in: query
          type: string
          description: If the replace_response field is set to true, this field must contain the
    - name: v1-newaddress
      path: /v1/newaddress
      operations:
      - name: lightningnewaddress
        method: GET
        description: 'lncli: `newaddress`'
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: 

# --- truncated at 32 KB (106 KB total) ---
# Full source: https://raw.githubusercontent.com/api-evangelist/lightning-labs/refs/heads/main/capabilities/lightning-labs-lightning.yaml