Сreates a token-update datum and places it in the mempool

CLI Example

Command syntax:

token_update 
-net <net_name> 
[-chain <chain_name>] 
-token <existing_token_ticker> 
-type <CF20|private> 
[-total_supply_change <value>] 
-certs <name_certs> 
[-flag_set <flag>] 
[-flag_unset <flag>] 
[-total_signs_valid <value>] 
[-description <value>] 
[-tx_receiver_allowed <value>] 
[-tx_receiver_blocked <value>] 
[-tx_sender_allowed <value>] 
[-tx_sender_blocked <value>] 
[-add_cert <name_certs>] 
[-remove_certs <pkeys_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 - name of the chain where token was declared (optional)
-token - ticker (name) of the token
-type - type of the token (CF20 or private, CF20 by default)
-total_supply_change - changes total supply, specify “INF” to set unlimited total supply (optional)
-certs - list of certificates which were used to sign token
 
-flag_set - list of flags are being set (optional)
-flag_unset - list of flags are being unset (optional)
-total_signs_valid - sets the minimum amount of valid signatures (optional)
-description - token description written in " " (optional)
 
-tx_receiver_allowed - adds specified wallet address to the list of allowed receivers (optional)
-tx_receiver_blocked - adds specified wallet address to the list of blocked receivers (optional)
-tx_sender_allowed - adds specified wallet address to the list of allowed senders (optional)
-tx_sender_blocked - adds specified wallet address to the list of blocked senders (optional)
 
-add_cert - adds certificates to the certificates list of the token (optional)
-remove_certs - removes certificates from the certificates list using theirs public key hash (optional)

Available flags:

ALL_BLOCKED: Blocks all permissions.
ALL_ALLOWED: Allows all permissions unless they are blocked. Be careful with this mode.
ALL_FROZEN: Temporarily freezes all permissions
ALL_UNFROZEN: Unfreezes all frozen permissions
STATIC_ALL: Blocks manipulations with a token after declaration. Tokens are declared statically.
STATIC_FLAGS: Blocks manipulations with token flags after declaration.
STATIC_PERMISSIONS_ALL: Blocks all manipulations with permissions list after declaration.
STATIC_PERMISSIONS_DATUM_TYPE: Blocks all manipulations with datum permissions list after declaration.
STATIC_PERMISSIONS_TX_SENDER: Blocks all manipulations with transaction senders permissions list after declaration.
STATIC_PERMISSIONS_TX_RECEIVER: Blocks all manipulations with transaction receivers permissions list after declaration.

Example:

Command:

cellframe-node-cli token_update 
-net foobar 
-chain zero 
-token ZZZ 
-type CF20 
-total_supply 0 
-decimals 18 
-signs_total 1 
-signs_emission 1 
-certs foobar.root.pvt.0 
-flags ALL_ALLOWED

Response:

Datum 0x8F581F2B53062ADF150D34EF3DA0224DA11FA6AFB7D9964A520F60449483DC69 with 256bit token ZZZ is placed in datum pool

JSON-RPC Example

Command:

curl -X POST http://rpc.cellframe.net/connect -d '{"method":"token_update", "params":["token_update;-net;foobar;-chain;zero;-token;ZZZ;-type;CF20;-total_supply;0;-decimals;18;-signs_total;1;-signs_emission;1;-certs;foobar.root.pvt.0;-flags;ALL_ALLOWED"], "id":"1"}'

Response:

{
"type": 0,
"result": "Datum 0x8F581F2B53062ADF150D34EF3DA0224DA11FA6AFB7D9964A520F60449483DC69 with 256bit token ZZZ is placed in datum pool",
"errors": null,
"id": 1
}