LithosDocs
ProtocolPayoutsTokenStatsDocs
Start mining
Documentation home
Protocol
  • Lithos Protocol
  • LFSM
    • Rollups
    • NISPs
    • Emissions
    • Mining on Lithos
    • Candidate building
    • Ergo Voting
  • LithosDex
    • Choosing a pool
    • Trading with orders
    • Providing liquidity
    • Creating a pool
    • Difficulty forwards
Run Lithos
  • Startup guide
    • Setting up an Ergo node
  • Configuration
    • Node connection and security
    • Stratum and difficulty
    • Block packages
    • Batching and orders
    • Collateral and emission
    • Wallet and consolidation
    • Statistics and web panels
    • Synchronization and storage
    • Tasks and dispatchers
    • Failure modes
    • Reporting issues
    • Renting hashrate into Lithos
    • Checking your wallet
Client API
  • Overview
    • getLithos client information
    • getList UTXO ids for blocks
    • getUTXO ids by block height
    • getBlock info by UTXO id
    • postBlock info for multiple UTXO ids
    • getGet a block's miner set
    • getList all pool blocks
    • getGet Lithos payouts
    • getStatistics overview
    • getMining and payment totals
    • getMining statistics by hour or day
    • getEstimate Lithos hashrate
    • getNetwork difficulty by epoch
    • getThis client's own hashrate
    • getThis client's hashrate over time
    • getThis client's payouts and claims
    • getCollateral inventory
    • getThis wallet's lending earnings
    • getLocal mining activity
    • getCollateral market snapshot
    • getList queue boxes
    • getList the active set
    • getPermit price history
    • getYour lending status
    • postQuote joining the queue
    • postJoin the collateral queue
    • getLithosDex pool state
    • getEvery LithosDex pool
    • getOne LithosDex pool and its vault
    • getList your outstanding orders on any pool
    • postQuote a direct swap on any pool
    • postSwap directly on any pool
    • postQuote a direct deposit on any pool
    • postDeposit directly on any pool
    • postQuote a direct redemption on any pool
    • postRedeem a provision directly on any pool
    • getList your provisions on any pool
    • postClaim a provision's fees on any pool
    • postCheck a flush on any pool
    • postFlush any pool
    • getA verified pool's price history
    • getA verified pool's fee history
    • getA verified pool's recent activity
    • getA provision's fee history on a verified pool
    • postQuote a new LithosDex pool
    • postCreate a LithosDex pool
    • postQuote a swap order on any pool
    • postPlace a swap order on any pool
    • postQuote a deposit order on any pool
    • postPlace a deposit order on any pool
    • postQuote a redeem order on any pool
    • postPlace a redeem order on any pool
    • getLithosDex fee vault state
    • getList your outstanding orders
    • postQuote a swap order
    • postPlace a swap order
    • postQuote a deposit order
    • postPlace a deposit order
    • postQuote a redeem order
    • postPlace a redeem order
    • postCancel an order
    • postQuote a swap
    • postQuote a swap by desired output
    • postExecute a swap
    • postQuote a liquidity deposit
    • postDeposit liquidity
    • postQuote a liquidity redemption
    • postRedeem liquidity
    • getList liquidity provisions
    • postLook up provision NFTs
    • postClaim settled fees for a provision
    • postQuote a provision resize
    • postResize a provision
    • postCheck a pending fee flush
    • postFlush pending fees to the vault
    • getPool-wide fee history
    • getPool price history
    • getRecent pool activity
    • getFee history for one provision
    • getDifficulty accumulator and the next epoch's difficulty
    • getList open offers
    • postCreate an offer
    • postQuote an offer
    • postQuote filling an offer
    • postFill an offer
    • postQuote cancelling an offer
    • postCancel an offer
    • getThe whole market
    • getYour settled positions and closed offers
    • getList your positions and offers
    • postQuote settling a position
    • postSettle a position
    • getWallet balances
    • getYour block rewards
    • postClaim unlocked block rewards
    • getVerified tokens
    • getGet Stratum information
    • getGet candidate settings
    • getGet difficulty commitment
    • postCommit a difficulty
    • getGet best NISP at height
Lithos

A decentralized mining pool protocol on Ergo. Miners build their own blocks; contracts pay them for proven work.

Live on Ergo mainnet
Protocol
  • How Lithos works
  • Mining on Lithos
  • NISPs
  • Emissions
  • LFSM contracts
Run Lithos
  • Startup guide
  • Configuration
  • LithosDex
  • Difficulty forwards
  • Client API
  • Failure modes
Network
  • Live stats
  • Public stats API
  • Ergo Platform↗
  • SOAT Miner↗
Community
  • Telegram↗
  • X / Twitter↗
  • GitHub↗
Lithos
© 2026 Lithos Protocol. The Lithos client, its contracts and Lithos Launcher are open source under CC0.λίθος — stone
Docs/Client API/Lithos Dex

Every LithosDex pool

get/dex/pools

Every LithosDex pool on chain, ERG/token and token/token, ERG:LIT first, then verified pools, then newest first. Anyone can create a pool. A pool on the client's verified list was checked by hand; any other pool is checked against the facts its contracts take on trust at genesis, and problems lists each one it breaks. A pool with problems can be drained: do not trade with it.

Read from an index the client rebuilds in the background as blocks arrive, so a request never waits on a scan. status is building until the first index completes. Pools named in lithosdex.pools.hidden are left out; their own routes still answer.

Responses

200The pools, as the index last read themLDPoolList▶
  • statusstringrequired
    one ofbuildingready
  • heightinteger · int32required

    The tip the index was read at

  • truncatedbooleanrequired

    More pools exist than one index reads; the newest are listed.

  • ▶
    poolsLDPoolSummary[]required
    • poolNFTstringrequired
    • kindstringrequired

      n2t is ERG against a token, t2t token against token

      one ofn2tt2t
    • utxoIdstringrequired

      The pool box the index read

    • inclusionHeightinteger · int32required
    • ▶
      tokenXLDPoolTokenrequired

      One side of a pool. A verified token's name, ticker and decimals come from the client's verified list; any other token's from the node's token index, where whoever minted the token chose them.

      • tokenIdstringrequired

        Token id, or ERG for the X side of an ERG/token pool

      • namestring
      • tickerstring

        Short symbol. Verified tokens and ERG only.

      • decimalsinteger · int32
      • verifiedbooleanrequired
    • ▶
      tokenYLDPoolTokenrequired

      One side of a pool. A verified token's name, ticker and decimals come from the client's verified list; any other token's from the node's token index, where whoever minted the token chose them.

      • tokenIdstringrequired

        Token id, or ERG for the X side of an ERG/token pool

      • namestring
      • tickerstring

        Short symbol. Verified tokens and ERG only.

      • decimalsinteger · int32
      • verifiedbooleanrequired
    • reservesXstringrequired
    • reservesYstringrequired
    • pendingXstringrequired

      Fees awaiting a flush to the vault

    • pendingYstringrequired
    • supplystringrequired

      Shares issued

    • ▶
      feeParamsLDFeeParamsrequired

      Fee numerators over feeDenom. dexFeeNum stays in the pool; ergFeeNum / tokenFeeNum are set aside for liquidity providers.

      • dexFeeNuminteger · int64required
      • ergFeeNuminteger · int64required
      • tokenFeeNuminteger · int64required
      • feeDenominteger · int64required

        Denominator of every numerator above

    • provTokensLeftstringrequired

      Deposits the pool can still take, one provision token each

    • pricenumber · double

      Units of Y per unit of X at display decimals. Absent when either side's decimals are unknown.

    • verifiedbooleanrequired

      Whether the client's verified list names this pool

    • genesisCheckedbooleanrequired

      Whether this pool's genesis was checked. False for verified pools, which are checked by hand, and while the node could not be read.

    • problemsstring[]required

      Genesis facts this pool breaks. Any one can let the pool be drained.

    • warningsstring[]required

      Risks short of that, such as too little ERG to survive storage rent.

defaultErrorApiError▶
  • errorintegerrequired

    Error code

  • reasonstringrequired

    Error message explaining the reason of the error

  • detailstringrequirednullable

    Detailed error description

← PreviousLithosDex pool stateNext →One LithosDex pool and its vault
Request
curl -X GET "http://localhost:9000/dex/pools"
Response
{
  "status": "building",
  "height": 0,
  "truncated": true,
  "pools": [
    {
      "poolNFT": "string",
      "kind": "n2t",
      "utxoId": "string",
      "inclusionHeight": 0,
      "tokenX": {
        "tokenId": "c1980d829988229516430a47a5eca376060b6ce859616db0936e78ab25cb6de7",
        "name": "LIT",
        "ticker": "LIT",
        "decimals": 9,
        "verified": true
      },
      "tokenY": {
        "tokenId": "c1980d829988229516430a47a5eca376060b6ce859616db0936e78ab25cb6de7",
        "name": "LIT",
        "ticker": "LIT",
        "decimals": 9,
        "verified": true
      },
      "reservesX": "string",
      "reservesY": "string",
      "pendingX": "string",
      "pendingY": "string",
      "supply": "string",
      "feeParams": {
        "dexFeeNum": 9985,
        "ergFeeNum": 15,
        "tokenFeeNum": 15,
        "feeDenom": 10000
      },
      "provTokensLeft": "string",
      "price": 0.1,
      "verified": true,
      "genesisChecked": true,
      "problems": [
        "string"
      ],
      "warnings": [
        "string"
      ]
    }
  ]
}