Skip to content

Get Join Quotes ​

The Router's /join-quote endpoint calculates how many LP shares a user receives when adding liquidity, along with fees and pool impact.

Endpoint ​

POST https://mainnet.router.ryze.pro/join-quote

Join Types ​

Ryze supports two join types, determined automatically by the number of tokens you provide:

Tokens ProvidedJoin TypeFees
1 tokenSingle JoinSwap fees apply (asset rebalancing)
All pool tokensProportional JoinNo fees

Request ​

json
{
  "poolAddress": "0x22f902cEfcF8b0bEc6489Cb8ac11FdDa9B2aF125",
  "tokensIn": [
    {
      "token": "0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913",
      "amount": "100000000"
    }
  ]
}
FieldTypeRequiredDescription
poolAddressstringYesPool contract address
tokensInarrayYesTokens and amounts to deposit
tokensIn[].tokenstringYesToken address
tokensIn[].amountstringYesAmount in raw units

Single Join Example ​

Deposit 100 USDC into the WETH-USDC pool:

bash
curl -X POST https://mainnet.router.ryze.pro/join-quote \
  -H "Content-Type: application/json" \
  -d '{
    "poolAddress": "0x22f902cEfcF8b0bEc6489Cb8ac11FdDa9B2aF125",
    "tokensIn": [
      {
        "token": "0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913",
        "amount": "100000000"
      }
    ]
  }'

Proportional Join Example ​

Deposit both USDC and WETH proportionally:

bash
curl -X POST https://mainnet.router.ryze.pro/join-quote \
  -H "Content-Type: application/json" \
  -d '{
    "poolAddress": "0x22f902cEfcF8b0bEc6489Cb8ac11FdDa9B2aF125",
    "tokensIn": [
      {
        "token": "0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913",
        "amount": "100000000"
      },
      {
        "token": "0x4200000000000000000000000000000000000006",
        "amount": "62500000000000000"
      }
    ]
  }'

TIP

For proportional joins, amounts should match the pool's current token ratios. The router will use the maximum proportional amounts possible and return any excess.

Response ​

json
{
  "routeId": "e5f6g7h8",
  "joinType": "single",
  "poolAddress": "0x22f902cEfcF8b0bEc6489Cb8ac11FdDa9B2aF125",
  "tokenIn": {
    "token": "0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913",
    "amount": "100000000",
    "decimals": 6
  },
  "sharesOut": "99500000000000000000",
  "tvl": "2500000000000000000000000",
  "shareOfPool": "3.98",
  "fees": {
    "swapFee": "30000",
    "takerFee": "10000",
    "slippageFee": "5000",
    "slippagePct": "50000000000000",
    "wbfFee": "0",
    "wbrReward": "0",
    "wbrRewardToken": "0x0000000000000000000000000000000000000000",
    "slippageToken": "0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913"
  },
  "timestamp": "2026-04-15T12:00:00Z",
  "prices": [
    {
      "token": "0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913",
      "pythPrice": "1000000000000000000",
      "cexPrice": "1000000000000000000",
      "blendFactor": "500000000000000000",
      "blendedPrice": "1000000000000000000"
    }
  ]
}

Response Fields ​

FieldDescription
joinType"single" or "proportional"
sharesOutLP tokens received (18 decimals)
tvlPool total value locked in USD (WAD)
shareOfPoolPercentage of pool ownership after join
feesFee breakdown (zero for proportional joins)
pricesOracle price data for tokens involved

Fee Fields ​

FieldDescription
swapFeeBase swap fee amount
takerFeeTaker fee amount
slippageFeeDynamic slippage fee
slippagePctSlippage fee as WAD percentage
wbfFeeWeight Breaking Fee
wbrRewardWeight Breaking Reward (can offset fees)
wbrRewardTokenToken for WBR payout
slippageTokenToken the slippage fee is denominated in

Proportional Join Response ​

For proportional joins, the response includes tokensIn showing actual amounts used:

json
{
  "joinType": "proportional",
  "tokensIn": [
    { "token": "0x8335...2913", "amount": "100000000", "decimals": 6 },
    { "token": "0x4200...0006", "amount": "62500000000000000", "decimals": 18 }
  ],
  "sharesOut": "199000000000000000000",
  "fees": {
    "swapFee": "0",
    "takerFee": "0",
    "slippageFee": "0",
    "wbfFee": "0",
    "wbrReward": "0"
  }
}

INFO

Proportional joins have zero fees because they don't change the pool's token weight ratios.