Skip to main content
GET
/
api
/
accounts
/
{accountId}
/
orders
/
{orderId}
Get Order
curl --request GET \
  --url https://trade.predexon.com/api/accounts/{accountId}/orders/{orderId} \
  --header 'x-api-key: <api-key>'
{
  "orderId": "<string>",
  "venue": "<string>",
  "predexonId": "<string>",
  "outcome": "<string>",
  "createdAt": "<string>",
  "size": "<string>",
  "price": "<string>",
  "filled": "<string>",
  "market": {
    "tokenId": "<string>",
    "marketId": "<string>",
    "ticker": "<string>",
    "outcome": "<string>",
    "marketSlug": "<string>",
    "assetId": "<string>"
  },
  "fee": {
    "policyApplied": true,
    "feeBps": 123,
    "platformFeeBps": 123,
    "partnerFeeBps": 123,
    "grossAmount": "<string>",
    "netOrderAmount": "<string>",
    "maxFeeReserved": "<string>"
  },
  "message": "<string>"
}

Authorizations

x-api-key
string
header
required

Path Parameters

accountId
string
required
orderId
string
required

Query Parameters

venue
enum<string>
Available options:
polymarket,
predict,
opinion,
limitless,
hyperliquid

Response

Order details

orderId
string
venue
string
predexonId
string | null

Canonical per-outcome identifier. Echoed back when the request used predexonId; otherwise computed deterministically from (venue, tokenId) and returned. null only when the underlying venue identifier can't be normalized (rare).

side
enum<string>
Available options:
buy,
sell
type
enum<string> | null

Order type. Populated on placement responses (echoed from the request); null on list and detail responses.

Available options:
market,
limit
outcome
string
status
enum<string>

Normalized order status across venues. partial means the order matched some shares but the rest is still open or terminal-cancelled.

Available options:
open,
filled,
partial,
cancelled,
expired,
pending,
failed
createdAt
string
size
string

Number of shares (when size was provided in request)

price
string | null

Realized average fill price (NOT the requested price) for market orders and immediately-filled limit orders — derived from the actual matched amounts. For still-open limit orders it's the resting limit price. null when nothing filled. Compare against your priceBoundary (or expected mid) to measure slippage.

filled
string | null

Number of shares actually filled (may be less than requested size on a partial fill). Emits null (not absent) when no fills.

market
object

Venue-specific market identification. Populate the fields the target venue requires: Polymarket needs tokenId; Predict, Opinion, and Limitless need tokenId and one other field (marketId for Predict and Opinion; marketSlug for Limitless); Hyperliquid needs assetId. On responses, the bag contains only the fields the venue surfaces (tokenId, marketId, ticker, outcome, assetId) — request-only fields like marketSlug are not echoed back, and Opinion order-list responses contain marketId only (placement responses include both).

fee
object

Fee metadata (when fees are active)

message
string