{
  "opencollection": "1.0.0",
  "info": {
    "name": "TradeStation API",
    "version": "3.0"
  },
  "request": {
    "auth": {
      "type": "oauth2",
      "flow": "authorization_code",
      "authorizationUrl": "https://signin.tradestation.com/authorize",
      "accessTokenUrl": "https://signin.tradestation.com/oauth/token",
      "credentials": {
        "clientId": "{{clientId}}",
        "clientSecret": "{{clientSecret}}"
      }
    }
  },
  "items": [
    {
      "info": {
        "name": "Accounts",
        "type": "folder"
      },
      "items": [
        {
          "info": {
            "name": "Get accounts",
            "type": "http"
          },
          "http": {
            "method": "GET",
            "url": "https://api.tradestation.com/v3/brokerage/accounts"
          },
          "docs": "Retrieves all brokerage accounts associated with the authenticated user. Returns account identifiers, account types, and other account metadata needed for subsequent API calls."
        },
        {
          "info": {
            "name": "Get account balances",
            "type": "http"
          },
          "http": {
            "method": "GET",
            "url": "https://api.tradestation.com/v3/brokerage/accounts/:accountIds/balances",
            "params": [
              {
                "name": "accountIds",
                "value": "",
                "type": "path",
                "description": "One or more account identifiers, comma-separated. Maximum of 25 accounts per request."
              }
            ]
          },
          "docs": "Retrieves the current real-time balances for one or more brokerage accounts. Includes cash balance, equity, market value, buying power, and margin-related balance information."
        },
        {
          "info": {
            "name": "Get beginning-of-day balances",
            "type": "http"
          },
          "http": {
            "method": "GET",
            "url": "https://api.tradestation.com/v3/brokerage/accounts/:accountIds/bodbalances",
            "params": [
              {
                "name": "accountIds",
                "value": "",
                "type": "path",
                "description": "One or more account identifiers, comma-separated. Maximum of 25 accounts per request."
              }
            ]
          },
          "docs": "Retrieves the beginning-of-day balances for one or more brokerage accounts. These balances reflect account state at the start of the current trading session."
        },
        {
          "info": {
            "name": "Get account positions",
            "type": "http"
          },
          "http": {
            "method": "GET",
            "url": "https://api.tradestation.com/v3/brokerage/accounts/:accountIds/positions",
            "params": [
              {
                "name": "accountIds",
                "value": "",
                "type": "path",
                "description": "One or more account identifiers, comma-separated. Maximum of 25 accounts per request."
              }
            ]
          },
          "docs": "Retrieves the current positions for one or more brokerage accounts. Returns information about each open position including symbol, quantity, average price, market value, and unrealized profit/loss."
        },
        {
          "info": {
            "name": "Get account orders",
            "type": "http"
          },
          "http": {
            "method": "GET",
            "url": "https://api.tradestation.com/v3/brokerage/accounts/:accountIds/orders",
            "params": [
              {
                "name": "accountIds",
                "value": "",
                "type": "path",
                "description": "One or more account identifiers, comma-separated. Maximum of 25 accounts per request."
              }
            ]
          },
          "docs": "Retrieves the current active orders for one or more brokerage accounts. Returns information about each order including status, order type, symbol, quantity, and price."
        },
        {
          "info": {
            "name": "Get historical orders",
            "type": "http"
          },
          "http": {
            "method": "GET",
            "url": "https://api.tradestation.com/v3/brokerage/accounts/:accountIds/historicalorders",
            "params": [
              {
                "name": "accountIds",
                "value": "",
                "type": "path",
                "description": "One or more account identifiers, comma-separated. Maximum of 25 accounts per request."
              },
              {
                "name": "since",
                "value": "",
                "type": "query",
                "description": "Filter orders since this date. Format is MM-DD-YYYY."
              },
              {
                "name": "pageSize",
                "value": "",
                "type": "query",
                "description": "Number of orders per page."
              },
              {
                "name": "pageNum",
                "value": "",
                "type": "query",
                "description": "Page number for pagination."
              }
            ]
          },
          "docs": "Retrieves historical orders for one or more brokerage accounts. Returns past orders including filled, cancelled, and rejected orders up to 90 days in the past."
        },
        {
          "info": {
            "name": "Get cryptocurrency wallets",
            "type": "http"
          },
          "http": {
            "method": "GET",
            "url": "https://api.tradestation.com/v3/brokerage/accounts/:accountId/wallets",
            "params": [
              {
                "name": "accountId",
                "value": "",
                "type": "path",
                "description": "The account identifier for wallet retrieval."
              }
            ]
          },
          "docs": "Retrieves cryptocurrency wallet information for a specific brokerage account. Returns wallet balances and cryptocurrency holdings."
        }
      ]
    },
    {
      "info": {
        "name": "Market Data",
        "type": "folder"
      },
      "items": [
        {
          "info": {
            "name": "Get quotes",
            "type": "http"
          },
          "http": {
            "method": "GET",
            "url": "https://api.tradestation.com/v3/marketdata/quotes/:symbols",
            "params": [
              {
                "name": "symbols",
                "value": "",
                "type": "path",
                "description": "One or more symbol identifiers, comma-separated."
              }
            ]
          },
          "docs": "Retrieves real-time quote snapshots for one or more symbols. Returns current bid, ask, last price, volume, and other quote data fields. Supports stocks, options, futures, and cryptocurrency symbols."
        },
        {
          "info": {
            "name": "Get bar chart data",
            "type": "http"
          },
          "http": {
            "method": "GET",
            "url": "https://api.tradestation.com/v3/marketdata/barcharts/:symbol",
            "params": [
              {
                "name": "symbol",
                "value": "",
                "type": "path",
                "description": "The symbol to retrieve bar chart data for."
              },
              {
                "name": "interval",
                "value": "",
                "type": "query",
                "description": "The interval for each bar. For minute bars, valid values are 1-1440. For daily, weekly, and monthly bars, use 1."
              },
              {
                "name": "unit",
                "value": "",
                "type": "query",
                "description": "The unit of time for the bar interval."
              },
              {
                "name": "barsBack",
                "value": "",
                "type": "query",
                "description": "Number of bars to retrieve going back from the last date."
              },
              {
                "name": "firstDate",
                "value": "",
                "type": "query",
                "description": "The start date for bar data retrieval."
              },
              {
                "name": "lastDate",
                "value": "",
                "type": "query",
                "description": "The end date for bar data retrieval."
              },
              {
                "name": "sessionTemplate",
                "value": "",
                "type": "query",
                "description": "The session template to use for filtering bar data. Controls which trading session data to include."
              }
            ]
          },
          "docs": "Retrieves historical bar chart data (OHLC) for a given symbol. Supports multiple intervals and units including minute, daily, weekly, and monthly bars. Returns open, high, low, close prices along with volume and timestamp information."
        },
        {
          "info": {
            "name": "Get symbol details",
            "type": "http"
          },
          "http": {
            "method": "GET",
            "url": "https://api.tradestation.com/v3/marketdata/symbols/:symbols",
            "params": [
              {
                "name": "symbols",
                "value": "",
                "type": "path",
                "description": "One or more symbol identifiers, comma-separated."
              }
            ]
          },
          "docs": "Retrieves detailed symbol information for one or more symbols. Returns symbol metadata including description, exchange, category, currency, point value, and contract specifications."
        },
        {
          "info": {
            "name": "Get cryptocurrency pairs",
            "type": "http"
          },
          "http": {
            "method": "GET",
            "url": "https://api.tradestation.com/v3/marketdata/symbollists/cryptopairs/symbolnames"
          },
          "docs": "Retrieves the list of available cryptocurrency trading pairs. Returns symbol names for all supported crypto pairs on the TradeStation platform."
        }
      ]
    },
    {
      "info": {
        "name": "Options",
        "type": "folder"
      },
      "items": [
        {
          "info": {
            "name": "Get option expirations",
            "type": "http"
          },
          "http": {
            "method": "GET",
            "url": "https://api.tradestation.com/v3/marketdata/options/expirations/:underlying",
            "params": [
              {
                "name": "underlying",
                "value": "",
                "type": "path",
                "description": "The underlying symbol for options data retrieval."
              }
            ]
          },
          "docs": "Retrieves available option expiration dates for a given underlying symbol. Returns expiration dates along with expiration type information such as monthly, weekly, or quarterly."
        },
        {
          "info": {
            "name": "Get option strikes",
            "type": "http"
          },
          "http": {
            "method": "GET",
            "url": "https://api.tradestation.com/v3/marketdata/options/strikes/:underlying",
            "params": [
              {
                "name": "underlying",
                "value": "",
                "type": "path",
                "description": "The underlying symbol for options data retrieval."
              }
            ]
          },
          "docs": "Retrieves available strike prices for options on a given underlying symbol. Returns the list of strike prices available for trading."
        },
        {
          "info": {
            "name": "Get option spread types",
            "type": "http"
          },
          "http": {
            "method": "GET",
            "url": "https://api.tradestation.com/v3/marketdata/options/spreadtypes"
          },
          "docs": "Retrieves the list of available option spread types supported by TradeStation. Returns spread type names and identifiers for use in multi-leg option order construction."
        },
        {
          "info": {
            "name": "Calculate option risk/reward",
            "type": "http"
          },
          "http": {
            "method": "POST",
            "url": "https://api.tradestation.com/v3/marketdata/options/riskreward",
            "body": {
              "type": "json",
              "data": "{}"
            }
          },
          "docs": "Calculates the risk and reward profile for one or more option positions. Returns theoretical profit/loss values at various price levels for the specified option strategy."
        }
      ]
    },
    {
      "info": {
        "name": "Order Execution",
        "type": "folder"
      },
      "items": [
        {
          "info": {
            "name": "Place an order",
            "type": "http"
          },
          "http": {
            "method": "POST",
            "url": "https://api.tradestation.com/v3/orderexecution/orders",
            "body": {
              "type": "json",
              "data": "{}"
            }
          },
          "docs": "Submits a new order for execution. Supports market, limit, stop market, stop limit, and trailing stop order types for stocks, options, and futures. Includes support for time-in-force settings such as day, GTC, GTD, and IOC."
        },
        {
          "info": {
            "name": "Replace an order",
            "type": "http"
          },
          "http": {
            "method": "PUT",
            "url": "https://api.tradestation.com/v3/orderexecution/orders/:orderId",
            "params": [
              {
                "name": "orderId",
                "value": "",
                "type": "path",
                "description": "The unique identifier of the order."
              }
            ],
            "body": {
              "type": "json",
              "data": "{}"
            }
          },
          "docs": "Modifies an existing open order. Allows changing price, quantity, and other order parameters. The original order is cancelled and replaced with the updated order parameters."
        },
        {
          "info": {
            "name": "Cancel an order",
            "type": "http"
          },
          "http": {
            "method": "DELETE",
            "url": "https://api.tradestation.com/v3/orderexecution/orders/:orderId",
            "params": [
              {
                "name": "orderId",
                "value": "",
                "type": "path",
                "description": "The unique identifier of the order."
              }
            ]
          },
          "docs": "Cancels an existing open order. The order must be in a cancellable state. Returns the updated order status after cancellation."
        },
        {
          "info": {
            "name": "Confirm an order",
            "type": "http"
          },
          "http": {
            "method": "POST",
            "url": "https://api.tradestation.com/v3/orderexecution/orderconfirm",
            "body": {
              "type": "json",
              "data": "{}"
            }
          },
          "docs": "Validates an order and returns estimated costs, commissions, and margin requirements without actually submitting the order for execution. Use this endpoint to preview order details before placing."
        },
        {
          "info": {
            "name": "Place a group order",
            "type": "http"
          },
          "http": {
            "method": "POST",
            "url": "https://api.tradestation.com/v3/orderexecution/ordergroups",
            "body": {
              "type": "json",
              "data": "{}"
            }
          },
          "docs": "Submits a group of related orders for execution. Supports bracket orders (OCO - One Cancels Other), OSO (Order Sends Order), and other multi-order strategies. When one order in the group is filled or cancelled, related orders are automatically managed."
        },
        {
          "info": {
            "name": "Confirm a group order",
            "type": "http"
          },
          "http": {
            "method": "POST",
            "url": "https://api.tradestation.com/v3/orderexecution/ordergroupconfirm",
            "body": {
              "type": "json",
              "data": "{}"
            }
          },
          "docs": "Validates a group of related orders and returns estimated costs, commissions, and margin requirements without submitting for execution. Use this endpoint to preview group order details before placing."
        }
      ]
    },
    {
      "info": {
        "name": "Reference Data",
        "type": "folder"
      },
      "items": [
        {
          "info": {
            "name": "Get activation triggers",
            "type": "http"
          },
          "http": {
            "method": "GET",
            "url": "https://api.tradestation.com/v3/orderexecution/activationtriggers"
          },
          "docs": "Retrieves the list of available activation trigger methods for conditional orders. Returns trigger types and their identifiers that can be used when placing orders with activation conditions."
        },
        {
          "info": {
            "name": "Get execution routes",
            "type": "http"
          },
          "http": {
            "method": "GET",
            "url": "https://api.tradestation.com/v3/orderexecution/routes"
          },
          "docs": "Retrieves the list of available order routing destinations. Returns route identifiers and names for use when specifying a routing preference on order submission."
        }
      ]
    }
  ],
  "bundled": true
}