Create Withdrawal
POST /api/v1/account/withdrawalRequest body
string
required
Destination TRON address
string
required
Amount to withdraw in TRX
string
TRX (default) or USDT. With USDT, amount_trx holds the USDT amount to send.string
2FA code (if 2FA is enabled)
Headers
string
Optional, up to 64 characters. Send a new key (a UUID, for example) with every new withdrawal, and the same key when you repeat a request whose answer you did not get — the repeat returns the first withdrawal instead of creating a second one.
Retrying safely
- The same key with the same
to_address,amount_trxandcurrencyreturns200with the withdrawal the first request created, as it stands now. Nothing is charged twice. - The same key with a different body is refused with
422and the codeIDEMPOTENCY_KEY_REUSED; a key longer than 64 characters — with422andIDEMPOTENCY_KEY_TOO_LONG. Keys are scoped to your account and do not expire — never reuse one for another withdrawal. - One unsettled withdrawal (
pending,scheduledorprocessing) at a time: another request while one is unsettled gets400withYou already have a pending withdrawal. - After a withdrawal created with
Idempotency-Key, the next one may be created in 5 seconds; without the header the pause stays 60 seconds (429, see Rate limits).
Example
Response
List Withdrawals
GET /api/v1/account/withdrawalsResponse
Withdrawal statuses
Withdrawals created with an API key are sent immediately and never pass through
scheduled. Rows created in the web dashboard carry execute_after — the moment the transfer is sent unless it is cancelled before then.
Security hold after an email change
For 24 hours after the account email is changed, creating a withdrawal is rejected with403 and the error code WITHDRAWAL_EMAIL_COOLDOWN. The response carries retry_after_seconds — how long is left until withdrawals unlock:
Response
withdraw scope. If you did not change the account email, contact support immediately.