---
title: "Get order history v2"
method: GET
path: "/v1/traders/{trader_pubkey}/orders_v2"
tags: ["Trader"]
---

# Get order history v2

`GET /v1/traders/{trader_pubkey}/orders_v2`

Handles `GET /v1/traders/{trader_pubkey}/orders_v2` via `get.v1.traders.by_trader_pubkey.orders_v2`.

## Path parameters

- `trader_pubkey` string, required

## Query parameters

- `market_symbol` string
- `limit` integer, required
- `cursor` string

## Response `200`

- PaginatedResponseVecOrderHistoryV2Item — Generic paginated response wrapper with bidirectional cursor support. The cursor system supports both forward (newer) and backward (older) pagination: - `prev_cursor`: Use this cursor to poll for new items (items newer than the current result set) - `next_cursor`: Use this cursor to load more items (items older than the current result set) The direction is embedded in the cursor itself, so clients just need to pass the appropriate cursor to the `cursor` parameter.
  - `data` object[], required
    - `createdAt` string, date-time, required
    - `currentOrderState` CurrentOrderState — Current order state from orders table
      - `baseQty` string, required
      - `cancelledAt` string, date-time, nullable
      - `filledBaseQty` string, required
      - `lastFillAt` string, date-time, nullable
      - `orderSequenceNumber` integer, required
      - `orderStatus` string, required — "active", "filled", "cancelled"
      - `placedAt` string, date-time, nullable
      - `price` string, required
      - `releasedBaseQty` string, required — base_qty - remaining_base_qty
      - `remainingBaseQty` string, required
      - `side` string, required
    - `eventIndex` integer, required
    - `fillBeforePlacement` AggregatedTrades — Aggregated trades summary for an instruction
      - `numTrades` integer, required
      - `totalBaseQtyFilled` string, required
      - `totalNumFills` integer, required
      - `totalQuoteQtyFilled` string, required
      - `totalTakerFee` string, required
    - `instructionIndex` integer, required
    - `instructionType` string, required
    - `intended` IntendedOrder, required — Intended order details from order_packets
      - `baseLots` integer, required
      - `baseQty` string, required
      - `cancelExisting` boolean, required
      - `clientOrderId` string, nullable
      - `hasPriceLimit` boolean, required
      - `isConditionalOrder` boolean
      - `isPostOnly` boolean, required
      - `isReduceOnly` boolean, required
      - `isStopLoss` boolean, required
      - `isStopLossDirection` boolean
      - `isTakeOnly` boolean, required
      - `lastValidSlot` integer, nullable
      - `matchLimit` integer, nullable
      - `orderFlags` integer, required
      - `orderKind` string, required
      - `priceInTicks` integer, nullable
      - `priceUsd` string, nullable
      - `quoteLotBudget` integer, nullable
      - `side` string, required
    - `isConditionalOrder` boolean, required
    - `isReduceOnly` boolean, required
    - `isStopLoss` boolean, required
    - `isStopLossDirection` boolean, required
    - `marketSymbol` string, required
    - `orderType` string, required
    - `placedOrder` PlacedOrder — Actual placed order details from order_events
      - `baseQty` string, required
      - `eventIndex` integer, required
      - `initialSlot` integer, nullable
      - `lastValidSlot` integer, nullable
      - `orderFlags` integer, nullable
      - `orderSequenceNumber` integer, required
      - `price` string, required
      - `side` string, required
      - `transactionTimestamp` string, date-time, required — Formatted datetime string (ISO 8601).
    - `price` string, required
    - `slot` integer, required
    - `slotIndex` integer, required
    - `status` string, required
    - `traderId` integer, required
    - `traderPdaIndex` integer, required
    - `traderSubaccountIndex` integer, required
    - `userId` integer, required
  - `hasMore` boolean, required — Whether there are more results available after this page
  - `nextCursor` string, nullable — Opaque cursor for fetching the next page of older results. Pass this value as the `cursor` parameter in the next request to load more.
  - `prevCursor` string, nullable — Opaque cursor for fetching newer items (for polling). Pass this value as the `cursor` parameter to get items newer than the first item in data.

---

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