tastytradeDeveloper Docs
Legacy ↗

API Reference / Orders

Get Order

getAccountsAccountNumberOrdersId
get/accounts/{account_number}/orders/{id}

Base URL: https://api.cert.tastyworks.com (Sandbox) · https://api.tastyworks.com (Production)

Returns a single order by its id, including its legs, fills, current status, and tracking details. Use this to follow an order's progress through the submission, working, and terminal phases.

Code samples

curl -X GET 'https://api.cert.tastyworks.com/accounts/5WX01234/orders/1' \
  -H 'Authorization: Bearer YOUR_ACCESS_TOKEN' \
  -H 'User-Agent: tastytrade-docs-example/1.0'

Parameters

NameInTypeDescription
account_number*pathstring
e.g. "5WX01234"
id*pathinteger
e.g. 1

Responses

200The requested order.application/json

Example response

{
  "data": {
    "id": "771043",
    "account-number": "5WX01234",
    "cancel-user-id": "abc123",
    "cancel-username": "string",
    "cancellable": true,
    "cancelled-at": "2024-07-31T16:50:23.417+00:00",
    "complex-order-id": "2000010530",
    "complex-order-tag": "OTOCO::order",
    "confirmation-status": "string",
    "contingent-status": "Pending Order",
    "editable": true,
    "edited": false,
    "external-identifier": "string",
    "global-request-id": "abc123",
    "gtc-date": "2024-01-15",
    "in-flight-at": "2024-01-15T14:30:00.000Z",
    "liquidity-pool-instrument-type": "Equity",
    "live-at": "2024-01-15T14:30:00.000Z",
    "max-value-per-liquidity-allocation-fill": "100.00",
    "order-type": "Limit",
    "preflight-id": "abc123",
    "price": "150.25",
    "price-effect": "Debit",
    "received-at": "2024-10-01T18:26:52.513+00:00",
    "reject-reason": "You cannot buy for a credit.",
    "replaces-order-id": "771043",
    "replacing-order-id": "771044",
    "size": "1",
    "source": "string",
    "status": "Live",
    "stop-trigger": "150.0",
    "terminal-at": "2024-07-31T16:50:23.417+00:00",
    "time-in-force": "Day",
    "underlying-instrument-type": "Equity",
    "underlying-symbol": "AAPL",
    "updated-at": "2024-01-15T14:30:00.000Z",
    "user-id": "abc123",
    "username": "string",
    "value": "10.0",
    "value-effect": "Debit",
    "legs": [
      {
        "action": "string",
        "instrument-type": "Equity",
        "quantity": "1",
        "remaining-quantity": "1",
        "symbol": "AAPL",
        "fills": [
          {
            "destination-venue": "string",
            "ext-exec-id": "abc123",
            "ext-group-fill-id": "abc123",
            "fill-id": "abc123",
            "fill-price": "100.00",
            "filled-at": "2024-01-15T14:30:00.000Z",
            "quantity": "1"
          }
        ]
      }
    ],
    "order-rule": {
      "cancel-at": "2024-01-15T14:30:00.000Z",
      "cancelled-at": "2024-01-15T14:30:00.000Z",
      "route-after": "2024-01-15T14:30:00.000Z",
      "routed-at": "2024-01-15T14:30:00.000Z",
      "order-conditions": [
        {
          "id": "abc123",
          "action": "string",
          "comparator": "string",
          "indicator": "string",
          "instrument-type": "Equity",
          "is-threshold-based-on-notional": true,
          "symbol": "AAPL",
          "threshold": "string",
          "triggered-at": "2024-01-15T14:30:00.000Z",
          "triggered-value": "100.00",
          "price-components": [
            {}
          ]
        }
      ]
    }
  },
  "context": "/accounts/{account_number}/orders/{id}"
}

Schema

  • datarequiredobject (Order)

    A single order in the tastytrade system. Submission-time fields such as `order-type`, `time-in-force`, `price`, and `legs` describe the order, while post-submission fields such as `status`, `cancellable`, `editable`, and `legs.fills` track its progress through the submission, working, and terminal phases.

    • idstring

      The unique identifier of the order. Use it to fetch, replace, or cancel the order.

      example: "771043"

    • account-numberstring

      The account number the order belongs to.

      example: "5WX01234"

    • cancel-user-idstring
    • cancel-usernamestring
    • cancellableboolean

      Whether the order can currently be cancelled. True while the order is in a working status, false once it is terminal or a cancel has been requested.

      example: true

    • cancelled-atstring <date-time>

      Timestamp when the order was cancelled, if applicable.

      example: "2024-07-31T16:50:23.417+00:00"

    • complex-order-idstring

      The id of the parent complex order, if this order is a component of one.

      example: "2000010530"

    • complex-order-tagstring

      The role of this order within its complex order, for example `OTOCO::trigger-order` or `OCO::order`.

      example: "OTOCO::order"

    • confirmation-statusstring
    • contingent-statusstring

      The contingency state of a complex-order component awaiting its trigger, for example `Pending Order`.

      example: "Pending Order"

    • editableboolean

      Whether the order can currently be edited or replaced.

      example: true

    • editedboolean

      Whether this order is the result of an edit/replacement of a prior order.

      example: false

    • external-identifierstring
    • global-request-idstring
    • gtc-datestring <date>
    • in-flight-atstring <date-time>
    • liquidity-pool-instrument-typestring
    • live-atstring <date-time>
    • max-value-per-liquidity-allocation-fillstring
    • order-typestring

      The order type with respect to pricing: `Limit`, `Market`, `Stop`, `Stop Limit`, `Notional Market`, `Marketable Limit`, or `Liquidity Allocation`.

      example: "Limit"

    • preflight-idstring
    • pricestring <decimal>

      The limit price of the order, applicable to Limit and Stop Limit orders. Serialized as a JSON string decimal. Decimal value serialized as a JSON string (e.g. "150.25").

      example: "150.25"

    • price-effectstring

      The direction of the price relative to the account: `Debit` (paying) or `Credit` (receiving).

      example: "Debit"

    • received-atstring <date-time>

      Timestamp when tastytrade received the order.

      example: "2024-10-01T18:26:52.513+00:00"

    • reject-reasonstring

      The reason the order was rejected, if its status is `Rejected`.

      example: "You cannot buy for a credit."

    • replaces-order-idstring

      The id of the order that this order replaces, for cancel-replace orders.

      example: "771043"

    • replacing-order-idstring

      The id of the order that is replacing this order, for orders being cancel-replaced.

      example: "771044"

    • sizestring

      The total quantity of the order across its legs, as a string.

      example: "1"

    • sourcestring
    • statusstring

      The current order status, for example `Received`, `Routed`, `Live`, `Cancel Requested`, `Filled`, `Cancelled`, `Expired`, or `Rejected`.

      example: "Live"

    • stop-triggerstring

      The trigger price at which a Stop or Stop Limit order activates, as a string.

      example: "150.0"

    • terminal-atstring <date-time>

      Timestamp when the order reached a terminal status.

      example: "2024-07-31T16:50:23.417+00:00"

    • time-in-forcestring

      How long the order remains working before it expires: `Day`, `GTC`, `GTD`, `Ext`, `IOC`, and related values.

      example: "Day"

    • underlying-instrument-typestring

      The instrument type of the underlying, for example `Equity` or `Future`.

      example: "Equity"

    • underlying-symbolstring

      The underlying symbol the order trades, for example `AAPL`.

      example: "AAPL"

    • updated-atstring
    • user-idstring
    • usernamestring
    • valuestring <decimal>

      The notional dollar value of the order, applicable to Notional Market orders. Serialized as a JSON string decimal. Decimal value serialized as a JSON string (e.g. "150.25").

      example: "10.0"

    • value-effectstring

      The direction of the notional value relative to the account: `Debit` or `Credit`.

      example: "Debit"

    • legsarray<object>{6 fields}
    • order-ruleobject{5 fields}
  • contextrequiredstring

    example: "/accounts/{account_number}/orders/{id}"

401Missing or expired access token, or a missing/malformed `User-Agent` header.application/json

Example response

{
  "error": {
    "code": "unauthorized",
    "message": "No valid access token was provided; access tokens expire after 15 minutes."
  }
}

Schema

  • errorrequiredobject
    • coderequiredstring

      Machine-readable error code (see the Error reference).

    • messagerequiredstring

      Human-readable explanation.

    • errorsarray<object>{3 fields}

      Present for multi-error / validation failures; one entry per problem.

403The token's scope or the account authority does not permit reading this account's orders.application/json

Example response

{
  "error": {
    "code": "not_permitted",
    "message": "User not permitted access"
  }
}

Schema

  • errorrequiredobject
    • coderequiredstring

      Machine-readable error code (see the Error reference).

    • messagerequiredstring

      Human-readable explanation.

    • errorsarray<object>{3 fields}

      Present for multi-error / validation failures; one entry per problem.

404No order with this id exists on the account.application/json

Example response

{
  "error": {
    "code": "string",
    "message": "string",
    "errors": [
      {
        "code": "string",
        "message": "string",
        "domain": "string"
      }
    ]
  }
}

Schema

  • errorrequiredobject
    • coderequiredstring

      Machine-readable error code (see the Error reference).

    • messagerequiredstring

      Human-readable explanation.

    • errorsarray<object>{3 fields}

      Present for multi-error / validation failures; one entry per problem.

429Request rate exceeded. Back off exponentially and reduce your request rate.application/json

Example response

{
  "error": {
    "code": "string",
    "message": "string",
    "errors": [
      {
        "code": "string",
        "message": "string",
        "domain": "string"
      }
    ]
  }
}

Schema

  • errorrequiredobject
    • coderequiredstring

      Machine-readable error code (see the Error reference).

    • messagerequiredstring

      Human-readable explanation.

    • errorsarray<object>{3 fields}

      Present for multi-error / validation failures; one entry per problem.

Related

Agents: this page is also Markdown (with the embedded OpenAPI definition) — append .md or send Accept: text/markdown. Index at /llms.txt.