v51

latestOpenAPI 3.0.0raw.githubusercontent.com2026-08-0175184292.5 KB
Trading

Get option order impact

Simulates an option order with up to 4 legs and returns the estimated cost and transaction fees without placing it. Only supported for certain enabled brokerages. Please refer to the brokerage trading support page for more information on which brokerages support this endpoint.

post/accounts/{accountId}/trading/options/impact

Path parameters

accountIdstring uuid required

Unique identifier for the connected brokerage account. This is the UUID used to reference the account in SnapTrade.

Example:917c8734-8470-4a3e-a18f-57c3f2ee6631

Query parameters

userIdstring required

SnapTrade User ID. This is chosen by the API partner and can be any string that is a) unique to the user, and b) immutable for the user. It is recommended to NOT use email addresses for this property because they are usually not immutable.

Example:snaptrade-user-123
userSecretstring required

SnapTrade User Secret. This is a randomly generated string and should be stored securely. If compromised, please rotate it via the rotate user secret endpoint.

Example:adf2aa34-8219-40f7-a6b3-60156985cc61

Request body

order_type'MARKET' | 'LIMIT' | 'STOP_LOSS_MARKET' | 'STOP_LOSS_LIMIT' required

The type of order to place.

time_in_force'FOK' | 'Day' | 'GTC' | 'IOC' required

The Time in Force type for the order. This field indicates how long the order will remain active before it is executed or expires. Here are the supported values:

  • Day - Day. The order is valid only for the trading day on which it is placed.
  • GTC - Good Til Canceled. The order is valid until it is executed or canceled.
  • FOK - Fill Or Kill. The order must be executed in its entirety immediately or be canceled completely.
  • IOC - Immediate Or Cancel. The order must be executed immediately. Any portion of the order that cannot be filled immediately will be canceled.
limit_pricestring decimal nullable

The limit price. Required if the order type is LIMIT, STOP_LOSS_LIMIT.

stop_pricestring decimal nullable

The stop price. Required if the order type is STOP_LOSS_MARKET, STOP_LOSS_LIMIT.

price_effect'CREDIT' | 'DEBIT' | 'EVEN'

The desired price_effect for LIMIT and STOP_LOSS_LIMIT orders. Values are CREDIT, DEBIT, EVEN

Example request

{
  "order_type": "MARKET",
  "time_in_force": "Day",
  "price_effect": "DEBIT",
  "legs": [
    {
      "instrument": {
        "symbol": "PBI   250718C00006000"
      },
      "action": "BUY_TO_OPEN",
      "units": 1
    }
  ]
}

Response

OK

estimated_cash_changestring

Estimated cash change for the order, before fees.

cash_change_direction'CREDIT' | 'DEBIT' | 'EVEN' | 'UNKNOWN' nullable

Direction of the cash change. CREDIT means cash is received, DEBIT means cash is paid out, EVEN means no cash changes hands. UNKNOWN if the direction cannot be determined from the request.

estimated_fee_totalstring

Estimated total transaction fees and commissions for the order.

Example response

{
  "estimated_cash_change": "1.97",
  "estimated_fee_total": "0.50"
}