Nexus/API Reference/Futures resting orders

Cancel one resting order

POSThttps://app.skylit.ai/api/nexus/v1/trading/accounts/{account}/orders/{orderId}/cancel

Cancels a working or held order. Cancelling an entry takes its bracket with it. An order that already filled can't be cancelled (409 order_not_working). Cancelling one that's already cancelled answers 200 with meta.alreadyCancelled: true.

The body is optional. On a test order's id this cancels it in your test log only. "test": true on a real order's id answers 404, so a bot left in test mode can't cancel a real order.

Authorization

Authorization: Bearer <your API key>

Required. A missing header returns 401; an invalid, revoked or expired key returns 403.

Path parameters

  • accountstringrequired

    practice, evaluation or funded (when you have exactly one running), or a futures account id from capabilities.

  • orderIdstringuuidrequired

    The order's id, from the open, the working list or the history.

Request body

  • testboolean

    true acts on a test order in your test log only.

Responses

  • 200

    The cancelled order, with its bracket.

  • 400

    The request was refused before anything was traded. Codes: bad_request, bad_contract, invalid_quantity, invalid_price, unsupported_asset_class, unsupported_order_type, only_market_orders, test_orders_unavailable, test_modify_unavailable.

  • 401

    No key, or a key that isn't valid. Codes: missing_api_key, invalid_api_key.

  • 403

    The key works but the account can't do this. Codes: account_suspended, nexus_access_denied, futures_access_denied.

  • 404

    Not on your account. Codes: trade_not_found, account_not_found, order_not_found.

  • 409

    The order clashes with what you hold or sent before. Codes: duplicate_position (with tradeId), trade_closed, open_position_limit, client_order_id_used, request_in_progress, account_locked, account_busy, account_ended, order_not_working.

  • 422

    Read fine, but the market or the account says no. Codes: market_closed, contract_expired, contract_not_offered, price_outside_market, insufficient_buying_power, account_not_tradable, account_ambiguous, reduce_only_would_open, order_refused.

  • 429

    Over a rate limit. Wait Retry-After seconds, then retry. Code: rate_limited.

  • 503

    Try again in a moment (honour Retry-After when it's sent). Codes: stale_quote, no_live_price, rules_pending, unavailable, auth_unavailable, access_check_unavailable, api_keys_unavailable, trades_api_disabled.

Response fields

  • dataobject

    A futures order. It's not a Trade: futures keep their own book. Prices are in index points, money in cents.

    • idstringuuid
    • assetClassstring
      futures
    • sourcestring

      api when a key placed it. Left out on an order you placed in Nexus.

    • accountobject
    • symbolstring

      The contract, like NQZ26.

    • sidestring
      buysell
    • quantityinteger
    • rolestring
      entryclosestop_losstake_profit
    • orderTypestring
      marketlimitstop
    • statusstring

      held is a stop or target waiting for its entry to fill.

      workingheldfilledcancelledrejected
    • statusReasonstring

      Why it was cancelled or rejected.

    • limitPricenumber
    • stopPricenumber
    • trailingDistancenumber

      A trailing stop: how far behind the price it follows, in points.

    • fillPricenumber
    • placedAtstringdate-time
    • filledAtstringdate-time
    • parentIdstringuuid

      On a stop or target: the entry it was placed with.

    • bracketobject[]

      The stop and target placed with this order, each a FuturesOrder with its own id.

    • clientOrderIdstring
    • keyIdstring

      The public id of the key that placed it.

    • commissionCentsinteger
    • realizedPnlCentsinteger

      Gross realized P/L of this fill. 0 on a fill that only opened.

    • testboolean

      true on a test order.

Last updated

Was this page helpful?