Get order
Returns the latest broker state for one order in the caller’s organization. Read access is checked against the order account’s environment. Orders include an instrument; its symbol is instrument.symbol.
Authorizations
Bearer authentication header of the form Bearer <token>, where <token> is your auth token.
Path Parameters
Internal order id to fetch
Response
Order retrieved
Refuses unknown fields. A payload naming a field this type does not have was written against a different contract, and reading it as though it were this one would silently drop whatever that field meant.
unspecified, lightspeed What is being traded.
Replaces the symbol: String this struct carried, and is strictly more
than it was: instrument.symbol() still gives the venue's own spelling
for anything that needs the string, and the rest of the value carries
the facts the spelling cannot - the multiplier that makes ESZ5 worth
fifty dollars a point, the settlement direction that decides which way
an inverse perpetual moves, the payout a prediction contract settles at.
Read those through [Instrument::notional], which is a different
calculation for four of the seven asset classes and silently wrong for
all but equities if the familiar one is used instead.
Required rather than optional. While it was an Option, None meant
unknown and every reader had to decide what to do with that - and the
tempting decision, treating it as an equity, is exactly the assumption
the field exists to remove. Making it mandatory moves that decision to
the one place that can actually answer it: whoever constructs the order
has to resolve the instrument first.
- Option 1
- Option 2
- Option 3
- Option 4
- Option 5
- Option 6
- Option 7
UNSPECIFIED, BUY, SELL, SELL_SHORT Unspecified, Open, Closed, Rejected UNSPECIFIED, PENDING_NEW, NEW, PARTIALLY_FILLED, FILLED, PENDING_CANCEL, CANCELLED, PENDING_REPLACE, REPLACED, STOPPED, REJECTED UNSPECIFIED, LIMIT, MARKET, FILL_OR_KILL, LIMIT_ON_OPEN, LIMIT_ON_CLOSE, MARKET_ON_OPEN, MARKET_ON_CLOSE, STOP, STOP_LIMIT, TRAILING_STOP Where this order was commanded to go.
Distinct from instrument.venue(), which says where the instrument is
listed. See [OrderVenue] for why those are two questions.
UNSPECIFIED, SMART, AMEX, ARCA, BATS, BATY, EDGA, EDGX, NSDQ, NYSE When this reached the platform, on the ingest host's clock.
The same clock every message on the trading stream is stamped with, and
deliberately not the broker's - see the note on
BrokerPosition::received_at [blocked] for why one clock across the three
message types is what makes them comparable at all.
UNSPECIFIED, DAY, IMMEDIATE_OR_CANCEL, GOOD_TILL_CANCEL, AT_OPEN, AT_CLOSE, FILL_OR_KILL, EXT When the broker says it sent this, on the broker's clock.
Reporting only, and never an ordering key. An order restates its whole fill history on every update, so this is the time of the restatement and not of the fill it reports - two messages about one execution carry two different broker stamps, milliseconds apart.
Option and serde(default) because it is newer than the type: the
snapshot table stores this struct as a JSONB payload, and rows written
before the field existed carry no key for it.
The caller's strategy this order belongs to, if it named one when it created the intent.
What a strategy is belongs to the caller: one run of a model, one cycle
away from a target position and back. The platform only groups by it.
Unlike intent_id, which names one order, a strategy spans every intent
the caller places under it, so this is the key a strategy's executions
are summed on.
Taken from the intent's create and carried across every replace and cancel under it.
serde(default) because the snapshot table stores this struct as a
JSONB payload, and rows written before the field existed carry no key
for it.