Query Tokens

Query CW20 token information without submitting transactions.

Commands

CommandDescription
bwick token balanceCheck balance for an address
bwick token infoView token metadata
bwick token listList all tokens you hold

Token Balance

Check the token balance of any address:
bwick token balance <contract> <address>
Or by key name:
bwick token balance <contract> --key <name>

Example

bwick token balance bwick1tokencontract... bwick1myaddress...
Output:
Token Balance

Contract: bwick1tokencontract...
Address:  bwick1myaddress...
Name:     My Token
Symbol:   MTK
Decimals: 6
Balance:  1,000,000,000 (1,000 MTK)

JSON Output

bwick token balance bwick1tokencontract... --key mykey --output json
{
  "contract": "bwick1tokencontract...",
  "address": "bwick1myaddress...",
  "name": "My Token",
  "symbol": "MTK",
  "decimals": 6,
  "balance": "1000000000"
}

Token Info

View token metadata and supply:
bwick token info <contract>

Example

bwick token info bwick1tokencontract...
Output:
Token Information

Contract:     bwick1tokencontract...
Name:         My Token
Symbol:       MTK
Decimals:     6
Total Supply: 1,000,000,000,000 (1,000,000 MTK)

Minter:       bwick1minteraddress...
Cap:          Unlimited

JSON Output

bwick token info bwick1tokencontract... --output json
{
  "contract": "bwick1tokencontract...",
  "name": "My Token",
  "symbol": "MTK",
  "decimals": 6,
  "total_supply": "1000000000000",
  "minter": "bwick1minteraddress...",
  "cap": null
}

Token List

List all CW20 tokens you hold:
bwick token list --key <name>
Or by address:
bwick token list <address>

Example

bwick token list --key mykey
Output:
Tokens held by bwick1myaddress...

CONTRACT                                    SYMBOL  DECIMALS  BALANCE
bwick1tokencontract1...                       MTK     6         1,000,000,000
bwick1tokencontract2...                       USDC    6         500,000,000
bwick1tokencontract3...                       TEST    6         100,000
Token list queries the contracts configured in cw20-tokens. Add tokens with:
bwick config set cw20-tokens bwick1token1...,bwick1token2...

JSON Output

bwick token list --key mykey --output json
{
  "address": "bwick1myaddress...",
  "tokens": [
    {
      "contract": "bwick1tokencontract1...",
      "symbol": "MTK",
      "decimals": 6,
      "balance": "1000000000"
    },
    {
      "contract": "bwick1tokencontract2...",
      "symbol": "USDC",
      "decimals": 6,
      "balance": "500000000"
    }
  ]
}

Raw Contract Queries

For advanced queries, use bwick program query:

Balance Query

bwick program query bwick1tokencontract... '{"balance":{"address":"bwick1addr..."}}'
{
  "balance": "1000000000"
}

Token Info Query

bwick program query bwick1tokencontract... '{"token_info":{}}'
{
  "name": "My Token",
  "symbol": "MTK",
  "decimals": 6,
  "total_supply": "1000000000000"
}

Minter Query

bwick program query bwick1tokencontract... '{"minter":{}}'
{
  "minter": "bwick1minteraddress...",
  "cap": null
}

All Accounts Query

bwick program query bwick1tokencontract... '{"all_accounts":{"limit":10}}'
{
  "accounts": [
    "bwick1addr1...",
    "bwick1addr2...",
    "bwick1addr3..."
  ]
}

Scripting Examples

Check Balance Threshold

#!/bin/bash
CONTRACT="bwick1tokencontract..."
ADDRESS="bwick1myaddress..."
THRESHOLD=1000000

BALANCE=$(bwick token balance $CONTRACT $ADDRESS --output json | jq -r '.balance')

if [ "$BALANCE" -lt "$THRESHOLD" ]; then
  echo "Warning: Balance ($BALANCE) below threshold ($THRESHOLD)"
fi

Export Holdings to CSV

bwick token list --key mykey --output json | \
  jq -r '.tokens[] | [.contract, .symbol, .balance] | @csv' > holdings.csv

Monitor Supply Changes

#!/bin/bash
CONTRACT="bwick1tokencontract..."

while true; do
  SUPPLY=$(bwick token info $CONTRACT --output json | jq -r '.total_supply')
  echo "$(date): Total Supply = $SUPPLY"
  sleep 60
done

Troubleshooting

Verify the contract address:
bwick program info bwick1tokencontract...
Add tokens to track:
bwick config set cw20-tokens bwick1token1...,bwick1token2...
bwick token list --key mykey
Check node is running:
bwick localnet status
# or
curl https://rpc.bwick.fun/status