> ## Documentation Index
> Fetch the complete documentation index at: https://docs.qash.ai/llms.txt
> Use this file to discover all available pages before exploring further.

# List accounts

> Return all Qash accounts for a user.

<Note>
  Requires `Authorization: Bearer <user-access-token>` — the token from [Verify login code](/api-reference/users/verify-otp). No `X-Api-Key`, `X-Api-Secret`, or `userId` — the token already identifies the user.
</Note>

Returns all Qash accounts owned by the logged-in user. Use the `id` from each account to reference it in deposit, transfer, and transaction endpoints.

## Request

```http theme={null}
GET /api/v1/user/accounts
Authorization: Bearer <user-access-token>
```

## Response

**200 OK**

```json theme={null}
{
  "items": [
    { "id": 659, "asset": "USDC", "type": "LIABILITY", "credits": "0.00000000", "debits": "0.00000000" }
  ],
  "meta": { "totalItems": 1, "currentPage": 1 }
}
```

### Item fields

| Field   | Type   | Description                                                     |
| ------- | ------ | --------------------------------------------------------------- |
| `id`    | number | Account ID — use in deposit, transfer, and transaction requests |
| `asset` | string | Currency of the account — always `"USDC"` today                 |
| `type`  | string | Always `"LIABILITY"` for a user's own account                   |

<Info>
  The account is created automatically the first time the user logs in — you do not need to call a separate account-creation endpoint. Every active user has exactly one USDC account.
</Info>

## Errors

| HTTP status | Error                      | Cause                                       |
| ----------- | -------------------------- | ------------------------------------------- |
| `401`       | `Invalid or expired token` | Missing, expired, or malformed access token |
