Core CLI
The Core CLI is a command-line interface that is available for every Lisk Core node.
A complete CLI reference of a mainchain node is summarized on this page.
Commands
help
Displays a summary of all available CLI commands of Lisk Core.
Lisk blockchain application platform
VERSION
lisk-core/4.0.0 darwin-arm64 node-v16.18.0
USAGE
$ lisk-core [COMMAND]
TOPICS
block Commands relating to Lisk Core blocks.
blockchain Commands relating to Lisk Core blockchain data.
config Commands relating to Lisk Core node configuration.
endpoint Invokes the provided endpoint.
generator Disable block generation for given validator address.
genesis-block Creates genesis block file.
keys Return keys corresponding to the given passphrase.
system Commands relating to Lisk Core node.
passphrase Commands relating to Lisk Core passphrases.
sdk Commands relating to Lisk SDK development.
transaction Commands relating to Lisk Core transactions.
COMMANDS
autocomplete Display autocomplete installation instructions
console Lisk interactive REPL session to run commands.
hash-onion Create hash onions to be used by the forger.
help Display help for lisk-core.
start Start Blockchain Node.
version
autocomplete
Displays autocomplete installation instructions.
USAGE
$ lisk-core autocomplete [SHELL] [-r]
ARGUMENTS
SHELL shell type
FLAGS
-r, --refresh-cache Refresh cache (ignores displaying instructions)
DESCRIPTION
display autocomplete installation instructions
EXAMPLES
$ lisk-core autocomplete
$ lisk-core autocomplete bash
$ lisk-core autocomplete zsh
$ lisk-core autocomplete --refresh-cache
Example
$ lisk-core autocomplete
Building the autocomplete cache... done
Setup Instructions for LISK-CORE CLI Autocomplete ---
1) Add the autocomplete env var to your zsh profile and source it
$ printf "eval $(lisk-core autocomplete:script zsh)" >> ~/.zshrc; source ~/.zshrc
NOTE: After sourcing, you can run `$ compaudit -D` to ensure no permissions conflicts are present
2) Test it out, e.g.:
$ lisk-core <TAB> # Command completion
$ lisk-core command --<TAB> # Flag completion
Enjoy!
console
Provides an interactive Javascript REPL session to run LISK commands.
USAGE
$ lisk-core console [--api-ipc <value>] [--api-ws <value>]
FLAGS
--api-ipc=<value> Enable api-client with IPC communication.
--api-ws=<value> Enable api-client with Websocket communication.
DESCRIPTION
Lisk interactive REPL session to run commands.
EXAMPLES
console
console --api-ws=ws://localhost:8080
console --api-ipc=/path/to/server
Example
$ lisk-core console
Entering Lisk REPL: type `Ctrl+C` or `.exit` to exit
lisk-core >
hash-onion
Creates hash onions to be used by a generator.
USAGE
$ lisk-core hash-onion [-o <value>] [-c <value>] [-d <value>] [--pretty]
FLAGS
-c, --count=<value> [default: 1000000] Total number of hashes to produce
-d, --distance=<value> [default: 1000] Distance between each hashes
-o, --output=<value> Output file path
--pretty Prints JSON in pretty format rather than condensed.
DESCRIPTION
Create hash onions to be used by the generator.
EXAMPLES
hash-onion --count=1000000 --distance=2000 --pretty
hash-onion --count=1000000 --distance=2000 --output ~/my_onion.json
Example
$ lisk-core hash-onion --count=10 --distance=2 --pretty
{
"count": 10,
"distance": 2,
"hashes": [
"e27512a5720052cd61308bef373e9312",
"3cef453ee632c86651e54ce79614c05e",
"7ceaefaa0c13111ca93e811a78b26c4e",
"625b905e51992a1b5a018bca8e37cf4a",
"6652faaab3427351a8a6c4ac26a19968",
"eafe02868d94dcedbcf8630776311454"
]
}
start
Starts the blockchain node.
USAGE
$ lisk-core start [-d <value>] [-n <value>] [-c <value>] [--overwrite-config] [-p <value>] [--api-ipc] [--api-ws] [--api-http] [--api-port <value>]
[--api-host <value>] [-l trace|debug|info|warn|error|fatal] [--seed-peers <value>] [--enable-forger-plugin] [--enable-monitor-plugin] [--monitor-plugin-port <value>]
[--monitor-plugin-whitelist <value>] [--enable-report-misbehavior-plugin] [--enable-faucet-plugin] [--faucet-plugin-port <value>] [--enable-dashboard-plugin]
[--dashboard-plugin-port <value>] [--enable-chain-connector-plugin]
FLAGS
-c, --config=<value> File path to a custom config. Environment variable "LISK_CONFIG_FILE" can also be used.
-d, --data-path=<value> Directory path to specify where node data is stored. Environment variable "LISK_DATA_PATH" can also be used.
-l, --log=<option> Log level. Environment variable "LISK_LOG_LEVEL" can also be used.
<options: trace|debug|info|warn|error|fatal>
-n, --network=<value> [default: default] Default network config to use. Environment variable "LISK_NETWORK" can also be used.
-p, --port=<value> Open port for the peer to peer incoming connections. Environment variable "LISK_PORT" can also be used.
--api-host=<value> Host to be used for api-client. Environment variable "LISK_API_HOST" can also be used.
--api-http Enable HTTP communication for api-client. Environment variable "LISK_API_HTTP" can also be used.
--api-ipc Enable IPC communication. This will load plugins as a child process and communicate over IPC. Environment variable "LISK_API_IPC"
can also be used.
--api-port=<value> Port to be used for api-client. Environment variable "LISK_API_PORT" can also be used.
--api-ws Enable websocket communication for api-client. Environment variable "LISK_API_WS" can also be used.
--dashboard-plugin-port=<value> Port to be used for Dashboard Plugin. Environment variable "LISK_DASHBOARD_PLUGIN_PORT" can also be used.
--enable-chain-connector-plugin Enable Chain Connector Plugin. Environment variable "LISK_ENABLE_CHAIN_CONNECTOR_PLUGIN" can also be used.
--enable-dashboard-plugin Enable Dashboard Plugin. Environment variable "LISK_ENABLE_DASHBOARD_PLUGIN" can also be used.
--enable-faucet-plugin Enable Faucet Plugin. Environment variable "LISK_ENABLE_FAUCET_PLUGIN" can also be used.
--enable-forger-plugin Enable Forger Plugin. Environment variable "LISK_ENABLE_FORGER_PLUGIN" can also be used.
--enable-monitor-plugin Enable Monitor Plugin. Environment variable "LISK_ENABLE_MONITOR_PLUGIN" can also be used.
--enable-report-misbehavior-plugin Enable ReportMisbehavior Plugin. Environment variable "LISK_ENABLE_REPORT_MISBEHAVIOR_PLUGIN" can also be used.
--faucet-plugin-port=<value> Port to be used for Faucet Plugin. Environment variable "LISK_FAUCET_PLUGIN_PORT" can also be used.
--monitor-plugin-port=<value> Port to be used for Monitor Plugin. Environment variable "LISK_MONITOR_PLUGIN_PORT" can also be used.
--monitor-plugin-whitelist=<value> List of IPs in comma separated value to allow the connection. Environment variable "LISK_MONITOR_PLUGIN_WHITELIST" can also be used.
--overwrite-config Overwrite network configs if they exist already
--seed-peers=<value> Seed peers to initially connect to in format of comma separated "ip:port". IP can be DNS name or IPV4 format. Environment variable
"LISK_SEED_PEERS" can also be used.
DESCRIPTION
Start Blockchain Node.
EXAMPLES
start
start --network devnet --data-path /path/to/data-dir --log debug
start --network devnet --api-ws
start --network devnet --api-ws --api-port 8888
start --network devnet --port 9000
start --network devnet --port 9002 --seed-peers 127.0.0.1:9001,127.0.0.1:9000
start --network testnet --overwrite-config
start --network testnet --config ~/my_custom_config.json
Example
$ lisk-core start --network devnet --api-ws
Topics
block
Commands relating to Lisk Core blocks.
USAGE
$ lisk-core block COMMAND
COMMANDS
block:get Get block information for a given id or height.
block:get
Gets block information for a given id or height.
USAGE
$ lisk-core block:get [INPUT] [-d <value>] [--pretty]
ARGUMENTS
INPUT Height in number or block id in hex format.
FLAGS
-d, --data-path=<value> Directory path to specify where node data is stored. Environment variable "LISK_DATA_PATH" can also be used.
--pretty Prints JSON in pretty format rather than condensed.
DESCRIPTION
Get block information for a given id or height.
EXAMPLES
block:get e082e79d01016632c451c9df9276e486cb7f460dc793ff5b10d8f71eecec28b4
block:get 2
Example
$ lisk-core block:get 2 --pretty
{
"header": {
"version": 2,
"timestamp": 1680868980,
"height": 2,
"previousBlockID": "9e442947fda74955dea2e6a490b1158a78655bd5fb6875cd945bdc02841523fd",
"stateRoot": "2211e781083d5def0da750cf96f75abd3b27d68e944ba01728ddfb4fb18fa5d2",
"assetRoot": "8fb5ed936653eba7fb8e05fa7ad87a75e10347ca544574326dd11d159bcd015d",
"eventRoot": "15caa254f64d161c61daede6f2fec75451381a1268b83997ebe86887c81ca2c8",
"transactionRoot": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855",
"validatorsHash": "8438b6d8c70e18c79a9215f53b6c4677e2f4bab793479a35c03d8f514f3389b3",
"aggregateCommit": {
"height": 0,
"aggregationBits": "",
"certificateSignature": ""
},
"generatorAddress": "lsket9bd2coqrbbojp2fnj744atmuk6ys6yumu384",
"maxHeightPrevoted": 0,
"maxHeightGenerated": 0,
"impliesMaxPrevotes": true,
"signature": "dd76712757a43d1324e2f3e40adea505f8a48a30760301d379321ff483fb2ff136f83877b6a4c12bfd23dd374461be1bc8212ccb07ba3fc4dbbb6f58babc6004",
"id": "f74a3057308ef04fbececeda16b2cb65226f076bb8d2bf026e3982b860758b6d"
},
"transactions": [],
"assets": [
{
"module": "random",
"data": {
"seedReveal": "efb5d9ada0e8e85cb4f97efa61a1e5ee"
}
}
]
}
blockchain
Commands relating to Lisk Core blockchain data.
USAGE
$ lisk-core blockchain:COMMAND
COMMANDS
blockchain:download Download snapshot from <URL>.
blockchain:export Export to <FILE>.
blockchain:hash Generate SHA256 hash from <PATH>.
blockchain:import Import from <FILE>.
blockchain:reset Reset the blockchain data.
blockchain:download
Download the snapshot from the given <URL>.
USAGE
$ lisk-core blockchain:download [-n <value>] [-o <value>] [-u <value>]
FLAGS
-n, --network=<value> [default: mainnet] Default network config to use. Environment variable "LISK_NETWORK" can also be used.
-o, --output=<value> Directory path to specify where snapshot is downloaded. By default outputs the files to current working directory.
-u, --url=<value> The url to the snapshot.
DESCRIPTION
Download snapshot from <URL>.
EXAMPLES
blockchain:download
blockchain:download --network betanet
blockchain:download --url https://snapshots.lisk.com/mainnet/blockchain.db.tar.gz --output ./downloads
Example
$ lisk-core blockchain:download
Downloading snapshot from https://snapshots.lisk.com/mainnet/blockchain.db.tar.gz to /Users/XYZ
Downloaded to path: /Users/XYZ
blockchain:export
Exports the blockchain’s data to a file.
USAGE
$ lisk-core blockchain:export [-d <value>] [-o <value>]
FLAGS
-d, --data-path=<value> Directory path to specify where node data is stored. Environment variable "LISK_DATA_PATH" can also be used.
-o, --output=<value> The output directory. Default will set to current working directory.
DESCRIPTION
Export to <FILE>.
EXAMPLES
blockchain:export
blockchain:export --data-path ./data --output ./my/path/
Example
$ lisk-core blockchain:export
Exporting blockchain:
/Users/XYZ/.lisk/lisk-core/data
Export completed:
/Users/XYZ/blockchain.tar.gz
blockchain:hash
Generates SHA256 hash from the blockchain's data.
USAGE
$ lisk-core blockchain:hash [-d <value>]
FLAGS
-d, --data-path=<value> Directory path to specify where node data is stored. Environment variable "LISK_DATA_PATH" can also be used.
DESCRIPTION
Generate SHA256 hash from <PATH>.
EXAMPLES
blockchain:hash
blockchain:hash --data-path ./data
Example
$ lisk-core blockchain:hash --data-path /Users/xyz/blockchain.db
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
blockchain:import
Imports the blockchain’s data from a file.
USAGE
$ lisk-core blockchain:import [FILEPATH] [-d <value>] [-f]
ARGUMENTS
FILEPATH Path to the gzipped blockchain data.
FLAGS
-d, --data-path=<value> Directory path to specify where node data is stored. Environment variable "LISK_DATA_PATH" can also be used.
-f, --force Delete and overwrite existing blockchain data
DESCRIPTION
Import from <FILE>.
EXAMPLES
blockchain:import ./path/to/blockchain.tar.gz
blockchain:import ./path/to/blockchain.tar.gz --data-path ./lisk/
blockchain:import ./path/to/blockchain.tar.gz --data-path ./lisk/ --force
Example
$ lisk-core blockchain:import /Users/XYZ/blockchain.tar.gz --force
Importing blockchain from /Users/XYZ/blockchain.tar.gz
Import completed.
/Users/XYZ/.lisk/lisk-core
blockchain:reset
Resets the blockchain’s data.
USAGE
$ lisk-core blockchain:reset [-d <value>] [-y]
FLAGS
-d, --data-path=<value> Directory path to specify where node data is stored. Environment variable "LISK_DATA_PATH" can also be used.
-y, --yes Skip confirmation prompt.
DESCRIPTION
Reset the blockchain data.
EXAMPLES
blockchain:reset
blockchain:reset --data-path ./lisk
blockchain:reset --yes
Example
$ lisk-core blockchain:reset
? Are you sure you want to reset the db? yes
Blockchain data has been reset.
config
Commands relating to the configuration of the blockchain client.
USAGE
$ lisk-core config:COMMAND
COMMANDS
config:create Creates network configuration file.
config:show Show application config.
config:create
Creates a configuration file for the blockchain application.
USAGE
$ lisk-core config:create -i <value> [-o <value>] [-l <value>]
FLAGS
-i, --chain-id=<value> (required) ChainID in hex format. For example, Lisk mainnet mainchain is 00000000
-l, --label=<value> [default: beta-sdk-app] App Label
-o, --output=<value> [default: /home/lisk/workspace/lisk-core-publish_development/lisk-core] Directory where the config file is saved
DESCRIPTION
Creates network configuration file.
EXAMPLES
config:create --output mydir
config:create --output mydir --label beta-sdk-app
config:create --output mydir --label beta-sdk-app --community-identifier sdk
Example
$ lisk-core config:create --output /Users/XYZ --chain-id 04000000
config:show
Shows the application’s config.
USAGE
$ lisk-core config:show [-d <value>] [-c <value>] [--pretty]
FLAGS
-c, --config=<value> File path to a custom config. Environment variable "LISK_CONFIG_FILE" can also be used.
-d, --data-path=<value> Directory path to specify where node data is stored. Environment variable "LISK_DATA_PATH" can also be used.
--pretty Prints JSON in pretty format rather than condensed.
DESCRIPTION
Show application config.
EXAMPLES
config:show
config:show --pretty
config:show --config ./custom-config.json --data-path ./data
Example
$ lisk-core config:show --pretty
{
"system": {
"dataPath": "/Users/XYZ/.lisk/lisk-core",
"logLevel": "info",
"keepEventsForHeights": -1
},
"rpc": {
"modes": [
"ipc",
"ws",
"http"
],
"port": 7887,
"host": "0.0.0.0"
},
"genesis": {
"block": {
"fromFile": "./config/genesis_block.blob"
},
"blockTime": 10,
"bftBatchSize": 103,
"chainID": "04000000",
"maxTransactionsSize": 15360
},
"generator": {
"keys": {
"fromFile": "./config/dev-validators.json"
}
},
"network": {
"version": "1.0",
"seedPeers": [],
"port": 7667
},
"transactionPool": {
"maxTransactions": 4096,
"maxTransactionsPerAccount": 64,
"transactionExpiryTime": 10800000,
"minEntranceFeePriority": "0",
"minReplacementFeeDifference": "10"
},
"modules": {
"dynamicReward": {
"tokenID": "0400000000000000",
"offset": 360,
"distance": 1000,
"brackets": [
"500000000",
"400000000",
"300000000",
"200000000",
"100000000"
]
},
"fee": {
"feeTokenID": "0400000000000000"
},
"pos": {
"useInvalidBLSKey": false
},
"token": {
"feeTokenID": "0400000000000000"
}
},
"plugins": {
}
}
endpoint
Commands relating to invoking and listing the endpoints.
USAGE
$ lisk-core endpoint:COMMAND
COMMANDS
endpoint:invoke Invokes the provided endpoint.
endpoint:list Lists registered endpoints.
endpoint:invoke
Invokes the provided endpoint.
USAGE
$ lisk-core endpoint:invoke [ENDPOINT] [PARAMS] [-d <value>] [--pretty] [-f <value>]
ARGUMENTS
ENDPOINT Endpoint to invoke
PARAMS Endpoint parameters (Optional)
FLAGS
-d, --data-path=<value> Directory path to specify where node data is stored. Environment variable "LISK_DATA_PATH" can also be used.
-f, --file=<value> Input file.
--pretty Prints JSON in pretty format rather than condensed.
DESCRIPTION
Invokes the provided endpoint.
EXAMPLES
endpoint:invoke {endpoint} {parameters}
endpoint:invoke --data-path --file
endpoint:invoke generator_getAllKeys
endpoint:invoke consensus_getBFTParameters '{"height": 2}' -d ~/.lisk/pos-mainchain --pretty
endpoint:invoke consensus_getBFTParameters -f ./input.json
Example
$ lisk-core endpoint:invoke system_getNodeInfo --pretty
{
"version": "4.0.0-alpha.18",
"networkVersion": "1.0",
"chainID": "04000000",
"lastBlockID": "dd207c37a76c453e4b718f2bf238b84186f6e673679915b197ce1fdf94d3c180",
"height": 49,
"finalizedHeight": 0,
"syncing": false,
"unconfirmedTransactions": 0,
"genesisHeight": 0,
"genesis": {
"block": {
"fromFile": "./config/genesis_block.blob"
},
"blockTime": 10,
"bftBatchSize": 103,
"maxTransactionsSize": 15360,
"chainID": "04000000"
},
"network": {
"version": "1.0",
"port": 7667,
"seedPeers": []
}
}
endpoint:list
Returns the list of all the module endpoints
USAGE
$ lisk-core endpoint:list [ENDPOINT] [-d <value>] [--pretty] [-m <value>] [-i]
ARGUMENTS
ENDPOINT Endpoint name (Optional)
FLAGS
-d, --data-path=<value> Directory path to specify where node data is stored. Environment variable "LISK_DATA_PATH" can also be used.
-i, --info Prints additional info; Request and Response objects.
-m, --module=<value> Parent module.
--pretty Prints JSON in pretty format rather than condensed.
DESCRIPTION
Lists registered endpoints.
EXAMPLES
endpoint:list
endpoint:list {endpoint} -m {module}
endpoint:list {endpoint} -m {module} -i
endpoint:list -m validator
endopint:list getBalance
endpoint:list get -m token
endpoint:list getBalances -m token -i --pretty
endpoint:list getBalances -m token -d ~/.lisk/pos-mainchain
Example
$ lisk-core endpoint:list --pretty
[
"auth_getAuthAccount",
"auth_isValidNonce",
"auth_isValidSignature",
"auth_getMultiSigRegMsgSchema",
"auth_sortMultisignatureGroup",
"auth_getMultiSigRegMsgTag",
"dynamicReward_getDefaultRewardAtHeight",
"dynamicReward_getAnnualInflation",
"dynamicReward_getRewardTokenID",
"fee_getMinFeePerByte",
"fee_getFeeTokenID",
"interoperability_getChainAccount",
"interoperability_getAllChainAccounts",
"interoperability_getChannel",
"interoperability_getOwnChainAccount",
"interoperability_getTerminatedStateAccount",
"interoperability_getTerminatedOutboxAccount",
"interoperability_getRegistrationFee",
"interoperability_getMinimumMessageFee",
"interoperability_getChainValidators",
"interoperability_isChainIDAvailable",
"interoperability_isChainNameAvailable",
"legacy_getLegacyAccount",
"pos_getAllValidators",
"pos_getValidator",
"pos_getStaker",
"pos_getConstants",
"pos_getPoSTokenID",
"pos_getClaimableRewards",
"pos_getLockedReward",
"pos_getLockedStakedAmount",
"pos_getValidatorsByStake",
"pos_getPendingUnlocks",
"pos_getRegistrationFee",
"random_isSeedRevealValid",
"random_setHashOnion",
"random_getHashOnionSeeds",
"random_hasHashOnion",
"random_getHashOnionUsage",
"token_getBalance",
"token_getBalances",
"token_getTotalSupply",
"token_getSupportedTokens",
"token_isSupported",
"token_getEscrowedAmounts",
"token_getInitializationFees",
"token_hasUserAccount",
"token_hasEscrowAccount",
"validators_validateBLSKey",
"validators_getValidator"
]
generator
Commands relating to the block generation and generator-info of a blockchain.
USAGE
$ lisk-core generator:COMMAND
COMMANDS
generator:disable Disable block generation for given validator address.
generator:enable Enable block generation for given validator address.
generator:export Export to <FILE>.
generator:import Import from <FILE>.
generator:status Get forging information for the locally running node.
generator:disable
Disables block generation for a given generator’s address.
USAGE
$ lisk-core generator:disable [ADDRESS] [-d <value>] [--pretty] [-w <value>]
ARGUMENTS
ADDRESS Address of an account in a lisk32 format.
FLAGS
-d, --data-path=<value> Directory path to specify where node data is stored. Environment variable "LISK_DATA_PATH" can also be used.
-w, --password=<value> Specifies a source for your secret password. Command will prompt you for input if this option is not set.
Examples:
- --password=pass:password123 (should only be used where security is not important)
--pretty Prints JSON in pretty format rather than condensed.
DESCRIPTION
Disable block generation for given validator address.
EXAMPLES
generator:disable lskycz7hvr8yfu74bcwxy2n4mopfmjancgdvxq8xz
generator:disable lskycz7hvr8yfu74bcwxy2n4mopfmjancgdvxq8xz --data-path ./data
generator:disable lskycz7hvr8yfu74bcwxy2n4mopfmjancgdvxq8xz --data-path ./data --password your_password
Example
$ lisk-core generator:disable lskqaxxmj78frvgpjgwvf4yqjjkcrr9yhn2sxxwm3
? Enter password to decrypt the encrypted passphrase: ********
Disabled block generation for lskqaxxmj78frvgpjgwvf4yqjjkcrr9yhn2sxxwm3
generator:enable
Enables block generation for a given generator's address.
USAGE
$ lisk-core generator:enable [ADDRESS] [-d <value>] [--pretty] [-w <value>] [--height <value>] [--max-height-generated <value>] [--max-height-prevoted <value>]
[--use-status-value]
ARGUMENTS
ADDRESS Address of an account in a lisk32 format.
FLAGS
-d, --data-path=<value> Directory path to specify where node data is stored. Environment variable "LISK_DATA_PATH" can also be used.
-w, --password=<value> Specifies a source for your secret password. Command will prompt you for input if this option is not set.
Examples:
- --password=pass:password123 (should only be used where security is not important)
--height=<value> Last generated block height.
--max-height-generated=<value> Validator's largest previously generated height.
--max-height-prevoted=<value> Validator's largest prevoted height for a block.
--pretty Prints JSON in pretty format rather than condensed.
--use-status-value Use status value from the connected node
DESCRIPTION
Enable block generation for given validator address.
EXAMPLES
generator:enable lsk24cd35u4jdq8szo3pnsqe5dsxwrnazyqqqg5eu --use-status-value
generator:enable lsk24cd35u4jdq8szo3pnsqe5dsxwrnazyqqqg5eu --height=100 --max-height-generated=30 --max-height-prevoted=10
generator:enable lsk24cd35u4jdq8szo3pnsqe5dsxwrnazyqqqg5eu --height=100 --max-height-generated=30 --max-height-prevoted=10 --data-path ./data
generator:enable lsk24cd35u4jdq8szo3pnsqe5dsxwrnazyqqqg5eu --height=100 --max-height-generated=30 --max-height-prevoted=10 --data-path ./data --password your_password
Example
$ lisk-core generator:enable lskqaxxmj78frvgpjgwvf4yqjjkcrr9yhn2sxxwm3 --use-status-value
Current block generation status for validator account lskqaxxmj78frvgpjgwvf4yqjjkcrr9yhn2sxxwm3 is:
{"height":14814092,"maxHeightPrevoted":14814017,"maxHeightGenerated":14814025}
? Do you want to use the above values to enable block generation? yes
? Enter password to decrypt the encrypted passphrase: ********
Updated block generation status:
{"address":"lskqaxxmj78frvgpjgwvf4yqjjkcrr9yhn2sxxwm3","enabled":true}
generator:export
Exports generator’s data to a file.
USAGE
$ lisk-core generator:export [-d <value>] [--pretty] [-o <value>]
FLAGS
-d, --data-path=<value> Directory path to specify where node data is stored. Environment variable "LISK_DATA_PATH" can also be used.
-o, --output=<value> The output directory. Default will set to current working directory.
--pretty Prints JSON in pretty format rather than condensed.
DESCRIPTION
Export to <FILE>.
EXAMPLES
generator:export --output /mypath/genInfo.json
generator:export --output /mypath/genInfo.json --data-path ./data
Example
$ lisk-core generator:export --output /Users/XYZ/genInfo.json
generator:import
Imports generator’s data from a file.
USAGE
$ lisk-core generator:import -f <value> [-d <value>] [--pretty]
FLAGS
-d, --data-path=<value> Directory path to specify where node data is stored. Environment variable "LISK_DATA_PATH" can also be used.
-f, --file-path=<value> (required) Path of the file to import from
--pretty Prints JSON in pretty format rather than condensed.
DESCRIPTION
Import from <FILE>.
EXAMPLES
generator:import --file-path ./my/path/genInfo.json
generator:import --file-path ./my/path/genInfo.json --data-path ./data
Example
$./bin/run generator:import --file-path /Users/XYZ/genInfo.json
generator:status
Gets block generation information for the locally running node.
USAGE
$ lisk-core generator:status [-d <value>] [--pretty]
FLAGS
-d, --data-path=<value> Directory path to specify where node data is stored. Environment variable "LISK_DATA_PATH" can also be used.
--pretty Prints JSON in pretty format rather than condensed.
DESCRIPTION
Get forging information for the locally running node.
EXAMPLES
generator:status
generator:status --data-path ./sample --pretty
Example
$ lisk-core generator:status --pretty
{
"info": {
"status":
[{
"address": "lskzpvesvp7p9odszcp3s4dffnj4ozqz7b79tonqp",
"height": 574,
"maxHeightPrevoted": 487,
"maxHeightGenerated": 459,
"enabled": true
}
]}
}
genesis-block
Commands relating to the genesis block.
USAGE
$ lisk-core genesis-block COMMAND
COMMANDS
genesis-block:create Creates genesis block file.
genesis-block:download Download genesis block.
genesis-block:create
Creates a genesis block file and the corresponding generator's configuration data and accounts information.
USAGE
$ lisk-core genesis-block:create -f <value> [-n <value>] [-c <value>] [-o <value>]
FLAGS
-c, --config=<value> File path to a custom config. Environment variable "LISK_CONFIG_FILE" can also be used.
-f, --assets-file=<value> (required) Path to file which contains genesis block asset in JSON format
-n, --network=<value> [default: default] Default network config to use. Environment variable "LISK_NETWORK" can also be used.
-o, --output=<value> [default: config] Output folder path of the generated genesis block
DESCRIPTION
Creates genesis block file.
EXAMPLES
genesis-block:create --output mydir
genesis-block:create --output mydir --assets-file ./assets.json
Example
$ lisk-core genesis-block:create --assets-file genesis_assets.json --output ./devnet
2023-04-07T16:47:08.874Z INFO XYZ.local application 55996 Registered and initialized fee module
2023-04-07T16:47:08.875Z INFO XYZ.local application 55996 Registered and initialized auth module
2023-04-07T16:47:08.875Z INFO XYZ.local application 55996 Registered auth module has command registerMultisignature
2023-04-07T16:47:08.875Z INFO XYZ.local application 55996 Registered and initialized validators module
2023-04-07T16:47:08.876Z INFO XYZ.local application 55996 Registered and initialized token module
2023-04-07T16:47:08.876Z INFO XYZ.local application 55996 Registered token module has command transfer
2023-04-07T16:47:08.876Z INFO XYZ.local application 55996 Registered token module has command transferCrossChain
2023-04-07T16:47:08.878Z INFO XYZ.local application 55996 Registered and initialized dynamicReward module
2023-04-07T16:47:08.878Z INFO XYZ.local application 55996 Registered and initialized random module
2023-04-07T16:47:08.881Z INFO XYZ.local application 55996 Registered and initialized pos module
2023-04-07T16:47:08.881Z INFO XYZ.local application 55996 Registered pos module has command registerValidator
2023-04-07T16:47:08.881Z INFO XYZ.local application 55996 Registered pos module has command reportMisbehavior
2023-04-07T16:47:08.881Z INFO XYZ.local application 55996 Registered pos module has command unlock
2023-04-07T16:47:08.881Z INFO XYZ.local application 55996 Registered pos module has command updateGeneratorKey
2023-04-07T16:47:08.881Z INFO XYZ.local application 55996 Registered pos module has command stake
2023-04-07T16:47:08.881Z INFO XYZ.local application 55996 Registered pos module has command changeCommission
2023-04-07T16:47:08.881Z INFO XYZ.local application 55996 Registered pos module has command claimRewards
2023-04-07T16:47:08.881Z INFO XYZ.local application 55996 Registered and initialized interoperability module
2023-04-07T16:47:08.881Z INFO XYZ.local application 55996 Registered interoperability module has command submitMainchainCrossChainUpdate
2023-04-07T16:47:08.881Z INFO XYZ.local application 55996 Registered interoperability module has command initializeMessageRecovery
2023-04-07T16:47:08.881Z INFO XYZ.local application 55996 Registered interoperability module has command recoverMessage
2023-04-07T16:47:08.881Z INFO XYZ.local application 55996 Registered interoperability module has command registerSidechain
2023-04-07T16:47:08.881Z INFO XYZ.local application 55996 Registered interoperability module has command recoverState
2023-04-07T16:47:08.881Z INFO XYZ.local application 55996 Registered interoperability module has command terminateSidechainForLiveness
2023-04-07T16:47:08.881Z INFO XYZ.local application 55996 Registered and initialized legacy module
2023-04-07T16:47:08.881Z INFO XYZ.local application 55996 Registered legacy module has command reclaimLSK
2023-04-07T16:47:08.881Z INFO XYZ.local application 55996 Registered legacy module has command registerKeys
Genesis block files saved at: /Users/XYZ/.nvm/versions/node/v16.18.0/lib/node_modules/lisk-core/config/devnet/devnet
genesis-block:download
Download genesis block.
USAGE
$ lisk-core genesis-block:download [-d <value>] [-n <value>] [-u <value>] [-f]
FLAGS
-d, --data-path=<value> Directory path to specify where node data is stored.
Environment variable "LISK_DATA_PATH" can also be
used.
-f, --force Delete and overwrite existing blockchain data
-n, --network=<value> Default network config to use. Environment variable
"LISK_NETWORK" can also be used.
-u, --url=<value> The url to the genesis block.
DESCRIPTION
Download genesis block.
EXAMPLES
genesis-block:download --network mainnet -f
genesis-block:download --network --data-path ./lisk/
genesis-block:download --url http://mydomain.com/genesis_block.json.gz --data-path ./lisk/ --force
Example
$ lisk-core genesis-block:download --network mainnet -f
Downloading genesis block from https://downloads.lisk.com/lisk/mainnet/genesis_block.json.tar.gz
Downloaded to path: /Users/XYZ/.lisk/lisk-core/config/mainnet/genesis_block.json.tar.gz.
Verified checksum: a69fe85969ce8727b6490a07ced612bbc36a5c377a54f2b6fab58c058d1663b5.
Extracting genesis block file.
Removing downloaded genesis block
Download completed.
/Users/XYZ/.lisk/lisk-core/config/mainnet/genesis_block.json
keys
Return keys corresponding to the given passphrase.
USAGE
$ lisk-core keys:COMMAND
COMMANDS
keys:create Return keys corresponding to the given passphrase.
keys:encrypt Encrypt keys from a file and overwrite the file
keys:export Export to <FILE>.
keys:import Import from <FILE>.
keys:create
Return keys corresponding to the given passphrase.
USAGE
$ lisk-core keys:create [-o <value>] [-p <value>] [-n] [-w <value>] [-c <value>] [-f <value>] [-i <value>]
FLAGS
-c, --count=<value> [default: 1] Number of keys to create
-f, --offset=<value> Offset for the key derivation path
-i, --chainid=<value> Chain id
-n, --no-encrypt No encrypted message object to be created
-o, --output=<value> The output directory. Default will set to current working directory.
-p, --passphrase=<value> Specifies a source for your secret passphrase. Command will prompt you for input if this option is not set.
Examples:
- --passphrase='my secret passphrase' (should only be used where security is not important)
-w, --password=<value> Specifies a source for your secret password. Command will prompt you for input if this option is not set.
Examples:
- --password=pass:password123 (should only be used where security is not important)
DESCRIPTION
Return keys corresponding to the given passphrase.
EXAMPLES
keys:create
keys:create --passphrase your-passphrase
keys:create --passphrase your-passphrase --no-encrypt
keys:create --passphrase your-passphrase --password your-password
keys:create --passphrase your-passphrase --password your-password --count 2
keys:create --passphrase your-passphrase --no-encrypt --count 2 --offset 1
keys:create --passphrase your-passphrase --no-encrypt --count 2 --offset 1 --chainid 1
keys:create --passphrase your-passphrase --password your-password --count 2 --offset 1 --chainid 1 --output /mypath/keys.json
Example
$ lisk-core keys:create
? Please enter passphrase: [hidden]
? Please re-enter passphrase: [hidden]
Warning: Passphrase contains 24 words instead of expected 12. Passphrase contains 23 whitespaces instead of expected 11.
? Please enter password: [hidden]
? Please re-enter password: [hidden]
{
"keys": [
{
"address": "lskguo9kqnea2zsfo3a6qppozsxsg92nuuma3p7ad",
"keyPath": "m/44'/134'/0'",
"publicKey": "3972849f2ab66376a68671c10a00e8b8b67d880434cc65b04c6ed886dfa91c2c",
"privateKey": "e655ee58490c66dee3f6761f3b69fdcb65def01615efcddde09c791d6fc2a5223972849f2ab66376a68671c10a00e8b8b67d880434cc65b04c6ed886dfa91c2c",
"plain": {
"generatorKeyPath": "m/25519'/134'/0'/0'",
"generatorKey": "7da039d08ca35bc7c7e3583f2544754b9fdd8877edb82da02cbe1fde8ab7c113",
"generatorPrivateKey": "e35c5fb116704d11309ad9a96b36c8bb20acb1c435bfe44cfef6b6aa2111c1b87da039d08ca35bc7c7e3583f2544754b9fdd8877edb82da02cbe1fde8ab7c113",
"blsKeyPath": "m/12381/134/0/0",
"blsKey": "82ecd08a07380c29e656527d339ffe1fe306f0f97cd077335afb3c1c1bdb73918a40f15c410bdc4facca9172088c9262",
"blsProofOfPossession": "9950069539cf1baec7b7629eb45d618fd052fd15da108a6b8e6018a7ec8d4957b777b858f6e194a336a4a51c0d709409045646f9588b2be49f11563c549a711957337b2589370cabb2d795cb44f68c7507ca84a9d3a354df2d82f2d158f9e504",
"blsPrivateKey": "3a2ca861b00aa00a3c1ae00ed0252cb944a6b9dba37d8882ca4f757aafd6f2fe"
},
"encrypted": {
"ciphertext": "291bbb535b7eb9dbfc300f13b5e031a684392f35a37618d76917073e57ddfe63351f953301a7b7ac986d13c080f5b1fcbae968084a29fae5e621b60f1ec1f600c48a24bd7fe8b25c9dc7f8be68e26fe664d20b36e5da86784413a42b2400f84725bf2180be37b2d1a14d4b02a1ebe977bad08d360fd5e1488b85311e64e7d4b5534653fdf90874a706c34c06b1774e30a4dea544067927cd4ff8e74d08ab39ba2c1855739be6dd85ffd2ce298a012a54fbc129797a8f6cf7",
"mac": "33b6e7ae77b87ff7eb569fdcfd206e63fd719106635cfd6f09eaba8cdd02df39",
"kdf": "argon2id",
"kdfparams": {
"parallelism": 4,
"iterations": 1,
"memorySize": 2024,
"salt": "7920fdf927717ec27463416fd44e83ac"
},
"cipher": "aes-256-gcm",
"cipherparams": {
"iv": "fc9c300aacd987b71bc45354",
"tag": "033470f223f59f40462647055203ff74"
},
"version": "1"
}
}
]
}
keys:encrypt
Encrypt keys from a file and overwrite the file.
USAGE
$ lisk-core keys:encrypt -f <value> [-w <value>]
FLAGS
-f, --file-path=<value> (required) Path of the file to encrypt from
-w, --password=<value> Specifies a source for your secret password. Command will prompt you for input if this option is not set.
Examples:
- --password=pass:password123 (should only be used where security is not important)
DESCRIPTION
Encrypt keys from a file and overwrite the file
EXAMPLES
keys:encrypt --file-path ./my/path/keys.json
keys:encrypt --file-path ./my/path/keys.json --password mypass
Example
$ lisk-core keys:encrypt --file-path ./my/path/keys.json --password mypass
{
"keys": [
{
"address": "lske5sqed53fdcs4m9et28f2k7u9fk6hno9bauday",
"keyPath": "m/44'/134'/0'",
"publicKey": "a3f96c50d0446220ef2f98240898515cbba8155730679ca35326d98dcfb680f0",
"privateKey": "d0b159fe5a7cc3d5f4b39a97621b514bc55b0a0f1aca8adeed2dd1899d93f103a3f96c50d0446220ef2f98240898515cbba8155730679ca35326d98dcfb680f0",
"plain": {
"generatorKeyPath": "m/25519'/134'/0'/0'",
"generatorKey": "b9e54121e5346cc04cc84bcf286d5e40d586ba5d39571daf57bd31bac3861a4a",
"generatorPrivateKey": "b3c4de7f7932275b7a465045e918337ffd7b7b229cef8eba28f706de8759da95b9e54121e5346cc04cc84bcf286d5e40d586ba5d39571daf57bd31bac3861a4a",
"blsKeyPath": "m/12381/134/0/0",
"blsKey": "92f020ce5e37befb86493a82686b0eedddb264350b0873cf1eeaa1fefe39d938f05f272452c1ef5e6ceb4d9b23687e31",
"blsProofOfPosession": "b92b11d66348e197c62d14af1453620d550c21d59ce572d95a03f0eaa0d0d195efbb2f2fd1577dc1a04ecdb453065d9d168ce7648bc5328e5ea47bb07d3ce6fd75f35ee51064a9903da8b90f7dc8ab4f2549b834cb5911b883097133f66b9ab9",
"blsPrivateKey": "463dd3413051366ee658c2524dd0bec85f8459bf6d70439685746406604f950d"
},
"encrypted": {
"ciphertext": "d340438fde7b744d7482f01531415ffc0bda70dac36257571bb0dab703771e83152428b4a4dddc77dff1a983f07b0f3cba688fab2e46abe970ae4131c616e6cbf613952786f5749e94531641f07fcdef38a001a44f56f5de69e0976964ea13cbaff0682b5e0eaf9ff01a00f5b2215a3a1d9e3f0d5b78c876b157213367f7f90a468937c0baf9904189c21870c396b43b53422422bd61a3e1c8cb3126e1a5d60545aa06ee789c89dfb9155b560c327a88af5f9b04b4c6d4e9",
"mac": "d476a90c1fb057a1e4ece0d725f40f67ae36efcc166aede5380115d2a7532833",
"kdf": "argon2id",
"kdfparams": {
"parallelism": 4,
"iterations": 1,
"memorySize": 2024,
"salt": "ecc014a7619b7f179b3fa32d2fed5d6c"
},
"cipher": "aes-256-gcm",
"cipherparams": {
"iv": "328cf25fdda6988ed9f1101e",
"tag": "1862fde73a2a7b71979773bf620872ef"
},
"version": "1"
}
}
]
}
keys:export
Export keys to a file.
USAGE
$ lisk-core keys:export -o <value> [-d <value>] [--pretty]
FLAGS
-d, --data-path=<value> Directory path to specify where node data is stored. Environment variable "LISK_DATA_PATH" can also be used.
-o, --output=<value> (required) The output directory. Default will set to current working directory.
--pretty Prints JSON in pretty format rather than condensed.
DESCRIPTION
Export to <FILE>.
EXAMPLES
keys:export --output /mypath/keys.json
keys:export --output /mypath/keys.json --data-path ./data
Example
$ lisk-core keys:export --output ~/mypath/mykeys.json
keys:import
Import keys from a file.
USAGE
$ lisk-core keys:import -f <value> [-d <value>] [--pretty]
FLAGS
-d, --data-path=<value> Directory path to specify where node data is stored. Environment variable "LISK_DATA_PATH" can also be used.
-f, --file-path=<value> (required) Path of the file to import from
--pretty Prints JSON in pretty format rather than condensed.
DESCRIPTION
Import from <FILE>.
EXAMPLES
keys:import --file-path ./my/path/keys.json
keys:import --file-path ./my/path/keys.json --data-path ./data
Example
$ lisk-core keys:import --file-path ~/mykeys.json
system
Commands relating to a Lisk Core node.
USAGE
$ lisk-core system:COMMAND
COMMANDS
system:node-info Get node information from a running application.
system:metadata Get node metadata from a running application.
system:node-info
Gets a node’s information from a running Lisk application.
USAGE
$ lisk-core system:node-info [-d <value>] [--pretty]
FLAGS
-d, --data-path=<value> Directory path to specify where node data is stored. Environment variable "LISK_DATA_PATH" can also be used.
--pretty Prints JSON in pretty format rather than condensed.
DESCRIPTION
Get node information from a running application.
EXAMPLES
system:node-info
system:node-info --data-path ./lisk
Example
$ lisk-core system:node-info --pretty
{
"version": "4.0.0-alpha.18",
"networkVersion": "1.0",
"chainID": "04000000",
"lastBlockID": "6f00e6bccb1868bcdd7167fe25c4ce5cf49c40687e454b7c855ff1eed401919c",
"height": 2877,
"finalizedHeight": 2765,
"syncing": false,
"unconfirmedTransactions": 0,
"genesisHeight": 0,
"genesis": {
"block": {
"fromFile": "./config/genesis_block.blob"
},
"blockTime": 10,
"bftBatchSize": 103,
"maxTransactionsSize": 15360,
"chainID": "04000000"
},
"network": {
"version": "1.0",
"port": 7667,
"seedPeers": []
}
}
system:metadata
Gets a node’s metadata from a running Lisk application.
USAGE
$ lisk-core system:metadata [-d <value>] [--pretty]
FLAGS
-d, --data-path=<value> Directory path to specify where node data is stored. Environment variable "LISK_DATA_PATH" can also be used.
--pretty Prints JSON in pretty format rather than condensed.
DESCRIPTION
Get node metadata from a running application.
EXAMPLES
system:metadata
system:metadata --data-path ./lisk
Example
$ lisk-core system:metadata --pretty
{
"modules": [
{
"commands": [
{
"name": "registerMultisignature",
"params": {
"$id": "/auth/command/regMultisig",
"type": "object",
"properties": {
"numberOfSignatures": {
"dataType": "uint32",
"fieldNumber": 1,
"minimum": 1,
"maximum": 64
},
"mandatoryKeys": {
"type": "array",
"items": {
"dataType": "bytes",
"minLength": 32,
"maxLength": 32
},
"fieldNumber": 2,
"minItems": 0,
"maxItems": 64
},
"optionalKeys": {
"type": "array",
"items": {
"dataType": "bytes",
"minLength": 32,
"maxLength": 32
},
"fieldNumber": 3,
"minItems": 0,
"maxItems": 64
},
"signatures": {
"type": "array",
"items": {
"dataType": "bytes",
"minLength": 64,
"maxLength": 64
},
"fieldNumber": 4
}
},
"required": [
"numberOfSignatures",
"mandatoryKeys",
"optionalKeys",
"signatures"
]
}
}
],
"events": [
{
"name": "multisignatureRegistration",
"data": {
"$id": "/auth/events/multisigRegData",
"type": "object",
"required": [
"numberOfSignatures",
"mandatoryKeys",
"optionalKeys"
],
"properties": {
"numberOfSignatures": {
"dataType": "uint32",
"fieldNumber": 1
},
"mandatoryKeys": {
"type": "array",
"items": {
"dataType": "bytes",
"minLength": 32,
"maxLength": 32
},
"fieldNumber": 2
},
"optionalKeys": {
"type": "array",
"items": {
"dataType": "bytes",
"minLength": 32,
"maxLength": 32
},
"fieldNumber": 3
}
}
}
},
{
"name": "invalidSignature",
"data": {
"$id": "/auth/events/invalidSigData",
"type": "object",
"required": [
"numberOfSignatures",
"mandatoryKeys",
"optionalKeys",
"failingPublicKey",
"failingSignature"
],
"properties": {
"numberOfSignatures": {
"dataType": "uint32",
"fieldNumber": 1
},
"mandatoryKeys": {
"type": "array",
"items": {
"dataType": "bytes",
"minLength": 32,
"maxLength": 32
},
"fieldNumber": 2
},
"optionalKeys": {
"type": "array",
"items": {
"dataType": "bytes",
"minLength": 32,
"maxLength": 32
},
"fieldNumber": 3
},
"failingPublicKey": {
"dataType": "bytes",
"minLength": 32,
"maxLength": 32,
"fieldNumber": 4
},
"failingSignature": {
"dataType": "bytes",
"minLength": 64,
"maxLength": 64,
"fieldNumber": 5
}
}
}
}
],
"stores": [
{
"key": "3df49c3c0000",
"data": {
"$id": "/auth/account",
"type": "object",
"properties": {
"nonce": {
"dataType": "uint64",
"fieldNumber": 1
},
"numberOfSignatures": {
"dataType": "uint32",
"fieldNumber": 2,
"minimum": 0,
"maximum": 64
},
"mandatoryKeys": {
"type": "array",
"items": {
"dataType": "bytes",
"minLength": 32,
"maxLength": 32
},
"minItems": 0,
"maxItems": 64,
"fieldNumber": 3
},
"optionalKeys": {
"type": "array",
"items": {
"dataType": "bytes",
"minLength": 32,
"maxLength": 32
},
"minItems": 0,
"maxItems": 64,
"fieldNumber": 4
}
},
"required": [
"nonce",
"numberOfSignatures",
"mandatoryKeys",
"optionalKeys"
]
}
}
],
"endpoints": [
{
"name": "getAuthAccount",
"request": {
"$id": "/auth/addressRequest",
"type": "object",
"properties": {
"address": {
"type": "string",
"format": "lisk32"
}
},
"required": [
"address"
]
},
"response": {
"$id": "/auth/account",
"type": "object",
"properties": {
"nonce": {
"dataType": "uint64",
"fieldNumber": 1
},
"numberOfSignatures": {
"dataType": "uint32",
"fieldNumber": 2,
"minimum": 0,
"maximum": 64
},
"mandatoryKeys": {
"type": "array",
"items": {
"dataType": "bytes",
"minLength": 32,
"maxLength": 32
},
"minItems": 0,
"maxItems": 64,
"fieldNumber": 3
},
"optionalKeys": {
"type": "array",
"items": {
"dataType": "bytes",
"minLength": 32,
"maxLength": 32
},
"minItems": 0,
"maxItems": 64,
"fieldNumber": 4
}
},
"required": [
"nonce",
"numberOfSignatures",
"mandatoryKeys",
"optionalKeys"
]
}
},
{
"name": "isValidNonce",
"request": {
"$id": "/auth/transactionRequest",
"type": "object",
"properties": {
"transaction": {
"type": "string",
"format": "hex"
}
},
"required": [
"transaction"
]
},
"response": {
"$id": "/auth/verifyResult",
"type": "object",
"properties": {
"verified": {
"type": "boolean"
}
},
"required": [
"verified"
]
}
},
{
"name": "isValidSignature",
"request": {
"$id": "/auth/transactionRequest",
"type": "object",
"properties": {
"transaction": {
"type": "string",
"format": "hex"
}
},
"required": [
"transaction"
]
},
"response": {
"$id": "/auth/verifyResult",
"type": "object",
"properties": {
"verified": {
"type": "boolean"
}
},
"required": [
"verified"
]
}
},
{
"name": "getMultiSigRegMsgSchema",
"response": {
"$id": "/auth/command/regMultisigMsg",
"type": "object",
"required": [
"address",
"nonce",
"numberOfSignatures",
"mandatoryKeys",
"optionalKeys"
],
"properties": {
"address": {
"dataType": "bytes",
"fieldNumber": 1,
"minLength": 20,
"maxLength": 20
},
"nonce": {
"dataType": "uint64",
"fieldNumber": 2
},
"numberOfSignatures": {
"dataType": "uint32",
"fieldNumber": 3
},
"mandatoryKeys": {
"type": "array",
"items": {
"dataType": "bytes",
"minLength": 32,
"maxLength": 32
},
"fieldNumber": 4
},
"optionalKeys": {
"type": "array",
"items": {
"dataType": "bytes",
"minLength": 32,
"maxLength": 32
},
"fieldNumber": 5
}
}
}
},
{
"name": "sortMultisignatureGroup",
"request": {
"$id": "/auth/command/sortMultisig",
"required": [
"mandatory",
"optional"
],
"type": "object",
"properties": {
"mandatory": {
"type": "array",
"items": {
"type": "object",
"properties": {
"publicKey": {
"type": "string",
"minLength": 64,
"maxLength": 64,
"fieldNumber": 1
},
"signature": {
"type": "string",
"minLength": 128,
"maxLength": 128,
"fieldNumber": 2
}
}
},
"minItems": 1,
"maxItems": 64
},
"optional": {
"type": "array",
"items": {
"type": "object",
"properties": {
"publicKey": {
"type": "string",
"minLength": 64,
"maxLength": 64,
"fieldNumber": 3
},
"signature": {
"type": "string",
"minLength": 0,
"maxLength": 128,
"fieldNumber": 4
}
}
},
"minItems": 0,
"maxItems": 64
}
}
},
"response": {
"$id": "/auth/sortMultisignatureGroupResponse",
"type": "object",
"properties": {
"mandatoryKeys": {
"type": "array",
"items": {
"dataType": "bytes",
"minLength": 32,
"maxLength": 32
},
"fieldNumber": 1,
"minItems": 0,
"maxItems": 64
},
"optionalKeys": {
"type": "array",
"items": {
"dataType": "bytes",
"minLength": 32,
"maxLength": 32
},
"fieldNumber": 2,
"minItems": 0,
"maxItems": 64
},
"signatures": {
"type": "array",
"items": {
"dataType": "bytes",
"minLength": 64,
"maxLength": 64
},
"fieldNumber": 3
}
},
"required": [
"mandatoryKeys",
"optionalKeys",
"signatures"
]
}
},
{
"name": "getMultiSigRegMsgTag",
"response": {
"$id": "/auth/mutliSignatureRegistrationSignatureMessageTagResponse",
"type": "object",
"properties": {
"tag": {
"type": "string"
}
},
"required": [
"tag"
]
}
}
],
"assets": [
{
"version": 0,
"data": {
"$id": "/auth/module/genesis",
"type": "object",
"required": [
"authDataSubstore"
],
"properties": {
"authDataSubstore": {
"type": "array",
"fieldNumber": 1,
"items": {
"type": "object",
"required": [
"storeKey",
"storeValue"
],
"properties": {
"storeKey": {
"dataType": "bytes",
"fieldNumber": 1
},
"storeValue": {
"type": "object",
"fieldNumber": 2,
"required": [
"nonce",
"numberOfSignatures",
"mandatoryKeys",
"optionalKeys"
],
"properties": {
"nonce": {
"dataType": "uint64",
"fieldNumber": 1
},
"numberOfSignatures": {
"dataType": "uint32",
"fieldNumber": 2
},
"mandatoryKeys": {
"type": "array",
"fieldNumber": 3,
"items": {
"dataType": "bytes"
}
},
"optionalKeys": {
"type": "array",
"fieldNumber": 4,
"items": {
"dataType": "bytes"
}
}
}
}
}
}
}
}
}
}
],
"name": "auth"
},
{
"commands": [],
"events": [
{
"name": "rewardMinted",
"data": {
"$id": "/reward/events/rewardMintedData",
"type": "object",
"required": [
"amount",
"reduction"
],
"properties": {
"amount": {
"dataType": "uint64",
"fieldNumber": 1
},
"reduction": {
"dataType": "uint32",
"fieldNumber": 2
}
}
}
}
],
"stores": [
{
"key": "054253ec0000",
"data": {
"$id": "/dynamicRewards/endOfRoundTimestamp",
"type": "object",
"properties": {
"timestamp": {
"dataType": "uint32",
"fieldNumber": 1
}
},
"required": [
"timestamp"
]
}
}
],
"endpoints": [
{
"name": "getDefaultRewardAtHeight",
"request": {
"$id": "/reward/endpoint/height",
"type": "object",
"required": [
"height"
],
"properties": {
"height": {
"type": "integer",
"format": "uint32"
}
}
},
"response": {
"$id": "/reward/endpoint/getDefaultRewardAtHeightResponse",
"type": "object",
"required": [
"reward"
],
"properties": {
"reward": {
"type": "string",
"format": "uint64"
}
}
}
},
{
"name": "getAnnualInflation",
"request": {
"$id": "/reward/endpoint/height",
"type": "object",
"required": [
"height"
],
"properties": {
"height": {
"type": "integer",
"format": "uint32"
}
}
},
"response": {
"$id": "/reward/endpoint/getAnnualInflationResponse",
"type": "object",
"required": [
"tokenID",
"rate"
],
"properties": {
"tokenID": {
"type": "string",
"format": "hex"
},
"rate": {
"type": "string",
"format": "uint64",
"minLength": 16,
"maxLength": 16
}
}
}
},
{
"name": "getRewardTokenID",
"response": {
"$id": "/reward/endpoint/getRewardTokenID",
"type": "object",
"required": [
"tokenID"
],
"properties": {
"tokenID": {
"type": "string",
"format": "hex",
"minLength": 16,
"maxLength": 16
}
}
}
}
],
"assets": [],
"name": "dynamicReward"
},
{
"commands": [],
"events": [
{
"name": "generatorFeeProcessed",
"data": {
"$id": "/fee/events/generatorFeeProcessed",
"type": "object",
"required": [
"senderAddress",
"generatorAddress",
"burntAmount",
"generatorAmount"
],
"properties": {
"senderAddress": {
"dataType": "bytes",
"format": "lisk32",
"fieldNumber": 1
},
"generatorAddress": {
"dataType": "bytes",
"format": "lisk32",
"fieldNumber": 2
},
"burntAmount": {
"dataType": "uint64",
"fieldNumber": 3
},
"generatorAmount": {
"dataType": "uint64",
"fieldNumber": 4
}
}
}
},
{
"name": "relayerFeeProcessed",
"data": {
"$id": "/fee/events/relayerFeeProcessed",
"type": "object",
"required": [
"ccmID",
"relayerAddress",
"burntAmount",
"relayerAmount"
],
"properties": {
"ccmID": {
"dataType": "bytes",
"minLength": 32,
"maxLength": 32,
"fieldNumber": 1
},
"relayerAddress": {
"dataType": "bytes",
"format": "lisk32",
"fieldNumber": 2
},
"burntAmount": {
"dataType": "uint64",
"fieldNumber": 3
},
"relayerAmount": {
"dataType": "uint64",
"fieldNumber": 4
}
}
}
},
{
"name": "insufficientFee",
"data": {
"$id": "/lisk/empty",
"type": "object",
"properties": {}
}
}
],
"stores": [],
"endpoints": [
{
"name": "getMinFeePerByte",
"response": {
"$id": "/fee/endpoint/getMinFeePerByteResponse",
"type": "object",
"properties": {
"minFeePerByte": {
"type": "integer",
"format": "uint32"
}
},
"required": [
"minFeePerByte"
]
}
},
{
"name": "getFeeTokenID",
"response": {
"$id": "/fee/endpoint/getFeeTokenIDResponseSchema",
"type": "object",
"properties": {
"feeTokenID": {
"type": "string",
"format": "hex"
}
},
"required": [
"feeTokenID"
]
}
}
],
"assets": [],
"name": "fee"
},
{
"commands": [
{
"name": "submitMainchainCrossChainUpdate",
"params": {
"$id": "/modules/interoperability/ccu",
"type": "object",
"required": [
"sendingChainID",
"certificate",
"activeValidatorsUpdate",
"certificateThreshold",
"inboxUpdate"
],
"properties": {
"sendingChainID": {
"dataType": "bytes",
"fieldNumber": 1,
"minLength": 4,
"maxLength": 4
},
"certificate": {
"dataType": "bytes",
"fieldNumber": 2
},
"activeValidatorsUpdate": {
"type": "object",
"fieldNumber": 3,
"required": [
"blsKeysUpdate",
"bftWeightsUpdate",
"bftWeightsUpdateBitmap"
],
"properties": {
"blsKeysUpdate": {
"type": "array",
"fieldNumber": 1,
"items": {
"dataType": "bytes",
"minLength": 48,
"maxLength": 48
}
},
"bftWeightsUpdate": {
"type": "array",
"fieldNumber": 2,
"items": {
"dataType": "uint64"
}
},
"bftWeightsUpdateBitmap": {
"dataType": "bytes",
"fieldNumber": 3
}
}
},
"certificateThreshold": {
"dataType": "uint64",
"fieldNumber": 4
},
"inboxUpdate": {
"type": "object",
"fieldNumber": 5,
"required": [
"crossChainMessages",
"messageWitnessHashes",
"outboxRootWitness"
],
"properties": {
"crossChainMessages": {
"type": "array",
"fieldNumber": 1,
"items": {
"dataType": "bytes"
}
},
"messageWitnessHashes": {
"type": "array",
"fieldNumber": 2,
"items": {
"dataType": "bytes",
"minLength": 32,
"maxLength": 32
}
},
"outboxRootWitness": {
"type": "object",
"fieldNumber": 3,
"required": [
"bitmap",
"siblingHashes"
],
"properties": {
"bitmap": {
"dataType": "bytes",
"fieldNumber": 1
},
"siblingHashes": {
"type": "array",
"fieldNumber": 2,
"items": {
"dataType": "bytes",
"minLength": 32,
"maxLength": 32
}
}
}
}
}
}
}
}
},
{
"name": "initializeMessageRecovery",
"params": {
"$id": "/modules/interoperability/mainchain/messageRecoveryInitialization",
"type": "object",
"required": [
"chainID",
"channel",
"bitmap",
"siblingHashes"
],
"properties": {
"chainID": {
"dataType": "bytes",
"fieldNumber": 1,
"minLength": 4,
"maxLength": 4
},
"channel": {
"dataType": "bytes",
"fieldNumber": 2
},
"bitmap": {
"dataType": "bytes",
"fieldNumber": 3
},
"siblingHashes": {
"type": "array",
"items": {
"dataType": "bytes",
"minLength": 32,
"maxLength": 32
},
"fieldNumber": 4
}
}
}
},
{
"name": "recoverMessage",
"params": {
"$id": "/modules/interoperability/mainchain/messageRecovery",
"type": "object",
"required": [
"chainID",
"crossChainMessages",
"idxs",
"siblingHashes"
],
"properties": {
"chainID": {
"dataType": "bytes",
"minLength": 4,
"maxLength": 4,
"fieldNumber": 1
},
"crossChainMessages": {
"type": "array",
"items": {
"dataType": "bytes"
},
"fieldNumber": 2
},
"idxs": {
"type": "array",
"items": {
"dataType": "uint32"
},
"fieldNumber": 3
},
"siblingHashes": {
"type": "array",
"items": {
"dataType": "bytes",
"minLength": 32,
"maxLength": 32
},
"fieldNumber": 4
}
}
}
},
{
"name": "registerSidechain",
"params": {
"$id": "/modules/interoperability/mainchain/sidechainRegistration",
"type": "object",
"required": [
"chainID",
"name",
"sidechainValidators",
"sidechainCertificateThreshold"
],
"properties": {
"chainID": {
"dataType": "bytes",
"fieldNumber": 1,
"minLength": 4,
"maxLength": 4
},
"name": {
"dataType": "string",
"fieldNumber": 2,
"minLength": 1,
"maxLength": 32
},
"sidechainValidators": {
"type": "array",
"fieldNumber": 3,
"items": {
"type": "object",
"required": [
"blsKey",
"bftWeight"
],
"properties": {
"blsKey": {
"dataType": "bytes",
"fieldNumber": 1,
"minLength": 48,
"maxLength": 48
},
"bftWeight": {
"dataType": "uint64",
"fieldNumber": 2
}
}
},
"minItems": 1,
"maxItems": 199
},
"sidechainCertificateThreshold": {
"dataType": "uint64",
"fieldNumber": 4
}
}
}
},
{
"name": "recoverState",
"params": {
"$id": "/modules/interoperability/mainchain/commands/stateRecovery",
"type": "object",
"required": [
"chainID",
"module",
"storeEntries",
"siblingHashes"
],
"properties": {
"chainID": {
"dataType": "bytes",
"fieldNumber": 1,
"minLength": 4,
"maxLength": 4
},
"module": {
"dataType": "string",
"fieldNumber": 2,
"minLength": 1,
"maxLength": 32
},
"storeEntries": {
"type": "array",
"fieldNumber": 3,
"items": {
"type": "object",
"properties": {
"substorePrefix": {
"dataType": "bytes",
"fieldNumber": 1,
"minLength": 2,
"maxLength": 2
},
"storeKey": {
"dataType": "bytes",
"fieldNumber": 2
},
"storeValue": {
"dataType": "bytes",
"fieldNumber": 3
},
"bitmap": {
"dataType": "bytes",
"fieldNumber": 4
}
},
"required": [
"substorePrefix",
"storeKey",
"storeValue",
"bitmap"
]
}
},
"siblingHashes": {
"type": "array",
"items": {
"dataType": "bytes",
"minLength": 32,
"maxLength": 32
},
"fieldNumber": 4
}
}
}
},
{
"name": "terminateSidechainForLiveness",
"params": {
"$id": "/modules/interoperability/mainchain/terminateSidechainForLiveness",
"type": "object",
"required": [
"chainID"
],
"properties": {
"chainID": {
"dataType": "bytes",
"fieldNumber": 1,
"minLength": 4,
"maxLength": 4
}
}
}
}
],
"events": [
{
"name": "chainAccountUpdated",
"data": {
"$id": "/modules/interoperability/chainData",
"type": "object",
"required": [
"name",
"lastCertificate",
"status"
],
"properties": {
"name": {
"dataType": "string",
"fieldNumber": 1
},
"lastCertificate": {
"type": "object",
"fieldNumber": 2,
"required": [
"height",
"timestamp",
"stateRoot",
"validatorsHash"
],
"properties": {
"height": {
"dataType": "uint32",
"fieldNumber": 1
},
"timestamp": {
"dataType": "uint32",
"fieldNumber": 2
},
"stateRoot": {
"dataType": "bytes",
"minLength": 32,
"maxLength": 32,
"fieldNumber": 3
},
"validatorsHash": {
"dataType": "bytes",
"minLength": 32,
"maxLength": 32,
"fieldNumber": 4
}
}
},
"status": {
"dataType": "uint32",
"fieldNumber": 3
}
}
}
},
{
"name": "ccmProcessed",
"data": {
"$id": "/interoperability/events/ccmProcessed",
"type": "object",
"required": [
"ccm",
"result",
"code"
],
"properties": {
"ccm": {
"fieldNumber": 1,
"type": "object",
"required": [
"module",
"crossChainCommand",
"nonce",
"fee",
"sendingChainID",
"receivingChainID",
"params",
"status"
],
"properties": {
"module": {
"dataType": "string",
"minLength": 1,
"maxLength": 32,
"fieldNumber": 1
},
"crossChainCommand": {
"dataType": "string",
"minLength": 1,
"maxLength": 32,
"fieldNumber": 2
},
"nonce": {
"dataType": "uint64",
"fieldNumber": 3
},
"fee": {
"dataType": "uint64",
"fieldNumber": 4
},
"sendingChainID": {
"dataType": "bytes",
"minLength": 4,
"maxLength": 4,
"fieldNumber": 5
},
"receivingChainID": {
"dataType": "bytes",
"minLength": 4,
"maxLength": 4,
"fieldNumber": 6
},
"params": {
"dataType": "bytes",
"fieldNumber": 7
},
"status": {
"dataType": "uint32",
"fieldNumber": 8
}
}
},
"result": {
"dataType": "uint32",
"fieldNumber": 2
},
"code": {
"dataType": "uint32",
"fieldNumber": 3
}
}
}
},
{
"name": "ccmSendSuccess",
"data": {
"$id": "/interoperability/events/ccmSendSuccess",
"type": "object",
"required": [
"ccm"
],
"properties": {
"ccm": {
"fieldNumber": 1,
"type": "object",
"required": [
"module",
"crossChainCommand",
"nonce",
"fee",
"sendingChainID",
"receivingChainID",
"params",
"status"
],
"properties": {
"module": {
"dataType": "string",
"minLength": 1,
"maxLength": 32,
"fieldNumber": 1
},
"crossChainCommand": {
"dataType": "string",
"minLength": 1,
"maxLength": 32,
"fieldNumber": 2
},
"nonce": {
"dataType": "uint64",
"fieldNumber": 3
},
"fee": {
"dataType": "uint64",
"fieldNumber": 4
},
"sendingChainID": {
"dataType": "bytes",
"minLength": 4,
"maxLength": 4,
"fieldNumber": 5
},
"receivingChainID": {
"dataType": "bytes",
"minLength": 4,
"maxLength": 4,
"fieldNumber": 6
},
"params": {
"dataType": "bytes",
"fieldNumber": 7
},
"status": {
"dataType": "uint32",
"fieldNumber": 8
}
}
}
}
}
},
{
"name": "ccmSentFailed",
"data": {
"$id": "/interoperability/events/ccmSendFail",
"type": "object",
"required": [
"ccm",
"code"
],
"properties": {
"ccm": {
"$id": "/modules/interoperability/ccm",
"type": "object",
"required": [
"module",
"crossChainCommand",
"nonce",
"fee",
"sendingChainID",
"receivingChainID",
"params",
"status"
],
"properties": {
"module": {
"dataType": "string",
"minLength": 1,
"maxLength": 32,
"fieldNumber": 1
},
"crossChainCommand": {
"dataType": "string",
"minLength": 1,
"maxLength": 32,
"fieldNumber": 2
},
"nonce": {
"dataType": "uint64",
"fieldNumber": 3
},
"fee": {
"dataType": "uint64",
"fieldNumber": 4
},
"sendingChainID": {
"dataType": "bytes",
"minLength": 4,
"maxLength": 4,
"fieldNumber": 5
},
"receivingChainID": {
"dataType": "bytes",
"minLength": 4,
"maxLength": 4,
"fieldNumber": 6
},
"params": {
"dataType": "bytes",
"fieldNumber": 7
},
"status": {
"dataType": "uint32",
"fieldNumber": 8
}
},
"fieldNumber": 1
},
"code": {
"dataType": "uint32",
"fieldNumber": 2
}
}
}
},
{
"name": "invalidRegistrationSignature",
"data": {
"$id": "/lisk/empty",
"type": "object",
"properties": {}
}
},
{
"name": "terminatedStateCreated",
"data": {
"$id": "/modules/interoperability/terminatedState",
"type": "object",
"required": [
"stateRoot",
"mainchainStateRoot",
"initialized"
],
"properties": {
"stateRoot": {
"dataType": "bytes",
"minLength": 32,
"maxLength": 32,
"fieldNumber": 1
},
"mainchainStateRoot": {
"dataType": "bytes",
"minLength": 32,
"maxLength": 32,
"fieldNumber": 2
},
"initialized": {
"dataType": "boolean",
"fieldNumber": 3
}
}
}
},
{
"name": "terminatedOutboxCreated",
"data": {
"$id": "/modules/interoperability/terminatedOutbox",
"type": "object",
"required": [
"outboxRoot",
"outboxSize",
"partnerChainInboxSize"
],
"properties": {
"outboxRoot": {
"dataType": "bytes",
"minLength": 32,
"maxLength": 32,
"fieldNumber": 1
},
"outboxSize": {
"dataType": "uint32",
"fieldNumber": 2
},
"partnerChainInboxSize": {
"dataType": "uint32",
"fieldNumber": 3
}
}
}
},
{
"name": "invalidCertificateSignature",
"data": {
"$id": "/lisk/empty",
"type": "object",
"properties": {}
}
}
],
"stores": [
{
"key": "83ed0d250000",
"data": {
"$id": "/modules/interoperability/outbox",
"type": "object",
"required": [
"root"
],
"properties": {
"root": {
"dataType": "bytes",
"minLength": 32,
"maxLength": 32,
"fieldNumber": 1
}
}
}
},
{
"key": "83ed0d258000",
"data": {
"$id": "/modules/interoperability/chainData",
"type": "object",
"required": [
"name",
"lastCertificate",
"status"
],
"properties": {
"name": {
"dataType": "string",
"fieldNumber": 1
},
"lastCertificate": {
"type": "object",
"fieldNumber": 2,
"required": [
"height",
"timestamp",
"stateRoot",
"validatorsHash"
],
"properties": {
"height": {
"dataType": "uint32",
"fieldNumber": 1
},
"timestamp": {
"dataType": "uint32",
"fieldNumber": 2
},
"stateRoot": {
"dataType": "bytes",
"minLength": 32,
"maxLength": 32,
"fieldNumber": 3
},
"validatorsHash": {
"dataType": "bytes",
"minLength": 32,
"maxLength": 32,
"fieldNumber": 4
}
}
},
"status": {
"dataType": "uint32",
"fieldNumber": 3
}
}
}
},
{
"key": "83ed0d25b000",
"data": {
"$id": "/modules/interoperability/ownChainAccount",
"type": "object",
"required": [
"name",
"chainID",
"nonce"
],
"properties": {
"name": {
"dataType": "string",
"fieldNumber": 1
},
"chainID": {
"dataType": "bytes",
"minLength": 4,
"maxLength": 4,
"fieldNumber": 2
},
"nonce": {
"dataType": "uint64",
"fieldNumber": 3
}
}
}
},
{
"key": "83ed0d25a000",
"data": {
"$id": "/modules/interoperability/channel",
"type": "object",
"required": [
"inbox",
"outbox",
"partnerChainOutboxRoot",
"messageFeeTokenID",
"minReturnFeePerByte"
],
"properties": {
"inbox": {
"type": "object",
"fieldNumber": 1,
"required": [
"appendPath",
"size",
"root"
],
"properties": {
"appendPath": {
"type": "array",
"items": {
"dataType": "bytes",
"minLength": 32,
"maxLength": 32
},
"fieldNumber": 1
},
"size": {
"dataType": "uint32",
"fieldNumber": 2
},
"root": {
"dataType": "bytes",
"minLength": 32,
"maxLength": 32,
"fieldNumber": 3
}
}
},
"outbox": {
"type": "object",
"fieldNumber": 2,
"required": [
"appendPath",
"size",
"root"
],
"properties": {
"appendPath": {
"type": "array",
"items": {
"dataType": "bytes",
"minLength": 32,
"maxLength": 32
},
"fieldNumber": 1
},
"size": {
"dataType": "uint32",
"fieldNumber": 2
},
"root": {
"dataType": "bytes",
"minLength": 32,
"maxLength": 32,
"fieldNumber": 3
}
}
},
"partnerChainOutboxRoot": {
"dataType": "bytes",
"minLength": 32,
"maxLength": 32,
"fieldNumber": 3
},
"messageFeeTokenID": {
"dataType": "bytes",
"minLength": 8,
"maxLength": 8,
"fieldNumber": 4
},
"minReturnFeePerByte": {
"dataType": "uint64",
"fieldNumber": 5
}
}
}
},
{
"key": "83ed0d259000",
"data": {
"$id": "/modules/interoperability/chainValidators",
"type": "object",
"required": [
"activeValidators",
"certificateThreshold"
],
"properties": {
"activeValidators": {
"type": "array",
"fieldNumber": 1,
"minItems": 1,
"maxItems": 199,
"items": {
"type": "object",
"required": [
"blsKey",
"bftWeight"
],
"properties": {
"blsKey": {
"dataType": "bytes",
"minLength": 48,
"maxLength": 48,
"fieldNumber": 1
},
"bftWeight": {
"dataType": "uint64",
"fieldNumber": 2
}
}
}
},
"certificateThreshold": {
"dataType": "uint64",
"fieldNumber": 2
}
}
}
},
{
"key": "83ed0d25c000",
"data": {
"$id": "/modules/interoperability/terminatedState",
"type": "object",
"required": [
"stateRoot",
"mainchainStateRoot",
"initialized"
],
"properties": {
"stateRoot": {
"dataType": "bytes",
"minLength": 32,
"maxLength": 32,
"fieldNumber": 1
},
"mainchainStateRoot": {
"dataType": "bytes",
"minLength": 32,
"maxLength": 32,
"fieldNumber": 2
},
"initialized": {
"dataType": "boolean",
"fieldNumber": 3
}
}
}
},
{
"key": "83ed0d25d000",
"data": {
"$id": "/modules/interoperability/terminatedOutbox",
"type": "object",
"required": [
"outboxRoot",
"outboxSize",
"partnerChainInboxSize"
],
"properties": {
"outboxRoot": {
"dataType": "bytes",
"minLength": 32,
"maxLength": 32,
"fieldNumber": 1
},
"outboxSize": {
"dataType": "uint32",
"fieldNumber": 2
},
"partnerChainInboxSize": {
"dataType": "uint32",
"fieldNumber": 3
}
}
}
},
{
"key": "83ed0d25e000",
"data": {
"$id": "/modules/interoperability/chainId",
"type": "object",
"required": [
"chainID"
],
"properties": {
"chainID": {
"dataType": "bytes",
"minLength": 4,
"maxLength": 4,
"fieldNumber": 1
}
}
}
}
],
"endpoints": [
{
"name": "getChainAccount",
"request": {
"$id": "/modules/interoperability/endpoint/getChainAccountRequest",
"type": "object",
"required": [
"chainID"
],
"properties": {
"chainID": {
"type": "string",
"format": "hex"
}
}
},
"response": {
"$id": "/modules/interoperability/chainData",
"type": "object",
"required": [
"name",
"lastCertificate",
"status"
],
"properties": {
"name": {
"dataType": "string",
"fieldNumber": 1
},
"lastCertificate": {
"type": "object",
"fieldNumber": 2,
"required": [
"height",
"timestamp",
"stateRoot",
"validatorsHash"
],
"properties": {
"height": {
"dataType": "uint32",
"fieldNumber": 1
},
"timestamp": {
"dataType": "uint32",
"fieldNumber": 2
},
"stateRoot": {
"dataType": "bytes",
"minLength": 32,
"maxLength": 32,
"fieldNumber": 3
},
"validatorsHash": {
"dataType": "bytes",
"minLength": 32,
"maxLength": 32,
"fieldNumber": 4
}
}
},
"status": {
"dataType": "uint32",
"fieldNumber": 3
}
}
}
},
{
"name": "getAllChainAccounts",
"request": {
"$id": "/modules/interoperability/endpoint/getChainAccountRequest",
"type": "object",
"required": [
"chainID"
],
"properties": {
"chainID": {
"type": "string",
"format": "hex"
}
}
},
"response": {
"$id": "/modules/interoperability/allChainAccounts",
"type": "object",
"required": [
"chains"
],
"properties": {
"chains": {
"type": "array",
"items": {
"type": "object",
"required": [
"name",
"lastCertificate",
"status"
],
"properties": {
"name": {
"dataType": "string",
"fieldNumber": 1
},
"lastCertificate": {
"type": "object",
"fieldNumber": 2,
"required": [
"height",
"timestamp",
"stateRoot",
"validatorsHash"
],
"properties": {
"height": {
"dataType": "uint32",
"fieldNumber": 1
},
"timestamp": {
"dataType": "uint32",
"fieldNumber": 2
},
"stateRoot": {
"dataType": "string",
"format": "hex",
"fieldNumber": 3
},
"validatorsHash": {
"dataType": "string",
"format": "hex",
"fieldNumber": 4
}
}
},
"status": {
"dataType": "uint32",
"fieldNumber": 3
}
}
}
}
}
}
},
{
"name": "getChannel",
"request": {
"$id": "/modules/interoperability/endpoint/getChainAccountRequest",
"type": "object",
"required": [
"chainID"
],
"properties": {
"chainID": {
"type": "string",
"format": "hex"
}
}
},
"response": {
"$id": "/modules/interoperability/channel",
"type": "object",
"required": [
"inbox",
"outbox",
"partnerChainOutboxRoot",
"messageFeeTokenID",
"minReturnFeePerByte"
],
"properties": {
"inbox": {
"type": "object",
"fieldNumber": 1,
"required": [
"appendPath",
"size",
"root"
],
"properties": {
"appendPath": {
"type": "array",
"items": {
"dataType": "bytes",
"minLength": 32,
"maxLength": 32
},
"fieldNumber": 1
},
"size": {
"dataType": "uint32",
"fieldNumber": 2
},
"root": {
"dataType": "bytes",
"minLength": 32,
"maxLength": 32,
"fieldNumber": 3
}
}
},
"outbox": {
"type": "object",
"fieldNumber": 2,
"required": [
"appendPath",
"size",
"root"
],
"properties": {
"appendPath": {
"type": "array",
"items": {
"dataType": "bytes",
"minLength": 32,
"maxLength": 32
},
"fieldNumber": 1
},
"size": {
"dataType": "uint32",
"fieldNumber": 2
},
"root": {
"dataType": "bytes",
"minLength": 32,
"maxLength": 32,
"fieldNumber": 3
}
}
},
"partnerChainOutboxRoot": {
"dataType": "bytes",
"minLength": 32,
"maxLength": 32,
"fieldNumber": 3
},
"messageFeeTokenID": {
"dataType": "bytes",
"minLength": 8,
"maxLength": 8,
"fieldNumber": 4
},
"minReturnFeePerByte": {
"dataType": "uint64",
"fieldNumber": 5
}
}
}
},
{
"name": "getOwnChainAccount",
"response": {
"$id": "/modules/interoperability/ownChainAccount",
"type": "object",
"required": [
"name",
"chainID",
"nonce"
],
"properties": {
"name": {
"dataType": "string",
"fieldNumber": 1
},
"chainID": {
"dataType": "bytes",
"minLength": 4,
"maxLength": 4,
"fieldNumber": 2
},
"nonce": {
"dataType": "uint64",
"fieldNumber": 3
}
}
}
},
{
"name": "getTerminatedStateAccount",
"request": {
"$id": "/modules/interoperability/endpoint/getChainAccountRequest",
"type": "object",
"required": [
"chainID"
],
"properties": {
"chainID": {
"type": "string",
"format": "hex"
}
}
},
"response": {
"$id": "/modules/interoperability/terminatedState",
"type": "object",
"required": [
"stateRoot",
"mainchainStateRoot",
"initialized"
],
"properties": {
"stateRoot": {
"dataType": "bytes",
"minLength": 32,
"maxLength": 32,
"fieldNumber": 1
},
"mainchainStateRoot": {
"dataType": "bytes",
"minLength": 32,
"maxLength": 32,
"fieldNumber": 2
},
"initialized": {
"dataType": "boolean",
"fieldNumber": 3
}
}
}
},
{
"name": "getTerminatedOutboxAccount",
"request": {
"$id": "/modules/interoperability/endpoint/getChainAccountRequest",
"type": "object",
"required": [
"chainID"
],
"properties": {
"chainID": {
"type": "string",
"format": "hex"
}
}
},
"response": {
"$id": "/modules/interoperability/terminatedOutbox",
"type": "object",
"required": [
"outboxRoot",
"outboxSize",
"partnerChainInboxSize"
],
"properties": {
"outboxRoot": {
"dataType": "bytes",
"minLength": 32,
"maxLength": 32,
"fieldNumber": 1
},
"outboxSize": {
"dataType": "uint32",
"fieldNumber": 2
},
"partnerChainInboxSize": {
"dataType": "uint32",
"fieldNumber": 3
}
}
}
},
{
"name": "getRegistrationFee",
"response": {
"$id": "/modules/interoperability/mainchain/registrationFee",
"type": "object",
"required": [
"registrationFee"
],
"properties": {
"registrationFee": {
"type": "string"
}
}
}
},
{
"name": "getMinimumMessageFee",
"response": {
"$id": "/modules/interoperability/mainchain/minimumMessageFeeResponse",
"type": "object",
"required": [
"fee"
],
"properties": {
"fee": {
"type": "string"
}
}
}
},
{
"name": "getChainValidators",
"request": {
"$id": "/modules/interoperability/endpoint/getChainAccountRequest",
"type": "object",
"required": [
"chainID"
],
"properties": {
"chainID": {
"type": "string",
"format": "hex"
}
}
},
"response": {
"$id": "/modules/interoperability/validatorsHashInput",
"type": "object",
"required": [
"activeValidators",
"certificateThreshold"
],
"properties": {
"activeValidators": {
"type": "array",
"fieldNumber": 1,
"items": {
"type": "object",
"required": [
"blsKey",
"bftWeight"
],
"properties": {
"blsKey": {
"dataType": "bytes",
"fieldNumber": 1
},
"bftWeight": {
"dataType": "uint64",
"fieldNumber": 2
}
}
}
},
"certificateThreshold": {
"dataType": "uint64",
"fieldNumber": 2
}
}
}
},
{
"name": "isChainIDAvailable",
"request": {
"$id": "/modules/interoperability/endpoint/getChainAccountRequest",
"type": "object",
"required": [
"chainID"
],
"properties": {
"chainID": {
"type": "string",
"format": "hex"
}
}
},
"response": {
"$id": "/modules/interoperability/endpoint/isChainIDAvailableResponseSchema",
"type": "object",
"required": [
"result"
],
"properties": {
"result": {
"type": "boolean"
}
}
}
},
{
"name": "isChainNameAvailable",
"request": {
"$id": "/modules/interoperability/endpoint/isChainNameAvailableRequest",
"type": "object",
"required": [
"name"
],
"properties": {
"name": {
"dataType": "string",
"fieldNumber": 1
}
}
},
"response": {
"$id": "/modules/interoperability/endpoint/isChainNameAvailableResponseSchema",
"type": "object",
"required": [
"result"
],
"properties": {
"result": {
"type": "boolean"
}
}
}
}
],
"assets": [
{
"version": 0,
"data": {
"$id": "/interoperability/module/genesis",
"type": "object",
"required": [
"outboxRootSubstore",
"chainDataSubstore",
"channelDataSubstore",
"chainValidatorsSubstore",
"ownChainDataSubstore",
"terminatedStateSubstore",
"terminatedOutboxSubstore",
"registeredNamesSubstore"
],
"properties": {
"outboxRootSubstore": {
"type": "array",
"fieldNumber": 1,
"items": {
"type": "object",
"required": [
"storeKey",
"storeValue"
],
"properties": {
"storeKey": {
"dataType": "bytes",
"fieldNumber": 1
},
"storeValue": {
"$id": "/modules/interoperability/outbox",
"type": "object",
"required": [
"root"
],
"properties": {
"root": {
"dataType": "bytes",
"minLength": 32,
"maxLength": 32,
"fieldNumber": 1
}
},
"fieldNumber": 2
}
}
}
},
"chainDataSubstore": {
"type": "array",
"fieldNumber": 2,
"items": {
"type": "object",
"required": [
"storeKey",
"storeValue"
],
"properties": {
"storeKey": {
"dataType": "bytes",
"fieldNumber": 1
},
"storeValue": {
"$id": "/modules/interoperability/chainData",
"type": "object",
"required": [
"name",
"lastCertificate",
"status"
],
"properties": {
"name": {
"dataType": "string",
"fieldNumber": 1
},
"lastCertificate": {
"type": "object",
"fieldNumber": 2,
"required": [
"height",
"timestamp",
"stateRoot",
"validatorsHash"
],
"properties": {
"height": {
"dataType": "uint32",
"fieldNumber": 1
},
"timestamp": {
"dataType": "uint32",
"fieldNumber": 2
},
"stateRoot": {
"dataType": "bytes",
"minLength": 32,
"maxLength": 32,
"fieldNumber": 3
},
"validatorsHash": {
"dataType": "bytes",
"minLength": 32,
"maxLength": 32,
"fieldNumber": 4
}
}
},
"status": {
"dataType": "uint32",
"fieldNumber": 3
}
},
"fieldNumber": 2
}
}
}
},
"channelDataSubstore": {
"type": "array",
"fieldNumber": 3,
"items": {
"type": "object",
"required": [
"storeKey",
"storeValue"
],
"properties": {
"storeKey": {
"dataType": "bytes",
"fieldNumber": 1
},
"storeValue": {
"$id": "/modules/interoperability/channel",
"type": "object",
"required": [
"inbox",
"outbox",
"partnerChainOutboxRoot",
"messageFeeTokenID",
"minReturnFeePerByte"
],
"properties": {
"inbox": {
"type": "object",
"fieldNumber": 1,
"required": [
"appendPath",
"size",
"root"
],
"properties": {
"appendPath": {
"type": "array",
"items": {
"dataType": "bytes",
"minLength": 32,
"maxLength": 32
},
"fieldNumber": 1
},
"size": {
"dataType": "uint32",
"fieldNumber": 2
},
"root": {
"dataType": "bytes",
"minLength": 32,
"maxLength": 32,
"fieldNumber": 3
}
}
},
"outbox": {
"type": "object",
"fieldNumber": 2,
"required": [
"appendPath",
"size",
"root"
],
"properties": {
"appendPath": {
"type": "array",
"items": {
"dataType": "bytes",
"minLength": 32,
"maxLength": 32
},
"fieldNumber": 1
},
"size": {
"dataType": "uint32",
"fieldNumber": 2
},
"root": {
"dataType": "bytes",
"minLength": 32,
"maxLength": 32,
"fieldNumber": 3
}
}
},
"partnerChainOutboxRoot": {
"dataType": "bytes",
"minLength": 32,
"maxLength": 32,
"fieldNumber": 3
},
"messageFeeTokenID": {
"dataType": "bytes",
"minLength": 8,
"maxLength": 8,
"fieldNumber": 4
},
"minReturnFeePerByte": {
"dataType": "uint64",
"fieldNumber": 5
}
},
"fieldNumber": 2
}
}
}
},
"chainValidatorsSubstore": {
"type": "array",
"fieldNumber": 4,
"items": {
"type": "object",
"required": [
"storeKey",
"storeValue"
],
"properties": {
"storeKey": {
"dataType": "bytes",
"fieldNumber": 1
},
"storeValue": {
"fieldNumber": 2,
"$id": "/modules/interoperability/chainValidators",
"type": "object",
"required": [
"activeValidators",
"certificateThreshold"
],
"properties": {
"activeValidators": {
"type": "array",
"fieldNumber": 1,
"minItems": 1,
"maxItems": 199,
"items": {
"type": "object",
"required": [
"blsKey",
"bftWeight"
],
"properties": {
"blsKey": {
"dataType": "bytes",
"minLength": 48,
"maxLength": 48,
"fieldNumber": 1
},
"bftWeight": {
"dataType": "uint64",
"fieldNumber": 2
}
}
}
},
"certificateThreshold": {
"dataType": "uint64",
"fieldNumber": 2
}
}
}
}
}
},
"ownChainDataSubstore": {
"type": "array",
"fieldNumber": 5,
"items": {
"type": "object",
"required": [
"storeKey",
"storeValue"
],
"properties": {
"storeKey": {
"dataType": "bytes",
"fieldNumber": 1
},
"storeValue": {
"$id": "/modules/interoperability/ownChainAccount",
"type": "object",
"required": [
"name",
"chainID",
"nonce"
],
"properties": {
"name": {
"dataType": "string",
"fieldNumber": 1
},
"chainID": {
"dataType": "bytes",
"minLength": 4,
"maxLength": 4,
"fieldNumber": 2
},
"nonce": {
"dataType": "uint64",
"fieldNumber": 3
}
},
"fieldNumber": 2
}
}
}
},
"terminatedStateSubstore": {
"type": "array",
"fieldNumber": 6,
"items": {
"type": "object",
"required": [
"storeKey",
"storeValue"
],
"properties": {
"storeKey": {
"dataType": "bytes",
"fieldNumber": 1
},
"storeValue": {
"$id": "/modules/interoperability/terminatedState",
"type": "object",
"required": [
"stateRoot",
"mainchainStateRoot",
"initialized"
],
"properties": {
"stateRoot": {
"dataType": "bytes",
"minLength": 32,
"maxLength": 32,
"fieldNumber": 1
},
"mainchainStateRoot": {
"dataType": "bytes",
"minLength": 32,
"maxLength": 32,
"fieldNumber": 2
},
"initialized": {
"dataType": "boolean",
"fieldNumber": 3
}
},
"fieldNumber": 2
}
}
}
},
"terminatedOutboxSubstore": {
"type": "array",
"fieldNumber": 7,
"items": {
"type": "object",
"required": [
"storeKey",
"storeValue"
],
"properties": {
"storeKey": {
"dataType": "bytes",
"fieldNumber": 1
},
"storeValue": {
"$id": "/modules/interoperability/terminatedOutbox",
"type": "object",
"required": [
"outboxRoot",
"outboxSize",
"partnerChainInboxSize"
],
"properties": {
"outboxRoot": {
"dataType": "bytes",
"minLength": 32,
"maxLength": 32,
"fieldNumber": 1
},
"outboxSize": {
"dataType": "uint32",
"fieldNumber": 2
},
"partnerChainInboxSize": {
"dataType": "uint32",
"fieldNumber": 3
}
},
"fieldNumber": 2
}
}
}
},
"registeredNamesSubstore": {
"type": "array",
"fieldNumber": 8,
"items": {
"type": "object",
"required": [
"storeKey",
"storeValue"
],
"properties": {
"storeKey": {
"dataType": "bytes",
"fieldNumber": 1
},
"storeValue": {
"$id": "/modules/interoperability/chainId",
"type": "object",
"required": [
"chainID"
],
"properties": {
"chainID": {
"dataType": "bytes",
"minLength": 4,
"maxLength": 4,
"fieldNumber": 1
}
},
"fieldNumber": 2
}
}
}
}
}
}
}
],
"name": "interoperability"
},
{
"endpoints": [
{
"name": "getLegacyAccount",
"request": {
"$id": "/legacy/endpoint/legacyAccountRequest",
"type": "object",
"required": [
"publicKey"
],
"properties": {
"publicKey": {
"type": "string",
"format": "hex"
}
}
},
"response": {
"$id": "/legacy/store/genesis",
"type": "object",
"required": [
"balance"
],
"properties": {
"balance": {
"dataType": "uint64",
"fieldNumber": 1
}
}
}
}
],
"commands": [
{
"name": "reclaimLSK",
"params": {
"$id": "/legacy/command/reclaimLSKParams",
"type": "object",
"required": [
"amount"
],
"properties": {
"amount": {
"dataType": "uint64",
"fieldNumber": 1
}
}
}
},
{
"name": "registerKeys",
"params": {
"$id": "/legacy/command/registerKeysParams",
"type": "object",
"required": [
"blsKey",
"proofOfPossession",
"generatorKey"
],
"properties": {
"blsKey": {
"dataType": "bytes",
"minLength": 48,
"maxLength": 48,
"fieldNumber": 1
},
"proofOfPossession": {
"dataType": "bytes",
"minLength": 96,
"maxLength": 96,
"fieldNumber": 2
},
"generatorKey": {
"dataType": "bytes",
"minLength": 32,
"maxLength": 32,
"fieldNumber": 3
}
}
}
}
],
"events": [
{
"name": "accountReclaimed",
"data": {
"$id": "lisk/legacy/accountReclaimedEventData",
"type": "object",
"required": [
"legacyAddress",
"address",
"amount"
],
"properties": {
"legacyAddress": {
"dataType": "bytes",
"maxLength": 8,
"fieldNumber": 1
},
"address": {
"dataType": "bytes",
"maxLength": 20,
"fieldNumber": 2
},
"amount": {
"dataType": "uint64",
"fieldNumber": 3
}
}
}
},
{
"name": "keysRegistered",
"data": {
"$id": "lisk/legacy/keysRegisteredEventData",
"type": "object",
"required": [
"address",
"generatorKey",
"blsKey"
],
"properties": {
"address": {
"dataType": "bytes",
"maxLength": 20,
"fieldNumber": 1
},
"generatorKey": {
"dataType": "bytes",
"maxLength": 32,
"fieldNumber": 2
},
"blsKey": {
"dataType": "bytes",
"maxLength": 48,
"fieldNumber": 3
}
}
}
}
],
"assets": [
{
"version": 0,
"data": {
"$id": "/legacy/module/genesis",
"type": "object",
"required": [
"accounts"
],
"properties": {
"accounts": {
"type": "array",
"fieldNumber": 1,
"items": {
"type": "object",
"required": [
"address",
"balance"
],
"properties": {
"address": {
"dataType": "bytes",
"minLength": 8,
"maxLength": 8,
"fieldNumber": 1
},
"balance": {
"dataType": "uint64",
"fieldNumber": 2
}
}
}
}
}
}
}
],
"stores": [],
"name": "legacy"
},
{
"commands": [
{
"name": "registerValidator",
"params": {
"$id": "/pos/command/registerValidatorParams",
"type": "object",
"required": [
"name",
"blsKey",
"proofOfPossession",
"generatorKey"
],
"properties": {
"name": {
"dataType": "string",
"fieldNumber": 1
},
"blsKey": {
"dataType": "bytes",
"minLength": 48,
"maxLength": 48,
"fieldNumber": 2
},
"proofOfPossession": {
"dataType": "bytes",
"minLength": 96,
"maxLength": 96,
"fieldNumber": 3
},
"generatorKey": {
"dataType": "bytes",
"minLength": 32,
"maxLength": 32,
"fieldNumber": 4
}
}
}
},
{
"name": "reportMisbehavior",
"params": {
"$id": "/pos/command/reportMisbehaviorParams",
"type": "object",
"required": [
"header1",
"header2"
],
"properties": {
"header1": {
"dataType": "bytes",
"fieldNumber": 1
},
"header2": {
"dataType": "bytes",
"fieldNumber": 2
}
}
}
},
{
"name": "unlock",
"params": {
"$id": "/lisk/empty",
"type": "object",
"properties": {}
}
},
{
"name": "updateGeneratorKey",
"params": {
"$id": "/pos/command/updateGeneratorKeyParams",
"type": "object",
"required": [
"generatorKey"
],
"properties": {
"generatorKey": {
"dataType": "bytes",
"fieldNumber": 1,
"minLength": 32,
"maxLength": 32
}
}
}
},
{
"name": "stake",
"params": {
"$id": "/pos/command/stakeValidatorParams",
"type": "object",
"required": [
"stakes"
],
"properties": {
"stakes": {
"type": "array",
"fieldNumber": 1,
"minItems": 1,
"maxItems": 20,
"items": {
"type": "object",
"required": [
"validatorAddress",
"amount"
],
"properties": {
"validatorAddress": {
"dataType": "bytes",
"fieldNumber": 1,
"format": "lisk32"
},
"amount": {
"dataType": "sint64",
"fieldNumber": 2
}
}
}
}
}
}
},
{
"name": "changeCommission",
"params": {
"$id": "/pos/command/changeCommissionCommandParams",
"type": "object",
"required": [
"newCommission"
],
"properties": {
"newCommission": {
"dataType": "uint32",
"fieldNumber": 1,
"maximum": 10000
}
}
}
},
{
"name": "claimRewards",
"params": {
"$id": "/lisk/empty",
"type": "object",
"properties": {}
}
}
],
"events": [
{
"name": "validatorBanned",
"data": {
"$id": "/pos/events/validatorBannedData",
"type": "object",
"required": [
"address",
"height"
],
"properties": {
"address": {
"dataType": "bytes",
"fieldNumber": 1,
"format": "lisk32"
},
"height": {
"dataType": "uint32",
"fieldNumber": 2
}
}
}
},
{
"name": "validatorPunished",
"data": {
"$id": "/pos/events/punishValidatorData",
"type": "object",
"required": [
"address",
"height"
],
"properties": {
"address": {
"dataType": "bytes",
"fieldNumber": 1,
"format": "lisk32"
},
"height": {
"dataType": "uint32",
"fieldNumber": 2
}
}
}
},
{
"name": "validatorRegistered",
"data": {
"$id": "/pos/events/registerValidatorData",
"type": "object",
"required": [
"address",
"name"
],
"properties": {
"address": {
"dataType": "bytes",
"fieldNumber": 1,
"format": "lisk32"
},
"name": {
"dataType": "string",
"fieldNumber": 2
}
}
}
},
{
"name": "validatorStaked",
"data": {
"$id": "/pos/events/validatorStakedData",
"type": "object",
"required": [
"senderAddress",
"validatorAddress",
"amount",
"result"
],
"properties": {
"senderAddress": {
"dataType": "bytes",
"fieldNumber": 1,
"format": "lisk32"
},
"validatorAddress": {
"dataType": "bytes",
"fieldNumber": 2,
"format": "lisk32"
},
"amount": {
"dataType": "sint64",
"fieldNumber": 3
},
"result": {
"dataType": "uint32",
"fieldNumber": 4
}
}
}
},
{
"name": "commissionChange",
"data": {
"$id": "/pos/events/commissionChangeData",
"type": "object",
"required": [
"validatorAddress",
"oldCommission",
"newCommission"
],
"properties": {
"validatorAddress": {
"dataType": "bytes",
"format": "lisk32",
"fieldNumber": 1
},
"oldCommission": {
"dataType": "uint32",
"fieldNumber": 2
},
"newCommission": {
"dataType": "uint32",
"fieldNumber": 3
}
}
}
},
{
"name": "rewardsAssigned",
"data": {
"$id": "/pos/events/rewardsAssignedData",
"type": "object",
"required": [
"stakerAddress",
"validatorAddress",
"tokenID",
"amount"
],
"properties": {
"stakerAddress": {
"dataType": "bytes",
"format": "lisk32",
"fieldNumber": 1
},
"validatorAddress": {
"dataType": "bytes",
"format": "lisk32",
"fieldNumber": 2
},
"tokenID": {
"dataType": "bytes",
"minLength": 8,
"maxLength": 8,
"fieldNumber": 3
},
"amount": {
"dataType": "uint64",
"fieldNumber": 4
}
}
}
}
],
"stores": [
{
"key": "7160f8680000",
"data": {
"$id": "/pos/staker",
"type": "object",
"required": [
"stakes",
"pendingUnlocks"
],
"properties": {
"stakes": {
"type": "array",
"fieldNumber": 1,
"items": {
"type": "object",
"required": [
"validatorAddress",
"amount",
"sharingCoefficients"
],
"properties": {
"validatorAddress": {
"dataType": "bytes",
"fieldNumber": 1,
"format": "lisk32"
},
"amount": {
"dataType": "uint64",
"fieldNumber": 2
},
"sharingCoefficients": {
"type": "array",
"fieldNumber": 3,
"items": {
"type": "object",
"required": [
"tokenID",
"coefficient"
],
"properties": {
"tokenID": {
"dataType": "bytes",
"fieldNumber": 1,
"minLength": 8,
"maxLength": 8
},
"coefficient": {
"dataType": "bytes",
"fieldNumber": 2,
"maxLength": 24
}
}
}
}
}
}
},
"pendingUnlocks": {
"type": "array",
"fieldNumber": 2,
"items": {
"type": "object",
"required": [
"validatorAddress",
"amount",
"unstakeHeight"
],
"properties": {
"validatorAddress": {
"dataType": "bytes",
"fieldNumber": 1,
"format": "lisk32"
},
"amount": {
"dataType": "uint64",
"fieldNumber": 2
},
"unstakeHeight": {
"dataType": "uint32",
"fieldNumber": 3
}
}
}
}
}
}
},
{
"key": "7160f8688000",
"data": {
"$id": "/pos/validator",
"type": "object",
"required": [
"name",
"totalStake",
"selfStake",
"lastGeneratedHeight",
"isBanned",
"reportMisbehaviorHeights",
"consecutiveMissedBlocks",
"commission",
"lastCommissionIncreaseHeight",
"sharingCoefficients"
],
"properties": {
"name": {
"dataType": "string",
"fieldNumber": 1
},
"totalStake": {
"dataType": "uint64",
"fieldNumber": 2
},
"selfStake": {
"dataType": "uint64",
"fieldNumber": 3
},
"lastGeneratedHeight": {
"dataType": "uint32",
"fieldNumber": 4
},
"isBanned": {
"dataType": "boolean",
"fieldNumber": 5
},
"reportMisbehaviorHeights": {
"type": "array",
"fieldNumber": 6,
"items": {
"dataType": "uint32"
}
},
"consecutiveMissedBlocks": {
"dataType": "uint32",
"fieldNumber": 7
},
"commission": {
"dataType": "uint32",
"fieldNumber": 8
},
"lastCommissionIncreaseHeight": {
"dataType": "uint32",
"fieldNumber": 9
},
"sharingCoefficients": {
"type": "array",
"fieldNumber": 10,
"items": {
"type": "object",
"required": [
"tokenID",
"coefficient"
],
"properties": {
"tokenID": {
"dataType": "bytes",
"fieldNumber": 1,
"minLength": 8,
"maxLength": 8
},
"coefficient": {
"dataType": "bytes",
"fieldNumber": 2,
"maxLength": 24
}
}
}
}
}
}
},
{
"key": "7160f8684000",
"data": {
"$id": "/pos/name",
"type": "object",
"required": [
"validatorAddress"
],
"properties": {
"validatorAddress": {
"dataType": "bytes",
"fieldNumber": 1,
"format": "lisk32"
}
}
}
},
{
"key": "7160f868c000",
"data": {
"$id": "/pos/store/snapshot",
"type": "object",
"required": [
"validatorWeightSnapshot"
],
"properties": {
"validatorWeightSnapshot": {
"type": "array",
"fieldNumber": 1,
"items": {
"type": "object",
"required": [
"address",
"weight"
],
"properties": {
"address": {
"dataType": "bytes",
"fieldNumber": 1,
"format": "lisk32"
},
"weight": {
"dataType": "uint64",
"fieldNumber": 2
}
}
}
}
}
}
},
{
"key": "7160f8682000",
"data": {
"$id": "/pos/store/genesis",
"type": "object",
"required": [
"height",
"initRounds",
"initValidators"
],
"properties": {
"height": {
"dataType": "uint32",
"fieldNumber": 1
},
"initRounds": {
"dataType": "uint32",
"fieldNumber": 2
},
"initValidators": {
"type": "array",
"fieldNumber": 3,
"items": {
"dataType": "bytes",
"format": "lisk32"
}
}
}
}
},
{
"key": "7160f868a000",
"data": {
"$id": "/pos/store/previousTimestamp",
"type": "object",
"required": [
"timestamp"
],
"properties": {
"timestamp": {
"dataType": "uint32",
"fieldNumber": 1
}
}
}
},
{
"key": "7160f8686000",
"data": {
"$id": "/pos/eligibleValidators",
"type": "object",
"required": [
"lastReportMisbehaviorHeight"
],
"properties": {
"lastReportMisbehaviorHeight": {
"dataType": "uint32",
"fieldNumber": 1
}
}
}
}
],
"endpoints": [
{
"name": "getAllValidators",
"response": {
"$id": "modules/pos/endpoint/getAllValidatorsResponse",
"type": "object",
"required": [
"validators"
],
"properties": {
"validators": {
"type": "array",
"items": {
"type": "object",
"required": [
"address",
"name",
"totalStakeReceived",
"selfStake",
"lastGeneratedHeight",
"isBanned",
"pomHeights",
"punishmentPeriods",
"consecutiveMissedBlocks"
],
"properties": {
"address": {
"type": "string",
"format": "lisk32"
},
"name": {
"type": "string"
},
"totalStakeReceived": {
"type": "string",
"format": "uint64"
},
"selfStake": {
"type": "string",
"format": "uint64"
},
"lastGeneratedHeight": {
"type": "integer",
"format": "uint32"
},
"isBanned": {
"type": "boolean"
},
"pomHeights": {
"type": "array",
"items": {
"type": "integer",
"format": "uint32"
}
},
"punishmentPeriods": {
"type": "array",
"items": {
"type": "object",
"required": [
"start",
"end"
],
"properties": {
"start": {
"type": "integer",
"format": "uint32"
},
"end": {
"type": "integer",
"format": "uint32"
}
}
}
},
"consecutiveMissedBlocks": {
"type": "integer",
"format": "uint32"
}
}
}
}
}
}
},
{
"name": "getValidator",
"request": {
"$id": "modules/pos/endpoint/getValidatorRequest",
"type": "object",
"required": [
"address"
],
"properties": {
"address": {
"type": "string",
"format": "lisk32"
}
}
},
"response": {
"$id": "modules/pos/endpoint/getValidatorResponse",
"type": "object",
"required": [
"address",
"name",
"totalStakeReceived",
"selfStake",
"lastGeneratedHeight",
"isBanned",
"pomHeights",
"punishmentPeriods",
"consecutiveMissedBlocks"
],
"properties": {
"address": {
"type": "string",
"format": "lisk32"
},
"name": {
"type": "string"
},
"totalStakeReceived": {
"type": "string",
"format": "uint64"
},
"selfStake": {
"type": "string",
"format": "uint64"
},
"lastGeneratedHeight": {
"type": "integer",
"format": "uint32"
},
"isBanned": {
"type": "boolean"
},
"pomHeights": {
"type": "array",
"items": {
"type": "integer",
"format": "uint32"
}
},
"punishmentPeriods": {
"type": "array",
"items": {
"type": "object",
"required": [
"start",
"end"
],
"properties": {
"start": {
"type": "integer",
"format": "uint32"
},
"end": {
"type": "integer",
"format": "uint32"
}
}
}
},
"consecutiveMissedBlocks": {
"type": "integer",
"format": "uint32"
}
}
}
},
{
"name": "getStaker",
"request": {
"$id": "modules/pos/endpoint/getValidatorRequest",
"type": "object",
"required": [
"address"
],
"properties": {
"address": {
"type": "string",
"format": "lisk32"
}
}
},
"response": {
"$id": "modules/pos/endpoint/getStakerResponse",
"type": "object",
"required": [
"stakes",
"pendingUnlocks"
],
"properties": {
"stakes": {
"type": "array",
"fieldNumber": 1,
"items": {
"type": "object",
"required": [
"validatorAddress",
"amount"
],
"properties": {
"validatorAddress": {
"type": "string",
"format": "lisk32"
},
"amount": {
"type": "string",
"format": "uint64"
}
}
}
},
"pendingUnlocks": {
"type": "array",
"fieldNumber": 2,
"items": {
"type": "object",
"required": [
"validatorAddress",
"amount",
"unstakeHeight"
],
"properties": {
"validatorAddress": {
"type": "string",
"format": "lisk32"
},
"amount": {
"type": "string",
"format": "uint64"
},
"unstakeHeight": {
"type": "integer",
"format": "uint32"
}
}
}
}
}
}
},
{
"name": "getConstants",
"response": {
"$id": "/pos/config",
"type": "object",
"properties": {
"factorSelfStakes": {
"type": "integer",
"format": "uint32"
},
"maxLengthName": {
"type": "integer",
"format": "uint32"
},
"maxNumberSentStakes": {
"type": "integer",
"format": "uint32"
},
"maxNumberPendingUnlocks": {
"type": "integer",
"format": "uint32"
},
"failSafeMissedBlocks": {
"type": "integer",
"format": "uint32"
},
"failSafeInactiveWindow": {
"type": "integer",
"format": "uint32"
},
"punishmentWindow": {
"type": "integer",
"format": "uint32"
},
"roundLength": {
"type": "integer",
"format": "uint32"
},
"minWeightStandby": {
"type": "string",
"format": "uint64"
},
"numberActiveValidators": {
"type": "integer",
"format": "uint32"
},
"numberStandbyValidators": {
"type": "integer",
"format": "uint32"
},
"posTokenID": {
"type": "string",
"format": "hex"
},
"validatorRegistrationFee": {
"type": "string",
"format": "uint64"
},
"maxBFTWeightCap": {
"type": "integer",
"format": "uint32",
"minimum": 1,
"maximum": 9999
},
"commissionIncreasePeriod": {
"type": "integer",
"format": "uint32"
},
"maxCommissionIncreaseRate": {
"type": "integer",
"format": "uint32"
},
"useInvalidBLSKey": {
"type": "boolean"
}
},
"required": [
"factorSelfStakes",
"maxLengthName",
"maxNumberSentStakes",
"maxNumberPendingUnlocks",
"failSafeMissedBlocks",
"failSafeInactiveWindow",
"punishmentWindow",
"roundLength",
"minWeightStandby",
"numberActiveValidators",
"numberStandbyValidators",
"posTokenID",
"validatorRegistrationFee",
"maxBFTWeightCap",
"useInvalidBLSKey"
]
}
},
{
"name": "getPoSTokenID",
"response": {
"$id": "modules/pos/endpoint/getPoSTokenIDResponse",
"type": "object",
"required": [
"tokenID"
],
"properties": {
"tokenID": {
"type": "string",
"format": "hex"
}
}
}
},
{
"name": "getClaimableRewards",
"request": {
"$id": "modules/pos/endpoint/getClaimableRewardsRequest",
"type": "object",
"required": [
"address"
],
"properties": {
"address": {
"type": "string",
"format": "lisk32"
}
}
},
"response": {
"$id": "modules/pos/endpoint/getClaimableRewardsResponse",
"type": "object",
"properties": {
"rewards": {
"items": {
"type": "object",
"required": [
"tokenID",
"reward"
],
"properties": {
"tokenID": {
"type": "string",
"format": "hex"
},
"reward": {
"type": "string",
"format": "uint64"
}
}
}
}
}
}
},
{
"name": "getLockedReward",
"request": {
"$id": "modules/pos/endpoint/getLockedRewardRequest",
"type": "object",
"required": [
"address",
"tokenID"
],
"properties": {
"address": {
"type": "string",
"format": "lisk32"
},
"tokenID": {
"type": "string",
"format": "hex"
}
}
},
"response": {
"$id": "modules/pos/endpoint/getLockedRewardResponse",
"type": "object",
"required": [
"reward"
],
"properties": {
"reward": {
"type": "string",
"format": "uint64"
}
}
}
},
{
"name": "getLockedStakedAmount",
"request": {
"$id": "modules/pos/endpoint/getLockedStakedAmountRequest",
"type": "object",
"required": [
"address"
],
"properties": {
"address": {
"type": "string",
"format": "lisk32"
}
}
},
"response": {
"$id": "modules/pos/endpoint/getLockedStakedAmountResponse",
"type": "object",
"required": [
"amount"
],
"properties": {
"amount": {
"type": "string",
"format": "uint64"
}
}
}
},
{
"name": "getValidatorsByStake",
"request": {
"$id": "modules/pos/endpoint/getValidatorsByStakeRequest",
"type": "object",
"properties": {
"limit": {
"type": "integer",
"format": "int32"
}
}
},
"response": {
"$id": "modules/pos/endpoint/getValidatorsByStakeResponse",
"type": "object",
"required": [
"validators"
],
"properties": {
"validators": {
"type": "array",
"items": {
"type": "object",
"required": [
"address",
"name",
"totalStakeReceived",
"selfStake",
"lastGeneratedHeight",
"isBanned",
"pomHeights",
"punishmentPeriods",
"consecutiveMissedBlocks"
],
"properties": {
"address": {
"type": "string",
"format": "lisk32"
},
"name": {
"type": "string"
},
"totalStakeReceived": {
"type": "string",
"format": "uint64"
},
"selfStake": {
"type": "string",
"format": "uint64"
},
"lastGeneratedHeight": {
"type": "integer",
"format": "uint32"
},
"isBanned": {
"type": "boolean"
},
"pomHeights": {
"type": "array",
"items": {
"type": "integer",
"format": "uint32"
}
},
"punishmentPeriods": {
"type": "array",
"items": {
"type": "object",
"required": [
"start",
"end"
],
"properties": {
"start": {
"type": "integer",
"format": "uint32"
},
"end": {
"type": "integer",
"format": "uint32"
}
}
}
},
"consecutiveMissedBlocks": {
"type": "integer",
"format": "uint32"
}
}
}
}
}
}
},
{
"name": "getPendingUnlocks",
"request": {
"$id": "modules/pos/endpoint/getPendingUnlocksRequest",
"type": "object",
"required": [
"address"
],
"properties": {
"address": {
"type": "string",
"format": "lisk32"
}
}
},
"response": {
"$id": "modules/pos/endpoint/getPendingUnlocksResponse",
"type": "object",
"required": [
"amount"
],
"properties": {
"pendingUnlocks": {
"type": "array",
"items": {
"type": "object",
"required": [
"validatorAddress",
"amount",
"unstakeHeight",
"expectedUnlockableHeight",
"unlockable"
],
"properties": {
"validatorAddress": {
"type": "string",
"format": "lisk32"
},
"amount": {
"type": "string",
"format": "uint64"
},
"unstakeHeight": {
"type": "integer",
"format": "uint32"
},
"expectedUnlockableHeight": {
"type": "integer",
"format": "uint32"
},
"unlockable": {
"type": "boolean"
}
}
}
}
}
}
},
{
"name": "getRegistrationFee",
"response": {
"$id": "modules/pos/endpoint/getRegistrationFeeResponse",
"type": "object",
"required": [
"registrationFee"
],
"properties": {
"registrationFee": {
"type": "string"
}
}
}
}
],
"assets": [
{
"version": 0,
"data": {
"$id": "/pos/module/genesis",
"type": "object",
"required": [
"validators",
"stakers",
"genesisData"
],
"properties": {
"validators": {
"type": "array",
"fieldNumber": 1,
"items": {
"type": "object",
"required": [
"address",
"name",
"blsKey",
"proofOfPossession",
"generatorKey",
"lastGeneratedHeight",
"isBanned",
"reportMisbehaviorHeights",
"consecutiveMissedBlocks",
"commission",
"lastCommissionIncreaseHeight",
"sharingCoefficients"
],
"properties": {
"address": {
"dataType": "bytes",
"format": "lisk32",
"fieldNumber": 1
},
"name": {
"dataType": "string",
"fieldNumber": 2,
"minLength": 1,
"maxLength": 20
},
"blsKey": {
"dataType": "bytes",
"fieldNumber": 3,
"minLength": 48,
"maxLength": 48
},
"proofOfPossession": {
"dataType": "bytes",
"fieldNumber": 4,
"minLength": 96,
"maxLength": 96
},
"generatorKey": {
"dataType": "bytes",
"fieldNumber": 5,
"minLength": 32,
"maxLength": 32
},
"lastGeneratedHeight": {
"dataType": "uint32",
"fieldNumber": 6
},
"isBanned": {
"dataType": "boolean",
"fieldNumber": 7
},
"reportMisbehaviorHeights": {
"type": "array",
"fieldNumber": 8,
"items": {
"dataType": "uint32"
}
},
"consecutiveMissedBlocks": {
"dataType": "uint32",
"fieldNumber": 9
},
"commission": {
"dataType": "uint32",
"fieldNumber": 10,
"maximum": 10000
},
"lastCommissionIncreaseHeight": {
"dataType": "uint32",
"fieldNumber": 11
},
"sharingCoefficients": {
"type": "array",
"fieldNumber": 12,
"items": {
"type": "object",
"required": [
"tokenID",
"coefficient"
],
"properties": {
"tokenID": {
"dataType": "bytes",
"minLength": 8,
"maxLength": 8,
"fieldNumber": 1
},
"coefficient": {
"dataType": "bytes",
"maxLength": 24,
"fieldNumber": 2
}
}
}
}
}
}
},
"stakers": {
"type": "array",
"fieldNumber": 2,
"items": {
"type": "object",
"required": [
"address",
"stakes",
"pendingUnlocks"
],
"properties": {
"address": {
"dataType": "bytes",
"format": "lisk32",
"fieldNumber": 1
},
"stakes": {
"type": "array",
"fieldNumber": 2,
"items": {
"type": "object",
"required": [
"validatorAddress",
"amount",
"sharingCoefficients"
],
"properties": {
"validatorAddress": {
"dataType": "bytes",
"format": "lisk32",
"fieldNumber": 1
},
"amount": {
"dataType": "uint64",
"fieldNumber": 2
},
"sharingCoefficients": {
"type": "array",
"fieldNumber": 3,
"items": {
"type": "object",
"required": [
"tokenID",
"coefficient"
],
"properties": {
"tokenID": {
"dataType": "bytes",
"minLength": 8,
"maxLength": 8,
"fieldNumber": 1
},
"coefficient": {
"dataType": "bytes",
"maxLength": 24,
"fieldNumber": 2
}
}
}
}
}
}
},
"pendingUnlocks": {
"type": "array",
"fieldNumber": 3,
"items": {
"type": "object",
"required": [
"validatorAddress",
"amount",
"unstakeHeight"
],
"properties": {
"validatorAddress": {
"dataType": "bytes",
"fieldNumber": 1,
"format": "lisk32"
},
"amount": {
"dataType": "uint64",
"fieldNumber": 2
},
"unstakeHeight": {
"dataType": "uint32",
"fieldNumber": 3
}
}
}
}
}
}
},
"genesisData": {
"type": "object",
"fieldNumber": 3,
"required": [
"initRounds",
"initValidators"
],
"properties": {
"initRounds": {
"dataType": "uint32",
"fieldNumber": 1
},
"initValidators": {
"type": "array",
"fieldNumber": 2,
"items": {
"dataType": "bytes",
"format": "lisk32"
}
}
}
}
}
}
}
],
"name": "pos"
},
{
"commands": [],
"events": [],
"stores": [
{
"key": "2441b15f0000",
"data": {
"$id": "/modules/random/seedReveal",
"type": "object",
"required": [
"validatorReveals"
],
"properties": {
"validatorReveals": {
"type": "array",
"fieldNumber": 1,
"items": {
"type": "object",
"required": [
"generatorAddress",
"seedReveal",
"height",
"valid"
],
"properties": {
"generatorAddress": {
"dataType": "bytes",
"minLength": 20,
"maxLength": 20,
"fieldNumber": 1
},
"seedReveal": {
"dataType": "bytes",
"minLength": 16,
"maxLength": 16,
"fieldNumber": 2
},
"height": {
"dataType": "uint32",
"fieldNumber": 3
},
"valid": {
"dataType": "boolean",
"fieldNumber": 4
}
}
}
}
}
}
}
],
"endpoints": [
{
"name": "isSeedRevealValid",
"request": {
"$id": "/modules/random/endpoint/isSeedRevealRequest",
"type": "object",
"required": [
"generatorAddress",
"seedReveal"
],
"properties": {
"generatorAddress": {
"type": "string",
"format": "lisk32"
},
"seedReveal": {
"type": "string",
"format": "hex"
}
}
},
"response": {
"$id": "/modules/random/endpoint/isSeedRevealRequest",
"type": "object",
"required": [
"valid"
],
"properties": {
"valid": {
"type": "boolean"
}
}
}
},
{
"name": "setHashOnion",
"request": {
"$id": "lisk/random/setSeedRequestSchema",
"type": "object",
"title": "Random setSeed request",
"required": [
"address"
],
"properties": {
"address": {
"type": "string",
"format": "lisk32"
},
"seed": {
"type": "string",
"format": "hex"
},
"count": {
"type": "integer",
"minimum": 1
},
"distance": {
"type": "integer",
"minimum": 1
}
}
}
},
{
"name": "getHashOnionSeeds",
"response": {
"$id": "lisk/random/setSeedRequestSchema",
"type": "object",
"title": "Random setSeed request",
"required": [
"address"
],
"properties": {
"address": {
"type": "string",
"format": "lisk32"
},
"seed": {
"type": "string",
"format": "hex"
},
"count": {
"type": "integer",
"minimum": 1
},
"distance": {
"type": "integer",
"minimum": 1
}
}
}
},
{
"name": "hasHashOnion",
"request": {
"$id": "lisk/random/addressSchema",
"type": "object",
"required": [
"address"
],
"properties": {
"address": {
"type": "string",
"format": "lisk32"
}
}
},
"response": {
"$id": "lisk/random/hasHashOnionResponseSchema",
"type": "object",
"required": [
"hasSeed",
"remaining"
],
"properties": {
"hasSeed": {
"type": "boolean"
},
"remaining": {
"type": "integer",
"format": "uint32"
}
}
}
},
{
"name": "getHashOnionUsage",
"request": {
"$id": "lisk/random/addressSchema",
"type": "object",
"required": [
"address"
],
"properties": {
"address": {
"type": "string",
"format": "lisk32"
}
}
},
"response": {
"$id": "lisk/random/getHashOnionUsageResponse",
"type": "object",
"required": [
"count",
"height",
"seed"
],
"properties": {
"count": {
"type": "integer",
"format": "uint32"
},
"height": {
"type": "integer",
"format": "uint32"
},
"seed": {
"type": "string",
"format": "hex"
}
}
}
}
],
"assets": [
{
"version": 2,
"data": {
"$id": "/modules/random/block/header/asset",
"type": "object",
"properties": {
"seedReveal": {
"dataType": "bytes",
"fieldNumber": 1,
"minLength": 16,
"maxLength": 16
}
},
"required": [
"seedReveal"
]
}
}
],
"name": "random"
},
{
"commands": [
{
"name": "transfer",
"params": {
"$id": "/lisk/transferParams",
"title": "Transfer transaction params",
"type": "object",
"required": [
"tokenID",
"amount",
"recipientAddress",
"data"
],
"properties": {
"tokenID": {
"dataType": "bytes",
"fieldNumber": 1,
"minLength": 8,
"maxLength": 8
},
"amount": {
"dataType": "uint64",
"fieldNumber": 2
},
"recipientAddress": {
"dataType": "bytes",
"fieldNumber": 3,
"format": "lisk32"
},
"data": {
"dataType": "string",
"fieldNumber": 4,
"minLength": 0,
"maxLength": 64
}
}
}
},
{
"name": "transferCrossChain",
"params": {
"$id": "/lisk/ccTransferParams",
"type": "object",
"required": [
"tokenID",
"amount",
"receivingChainID",
"recipientAddress",
"data",
"messageFee",
"messageFeeTokenID"
],
"properties": {
"tokenID": {
"dataType": "bytes",
"fieldNumber": 1,
"minLength": 8,
"maxLength": 8
},
"amount": {
"dataType": "uint64",
"fieldNumber": 2
},
"receivingChainID": {
"dataType": "bytes",
"fieldNumber": 3,
"minLength": 4,
"maxLength": 4
},
"recipientAddress": {
"dataType": "bytes",
"fieldNumber": 4,
"format": "lisk32"
},
"data": {
"dataType": "string",
"fieldNumber": 5,
"minLength": 0,
"maxLength": 64
},
"messageFee": {
"dataType": "uint64",
"fieldNumber": 6
},
"messageFeeTokenID": {
"dataType": "bytes",
"fieldNumber": 7,
"minLength": 8,
"maxLength": 8
}
}
}
}
],
"events": [
{
"name": "transfer",
"data": {
"$id": "/token/events/transfer",
"type": "object",
"required": [
"senderAddress",
"recipientAddress",
"tokenID",
"amount",
"result"
],
"properties": {
"senderAddress": {
"dataType": "bytes",
"format": "lisk32",
"fieldNumber": 1
},
"recipientAddress": {
"dataType": "bytes",
"format": "lisk32",
"fieldNumber": 2
},
"tokenID": {
"dataType": "bytes",
"minLength": 8,
"maxLength": 8,
"fieldNumber": 3
},
"amount": {
"dataType": "uint64",
"fieldNumber": 4
},
"result": {
"dataType": "uint32",
"fieldNumber": 5
}
}
}
},
{
"name": "transferCrossChain",
"data": {
"$id": "/token/events/transferCrossChain",
"type": "object",
"required": [
"senderAddress",
"recipientAddress",
"tokenID",
"amount",
"receivingChainID",
"result"
],
"properties": {
"senderAddress": {
"dataType": "bytes",
"format": "lisk32",
"fieldNumber": 1
},
"recipientAddress": {
"dataType": "bytes",
"format": "lisk32",
"fieldNumber": 2
},
"tokenID": {
"dataType": "bytes",
"minLength": 8,
"maxLength": 8,
"fieldNumber": 3
},
"amount": {
"dataType": "uint64",
"fieldNumber": 4
},
"receivingChainID": {
"dataType": "bytes",
"minLength": 4,
"maxLength": 4,
"fieldNumber": 5
},
"result": {
"dataType": "uint32",
"fieldNumber": 6
}
}
}
},
{
"name": "ccmTransfer",
"data": {
"$id": "/token/events/ccmTransfer",
"type": "object",
"required": [
"senderAddress",
"recipientAddress",
"tokenID",
"amount",
"receivingChainID",
"result"
],
"properties": {
"senderAddress": {
"dataType": "bytes",
"format": "lisk32",
"fieldNumber": 1
},
"recipientAddress": {
"dataType": "bytes",
"format": "lisk32",
"fieldNumber": 2
},
"tokenID": {
"dataType": "bytes",
"minLength": 8,
"maxLength": 8,
"fieldNumber": 3
},
"amount": {
"dataType": "uint64",
"fieldNumber": 4
},
"receivingChainID": {
"dataType": "bytes",
"minLength": 4,
"maxLength": 4,
"fieldNumber": 5
},
"result": {
"dataType": "uint32",
"fieldNumber": 6
}
}
}
},
{
"name": "mint",
"data": {
"$id": "/token/events/mint",
"type": "object",
"required": [
"address",
"tokenID",
"amount",
"result"
],
"properties": {
"address": {
"dataType": "bytes",
"format": "lisk32",
"fieldNumber": 1
},
"tokenID": {
"dataType": "bytes",
"minLength": 8,
"maxLength": 8,
"fieldNumber": 2
},
"amount": {
"dataType": "uint64",
"fieldNumber": 3
},
"result": {
"dataType": "uint32",
"fieldNumber": 4
}
}
}
},
{
"name": "burn",
"data": {
"$id": "/token/events/burn",
"type": "object",
"required": [
"address",
"tokenID",
"amount",
"result"
],
"properties": {
"address": {
"dataType": "bytes",
"format": "lisk32",
"fieldNumber": 1
},
"tokenID": {
"dataType": "bytes",
"minLength": 8,
"maxLength": 8,
"fieldNumber": 2
},
"amount": {
"dataType": "uint64",
"fieldNumber": 3
},
"result": {
"dataType": "uint32",
"fieldNumber": 4
}
}
}
},
{
"name": "lock",
"data": {
"$id": "/token/events/lock",
"type": "object",
"required": [
"address",
"module",
"tokenID",
"amount",
"result"
],
"properties": {
"address": {
"dataType": "bytes",
"format": "lisk32",
"fieldNumber": 1
},
"module": {
"dataType": "string",
"minLength": 1,
"maxLength": 32,
"fieldNumber": 2
},
"tokenID": {
"dataType": "bytes",
"minLength": 8,
"maxLength": 8,
"fieldNumber": 3
},
"amount": {
"dataType": "uint64",
"fieldNumber": 4
},
"result": {
"dataType": "uint32",
"fieldNumber": 5
}
}
}
},
{
"name": "unlock",
"data": {
"$id": "/token/events/unlock",
"type": "object",
"required": [
"address",
"module",
"tokenID",
"amount",
"result"
],
"properties": {
"address": {
"dataType": "bytes",
"format": "lisk32",
"fieldNumber": 1
},
"module": {
"dataType": "string",
"minLength": 1,
"maxLength": 32,
"fieldNumber": 2
},
"tokenID": {
"dataType": "bytes",
"minLength": 8,
"maxLength": 8,
"fieldNumber": 3
},
"amount": {
"dataType": "uint64",
"fieldNumber": 4
},
"result": {
"dataType": "uint32",
"fieldNumber": 5
}
}
}
},
{
"name": "initializeToken",
"data": {
"$id": "/token/events/initializeTokenEvent",
"type": "object",
"required": [
"tokenID",
"result"
],
"properties": {
"tokenID": {
"dataType": "bytes",
"minLength": 8,
"maxLength": 8,
"fieldNumber": 1
},
"result": {
"dataType": "uint32",
"fieldNumber": 2
}
}
}
},
{
"name": "initializeUserAccount",
"data": {
"$id": "/token/events/initializeUserAccount",
"type": "object",
"required": [
"address",
"tokenID",
"initializationFee",
"result"
],
"properties": {
"address": {
"dataType": "bytes",
"format": "lisk32",
"fieldNumber": 1
},
"tokenID": {
"dataType": "bytes",
"minLength": 8,
"maxLength": 8,
"fieldNumber": 2
},
"initializationFee": {
"dataType": "uint64",
"fieldNumber": 3
},
"result": {
"dataType": "uint32",
"fieldNumber": 4
}
}
}
},
{
"name": "initializeEscrowAccount",
"data": {
"$id": "/token/events/initializeEscrowAccount",
"type": "object",
"required": [
"chainID",
"tokenID",
"initializationFee",
"result"
],
"properties": {
"chainID": {
"dataType": "bytes",
"minLength": 4,
"maxLength": 4,
"fieldNumber": 1
},
"tokenID": {
"dataType": "bytes",
"minLength": 8,
"maxLength": 8,
"fieldNumber": 2
},
"initializationFee": {
"dataType": "uint64",
"fieldNumber": 3
},
"result": {
"dataType": "uint32",
"fieldNumber": 4
}
}
}
},
{
"name": "recover",
"data": {
"$id": "/token/events/recover",
"type": "object",
"required": [
"terminatedChainID",
"tokenID",
"amount",
"result"
],
"properties": {
"terminatedChainID": {
"dataType": "bytes",
"minLength": 4,
"maxLength": 4,
"fieldNumber": 1
},
"tokenID": {
"dataType": "bytes",
"minLength": 8,
"maxLength": 8,
"fieldNumber": 2
},
"amount": {
"dataType": "uint64",
"fieldNumber": 3
},
"result": {
"dataType": "uint32",
"fieldNumber": 4
}
}
}
},
{
"name": "beforeCCCExecution",
"data": {
"$id": "/token/events/beforeCCCExecution",
"type": "object",
"required": [
"ccmID",
"messageFeeTokenID",
"relayerAddress",
"result"
],
"properties": {
"ccmID": {
"dataType": "bytes",
"minLength": 32,
"maxLength": 32,
"fieldNumber": 1
},
"messageFeeTokenID": {
"dataType": "bytes",
"minLength": 8,
"maxLength": 8,
"fieldNumber": 2
},
"relayerAddress": {
"dataType": "bytes",
"format": "lisk32",
"fieldNumber": 3
},
"result": {
"dataType": "uint32",
"fieldNumber": 4
}
}
}
},
{
"name": "beforeCCMForwarding",
"data": {
"$id": "/token/events/beforeCCMForwarding",
"type": "object",
"required": [
"ccmID",
"messageFeeTokenID",
"result"
],
"properties": {
"ccmID": {
"dataType": "bytes",
"minLength": 32,
"maxLength": 32,
"fieldNumber": 1
},
"messageFeeTokenID": {
"dataType": "bytes",
"minLength": 8,
"maxLength": 8,
"fieldNumber": 2
},
"result": {
"dataType": "uint32",
"fieldNumber": 3
}
}
}
},
{
"name": "allTokensSupported",
"data": {
"$id": "/lisk/empty",
"type": "object",
"properties": {}
}
},
{
"name": "allTokensSupportRemoved",
"data": {
"$id": "/lisk/empty",
"type": "object",
"properties": {}
}
},
{
"name": "allTokensFromChainSupported",
"data": {
"$id": "/token/events/allTokensFromChainSupported",
"type": "object",
"required": [
"chainID"
],
"properties": {
"chainID": {
"dataType": "bytes",
"minLength": 4,
"maxLength": 4,
"fieldNumber": 1
}
}
}
},
{
"name": "allTokensFromChainSupportRemoved",
"data": {
"$id": "/token/events/allTokensFromChainSupportRemoved",
"type": "object",
"required": [
"chainID"
],
"properties": {
"chainID": {
"dataType": "bytes",
"minLength": 4,
"maxLength": 4,
"fieldNumber": 1
}
}
}
},
{
"name": "tokenIDSupported",
"data": {
"$id": "/token/events/tokenIDSupported",
"type": "object",
"required": [
"tokenID"
],
"properties": {
"tokenID": {
"dataType": "bytes",
"minLength": 8,
"maxLength": 8,
"fieldNumber": 1
}
}
}
},
{
"name": "tokenIDSupportRemoved",
"data": {
"$id": "/token/events/tokenIDSupportRemoved",
"type": "object",
"required": [
"tokenID"
],
"properties": {
"tokenID": {
"dataType": "bytes",
"minLength": 8,
"maxLength": 8,
"fieldNumber": 1
}
}
}
}
],
"stores": [
{
"key": "3c469e9d0000",
"data": {
"$id": "/token/store/user",
"type": "object",
"required": [
"availableBalance",
"lockedBalances"
],
"properties": {
"availableBalance": {
"dataType": "uint64",
"fieldNumber": 1
},
"lockedBalances": {
"type": "array",
"fieldNumber": 2,
"items": {
"type": "object",
"required": [
"module",
"amount"
],
"properties": {
"module": {
"dataType": "string",
"fieldNumber": 1,
"minLength": 1,
"maxLength": 32
},
"amount": {
"dataType": "uint64",
"fieldNumber": 2
}
}
}
}
}
}
},
{
"key": "3c469e9d8000",
"data": {
"$id": "/token/store/supply",
"type": "object",
"required": [
"totalSupply"
],
"properties": {
"totalSupply": {
"dataType": "uint64",
"fieldNumber": 1
}
}
}
},
{
"key": "3c469e9d4000",
"data": {
"$id": "/token/store/escrow",
"type": "object",
"required": [
"amount"
],
"properties": {
"amount": {
"dataType": "uint64",
"fieldNumber": 1
}
}
}
},
{
"key": "3c469e9dc000",
"data": {
"$id": "/token/store/supportedTokens",
"type": "object",
"required": [
"supportedTokenIDs"
],
"properties": {
"supportedTokenIDs": {
"type": "array",
"fieldNumber": 1,
"items": {
"dataType": "bytes",
"minLength": 8,
"maxLength": 8
}
}
}
}
}
],
"endpoints": [
{
"name": "getBalance",
"request": {
"$id": "/token/endpoint/getBalance",
"type": "object",
"properties": {
"address": {
"type": "string",
"format": "lisk32"
},
"tokenID": {
"type": "string",
"format": "hex",
"minLength": 16,
"maxLength": 16
}
},
"required": [
"address",
"tokenID"
]
},
"response": {
"$id": "/token/endpoint/getBalanceResponse",
"type": "object",
"required": [
"availableBalance",
"lockedBalances"
],
"properties": {
"availableBalance": {
"type": "string",
"format": "uint64"
},
"lockedBalances": {
"type": "array",
"items": {
"type": "object",
"required": [
"module",
"amount"
],
"properties": {
"module": {
"type": "string"
},
"amount": {
"type": "string",
"format": "uint64"
}
}
}
}
}
}
},
{
"name": "getBalances",
"request": {
"$id": "/token/endpoint/getBalance",
"type": "object",
"properties": {
"address": {
"type": "string",
"format": "lisk32"
}
},
"required": [
"address"
]
},
"response": {
"$id": "/token/endpoint/getBalancesResponse",
"type": "object",
"required": [
"balances"
],
"properties": {
"balances": {
"type": "array",
"items": {
"type": "object",
"required": [
"availableBalance",
"lockedBalances",
"tokenID"
],
"properties": {
"tokenID": {
"type": "string",
"format": "hex"
},
"availableBalance": {
"type": "string",
"format": "uint64"
},
"lockedBalances": {
"type": "array",
"items": {
"type": "object",
"required": [
"module",
"amount"
],
"properties": {
"module": {
"type": "string"
},
"amount": {
"type": "string",
"format": "uint64"
}
}
}
}
}
}
}
}
}
},
{
"name": "getTotalSupply",
"response": {
"$id": "/token/endpoint/getTotalSupplyResponse",
"type": "object",
"properties": {
"totalSupply": {
"type": "array",
"items": {
"type": "object",
"required": [
"totalSupply",
"tokenID"
],
"properties": {
"tokenID": {
"type": "string",
"format": "hex"
},
"totalSupply": {
"type": "string",
"format": "uint64"
}
}
}
}
}
}
},
{
"name": "getSupportedTokens",
"response": {
"$id": "/token/endpoint/getSupportedTokensResponse",
"type": "object",
"properties": {
"tokenIDs": {
"type": "array",
"items": {
"type": "string",
"format": "hex"
}
}
}
}
},
{
"name": "isSupported",
"request": {
"$id": "/token/endpoint/isSupportedRequest",
"type": "object",
"properties": {
"tokenID": {
"type": "string",
"format": "hex",
"minLength": 16,
"maxLength": 16
}
},
"required": [
"tokenID"
]
},
"response": {
"$id": "/token/endpoint/isSupportedResponse",
"type": "object",
"properties": {
"supported": {
"dataType": "boolean"
}
},
"required": [
"supported"
]
}
},
{
"name": "getEscrowedAmounts",
"response": {
"$id": "/token/endpoint/getEscrowedAmountsResponse",
"type": "object",
"properties": {
"escrowedAmounts": {
"type": "array",
"items": {
"type": "object",
"required": [
"escrowChainID",
"totalSupply",
"tokenID"
],
"properties": {
"escrowChainID": {
"type": "string",
"format": "hex"
},
"tokenID": {
"type": "string",
"format": "hex"
},
"amount": {
"type": "string",
"format": "uint64"
}
}
}
}
}
}
},
{
"name": "getInitializationFees",
"response": {
"$id": "/token/endpoint/getInitializationFees",
"type": "object",
"properties": {
"userAccount": {
"type": "string",
"format": "uint64"
},
"escrowAccount": {
"type": "string",
"format": "uint64"
}
},
"required": [
"userAccount",
"escrowAccount"
]
}
},
{
"name": "hasUserAccount",
"request": {
"$id": "/token/endpoint/hasUserAccountRequest",
"type": "object",
"properties": {
"address": {
"type": "string",
"format": "lisk32"
},
"tokenID": {
"type": "string",
"format": "hex",
"minLength": 16,
"maxLength": 16
}
},
"required": [
"address",
"tokenID"
]
},
"response": {
"$id": "/token/endpoint/hasUserAccountResponse",
"type": "object",
"properties": {
"exists": {
"type": "boolean"
}
}
}
},
{
"name": "hasEscrowAccount",
"request": {
"$id": "/token/endpoint/hasEscrowAccountRequest",
"type": "object",
"properties": {
"tokenID": {
"type": "string",
"format": "hex",
"minLength": 16,
"maxLength": 16
},
"escrowChainID": {
"type": "string",
"format": "hex"
}
},
"required": [
"tokenID",
"escrowChainID"
]
},
"response": {
"$id": "/token/endpoint/hasEscrowAccountResponse",
"type": "object",
"properties": {
"exists": {
"type": "boolean"
}
}
}
}
],
"assets": [
{
"version": 0,
"data": {
"$id": "/token/module/genesis",
"type": "object",
"required": [
"userSubstore",
"supplySubstore",
"escrowSubstore",
"supportedTokensSubstore"
],
"properties": {
"userSubstore": {
"type": "array",
"fieldNumber": 1,
"items": {
"type": "object",
"required": [
"address",
"tokenID",
"availableBalance",
"lockedBalances"
],
"properties": {
"address": {
"dataType": "bytes",
"format": "lisk32",
"fieldNumber": 1
},
"tokenID": {
"dataType": "bytes",
"fieldNumber": 2,
"minLength": 8,
"maxLength": 8
},
"availableBalance": {
"dataType": "uint64",
"fieldNumber": 3
},
"lockedBalances": {
"type": "array",
"fieldNumber": 4,
"items": {
"type": "object",
"required": [
"module",
"amount"
],
"properties": {
"module": {
"dataType": "string",
"minLength": 1,
"maxLength": 32,
"fieldNumber": 1
},
"amount": {
"dataType": "uint64",
"fieldNumber": 2
}
}
}
}
}
}
},
"supplySubstore": {
"type": "array",
"fieldNumber": 2,
"items": {
"type": "object",
"required": [
"tokenID",
"totalSupply"
],
"properties": {
"tokenID": {
"dataType": "bytes",
"fieldNumber": 1,
"minLength": 8,
"maxLength": 8
},
"totalSupply": {
"dataType": "uint64",
"fieldNumber": 2
}
}
}
},
"escrowSubstore": {
"type": "array",
"fieldNumber": 3,
"items": {
"type": "object",
"required": [
"escrowChainID",
"tokenID",
"amount"
],
"properties": {
"escrowChainID": {
"dataType": "bytes",
"minLength": 4,
"maxLength": 4,
"fieldNumber": 1
},
"tokenID": {
"dataType": "bytes",
"fieldNumber": 2,
"minLength": 8,
"maxLength": 8
},
"amount": {
"dataType": "uint64",
"fieldNumber": 3
}
}
}
},
"supportedTokensSubstore": {
"type": "array",
"fieldNumber": 4,
"items": {
"type": "object",
"required": [
"chainID",
"supportedTokenIDs"
],
"properties": {
"chainID": {
"dataType": "bytes",
"minLength": 4,
"maxLength": 4,
"fieldNumber": 1
},
"supportedTokenIDs": {
"type": "array",
"fieldNumber": 2,
"items": {
"dataType": "bytes",
"minLength": 8,
"maxLength": 8
}
}
}
}
}
}
}
}
],
"name": "token"
},
{
"commands": [],
"events": [
{
"name": "generatorKeyRegistration",
"data": {
"$id": "/validators/event/generatorKeyRegData",
"type": "object",
"required": [
"generatorKey",
"result"
],
"properties": {
"generatorKey": {
"dataType": "bytes",
"minLength": 32,
"maxLength": 32,
"fieldNumber": 1
},
"result": {
"dataType": "uint32",
"fieldNumber": 2
}
}
}
},
{
"name": "blsKeyRegistration",
"data": {
"$id": "/validators/event/blsKeyRegData",
"type": "object",
"required": [
"blsKey",
"result"
],
"properties": {
"blsKey": {
"dataType": "bytes",
"minLength": 48,
"maxLength": 48,
"fieldNumber": 1
},
"proofOfPossession": {
"dataType": "bytes",
"minLength": 96,
"maxLength": 96,
"fieldNumber": 2
},
"result": {
"dataType": "uint32",
"fieldNumber": 3
}
}
}
}
],
"stores": [
{
"key": "66d18af40000",
"data": {
"$id": "/validators/validatorAccountSubStore",
"title": "Validators Account Keys",
"type": "object",
"properties": {
"generatorKey": {
"dataType": "bytes",
"fieldNumber": 1,
"minLength": 32,
"maxLength": 32
},
"blsKey": {
"dataType": "bytes",
"fieldNumber": 2,
"minLength": 48,
"maxLength": 48
}
},
"required": [
"generatorKey",
"blsKey"
]
}
},
{
"key": "66d18af48000",
"data": {
"$id": "/validators/validatorsParams",
"type": "object",
"required": [
"validators",
"preCommitThreshold",
"certificateThreshold"
],
"properties": {
"preCommitThreshold": {
"fieldNumber": 1,
"dataType": "uint64"
},
"certificateThreshold": {
"fieldNumber": 2,
"dataType": "uint64"
},
"validators": {
"fieldNumber": 3,
"type": "array",
"items": {
"type": "object",
"required": [
"address",
"bftWeight",
"generatorKey",
"blsKey"
],
"properties": {
"address": {
"fieldNumber": 1,
"dataType": "bytes",
"format": "lisk32"
},
"bftWeight": {
"fieldNumber": 2,
"dataType": "uint64"
},
"generatorKey": {
"fieldNumber": 3,
"dataType": "bytes"
},
"blsKey": {
"fieldNumber": 4,
"dataType": "bytes"
}
}
}
}
}
}
},
{
"key": "66d18af44000",
"data": {
"$id": "/validators/blsKeyData",
"title": "Validators Addresses",
"type": "object",
"properties": {
"address": {
"dataType": "bytes",
"fieldNumber": 1
}
},
"required": [
"address"
]
}
}
],
"endpoints": [
{
"name": "validateBLSKey",
"request": {
"$id": "/validators/endpoint/validateBLSKeyRequest",
"title": "Bls Key Properties",
"type": "object",
"properties": {
"proofOfPossession": {
"type": "string",
"format": "hex"
},
"blsKey": {
"type": "string",
"format": "hex"
}
},
"required": [
"proofOfPossession",
"blsKey"
]
},
"response": {
"$id": "/validators/endpoint/validateBLSKeyResponse",
"title": "Bls Key Properties",
"type": "object",
"properties": {
"valid": {
"type": "boolean"
}
},
"required": [
"valid"
]
}
},
{
"name": "getValidator",
"request": {
"$id": "/validators/endpoint/getValidatorRequest",
"title": "Validator properties",
"type": "object",
"properties": {
"address": {
"dataType": "string",
"format": "lisk32"
}
},
"required": [
"address"
]
},
"response": {
"$id": "/validators/endpoint/getValidatorResponse",
"title": "Validator properties",
"type": "object",
"properties": {
"generatorKey": {
"type": "string",
"format": "hex"
},
"blsKey": {
"type": "string",
"format": "hex"
}
},
"required": [
"generatorKey",
"blsKey"
]
}
}
],
"assets": [],
"name": "validators"
}
]
}
passphrase
Commands relating to Lisk Core passphrases.
USAGE
$ lisk-core passphrase:COMMAND
COMMANDS
passphrase:create Returns a randomly generated 24 words mnemonic passphrase.
passphrase:decrypt Decrypt secret passphrase using the password provided at the time of encryption.
passphrase:encrypt Encrypt secret passphrase using password.
passphrase:create
Decrypts the secret passphrase using the password provided at the time of encryption.
USAGE
$ lisk-core passphrase:create [-o <value>]
FLAGS
-o, --output=<value> The output directory. Default will set to current working directory.
DESCRIPTION
Returns a randomly generated 24 words mnemonic passphrase.
EXAMPLES
passphrase:create
passphrase:create --output /mypath/passphrase.json
Example
$ lisk-core passphrase:create
{
"passphrase": "lava empower laundry taxi believe cute boss stairs bicycle vivid dirt vendor accuse identify general run knock medal chief space remain flush extra bike"
}
passphrase:decrypt
Decrypts the secret passphrase using the password provided at the time of encryption.
USAGE
$ lisk-core passphrase:decrypt -f <value> [-w <value>]
FLAGS
-f, --file-path=<value> (required) Path of the file to import from
-w, --password=<value> Specifies a source for your secret password. Command will prompt you for input if this option is not set.
Examples:
- --password=pass:password123 (should only be used where security is not important)
DESCRIPTION
Decrypt secret passphrase using the password provided at the time of encryption.
EXAMPLES
passphrase:decrypt --file-path ./my/path/output.json
passphrase:decrypt --file-path ./my/path/output.json --password your-password
Example
$ lisk-core passphrase:decrypt --file-path ./my/path/keys.json
? Please enter password: [hidden]
? Please re-enter password: [hidden]
{"passphrase":"my secret passphrase"}
passphrase:encrypt
Encrypts the secret passphrase using a password.
USAGE
$ lisk-core passphrase:encrypt [-w <value>] [-p <value>] [--output-public-key] [-o <value>]
FLAGS
-o, --output=<value> The output directory. Default will set to current working directory.
-p, --passphrase=<value> Specifies a source for your secret passphrase. Command will prompt you for input if this option is not set.
Examples:
- --passphrase='my secret passphrase' (should only be used where security is not important)
-w, --password=<value> Specifies a source for your secret password. Command will prompt you for input if this option is not set.
Examples:
- --password=pass:password123 (should only be used where security is not important)
--output-public-key Includes the public key in the output. This option is provided for the convenience of node operators.
DESCRIPTION
Encrypt secret passphrase using password.
EXAMPLES
passphrase:encrypt
passphrase:encrypt --passphrase your-passphrase --output /mypath/keys.json
passphrase:encrypt --password your-password
passphrase:encrypt --password your-password --passphrase your-passphrase --output /mypath/keys.json
passphrase:encrypt --output-public-key --output /mypath/keys.json
Example
$ lisk-core passphrase:encrypt -p 'my secret passphrase'
? Please enter password: [hidden]
? Please re-enter password: [hidden]
{
"encryptedPassphrase": {
"ciphertext": "f0abd47a3095f288f3b291a883222cd64d7748b0",
"mac": "f88e98d461c9be73bcf8f3b37e5e8123a7f7ce351fcdf3b9c9f226f5e07d9cda",
"kdf": "argon2id",
"kdfparams": {
"parallelism": 4,
"iterations": 1,
"memorySize": 2024,
"salt": "a5e440ce3bc216ec8b2bc122155971c9"
},
"cipher": "aes-256-gcm",
"cipherparams": {
"iv": "272b5a4caa0b3605ae9837b0",
"tag": "7a0601cc12ca169300aba9a9f53c652b"
},
"version": "1"
}
}
sdk
Commands relating to Lisk SDK development.
USAGE
$ lisk-core sdk:COMMAND
COMMANDS
sdk:link Symlink specific SDK folder during development.
sdk:link
Creates a symbolic link to the specified SDK folder during development.
USAGE
$ lisk-core sdk:link [TARGETSDKFOLDER]
ARGUMENTS
TARGETSDKFOLDER The path to the lisk SDK folder
DESCRIPTION
Symlink specific SDK folder during development.
EXAMPLES
sdk:link /path/to/lisk-sdk/sdk
Example
$ lisk-core sdk:link ~/XYZ/Documents/GitHub/lisk-sdk
Linked /Users/XYZ/Documents/GitHub/lisk-sdk to /lisk-sdk.
transaction
Commands relating to Lisk Core transactions.
USAGE
$ lisk-core transaction:COMMAND
COMMANDS
transaction:create Create transaction which can be broadcasted to the network. Note: fee and amount should be in Beddows!!
transaction:get Get transaction from local node by ID.
transaction:send Send transaction to the local node.
transaction:sign Sign encoded transaction.
transaction:create
Creates a transaction that can be broadcast to the network.
The fee and amount are expected in Beddows! |
USAGE
$ lisk-core transaction:create [MODULE] [COMMAND] [FEE] [-p <value>] [-a <value>] [-j] [--offline] [--send] [--no-signature] [--chain-id <value>] [--nonce <value>] [-s
<value>] [-d <value>] [-k <value>] [--pretty] [-f <value>]
ARGUMENTS
MODULE Registered transaction module.
COMMAND Registered transaction command.
FEE Transaction fee in Beddows.
FLAGS
-a, --params=<value> Creates transaction with specific params information
-d, --data-path=<value> Directory path to specify where node data is stored. Environment variable "LISK_DATA_PATH" can also be used.
-f, --file=<value> The file to upload.
Example:
--file=./myfile.json
-j, --json Print the transaction in JSON format.
-k, --key-derivation-path=<value> [default: m/44'/134'/0'] Key derivation path to use to derive keypair from passphrase
-p, --passphrase=<value> Specifies a source for your secret passphrase. Command will prompt you for input if this option is not set.
Examples:
- --passphrase='my secret passphrase' (should only be used where security is not important)
-s, --sender-public-key=<value> Set a custom senderPublicKey property for the transaction, to be used when account address does not correspond to signer's private
key
--chain-id=<value>
--no-signature Creates the transaction without a signature. Your passphrase will therefore not be required
--nonce=<value> Nonce of the transaction.
--offline Specify whether to connect to a local node or not.
--pretty Prints JSON in pretty format rather than condensed.
--send Create and immediately send transaction to a node
DESCRIPTION
Create transaction which can be broadcasted to the network. Note: fee and amount should be in Beddows!!
EXAMPLES
transaction:create token transfer 100000000 --params='{"amount":100000000,"recipientAddress":"lskycz7hvr8yfu74bcwxy2n4mopfmjancgdvxq8xz","data":"send token"}'
transaction:create token transfer 100000000 --params='{"amount":100000000,"recipientAddress":"lskycz7hvr8yfu74bcwxy2n4mopfmjancgdvxq8xz","data":"send token"}' --json
transaction:create token transfer 100000000 --offline --network mainnet --chain-id 10000000 --nonce 1 --params='{"amount":100000000,"recipientAddress":"lskycz7hvr8yfu74bcwxy2n4mopfmjancgdvxq8xz","data":"send token"}'
transaction:create token transfer 100000000 --file=/txn_params.json
transaction:create token transfer 100000000 --file=/txn_params.json --json
Example
$ lisk-core transaction:create token transfer 100000000
? Please enter passphrase: [hidden]
Warning: Passphrase contains 24 words instead of expected 12. Passphrase contains 23 whitespaces instead of expected 11.
? Please enter: tokenID: 0400000000000000
? Please enter: amount: 1
? Please enter: recipientAddress: lskz6x7dzjr547cv42gk7suw76ojpwhu8q43ydhdp
? Please enter: data: Sending tokens
{"transaction":"0a05746f6b656e12087472616e7366657218002080c2d72f2a203972849f2ab66376a68671c10a00e8b8b67d880434cc65b04c6ed886dfa91c2c32320a08040000000000000010011a140282ed03925a5c31271fa3b70bb94ce12fd83ea9220e53656e64696e6720746f6b656e733a40497ee511d6537fd9e05e1615bae8d9e186af8b871a9bc1ae8d317cfe3da3669e1cdf36e3d12e16639cb49d727a230f0a8254f9bb8b9630f3aca3aa91e5517109"}
transaction:get
Gets a transaction from the local node by ID.
USAGE
$ lisk-core transaction:get [ID] [-d <value>] [--pretty]
ARGUMENTS
ID Transaction ID in hex format.
FLAGS
-d, --data-path=<value> Directory path to specify where node data is stored. Environment variable "LISK_DATA_PATH" can also be used.
--pretty Prints JSON in pretty format rather than condensed.
DESCRIPTION
Get transaction from local node by ID.
EXAMPLES
transaction:get eab06c6a22e88bca7150e0347a7d976acd070cb9284423e6eabecd657acc1263
Example
$ lisk-core transaction:get ef9296e17308d99c012597cb5d0f90539a5bd87ae6a2a2ce4f64c0529bcc3c31 --pretty
{
"module": "token",
"command": "transfer",
"params": {
"tokenID": "0400000000000000",
"amount": "1",
"recipientAddress": "lskz6x7dzjr547cv42gk7suw76ojpwhu8q43ydhdp",
"data": "Sending tokens"
},
"nonce": "0",
"fee": "100000000",
"senderPublicKey": "3972849f2ab66376a68671c10a00e8b8b67d880434cc65b04c6ed886dfa91c2c",
"signatures": [
"497ee511d6537fd9e05e1615bae8d9e186af8b871a9bc1ae8d317cfe3da3669e1cdf36e3d12e16639cb49d727a230f0a8254f9bb8b9630f3aca3aa91e5517109"
],
"id": "ef9296e17308d99c012597cb5d0f90539a5bd87ae6a2a2ce4f64c0529bcc3c31"
}
transaction:send
Sends a transaction to the local node.
USAGE
$ lisk-core transaction:send [TRANSACTION] [-d <value>] [--pretty]
ARGUMENTS
TRANSACTION A transaction to be sent to the node encoded as hex string
FLAGS
-d, --data-path=<value> Directory path to specify where node data is stored. Environment variable "LISK_DATA_PATH" can also be used.
--pretty Prints JSON in pretty format rather than condensed.
DESCRIPTION
Send transaction to the local node.
EXAMPLES
transaction:send 080810011880cab5ee012220fd061b9146691f3c56504be051175d5b76d1b1d0179c5c4370e18534c58821222a2408641214ab0041a7d3f7b2c290b5b834d46bdc7b7eb858151a0a73656e6420746f6b656e324028edd3601cdc35a41bb23415a0d9f3c3e9cf188d9971adf18742cea39d58aa84809aa87bcfe6feaac46211c80472ad9297fd87727709f5d7e7b4134caf106b02
Example
$ lisk-core transaction:send 0a05746f6b656e12087472616e7366657218002080c2d72f2a203972849f2ab66376a68671c10a00e8b8b67d880434cc65b04c6ed886dfa91c2c32320a08040000000000000010011a140282ed03925a5c31271fa3b70bb94ce12fd83ea9220e53656e64696e6720746f6b656e733a40497ee511d6537fd9e05e1615bae8d9e186af8b871a9bc1ae8d317cfe3da3669e1cdf36e3d12e16639cb49d727a230f0a8254f9bb8b9630f3aca3aa91e5517109
Transaction with id: 'ef9296e17308d99c012597cb5d0f90539a5bd87ae6a2a2ce4f64c0529bcc3c31' received by node.
transaction:sign
Signs an encoded transaction.
USAGE
$ lisk-core transaction:sign [TRANSACTION] [-p <value>] [-j] [--offline] [--mandatory-keys <value>] [--optional-keys <value>] [--chain-id <value>] [-d <value>] [-k
<value>] [--pretty]
ARGUMENTS
TRANSACTION The transaction to be signed encoded as hex string
FLAGS
-d, --data-path=<value> Directory path to specify where node data is stored. Environment variable "LISK_DATA_PATH" can also be used.
-j, --json Print the transaction in JSON format.
-k, --key-derivation-path=<value> [default: m/44'/134'/0'] Key derivation path to use to derive keypair from passphrase
-p, --passphrase=<value> Specifies a source for your secret passphrase. Command will prompt you for input if this option is not set.
Examples:
- --passphrase='my secret passphrase' (should only be used where security is not important)
--chain-id=<value>
--mandatory-keys=<value> Mandatory publicKey string in hex format.
--offline Specify whether to connect to a local node or not.
--optional-keys=<value> Optional publicKey string in hex format.
--pretty Prints JSON in pretty format rather than condensed.
DESCRIPTION
Sign encoded transaction.
EXAMPLES
transaction:sign <hex-encoded-binary-transaction>
transaction:sign <hex-encoded-binary-transaction> --network testnet
Example
$ lisk-core transaction:sign 0a05746f6b656e12087472616e7366657218012080c2d72f2a20a3f96c50d0446220ef2f98240898515cbba8155730679ca35326d98dcfb680f032250a08000000000000000010011a140326f20343173a4e5e5daa354a1bc96b594717b722014c3a4008174cd6816439265bff92ce93687ce4d6a65877d69d6c43dd1c1696312cf4c74962c0be7f047fd21482877e21d5ae56f638323ece64bc92a14386f96fe41c06 --pretty
? Please enter passphrase: [hidden]
? Please re-enter passphrase: [hidden]
{
"transaction": "0a05746f6b656e12087472616e7366657218012080c2d72f2a20a3f96c50d0446220ef2f98240898515cbba8155730679ca35326d98dcfb680f032250a08000000000000000010011a140326f20343173a4e5e5daa354a1bc96b594717b722014c3a4008174cd6816439265bff92ce93687ce4d6a65877d69d6c43dd1c1696312cf4c74962c0be7f047fd21482877e21d5ae56f638323ece64bc92a14386f96fe41c06"
}