Skip to main content
POST
dex_getOrderbooks
curl --request POST \
  --url https://rpc.testnet.tempo.xyz/ \
  --header 'Content-Type: application/json' \
  --data '
{
  "jsonrpc": "2.0",
  "method": "dex_getOrderbooks",
  "params": [
    {
      "limit": 10
    }
  ],
  "id": 1
}
'
{
  "jsonrpc": "<string>",
  "id": 123,
  "result": {
    "nextCursor": "<string>",
    "orderbooks": [
      {}
    ]
  }
}
Tempo API method that returns paginated orderbooks from the Stablecoin Exchange. This is a Tempo-specific method for discovering available trading pairs on the built-in DEX.

Parameters

  • params — pagination object:
    • limit — (optional) maximum number of orderbooks to return (default: 10, max: 100)
    • cursor — (optional) cursor for pagination from previous response
    • filters — (optional) filter object:
      • baseToken — filter by base token address
      • quoteToken — filter by quote token address
      • bestAskTick — filter by best ask tick range
      • bestBidTick — filter by best bid tick range
      • spread — filter by spread range

Response

  • result — response object:
    • nextCursor — cursor for the next page (null if no more results)
    • orderbooks — array of orderbook objects:
      • baseToken — base token address
      • quoteToken — quote token address
      • bookKey — unique orderbook identifier (used as cursor)
      • bestAskTick — best (lowest) ask price tick
      • bestBidTick — best (highest) bid price tick
      • spread — difference between best ask and best bid ticks

Use case

The dex_getOrderbooks method is essential for:
  • Discovering available trading pairs on the Tempo Stablecoin Exchange
  • Monitoring market spreads across stablecoin pairs
  • Building DEX aggregator interfaces
  • Analyzing liquidity distribution

dex_getOrderbooks code examples

const ethers = require('ethers');
const NODE_URL = "CHAINSTACK_NODE_URL";
const provider = new ethers.JsonRpcProvider(NODE_URL);

const getOrderbooks = async () => {
    // Get all orderbooks
    const result = await provider.send("dex_getOrderbooks", [{
      limit: 10
    }]);

    console.log(`Found ${result.orderbooks.length} orderbooks`);
    for (const book of result.orderbooks) {
      console.log(`Pair: ${book.baseToken} / ${book.quoteToken}`);
      console.log(`  Best Bid Tick: ${book.bestBidTick}`);
      console.log(`  Best Ask Tick: ${book.bestAskTick}`);
      console.log(`  Spread: ${book.spread} ticks`);
    }
  };

getOrderbooks();

Body

application/json
jsonrpc
string
default:2.0
method
string
default:dex_getOrderbooks
params
any[]

Pagination params with optional filters

id
integer
default:1

Response

200 - application/json

Paginated orderbooks response

jsonrpc
string
id
integer
result
object