POST /v1/quote — Indicative quote
Returns a reference price. Not persisted, not signed, not executable.Request body
string
required
On-chain
bytes32 corridor ID. Obtain from GET /v1/corridors.string
required
0x-prefixed ERC-20 address of the input token.string
required
0x-prefixed ERC-20 address of the output token.string
required
Decimal display amount of the input token. Must be a JSON string (e.g.
"1000").string
required
0x-prefixed wallet address registered to your credential with swap permission.string
Must be omitted,
null, or INDICATIVE. Sending FIRM returns 400.Response 200 OK
string
Derived pair in
BASE-QUOTE format (e.g. USDT-IDRX). USD token is always base; otherwise alphabetical.string
SELL (sending base token) or BUY (receiving base token).AmountInfo
Input and output amounts. Each contains
display (string), raw (string), token (string).string
Risk state:
NORMAL, PROTECT, or RESTRICT.integer
Unix timestamp in seconds.
FeeBreakdownInfo
Full fee transparency. See Fee breakdown below.
OnchainFirmQuoteInfo
On-chain quote-shaped data — preview only, not signed.
400, 401, 403, 422 (plain-text), 503
POST /v1/firm-quote — Firm executable quote
Persists the quote, signs the on-chainFirmQuote EIP-712 payload, and returns calldata for commitFirmQuote.
Request body
Same asPOST /v1/quote, except:
string
required
Must be
FIRM.string
Partner-supplied idempotency reference. Non-empty, no leading or trailing whitespace, max 128 chars. Any previously used value returns
409.Response 200 OK
Contains every field from the indicative response, plus:
string
Hex-encoded EIP-712 signature over the
FirmQuote payload.ExecutionInfo
Transaction target and calldata for on-chain execution.
ExecutionInfo
Errors:
400, 401, 403, 409 (duplicate client_ref), 422 (plain-text), 503
Fee breakdown
Every quote response includes a detailedfee_breakdown:
FeeBreakdownInfo
Fixed and variable fees are deducted from the input token before output calculation. The spread fee is expressed in output token units.
PartnerPricingInfo
For mode: "STANDARD":
For
mode: "FIXED_INPUT_RATE":