There is a list of commands to interact with BLOCK.

Blockchain explorer:

Commissions and rewards:

Node Command - BLOCK LIST

Gets a list of blocks in the specified network.

Command syntax:

block new_datum_list 
-net <net_name> 
-chain <chain_name> 

Options:

-net - name of the Cellframe network. The list of networks can be found in the <Config_dir> \ etc \ network folder folder or received by the Cellframe-Node-Cli Net List command
-chain - the name of Chain. The list of chain can be found in the directory <Config_dir> \ etc \ network \ <network_name> or get the Cellframe-Node-App Net List Chains command

If you request command in the Cellframe network, use parameter -chain main.

CLI Example

Command:

cellframe-node-cli block List -net Backbone -chain Main

Response:

Backbone.main: have 3 blocks: 

0xD3E07282FC1C4FC7333AEE789898BA17DF7659CA7B64047886FA12EDD82759C23:ts_create = Thu Apr 07 21:40:42 2022
0x12C505ECDC83320B59EA1A32DB01BF7FCF8A465AE6C203759DD82FD8728: TS_create = Mon APR 18 22:30:22 2022
0xCF7D793D4FC9DC0C34F000DFE07C5CF72C9884ED20FAA58FA417F5C46CCC6107: TS_create = TUE APR 19 09:47:24 2022

JSON-RPC Example

JSON-RPC Request - BLOCK LIST

Gets a list of blocks in the specified network.

Request Structure

JSON object:

{
  "method": "block",
  "subcommand": "list",
  "arguments": {
    "net": "network_name",
    "chain": "chain_name"
  },
  "id": "1"
}

Parameters:

net - name of the Cellframe Network. The list of networks can be found in the <Config_dir> \ etc \ network folder or received using - Node Command - NET LIST chain - the name of chain (main or zerochain)

If you make a request in the Cellframe network, use parameter chain:main.

Curl Example

Request:

curl --unix-socket /opt/cellframe-node/var/run/node_cli -X POST http://localhost/connect -d '{
  "method": "block",
  "subcommand": "list",
  "arguments": {
    "net": "riemann",
    "chain": "main"
  },
  "id": "1"
}'

Response:

 
{ "block number": 16, "hash": "0x69192FC0C669DCB339BCC89E443AD5810C13C25BD8BEDEB5936991E672F35BA2", "ts_create": "Fri, 14 Apr 2023 07:07:06 +0000" }, { "block number": 15, "hash": "0xB46B1B47E11167B6B840003AEB8CF0C93E499BAE70E008C9E22225EFBD58B90A", "ts_create": "Fri, 14 Apr 2023 04:57:30 +0000" }, { "block number": 14, "hash": "0x627F8C1D643F54153E436A83F4D0136575037B4DF8541D808BE3A18F95C0274E", "ts_create": "Fri, 14 Apr 2023 04:57:00 +0000" }, { "block number": 13, "hash": "0x480B3712638B9AC11D44C5AC98107657BBFE792FA1BBFDAC334CD7CCB59D91ED", "ts_create": "Wed, 12 Apr 2023 12:38:00 +0000" }, { "block number": 12, "hash": "0xB8EEAC538E9A6594FE711AF5A90E8D45A507236B15524F8E2E7FE9FD248DE680", "ts_create": "Wed, 12 Apr 2023 12:37:30 +0000" }, { "block number": 11, "hash": "0x61A0AD75C8E8DBE0BED7816B408AD5D8E6E6B4FE00D05E7D694CC04FD3105BC3", "ts_create": "Tue, 11 Apr 2023 10:04:07 +0000" }, { "block number": 10, "hash": "0x8A0EE4AE1151941F0247857A4978180442AB99DFA8E2B3E48BCB0E6DC0509309", "ts_create": "Tue, 11 Apr 2023 10:01:37 +0000" }, { "block number": 9, "hash": "0xF8739383D797E011C74896369BFBF1E04D77C0B95F105E49F87CFA0E19709878", "ts_create": "Tue, 11 Apr 2023 09:44:36 +0000" }, { "block number": 8, "hash": "0xDE02352C922D698DB3197EB1D8A6A347F0B5A643F912982A0108370BFB37B721", "ts_create": "Tue, 11 Apr 2023 09:08:33 +0000" }, { "block number": 7, "hash": "0x411503DB99A4B927227E8906F61E2D2562D1FC904628818BE3320CA954C0E99E", "ts_create": "Mon, 10 Apr 2023 15:17:19 +0000" }, { "block number": 6, "hash": "0xC37FD8F7BA41C6C121635D578DA889DFC10C3D671A1D5A9898A57B8CC402EA18", "ts_create": "Mon, 10 Apr 2023 15:06:28 +0000" }, { "block number": 5, "hash": "0x146F783E3BFEBA4EB6C860A73090E1AD2751ADDE0322520EE4C2B45144F950C0", "ts_create": "Mon, 10 Apr 2023 14:59:58 +0000" }, { "block number": 4, "hash": "0xEA2E3F68FE3E8983A8573A44A7717D78F6292B26E5B087AD68CDD8275D417093", "ts_create": "Mon, 10 Apr 2023 14:55:28 +0000" }, { "block number": 3, "hash": "0x3F40FFBFF2E79A9E606A9398C0BF6EE1F7439B505803D829A710E5DF6B1CFF3D", "ts_create": "Mon, 10 Apr 2023 14:54:58 +0000" }, { "block number": 2, "hash": "0x90B0F6D4182A33B8EBFBE4CFA1410E62870B442ADA05A8480853286D53C6864E", "ts_create": "Mon, 10 Apr 2023 14:49:28 +0000" }, { "block number": 1, "hash": "0x5FDA4B2952C89AB639AD77E00A8EAE9CBC5B472444F1003844DEAF3F4D618D0F", "ts_create": "Sat, 08 Apr 2023 02:01:19 +0000" }, { "limit": "unlimit" } ], { "riemann.main with filter - none, have blocks": 17729 } ], "id": 1 }
Link to original

Link to original

Node Command - BLOCK FIND

Looks for block which contains specified datum.

Command syntax:

block find 
-net <net_name> 
-chain <chain_name>  
-datum <datum_hash>

Options:

-net - name of the Cellframe Network. The list of networks can be found in the <Config_dir> \ etc \ network folder or received by The Cellframe-Node-CLI using command - net list
-chain - the name of Chain. The list of chains can be found in the directory <Config_dir> \ etc \ network \ <network_name> or by the Cellframe-Node-CLI using command - net list chains
-datum - hash of the datum (in the HEX format)

If you request command in the Cellframe network, use parameter -chain main.

CLI Example

Command:

cellframe-node-cli block find 
-net raiden 
-chain main
-datum 0x8994F73EFCF82AC4FAEC823C761EF86BF01FCA90A94ED89A2CDE254B209EC5E3 

Response:

  Blocks:
0x31770B9BA8B838067EDA6ABA5A0C2B88FEF611945E249C9AEB3640AE873E0E4E
        Total: 1

JSON-RPC Example

JSON-RPC Request - BLOCK FIND

Looks for block which contains specified datum.

Request Structure

JSON object:

{
  "method": "block",
  "subcommand": "find",
  "arguments": {
    "net": "network_name",
    "chain": "chain_name",
    "datum": "datum_hash"
  },
  "id": "1"
}

Parameters: net - name of the Cellframe Network. The list of networks can be found in the <Config_dir> \ etc \ network folder or received using - Node Command - NET LIST chain - the name of chain (main or zerochain) datum - the hash of the datum (HEX format)

If you make a request in the Cellframe network, use parameter chain:main.

Curl Example

Request:

curl --unix-socket /opt/cellframe-node/var/run/node_cli -X POST http://localhost/connect -d '{
  "method": "block",
  "subcommand": "find",
  "arguments": {
    "net": "riemann",
    "chain": "main",
    "datum": "0x9117BD88275DF91C01F4BACD9AFEA1049408754231752D61EB4E4C716DB6381F"
  },
  "id": "1"
}'

Response:

{
  "type": 2,
  "result": [
    {
      "Blocks": [
        "0x8811272C4E7D36E56194E4773202322C6773306BDFB0BB4AD0BF43A9E328E5A4"
      ],
      "Total": 1
    }
  ],
  "id": 1
}
Link to original

Link to original

Node Command - BLOCK LAST

Shows the last block in the chain.

Command syntax:

block last 
-net <net_name> 
-chain <chain_name> 
 

Options:

-net - name of the Cellframe Network. The list of networks can be found in the <Config_dir> \ etc \ network folder or received by The Cellframe-Node-CLI using command - net list
-chain - the name of Chain. The list of chains can be found in the directory <Config_dir> \ etc \ network \ <network_name> or by the Cellframe-Node-CLI using command - net list chains

If you request command in the Cellframe network, use parameter -chain main.

CLI Example

Command:

cellframe-node-cli block last 
-net raiden 
-chain main

Response:

Last block num: 16511
 
Last block hash: 0x31770B9BA8B838067EDA6ABA5A0C2B88FEF611945E249C9AEB3640AE873E0E4E
ts_created: Thu, 20 Jun 2024 06:09:41 -0400
 
raiden.main has blocks: 16511

JSON-RPC Example

JSON-RPC Request - BLOCK LAST

Shows the last block in the chain.

Request Structure

JSON object:

{
  "method": "block",
  "subcommand": "last",
  "arguments": {
    "net": "network_name",
    "chain": "chain_name"
  },
  "id": "1"
}

Parameters: net - name of the Cellframe Network. The list of networks can be found in the <Config_dir> \ etc \ network folder or received using - Node Command - NET LIST chain - the name of chain (main or zerochain)

If you make a request in the Cellframe network, use parameter chain:main.

Curl Example

Request:

curl --unix-socket /opt/cellframe-node/var/run/node_cli -X POST http://localhost/connect -d '{
  "method": "block",
  "subcommand": "last",
  "arguments": {
    "net": "riemann",
    "chain": "main"
  },
  "id": "1"
}'

Response:

{
  "type": 2,
  "result": [
    {
      "Last block num": 17744,
      "Last block hash": "0x2104906B96D43F545A32950B1C1E59CF3AF7E9850F32F620454862B2544FC000",
      "ts_created": "Wed, 16 Apr 2025 09:41:26 +0000",
      "riemann.main has blocks": 17744
    }
  ],
  "id": 1
}
Link to original

Link to original

Node Command - BLOCK DUMP

Shows detailed information about the block and its datums.

Command syntax:

block dump 
-net <сhain net name> 
-chain <chain name> 
-hash <block hash>

Options:

-net - name of the Cellframe Network. The list of networks can be found in the <Config_dir> \ etc \ network folder or received by The Cellframe-Node-CLI using command - net list
-chain - the name of Chain. The list of chains can be found in the directory <Config_dir> \ etc \ network \ <network_name> or by the Cellframe-Node-CLI using command - net list chains
-hash - hash of the block. Must be specified in HEX format

If you request command in the Cellframe network, use parameter -chain main.

CLI Example

Command:

cellframe-node-cli block dump 
-hash 0x15DB786A389741FC0DF104984E2B3315E4221DAB251AE1D5E3E727245218D7E6 
-net Backbone 
-chain main

Response:

 
Block number 24179 hash 0x15DB786A389741FC0DF104984E2B3315E4221DAB251AE1D5E3E727245218D7E6:
                        version: 0x0001
                        cell_id: 0x0000000000000000
                        chain_id: 0x0000000000000002
                        ts_created: Tue, 16 Jan 2024 11:20:24 +0000
        Metadata. Count: 2s
 
                PREV: 0x747388E2058D6A8DB1C5D45703B1B8D478E40EFD47CE3CCDD6EEE96414F6E89B
                NONCE: 0xA43FD7CB29A21DCE
                datums: count: 1
                        datum:  datum_size: 3941
                                version:=0x00
                                type_id:=DATUM_TX
                                ts_create=Tue, 16 Jan 2024 11:20:10 +0000
                                data_size=3926
transaction: hash 0x90F6E728F651D74B9D7E32704FF16CD83B7C9002625229951619272E161D583C
 
 TS Created: Tue Jan 16 11:20:10 2024
 Items:
         IN:
Tx_prev_hash: 0x7D2A8D2643DB2DB0F6FAAE01F7B441E097E7FC95D1C90684E2008723E012AEE3
                 Tx_out_prev_idx: 2
         OUT:
                 Value: 0.1 (100000000000000000)
                 Address: Rj7J7MiX2bWy8sNyZTnc2vCdUToyzFchvZJXpszSYZc5Wnxhs3DZcZbhCypRBLKm5zX8pZpix2gbGgCevwxnevpnXVSC2wrUmS2egCZw
         OUT COND:
         Header:
                 ts_expires: never
                 value: 0.05 (50000000000000000)
                 subtype: DAP_CHAIN_TX_OUT_COND_SUBTYPE_FEE
                 uid: 0x0000000000000000
 
         OUT:
                 Value: 1.95 (1950000000000000000)
                 Address: Rj7J7MiX2bWy8sNyWvYBfvwNnBTNdPjr6SB5WgZiBNTteH68qqnQj7GnADE7pV8JkhkD6fhcWzKvpy5FAuoee55VBZ7FkkvEYp3aZY6t
 
Signature:
 
        Type: sig_dil
        Public key hash: 0x111AF0409559AE22A9974B89F9AC4EB7FBC406852BBA67936134FB0550BC4AFF
        Public key size: 1196
        Signature size: 2096
        Sender addr: Rj7J7MiX2bWy8sNyWvYBfvwNnBTNdPjr6SB5WgZiBNTteH68qqnQj7GnADE7pV8JkhkD6fhcWzKvpy5FAuoee55VBZ7FkkvEYp3aZY6t
 
                signatures:     count: 5
                        type:sig_dil size: 3306 pkey_hash: 0x3F707E207D74A124DECBEFC3BC2DE190C320D50448F3B6D5A1A8B961E063BE31
                        type:sig_dil size: 3306 pkey_hash: 0xA807983D8870634B61C0279989DEE61A8170076353570BF8174D928BD5D3B834
                        type:sig_dil size: 3306 pkey_hash: 0xB713CDB7810D8A7ADC0F2933889293EF14A75FFA6C7F7DC2FEF01564FBFEA159
                        type:sig_dil size: 3306 pkey_hash: 0x84AF956B4B14612A952CBE3C19A9ECC39856FD7CB23259993F3D9043D9104968
                        type:sig_dil size: 3306 pkey_hash: 0x7525B25ABDE7A2418B19DFCA61EBF4442DBBE2684857DBC676574BD9D0A1528C

JSON-RPC Example

JSON-RPC Request - BLOCK DUMP

Shows detailed information about the block and its datums.

Request Structure

JSON object:

{
  "method": "block",
  "subcommand": "dump",
  "arguments": {
    "net": "network_name",
    "chain": "chain_name",
    "hash": "block_hash"
  },
  "id": "1"
}

Parameters: net - name of the Cellframe Network. The list of networks can be found in the <Config_dir> \ etc \ network folder or received using - Node Command - NET LIST chain - the name of chain (main or zerochain) hash - the hash of the block

If you make a request in the Cellframe network, use parameter chain:main.

Curl Example

Request:

curl --unix-socket /opt/cellframe-node/var/run/node_cli -X POST http://localhost/connect -d '{
  "method": "block",
  "subcommand": "dump",
  "arguments": {
    "net": "riemann",
    "chain": "main",
    "hash": "0x54514174DA38467FBD93CE817238F5333D3CCDEA14936E26F318EB78FB342332"
  },
  "id": "1"
}'

Response:

{
  "type"2,
  "result": [
    {
      "Block number"4310,
      "hash""0x54514174DA38467FBD93CE817238F5333D3CCDEA14936E26F318EB78FB342332",
      "version""0x0001",
      "cell_id""0x0000000000000000",
      "chain_id""0x0000000000000001",
      "ts_created""Tue, 25 Jun 2024 14:44:18 +0000",
      "Metadata: count"2
    },
    [
      {
        "PREV""0xA3FE050D8BF4D9EE1B99A2A9D1983CA8B5AE357938FEE08975069DE6A426CCFE"
      },
      {
        "NONCE""0xA61AD50BA39D4073"
      }
    ],
    {
      "Datums: count"1
    },
    [
      {
        "datum size "4473,
        "version""0x00",
        "type_id""DATUM_TX",
        "ts_create""Tue, 25 Jun 2024 14:39:38 +0000",
        "data_size"4458,
        "Datum": {
          "first transaction""",
          "hash""0xE3E7C290FDC1B16594C67702781CC58EAE9E69CF5F792A109924F9453E8B947F",
          "tx created""Tue, 25 Jun 2024 14:39:38 +0000",
          "token ticker""",
          "ITEMS": [
            {
              "item type""IN",
              "Tx prev hash""0x7422E78873CD71DCDE64F85065EC3BD3CEF830D633C756BA5B326062C9C92E30",
              "Tx out prev idx"3
            },
            {
              "item type""IN_EMS",
              "ticker""mtKEL",
              "token_emission_hash""0x0000000000000000000000000000000000000000000000000000000000000000",
              "token_emission_chain_id""0x0000000000000001"
            },
            {
              "item type""OUT COND",
              "ts_expires""never",
              "coins""1.0",
              "value""1000000000000000000",
              "subtype""DAP_CHAIN_TX_OUT_COND_SUBTYPE_SRV_STAKE_LOCK",
              "uid""0x0000000000000012",
              "tsd_size"0,
              "time_unlock""Wed, 26 Jun 2024 00:00:01 +0000"
            },
            {
              "item_type""OUT EXT",
              "addr""o9z3wUTSTicckJuoxkLc5q1CwaYs23474GbBm8ebgSZd1WmB7EhkPDpsoZPGX3hmhGa1wCqTDKgPjirbp3H45bg3tc6U5k8wCEJX575X",
              "token""tKEL",
              "coins""0.0025",
              "value""2500000000000000"
            },
            {
              "item type""OUT COND",
              "ts_expires""never",
              "coins""0.05",
              "value""50000000000000000",
              "subtype""DAP_CHAIN_TX_OUT_COND_SUBTYPE_FEE",
              "uid""0x0000000000000000",
              "tsd_size"0
            },
            {
              "item_type""OUT EXT",
              "addr""o9z3wUTSTicckJuoyoNpKdQNNF4RKR9imUtMjukAqyCjsN1W545p8e8tuYhsfV9o2yNV5ZuaoLiHr1WsoyyJtDMhf1x1UUbJXV4bU69G",
              "token""tKEL",
              "coins""631.444999800000064674",
              "value""631444999800000064674"
            },
            {
              "item_type""OUT EXT",
              "addr""o9z3wUTSTicckJuoyoNpKdQNNF4RKR9imUtMjukAqyCjsN1W545p8e8tuYhsfV9o2yNV5ZuaoLiHr1WsoyyJtDMhf1x1UUbJXV4bU69G",
              "token""mtKEL",
              "coins""0.001",
              "value""1000000000000000"
            },
            {
              "item type""SIG",
              "Signature""",
              "Type""sig_dil",
              "Public key hash""0x9835B630EF867530088097C7C181D87346E26C407733E3F6029B9410461405A3",
              "Public key size"1196,
              "Signature size"2096,
              "Sender addr""o9z3wUTSTicckJuoyoNpKdQNNF4RKR9imUtMjukAqyCjsN1W545p8e8tuYhsfV9o2yNV5ZuaoLiHr1WsoyyJtDMhf1x1UUbJXV4bU69G"
            }
          ]
        }
      }
    ],
    {
      "signatures count"3
    },
    [
      {
        "type""sig_dil",
        "size"3306,
        "pkey_hash""0xE23EF5A0EA0604EADD74EB2F365809AE222EB88B7EA72C9ADA7AF8B78EA4E21E"
      },
      {
        "type""sig_dil",
        "size"3306,
        "pkey_hash""0xC6FB9B9370C01F52AD31D1B22A8AB1F1B18AF190EB48BA8F7E24E3DA6E67C8C2"
      },
      {
        "type""sig_dil",
        "size"3306,
        "pkey_hash""0x875A36716A6AA4C786EB52C06E036F92CF65B2367A6424AA2FD597386CD40E0F"
      }
    ]
  ],
  "id"1
}
Link to original

Link to original

Node Command - BLOCK LIST FILTRE

Gets list of the blocks using filtration; by definite blocks from block to block, by time from time to time, signed, with unspent coins, etc.

Command syntax:

block list 
-net <net_name> 
-chain <chain_name>  
[{signed | first_signed}] 
[-from_hash <block_hash>] 
[-to_hash <block_hash>] 
[-from_date <YYMMDD>] 
[-to_date <YYMMDD>] 
[{-cert <signing_cert_name> | -pkey_hash <signing_cert_pkey_hash>} 
[-unspent]]

Options:

-net - name of the Cellframe Network. The list of networks can be found in the <Config_dir> \ etc \ network folder or received by The Cellframe-Node-CLI using command - net list
-chain - the name of Chain. The list of chains can be found in the directory <Config_dir> \ etc \ network \ <network_name> or by the Cellframe-Node-CLI using command - net list chains
-[{signed | first_signed}] - list of blocks, which were signed by the master node, and this signature is not necessarily on the first place / list of blocks, which were signed by the master node first (optional)
-[-from_hash <block_hash>] [-to_hash <block_hash>] - list filtration from definite block to block (optional)
-[-from_date <YYMMDD>] [-to_date <YYMMDD>] - block list filtration by date from time to time (optional)
-[{-cert | -pkey_hash ] filtration by certificate or public key which was used to sign block (optional)
-unspent - if you add this parameter, the recieved list will have information about blocks with unspent coins (in other case list will include all blocks with spent and unspent coins, optional)

If you request command in the Cellframe network, use parameter -chain main.

CLI Example

Example without filtration:

Command:

cellframe-node-cli block list 
-net Backbone 
-chain main

Response:

 
0x7B5448B8CED12781175A7801414A5F7177054D4D17E24707CAAE02CFB3C795F7: ts_create=Tue, 16 Jan 2024 08:30:48 +0000
        0xFF0010EFE8DCF3860F24EC31374AC5688E09F30AEC690ADEEFDE0FEC94CBFE9C: ts_create=Tue, 16 Jan 2024 10:00:05 +0000
        0xCF7BD1996E25A9383B2FB133B9A0C99B0093830D30DFA201EDCD71FAA893842B: ts_create=Tue, 16 Jan 2024 11:15:48 +0000
        0x747388E2058D6A8DB1C5D45703B1B8D478E40EFD47CE3CCDD6EEE96414F6E89B: ts_create=Tue, 16 Jan 2024 11:16:39 +0000
        0x15DB786A389741FC0DF104984E2B3315E4221DAB251AE1D5E3E727245218D7E6: ts_create=Tue, 16 Jan 2024 11:20:24 +0000
        0x9B505F6E0FA0BFEF54DBAED9B14EEF5639004558966756E09E826B1703FEA702: ts_create=Tue, 16 Jan 2024 11:21:29 +0000
 
Backbone.main: Have 24180 blocks

Example with filtration:

Command:

cellframe-node-cli block list signed 
-net Backbone 
-chain main 
-pkey_hash 0x84AF956B4B14612A952CBE3C19A9ECC39856FD7CB23259993F3D9043D9104968

Response:

0x20ABE51DC7E9D64D76359DE28E1ADA6A8DA9DF5D29269B3E562A2CF6354BDE43: ts_create=Mon, 15 Jan 2024 20:06:14 +0000
        0x40BF0883AED5FCA6920206DBD273651962E7CB71527D0119C03D198317412FA3: ts_create=Tue, 16 Jan 2024 08:30:18 +0000
        0x7B5448B8CED12781175A7801414A5F7177054D4D17E24707CAAE02CFB3C795F7: ts_create=Tue, 16 Jan 2024 08:30:48 +0000
        0xFF0010EFE8DCF3860F24EC31374AC5688E09F30AEC690ADEEFDE0FEC94CBFE9C: ts_create=Tue, 16 Jan 2024 10:00:05 +0000
        0x15DB786A389741FC0DF104984E2B3315E4221DAB251AE1D5E3E727245218D7E6: ts_create=Tue, 16 Jan 2024 11:20:24 +0000
        0xAEB3E829666CFE80EE32767FE281A038B2833954509AD02B2E0A86ED2F1D0B6A: ts_create=Tue, 16 Jan 2024 12:16:00 +0000
        0xBD691ECD523B501C0AF7AE027873163902A6F24CCA12A26FFE6C01392A3C2F62: ts_create=Tue, 16 Jan 2024 12:21:33 +0000
 
Backbone.main: Have 7 blocks filtered according to the specified criteria

JSON-RPC Example

JSON-RPC Request - BLOCK LIST FILTRE

Gets list of the blocks using filtration; by definite blocks from block to block, by time from time to time, signed, with unspent coins, etc.

Request Structure

JSON object:

{
  "method": "block",
  "subcommand": ["list"],
  "arguments": {
    "net": "network_name",
    "chain": "chain_name",
    "signed | first_signed": "null",
    "from_hash": "block_hash",
    "to_hash": "block_hash",
    "from_date": "YYMMDD",
    "to_date": "YYMMDD",
    "cert | pkey_hash": "signing_cert_name | signing_cert_pkey_hash",
    "unspent": "null"
  },
  "id": "1"
}

Parameters: net - name of the Cellframe Network. The list of networks can be found in the <Config_dir> \ etc \ network folder or received using - Node Command - NET LIST chain - the name of chain (main or zerochain) [{signed | first_signed}] - list of blocks, which were signed by the master node, and this signature is not necessarily on the first place / list of blocks, which were signed by the master node first optional [from_hash <block_hash>][to_hash <block_hash>] - list filtration from definite block to block optional [from_date <YYMMDD>][to_date <YYMMDD>] - block list filtration by date from time to time in the RCF822 format optional [{cert <signing_cert_name> | pkey_hash <signing_cert_pkey_hash>}] - filtration by certificate or public key which was used to sign block optional [unspent] - shows information only about blocks with unspent coins optional

If you make a request in the Cellframe network, use parameter chain:main.

Curl Example

Let’s see blocks from the date “250415” with unspent coins.

Request:

curl --unix-socket /opt/cellframe-node/var/run/node_cli -X POST http://localhost/connect -d '
{
  "method": "block",
  "subcommand": ["list"],
  "arguments": {
    "net": "riemann",
    "chain": "main",
    "from_date": "250415",
    "unspent": "null"
  },
  "id": "1"
}'

Response:

{
  "type"2,
  "result": [
    [
      {
        "block number"17737,
        "hash""0xA074C476141D2F04332762E9EA653F8FA2071687BBEB359AC745DC7E4E1660F9",
        "ts_create""Tue, 15 Apr 2025 09:41:20 +0000"
      },
      {
        "block number"17736,
        "hash""0xC5F7159E6BACF736B56E1D4D62B4D663DC0AE7E6A4926B9069352975151743D0",
        "ts_create""Tue, 15 Apr 2025 08:11:51 +0000"
      },
      {
        "block number"17735,
        "hash""0x15ABBE1CA3304CB70784D99A31D18A148495BA42E5162E3B5DED96CB5E4C1748",
        "ts_create""Tue, 15 Apr 2025 08:07:36 +0000"
      },
      {
        "block number"17734,
        "hash""0x886DD61FB2FDD661B84E59164AE61C792CA5CB4035F1E49A6336A6EB54013EAA",
        "ts_create""Tue, 15 Apr 2025 08:06:51 +0000"
      },
      {
        "block number"17733,
        "hash""0x75966EAE5386B0C0FB7EEDC0FB52273DD15F2495DC0E33204DAABB16BBC38DFB",
        "ts_create""Tue, 15 Apr 2025 08:04:54 +0000"
      },
      {
        "block number"17732,
        "hash""0x09462848068425CAAC7405D4CF9DB51612B3A856D903B776FE9F9D4E9A5BD6C9",
        "ts_create""Tue, 15 Apr 2025 08:00:19 +0000"
      },
      {
        "block number"17731,
        "hash""0xBF3A2F7A318DF3F8A07D807BBBFC1916529701A484A5E4C33FA9C91EC4DA23BB",
        "ts_create""Tue, 15 Apr 2025 07:52:51 +0000"
      },
      {
        "block number"17730,
        "hash""0x58BFD6067AD0DAA264098D7622FC8B5E98C69754EA26C37B845DF874AC9D9515",
        "ts_create""Tue, 15 Apr 2025 07:47:10 +0000"
      },
      {
        "limit""unlimit"
      }
    ],
    {
      "riemann.main with filter -  filtered according to the specified criteria, have blocks"8
    }
  ],
  "id"1
}
Link to original

Link to original

Node Command - BLOCK COUNT

Counts quantity of blocks in the chain.

Command syntax:

block count 
-net <net_name> 
-chain <chain_name> 

Options:

-net - name of the Cellframe Network. The list of networks can be found in the <Config_dir> \ etc \ network folder or received by The Cellframe-Node-CLI using command - net list
-chain - the name of Chain. The list of chains can be found in the directory <Config_dir> \ etc \ network \ <network_name> or by the Cellframe-Node-CLI using command - net list chains

If you request command in the Cellframe network, use parameter -chain main.

CLI Example

Command:

cellframe-node-cli block count 
-net Backbone 
-chain main

Response:

24180 blocks in Backbone.main

JSON-RPC Example

JSON-RPC Request - BLOCK COUNT

Counts quantity of blocks in the chain.

Request Structure

JSON object:

{
  "method": "block",
  "subcommand": "count",
  "arguments": {
    "net": "network_name",
    "chain": "chain_name"
  },
  "id": "1"
}

Parameters:

net - name of the Cellframe Network. The list of networks can be found in the <Config_dir> \ etc \ network folder or received using - Node Command - NET LIST chain - the name of chain (main or zerochain)

If you request command in the Cellframe network, use parameter chain:main.

Curl Example

Request:

curl --unix-socket /opt/cellframe-node/var/run/node_cli -X POST http://localhost/connect -d '{
  "method": "block",
  "subcommand": "count",
  "arguments": {
    "net": "riemann",
    "chain": "main"
  },
  "id": "1"
}'

Response:

{
  "type"2,
  "result": [
    {
      "riemann.main has blocks - "17729
    }
  ],
  "id"1
}
Link to original

Link to original

Node Command - BLOCK TAKE FEE

Collects all commission from the specified blocks.

Command syntax:

block fee collect 
-net <net_name> 
-chain <chain_name> 
-cert <priv_cert_name> 
-addr <addr> 
-hashes <hashes_list> 
-fee <value>

Options:

-net - name of the Cellframe Network. The list of networks can be found in the <Config_dir> \ etc \ network folder or received by The Cellframe-Node-CLI using command - net list
-chain - the name of Chain. The list of chains can be found in the directory <Config_dir> \ etc \ network \ <network_name> or by the Cellframe-Node-CLI using command - net list chains
-cert - name of the private master node certificate
-addr - wallet address for collecting reward
-hashes - list of blocks (hashes) from which reward will be collected
-fee - commission for transaction

If you request command in the Cellframe network, use parameter -chain main.

CLI Example

Command:

cellframe-node-cli block fee collect 
-net subzero 
-chain main 
-cert subzpay 
-hashes 0x9AF4584800FDCABF77EF1E2CA757CE7297F757F77D09632B629296B07E397B22,0x2E257552B1A94B5CB3841D1D8E7CC582CA2EEFCBFAAEB66564C6C77F3C128237,0xA5BADEECFE8FD433378FB6CEE2E8663B1DEE7FD56B33CC0D8127772B7C61B6DA -fee 0.05e+18 -addr mJUUJk6Yk2gBSTjcEUb15ATxj2BkxP1YcFkmMrP8bkDAGF6QME4Fxi3yuKD26xGjkxc51GPJ6oq7caCmRq5Y52mxHgJY3vfSYbTrzYWw

Response:

TX for fee collection created succefully, hash=0xA28075EF7BCE6EB566142EEDBEA698E19374D80218D1D9F0C1A7C2B00EE0484D

JSON-RPC Example

JSON-RPC Request - BLOCK TAKE FEE

Collects all commission from the specified blocks.

Request Structure

JSON object:

{
  "method": "block",
  "subcommand": ["collect","fee"],
  "arguments": {
    "net": "network_name",
    "chain": "chain_name",
    "cert": "priv_cert_name",
    "addr": "address",
    "hashes": "list_of_hashes",
    "fee": "value"
  },
  "id": "1"
}

Parameters: net (network_name) - name of the Cellframe Network. The list of networks can be found in the <Config_dir> \ etc \ network folder or received using - Node Command - NET LIST chain - the name of chain (main or zerochain) cert - name of the private master node certificate addr - wallet address for collecting fees hashes - list of block hashes for collecting fees fee - commission for transactions in the network

If you make a request in the Cellframe network, use parameter chain:main.

Curl Example

Request:

curl --unix-socket /opt/cellframe-node/var/run/node_cli -X POST http://localhost/connect -d '{
  "method": "block",
  "subcommand": ["collect","fee"],
  "arguments": {
    "net": "subzero",
    "chain": "main",
    "cert": "subzpay",
    "addr": "mJUUJk6Yk2gBSTjcEUb15ATxj2BkxP1YcFkmMrP8bkDAGF6QME4Fxi3yuKD26xGjkxc51GPJ6oq7caCmRq5Y52mxHgJY3vfSYbTrzYWw",
    "hashes": "mJUUJk6Yk2gBSTjcEUb15ATxj2BkxP1YcFkmMrP8bkDAGF6QME4Fxi3yuKD26xGjkxc51GPJ6oq7caCmRq5Y52mxHgJY3vfSYbTrzYWw",
    "fee": "0.05e+18"
  },
  "id": "1"
}'

Response:

{
  "type"2,
  "result": [
    {
      "TX for fee collection created succefully, hash ""0x79C413D16E199F658E49773A0FD252DBECA8C6B2C909AD2F0DCFA1DBF3D95074"
    }
  ],
  "id"1
}
Link to original

Link to original

Node Command - BLOCK SET REWARD

Sets base reward for signing one block at one minute.

Command syntax:

block reward set 
-net <net_name> 
-chain <chain_name> 
-poa_cert <poa_cert_name> 
-value <value>

Options:

-net - name of the Cellframe Network. The list of networks can be found in the <Config_dir> \ etc \ network folder or received by The Cellframe-Node-CLI using command - net list
-chain - the name of Chain. The list of chains can be found in the directory <Config_dir> \ etc \ network \ <network_name> or by the Cellframe-Node-CLI using command - net list chains
-poa_cert - name of the private master node certificate 
-value - number of tokens in datoshi 

If you request command in the Cellframe network, use parameter -chain main.

CLI Example

Command:

cellframe-node-cli block reward set 
-net foobar 
-chain main 
-value 5.0e+18 
-poa_cert foobar.root.pvt.0

Response:

Decree with hash 0xD90F068E41A612D93E8777DDA814DD3EFD736B8ED95BDA4B3F8DEA06E04120D7 created to set basic block sign reward

JSON-RPC Example

JSON-RPC Request - BLOCK SET REWARD

Sets base reward for signing one block at one minute. Your node must have a root role to make a decree.

Request Structure

JSON object:

{
  "method": "block",
  "subcommand": ["reward","set"],
  "arguments": {
    "net": "network_name",
    "chain": "chain_name",
    "poa_cert" "poa_cert_name",
    "value": "value"
  },
  "id": "1"
}

Parameters:

net - name of the Cellframe Network. The list of networks can be found in the <Config_dir> \ etc \ network folder or received using - Node Command - NET LIST chain - the name of chain (main or zerochain) poa_cert - name of the private root node certificate value - number of tokens in datoshi

If you make a request in the Cellframe network, use parameter chain:main.

Curl Example

Request:

curl --unix-socket /opt/cellframe-node/var/run/node_cli -X POST http://localhost/connect -d '{
  "method": "block",
  "subcommand": ["reward","set"],
  "arguments": {
    "net": "foobar",
    "chain": "main",
    "poa_cert" "foobar.root.pvt.0",
    "value": "5.0e+18"
  },
  "id": "1"
}'

Response:

{
  "type"2,
  "result": [
    {
      "Decree was created to set basic block sign reward, hash""0x054F8618E5E320B586C38A71AA972A1A791ADFB6C53A159ECC82BFBD6B595400"
    }
  ],
  "id"1
}
Link to original

Link to original

Node Command - BLOCK SHOW REWARD

Shows base reward for signing one block at one minute.

Command syntax:

block reward show 
-net <net_name> 
-chain <chain_name>  
-cert <poa_cert_name> 
-value <value>

Options:

-net - name of the Cellframe Network. The list of networks can be found in the <Config_dir> \ etc \ network folder or received by The Cellframe-Node-CLI using command - net list
-chain - the name of Chain. The list of chains can be found in the directory <Config_dir> \ etc \ network \ <network_name> or by the Cellframe-Node-CLI using command - net list chains
-poa_cert - name of the private master node certificate
-value - number of tokens in datoshi 

If you request command in the Cellframe network, use parameter -chain main.

CLI Example

Command:

cellframe-node-cli block reward show 
-net Backbone 
-chain main

Response:

Current base block reward is 2.851988815387151461 

JSON-RPC Example

JSON-RPC Request - BLOCK SHOW REWARD

Shows base reward for signing one block at one minute in the specified network.

Request Structure

JSON object:

{
  "method": "block",
  "subcommand": ["reward","show"],
  "arguments": {
    "net": "network_name",
    "chain": "chain_name",
  },
  "id": "1"
}

Parameters:

net - name of the Cellframe Network. The list of networks can be found in the <Config_dir> \ etc \ network folder or received using - Node Command - NET LIST chain - the name of chain (main or zerochain)

If you make a request in the Cellframe network, use parameter chain:main.

Curl Example

Request:

curl --unix-socket /opt/cellframe-node/var/run/node_cli -X POST http://localhost/connect -d '{
  "method": "block",
  "subcommand": ["reward","show"],
  "arguments": {
    "net": "riemann",
    "chain": "main",
  },
  "id": "1"
}'

Response:

{
  "type"2,
  "result": [
    {
      "status""Current base block reward is 2.8\n"
    }
  ],
  "id"1
}
Link to original

Link to original

Node Command - BLOCK COLLECT REWARD

Collects rewards from the definite blocks on the wallet (using address).

Command syntax:

block collect reward 
-net <net_name> 
-chain <chain_name> 
-cert <priv_cert_name> 
-addr <addr> 
-hashes <hashes_list> 
-fee <value>

Options:

-net - name of the Cellframe Network. The list of networks can be found in the <Config_dir> \ etc \ network folder or received by The Cellframe-Node-CLI using command - net list
-chain - the name of Chain. The list of chains can be found in the directory <Config_dir> \ etc \ network \ <network_name> or by the Cellframe-Node-CLI using command - net list chains
-cert - name of the private master node certificate
-addr - wallet address for collecting reward
-hashes - list of blocks (hashes) from which reward will be collected
-fee - commission for transaction 

If you request command in the Cellframe network, use parameter -chain main.

CLI Example

Command:

cellframe-node-cli block reward collect 
-hashes 0x257676AF454C7751F171B4AFEACC1DA24E676818C01F37136C692FB2A3E6EE9A 
-cert raiden.my_cool_cert 
-fee 5.0e+16 
-net raiden  
-chain main 
-addr jrmnGqeeds4Dp67AcKWcuMdcEk1w93oKzAGr9rGQNMvxXn3hgGmtVpee75rsaNxAWUxiGcMUvhjiNdmxhA9pUPdiZy51ZeJhYx8SNxf5

Response:

TX for reward collection created succefully, hash=0xBCECBBF52782E64266980E4234BFD0F1B8AB4B64A1D9BC4237F01051BC7CB9AF

JSON-RPC Example

JSON-RPC Request - BLOCK COLLECT REWARD

Collects rewards from the definite blocks on the wallet (using address).

Request Structure

JSON object:

{
  "method": "block",
  "subcommand": ["collect","reward"],
  "arguments": {
    "net": "network_name",
    "chain": "chain_name",
    "cert": "priv_cert_name",
    "addr": "address",
    "hashes": "list_of_hashes",
    "fee": "value"
  },
  "id": "1"
}

Parameters:

net (network_name) - name of the Cellframe Network. The list of networks can be found in the <Config_dir> \ etc \ network folder or received using - Node Command - NET LIST chain - the name of chain (main or zerochain) cert - name of the private master node certificate addr - wallet address for collecting rewards hashes - list of block hashes for collecting rewards fee - commission for transactions in the network

If you make a request in the Cellframe network, use parameter chain:main.

Curl Example

Request:

curl --unix-socket /opt/cellframe-node/var/run/node_cli -X POST http://localhost/connect -d '{
  "method": "block",
  "subcommand": ["collect","reward"],
  "arguments": {
    "net": "raiden",
    "chain": "main",
    "cert": "raiden.my_cool_cert ",
    "addr": "jrmnGqeeds4Dp67AcKWcuMdcEk1w93oKzAGr9rGQNMvxXn3hgGmtVpee75rsaNxAWUxiGcMUvhjiNdmxhA9pUPdiZy51ZeJhYx8SNxf5",
    "hashes": "0x60A5C7195D06AC0D2105B7E5F0811C3FAFEC93050E90EE90D00F0C27F641A1B9,0x450E653C5B4A9B8D810D93FDC717DB8B8F9BE5570B93841C3F6E2A0E311E2D51",
    "fee": "0.05e+18"
  },
  "id": "1"
}'

Response:

{
  "type"2,
  "result": [
    {
      "TX for reward collection created succefully, hash""0x743C12582E3A17239D0DE8F6D9FB0B0C7555BB0C0827AA79B7ABF31590E470D4"
    }
  ],
  "id"1
}
Link to original

Link to original

Node Command - BLOCK AUTOCOLLECT

Shows rewards and fees automatic collecting status in the specified network for your master node.

Command syntax:

block autocollect status 
-net <net_name> 
-chain <chain_name> 
 

Options:

-net - name of the Cellframe Network. The list of networks can be found in the <Config_dir> \ etc \ network folder or received by The Cellframe-Node-CLI using command - net list
-chain - the name of Chain. The list of chains can be found in the directory <Config_dir> \ etc \ network \ <network_name> or by the Cellframe-Node-CLI using command - net list chains

If you request command in the Cellframe network, use parameter -chain main.

CLI Example

Command:

cellframe-node-cli block autocollect status 
-net KelVPN 
-chain main

Response:

Autocollect tables content for:

=== Fees ===
0xEE776EA9B7E1781F99C30C8A6AAC1677B95DAA246A119E4861BC668E16DDCEBA      0.05
Total prepared value: 0.05 KEL

=== Rewards ===
0x3BCD5539CDF3E3CEC5528C21A7BC7765B20BD853965400BF084BEC263C4437B3      45.584250342048243441
0xFF8DD1ADA646D6F174877EC879834B39BC27889CC40202BC1BB9FB3BA363F484      22.435626862822493122
Total prepared value: 68.019877204870736563 KEL

JSON-RPC Example

JSON-RPC Request - BLOCK AUTOCOLLECT

Shows rewards and fees automatic collecting status in the specified network for your master node.

Request Structure

JSON object:

{
  "method": "block",
  "subcommand": "autocollect status",
  "arguments": {
    "net": "network_name",
    "chain": "chain_name"
  },
  "id": "1"
}

Parameters:

net - name of the Cellframe Network. The list of networks can be found in the <Config_dir> \ etc \ network folder or received using - Node Command - NET LIST chain - the name of chain (main or zerochain)

If you make a request in the Cellframe network, use parameter chain:main.

In case of mistakes in configuration files or network problems you will get the following message:

Note

Autocollect status: for network <network_name> is inactive cause of the network config or consensus starting problems

Curl Example

Request:

curl --unix-socket /opt/cellframe-node/var/run/node_cli -X POST http://localhost/connect -d '{
  "method": "block",
  "subcommand": "autocollect status",
  "arguments": {
    "net": "riemann",
    "chain": "main"
  },
  "id": "1"
}'

Response:

{
  "type"2,
  "result": [
    {
      "Autocollect status""for network riemann is active\n",
      "Autocollect tables content for === Fees ===": [
        {
          "obj_key""0xFC9E00315355F93EBE9596C4DBF5C4B644C437CCE0BDB73D981569B327A36E32",
          "obj_val""1.0"
        },
        {
          "obj_key""0x9665EFAA7AB6B89165A58365B7E05B612847E7678FE2B079586F5A6976234F3A",
          "obj_val""0.05"
        },
        {
          "obj_key""0xD0E1EEC67BFBF8B5D4AE24AB31FD54EDBEF556B98F6E10ACC9194A0F3C465961",
          "obj_val""0.5"
        },
        {
          "obj_key""0x3D027DE1DD4668950D272863305E733117B74791A8BE395E476D45E7439E77E1",
          "obj_val""5.0"
        },
        {
          "obj_key""0xDFA952FE5CE579BCC4E328F1EAE71DBDACD236DEADE2056A8CA1783B8251A143",
          "obj_val""1.05"
        },
        {
          "obj_key""0x9655DB784040EB52013946AC363F7D1FC5637B4686D26F9A35887869E5719A7C",
          "obj_val""0.05"
        },
        {
          "obj_key""0xF5A2FA7E3A4982E3CDBC29B29EA4A82120CC3B90F5B9220B980FFC484EFC5DBC",
          "obj_val""1.0"
        }
      ],
      "Fees status""Total prepared value: 8.65 tKEL, where profit is 8.525, tax is 0.0, fee is 0.125\n",
      "Autocollect tables content for === Rewards ===": [
        {
          "obj_key""0x3D027DE1DD4668950D272863305E733117B74791A8BE395E476D45E7439E77E1",
          "obj_val""2.146666666666666666"
        },
        {
          "obj_key""0xA51BC44B34EAAD9CDD4AED7E50E2DD874F9BB2BF2F9A0E0D17BEA2F3183A4805",
          "obj_val""3.663333333333333333"
        },
        {
          "obj_key""0xDFA952FE5CE579BCC4E328F1EAE71DBDACD236DEADE2056A8CA1783B8251A143",
          "obj_val""2.73"
        },
        {
          "obj_key""0x9655DB784040EB52013946AC363F7D1FC5637B4686D26F9A35887869E5719A7C",
          "obj_val""1.633333333333333333"
        },
        {
          "obj_key""0xF5A2FA7E3A4982E3CDBC29B29EA4A82120CC3B90F5B9220B980FFC484EFC5DBC",
          "obj_val""1480.64"
        },
        {
          "obj_key""0x6E7AD308C55003D9C5A8BEDDCEA17D356AF53FDA86596334A2EA3F90FFC1E6A9",
          "obj_val""0.482222222222222222"
        }
      ],
      "Rewards status""Total prepared value: 1491.295555555555555554 tKEL, where profit is 1491.170555555555555554, tax is 0.0, fee is 0.125\n"
    }
  ],
  "id"1
}
Link to original

Link to original