RPC endpoints

The RPC endpoints page provides a reference of all available application RPC endpoits, a.k.a. actions and events.

It is also mentioned where to find references for the Module- and plugin-specific actions & events and gives short examples how to use the WebSocket and IPC channels with the API client.

To see a full list of all available actions and events of your blockchain application, invoke the actions app:getRegisteredActions and app:getRegisteredModules

How to query the API

The Lisk SDK offers two different API modes: ipc (Inter-process communication) and ws (WebSocket). If the node and the client are running on the same machine, it is recommended to use the ipc mode. To enable the API to be reachable from remote, use the ws option.

For more information about the configuration of the RPC endpoints check out the configuration guide.

To conveniently communicate with a blockchain application, use the apiClient which is included in the @liskhq/lisk-client and the lisk-sdk packages.

How to use the API client to invoke actions and to subscribe to events.

For more information, check out the Communication Architecture page.

  • WS API client example

  • Channel example

  • IPC API client example

const { apiClient } = require('lisk-sdk');
let clientCache;

const getClient = async () => {
  if (!clientCache) {
    clientCache = await apiClient.createWSClient('ws://localhost:8080/ws');
  }
  return clientCache;
};

const useClient = async () => {
  const client = await getClient();
  const blockAtHeight123 = await client.block.getByHeight(123);
  return blockAtHeight123;
};

useClient().then((val) => {
  console.log("val:",val);
});
const { BasePlugin } = require("lisk-sdk");
const pJSON = require("../package.json");

class MyPlugin extends BasePlugin {

  //[...]
async load(channel) {
    channel.subscribe('app:block:new', (block) => {
      console.log(block);
    });
  }

  //[...]
}
const { apiClient } = require('lisk-sdk');
let clientCache;

const getClient = async () => {
    if (!clientCache) {
        clientCache = await apiClient.createIPCClient('~/.lisk/my-app');
    }
    return clientCache;
};

const useClient = async () => {
  const client = await getClient();
  const blockAtHeight123 = await client.block.getByHeight(123);
  client.subscribe('app:block:new', ( data ) => {
    console.log("new block:",data);
  });
  return blockAtHeight123;
};

useClient().then((val) => {
  console.log("val:",val);
});

Module- and plugin-specific actions & events

Modules and plugins often expose own action events to the application. All actions and events of modules and plugins that are registered with the application are available as RPC endpoints.

Events and actions are addressed in the following way:

How action and event names are constructed
"moduleOrPluginAlias:eventOrActionAlias"

The actions and events are described on the following reference pages:

Application events

app:ready

Fired when the application starts.

app:shutdown

Fired when the application stops.

app:network:ready

Fired when the network has at least one outbound connection.

app:network:event

Fired when the application receives P2P event from the network.

app:transaction:new

Fired when the node receives a new transaction.

Returns

Example output
{
 "transaction":"0802100018022080ade2042a200fe9a3f1a21b5530f27f87a414b549e79a940bf24fdf2b2f05e7f22aeeecc86a321e088094ebdc0312147c1facd5a55044f4b2ec3329b8ae8382959d4d7e1a003a4068baa1de9f102a3aad4ef7df411280f9aed93c4236922734515bb1984dffed1139ed8c9db073e79c5c535f376a63657d589f330b2480260617873740b0941d09"
}

app:chain:fork

Fired when the node received a block from the forked chain.

Returns

Example output
{
  "block":"0acc01080210f3ebccfe051802222088b1bad7200b0d813d5bef7982b6f8e2cb407b39731c949c7e27bf70ff0083e32a20e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b8553220c395ed88399c1a8d48a0134a9e42fa7d769faaf3ba8ed332b9f0923eb22197b538004216080010001a1037b33154dad7b5f5ac28078fa09c41fd4a406aa158238ce2ee516182ca4613a87b1078b580c9f97e18a5652277107e8a777b185dd5c4b7529fa99d20c6a539543dd2894bb82f04c0e3a8141e364a782fbd07",
  "accounts":
    [ "0a14e2950a9f07b44e724df2129360cc140293c08308120208001a020800220208002a3a0a190a0a67656e657369735f35371800200228003080a094a58d1d121d0a14e2950a9f07b44e724df2129360cc140293c083081080a094a58d1dc23e020a00" ]
}

app:chain:validators:change

Fired when the node updates the validator set.

app:block:new

Fired when a new block is added to the blockchain.

Returns

Example output
{
  "block":"0acc01080210f3ebccfe051802222088b1bad7200b0d813d5bef7982b6f8e2cb407b39731c949c7e27bf70ff0083e32a20e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b8553220c395ed88399c1a8d48a0134a9e42fa7d769faaf3ba8ed332b9f0923eb22197b538004216080010001a1037b33154dad7b5f5ac28078fa09c41fd4a406aa158238ce2ee516182ca4613a87b1078b580c9f97e18a5652277107e8a777b185dd5c4b7529fa99d20c6a539543dd2894bb82f04c0e3a8141e364a782fbd07",
  "accounts":
    [ "0a14e2950a9f07b44e724df2129360cc140293c08308120208001a020800220208002a3a0a190a0a67656e657369735f35371800200228003080a094a58d1d121d0a14e2950a9f07b44e724df2129360cc140293c083081080a094a58d1dc23e020a00" ]
}

app:block:delete

Emitted when a block is deleted from the blockchain.

Returns

Example output
{
  "block":"0acc01080210f3ebccfe051802222088b1bad7200b0d813d5bef7982b6f8e2cb407b39731c949c7e27bf70ff0083e32a20e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b8553220c395ed88399c1a8d48a0134a9e42fa7d769faaf3ba8ed332b9f0923eb22197b538004216080010001a1037b33154dad7b5f5ac28078fa09c41fd4a406aa158238ce2ee516182ca4613a87b1078b580c9f97e18a5652277107e8a777b185dd5c4b7529fa99d20c6a539543dd2894bb82f04c0e3a8141e364a782fbd07",
  "accounts":
    [ "0a14e2950a9f07b44e724df2129360cc140293c08308120208001a020800220208002a3a0a190a0a67656e657369735f35371800200228003080a094a58d1d121d0a14e2950a9f07b44e724df2129360cc140293c083081080a094a58d1dc23e020a00" ]
}

Application actions

app:getRegisteredActions

Returns a list of all actions known to the application.

Includes actions from registered modules and plugins.

Example

const { apiClient } = require('lisk-sdk');

const getClient = async () => {
  if (!clientCache) {
    clientCache = await apiClient.createWSClient('ws://localhost:8080/ws');
  }
  return clientCache;
};

const useClient = async () => {
  const client = await getClient();
  const actions = await client.invoke('app:getRegisteredActions');
  return actions;
};

useClient().then((val) => {
  console.log("val:",val);
});

Input

none

Returns

Example output
[
    'app:getConnectedPeers',
    'app:getDisconnectedPeers',
    'app:getNetworkStats',
    'app:getForgers',
    'app:updateForgingStatus',
    'app:getForgingStatus',
    'app:getTransactionsFromPool',
    'app:postTransaction',
    'app:getLastBlock',
    'app:getAccount',
    'app:getAccounts',
    'app:getBlockByID',
    'app:getBlocksByIDs',
    'app:getBlockByHeight',
    'app:getBlocksByHeightBetween',
    'app:getTransactionByID',
    'app:getTransactionsByIDs',
    'app:getSchema',
    'app:getRegisteredModules',
    'app:getNodeInfo',
    'app:getRegisteredActions',
    'app:getRegisteredEvents',
    'dpos:getAllDelegates',
    'dpos:getUnlockings'
  ]

app:getRegisteredEvents

Returns a list of all events known to the application.

Includes events from registered modules and plugins.

Example

const { apiClient } = require('lisk-sdk');

const getClient = async () => {
  if (!clientCache) {
    clientCache = await apiClient.createWSClient('ws://localhost:8080/ws');
  }
  return clientCache;
};

const useClient = async () => {
  const client = await getClient();
  const events = await client.invoke('app:getRegisteredEvents');
  return events;
};

useClient().then((val) => {
  console.log("val:",val);
});

Input

none

Returns

Example output
[
    'app:ready',
    'app:shutdown',
    'app:network:event',
    'app:network:ready',
    'app:transaction:new',
    'app:chain:fork',
    'app:chain:validators:change',
    'app:block:new',
    'app:block:delete',
    'token:registeredToBus',
    'token:loading:started',
    'token:loading:finished',
    'token:unloading:started',
    'token:unloading:finished',
    'token:unloading:error',
    'sequence:registeredToBus',
    'sequence:loading:started',
    'sequence:loading:finished',
    'sequence:unloading:started',
    'sequence:unloading:finished',
    'sequence:unloading:error',
    'keys:registeredToBus',
    'keys:loading:started',
    'keys:loading:finished',
    'keys:unloading:started',
    'keys:unloading:finished',
    'keys:unloading:error',
    'dpos:registeredToBus',
    'dpos:loading:started',
    'dpos:loading:finished',
    'dpos:unloading:started',
    'dpos:unloading:finished',
    'dpos:unloading:error'
  ]

app:getRegisteredModules

Gets a list of all modules that are registered in the application.

Input

none

Returns

Example output
[
  {
     "id":2,
     "name":"token",
     "actions":[],
     "events":[],
     "reducers":[
        "token:credit",
        "token:debit",
        "token:getBalance",
        "token:getMinRemainingBalance"
     ],
     "transactionAssets":[
        {
           "id":0,
           "name":"transfer"
        }
     ]
  },
  {
     "id":3,
     "name":"sequence",
     "actions":[],
     "events":[],
     "reducers":[],
     "transactionAssets":[]
  },
  {
     "id":4,
     "name":"keys",
     "actions":[],
     "events":[],
     "reducers":[],
     "transactionAssets":[
        {
           "id":0,
           "name":"registerMultisignatureGroup"
        }
     ]
  },
  {
     "id":5,
     "name":"dpos",
     "actions":[
        "dpos:getAllDelegates"
     ],
     "events":[],
     "reducers":[],
     "transactionAssets":[
        {
           "id":0,
           "name":"registerDelegate"
        },
        {
           "id":1,
           "name":"voteDelegate"
        },
        {
           "id":2,
           "name":"unlockToken"
        },
        {
           "id":3,
           "name":"reportDelegateMisbehavior"
        }
     ]
  },
  {
     "id":1000,
     "name":"hello",
     "actions":["hello:amountOfHellos"],
     "events":["hello:newHello"],
     "reducers":[],
     "transactionAssets":[
        {
           "id":0,
           "name":"helloAsset"
        }
     ]
  }
]

app:getNodeInfo

Gets information about the node.

Input

none

Returns

Example output
{
  "version":"2.1.0",
  "networkVersion":"1.1",
  "networkIdentifier":"f9aa0b17154aa27aa17f585b96b19a6559ed6ef3805352188312912c7b9192e5",
  "lastBlockID":"3516635832d937949409474d3e53bdb7db5f1fa32cf68ebe8fdc915573ef0f2f",
  "height":119,
  "finalizedHeight":0,
  "syncing":false,
  "unconfirmedTransactions":0,
  "genesisConfig":{
     "blockTime":10,
     "maxPayloadLength":15360,
     "bftThreshold":68,
     "minFeePerByte":1000,
     "baseFees":[
        {
           "moduleID":5,
           "assetID":0,
           "baseFee":"1000000000"
        }
     ],
     "rewards":{
        "milestones":[
           "500000000",
           "400000000",
           "300000000",
           "200000000",
           "100000000"
        ],
        "offset":2160,
        "distance":3000000
     },
     "communityIdentifier":"hello",
     "minRemainingBalance":"5000000",
     "activeDelegates":101,
     "standbyDelegates":2,
     "delegateListRoundOffset":2
  },
  "registeredModules":[ /*registered modules*/ ]
}

app:getConnectedPeers

Returns all connected peers.

Input

none

app:getDisconnectedPeers

Returns all disconnected peers

Input

none

app:getForgingStatus

Gets information about the forging status of the node.

Input

none

Returns

Example output
[
  {
     "address":"9cabee3d27426676b852ce6b804cb2fdff7cd0b5",
     "forging":true
  }
]

app:updateForgingStatus

Enable or disable forging for a registered forger in config.

Input

{
  address: string; (1)
  password: string; (2)
  forging: boolean; (3)
  height?: number; (4)
  maxHeightPrevoted?: number; (5)
  maxHeightPreviouslyForged?: number; (6)
  override?: boolean; (7)
}
1 Address as hex string.
2 Password to decrypt the passphrase.
3 When enabling forging, the value should be true.
4 Height of the last forged block by the delegate.
5 Only required when enabling forging. Height of the previously prevoted block by any delegate. Must match the value in the forger_info data.
6 Only required when enabling forging. Height of the previously last forged block. Must match the value in the forger_info data.
7 Optional: If true, overrides maxHeightPreviouslyForged and maxHeightPrevoted values in the forger_info data.

app:getAccount

Gets information about an account based on its address.

Input

{
  address: string; (1)
}
1 Address as hex string.

Returns

Example output
"0a147c1facd5a55044f4b2ec3329b8ae8382959d4d7e1206088099e6e1301a020801220208002a0c0a0a0a001800200028003000c23e0c0a0a48656c6c6f204c69736b"

app:getAccounts

Gets information about multiple accounts based on their address.

Input

{
  address: string[]; (1)
}
1 List of addresses in hexadecimal representation.

Returns

Example output
[
  "0a147c1facd5a55044f4b2ec3329b8ae8382959d4d7e1206088099e6e1301a020801220208002a0c0a0a0a001800200028003000c23e0c0a0a48656c6c6f204c69736b"
]

app:getLastBlock

Gets the last forged block of the blockchain.

Input

none

Returns

Example output
"0ace01080210e7c9c8fe0518b5012220a6d70932fa088a10e34f89c49235851674efa478bef485b3501ace2ce3553b202a20e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b8553220378459e753aad9b1cc86d4d91c53045c01728529668105535064ecf66f5e612638004217089a0110001a10537de22286d9a750b40546f0541b67b34a403af7b23fde6585e18def6580bc5ab7de042e136b996e7c650d806d179e0bac74b72f0ec543013c8b3f4a4ce789b1c2e13f09a9869e5e854c9369f234c8db0502"

app:getBlockByID

Gets information about a block based on its ID.

Input

{
  id: string; (1)
}
1 block ID in hex string

Returns

Example output
"0acf01080210c9f1c8fe0518f7042220a1f1d770d6b357aa380a03bac50d5326d71e1852f034832be4a8f7d51dc297422a20d98e6b8e5f2d0c07a7223ed8aef260ebdc16cb9109454fb800e26dd5133cd3943220b3ea2960041507cb3deb7172f68836048c1d980e06ba4bc0b9a75262d66b37ec3800421808b00410ad041a10eea29fbfbdf4c83c26ee8d8805e555304a407c641f52de39d7790ffe0568f89eae06b2f8a71c2af08dac7b96b92b486668376bfbbcb63ef1334284731847219e5726157c789823b128a2d85f8552038e0d0a128f010802100018072080ade2042a200fe9a3f1a21b5530f27f87a414b549e79a940bf24fdf2b2f05e7f22aeeecc86a321e088088debe0112147c1facd5a55044f4b2ec3329b8ae8382959d4d7e1a003a4012287dca67b83563c345be901d74b54dae1e9c78dae33e67feed5fa8047e1869ed5aaddf1de2337a26a774161bf9364e1d2c31b52a1eb24c61bbeb0ab514050d"

app:getBlocksByIDs

Gets information about multiple blocks based on their IDs.

Input

{
  ids: string[]; (1)
}
1 block ID in hex string

Returns

Example output
["0acf01080210c9f1c8fe0518f7042220a1f1d770d6b357aa380a03bac50d5326d71e1852f034832be4a8f7d51dc297422a20d98e6b8e5f2d0c07a7223ed8aef260ebdc16cb9109454fb800e26dd5133cd3943220b3ea2960041507cb3deb7172f68836048c1d980e06ba4bc0b9a75262d66b37ec3800421808b00410ad041a10eea29fbfbdf4c83c26ee8d8805e555304a407c641f52de39d7790ffe0568f89eae06b2f8a71c2af08dac7b96b92b486668376bfbbcb63ef1334284731847219e5726157c789823b128a2d85f8552038e0d0a128f010802100018072080ade2042a200fe9a3f1a21b5530f27f87a414b549e79a940bf24fdf2b2f05e7f22aeeecc86a321e088088debe0112147c1facd5a55044f4b2ec3329b8ae8382959d4d7e1a003a4012287dca67b83563c345be901d74b54dae1e9c78dae33e67feed5fa8047e1869ed5aaddf1de2337a26a774161bf9364e1d2c31b52a1eb24c61bbeb0ab514050d"]

app:getBlockByHeight

Gets information about a block based on its height.

Input

{
  height: number; (1)
}
1 block height

Returns

Example output
"0acc01080210abbfc8fe05187b2220908e5c18cedd5fc0f1720663b34bccfdc6ee7d8386774635efb5eaf109b1898a2a20e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b8553220b3ea2960041507cb3deb7172f68836048c1d980e06ba4bc0b9a75262d66b37ec38004216085710001a101e072d7ec38f6956537a1ad008df53f74a40fc1927266c040b61707cfd686d47896890ee5a934547abcd2f4d697fffd86c91f23cc1a27df8b1e13a914b4478fded0de4ed6d4fecca161a76f92e8038a6e90f"

app:getBlocksByHeightBetween

Gets all blocks starting from height from, until height to.

Input

{
  from: number; (1)
  to: number; (2)
}
1 block height to fetch from
2 block height to fetch to

Returns

Example output
[
   "0ace01080210a5d5c8fe0518ae022220c1dd20a1d19a2e90c140d76a2a15214fb7e4a805cb0a8bcd2115fd354b82285b2a20e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855322071d21f1b2ebd2968157e013fe6c4eac5eb0f1b2449e87735bf5bcb950439fce83800421708e00110001a10bb060bd8ec0ca23573cda88093e637424a40786b15a51d50bd575a8972b582b5a4557e9ec0f4f0bec75d6d76871179b9a06de41443eb560a03e1bcd43273eaa209fe4e23cbf715d41261e521212536d7fc0e",
   "0ace010802109bd5c8fe0518ad02222065dc50826f48e3943eab6111fd40c80a935885feb6eca55da99a2c0d8051a7d82a20e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b8553220a4873bb8edab1822bb38c65c6948e1cbee83e62ad00fb9b6c6c3893767354b443800421708df0110001a106dbd6013796ed3a52c5052f3d94c8a9a4a40a7653b4d52ca3a81f83b0d6f16892ec9b2fb09a999e716215aaef35a117634fd18e38cfb219ced077f716643f21852e5b60806b209224b3c2f81174c5c57e00a",
   "0ace0108021091d5c8fe0518ac0222207551ae69b656142bce7ec5af177522f9806ef8cfab3741ef7e3266f489e9e48a2a20e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b85532201c0960d064e45e0a603a26d0892e998a39bec8cd2c8c25f8c75d2bef419af9d23800421708de0110001a10f4dc8b2667a090a3f8a6e4587ce815b24a40d8801f4435b7d805a4569608d80b66f235b8ef1cba6a7d4b0c374692eb7233fb2db347abf8ceef01b57b49758ebdade8197858b85921c765c7675da7c4f79a06",
   "0ace0108021087d5c8fe0518ab022220ef89d40f02678e8fe89d388f7339e991dcf30b18eacf4791720c3d65f042e6aa2a20e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b85532204c4b4357efed0a0d395ccd7108ddd7ca43652860e2aae9e52738212e2d8952a73800421708dd0110001a106e9bb3eeeb9ac7e48aa71e850f86ae124a40be3c885d4291b20300db6ddd18bf5068a3182db58864532f8e4a380f12a577ee87869c0e3706c2aa2aac3db59baf8a27112cd49ff482201ae856f79b7c04370e"
]

app:getTransactionByID

Gets information about a single transaction based on its ID.

Input

{
  id: string; (1)
}
1 transaction ID in hex string

Returns

Example output
"0802100018062080ade2042a200fe9a3f1a21b5530f27f87a414b549e79a940bf24fdf2b2f05e7f22aeeecc86a321e088088debe0112147c1facd5a55044f4b2ec3329b8ae8382959d4d7e1a003a401adac14de6bfab8ec103cfb7486449180ee0c9f3e60de9e555940c4b73856d21acb366eaa89693b087a5858cf6713c0eae911c5869ad23dbc1f386de177d8205"

app:getTransactionsByIDs

Gets information about multiple transactions based on their IDs.

Input

{
  ids: string[]; (1)
}
1 transaction ID in hex string

Returns

Example output
[
  "0802100018062080ade2042a200fe9a3f1a21b5530f27f87a414b549e79a940bf24fdf2b2f05e7f22aeeecc86a321e088088debe0112147c1facd5a55044f4b2ec3329b8ae8382959d4d7e1a003a401adac14de6bfab8ec103cfb7486449180ee0c9f3e60de9e555940c4b73856d21acb366eaa89693b087a5858cf6713c0eae911c5869ad23dbc1f386de177d8205"
]

app:getTransactionsFromPool

Gets information about all transactions that are currently in the transaction pool of the application.

Input

none

Returns

Example output
[
  "0802100018012080ade2042a200fe9a3f1a21b5530f27f87a414b549e79a940bf24fdf2b2f05e7f22aeeecc86a321e088094ebdc0312147c1facd5a55044f4b2ec3329b8ae8382959d4d7e1a003a409a4128fc04d167d44490e24e7f29be2465044762b8469a96a5ab33889e2411004b3f8fab002a1f5563a0edd16324bc387c13fb2d7108e1592e86c8ed855d5006"
]

app:postTransaction

Posts a transaction to the node.

Input

{
  transaction: string; (1)
}
1 encoded transaction in hex string

app:getForgers

Returns the status of all registered forgers information for the current round.

Input

none

Returns

Example output
[
  {
     "address":"d8e611bafd70a549f035cf61ab0d6ed9e7f25c4e",
     "nextForgingTime":1607606327
  },
  {
     "address":"dcb5bf35b6d521195e613c42483f520139e2331d",
     "nextForgingTime":1607606337
  },
  {
     "address":"df0e187bb3895806261c87cf66e1772566ee8e58",
     "nextForgingTime":1607606347
  },
  {
     "address":"e2950a9f07b44e724df2129360cc140293c08308",
     "nextForgingTime":1607606357
  },
  {
     "address":"e39316cc020089ea7a5614bcf69a8931c10630a7",
     "nextForgingTime":1607606367
  },
  {
     "address":"e9355152c117c9e1fad8be86e9abea961cef4a36",
     "nextForgingTime":1607606377
  },
  {
     "address":"f730cb929a1c45032387c345e10d2427bea55a5e",
     "nextForgingTime":1607606387
  },
  {
     "address":"fa526a1611ccc66dec815cb963174118074b736e",
     "nextForgingTime":1607606397
  },
  {
     "address":"ffce8ce225c5d80098f50e877125b655aef6d101",
     "nextForgingTime":1607606407
  },
  {
     "address":"03f6d90b7dbd0497dc3a52d1c27e23bb8c75897f",
     "nextForgingTime":1607606417
  },
  {
     "address":"0903f4c5cb599a7928aef27e314e98291d1e3888",
     "nextForgingTime":1607606427
  },
  {
     "address":"0ada6a2f6c8f891769366fc9aa6fd9f1facb36cf",
     "nextForgingTime":1607606437
  },
  {
     "address":"0bc3bec2fdb565996fd316e368e66e5d8e830808",
     "nextForgingTime":1607606447
  },
  {
     "address":"0d2c377e936b68c70066613b10c0fdad537f90da",
     "nextForgingTime":1607606457
  },
  {
     "address":"0f33a5033b750e6c4dca47e38ba020e912df143e",
     "nextForgingTime":1607606467
  },
  {
     "address":"1ac73bff74924ad9b74236c4962be27174ae87d0",
     "nextForgingTime":1607606477
  },
  {
     "address":"1c194c2be1cc53f663a93c64899cbaa34016f415",
     "nextForgingTime":1607606487
  },
  {
     "address":"2159f75e5440c36431aedbc7dc29a65a327778b8",
     "nextForgingTime":1607606497
  },
  {
     "address":"246fba5c519576d93c5fac899c44b29b72f526ae",
     "nextForgingTime":1607606507
  },
  {
     "address":"24c130eb6cc0d8f663a8f6d16ffc61f935a2e02e",
     "nextForgingTime":1607606517
  },
  {
     "address":"27843a60a1e044c1e6e3cf119fdf64eb2b3e0d94",
     "nextForgingTime":1607606527
  },
  {
     "address":"290abc4a2244bf0ecf5aa1ccee8ac8f60f8bce48",
     "nextForgingTime":1607606537
  },
  {
     "address":"2cf52c08cc76091d884e800c1c697b13f69907d4",
     "nextForgingTime":1607606547
  },
  {
     "address":"308a95d1d3f7bb556f48da4f4344566e59f6f1cb",
     "nextForgingTime":1607606557
  },
  {
     "address":"31204ad5b95dd922c2899aa5bf8e7ee5b7546af3",
     "nextForgingTime":1607606567
  },
  {
     "address":"31fe789b43277e35ab410f2afcfb574280af2dd8",
     "nextForgingTime":1607606577
  },
  {
     "address":"328d0f546695c5fa02105deb055cf2801d9b8ba1",
     "nextForgingTime":1607606587
  },
  {
     "address":"3b3e137b1bec6f20c9a8b2ad4f5784661fb0fa79",
     "nextForgingTime":1607606597
  },
  {
     "address":"3b96d8565569421f43684b2c4eaa0639cbb5e011",
     "nextForgingTime":1607606607
  },
  {
     "address":"3c80e7d9964a1c83a6dd5dc64e105e0e634bd58a",
     "nextForgingTime":1607606617
  },
  {
     "address":"3de95e18f18a54e2269bbf8f1a38ea70762c73fa",
     "nextForgingTime":1607606627
  },
  {
     "address":"3deeb0a7426a028b435b4ddd8d35ac85cf567237",
     "nextForgingTime":1607606637
  },
  {
     "address":"436b40f58c0c27ed133f6001a019ff25561efad4",
     "nextForgingTime":1607606647
  },
  {
     "address":"463e7e879b7bdc6a97ec02a2a603aa1a46a04c80",
     "nextForgingTime":1607606657
  },
  {
     "address":"4b6126597881cb6ba1a45c1f6286769e7a094fb4",
     "nextForgingTime":1607606667
  },
  {
     "address":"4e874bcfb6f5896fe9e5dab3b26f59b2e2a9c09b",
     "nextForgingTime":1607606677
  },
  {
     "address":"4f4422eb61c45edb4d76f10cd871c9f983f2ebaa",
     "nextForgingTime":1607606687
  },
  {
     "address":"4fd52f67f151fbbdda9dd92a714884a399830eca",
     "nextForgingTime":1607606697
  },
  {
     "address":"4fd8cc4e27a3489b57ed986efe3d327d3de40d92",
     "nextForgingTime":1607606707
  },
  {
     "address":"52f9cdcff0605241c78278690ae36eb0136a30ff",
     "nextForgingTime":1607606717
  },
  {
     "address":"5853a3f24990deecced49d6bc15990102ec0c33a",
     "nextForgingTime":1607606727
  },
  {
     "address":"58d907d26508603e838423daa2061c29c7a84950",
     "nextForgingTime":1607606737
  },
  {
     "address":"5ade564399e670bd1d429583059067f3a6ca2b7f",
     "nextForgingTime":1607606747
  },
  {
     "address":"5cd1d0ccf98f2bd5a4bfaa770d55f16498af0bcc",
     "nextForgingTime":1607606757
  },
  {
     "address":"5fbd442a4647b079cda1229ecf6d8f44f361c8ca",
     "nextForgingTime":1607606767
  },
  {
     "address":"6174515fa66c91bff1128913edd4e0f1de37cee0",
     "nextForgingTime":1607606777
  },
  {
     "address":"61f396d2a4a13ab7a39ba791fac4b921b54a208e",
     "nextForgingTime":1607606787
  },
  {
     "address":"6330fd8ae91df4a5d7fbc2390c182ec6676dc5a6",
     "nextForgingTime":1607606797
  },
  {
     "address":"657f610728eef97d55e50212871f0993bb7cc700",
     "nextForgingTime":1607606807
  },
  {
     "address":"65f927187bf96aac5d968fcc9351e5492b5f9356",
     "nextForgingTime":1607606817
  },
  {
     "address":"6b9895c31bcdb2d9c929b9da7e389ed91de672a0",
     "nextForgingTime":1607606827
  },
  {
     "address":"6e12e4498ae69fb07ff2d8aab036a911229d6c62",
     "nextForgingTime":1607606837
  },
  {
     "address":"6ffcd8ad547d8a549a31b25236e322c781a52d85",
     "nextForgingTime":1607606847
  },
  {
     "address":"70abf056bd92e8f77cfc551748fa54a4e3018d5f",
     "nextForgingTime":1607606857
  },
  {
     "address":"79f30c1cbc1b9c4949c8b85acc24a7578e01558b",
     "nextForgingTime":1607606867
  },
  {
     "address":"7d2c6781d873ed2ba7a87f46f735f5e15a41a6f1",
     "nextForgingTime":1607606877
  },
  {
     "address":"7d60db187337cbd881140d69d84c9246eda8382e",
     "nextForgingTime":1607606887
  },
  {
     "address":"8074f0d02f748fc55448a4bf200f1dade8517059",
     "nextForgingTime":1607606897
  },
  {
     "address":"82cbc7b39d35af358f9e2513af13b2f77b647a00",
     "nextForgingTime":1607606907
  },
  {
     "address":"8459b8870fcefff59f172d716b7bfe9fcc28d408",
     "nextForgingTime":1607606917
  },
  {
     "address":"8506f3c10f75044946f1a23a7caf578253649471",
     "nextForgingTime":1607606927
  },
  {
     "address":"8722453383f781d5427a4ee211020e49bf34a2b9",
     "nextForgingTime":1607606937
  },
  {
     "address":"89b144ecfdd5ea352083bf624d3cf842ec06a5e3",
     "nextForgingTime":1607606947
  },
  {
     "address":"8ac800124d5b16afd57b5cf7245edfcd5885ea3b",
     "nextForgingTime":1607606957
  },
  {
     "address":"8b1c221a030cf720736d9fb7d0499dd7276fc1b3",
     "nextForgingTime":1607606967
  },
  {
     "address":"8eceffd5a41e678b6467c9bc80ce35d2e8543d98",
     "nextForgingTime":1607606977
  },
  {
     "address":"9139c91f8a0aa1fb385770feaf299b99883aec2d",
     "nextForgingTime":1607606987
  },
  {
     "address":"936f3a0f4d776b6a7722ed126e8ff17b44d7e7b8",
     "nextForgingTime":1607606997
  },
  {
     "address":"94146c9889748c7b727eb3ac8c20e53c52effd32",
     "nextForgingTime":1607607007
  },
  {
     "address":"9b42e4264020f3c3dcaaed806578ccd469205060",
     "nextForgingTime":1607607017
  },
  {
     "address":"9cabee3d27426676b852ce6b804cb2fdff7cd0b5",
     "nextForgingTime":1607607027
  },
  {
     "address":"9d0149b0962d44bfc08a9f64d5afceb6281d7fb5",
     "nextForgingTime":1607607037
  },
  {
     "address":"a0620472cde03e77caece701ab7bc5928a5d367c",
     "nextForgingTime":1607607047
  },
  {
     "address":"a0bc50b27e7ac39060ed015a55f2f4508c84f0c2",
     "nextForgingTime":1607607057
  },
  {
     "address":"a28d5e34007fd8fe6d7903044eb23a60fdad3c00",
     "nextForgingTime":1607607067
  },
  {
     "address":"a6f6a0543ae470c6b056021cb2ac153368eafeec",
     "nextForgingTime":1607607077
  },
  {
     "address":"a9c66694dd65b2fdf40cdf45a0c308cbd38004fc",
     "nextForgingTime":1607607087
  },
  {
     "address":"ab0041a7d3f7b2c290b5b834d46bdc7b7eb85815",
     "nextForgingTime":1607607097
  },
  {
     "address":"abd2ed5ad35b3a0870aadae6dceacc988ba63895",
     "nextForgingTime":1607607107
  },
  {
     "address":"acfbdbaeb93d587170c7cd9c0b5ffdeb7ff9daec",
     "nextForgingTime":1607607117
  },
  {
     "address":"ad42f8e867d618171bf4982e64269442148f6e11",
     "nextForgingTime":1607607127
  },
  {
     "address":"aebd99f07218109162a905d0e0c91e58bedc83c5",
     "nextForgingTime":1607607137
  },
  {
     "address":"b11c5811ea074a30142d824b6e8cfd3df14b2688",
     "nextForgingTime":1607607147
  },
  {
     "address":"b485becd88db1ab3d556d405204451ba00adaa7d",
     "nextForgingTime":1607607157
  },
  {
     "address":"b543e2e592200beb38235f6e48f8abe1d87ad872",
     "nextForgingTime":1607607167
  },
  {
     "address":"b56c55b9a70c8e2f07979b862374aed0e92a6dda",
     "nextForgingTime":1607607177
  },
  {
     "address":"b7580969dd56151f608931f126f793bbf45d8fa0",
     "nextForgingTime":1607607187
  },
  {
     "address":"b76a0f1819c4be0a1482567ca9b9fbed3eda444c",
     "nextForgingTime":1607607197
  },
  {
     "address":"bd175729d4177259c71cf13fd4ecfb5d01542706",
     "nextForgingTime":1607607207
  },
  {
     "address":"be89f4e983dfb04e2b58a12eb9ed18149e108b07",
     "nextForgingTime":1607607217
  },
  {
     "address":"c3ab2ac23512d9bf62b02775e22cf80df814eb1b",
     "nextForgingTime":1607607227
  },
  {
     "address":"c697b620c7c4015e32dd7bdd7d0430b33404e107",
     "nextForgingTime":1607607237
  },
  {
     "address":"c98554123062ac5795a3ee905b081e863db5a818",
     "nextForgingTime":1607607247
  },
  {
     "address":"ca309a5f4bbf11ca86592febb6d2ccc78309f69e",
     "nextForgingTime":1607607257
  },
  {
     "address":"ca5f6d76eab6e4f5aacee2864c79034d7111b986",
     "nextForgingTime":1607607267
  },
  {
     "address":"cb579ee537b34926d47129a0b54c0e6d00ef3004",
     "nextForgingTime":1607607277
  },
  {
     "address":"d06fe6d3e5f7facb5855eca839422fe3824a5d6e",
     "nextForgingTime":1607607287
  },
  {
     "address":"d0a0e45b950e3871d8783b973409042b4ab382d4",
     "nextForgingTime":1607607297
  },
  {
     "address":"d2c9a93755aed20c4d8f55c1e92b812d2c7d49d2",
     "nextForgingTime":1607607307
  },
  {
     "address":"d3c8064d011ef853e3be506b95a045f41f78e72a",
     "nextForgingTime":1607607317
  },
  {
     "address":"d5bd2050b74b309d54819ca17add173c6fca1e16",
     "nextForgingTime":1607607327
  },
  {
     "address":"d5c4e380b1ec2f7f2068cfba9a90cb3ae7816110",
     "nextForgingTime":1607607337
  },
  {
     "address":"d5e1f52cbe4a11a3730b98f52109b57602a9c4a1",
     "nextForgingTime":1607607347
  }
]

app:getSchema

Gets the app schema.

Input

none

Returns

Example output
{
  "account":{
     "$id":"/account/base",
     "type":"object",
     "properties":{
        "address":{
           "dataType":"bytes",
           "fieldNumber":1
        },
        "token":{
           "type":"object",
           "properties":{
              "balance":{
                 "fieldNumber":1,
                 "dataType":"uint64"
              }
           },
           "fieldNumber":2
        },
        "sequence":{
           "type":"object",
           "properties":{
              "nonce":{
                 "fieldNumber":1,
                 "dataType":"uint64"
              }
           },
           "fieldNumber":3
        },
        "keys":{
           "type":"object",
           "properties":{
              "numberOfSignatures":{
                 "dataType":"uint32",
                 "fieldNumber":1
              },
              "mandatoryKeys":{
                 "type":"array",
                 "items":{
                    "dataType":"bytes"
                 },
                 "fieldNumber":2
              },
              "optionalKeys":{
                 "type":"array",
                 "items":{
                    "dataType":"bytes"
                 },
                 "fieldNumber":3
              }
           },
           "fieldNumber":4
        },
        "dpos":{
           "type":"object",
           "properties":{
              "delegate":{
                 "type":"object",
                 "fieldNumber":1,
                 "properties":{
                    "username":{
                       "dataType":"string",
                       "fieldNumber":1
                    },
                    "pomHeights":{
                       "type":"array",
                       "items":{
                          "dataType":"uint32"
                       },
                       "fieldNumber":2
                    },
                    "consecutiveMissedBlocks":{
                       "dataType":"uint32",
                       "fieldNumber":3
                    },
                    "lastForgedHeight":{
                       "dataType":"uint32",
                       "fieldNumber":4
                    },
                    "isBanned":{
                       "dataType":"boolean",
                       "fieldNumber":5
                    },
                    "totalVotesReceived":{
                       "dataType":"uint64",
                       "fieldNumber":6
                    }
                 },
                 "required":[
                    "username",
                    "pomHeights",
                    "consecutiveMissedBlocks",
                    "lastForgedHeight",
                    "isBanned",
                    "totalVotesReceived"
                 ]
              },
              "sentVotes":{
                 "type":"array",
                 "fieldNumber":2,
                 "items":{
                    "type":"object",
                    "properties":{
                       "delegateAddress":{
                          "dataType":"bytes",
                          "fieldNumber":1
                       },
                       "amount":{
                          "dataType":"uint64",
                          "fieldNumber":2
                       }
                    },
                    "required":[
                       "delegateAddress",
                       "amount"
                    ]
                 }
              },
              "unlocking":{
                 "type":"array",
                 "fieldNumber":3,
                 "items":{
                    "type":"object",
                    "properties":{
                       "delegateAddress":{
                          "dataType":"bytes",
                          "fieldNumber":1
                       },
                       "amount":{
                          "dataType":"uint64",
                          "fieldNumber":2
                       },
                       "unvoteHeight":{
                          "dataType":"uint32",
                          "fieldNumber":3
                       }
                    },
                    "required":[
                       "delegateAddress",
                       "amount",
                       "unvoteHeight"
                    ]
                 }
              }
           },
           "fieldNumber":5
        },
        "hello":{
           "type":"object",
           "properties":{
              "helloMessage":{
                 "fieldNumber":1,
                 "dataType":"string"
              }
           },
           "fieldNumber":1000
        }
     },
     "required":[
        "address",
        "token",
        "sequence",
        "keys",
        "dpos",
        "hello"
     ]
  },
  "block":{
     "$id":"/block",
     "type":"object",
     "properties":{
        "header":{
           "dataType":"bytes",
           "fieldNumber":1
        },
        "payload":{
           "type":"array",
           "items":{
              "dataType":"bytes"
           },
           "fieldNumber":2
        }
     },
     "required":[
        "header",
        "payload"
     ]
  },
  "blockHeader":{
     "$id":"/block/header",
     "type":"object",
     "properties":{
        "version":{
           "dataType":"uint32",
           "fieldNumber":1
        },
        "timestamp":{
           "dataType":"uint32",
           "fieldNumber":2
        },
        "height":{
           "dataType":"uint32",
           "fieldNumber":3
        },
        "previousBlockID":{
           "dataType":"bytes",
           "fieldNumber":4
        },
        "transactionRoot":{
           "dataType":"bytes",
           "fieldNumber":5
        },
        "generatorPublicKey":{
           "dataType":"bytes",
           "fieldNumber":6
        },
        "reward":{
           "dataType":"uint64",
           "fieldNumber":7
        },
        "asset":{
           "dataType":"bytes",
           "fieldNumber":8
        },
        "signature":{
           "dataType":"bytes",
           "fieldNumber":9
        }
     },
     "required":[
        "version",
        "timestamp",
        "height",
        "previousBlockID",
        "transactionRoot",
        "generatorPublicKey",
        "reward",
        "asset"
     ]
  },
  "blockHeadersAssets":{
     "0":{
        "$id":"/genesisBlock/header/asset",
        "type":"object",
        "required":[
           "accounts",
           "initDelegates",
           "initRounds"
        ],
        "properties":{
           "accounts":{
              "type":"array",
              "fieldNumber":1,
              "items":{
                 "$id":"/account/base",
                 "type":"object",
                 "properties":{
                    "address":{
                       "dataType":"bytes",
                       "fieldNumber":1
                    },
                    "token":{
                       "type":"object",
                       "properties":{
                          "balance":{
                             "fieldNumber":1,
                             "dataType":"uint64"
                          }
                       },
                       "fieldNumber":2
                    },
                    "sequence":{
                       "type":"object",
                       "properties":{
                          "nonce":{
                             "fieldNumber":1,
                             "dataType":"uint64"
                          }
                       },
                       "fieldNumber":3
                    },
                    "keys":{
                       "type":"object",
                       "properties":{
                          "numberOfSignatures":{
                             "dataType":"uint32",
                             "fieldNumber":1
                          },
                          "mandatoryKeys":{
                             "type":"array",
                             "items":{
                                "dataType":"bytes"
                             },
                             "fieldNumber":2
                          },
                          "optionalKeys":{
                             "type":"array",
                             "items":{
                                "dataType":"bytes"
                             },
                             "fieldNumber":3
                          }
                       },
                       "fieldNumber":4
                    },
                    "dpos":{
                       "type":"object",
                       "properties":{
                          "delegate":{
                             "type":"object",
                             "fieldNumber":1,
                             "properties":{
                                "username":{
                                   "dataType":"string",
                                   "fieldNumber":1
                                },
                                "pomHeights":{
                                   "type":"array",
                                   "items":{
                                      "dataType":"uint32"
                                   },
                                   "fieldNumber":2
                                },
                                "consecutiveMissedBlocks":{
                                   "dataType":"uint32",
                                   "fieldNumber":3
                                },
                                "lastForgedHeight":{
                                   "dataType":"uint32",
                                   "fieldNumber":4
                                },
                                "isBanned":{
                                   "dataType":"boolean",
                                   "fieldNumber":5
                                },
                                "totalVotesReceived":{
                                   "dataType":"uint64",
                                   "fieldNumber":6
                                }
                             },
                             "required":[
                                "username",
                                "pomHeights",
                                "consecutiveMissedBlocks",
                                "lastForgedHeight",
                                "isBanned",
                                "totalVotesReceived"
                             ]
                          },
                          "sentVotes":{
                             "type":"array",
                             "fieldNumber":2,
                             "items":{
                                "type":"object",
                                "properties":{
                                   "delegateAddress":{
                                      "dataType":"bytes",
                                      "fieldNumber":1
                                   },
                                   "amount":{
                                      "dataType":"uint64",
                                      "fieldNumber":2
                                   }
                                },
                                "required":[
                                   "delegateAddress",
                                   "amount"
                                ]
                             }
                          },
                          "unlocking":{
                             "type":"array",
                             "fieldNumber":3,
                             "items":{
                                "type":"object",
                                "properties":{
                                   "delegateAddress":{
                                      "dataType":"bytes",
                                      "fieldNumber":1
                                   },
                                   "amount":{
                                      "dataType":"uint64",
                                      "fieldNumber":2
                                   },
                                   "unvoteHeight":{
                                      "dataType":"uint32",
                                      "fieldNumber":3
                                   }
                                },
                                "required":[
                                   "delegateAddress",
                                   "amount",
                                   "unvoteHeight"
                                ]
                             }
                          }
                       },
                       "fieldNumber":5
                    },
                    "hello":{
                       "type":"object",
                       "properties":{
                          "helloMessage":{
                             "fieldNumber":1,
                             "dataType":"string"
                          }
                       },
                       "fieldNumber":1000
                    }
                 },
                 "required":[
                    "address",
                    "token",
                    "sequence",
                    "keys",
                    "dpos",
                    "hello"
                 ]
              }
           },
           "initDelegates":{
              "type":"array",
              "items":{
                 "dataType":"bytes"
              },
              "fieldNumber":2,
              "minItems":1
           },
           "initRounds":{
              "dataType":"uint32",
              "fieldNumber":3,
              "minimum":3
           }
        }
     },
     "2":{
        "$id":"/blockHeader/asset/v2",
        "type":"object",
        "properties":{
           "maxHeightPreviouslyForged":{
              "dataType":"uint32",
              "fieldNumber":1
           },
           "maxHeightPrevoted":{
              "dataType":"uint32",
              "fieldNumber":2
           },
           "seedReveal":{
              "dataType":"bytes",
              "minLength":16,
              "maxLength":16,
              "fieldNumber":3
           }
        },
        "required":[
           "maxHeightPreviouslyForged",
           "maxHeightPrevoted",
           "seedReveal"
        ]
     }
  },
  "transaction":{
     "$id":"lisk/transaction",
     "type":"object",
     "required":[
        "moduleID",
        "assetID",
        "nonce",
        "fee",
        "senderPublicKey",
        "asset"
     ],
     "properties":{
        "moduleID":{
           "dataType":"uint32",
           "fieldNumber":1,
           "minimum":2
        },
        "assetID":{
           "dataType":"uint32",
           "fieldNumber":2
        },
        "nonce":{
           "dataType":"uint64",
           "fieldNumber":3
        },
        "fee":{
           "dataType":"uint64",
           "fieldNumber":4
        },
        "senderPublicKey":{
           "dataType":"bytes",
           "fieldNumber":5,
           "minLength":32,
           "maxLength":32
        },
        "asset":{
           "dataType":"bytes",
           "fieldNumber":6
        },
        "signatures":{
           "type":"array",
           "items":{
              "dataType":"bytes"
           },
           "fieldNumber":7
        }
     }
  },
  "transactionsAssets":[
     {
        "moduleID":2,
        "moduleName":"token",
        "assetID":0,
        "assetName":"transfer",
        "schema":{
           "$id":"lisk/transfer-asset",
           "title":"Transfer transaction asset",
           "type":"object",
           "required":[
              "amount",
              "recipientAddress",
              "data"
           ],
           "properties":{
              "amount":{
                 "dataType":"uint64",
                 "fieldNumber":1
              },
              "recipientAddress":{
                 "dataType":"bytes",
                 "fieldNumber":2,
                 "minLength":20,
                 "maxLength":20
              },
              "data":{
                 "dataType":"string",
                 "fieldNumber":3,
                 "minLength":0,
                 "maxLength":64
              }
           }
        }
     },
     {
        "moduleID":4,
        "moduleName":"keys",
        "assetID":0,
        "assetName":"registerMultisignatureGroup",
        "schema":{
           "$id":"lisk/keys/register",
           "type":"object",
           "required":[
              "numberOfSignatures",
              "optionalKeys",
              "mandatoryKeys"
           ],
           "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
              }
           }
        }
     },
     {
        "moduleID":5,
        "moduleName":"dpos",
        "assetID":0,
        "assetName":"registerDelegate",
        "schema":{
           "$id":"lisk/dpos/register",
           "type":"object",
           "required":[
              "username"
           ],
           "properties":{
              "username":{
                 "dataType":"string",
                 "fieldNumber":1,
                 "minLength":1,
                 "maxLength":20
              }
           }
        }
     },
     {
        "moduleID":5,
        "moduleName":"dpos",
        "assetID":1,
        "assetName":"voteDelegate",
        "schema":{
           "$id":"lisk/dpos/vote",
           "type":"object",
           "required":[
              "votes"
           ],
           "properties":{
              "votes":{
                 "type":"array",
                 "minItems":1,
                 "maxItems":20,
                 "items":{
                    "type":"object",
                    "required":[
                       "delegateAddress",
                       "amount"
                    ],
                    "properties":{
                       "delegateAddress":{
                          "dataType":"bytes",
                          "fieldNumber":1,
                          "minLength":20,
                          "maxLength":20
                       },
                       "amount":{
                          "dataType":"sint64",
                          "fieldNumber":2
                       }
                    }
                 },
                 "fieldNumber":1
              }
           }
        }
     },
     {
        "moduleID":5,
        "moduleName":"dpos",
        "assetID":2,
        "assetName":"unlockToken",
        "schema":{
           "$id":"lisk/dpos/unlock",
           "type":"object",
           "required":[
              "unlockObjects"
           ],
           "properties":{
              "unlockObjects":{
                 "type":"array",
                 "minItems":1,
                 "maxItems":20,
                 "items":{
                    "type":"object",
                    "required":[
                       "delegateAddress",
                       "amount",
                       "unvoteHeight"
                    ],
                    "properties":{
                       "delegateAddress":{
                          "dataType":"bytes",
                          "fieldNumber":1,
                          "minLength":20,
                          "maxLength":20
                       },
                       "amount":{
                          "dataType":"uint64",
                          "fieldNumber":2
                       },
                       "unvoteHeight":{
                          "dataType":"uint32",
                          "fieldNumber":3
                       }
                    }
                 },
                 "fieldNumber":1
              }
           }
        }
     },
     {
        "moduleID":5,
        "moduleName":"dpos",
        "assetID":3,
        "assetName":"reportDelegateMisbehavior",
        "schema":{
           "$id":"lisk/dpos/pom",
           "type":"object",
           "required":[
              "header1",
              "header2"
           ],
           "properties":{
              "header1":{
                 "$id":"lisk/block-header",
                 "type":"object",
                 "properties":{
                    "version":{
                       "dataType":"uint32",
                       "fieldNumber":1
                    },
                    "timestamp":{
                       "dataType":"uint32",
                       "fieldNumber":2
                    },
                    "height":{
                       "dataType":"uint32",
                       "fieldNumber":3
                    },
                    "previousBlockID":{
                       "dataType":"bytes",
                       "fieldNumber":4
                    },
                    "transactionRoot":{
                       "dataType":"bytes",
                       "fieldNumber":5
                    },
                    "generatorPublicKey":{
                       "dataType":"bytes",
                       "fieldNumber":6
                    },
                    "reward":{
                       "dataType":"uint64",
                       "fieldNumber":7
                    },
                    "asset":{
                       "type":"object",
                       "fieldNumber":8,
                       "properties":{
                          "maxHeightPreviouslyForged":{
                             "dataType":"uint32",
                             "fieldNumber":1
                          },
                          "maxHeightPrevoted":{
                             "dataType":"uint32",
                             "fieldNumber":2
                          },
                          "seedReveal":{
                             "dataType":"bytes",
                             "fieldNumber":3
                          }
                       },
                       "required":[
                          "maxHeightPreviouslyForged",
                          "maxHeightPrevoted",
                          "seedReveal"
                       ]
                    },
                    "signature":{
                       "dataType":"bytes",
                       "fieldNumber":9
                    }
                 },
                 "required":[
                    "version",
                    "timestamp",
                    "height",
                    "previousBlockID",
                    "transactionRoot",
                    "generatorPublicKey",
                    "reward",
                    "asset"
                 ],
                 "fieldNumber":1
              },
              "header2":{
                 "$id":"lisk/block-header",
                 "type":"object",
                 "properties":{
                    "version":{
                       "dataType":"uint32",
                       "fieldNumber":1
                    },
                    "timestamp":{
                       "dataType":"uint32",
                       "fieldNumber":2
                    },
                    "height":{
                       "dataType":"uint32",
                       "fieldNumber":3
                    },
                    "previousBlockID":{
                       "dataType":"bytes",
                       "fieldNumber":4
                    },
                    "transactionRoot":{
                       "dataType":"bytes",
                       "fieldNumber":5
                    },
                    "generatorPublicKey":{
                       "dataType":"bytes",
                       "fieldNumber":6
                    },
                    "reward":{
                       "dataType":"uint64",
                       "fieldNumber":7
                    },
                    "asset":{
                       "type":"object",
                       "fieldNumber":8,
                       "properties":{
                          "maxHeightPreviouslyForged":{
                             "dataType":"uint32",
                             "fieldNumber":1
                          },
                          "maxHeightPrevoted":{
                             "dataType":"uint32",
                             "fieldNumber":2
                          },
                          "seedReveal":{
                             "dataType":"bytes",
                             "fieldNumber":3
                          }
                       },
                       "required":[
                          "maxHeightPreviouslyForged",
                          "maxHeightPrevoted",
                          "seedReveal"
                       ]
                    },
                    "signature":{
                       "dataType":"bytes",
                       "fieldNumber":9
                    }
                 },
                 "required":[
                    "version",
                    "timestamp",
                    "height",
                    "previousBlockID",
                    "transactionRoot",
                    "generatorPublicKey",
                    "reward",
                    "asset"
                 ],
                 "fieldNumber":2
              }
           }
        }
     },
     {
        "moduleID":1000,
        "moduleName":"hello",
        "assetID":0,
        "assetName":"helloAsset",
        "schema":{
           "$id":"lisk/hello/asset",
           "type":"object",
           "required":[
              "helloString"
           ],
           "properties":{
              "helloString":{
                 "dataType":"string",
                 "fieldNumber":1
              }
           }
        }
     }
  ]
}