Pairs

Get the minimum and maximum amounts for a single trading pair. Validate user input against these bounds before requesting a quote — quoting outside the range returns a validation_error.

GET/v1/pairs

Query parameters

NameTypeRequiredDescription
fromstringrequiredLowercase payin currency ticker.
tostringrequiredLowercase payout currency ticker.

Example

const res = await fetch(`${BASE}/v1/pairs?from=btc&to=eth`, {
  headers: { 'Authorization': AUTH },
});
const { pair } = await res.json();
console.log(`Min: ${pair.minAmountFloat} BTC, Max: ${pair.maxAmountFloat} BTC`);

Response

{
  "pair": {
    "from": "btc",
    "to": "eth",
    "minAmountFloat": "0.0008",
    "maxAmountFloat": "5.0",
    "minAmountFixed": "0.001",
    "maxAmountFixed": "1.5"
  }
}

Response fields

NameTypeDescription
fromstringEchoed payin ticker.
tostringEchoed payout ticker.
minAmountFloatstringMinimum payin for floating-rate swaps. Decimal string.
maxAmountFloatstringMaximum payin for floating-rate swaps. Decimal string.
minAmountFixedstringMinimum payin for fixed-rate swaps (mode: "fixed"). Decimal string.
maxAmountFixedstringMaximum payin for fixed-rate swaps (mode: "fixed"). Decimal string.

Notes

  • Limits change with market conditions; refresh before showing them in your UI.
  • Use the *Float fields to bound float-rate swaps and the *Fixed fields to bound fixed-rate swaps (mode: "fixed").
  • Listing all enabled pairs in one call is on the roadmap. Today you must query pairs individually.

Errors

TypeWhen
validation_errorfrom or to missing/invalid
not_foundThe pair doesn't exist or is temporarily disabled
unauthenticatedMissing/invalid Authorization header
rate_limitedToo many requests. Includes Retry-After header. See Rate limits.
upstream_errorOur liquidity layer returned an error