listdatastore

listdatastore -- Command for listing (plugin) data

SYNOPSIS

listdatastore [key]

DESCRIPTION

The listdatastore RPC command allows plugins to fetch data which was stored in the Core Lightning database.

  • key (one of, optional):
    • (array of strings): All immediate children of the key (or root children) are returned.
      Using the first element of the key as the plugin name (e.g. [ 'summary' ]) is recommended.
      An array of values to form a hierarchy (though a single value is treated as a one-element array).
      • (string, optional)
    • (string)

RETURN VALUE

On success, an object containing datastore is returned. It is an array of objects, where each object contains:

  • key (array of strings):
    • (string, optional): Part of the key added to the datastore.
  • generation (u64, optional): The number of times this has been updated.
  • hex (hex, optional): The hex data from the datastore.
  • string (string, optional): The data as a string, if it's valid utf-8.

ERRORS

The following error codes may occur:

  • -32602: invalid parameters.

AUTHOR

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

SEE ALSO

lightning-datastore(7), lightning-deldatastore(7), lightning-datastoreusage(7)

RESOURCES

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

EXAMPLES

Example 1:

Request:

lightning-cli listdatastore -k "key"='["employee"]'
{
  "id": "example:listdatastore#1",
  "method": "listdatastore",
  "params": {
    "key": [
      "employee"
    ]
  }
}

Response:

{
  "datastore": [
    {
      "key": [
        "employee",
        "index"
      ],
      "generation": 0,
      "hex": "736176696e6720656d706c6f796565206b65797320746f207468652073746f7265",
      "string": "saving employee keys to the store"
    }
  ]
}

Example 2:

Request:

lightning-cli listdatastore -k "key"="somekey"
{
  "id": "example:listdatastore#2",
  "method": "listdatastore",
  "params": {
    "key": "somekey"
  }
}

Response:

{
  "datastore": [
    {
      "key": [
        "somekey"
      ],
      "generation": 0,
      "hex": "61",
      "string": "a"
    }
  ]
}

Core Lightning is Blockstream's open-source implementation of the Lightning Network optimised for performance. It is highly customizable through modular expandability.

© 2023 Core Lightning
All rights reserved.

X Twitter Logo Streamline Icon: https://streamlinehq.com

X

The official Core Lightning X(Twitter) handle to follow project updates and announcements.

Github Logo 2 Streamline Icon: https://streamlinehq.com

Github

Github repository for source code, issues, and contributions. Visit our project here to explore or contibute.

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/V6ay9yNhBQ to join.