lightning-setconfig

lightning-setconfig -- Dynamically change some config options

SYNOPSIS

setconfig config [val]

DESCRIPTION

Command added in v23.08.

The setconfig RPC command allows you set the (dynamic) configuration option named by config: options which take a value (as separate from simple flag options) also need a val parameter.

This new value will also be written at the end of the config file, for persistence across restarts (and any old value commented out).

You can see what options are dynamically adjustable using lightning- listconfigs(7). Note that you can also adjust existing options for stopped plugins; they will have an effect when the plugin is restarted.

  • config (string): Name of the config variable which should be set to the value of the variable.
  • val (one of, optional): Value of the config variable to be set or updated.:
    • (string)
    • (integer)
    • (boolean)

RETURN VALUE

On success, an object containing config is returned. It is an object containing:

  • config (string): Name of the config variable which was set.
  • source (string): Source of configuration setting (file:linenum).
  • dynamic (boolean) (always true): Whether this option is settable via setconfig.
  • plugin (string, optional): The plugin this configuration setting is for.
  • set (boolean, optional): For simple flag options.
  • value_str (string, optional): For string options.
  • value_msat (msat, optional): For msat options.
  • value_int (integer, optional): For integer options.
  • value_bool (boolean, optional): For boolean options.

ERRORS

The following error codes may occur:

  • -32602: JSONRPC2_INVALID_PARAMS, i.e. the parameter is not dynamic, or the val was invalid.

AUTHOR

Rusty Russell <[email protected]> is mainly responsible for this feature.

SEE ALSO

lightningd-config(5), lightning-listconfigs(7)

RESOURCES

Main web site: https://github.com/ElementsProject/lightning

EXAMPLES

Example 1:

Request:

lightning-cli setconfig "autoclean-expiredinvoices-age" "300"
{
  "id": "example:setconfig#1",
  "method": "setconfig",
  "params": [
    "autoclean-expiredinvoices-age",
    300
  ]
}

Response:

{
  "config": {
    "config": "autoclean-expiredinvoices-age",
    "value_int": 300,
    "source": "/tmp/.lightning/regtest/config:2",
    "plugin": "/root/lightning/plugins/autoclean",
    "dynamic": true
  }
}

Example 2:

Request:

lightning-cli setconfig -k "config"="min-capacity-sat" "val"=500000
{
  "id": "example:setconfig#2",
  "method": "setconfig",
  "params": {
    "config": "min-capacity-sat",
    "val": 500000
  }
}

Response:

{
  "config": {
    "config": "min-capacity-sat",
    "value_int": 500000,
    "source": "/tmp/.lightning/regtest/config:4",
    "dynamic": true
  }
}

Core Lightning (previously c-lightning) is a lightweight, highly customizable and standard compliant implementation of the Lightning Network protocol.

© 2023 Core Lightning
All rights reserved.

Discussion Forum

The official Core Lightning forum is hosted at discuss.corelightning.org

BuildonL2 Community

The official BuildOnL2 community lives at community.corelightning.org. Join us and build the future of bitcoin on lightning.

Mailing List

For general discussions about CLN implementation, use [email protected]. For the Lightning Network, use [email protected]

Telegram

Community-driven telegram group where most of the node operators hang out. Go to https://t.me/lightningd to join.

Discord

Community-driven discord server where the devs flock together. Go to https://discord.gg/w27fMFESMN to join.

Internet Relay Chat

Don't hesitate to reach out to us on IRC at #lightning-dev @ libera.chat, #c-lightning @ libera.chat.