Skip to main content
GET
Batch download trades with filters

Query Details

This endpoint allows batch downloading of trades across the entire platform with filtering capabilities. Ideal for:
  • Downloading all trades for a specific chain
  • Downloading all trades involving a specific token
  • Building historical trade datasets
  • Analytics and backtesting
Timeframe Limit: The maximum timeframe between from and to is 1 hour (3,600,000 ms). For longer periods, make multiple requests with sequential timeframes.

Response Overview

The response uses the same trade format as /api/2/token/trades for consistency. Pagination object:
  • count: Number of trades returned in this response
  • nextCursor: Cursor to use for fetching the next page (null if no more results)
  • hasMore: Boolean indicating if more results are available
  • from/to: Timestamps of the queried timeframe
Trade object fields:
  • id: Unique swap identifier
  • operation: Operation type (regular, deposit, withdrawal)
  • type: Trade direction (buy, sell, deposit, withdrawal)
  • baseTokenAmount/quoteTokenAmount: Token amounts (formatted)
  • baseTokenAmountRaw/quoteTokenAmountRaw: Token amounts in smallest units
  • baseTokenAmountUSD/quoteTokenAmountUSD: Trade value in USD
  • baseTokenPriceUSD/quoteTokenPriceUSD: Token prices at execution time
  • date: Trade timestamp in milliseconds
  • blockchain: Human-readable blockchain name
  • transactionHash: Transaction hash
  • marketAddress: Pool/market address
  • swapSenderAddress: Address that executed the swap
  • transactionSenderAddress: Transaction originator (tx.from)
  • swapRecipient: Actual beneficiary of the swap
  • baseToken: Base token metadata (address, name, symbol, logo, decimals)
  • quoteToken: Quote token metadata (address, name, symbol, logo, decimals)
  • labels: Array of labels (sniper, bundler, insider, etc.)
  • platform: Trading platform metadata (if available)
  • totalFeesUSD/gasFeesUSD/platformFeesUSD/mevFeesUSD: Fee breakdown

Usage Examples

Download all Solana trades in a 1-hour window:
Filter by specific token:
Paginate through large result sets:

Sample Response

Use sortOrder=asc (default) for chronological batch downloads. This ensures consistent cursor-based pagination when downloading historical data.
Base/Quote Token Logic: When filtering by tokenAddress, that token becomes the base token. Without a token filter, token0 is used as base. The type field (buy/sell) is relative to the base token.

Query Parameters

tokenAddress
string
chainId
string
from
number
required
to
number
required
limit
number
cursor
string
sortOrder
enum<string>
Available options:
asc,
desc

Response

200 - application/json

Trades filters response

data
object[]
required
pagination
object
required