Create a withdrawal
Creates a withdrawal from a previously requested quote.
POST/withdrawals
System information
- API key
- Required
- Rate limit
- ∞
Before creating, get a quoteId from the fee calculation (POST /withdrawals/calculate).
Body parameters
| Parameter | Type | Required | Description |
|---|---|---|---|
| quoteId | string (UUID) | Yes | Value from the quote response. |
| coinCode | string | Yes | Same as in the quote. |
| networkCode | string | Yes | Same as in the quote. |
| amount | string | Yes | Same as in the quote. |
| destinationAddress | string | Yes | Same as in the quote. |
Response fields
| Parameter | Type | Description |
|---|---|---|
| uuid | string | Withdrawal UUID. |
| coinCode | string | Cryptocurrency code. |
| networkCode | string | Blockchain network code. |
| amount | string | Requested withdrawal amount. |
| recipientAmount | string | Amount the recipient receives. |
| debitAmount | string | Amount debited from the balance. |
| address | string | Recipient address. |
| status | string | Withdrawal status, see “Statuses”. |
| networkFee | string | Network fee. |
| txid | string | null | Blockchain transaction hash. Appears after broadcasting. |
| createdAt | string | Creation date (ISO 8601). |
| updatedAt | string | Last update date (ISO 8601). |
| broadcastedAt | string | null | Date the transaction was broadcast (ISO 8601). |
| confirmedAt | string | null | Confirmation date (ISO 8601). |
A 201 response means the withdrawal is accepted for processing. The minimum is 0.001 in coin units.
Idempotency
| Situation | Result |
|---|---|
| Creating a withdrawal | Balance and permissions are checked again. |
| Timeout, result unknown | Repeat the same request with the same quoteId. Do not request a new quote until you know the result. |
| Withdrawal already created | A retry returns the existing withdrawal, even after the quote has expired. |
Different parameters with the same quoteId | 400 WITHDRAWAL_QUOTE_MISMATCH |
| Withdrawal cancelled or failed | It is not created again with the same quoteId. |
| Quote expired before creation | 400 WITHDRAWAL_QUOTE_INVALID_OR_EXPIRED: request a new quote, the fee may change. |
Idempotency-Key header | Not used. |
Possible errors
| HTTP | Code | Description |
|---|---|---|
| 400 | WITHDRAWAL_ASSET_UNAVAILABLE | The withdrawal asset is unavailable. |
| 400 | WITHDRAWAL_DESTINATION_INVALID | Invalid destination address. |
| 400 | WITHDRAWAL_AMOUNT_INVALID | Invalid withdrawal amount. |
| 400 | WITHDRAWAL_AMOUNT_BELOW_MINIMUM | The withdrawal is below the minimum. |
| 400 | WITHDRAWAL_BALANCE_INSUFFICIENT | Insufficient balance. |
| 400 | WITHDRAWAL_QUOTE_INVALID_OR_EXPIRED | The quote is invalid or expired. |
| 400 | WITHDRAWAL_QUOTE_MISMATCH | Withdrawal parameters do not match the quote. |
| 400 | WITHDRAWAL_QUOTE_ALREADY_USED | The quote is already used. |
| 403 | ACCOUNT_ACCESS_DENIED | Withdrawals are disabled for the key (withdrawalsEnabled=false). |