binance_convert_dust_to_bnb
Sell small asset balances for BNB in one irreversible batch. Preview eligible assets first, then convert up to 100 per call using Binance's dust endpoint.
Instructions
Convert small balances to BNB. Irreversible — the assets are sold for BNB.
Calls POST /sapi/v1/asset/dust (SIGNED, UID weight 10). Every asset listed is
swapped to BNB at Binance's dust rate, minus a service charge; there is no undo and
no "cancel" endpoint.
Preview first. Run binance_get_dust_convertible and pass only assets it
listed: it names what qualifies and how much BNB each one yields, and it works even
with the kill-switch off.
Kill-switch. This call is refused with Error: … trading is disabled … unless
the server runs with BINANCE_ALLOW_TRADING=1. The gate lives in the HTTP client,
so no tool can bypass it. If you see that error, the operator has deliberately put
the server in read-only mode — report it, do not try to work around it.
Key permission. The API key needs "Enable Spot & Margin Trading"; this is a trade, not a transfer.
At most 100 assets per call — a client-side guard, not a Binance limit (Binance documents no cap). Split a longer list into batches; each batch is its own irreversible conversion.
When to Use:
After a human approved converting these specific assets, and after the preview confirmed they qualify.
When NOT to Use:
To swap a meaningful amount of one asset for another — the dust rate is worse than the market; use the convert tools (convert.py) or a spot order instead.
To see what happened in past conversions — use
binance_get_dust_log.
Returns:
A confirmation echoing exactly what Binance returned: totalTransfered (BNB
received), totalServiceCharge, and the per-asset transferResult rows with their
tranIds. Nothing is inferred; an asset Binance silently skipped simply will not
appear in the table.
Examples: params = {"assets": ["ADA"]} params = {"assets": ["ADA", "DOT", "XRP"], "account_type": "SPOT"}
Error Handling:
Error: … trading is disabled …→ the kill-switch is off; nothing was converted.-2015 means the key lacks Spot & Margin Trading permission, or this IP is not allowlisted.
"The asset does not have a dust balance" family of errors → re-run
binance_get_dust_convertible; eligibility changes with price.A 5xx or a timeout means the conversion status is UNKNOWN — check
binance_get_dust_logbefore retrying; a duplicate conversion cannot be undone.
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| params | Yes |
Output Schema
| Name | Required | Description | Default |
|---|---|---|---|
| result | Yes |