Skip to navigation

Estimate a fee

View as MarkdownOpen in Claude

Estimates what a transfer between two addresses would cost.

⚠️ This is the one endpoint that takes raw addresses instead of a userId. It never touches the user’s wallet, so pass sender and recipient explicitly. They must differ.

The shape of result is family-specific: a decimal string in the chain’s native currency for Bitcoin, the EVM chains and Solana; an object of consumed resources (bandwidth, plus energy for TRC20) on TRON.

On assets where transfers are covered for you, result is instead a decimal string denominated in the token being sent — the fee the sender is charged, deducted in the same transfer. It may be "0" if transfers on that asset are free to the sender. Quote it before you confirm a transfer: the sender needs the amount plus this fee, or /send returns 402.

Depending on how your endpoint prices that fee it is either exact or an estimate, so read the figure /send returns as the amount actually charged.

These are estimates — gas prices and Tron resource prices move between the estimate and the broadcast.

Authentication

AuthorizationBearer

A 15-minute token from /auth. Required on every endpoint except /auth.

Headers

X-Request-IdstringOptional

Correlation id. Generated if omitted, echoed on every response, and written to the audit log. /send is the exception — there it is required, and it doubles as the idempotency key.

Request

This endpoint expects an object.
assetIdenumRequired

Primary asset selector. An all-digit string ("21") is accepted and normalised to an integer.

  • 1 — BITCOIN BTC (native, 8 decimals)
  • 2 — ETHEREUM ETH (native, 18 decimals)
  • 21 — ETHEREUM USDT (ERC20, 6 decimals)
  • 22 — ETHEREUM USDC (ERC20, 6 decimals)
  • 3 — BSC BNB (native, 18 decimals)
  • 31 — BSC USDT (BEP20, 18 decimals)
  • 32 — BSC USDC (BEP20, 18 decimals)
  • 4 — TRON TRX (native, 6 decimals)
  • 41 — TRON USDT (TRC20, 6 decimals)
  • 42 — TRON USDC (TRC20, 6 decimals) — not on every endpoint
  • 5 — POLYGON POL (native, 18 decimals)
  • 51 — POLYGON USDT (ERC20, 6 decimals) — not on every endpoint
  • 52 — POLYGON USDC (ERC20, 6 decimals)
  • 6 — SOLANA SOL (native, 9 decimals)
  • 61 — SOLANA USDT (SPL, 6 decimals) — not on every endpoint
  • 62 — SOLANA USDC (SPL, 6 decimals)
senderstringRequired

Raw source address — not a userId.

recipientstringRequired

Raw destination address. Must differ from sender.

Response

OK
resultstring or object

A decimal string in the chain’s native currency on Bitcoin, EVM and Solana; a resource object on TRON.

requestIdstring

Echo of the inbound X-Request-Id, or a generated one.

Errors

400
Bad Request Error
401
Unauthorized Error
403
Forbidden Error
503
Service Unavailable Error