Skip to main content
POST
dex_getOrders
curl --request POST \
  --url https://rpc.testnet.tempo.xyz/ \
  --header 'Content-Type: application/json' \
  --data '
{
  "jsonrpc": "2.0",
  "method": "dex_getOrders",
  "params": [
    {
      "limit": 10,
      "filters": {
        "baseToken": "0x20c0000000000000000000000000000000000001",
        "quoteToken": "0x20c0000000000000000000000000000000000000"
      }
    }
  ],
  "id": 1
}
'
{
  "jsonrpc": "<string>",
  "id": 123,
  "result": {
    "nextCursor": "<string>",
    "orders": [
      {}
    ]
  }
}
Tempo API method that returns paginated orders from the Stablecoin Exchange orderbook. This is a Tempo-specific method for querying the built-in DEX that enables stablecoin swaps.

Parameters

  • params — pagination object:
    • limit — (optional) maximum number of orders 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
      • isBid — filter by order side (true for bids, false for asks)
      • isFlip — filter by flip orders
      • maker — filter by maker address
      • remaining — filter by remaining amount range
      • tick — filter by tick range

Response

  • result — response object:
    • nextCursor — cursor for the next page (null if no more results)
    • orders — array of order objects:
      • orderId — unique order identifier (hex)
      • maker — address of the order creator
      • baseToken — base token address
      • quoteToken — quote token address
      • isBid — true if this is a bid order
      • isFlip — true if this is a flip order
      • tick — price tick level
      • amount — original order amount (hex)
      • remaining — remaining unfilled amount (hex)
      • prev — previous order ID in the queue
      • next — next order ID in the queue
      • flipTick — flip tick level (if applicable)

Use case

The dex_getOrders method is essential for:
  • Building trading interfaces for the Tempo Stablecoin Exchange
  • Monitoring orderbook depth and liquidity
  • Tracking specific maker’s orders
  • Analyzing market microstructure

dex_getOrders code examples

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

const getOrders = async () => {
    // Get orders for AlphaUSD/pathUSD pair
    const orders = await provider.send("dex_getOrders", [{
      limit: 10,
      filters: {
        baseToken: "0x20c0000000000000000000000000000000000001",
        quoteToken: "0x20c0000000000000000000000000000000000000"
      }
    }]);

    console.log(`Found ${orders.orders.length} orders`);
    for (const order of orders.orders) {
      const side = order.isBid ? "BID" : "ASK";
      console.log(`${side} Order ${order.orderId}: remaining ${order.remaining}`);
    }

    // Paginate if there are more results
    if (orders.nextCursor) {
      const nextPage = await provider.send("dex_getOrders", [{
        limit: 10,
        cursor: orders.nextCursor
      }]);
      console.log(`Next page has ${nextPage.orders.length} orders`);
    }
  };

getOrders();

Body

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

Pagination params with optional filters

id
integer
default:1

Response

200 - application/json

Paginated orders response

jsonrpc
string
id
integer
result
object