Skip to main content

set action permission

Command

clio set action permission account code type requirement [OPTIONS] 

Description

Set parameters dealing with account permissions

Synopsis

clio set action permission
account <TEXT> # REQUIRED: The account to set/delete a permission authority
code <TEXT> # REQUIRED: The account that owns the code for the action
type <TEXT> # REQUIRED: The type of the action
requirement <TEXT> # REQUIRED: [delete] NULL, [set/update] The permission name required for executing the action
[-h, --help] # Print this help message and exit
[-x, --expiration <UINT>] # Set expiration time in seconds before a transaction expires (default: 30s)
[-f, --force-unique] # Force the transaction to be unique (consumes extra bandwidth)
[-s, --skip-sign] # Skip signing the transaction with unlocked wallet keys
[-j, --json] # Print the result in JSON format
[--json-file <TEXT>] # Save the result in JSON format to a file
[-d, --dont-broadcast] # Do not broadcast the transaction (prints to stdout instead)
[--return-packed] # Used with --dont-broadcast to get the packed transaction
[-r, --ref-block <TEXT>] # Set the reference block number or block ID for TAPOS
[--use-old-rpc] # Use old RPC push_transaction instead of the new RPC send_transaction
[--use-old-send-rpc] # Use old RPC send_transaction instead of new /v1/chain/send_transaction2
[-p, --permission <TEXT>] # Authorize with account@permission (default: 'account@active')
[--max-cpu-usage-ms <UINT>] # Set the upper limit on CPU usage in milliseconds (default: no limit)
[--max-net-usage <UINT>] # Set the upper limit on network usage in bytes (default: no limit)
[--delay-sec <UINT>] # Set a delay in seconds before execution (default: 0s)
[-t, --return-failure-trace] # Return partial traces on failed transactions
[--retry-irreversible] # Request node to retry transaction until it is irreversible or expires (blocking call)
[--retry-num-blocks <UINT>] # Request node to retry transaction until included in a block of given height (blocking call)

Requirements

  • Install the currently supported version of clio.
note

| The clio tool is bundled with the Wire software. Installing Wire Sysio will install the clio and kiod command line tools.

  • You have access to a local Wire node.
  • You have a sysio account and access to the account's private key.

Examples

  1. Set permission on a hi action deployed to the scontract1 account so that the bob account's active permission and customp1 permission are authorized:
clio set action permission bob scontract1 hi customp1 -p bob@active

Where

  • bob = The name of the account to link the custom permission authority.
  • scontract1= The name of the account which owns the smart contract.
  • hi = The name of the action to link to a permission.
  • customp1 = The permission used to authorize the transaction.
  • -p bob@active = The permission used to authorize setting the permissions.

Example Output

executed transaction: 4eb4cf3aea232d46e0e949bc273c3f0575be5bdba7b61851ab51d927cf74a838  128 bytes  141 us
# sysio <= sysio::linkauth {"account":"bob","code":"scontract1","type":"hi","requirement":"customp1"}
  1. Set permissions on a bye action deployed to the scontract1 account so that the bob account's active permission and customp2 permission are authorized:
clio set action permission bob scontract1 bye customp2 -p bob@active

Where

  • bob = The name of the account to link the custom permission authority.
  • scontract1= The name of the account which owns the smart contract.
  • bye = The name of the action to link to a permission.
  • customp2 = The permission used to authorize the transaction.
  • -p bob@active = The permission used to authorize setting the permissions.

Example Output

executed transaction: 4eb4cf3aea232d46e0e949bc273c3f0575be5bdba7b61851ab51d927cf74a838  128 bytes  141 us
# sysio <= sysio::linkauth {"account":"bob","code":"scontract1","type":"bye","requirement":"customp2"}
  1. To remove the customp1 permission from the hi action:
clio set action permission bob scontract1 hi NULL -p bob@active

Where

  • bob = The name of the account to link the custom permission authority.
  • scontract1= The name of the account which owns the smart contract.
  • hi = The name of the action to link to a permission.
  • NULL = Remove the permission.
  • -p bob@active = The permission used to authorize the transaction.

Example Output

executed transaction: 50fe754760a1b8bd0e56f57570290a3f5daa509c090deb54c81a721ee7048201  120 bytes  242 us
# sysio <= sysio::unlinkauth {"account":"bob","code":"scontract1","type":"hi"}

See Also