# Overview

Token Actions are exposed under a single `token` namespace on the Client. Read Actions are attached by
[`publicActions`](/docs/actions/public/introduction) and write Actions by
[`walletActions`](/docs/actions/wallet/introduction). See [Getting Started](/tokens) to set up a
Client.

## Read Actions

<Cards>
  <Card icon="lucide:badge-dollar-sign" title="token.getAllowance" description="Reads the amount a spender may spend on behalf of an account." to="/tokens/actions/getAllowance" />

  <Card icon="lucide:wallet" title="token.getBalance" description="Reads the token balance of an account." to="/tokens/actions/getBalance" />

  <Card icon="lucide:badge-info" title="token.getMetadata" description="Reads a token's `decimals`, `name`, and `symbol`." to="/tokens/actions/getMetadata" />

  <Card icon="lucide:database" title="token.getTotalSupply" description="Reads the token's total supply." to="/tokens/actions/getTotalSupply" />
</Cards>

## Write Actions

<Cards>
  <Card icon="lucide:check-check" title="token.approve" description="Approves a spender to transfer tokens on behalf of the caller." to="/tokens/actions/approve" />

  <Card icon="lucide:send" title="token.transfer" description="Transfers tokens to a recipient, or moves them on behalf of an owner via an allowance." to="/tokens/actions/transfer" />
</Cards>
