Listing Pools
ThelistPools
method is the primary way to discover pools. You can use it without any parameters to get a list of all pools, or provide a query object to filter and sort the results.
Filtering and Sorting
ThelistPools
method accepts a ListPoolsQuery
object with the following options:
Parameter | Type | Description |
---|---|---|
assetAAddress | string | Filter by the address of Asset A. |
assetBAddress | string | Filter by the address of Asset B. |
hostNames | string[] | Filter by one or more host namespaces. |
minVolume24h | number | Only include pools with 24-hour volume above this value. |
minTvl | number | Only include pools with TVL above this value. |
curveTypes | string[] | Filter by curve type (e.g., ["CONSTANT_PRODUCT"] ). |
sort | PoolSortOrder | Sort results by TVL , VOLUME24H , or CREATED_AT . |
limit | number | The maximum number of pools to return. |
offset | number | The number of pools to skip for pagination. |
afterUpdatedAt | string | RFC3339 timestamp to get pools updated after a date. |
Example: Finding Specific Pairs
Getting Pool Details
To get all available information for a single pool, use thegetPool
method with the pool’s ID (its lpPublicKey
).
Understanding Market Data
The pool objects returned by the SDK contain valuable market data. Some fields are common to all pool types, while others are specific to either constant product or single-sided bonding curve pools.Field | Applies To | Description |
---|---|---|
lpPublicKey | Both | The unique identifier (public key) for the liquidity pool. This is used as the poolId . |
hostName | Both | The namespace of the host that created the pool, if any. |
hostFeeBps | Both | The host fee rate in basis points (e.g., 100 BPS = 1%). |
lpFeeBps | Both | The liquidity provider fee rate in basis points (e.g., 30 BPS = 0.3%). |
assetAAddress | Both | The public key (address) of the first asset in the pair. |
assetBAddress | Both | The public key (address) of the second asset in the pair. |
assetAReserve | Both | The current amount of Asset A held in the pool’s reserves. |
assetBReserve | Both | The current amount of Asset B held in the pool’s reserves. |
tvlAssetB | Both | Total Value Locked, denominated in Asset B. This is a key measure of a pool’s liquidity. |
volume24hAssetB | Both | The total value of assets swapped in the pool over the last 24 hours, denominated in Asset B. |
priceChangePercent24h | Both | The percentage change in the price of Asset A relative to Asset B over the last 24 hours. |
currentPriceAInB | Both | The current spot price of Asset A in terms of Asset B, calculated from the pool’s reserves. |
curveType | Both | The type of pool: CONSTANT_PRODUCT or SINGLE_SIDED . |
createdAt | Both | The timestamp when the pool was created. |
updatedAt | Both | The timestamp of the last event (e.g., swap, liquidity change) that updated the pool’s state. |
virtualReserveA | Single-Sided | The virtual reserve of Asset A used for price calculations along the bonding curve. |
virtualReserveB | Single-Sided | The virtual reserve of Asset B used for price calculations along the bonding curve. |
initialReserveA | Single-Sided | The initial amount of Asset A deposited by the creator to start the bonding curve. |
graduationThresholdAmount | Single-Sided | The absolute amount of Asset A that must be sold for the pool to “graduate” to a constant product pool. |
bondingProgressPercent | Single-Sided | The percentage of the graduationThresholdAmount that has been met so far. |
thresholdPct | Single-Sided | The graduation threshold expressed as a percentage of the initialReserveA . |