DexTrace

All DEX data. One PulseChain view.

API Documentation

v1

DexTrace exposes a JSON REST API for tokens, pairs, DEX statistics, activity, portfolio lookups, price audits, and OHLCV ticks. All endpoints are prefixed with /api/v1.

Base URL https://dextrace.g4mm4.net/api/v1

GET /overview

Returns aggregate chain-level statistics: total volume, TVL, active pairs, and 24h transactions.

{
  "data": {
    "volume_24h_usd": 12345678.90,
    "tvl_usd": 987654321.12,
    "tx_24h": 150000,
    "active_pools": 4200,
    "gas_gwei": 0.147,
    "plsx_burned_24h": 2910000
  }
}

GET /tokens

List tokens with optional filtering.

Query parameters: limit, page, q, sort, order

GET /tokens/{address}

Detailed token profile including price, liquidity, holders, and links.

GET /tokens/{address}/pools

Pairs that include the token.

GET /tokens/{address}/audit

Latest price audit for the token.

GET /tokens/{address}/ticks

Historical OHLCV ticks for the token.

GET /pairs

List trading pairs with optional filtering.

Query parameters: limit, page, q, dex

GET /pairs/{address}

Detailed pair profile including reserves, volume, fees, and APR.

GET /pairs/{address}/ticks

Historical OHLCV ticks for the pair.

GET /dexes

List DEX-level aggregates: volume, TVL, fees, pool count, and market share.

GET /dexes/{dex_name}

Detailed stats for a single DEX.

GET /activity

Recent swap, mint, burn, and sync events.

Query parameters: limit, page, event_type, pair, token

GET /activity/stream

Server-sent event stream of new activity events.

GET /portfolio/{address}

Read-only portfolio snapshot for a wallet address: token balances and LP positions.

{
  "data": {
    "address": "0x...",
    "total_usd": 12345.67,
    "tokens": [...],
    "positions": [...]
  }
}

GET /tokens/{address}/audit

Price audit report showing the latest on-chain derived price and derivation path.

{
  "data": {
    "token": {
      "address": "0x95b303987a60c51500b23453fcaeed801c6f73fa",
      "symbol": "PLSX",
      "name": "PulseX"
    },
    "price_usd": "0.000123",
    "price_pls": "0.001",
    "derived_at_block": 17234000,
    "derived_at_timestamp": 1718880000,
    "confidence": "medium",
    "method": "lp_weighted_multi_hop",
    "hops": [
      {
        "step": 1,
        "from_token": "0x95b303987a60c51500b23453fcaeed801c6f73fa",
        "to_token": "0xa1077a294dde1b09bb078844df40758850b782f0",
        "pools": [
          {
            "address": "0x3bd56aa2dd1c728ac9ac92057010eca7c8d89ccf",
            "dex_name": "PulseX",
            "pool_type": 0,
            "fee_bps": 30,
            "reserve0": "1000000000000000000",
            "reserve1": "1000000000000000000",
            "weight": "0.8",
            "implied_price": "1.0"
          }
        ]
      }
    ],
    "warnings": []
  }
}

GET /tokens/{address}/ticks

OHLCV tick series for a token.

Query parameters: timeframe (1m, 5m, 15m, 1h, 4h, 1d), limit, to

GET /pairs/{address}/ticks

OHLCV tick series for a pair.

Query parameters: same as token ticks.

Errors

All error responses use the following shape:

{
  "success": false,
  "error": "Human readable message"
}

Common status codes:

  • 400 — Bad request or missing parameter.
  • 404 — Resource not found.
  • 500 — Internal server error.