---
title: "Withdraw crypto to an external address"
method: POST
path: "/api/wallets/withdrawal"
tags: ["Wallets"]
---

# Withdraw crypto to an external address

`POST /api/wallets/withdrawal`

## Request

- Base URL: `https://api.binibit.com`
- URL: `https://api.binibit.com/api/wallets/withdrawal`
- Auth: none declared

Needs a key with the Withdrawal permission. Answers 200 once the request is ACCEPTED, not once it is
sent — the transfer is then reviewed and broadcast, and you follow it through the wallet history.
The network fee is charged on top of the amount.

## Request body

- WithdrawalApiRequest: Request body for withdrawing crypto to an external address. Requires an API key with the Withdrawal permission.
  - `address` string, required: Destination blockchain address. Checked against the chain's own format — a value that is not a real address for that chain is rejected rather than sent, because a transfer cannot be recalled.
  - `addressPublicKey` string, nullable: Public key of the destination address. Required for Prizm (PZM) only; leave empty elsewhere.
  - `amount` number, double: Amount to withdraw, in PublicApi.Models.Wallets.WithdrawalApiRequest.CurrencyCode. The network fee is taken on top, so the account must hold more than this.
  - `currencyCode` string, required: Currency to withdraw, e.g. `USDT`.
  - `chain` integer: Which network to send over, for assets that exist on several — the numeric chain id from the currency's chain list. Getting this wrong sends the funds to a network the recipient may not control, so read the value from the currencies endpoint rather than hard-coding it.

## Response `200`

OK

## Changes

- **2026-10-13** `13dbac1613c4`: 1 info
  - endpoint added

[Operation history](https://skmtc.dev/binibit/apis/webapp/changes/api/wallets/withdrawal/post.md)

---

[API](https://skmtc.dev/binibit/apis/webapp.md) - [All operations](https://skmtc.dev/binibit/apis/webapp/llms.txt) - [OpenAPI document](https://skmtc.dev/binibit/apis/webapp/revisions/13dbac1613c4?raw)
