---
title: "Withdraw USDC from vault"
method: POST
path: "/v1/vault/withdraw"
tags: ["Vault"]
---

# Withdraw USDC from vault

`POST /v1/vault/withdraw`

## Request

- Base URL: `https://api.totalis.trade`
- URL: `https://api.totalis.trade/v1/vault/withdraw`
- Auth: one of:
  - HTTP bearer
  - API key in header `X-API-Key`
- TypeScript: <https://skmtc.dev/totalistrading/apis/totalis-rfq-api/docs/v1/vault/withdraw/post.ts> (a function with typed inputs; its response is checked against the schema)

Moves free balance from your on-chain vault back to your wallet. Only the free balance moves; the on-chain program enforces that locked collateral stays put. To send USDC to an external address use POST /v1/wallet/withdraw, which taps the vault for you.

## Request body

- VaultWithdrawRequest
  - `amount` number, required: USDC amount to withdraw (max 1,000,000)

## Response `200`

Withdrawal submitted

- object
  - `data` VaultTransactionResult: Response for vault deposit/withdraw operations.
    - `tx_signature` string: Solana transaction signature
    - `amount` number: USDC amount deposited/withdrawn
    - `status` 'completed' | 'chain_pending' | 'balance_pending': `completed` means the finalized chain effect and database mirror both committed. `chain_pending` means the broadcast outcome still needs chain recovery. `balance_pending` means the transaction finalized but the database mirror still needs recovery. Pending states fence the vault, and balances may remain stale meanwhile. The pending values are returned by deposits; withdrawals retain their existing error response while durable recovery is pending.

## Other responses

- `400`: Validation error
- `404`: No vault found (the vault is created with your first filled position)
- `500`: Internal server error
- `503`: Solana integration not enabled

## Changes

- **2026-09-11** `d0fb528a53f1`: 1 info
  - endpoint added

[Operation history](https://skmtc.dev/totalistrading/apis/totalis-rfq-api/changes/v1/vault/withdraw/post.md)

---

[API](https://skmtc.dev/totalistrading/apis/totalis-rfq-api.md) - [All operations](https://skmtc.dev/totalistrading/apis/totalis-rfq-api/llms.txt) - [OpenAPI document](https://skmtc.dev/totalistrading/apis/totalis-rfq-api/revisions/bd5823107170?raw)
