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

# List token trades

> Page through canonical trades for one tracked launch token. Use at most one identity filter per request.



## OpenAPI

````yaml /launchpad-api-openapi.yaml get /tokens/{chain_id}/{token_address}/trades
openapi: 3.1.0
info:
  title: o1 Launchpad Public API
  version: 1.0.0
  description: >-
    Non-custodial API for launchpad data and unsigned transaction preparation on
    Base and Robinhood.
servers:
  - url: https://api.launch.o1.exchange/v1
    description: Production
security:
  - ApiKeyAuth: []
tags:
  - name: Meta
    description: Service health and live integration configuration.
  - name: Tokens
    description: Token discovery, detail, activity, and holder data.
  - name: Wallets
    description: Public wallet activity and claim positions.
  - name: Transactions
    description: Indexed launchpad transaction state.
  - name: Launches
    description: Unsigned launch transaction preparation.
  - name: Swaps
    description: Exact-input swap quotes and unsigned router transactions.
  - name: Claims
    description: Unsigned fee and vesting claim transactions.
  - name: Creators
    description: Unsigned creator announcement and metadata transactions.
paths:
  /tokens/{chain_id}/{token_address}/trades:
    get:
      tags:
        - Tokens
      summary: List token trades
      description: >-
        Page through canonical trades for one tracked launch token. Use at most
        one identity filter per request.
      operationId: listTokenTrades
      parameters:
        - name: chain_id
          in: path
          required: true
          description: Production chain containing the resource.
          schema:
            $ref: '#/components/schemas/ChainId'
        - name: token_address
          in: path
          required: true
          description: Launch token contract address.
          schema:
            $ref: '#/components/schemas/Address'
        - name: cursor
          in: query
          description: >-
            Opaque continuation cursor returned by the previous page. Do not
            parse or modify it.
          schema:
            type: string
            maxLength: 4096
        - name: limit
          in: query
          description: Maximum number of resources to return.
          schema:
            type: integer
            minimum: 1
            maximum: 100
            default: 25
        - name: wallet
          in: query
          description: >-
            Filter trades by actor. Mutually exclusive with transaction_hash and
            referrer.
          schema:
            $ref: '#/components/schemas/Address'
        - name: transaction_hash
          in: query
          description: >-
            Filter trades by transaction. Mutually exclusive with wallet and
            referrer.
          schema:
            $ref: '#/components/schemas/TransactionHash'
        - name: referrer
          in: query
          description: >-
            Filter trades by referrer. Mutually exclusive with wallet and
            transaction_hash.
          schema:
            $ref: '#/components/schemas/Address'
        - name: from
          in: query
          description: Inclusive lower timestamp in Unix seconds.
          schema:
            type: integer
            minimum: 0
            maximum: 4102444800
        - name: to
          in: query
          description: Exclusive upper timestamp in Unix seconds.
          schema:
            type: integer
            minimum: 1
            maximum: 4102444800
      responses:
        '200':
          description: A page of canonical trades.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/TokenTradesResponse'
        '400':
          $ref: '#/components/responses/BadRequest'
        '401':
          $ref: '#/components/responses/Unauthorized'
        '403':
          $ref: '#/components/responses/Forbidden'
        '404':
          $ref: '#/components/responses/NotFound'
        '409':
          $ref: '#/components/responses/Conflict'
        '422':
          $ref: '#/components/responses/Unprocessable'
        '429':
          $ref: '#/components/responses/RateLimited'
        '500':
          $ref: '#/components/responses/InternalError'
        '502':
          $ref: '#/components/responses/UpstreamError'
        '503':
          $ref: '#/components/responses/Unavailable'
        '504':
          $ref: '#/components/responses/UpstreamTimeout'
components:
  schemas:
    ChainId:
      type: integer
      enum:
        - 8453
        - 4663
      examples:
        - 8453
    Address:
      type: string
      pattern: ^0x[0-9a-fA-F]{40}$
      examples:
        - '0x1111111111111111111111111111111111111111'
    TransactionHash:
      type: string
      pattern: ^0x[0-9a-fA-F]{64}$
      examples:
        - '0x1111111111111111111111111111111111111111111111111111111111111111'
    TokenTradesResponse:
      type: object
      required:
        - data
        - pagination
        - meta
      properties:
        data:
          type: array
          items:
            $ref: '#/components/schemas/Trade'
        pagination:
          $ref: '#/components/schemas/Pagination'
        meta:
          $ref: '#/components/schemas/ResponseMeta'
    Trade:
      type: object
      required:
        - kind
        - chain_id
        - market
        - suite
        - pool_id
        - token_address
        - quote_address
        - side
        - executor
        - amounts
        - pool_state
        - fees
        - timestamp
        - onchain
      properties:
        kind:
          type: string
          const: trade
        chain_id:
          type: integer
          enum:
            - 8453
            - 4663
          examples:
            - 8453
        market:
          type: string
          enum:
            - standard
            - rwa
        suite:
          $ref: '#/components/schemas/SuiteReference'
        pool_id:
          type: string
          pattern: ^0x[0-9a-fA-F]{64}$
          examples:
            - '0x1111111111111111111111111111111111111111111111111111111111111111'
        token_address:
          type: string
          pattern: ^0x[0-9a-fA-F]{40}$
          examples:
            - '0x1111111111111111111111111111111111111111'
        quote_address:
          type: string
          pattern: ^0x[0-9a-fA-F]{40}$
          examples:
            - '0x1111111111111111111111111111111111111111'
        side:
          type: string
          enum:
            - buy
            - sell
            - unknown
        actor:
          type: string
          pattern: ^0x[0-9a-fA-F]{40}$
          examples:
            - '0x1111111111111111111111111111111111111111'
        executor:
          type: string
          pattern: ^0x[0-9a-fA-F]{40}$
          examples:
            - '0x1111111111111111111111111111111111111111'
        amounts:
          type: object
          required:
            - token_raw
            - quote_raw
          properties:
            token_raw:
              type: string
              pattern: ^(0|[1-9][0-9]*)$
              examples:
                - '1000000000000000000'
            quote_raw:
              type: string
              pattern: ^(0|[1-9][0-9]*)$
              examples:
                - '1000000000000000000'
        pool_state:
          type: object
          required:
            - sqrt_price_x96
            - liquidity_raw
            - tick
          properties:
            sqrt_price_x96:
              type: string
              pattern: ^(0|[1-9][0-9]*)$
              examples:
                - '1000000000000000000'
            liquidity_raw:
              type: string
              pattern: ^(0|[1-9][0-9]*)$
              examples:
                - '1000000000000000000'
            tick:
              type: integer
        fees:
          type: object
          required:
            - currency_address
            - total_raw
            - credits
          properties:
            currency_address:
              type: string
              pattern: ^0x[0-9a-fA-F]{40}$
              examples:
                - '0x1111111111111111111111111111111111111111'
            total_raw:
              type: string
              pattern: ^(0|[1-9][0-9]*)$
              examples:
                - '1000000000000000000'
            credits:
              type: array
              items:
                $ref: '#/components/schemas/FeeCredit'
        referrer:
          type: string
          pattern: ^0x[0-9a-fA-F]{40}$
          examples:
            - '0x1111111111111111111111111111111111111111'
        comment:
          type: string
        timestamp:
          type: string
          format: date-time
          examples:
            - '2026-07-31T12:00:00.000Z'
        onchain:
          $ref: '#/components/schemas/OnchainReference'
    Pagination:
      type: object
      required:
        - next_cursor
        - has_more
        - limit
      properties:
        next_cursor:
          type:
            - string
            - 'null'
        has_more:
          type: boolean
        limit:
          type: integer
          minimum: 1
    ResponseMeta:
      type: object
      required:
        - request_id
        - generated_at
        - warnings
      properties:
        request_id:
          type: string
          examples:
            - req_01JZZZZZZZZZZZZZZZZZZZZZZZ
        generated_at:
          type: string
          format: date-time
          examples:
            - '2026-07-31T12:00:00.000Z'
        warnings:
          type: array
          items:
            type: string
    Problem:
      type: object
      required:
        - type
        - title
        - status
        - code
        - detail
        - request_id
      properties:
        type:
          type: string
          format: uri
        title:
          type: string
        status:
          type: integer
          minimum: 400
          maximum: 599
        code:
          type: string
        detail:
          type: string
        instance:
          type: string
        request_id:
          type: string
        invalid_parameters:
          type: array
          items:
            $ref: '#/components/schemas/InvalidParameter'
        suggested_endpoint:
          type: string
        asset:
          type: string
          pattern: ^0x[0-9a-fA-F]{40}$
          examples:
            - '0x1111111111111111111111111111111111111111'
        actual_raw:
          type: string
          pattern: ^(0|[1-9][0-9]*)$
          examples:
            - '1000000000000000000'
        required_raw:
          type: string
          pattern: ^(0|[1-9][0-9]*)$
          examples:
            - '1000000000000000000'
    SuiteReference:
      type: object
      required:
        - id
      properties:
        id:
          type: string
        version:
          type: string
    FeeCredit:
      type: object
      required:
        - recipient
        - role
        - currency_address
        - amount_raw
      properties:
        recipient:
          type: string
          pattern: ^0x[0-9a-fA-F]{40}$
          examples:
            - '0x1111111111111111111111111111111111111111'
        role:
          type: string
          enum:
            - creator
            - platform
            - referrer
            - unknown
        currency_address:
          type: string
          pattern: ^0x[0-9a-fA-F]{40}$
          examples:
            - '0x1111111111111111111111111111111111111111'
        amount_raw:
          type: string
          pattern: ^(0|[1-9][0-9]*)$
          examples:
            - '1000000000000000000'
    OnchainReference:
      type: object
      properties:
        transaction_hash:
          type: string
          pattern: ^0x[0-9a-fA-F]{64}$
          examples:
            - '0x1111111111111111111111111111111111111111111111111111111111111111'
        block_number:
          type: integer
          minimum: 0
        block_hash:
          type: string
          pattern: ^0x[0-9a-fA-F]{64}$
          examples:
            - '0x1111111111111111111111111111111111111111111111111111111111111111'
        log_index:
          type: integer
          minimum: 0
        finality:
          type: string
          enum:
            - observed
            - confirmed
    InvalidParameter:
      type: object
      required:
        - name
        - reason
        - detail
      properties:
        name:
          type: string
        reason:
          type: string
        detail:
          type: string
        allowed:
          type: array
          items:
            type: string
  responses:
    BadRequest:
      description: The request syntax, parameter combination, cursor, or body is invalid.
      content:
        application/problem+json:
          schema:
            $ref: '#/components/schemas/Problem'
    Unauthorized:
      description: >-
        The API key is missing, malformed, expired, revoked, or otherwise
        invalid.
      content:
        application/problem+json:
          schema:
            $ref: '#/components/schemas/Problem'
    Forbidden:
      description: >-
        The API key scope, browser origin, or connected wallet is not
        authorized.
      content:
        application/problem+json:
          schema:
            $ref: '#/components/schemas/Problem'
    NotFound:
      description: The requested tracked launchpad resource does not exist.
      content:
        application/problem+json:
          schema:
            $ref: '#/components/schemas/Problem'
    Conflict:
      description: >-
        The request conflicts with current cursor, quote, claim, chain, or
        idempotency state.
      content:
        application/problem+json:
          schema:
            $ref: '#/components/schemas/Problem'
    Unprocessable:
      description: >-
        The request is valid JSON but is unsupported, invalid on-chain, or not
        executable.
      content:
        application/problem+json:
          schema:
            $ref: '#/components/schemas/Problem'
    RateLimited:
      description: >-
        The key, wallet, token, creator, or expensive operation exceeded a rate
        or concurrency limit.
      content:
        application/problem+json:
          schema:
            $ref: '#/components/schemas/Problem'
      headers:
        Retry-After:
          description: Seconds until the limited operation may be retried.
          schema:
            type: integer
            minimum: 1
    InternalError:
      description: >-
        An unexpected server fault occurred. Retry once, then contact support
        with the request_id if it persists.
      content:
        application/problem+json:
          schema:
            $ref: '#/components/schemas/Problem'
    UpstreamError:
      description: >-
        A required chain, metadata, indexer, or holder provider returned an
        invalid response.
      content:
        application/problem+json:
          schema:
            $ref: '#/components/schemas/Problem'
    Unavailable:
      description: >-
        A required service, chain dependency, cursor signer, or holder snapshot
        is unavailable.
      content:
        application/problem+json:
          schema:
            $ref: '#/components/schemas/Problem'
    UpstreamTimeout:
      description: A required upstream service timed out.
      content:
        application/problem+json:
          schema:
            $ref: '#/components/schemas/Problem'
  securitySchemes:
    ApiKeyAuth:
      type: apiKey
      in: header
      name: x-api-key
      description: Production API key beginning with o1_launch_.

````