For the complete documentation index, see llms.txt. This page is also available as Markdown.

Pools

get

Returns the pool and its latest state

Path parameters
idstringRequired

Pool ID as hex string

Responses
200

Swap pool

application/json
idstringRequired
feeRateinteger · int32Required
createdBlockHeightstringRequired
token0AmountstringRequired
token1AmountstringRequired
liquiditystringRequired
pricestringRequired
get/pool/by-id/{id}
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": "text",
    "token1": "text"
  },
  "assetPair": {
    "token0Id": "text",
    "token1Id": "text"
  },
  "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",
      "kLast": "text",
      "kLastCounter": "text",
      "swapBalance": {
        "blockHeight": 1,
        "zeroToOneSwaps": 1,
        "oneToZeroSwaps": 1
      },
      "pubkey": "text",
      "utxo": "text"
    }
  ],
  "token0Amount": "text",
  "token1Amount": "text",
  "liquidity": "text",
  "price": "text"
}
get

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

Query parameters
token0stringRequired
token1stringRequired
feeTierinteger · nullableOptional
Responses
200

Swap pools

application/json
idstringRequired
feeRateinteger · int32Required
createdBlockHeightstringRequired
token0AmountstringRequired
token1AmountstringRequired
liquiditystringRequired
pricestringRequired
get/pool/by-token-names
GET /pool/by-token-names?token0=text&token1=text HTTP/1.1
Host: 127.0.0.1:3000
Accept: */*
[
  {
    "id": "text",
    "feeRate": 1,
    "config": {
      "feeTier": 1,
      "shards": 1,
      "token0": "text",
      "token1": "text"
    },
    "assetPair": {
      "token0Id": "text",
      "token1Id": "text"
    },
    "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",
        "kLast": "text",
        "kLastCounter": "text",
        "swapBalance": {
          "blockHeight": 1,
          "zeroToOneSwaps": 1,
          "oneToZeroSwaps": 1
        },
        "pubkey": "text",
        "utxo": "text"
      }
    ],
    "token0Amount": "text",
    "token1Amount": "text",
    "liquidity": "text",
    "price": "text"
  }
]
get

Returns a list of pool details with its current state, where the provided ids match exactly and are optionally filtered by the fee tier

Query parameters
token0stringRequired
token1stringRequired
feeTierinteger · nullableOptional
Responses
200

Swap pools

application/json
idstringRequired
feeRateinteger · int32Required
createdBlockHeightstringRequired
token0AmountstringRequired
token1AmountstringRequired
liquiditystringRequired
pricestringRequired
get/pool/by-token-ids
GET /pool/by-token-ids?token0=text&token1=text HTTP/1.1
Host: 127.0.0.1:3000
Accept: */*
[
  {
    "id": "text",
    "feeRate": 1,
    "config": {
      "feeTier": 1,
      "shards": 1,
      "token0": "text",
      "token1": "text"
    },
    "assetPair": {
      "token0Id": "text",
      "token1Id": "text"
    },
    "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",
        "kLast": "text",
        "kLastCounter": "text",
        "swapBalance": {
          "blockHeight": 1,
          "zeroToOneSwaps": 1,
          "oneToZeroSwaps": 1
        },
        "pubkey": "text",
        "utxo": "text"
      }
    ],
    "token0Amount": "text",
    "token1Amount": "text",
    "liquidity": "text",
    "price": "text"
  }
]
post

Returns a paginated list of pool statistics matching the provided filter criteria

Body
namestring[] · nullableOptional
minTvlinteger · nullableOptional
minVolumeinteger · nullableOptional
limitinteger · nullableOptional
offsetinteger · nullableOptional
userAddressstring · nullableOptional
Responses
200

swap pool

application/json
offsetinteger · int32Required
post/pool/stats/by-filter
POST /pool/stats/by-filter HTTP/1.1
Host: 127.0.0.1:3000
Content-Type: application/json
Accept: */*
Content-Length: 141

{
  "name": [
    "text"
  ],
  "minTvl": null,
  "minVolume": null,
  "sort": [
    {
      "field": "token0_name",
      "order": "ASC"
    }
  ],
  "limit": null,
  "offset": null,
  "userAddress": null
}
{
  "response": [
    {
      "poolId": "text",
      "token0": {
        "id": "text",
        "name": "text",
        "displayName": "text",
        "symbol": null,
        "divisibility": 1,
        "supply": "text",
        "createdAt": "2026-01-01T00:00:00.000Z",
        "updatedAt": "2026-01-01T00:00:00.000Z",
        "type": "btc"
      },
      "token1": {
        "id": "text",
        "name": "text",
        "displayName": "text",
        "symbol": null,
        "divisibility": 1,
        "supply": "text",
        "createdAt": "2026-01-01T00:00:00.000Z",
        "updatedAt": "2026-01-01T00:00:00.000Z",
        "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
}
get

Returns a list of detailed statistics for pools matching the provided IDs, including token information, TVL, volume, fees, and APY data.

Query parameters
poolIdsstring[]Optional
Responses
200

swap pools

application/json
poolIdstringRequired
token0one ofRequired
or
token1one ofRequired
or
token0AmountstringRequired
token1AmountstringRequired
liquiditystringRequired
pricestringRequired
tvlNowstring · nullableOptional
tvl24hAgostring · nullableOptional
tvlDiffstring · nullableOptional
volume24hstring · nullableOptional
volumePrev24hstring · nullableOptional
volumeDiff24hstring · nullableOptional
fees24hstring · nullableOptional
apy24hstring · nullableOptional
volume7dstring · nullableOptional
fees7dstring · nullableOptional
apy7dstring · nullableOptional
feeRateinteger · int32Required
get/pool/stats/by-ids
GET /pool/stats/by-ids HTTP/1.1
Host: 127.0.0.1:3000
Accept: */*
[
  {
    "poolId": "text",
    "token0": {
      "id": "text",
      "name": "text",
      "displayName": "text",
      "symbol": null,
      "divisibility": 1,
      "supply": "text",
      "createdAt": "2026-01-01T00:00:00.000Z",
      "updatedAt": "2026-01-01T00:00:00.000Z",
      "type": "btc"
    },
    "token1": {
      "id": "text",
      "name": "text",
      "displayName": "text",
      "symbol": null,
      "divisibility": 1,
      "supply": "text",
      "createdAt": "2026-01-01T00:00:00.000Z",
      "updatedAt": "2026-01-01T00:00:00.000Z",
      "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
  }
]
post

Returns a paginated list of token pairs with aggregated pool statistics filtered by the provided criteria

Body
namestring[] · nullableOptional
minTvlinteger · nullableOptional
minVolumeinteger · nullableOptional
limitinteger · nullableOptional
offsetinteger · nullableOptional
userAddressstring · nullableOptional
Responses
200

swap pools

application/json
offsetinteger · int32Required
post/pool/stats/by-token-filter
POST /pool/stats/by-token-filter HTTP/1.1
Host: 127.0.0.1:3000
Content-Type: application/json
Accept: */*
Content-Length: 141

{
  "name": [
    "text"
  ],
  "minTvl": null,
  "minVolume": null,
  "sort": [
    {
      "field": "token0_name",
      "order": "ASC"
    }
  ],
  "limit": null,
  "offset": null,
  "userAddress": null
}
{
  "response": [
    {
      "token0": {
        "id": "text",
        "name": "text",
        "displayName": "text",
        "symbol": null,
        "divisibility": 1,
        "supply": "text",
        "createdAt": "2026-01-01T00:00:00.000Z",
        "updatedAt": "2026-01-01T00:00:00.000Z",
        "type": "btc"
      },
      "token1": {
        "id": "text",
        "name": "text",
        "displayName": "text",
        "symbol": null,
        "divisibility": 1,
        "supply": "text",
        "createdAt": "2026-01-01T00:00:00.000Z",
        "updatedAt": "2026-01-01T00:00:00.000Z",
        "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
}
get

Paginated list of swap pools stats matched by the filter

Query parameters
namestring · nullableOptional
sortVolumestring · nullableOptional
sortFeeGeneratedstring · nullableOptional
limitinteger · nullableOptional
offsetinteger · nullableOptional
Responses
200

swap pools

application/json
offsetinteger · int32Required
get/pool
GET /pool HTTP/1.1
Host: 127.0.0.1:3000
Accept: */*
200

swap pools

{
  "response": [
    {
      "poolId": "text",
      "token0": {
        "id": "text",
        "name": "text",
        "displayName": "text",
        "symbol": null,
        "divisibility": 1,
        "supply": "text",
        "createdAt": "2026-01-01T00:00:00.000Z",
        "updatedAt": "2026-01-01T00:00:00.000Z",
        "type": "btc"
      },
      "token1": {
        "id": "text",
        "name": "text",
        "displayName": "text",
        "symbol": null,
        "divisibility": 1,
        "supply": "text",
        "createdAt": "2026-01-01T00:00:00.000Z",
        "updatedAt": "2026-01-01T00:00:00.000Z",
        "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