---
title: "Get wallet trades"
method: GET
path: "/api/2/wallet/trades"
tags: ["V2 - Wallet"]
---

# Get wallet trades

`GET /api/2/wallet/trades`

Retrieve swap trades for a single wallet. Supports filtering by token, blockchain, and date range. Returns paginated results with base/quote token metadata, fees breakdown, and wallet labels. To fetch trades for multiple wallets in one call, use POST /2/wallet/trades (batch).

## Query parameters

- `wallet` string, required — Wallet address
- `tokenAddress` string — Filter trades involving this token contract address
- `chainIds` string — Comma-separated list of chain IDs (e.g., "evm:1,evm:8453,solana:solana"). If omitted, all chains.
- `limit` number — Number of trades per page (1-100, default: 50)
- `offset` number, nullable — Offset for pagination (default: 0)
- `order` 'asc' | 'desc' — Sort order: asc or desc (default: desc)
- `from` number, nullable — Start timestamp in milliseconds
- `to` number, nullable — End timestamp in milliseconds

## Response `200`

Wallet trades response

- object
  - `data` object[], required
    - `id` string, required
    - `operation` 'regular' | 'mev' | 'mev_sandwiched' | 'deposit' | 'withdrawal' | 'bond', required
    - `type` 'buy' | 'sell' | 'deposit' | 'withdrawal', required
    - `baseTokenAmount` number, required
    - `baseTokenAmountRaw` string, required
    - `baseTokenAmountUSD` number, required
    - `quoteTokenAmount` number, required
    - `quoteTokenAmountRaw` string, required
    - `quoteTokenAmountUSD` number, required
    - `preBalanceBaseToken` string, nullable
    - `preBalanceQuoteToken` string, nullable
    - `postBalanceBaseToken` string, nullable
    - `postBalanceQuoteToken` string, nullable
    - `date` number, required
    - `swapSenderAddress` string, required
    - `transactionSenderAddress` string, required
    - `swapRecipient` string, nullable
    - `blockchain` string, required
    - `transactionHash` string, required
    - `marketAddress` string, required
    - `marketAddresses` string[]
    - `baseTokenPriceUSD` number, required
    - `quoteTokenPriceUSD` number, required
    - `baseTokenMarketCapUSD` number, nullable
    - `quoteTokenMarketCapUSD` number, nullable
    - `labels` string[], nullable
    - `walletMetadata` object, nullable
      - `entityName` string, nullable, required
      - `entityLogo` string, nullable, required
      - `entityLabels` string[], required
      - `entityType` string, nullable, required
      - `entityDescription` string, nullable, required
      - `entityTwitter` string, nullable, required
      - `entityWebsite` string, nullable, required
      - `entityGithub` string, nullable, required
      - `entityDiscord` string, nullable, required
      - `entityTelegram` string, nullable, required
      - `extra` object
    - `baseToken` object, nullable
      - `address` string, required
      - `name` string, nullable, required
      - `symbol` string, nullable, required
      - `logo` string, nullable, required
      - `decimals` number, required
    - `quoteToken` object, nullable
      - `address` string, required
      - `name` string, nullable, required
      - `symbol` string, nullable, required
      - `logo` string, nullable, required
      - `decimals` number, required
    - `platform` object, nullable
      - `id` string, required
      - `name` string, required
      - `logo` string, nullable, required
    - `totalFeesUSD` number, nullable
    - `gasFeesUSD` number, nullable
    - `platformFeesUSD` number, nullable
    - `mevFeesUSD` number, nullable
  - `pagination` object, required
    - `page` number, required
    - `offset` number, required
    - `limit` number, required
    - `pageEntries` number, required

## Other responses

- `402` — Payment Required

---

[API](https://skmtc.net/mobula/apis/mobula-api.md) · [All operations](https://skmtc.net/mobula/apis/mobula-api/llms.txt) · [OpenAPI document](https://skmtc-service-staging.skmtc.workers.dev/v1/apis/mobula/mobula-api/versions/32f95d9e8ff2/schema)
