Skip to main content
GET
/
v1
/
orders
/
{order_id}
Get a single order by ID (polysim-shape row).
curl --request GET \
  --url https://api.polysimulator.com/v1/orders/{order_id} \
  --header 'X-API-Key: <api-key>'
{
  "order_id": 123,
  "market_id": "<string>",
  "side": "<string>",
  "outcome": "<string>",
  "order_type": "<string>",
  "limit_price": "<string>",
  "quantity": "<string>",
  "time_in_force": "<string>",
  "status": "<string>",
  "client_order_id": "<string>",
  "created_at": "<string>",
  "filled_at": "<string>",
  "fill_price": "<string>",
  "cancelled_at": "<string>",
  "cancelled_reason": "<string>"
}

Authorizations

X-API-Key
string
header
required

Issue from /v1/keys (or admin-issued for enterprise tier).

Headers

X-API-Key
string | null

Your PolySimulator API key

POLY_API_KEY
string | null

Polymarket-CLOB-compat alias for X-API-Key (underscore form). SDK clients ported from Polymarket can authenticate without changing header names. X-API-Key takes precedence when both are provided.

Poly-API-Key
string | null

PM-CLOB-compat dashed-form alias for X-API-Key. Same value semantics as POLY_API_KEY but with HTTP-conventional dash separators. Audit P1 (staging audit 2026-05-16 0817 PR #1296): the per-tier middleware accepts both spellings but the auth dependency originally only matched the underscore form — now both work end-to-end.

authorization
string | null

PM-CLOB-compat: Authorization: Bearer ps_live_... (or ps_test_...) is accepted as an alias for X-API-Key so py-clob-client and other ported SDKs authenticate without header name changes. Bearer JWTs are NOT accepted here — use the dashboard-auth endpoints for those.

Path Parameters

order_id
integer
required

Query Parameters

source
string | null

Disambiguate the table lookup: pending forces the PendingOrder table (limit orders), filled forces the Order table (pure-market fills). Default None tries PendingOrder first, falls back to Order on miss (same precedence as list_orders). Audit PR #1303 Copilot review.

wallet_id
integer | null

Optional wallet scope — when supplied, only returns the row if it belongs to this wallet. Mirrors the list_orders wallet_id pattern so per-wallet pollers stay consistent. Audit PR #1303 Copilot review.

Response

Successful Response

Compact pending order representation for list endpoint.

order_id
integer
required
market_id
string
required
side
string
required
outcome
string
required
order_type
string
required
limit_price
string
required
quantity
string
required
time_in_force
string
required
status
string
required
client_order_id
string | null
created_at
string | null
filled_at
string | null
fill_price
string | null
cancelled_at
string | null
cancelled_reason
string | null