contract

set contract

deploy a new contract or update a new contract.

Usage example

# must create $con account in advance and make sure it has sufficent FLON for gas

tcli set contract $con ./build/contracts/$contract_dir -p ${con}@active

invoke contract

Invoke an action of the target contract

Usage example

tcli push action $contract_name $action_name $params -p $issuer

## Samples:
#
#   tcli  push action currencyview view '["userb"]' -p usera
#

Read contract

Get the state data out of a smart contract

# enquire currency stats
tcli get currency stats $token_contract $symbol

# Samples:
#
#   tcli get currency stats flon.token FLON
#

Get contract ABI

Get contract ABI info

Usage example

tcli get abi $contract

# Samples:
#
#   tcli get abi flon.xchain
#

Get contract data via primary index

Get data via primary index of a contract

Usage example

## CLI
tcli get table $code $scope $table $options

# Samples:
#
#    tcli get table flon.xchain flon.xchain global
#    tcli get table flon.xchain flon.xchain xinaddrmap
#    tcli get table flon.xchain flon.xchain coins -l 1 -r
#    tcli get table flon.xchain flon.xchain xinorders -l1
#    tcli get table flon.xchain flon.xchain xinorders -l1 -r

Get contract data via 2ndary index

Get data via secondary index of a contract

Usage example

tcli get table $code $scope $table --index $indexNum --key-type $keyType $options

# Samples:
#
#    tcli get table flon.xchain flon.xchain xinorders --index 2 --key-type i64 -r -l1
#

get_table_rows

Get smart contract data.

Usage examples

curl  https://t1.flon.network/v1/chain/get_table_rows -X POST -d '{"scope":"inita", "code":"currency", "table":"account", "json": true}'
$ curl  https://t1.flon.network/v1/chain/get_table_rows -X POST -d '{"scope":"inita", "code":"currency", "table":"account", "json": true, "lower_bound":0, "upper_bound":-1, "limit":10}'

Result example

{
  "rows": [
    {
      "account": "account",
      "balance": 1000
    }
  ],
  "more": false
}

Last updated