Liquidate Position

View as Markdown
### Cancel working orders for a contract and flatten its position. **Available to:** All authenticated users **Environments:** Demo, Live **[Rate Limit](/api/authentication#request-rate-limits-and-time-penalties):** No endpoint-specific limit Cancels the working orders for a specific `contractId` on the given `accountId` and closes (flattens) the resulting position with a market order. This is a request, not a guarantee — it can fail for reasons ranging from exchange rejection to misconfiguration. When the request is rejected, the response carries a `failureReason` and `failureText`. <Warning> Set `isAutomated` to `true` when this is triggered by code or an automated process, and `false` only when a human triggers it directly. </Warning> **Common Failure Scenarios** - The trading session is closed or the market has no quote (`SessionClosed`, `NoQuote`). - The market lacks the liquidity to close the position (`NotEnoughLiquidity`). - The user isn't permitted to trade this account or contract (`Unauthorized`). **Error Messages** | `failureReason` | Trigger | |-----------------|---------| | `SessionClosed` | The trading session is closed. | | `NotEnoughLiquidity` | The market can't absorb the closing order. | | `Unauthorized` | The user isn't permitted to trade this account or contract. | See the `failureReason` enum in the response schema for the complete list of values.

Authentication

AuthorizationBearer

Bearer authentication of the form Bearer <token>, where token is your auth token.

Request

This endpoint expects an object.
accountIdlongRequired
contractIdlongRequired
adminbooleanRequired
customTag50stringOptional<=64 characters
isAutomatedbooleanOptional

Response

PlaceOrderResult
failureReasonenum
AccountClosed, AdvancedTrailingStopUnsupported, AnotherCommandPending, BackMonthProhibited, ExecutionProviderNotConfigured, ExecutionProviderUnavailable, InvalidContract, InvalidPrice, KeyInformationDocumentRequired, LiquidationOnly, LiquidationOnlyBeforeExpiration, MaxOrderQtyIsNotSpecified, MaxOrderQtyLimitReached, MaxPosLimitMisconfigured, MaxPosLimitReached, MaxTotalPosLimitReached, MultipleAccountPlanRequired, NoQuote, NotEnoughLiquidity, OtherExecutionRelated, ParentRejected, RiskCheckTimeout, SSFNFAComplianceRequired, SSFNFAComplianceRequiredJointOnly, SSFRiskDisclosureAcknowledgmentRequired, SessionClosed, Success, TooLate, TradingLocked, TrailingStopNonOrderQtyModify, Unauthorized, UnknownReason, Unsupported
failureTextstring<=8192 characters
orderIdlong