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

# Get wallet trades

`POST /api/2/wallet/trades`

Same as GET /2/wallet/trades for a flat wallet body. Also accepts an array of items, or an object with an `items` array, for batch requests. Batch mode supports max 10 wallets.

## Request body

- union
  - object
    - `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
  - object[]
    - `wallet` string, required — Wallet address
    - `tokenAddress` string — Filter trades involving this token contract address
    - `chainIds` string[] — Array of chain IDs (e.g., ["evm:1","evm:8453"]). 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
  - object
    - `items` object[], required
      - `wallet` string, required — Wallet address
      - `tokenAddress` string — Filter trades involving this token contract address
      - `chainIds` string[] — Array of chain IDs (e.g., ["evm:1","evm:8453"]). 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 `201`

Wallet trades response for a flat body, or batch response when the request body is an array/items payload.

- union
  - 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
  - object
    - `payload` union[], required
      - union
        - object
          - `wallet` string, required
          - `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
              - …
            - `baseToken` object, nullable
              - …
            - `quoteToken` object, nullable
              - …
            - `platform` object, nullable
              - …
            - `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
        - object
          - `wallet` string, required
          - `error` string, required
        - unknown
    - `hostname` string

## 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)
