wallet-cli permission show¶
Show the account's permission structure.
Synopsis¶
wallet-cli permission show [options]
Description¶
A read-only view of the account's permission groups — owner, witness (SRs only), and up to 8 active groups — each with its threshold, keys (address + weight), and, for active groups, the decoded list of operations it may perform. Run it before permission update, and use it to check a co-signer's structure before signing.
By default it reads the active account; --account overrides it and also accepts a bare address, so you can inspect any account on chain.
Reading the output — the text layout mirrors the TronScan permission page, one "label / value" card per group:
- Permission Name — the on-chain
permission_nameplus its id (active groups are markedactive). The name is chosen when the group is created bypermission update; it is a mnemonic only, with no on-chain meaning. A never-modified account shows the chain default: anownerand anactivegroup, each with the account's own address as the sole key and threshold1. - Operation(s) — active groups only. On chain this is a 32-byte bitmap (one bit per contract type); the text decodes it to human operation labels (
Transfer TRX,Vote, …) and gives the total count. The label set matches what the TronScan permission page shows. JSON keeps the machine-readable contract-type names inoperationsplus the rawoperationsHex. - Threshold — the combined signature weight a transaction needs to be valid for this group.
- Authorized To — the group's keys as
Address / Weight. Keys held by a local wallet (software or Ledger) are annotated(this wallet: <label>), so you can see at a glance how much weight you control — the basis for the lockout warning inpermission update.
Options¶
No command-specific options; the global options only (--network, and --account, which also accepts a bare address).
Examples¶
A never-modified account shows the chain-default owner and active groups. The active group's complete operation set is wrapped at a fixed 76-character width (not the terminal's); labels are never replaced with an ellipsis. Unknown bitmap bits are printed as Unknown contract type <id>.
A multi-sig account — here the owner group is a 2-of-3 and a scoped finance active group handles day-to-day transfers. This wallet holds only one of the keys (main); the other two are held by external co-signers, so they carry no annotation:
wallet-cli permission show --account main --network tron:3448148188
Account main (TQkXm4vN8pR2sD6fWbYc3LhJa9Ee5Zt7Uw)
Permission Name owner (id 0)
Threshold 2
Authorized To Address Weight
TQkXm4vN8pR2sD6fWbYc3LhJa9Ee5Zt7Uw 1 (this wallet: main)
TBy6mQ7Y3nJ8sD2fWpXk4LhVc9Ra1Zt5Ub 1
TXe4Kd8nP2rF9gH5jL3mV6cW1bN7yS0aQz 1
Permission Name finance (id 2, active)
Operation(s) Transfer TRX · Transfer TRC10 · Trigger Smart Contract (3 total)
Threshold 2
Authorized To Address Weight
TQkXm4vN8pR2sD6fWbYc3LhJa9Ee5Zt7Uw 1 (this wallet: main)
TBy6mQ7Y3nJ8sD2fWpXk4LhVc9Ra1Zt5Ub 1
TXe4Kd8nP2rF9gH5jL3mV6cW1bN7yS0aQz 1
wallet-cli permission show --account main --network tron:3448148188 -o json
{"schema":"wallet-cli.result.v1","success":true,"command":"permission.show","data":{"address":"TQkXm4vN8pR2sD6fWbYc3LhJa9Ee5Zt7Uw","owner":{"id":0,"name":"owner","threshold":2,"keys":[{"address":"TQkXm4vN8pR2sD6fWbYc3LhJa9Ee5Zt7Uw","weight":1,"local":"main"},{"address":"TBy6mQ7Y3nJ8sD2fWpXk4LhVc9Ra1Zt5Ub","weight":1,"local":null},{"address":"TXe4Kd8nP2rF9gH5jL3mV6cW1bN7yS0aQz","weight":1,"local":null}]},"witness":null,"actives":[{"id":2,"name":"finance","threshold":2,"operations":["TransferContract","TransferAssetContract","TriggerSmartContract"],"operationLabels":["Transfer TRX","Transfer TRC10","Trigger Smart Contract"],"operationsHex":"0600008000000000000000000000000000000000000000000000000000000000","unknownOperationIds":[],"keys":[{"address":"TQkXm4vN8pR2sD6fWbYc3LhJa9Ee5Zt7Uw","weight":1,"local":"main"},{"address":"TBy6mQ7Y3nJ8sD2fWpXk4LhVc9Ra1Zt5Ub","weight":1,"local":null},{"address":"TXe4Kd8nP2rF9gH5jL3mV6cW1bN7yS0aQz","weight":1,"local":null}]}]},"meta":{"durationMs":21,"warnings":[]},"chain":{"family":"tron","network":"tron:3448148188","chainId":"3448148188"}}
Output¶
| Field | Type | Meaning |
|---|---|---|
address |
string | Queried account |
owner |
object | Owner group {id, name, threshold, keys[]} |
witness |
object | null | Witness group with {id, name, threshold, keys[]} for SRs, else null |
actives[] |
array | Active groups, each {id, name, threshold, operations[], operationLabels[], operationsHex, unknownOperationIds[], keys[]} |
…operations[] |
string[] | Contract-type names the active group may perform |
…operationLabels[] |
string[] | Human-readable labels corresponding to known operation ids |
…operationsHex |
string | Raw 32-byte operations bitmap, hex |
…unknownOperationIds[] |
number[] | Set bits this build cannot map to a known contract type; empty when all operations are known |
…keys[] |
array | Group keys: {address, weight, local} — local is the wallet label if held locally, else null |
Exit status¶
0 success · 1 execution failure (not_found — the address is unactivated / absent on chain; rpc_error) · 2 usage error (invalid_value).
See also¶
permission update · tx sign · tx approvals · Security