Pools
Returns the pool and its latest state
Pool ID as hex string
GET /pool/by-id/{id} HTTP/1.1
Host: 127.0.0.1:3000
Accept: */*
{
"id": "text",
"feeRate": 1,
"config": {
"feeTier": 1,
"shards": 1,
"token0": "1234:5678",
"token1": "1234:5678"
},
"invalid": true,
"assetPair": {
"token0Id": "1234:5678",
"token1Id": "1234:5678"
},
"createdBlockHeight": "text",
"shards": [
{
"poolPubkey": "text",
"runeUtxo": null,
"btcUtxos": [
{
"txid": "text",
"vout": 1,
"value": "text",
"runes": [
{
"id": "1234:5678",
"amount": "text"
}
],
"needsConsolidation": {
"type": "no"
}
}
],
"liquidity": "text",
"protocolFeeOwed": "text",
"lastBlockHeight": "text",
"timesUpdated": "text",
"kLast": "text",
"kLastCounter": "text",
"pendingToSend": [
{
"address": [
1
],
"amount": "text"
}
],
"swapBalance": {
"blockHeight": 1,
"runeToBtcSwaps": 1,
"btcToRuneSwaps": 1
},
"pubkey": "text",
"utxo": "text"
}
],
"token0Amount": "text",
"token1Amount": "text",
"liquidity": "text",
"price": "text"
}
Returns a list of pool details with its current state where the token names match. Search is case-insensitive and will find pools where either token matches any of the given ones
GET /pool/by-token-names HTTP/1.1
Host: 127.0.0.1:3000
Accept: */*
[
{
"id": "text",
"feeRate": 1,
"config": {
"feeTier": 1,
"shards": 1,
"token0": "1234:5678",
"token1": "1234:5678"
},
"invalid": true,
"assetPair": {
"token0Id": "1234:5678",
"token1Id": "1234:5678"
},
"createdBlockHeight": "text",
"shards": [
{
"poolPubkey": "text",
"runeUtxo": null,
"btcUtxos": [
{
"txid": "text",
"vout": 1,
"value": "text",
"runes": [
{
"id": "1234:5678",
"amount": "text"
}
],
"needsConsolidation": {
"type": "no"
}
}
],
"liquidity": "text",
"protocolFeeOwed": "text",
"lastBlockHeight": "text",
"timesUpdated": "text",
"kLast": "text",
"kLastCounter": "text",
"pendingToSend": [
{
"address": [
1
],
"amount": "text"
}
],
"swapBalance": {
"blockHeight": 1,
"runeToBtcSwaps": 1,
"btcToRuneSwaps": 1
},
"pubkey": "text",
"utxo": "text"
}
],
"token0Amount": "text",
"token1Amount": "text",
"liquidity": "text",
"price": "text"
}
]
Returns a list of pool details with its current state, where the provided ids match exactly and are optionally filtered by the fee tier
GET /pool/by-token-ids HTTP/1.1
Host: 127.0.0.1:3000
Accept: */*
[
{
"id": "text",
"feeRate": 1,
"config": {
"feeTier": 1,
"shards": 1,
"token0": "1234:5678",
"token1": "1234:5678"
},
"invalid": true,
"assetPair": {
"token0Id": "1234:5678",
"token1Id": "1234:5678"
},
"createdBlockHeight": "text",
"shards": [
{
"poolPubkey": "text",
"runeUtxo": null,
"btcUtxos": [
{
"txid": "text",
"vout": 1,
"value": "text",
"runes": [
{
"id": "1234:5678",
"amount": "text"
}
],
"needsConsolidation": {
"type": "no"
}
}
],
"liquidity": "text",
"protocolFeeOwed": "text",
"lastBlockHeight": "text",
"timesUpdated": "text",
"kLast": "text",
"kLastCounter": "text",
"pendingToSend": [
{
"address": [
1
],
"amount": "text"
}
],
"swapBalance": {
"blockHeight": 1,
"runeToBtcSwaps": 1,
"btcToRuneSwaps": 1
},
"pubkey": "text",
"utxo": "text"
}
],
"token0Amount": "text",
"token1Amount": "text",
"liquidity": "text",
"price": "text"
}
]
Returns a paginated list of pool statistics matching the provided filter criteria
POST /pool/stats/by-filter HTTP/1.1
Host: 127.0.0.1:3000
Content-Type: application/json
Accept: */*
Content-Length: 122
{
"name": [
"text"
],
"minTvl": null,
"minVolume": null,
"sort": [
{
"field": "token0_name",
"order": "ASC"
}
],
"limit": null,
"offset": null
}
{
"response": [
{
"poolId": "text",
"token0": {
"id": "1234:5678",
"name": "text",
"displayName": "text",
"symbol": null,
"divisibility": 1,
"batchSize": 1,
"supply": "text",
"createdAt": "2025-06-30T23:02:29.334Z",
"updatedAt": "2025-06-30T23:02:29.334Z",
"type": "btc"
},
"token1": {
"id": "1234:5678",
"name": "text",
"displayName": "text",
"symbol": null,
"divisibility": 1,
"batchSize": 1,
"supply": "text",
"createdAt": "2025-06-30T23:02:29.334Z",
"updatedAt": "2025-06-30T23:02:29.334Z",
"type": "btc"
},
"token0Amount": "text",
"token1Amount": "text",
"liquidity": "text",
"price": "text",
"tvlNow": null,
"tvl24hAgo": null,
"tvlDiff": null,
"volume24h": null,
"volumePrev24h": null,
"volumeDiff24h": null,
"fees24h": null,
"apy24h": null,
"volume7d": null,
"fees7d": null,
"apy7d": null,
"feeRate": 1
}
],
"offset": 1
}
Returns a list of detailed statistics for pools matching the provided IDs, including token information, TVL, volume, fees, and APY data.
GET /pool/stats/by-ids HTTP/1.1
Host: 127.0.0.1:3000
Accept: */*
[
{
"poolId": "text",
"token0": {
"id": "1234:5678",
"name": "text",
"displayName": "text",
"symbol": null,
"divisibility": 1,
"batchSize": 1,
"supply": "text",
"createdAt": "2025-06-30T23:02:29.334Z",
"updatedAt": "2025-06-30T23:02:29.334Z",
"type": "btc"
},
"token1": {
"id": "1234:5678",
"name": "text",
"displayName": "text",
"symbol": null,
"divisibility": 1,
"batchSize": 1,
"supply": "text",
"createdAt": "2025-06-30T23:02:29.334Z",
"updatedAt": "2025-06-30T23:02:29.334Z",
"type": "btc"
},
"token0Amount": "text",
"token1Amount": "text",
"liquidity": "text",
"price": "text",
"tvlNow": null,
"tvl24hAgo": null,
"tvlDiff": null,
"volume24h": null,
"volumePrev24h": null,
"volumeDiff24h": null,
"fees24h": null,
"apy24h": null,
"volume7d": null,
"fees7d": null,
"apy7d": null,
"feeRate": 1
}
]
Returns a paginated list of token pairs with aggregated pool statistics filtered by the provided criteria
POST /pool/stats/by-token-filter HTTP/1.1
Host: 127.0.0.1:3000
Content-Type: application/json
Accept: */*
Content-Length: 122
{
"name": [
"text"
],
"minTvl": null,
"minVolume": null,
"sort": [
{
"field": "token0_name",
"order": "ASC"
}
],
"limit": null,
"offset": null
}
{
"response": [
{
"token0": {
"id": "1234:5678",
"name": "text",
"displayName": "text",
"symbol": null,
"divisibility": 1,
"batchSize": 1,
"supply": "text",
"createdAt": "2025-06-30T23:02:29.334Z",
"updatedAt": "2025-06-30T23:02:29.334Z",
"type": "btc"
},
"token1": {
"id": "1234:5678",
"name": "text",
"displayName": "text",
"symbol": null,
"divisibility": 1,
"batchSize": 1,
"supply": "text",
"createdAt": "2025-06-30T23:02:29.334Z",
"updatedAt": "2025-06-30T23:02:29.334Z",
"type": "btc"
},
"volume24h": null,
"volumeDiff24h": null,
"volume7d": null,
"fees24h": null,
"tvlNow": "text",
"tvl24hAgo": "text",
"tvlDiff": "text",
"smaller24hApy": null,
"larger24hApy": null,
"smaller7dApy": null,
"larger7dApy": null,
"pools": [
{
"id": "text",
"tvlNow": "text",
"tvl24hAgo": "text",
"tvlDiff": "text",
"volume24h": null,
"volumeDiff24h": null,
"fees24h": null,
"apy24h": null,
"volume7d": null,
"fees7d": null,
"apy7d": null,
"price": "text",
"token0Amount": "text",
"token1Amount": "text",
"liquidity": "text",
"feeRate": 1
}
]
}
],
"offset": 1
}
Paginated list of swap pools stats matched by the filter
GET /pool HTTP/1.1
Host: 127.0.0.1:3000
Accept: */*
swap pools
{
"response": [
{
"poolId": "text",
"token0": {
"id": "1234:5678",
"name": "text",
"displayName": "text",
"symbol": null,
"divisibility": 1,
"batchSize": 1,
"supply": "text",
"createdAt": "2025-06-30T23:02:29.334Z",
"updatedAt": "2025-06-30T23:02:29.334Z",
"type": "btc"
},
"token1": {
"id": "1234:5678",
"name": "text",
"displayName": "text",
"symbol": null,
"divisibility": 1,
"batchSize": 1,
"supply": "text",
"createdAt": "2025-06-30T23:02:29.334Z",
"updatedAt": "2025-06-30T23:02:29.334Z",
"type": "btc"
},
"token0Amount": "text",
"token1Amount": "text",
"liquidity": "text",
"price": "text",
"tvlNow": null,
"tvl24hAgo": null,
"tvlDiff": null,
"volume24h": null,
"volumePrev24h": null,
"volumeDiff24h": null,
"fees24h": null,
"apy24h": null,
"volume7d": null,
"fees7d": null,
"apy7d": null,
"feeRate": 1
}
],
"offset": 1
}
Last updated