Skip site navigation (1)Skip section navigation (2)

FreeBSD Manual Pages

  
 
  

home | help
LIGHTNING-GETROUTES(7)					LIGHTNING-GETROUTES(7)

NAME
       lightning-getroutes -- Command for routing a payment

SYNOPSIS
       getroutes  source destination amount_msat layers	maxfee_msat final_cltv
       [maxdelay]

DESCRIPTION
       Command added in	v24.08.

       The getroutes RPC command attempts to find the best set	of  paths  for
       the  payment from source	to destination of amount_msat, using the given
       layers on top of	the gossip information.	 The result is constrained  by
       maxfee, and will	arrive at the destination with final_cltv.

       NOTE:  The  returned  paths are a different format then getroute, being
       more appropriate	for creating intermediary onion	layers.

       Layers are generally maintained by plugins, either to  contain  persis-
       tent  information  about	 capacities  which have	been discovered, or to
       contain transient information for  this	particular  payment  (such  as
       blinded paths or	routehints).

       There  are three	automatic layers: auto.localchans contains information
       on local	channels from this node	(including non-public ones), and their
       exact current spendable capacities. auto.sourcefree overrides all chan-
       nels (including those from previous layers) leading out of  the	source
       to be zero fee and zero delay.  These are both useful in	the case where
       the  source  is	the  current  node.   And  auto.no_mpp_support	forces
       getroutes to return a single flow, though only basic  checks  are  done
       that the	result is useful.

         source (pubkey): Node	pubkey to start	the paths
         destination (pubkey):	Node pubkey to end the paths
         amount_msat  (msat):	Amount to send.	It can be a whole number, or a
	  whole	number ending in msat or sat, or a number with	three  decimal
	  places ending	in sat,	or a number with 1 to 11 decimal places	ending
	  in btc.
         layers (array	of strings):

	    (string,  optional):  Layer to apply to the gossip	map before at-
	     tempting to find routes.
         maxfee_msat (msat): Maximum fee to spend: we will never return a set
	  of routes more expensive than	this. It can be	a whole	number,	 or  a
	  whole	 number	 ending	in msat	or sat,	or a number with three decimal
	  places ending	in sat,	or a number with 1 to 11 decimal places	ending
	  in btc.
         final_cltv (u32): Number of blocks for the final node.  We  need  to
	  know	this because no	HTLC is	allowed	to have	a CLTV delay more than
	  2016 blocks.
         maxdelay (u32, optional): Maximum number of blocks of	delay for  the
	  route.  Cannot  be  bigger  than  2016.  The default is 2016.	(added
	  v25.02)

RETURN VALUE
       On success, an object is	returned, containing:

         probability_ppm (u64): The estimated probability  of	success	 using
	  these	routes,	in millionths.
         routes (array	of objects):

	    probability_ppm (u64): The	estimated probability of success using
	     this route, in millionths.
	    amount_msat  (msat):  The	amount delivered to the	destination by
	     this path.
	    final_cltv	(u32): Number of blocks	required  by  the  final  node
	     (set by caller)
	    path  (array of objects): The hops	to get from source to destina-
	     tion.:
	    short_channel_id_dir (short_channel_id_dir): The channel and  di-
	     rection joining these nodes.
	    amount_msat (msat): The amount to send into this hop.
	    next_node_id (pubkey): The	peer id	at the end of this hop.
	    delay  (u32): The total CLTV expected by the node at the start of
	     this hop.

AUTHOR
       <<lagrang3@protonmail.com>> wrote the minimum-cost-flow	solver,	 Rusty
       Russell <<rusty@rustcorp.com.au>> wrote the API and this	documentation.

SEE ALSO
       lightning-askrene-reserve(7),   lightning-askrene-unreserve(7),	light-
       ning-askrene-disable-node(7),	  lightning-askrene-create-channel(7),
       lightning-askrene-inform-channel(7),	  lightning-askrene-report(7),
       lightning-askrene-age(7)

RESOURCES
       Main web	site: <https://github.com/ElementsProject/lightning>

EXAMPLES
       Example 1:

       Request:

       $ lightning-cli getroutes -k "source"="nodeid010101010101010101010101010101010101010101010101010101010101" "destination"="nodeid030303030303030303030303030303030303030303030303030303030303" "amount_msat"=1250000 "layers"='[]' "maxfee_msat"=125000 "final_cltv"=0

       {
	 "id": "example:getroutes#1",
	 "method": "getroutes",
	 "params": {
	   "source": "nodeid010101010101010101010101010101010101010101010101010101010101",
	   "destination": "nodeid030303030303030303030303030303030303030303030303030303030303",
	   "amount_msat": 1250000,
	   "layers": [],
	   "maxfee_msat": 125000,
	   "final_cltv": 0
	 }
       }

       Response:

       {
	 "probability_ppm": 997501,
	 "routes": [
	   {
	     "probability_ppm":	997501,
	     "amount_msat": 1250000,
	     "final_cltv": 0,
	     "path": [
	       {
		 "short_channel_id_dir": "109x1x1/1",
		 "next_node_id": "nodeid020202020202020202020202020202020202020202020202020202020202",
		 "amount_msat":	1250026,
		 "delay": 12
	       },
	       {
		 "short_channel_id_dir": "123x1x1/0",
		 "next_node_id": "nodeid030303030303030303030303030303030303030303030303030303030303",
		 "amount_msat":	1250013,
		 "delay": 6
	       }
	     ]
	   }
	 ]
       }

Core Lightning v25.02					LIGHTNING-GETROUTES(7)

Want to link to this manual page? Use this URL:
<https://man.freebsd.org/cgi/man.cgi?query=lightning-getroutes&sektion=7&manpath=FreeBSD+Ports+14.3.quarterly>

home | help