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

# Custody

> Deposit addresses, balances, and withdrawals

Custody holds user funds. Deposits arrive on per-user derived addresses and are
credited after confirmation; balances are tracked per `(venue, asset)`, with USDC
held separately. Withdrawals are queued and settled asynchronously.

## Endpoints

| Endpoint                               | Purpose                                   |
| -------------------------------------- | ----------------------------------------- |
| `POST /custody/create-deposit-address` | Issue a deposit address on a chain        |
| `GET /custody/get-deposit-addresses`   | List the user's deposit addresses         |
| `GET /custody/get-balance`             | Balance for a single `(venue, asset)`     |
| `GET /custody/get-usdc-balance`        | USDC balance                              |
| `POST /custody/withdraw`               | Queue a withdrawal to an external address |

<Note>
  Withdrawals require the `withdraw` scope, which only an API key can carry —
  never a password session. A session-authenticated request returns `403`.
</Note>

Amounts are `U256`: hex strings in responses, and decimal strings, hex strings,
or numbers in requests.
