Types
Type reference for order submissions. GraphQL notation: ! means non-null, [...] is a list; a field without ! can be null.
OrderSubmission
| Field | Type | Description |
|---|---|---|
id | UUID! | Submission id |
accountId | UUID! | Owning account |
marketIds | [UUID!] | Venues requested at creation |
resolvedMarketIds | [UUID!] | Venues the order actually rests in — the requested set minus what you can't trade. Null when nothing is resting |
assetIds | [UUID!] | Always null on new submissions |
assetConfigurationIds | [UUID!] | The one traded configuration |
keyIds | [UUID!] | Targeted graded/condition keys |
externalIdentifiers | JSON | Platform ids the submission was created with, normalized to lists |
keyScope | JSON | Key vocabulary the submission was created with, normalized to lists |
direction | OrderSubmissionDirection! | BUY or SELL |
orderType | OrderSubmissionType! | LIMIT or MARKET |
timeInForce | OrderSubmissionTimeInForce! | See enum below |
status | OrderSubmissionStatus! | See enum below |
qty | Int! | Units to trade |
allInPrice | Int | Fee-inclusive limit price per unit, in cents |
minOrderSize | Int | Smallest fill accepted (sell side) |
minValueCents | Int | Minimum value per fill, in cents (sell side) |
slippage | [SlippageConfig!]! | Slippage tolerance for market orders |
autoOuttake | Boolean | Ship filled units automatically after settlement (buy side) |
shouldVault | Boolean | Keep filled units vaulted (buy side) |
fulfillFromVault | Boolean | Fill from vaulted stock, facility ships to the buyer (sell side) |
paymentRail | PaymentRail | How fills are paid for (buy side) |
paymentTokenId | UUID | Payment token charged on fills (buy side) |
originAddressId | UUID | Where inventory ships from (sell side) |
recipientAddressId | UUID | Where filled units ship (buy side) |
expectingFreeShipping | Boolean | Seller saw free shipping on the quote (sell side) |
maxShippingAndHandlingCostsCents | [Int!] | Acknowledged shipping ceilings, one per expected shipment (buy side) — see Taker-pays shipping |
serviceLevelId | UUID | Priority tier: the level a priority bid rests under, or the level of the bid a sell took. Null on standard orders |
externalReferenceId | String | Your identifier, echoed back on reads |
biddingStrategyId | UUID | Set on a strategy's identity submission; null on ordinary submissions |
expiresAt | DateTime | Optional hard expiry |
createdAt | DateTime! | Creation time |
updatedAt | DateTime! | Last modification time |
Opt-in fields
Populated only when the corresponding include flag is set on the query; empty or null otherwise.
| Field | Type | Include flag | Description |
|---|---|---|---|
assetConfigurations | [AssetConfiguration!]! | includeProductData | Catalog rows the submission spans |
assets | [Asset!]! | includeProductData | Parent assets of those configurations |
keys | [Key!]! | includeProductData | Graded/condition keys the submission spans |
conditionalBids | [ConditionalBid!]! | includeChildBidOrAsk | The resting bid a BUY materialized into |
conditionalAsks | [ConditionalAsk!]! | includeChildBidOrAsk | The resting ask a SELL materialized into |
isTopOfBook | Boolean | includeBookPosition | Whether any resting leg holds the best price on its side, ties included. Null means unknown — not false |
SlippageConfig
| Field | Type | Description |
|---|---|---|
direction | SlippageDirection! | UPWARDS or DOWNWARDS |
maxBps | Int! | Maximum tolerated price movement, in basis points — 50 is half a percent |
SlippageConfigInput (create only — slippage is not amendable) has the same fields, validated per entry:
- Slippage applies to
MARKETorders only — setting it on aLIMITorder is rejected (INVALID_SLIPPAGE) maxBpsmust be greater than zero and at most10000(INVALID_SLIPPAGE)- At most one entry per
direction—UPWARDSandDOWNWARDSeach at most once, so the whole list is at most two entries
On a BUY, UPWARDS caps how far above the best ask the order will fill; on a SELL, DOWNWARDS caps how far below the best bid. Liquidity priced beyond the cap is not taken — the remainder follows the order's time in force. A direction without an entry is uncapped.
Enums
OrderSubmissionDirection
| Value | Meaning |
|---|---|
BUY | Rests bids; fills acquire inventory |
SELL | Rests asks; fills release inventory |
OrderSubmissionType
| Value | Meaning |
|---|---|
LIMIT | Rests at your all-in price until matched, cancelled, or expired |
MARKET | Crosses immediately against available liquidity, subject to slippage |
OrderSubmissionTimeInForce
| Value | Meaning |
|---|---|
GTC | Good till cancelled |
DAY | Rests until the next regular session close, then expires. expiresAt is computed; don't set it |
IOC | Immediate or cancel — fills what it can instantly, cancels the rest |
FOK | Fill or kill — fills entirely and instantly, or not at all |
OrderSubmissionStatus
| Value | Meaning |
|---|---|
QUEUED | Accepted, not yet resting on any book |
EXECUTING | A worker is running this order's match/rest right now — milliseconds, not a business phase |
RESTING | Units on the book, none delivered yet. Working: amendable, cancellable. Some quantity may already be matched and settling — the counters say how much |
PARTIALLY_FILLED | Units on the book and some already delivered. Working: amendable, cancellable — the resting remainder is what an amend reprices or a cancel pulls |
SETTLING | Nothing left on the book; matched units still moving through settlement. Nothing to amend or cancel. Non-terminal — resolves to FILLED, CANCELLED or EXPIRED |
FILLED | Every unit delivered — the goods are actually yours. Terminal |
CANCELLED | Nothing on the book and nothing moving, short of a full fill. filledQuantity / settledQuantity may be non-zero. Terminal |
EXPIRED | Nothing on the book and nothing moving; the last resting order ran out its clock. Counters may be non-zero. Terminal |