> ## Documentation Index
> Fetch the complete documentation index at: https://docs.asksurf.ai/llms.txt
> Use this file to discover all available pages before exploring further.

# DEX Trade History



## OpenAPI

````yaml openapi.json GET /gateway/v1/token/dex-trades
openapi: 3.1.0
info:
  title: Hermod
  version: 0.0.1
servers:
  - url: https://api.asksurf.ai
security: []
paths:
  /gateway/v1/token/dex-trades:
    get:
      tags:
        - Token
      summary: Token DEX Trade History
      description: |-
        Returns recent DEX swap events for a token contract address.

        **Covered DEXes:** `uniswap`, `sushiswap`, `curve`, `balancer`.

        **Included fields:** trading pair, amounts, USD value, taker address.

        **Data refresh:** ~24 hours · **Chains:** Ethereum, Base
      operationId: token-dex-trades
      parameters:
        - description: Token contract address (0x-prefixed hex)
          explode: false
          in: query
          name: address
          required: true
          schema:
            description: Token contract address (0x-prefixed hex)
            examples:
              - '0xa0b86991c6218b36c1d19d4a2e9eb0ce3606eb48'
            type: string
        - description: Chain. Can be `ethereum` or `base`.
          explode: false
          in: query
          name: chain
          schema:
            default: ethereum
            description: Chain. Can be `ethereum` or `base`.
            enum:
              - ethereum
              - base
            examples:
              - ethereum
            type: string
        - description: Results per page
          explode: false
          in: query
          name: limit
          schema:
            default: 20
            description: Results per page
            examples:
              - 20
            format: int64
            maximum: 100
            minimum: 1
            type: integer
        - description: Pagination offset
          explode: false
          in: query
          name: offset
          schema:
            default: 0
            description: Pagination offset
            examples:
              - 0
            format: int64
            minimum: 0
            type: integer
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/DataResponseDexTradeItem'
          description: OK
        default:
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/DataAPIError'
          description: Error
      security:
        - AccessToken: []
components:
  schemas:
    DataResponseDexTradeItem:
      additionalProperties: false
      properties:
        $schema:
          description: A URL to the JSON Schema for this object.
          examples:
            - https://example.com/schemas/DataResponseDexTradeItem.json
          format: uri
          readOnly: true
          type: string
        data:
          items:
            $ref: '#/components/schemas/DexTradeItem'
          type:
            - array
            - 'null'
        meta:
          $ref: '#/components/schemas/OffsetMeta'
      required:
        - data
        - meta
      type: object
    DataAPIError:
      additionalProperties: false
      properties:
        $schema:
          description: A URL to the JSON Schema for this object.
          examples:
            - https://example.com/schemas/DataAPIError.json
          format: uri
          readOnly: true
          type: string
        error:
          $ref: '#/components/schemas/DataAPIErrorDetail'
      required:
        - error
      type: object
    DexTradeItem:
      additionalProperties: false
      properties:
        amount_usd:
          description: Trade value in USD at execution time
          format: double
          type: number
        block_time:
          description: Unix timestamp in seconds when the trade was executed
          format: int64
          type: integer
        project:
          description: DEX project name like `uniswap`, `sushiswap`, or `curve`
          type: string
        taker:
          description: Wallet address that initiated the swap
          type: string
        token_bought_address:
          description: Contract address of the token bought
          type: string
        token_bought_amount:
          description: Amount of tokens bought (decimal-adjusted)
          format: double
          type: number
        token_bought_symbol:
          description: Symbol of the token bought in this trade
          type: string
        token_pair:
          description: Trading pair symbol like `WETH-USDC`
          type: string
        token_sold_address:
          description: Contract address of the token sold
          type: string
        token_sold_amount:
          description: Amount of tokens sold (decimal-adjusted)
          format: double
          type: number
        token_sold_symbol:
          description: Symbol of the token sold in this trade
          type: string
        tx_hash:
          description: Transaction hash
          type: string
        version:
          description: DEX version like `v2` or `v3`
          type: string
      required:
        - block_time
        - project
        - version
        - token_pair
        - token_bought_symbol
        - token_sold_symbol
        - token_bought_amount
        - token_sold_amount
        - amount_usd
        - taker
        - tx_hash
      type: object
    OffsetMeta:
      additionalProperties: false
      properties:
        cached:
          description: Whether this response was served from cache
          type: boolean
        credits_used:
          description: Credits deducted for this request
          format: int64
          type: integer
        limit:
          description: Maximum number of items returned in this response
          format: int64
          type: integer
        offset:
          description: Number of items skipped (pagination offset)
          format: int64
          type: integer
        total:
          description: >-
            Total number of matching items (before pagination). Omitted when
            total is unknown.
          format: int64
          type: integer
      required:
        - limit
        - offset
        - credits_used
        - cached
      type: object
    DataAPIErrorDetail:
      additionalProperties: false
      properties:
        code:
          type: string
        message:
          type: string
      required:
        - code
        - message
      type: object

````