API reference
Quote a bridge amount
GET
/v2/bridges/quoteQuote the net settlement for a bridge amount.
Authentication: None. This route is public.
#Parameters
| Name | In | Type | Required | Description |
|---|---|---|---|---|
asset |
query | "xmr" · "trx" · "zec" |
Yes | Registered native-bridge asset key, never a display symbol. |
direction |
query | "deposit" · "withdraw" |
Yes | deposit mints the wrapped asset from a native-coin deposit; withdraw returns the native coin against the wrapped asset. |
amount |
query | string (atomic integer) | Yes | Positive base-10 integer in the asset’s atomic unit. |
senderAddress |
query | string | No | Withdrawals only. The Hyperliquid address returning the wrapped asset, used to resolve that sender's fee override. The settled amount is re-derived from the verified sender. |
#Response
200 returns an object with:
asset·"xmr"·"trx"·"zec"· required — Registered native-bridge asset key, never a display symbol.direction·"deposit"·"withdraw"· required — deposit mints the wrapped asset from a native-coin deposit; withdraw returns the native coin against the wrapped asset.grossAtomic· string · requirednetAtomic· string or null · required — Amount actually settled, in atomic units. Null exactly whenbelowMinimumis true.feeAtomic· string or null · requiredflatFeeAtomic· string or null · requiredpercentFeeAtomic· string or null · requiredfeePercent· number or null · requiredminimumAtomic· string · requiredbelowMinimum· boolean · requiredavailable· boolean — Whether POST /v2/bridges accepts this asset and direction right now.
Errors use the standard error envelope: branch on code, never on the message.
#Example
curl
curl 'https://api-beta.wagyu.xyz/v2/bridges/quote?asset=xmr&direction=withdraw&amount=1000000000000'JavaScript
const res = await fetch('https://api-beta.wagyu.xyz/v2/bridges/quote?asset=xmr&direction=withdraw&amount=1000000000000'
);
const data = await res.json();Python
import requests
res = requests.get('https://api-beta.wagyu.xyz/v2/bridges/quote?asset=xmr&direction=withdraw&amount=1000000000000', timeout=30)
data = res.json()Response · 200 · captured 4 Nov 2026, 08:24 UTC
{
"asset": "xmr",
"direction": "withdraw",
"grossAtomic": "1000000000000",
"netAtomic": "980000000000",
"feeAtomic": "20000000000",
"flatFeeAtomic": "0",
"percentFeeAtomic": "20000000000",
"feePercent": 2,
"minimumAtomic": "10000000000",
"belowMinimum": false,
"available": true
}