transfer_funds
Move crypto between Bitget accounts (internal, main-to-sub, sub-to-main). Preflight reports maximum transferable amount without executing the transfer.
Instructions
[VERB] Move funds by intent: action internal | mainToSub | subToMain. preflight reports max transferable without moving anything; transfers honor dryRun/readOnly.
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| coin | No | Coin to move, e.g. USDT. | |
| view | No | summary (default) trims null fields to save tokens; full returns the untouched payload. | |
| action | Yes | What to do — internal: UTA↔classic, same user (needs: fromType, toType, amount, coin) | mainToSub: main → sub-account (needs: fromType, toType, amount, coin, fromUserId, toUserId, clientOid) | subToMain: sub → main account (needs: fromType, toType, amount, coin). preflight reports max transferable without moving funds. | |
| amount | No | Amount to transfer. | |
| dryRun | No | Preview the transfer without sending it. | |
| fields | No | Optional list (array or comma-separated string) of fields to keep on each returned row. | |
| symbol | No | Symbol (internal isolated-margin transfers). | |
| toType | No | Destination account type. | |
| fromType | No | Source account type. | |
| toUserId | No | Destination uid (mainToSub). | |
| clientOid | No | Idempotency key. Auto-generated for sub-account transfers when omitted (P7). | |
| preflight | No | If true, return the max transferable amount for `coin` WITHOUT transferring. | |
| fromUserId | No | Source uid (mainToSub). |