transaction (tx)

You can record or modify registered data on the chain by using the daemon’s transaction command.

When executing the transaction, you must put in the --chain-id, --fee and --from. In the --fees <default fee of 20000> wallet, your balance must be equal to or higher than the transaction fee amount.

tx authz

Authorize and revoke access to execute transactions on behalf of your address.

exec

execute tx on behalf of granter account.

Usage

firmachaind tx authz exec <json file path>

Example

firmachaind tx authz exec "./txMsg.json"

grant

grant authorization to an address to execute a transaction on your behalf.

Usage

firmachaind tx authz grant <grantee> <authorization_type="send"|"generic"|"delegate"|"unbond"|"redelegate">

Example

firmachaind tx authz grant firma1e..y5a43qc delegate --allowed-validators "firma1e..y5a43qc","firma1n..65ux9u"

revoke

Authorize and revoke access to execute transactions on behalf of your address.

Usage

firmachaind tx authz revoke <msg_type>

Example

firmachaind tx authz revoke firma1e..y5a43qc

tx bank

You can send tokens to a different wallet.

send

Send funds from one account to another. Note, the'--from' flag is ignored as it is implied from.

Usage

firmachaind tx bank send <from-keyname> <to-address> <amount>ufct

Example

firmahcaind tx bank send mykey firma1e..y5a43qc 1000000ufct

tx contract

You can record the log or the file hash of a contract.

add-contract-log

Add a new contractLog.

Usage

firmachaind tx contract add-contract-log <contractHash> <timeStamp> <eventName> <ownerAddress> <jsonString>

Example

firmachaind tx contract add-contract-log 67nah007sb..fh 1671532065 "CreateContact" firma10ne3nw4kcfj6vjz84l2m3gj8vyaczfhma5ff69 "{'totalOwner': 4}"

create-contract-file

contract transactions subcommands.

Usage

firmachaind tx contract create-contract-file <fileHash> <timeStamp> <ownerList("address,address")> <metaDataJsonString>

Example

firmachaind tx contract create-contract-file 67nah007sb..fh 1671532065 "firma1e..y5a43qc","firma1n..65ux9u" {}

tx distribution

Distribution transactions subcommands.

fund-community-pool

Funds the community pool with the specified amount.

Usage

firmachaind tx distribution fund-community-pool <amount>ufct

Example

firmachaind tx distribution fund-community-pool 1000000ufct

set-withdraw-addr

Set the withdraw address for rewards associated with a delegator address.

Usage

firmachaind tx distribution set-withdraw-addr <withdraw-addr>

Example

firmachaind tx distribution set-withdraw-addr firma1n..65ux9u

withdraw-all-rewards

Withdraw all rewards for a single delegator. Note that if you use this command with --broadcast-mode=sync or --broadcast-mode=async, the max-msgs flag will automatically be set to 0.

Usage

firmachaind tx distribution withdraw-all-rewards

Example

firmachaind tx distribution withdraw-all-rewards

withdraw-rewards

Withdraw rewards from a given delegation address, and optionally withdraw validator commission if the delegation address given is a validator operator.

Usage

firmachaind tx distribution withdraw-rewards <validator-addr>

Example

firmachaind tx distribution withdraw-rewards firmavaloper..y2w72qk

Use the --commission flag to receive commission rewards.

tx feegrant

Grant and revoke fee allowance for a grantee by a granter

grant

Grant authorization to pay fees from your address. Note, the'--from' flag is ignored as it is implied from [granter].

Usage

firmachaind tx feegrant grant <granter_key_or_address> <grantee>

Example

firmachaind tx feegrant grant mykey firma1e..y5a43qc

revoke

revoke fee grant from a granter to a grantee. Note, the'--from' flag is ignored as it is implied from [granter].

Usage

firmachaind tx feegrant revoke <granter_address> <grantee>

Example

firmachaind tx feegrant revoke firma1n..65ux9u firma1e..y5a43qc

tx gov

Governance transactions subcommands.

deposit

Submit a deposit for an active proposal. You can find the proposal-id by running "firmachaind query gov proposals".

Usage

firmachaind tx gov deposit <proposal-id> <deposit-amount>ufct

Example

firmachaind tx gov deposit 1 10ufct

submit-proposal

Submit a proposal along with an initial deposit. Proposal title, description, type and deposit can be given directly or through a proposal JSON file.

Where proposal.json contain

{
  "title": "Test Proposal",
  "description": "My awesome proposal",
  "type": "Text",
  "deposit": "10000ufct"
}

submit-proposal cancel-software-upgrade

Cancel a software upgrade along with an initial deposit.

Usage

firmachaind tx gov submit-proposal cancel-software-upgrade

submit-proposal community-pool-spend

Submit a community pool spend proposal along with an initial deposit. The proposal details must be supplied via a JSON file.

Where proposal.json contain

{
  "title": "Community Pool Spend",
  "description": "Pay me some UFCT!",
  "recipient": "firma1e..y5a43qc",
  "amount": "1000ufct",
  "deposit": "1000ufct"
}

Usage

firmachaind tx gov submit-proposal community-pool-spend <proposal-file>

Example

firmachaind tx gov submit-proposal community-pool-spend ./proposal.json

submit-proposal param-change

Submit a parameter proposal along with an initial deposit. The proposal details must be supplied via a JSON file. For values that contains objects, only non-empty fields will be updated.

Where proposal.json contain

{
  "title": "Staking Param Change",
  "description": "Update max validators",
  "changes": [
    {
      "subspace": "staking",
      "key": "MaxValidators",
      "value": 80
    }
  ],
  "deposit": "50000ufct"
}

Usage

firmachaind tx gov submit-proposal param-change <proposal-file>

Example

firmachaind tx gov submit-proposal param-change proposal.json

submit-proposal software-upgrade

Submit a software upgrade along with an initial deposit. Please specify a unique name and height for the upgrade to take effect.

Usage

firmachaind tx gov submit-proposal software-upgrade <version-name> \
--title <title> \
--description <description> \
--upgrade-height <block-height>
--deposit <deposit-amount>ufct

Example

firmachaind tx gov submit-proposal software-upgrade "v0.3.5" \
--title "Software Upgrade v0.3.5" \
--description "support module upgrade : bank, ibc\n let's upgrade" \
--upgrade-height 27100
--deposit 5000000ufct

vote

Submit a vote for an active proposal. You can find the proposal-id by running "firmachaind query gov proposals".

Usage

firmachaind tx gov vote <proposal-id> <option>

Example

firmachaind tx gov vote 1 yes

weighted-vote

Submit a vote for an active proposal. You can find the proposal-id by running "firmachaind query gov proposals".

Usage

firmachaind tx gov weighted-vote <proposal-id> <weighted-options>

Example

firmachaind tx gov weighted-vote 1 yes=0.6,no=0.3,abstain=0.05,no_with_veto=0.05

tx ibc-transfer

IBC fungible token transfer transaction subcommands.

transfer

Transfer a fungible token through IBC. Timeouts can be specified as absolute or relative using the "absolute-timeouts" flag. Timeout height can be set by passing in the height string in the form {revision}-{height} using the "packet-timeout-height" flag. Relative timeout height is added to the block height queried from the latest consensus state corresponding to the counterparty channel. Relative timeout timestamp is added to the greater value of the local clock time and the block timestamp queried from the latest consensus state corresponding to the counterparty channel. Any timeout set to 0 is disabled.

Usage

firmachaind tx ibc-transfer transfer <src-port> <src-channel> <receiver> <amount>

Example

firmachaind tx ibc-transfer transfer transfer channle-0 cosmos1... 100000ufct

tx nft

You can use features such as NFT registration, deletion and transfer.

burn

Broadcast message burn.

Usage

firmachaind tx nft burn <nftId>

Example

firmachaind tx nft burn 1

mint

Broadcast message mint.

Usage

firmachaind tx nft mint <tokenURI>

Example

firmachaind tx nft mint https://firmachain.org

transfer

Broadcast message transfer.

Usage

firmachaind tx nft transfer <nftId> <toAddress>

Example

firmachaind tx nft transfer 1 firma1e..y5a43qc

tx slashing

This feature allows jailed Validators to rejoin the network.

unjail

unjail a jailed validator.

Usage

firmachaind tx slashing unjail

tx staking

This feature provides Validator registration, modification and deposit.

create-validator

create new validator initialized with a self-delegation to it.

Usage

firmachaind tx staking create-validator \
--pubkey <validator-pubkey> \
--amount <staking-amount>ufct \
--moniker <moniker-name> \
--website <website-url> \
--security-contact <email-address> \
--details <validator-optional-details> \
--commission-rate <commission-rate(0.05 ~ 1.00)> \
--commission-max-rate <commission-max-rate(0.01 ~ 1.00)> \
--commission-max-change-rate <commission-max-change-rate(0.01 ~ 1.00)> \
--min-self-delegation <self-delegation-amount> \
--identity <keybase-64bit-code>

Example

firmachaind tx staking create-validator \
--pubkey $(firmachaind tendermint show-validator) \
--amount 10000000ufct \
--moniker "myValidator" \
--website "https://myvalidator.com" \
--security-contact "contact@myvalidator.com" \
--details "hello, world" \
--commission-rate 0.05 \
--commission-max-rate 0.02 \
--commission-max-change-rate 0.8 \
--min-self-delegation 100 \
--identity 64BA6..EU

delegate

Delegate an amount of liquid coins to a validator from your wallet.

Usage

firmachaind tx staking delegate <validator-addr> <amount>ufct

Example

firmachaind tx staking delegate firmavaloper..y2w72qk 35000ufct

edit-validator

edit an existing validator account.

Usage

firmachaind tx staking edit-validator \
--moniker <moniker-name> \
--website <website-url> \
--security-contact <email-address> \
--details <validator-optional-details> \
--commission-rate <commission-rate(0.05 ~ 1.00)> \
--commission-max-rate <commission-max-rate(0.01 ~ 1.00)> \
--commission-max-change-rate <commission-max-change-rate(0.01 ~ 1.00)>
--min-self-delegation <self-delegation-amount> \
--identity <keybase-64bit-code>

Example

firmachaind tx staking edit-validator \
--moniker "myVaildator" \
--website "https://myvalidator.com" \
--security-contact "contact@myvalidator.com" \
--details "hello, world" \
--commission-rate 0.05 \
--commission-max-rate 0.02 \
--commission-max-change-rate 0.8 \
--min-self-delegation 10 \
--identity 64BA6..EU

redelegate

Redelegate an amount of illiquid staking tokens from one validator to another.

Usage

firmachaind tx staking redelegate <src-validator-addr> <dst-validator-addr> <amount>ufct

Example

firmachaind tx staking redelegate firmavaloper..y2w72qk firmavaloper..xy8ha9j 1000ufct

unbond

Unbond an amount of bonded shares from a validator.

Usage

firmachaind tx staking unbond <validator-addr> <amount>ufct

Example

firmachaind tx staking unbond firmavaloper..y2w72qk 500ufct

tx wasm

The CosmWasm module enables smart contracts.

clear-contract-admin, clear-admin, clr-adm

Clears admin for a contract to prevent further migrations.

contract_addr_bech32 value has no relation to the wallet-address.

Usage

firmachaind tx wasm clear-contract-admin <contract-addr-bech32>

Example

firmachaind tx wasm clear-contract-admin firma14hj2t..

execute, run, call, exec, ex, e

Invokes processing functions on the smart contract.

Usage

firmachaind tx wasm execute <contract-addr-bech32> <json-encoded-send-args> --amount <coins,optional>

Example

firmachaind tx wasm execute firma14hj2t.. '{"register":{"name":"fred"}}' --amount="1000ufct"

instantiate, start, init, inst, i

Creates a new instance of an uploaded wasm code with the given 'constructor' message. Each contract instance has a unique address assigned.

Usage

firmachaind tx wasm instantiate <code-id-int64> <json-encoded-init-args> \
--admin <address,optional> \
--amount <coins,optional> \
--label <text>

Example

firmachaind tx wasm instantiate 1 '{"foo":"bar"}' \
--admin="$(firmachaind keys show mykey -a)" \
--amount="100ustake" \
--label "local0.1.0"

migrate, update, mig, m

Migrate a wasm contract to a new code version.

Usage

firmachaind tx wasm migrate <contract-addr-bech32> <new-code-id-int64> <json-encoded-migration-args>

Example

firmachaind tx wasm migrate firma14hj2t.. 10 '{"verifier": "firma1..."}'

store, upload, st, s

Upload a wasm binary.

Usage

firmachaind tx wasm store <wasm-file>

Example

firmachaind tx wasm store ./cw20_base.wasm

Last updated