UNPKG

openapi-directory

Version:

Building & bundling https://github.com/APIs-guru/openapi-directory for easy use from JS

1 lines 34.1 kB
{"openapi":"3.0.0","servers":[{"url":"https://www.interactivebrokers.com/tradingapi/v1"}],"info":{"description":"Interactive Brokers Web API for 3rd Party Companies","title":"IBKR 3rd Party Web API","version":"1.0.0","x-apisguru-categories":["financial"],"x-logo":{"url":"https://interactivebrokers.com/images/web/favicons/apple-touch-icon-57x57.png"},"x-origin":[{"format":"swagger","url":"https://www.interactivebrokers.co.uk/webtradingapi/swagger.yaml","version":"2.0"}],"x-providerName":"interactivebrokers.com"},"security":[{"cookieAuth":[]}],"paths":{"/accounts":{"get":{"description":"Allows the caller to request a list of accounts associated with the session.","parameters":[{"description":"Account Number","in":"query","name":"account","required":true,"schema":{"type":"string"}}],"responses":{"200":{"content":{"application/json":{"schema":{"properties":{"accounts":{"description":"Unique account id","items":{"type":"string"},"type":"array"}},"type":"object"}}},"description":"An array of accounts"},"202":{"description":"Unsuccessfull response"},"204":{"description":"Unsuccessfull response"},"401":{"description":"Unsuccessfull response"},"403":{"description":"Unsuccessfull response"},"408":{"description":"Unsuccessfull response"}},"summary":"Brokerage Accounts","tags":["Account & Portfolio"]}},"/accounts/{account}/order_impact":{"parameters":[{"description":"Account Number","in":"path","name":"account","required":true,"schema":{"type":"string"}}],"post":{"description":"This endpoint allows the consumer to check the impact that an order would have on the account, including margin, NLV and estimated commission costs.\nTo specify the contract, you provide a value for the ContractId field, OR Ticker/ListingExchange/InstrumentType=STK for stocks OR Ticker/Currency/InstrumentType=CASH for FX.\n","requestBody":{"content":{"application/json":{"schema":{"properties":{"Aux Price":{"description":"Required price to support Stop and Stop Limit orders","type":"number"},"ContractId":{"description":"The internal IB identifier for the trading product specified as an integer (can be obtained in response to /secdef request)","type":"number"},"Currency":{"description":"The currency in which the FX pair trades (only for InstrumentType=CASH)","type":"string"},"CustomerOrderId":{"description":"The order ID assigned by the customer.","type":"string"},"InstrumentType":{"description":"The instrument type of the contract","type":"string"},"ListingExchange":{"description":"The exchange on which the trading product is listed (only for InstrumentType=STK)","type":"string"},"Order Type":{"$ref":"#/components/schemas/orderType"},"Price":{"description":"The order price","type":"number"},"Quantity":{"description":"The number of units in the order; contracts or shares","type":"number"},"Side":{"description":"Buy = '1', Sell = '2'","enum":[1,2],"type":"number"},"Ticker":{"description":"The symbol that identifies the trading product","type":"string"},"Time in Force":{"$ref":"#/components/schemas/timeInForce"}},"type":"object"}}},"description":"Order Parameters","required":true},"responses":{"200":{"content":{"application/json":{"schema":{"properties":{"Commission":{"type":"number"},"CommissionsCurrency":{"type":"string"},"EquityWithLoan":{"type":"number"},"InitMargin":{"type":"number"},"InitMarginBefore":{"type":"number"},"MaintMargin":{"type":"number"},"MaintMarginBefore":{"type":"number"},"MarginCurrency":{"type":"string"},"MaxCommissions":{"type":"number"},"MinCommissions":{"type":"number"}},"type":"object"}}},"description":"Order impact info"},"202":{"description":"Unsuccessfull response"},"204":{"description":"Unsuccessfull response"},"400":{"description":"Unsuccessfull response"},"401":{"description":"Unsuccessfull response"},"403":{"description":"Unsuccessfull response"},"408":{"description":"Unsuccessfull response"}},"summary":"Return margin impact info","tags":["Order Margin Requirements"]}},"/accounts/{account}/orders":{"get":{"description":"Returns a list of orders for the account passed in the URL","responses":{"200":{"content":{"application/json":{"schema":{"items":{"$ref":"#/components/schemas/orderState"},"type":"array"}}},"description":"Returns a list of orders for the indicated account"},"202":{"description":"Unsuccessfull response"},"204":{"description":"Unsuccessfull response"},"400":{"description":"Unsuccessfull response"},"401":{"description":"Unsuccessfull response"},"403":{"description":"Unsuccessfull response"},"408":{"description":"Unsuccessfull response"}},"summary":"Open Orders","tags":["Orders"]},"parameters":[{"description":"Account Number","in":"path","name":"account","required":true,"schema":{"type":"string"}}],"post":{"description":"Places order","requestBody":{"content":{"application/json":{"schema":{"properties":{"Aux Price":{"description":"Required Price to support Stop and Stop Limit orders","type":"number"},"ContractId":{"description":"The internal IB identifier for the trading product specified as an integer (can be obtained in response to /secdef request)","type":"number"},"Currency":{"description":"The currency in which the FX pair trades (only for InstrumentType=CASH)","type":"string"},"CustomerOrderId":{"description":"The order ID assigned by the customer.","type":"string"},"GermanHftAlgo":{"description":"By setting this bool to false the customer attests that the order is not subject to German HFT Act, was not generated using any automated algorithm, and no algorithm determined or changed financial instrument, side, quantity, order type, limit or other price, trading venue or timing of this order. Currently we cannot accept orders where this flag is set to true. Such orders will be rejected.","type":"boolean"},"InstrumentType":{"description":"The instrument type of the contract","type":"string"},"ListingExchange":{"description":"The exchange on which the trading product is listed (only for InstrumentType=STK)","type":"string"},"Mifid2Algo":{"description":"This field permits specification of the user's preregistered (via account management) MiFID II short code for algos that are responsible for investment decisions","type":"string"},"Mifid2DecisionMaker":{"description":"This field permits specification of the user's preregistered (via account management) MiFID II short code for decision makers.","type":"string"},"Mifid2ExecutionAlgo":{"description":"This field permits specification of the user's preregistered (via account management) MiFID II short code for algos that are responsible for handling/routing of the order.","type":"string"},"Mifid2ExecutionTrader":{"description":"This field permits specification of the user's preregistered (via account management) MiFID II person responsible for handling/routing of the order","type":"string"},"Order Type":{"$ref":"#/components/schemas/orderType"},"OrderRestrictions":{"description":"MultiValueString representing the restrictions associated with\nan order. If more than one restriction is applicable to an\norder, this field can contain multiple instructions separated\nby space. \n'1' Program Trade\n'2' Index Arbitrage \n'3' Non-Index Arbitrage\n","type":"number"},"Outside RTH":{"description":"Indicates if order is active outside regular trading hours, where defined. 0 = no (default), 1 = yes","type":"number"},"Price":{"description":"The order price","type":"number"},"Quantity":{"description":"The number of units in the order; contracts or shares","type":"number"},"Side":{"description":"Buy = '1', Sell = '2'","enum":[1,2],"type":"number"},"Ticker":{"description":"The symbol that identifies the trading product","type":"string"},"Time in Force":{"$ref":"#/components/schemas/timeInForce"}},"type":"object"}}},"description":"Order Parameters","required":true},"responses":{"200":{"content":{"application/json":{"schema":{"items":{"$ref":"#/components/schemas/orderState"},"type":"array"}}},"description":"Returns order status information"},"202":{"description":"Unsuccessfull response"},"204":{"description":"Unsuccessfull response"},"400":{"description":"Unsuccessfull response"},"401":{"description":"Unsuccessfull response"},"403":{"description":"Unsuccessfull response"},"408":{"description":"Unsuccessfull response"}},"summary":"Place Order","tags":["Orders"]}},"/accounts/{account}/orders/{CustomerOrderId}":{"delete":{"description":"Cancels the order with the referenced Customer Order ID for the account passed in the URL.","responses":{"200":{"content":{"application/json":{"schema":{"items":{"properties":{"CustomerOrderId":{"type":"string"},"OrderQty":{"type":"number"},"OrderType":{"$ref":"#/components/schemas/orderType"},"Price":{"type":"string"},"Side":{"enum":[1,2],"type":"number"},"Status":{"$ref":"#/components/schemas/orderStatus"},"Symbol":{"type":"number"},"Warning":{"type":"string"}},"type":"object"},"type":"array"}}},"description":"Returns result of cancellation attempt"},"202":{"description":"Unsuccessfull response"},"204":{"description":"Unsuccessfull response"},"400":{"description":"Unsuccessfull response"},"401":{"description":"Unsuccessfull response"},"403":{"description":"Unsuccessfull response"},"408":{"description":"Unsuccessfull response"}},"summary":"Cancel Order","tags":["Orders"]},"get":{"description":"Returns the order with the referenced Customer Order ID for the account passed in the URL.","responses":{"200":{"content":{"application/json":{"schema":{"items":{"$ref":"#/components/schemas/orderState"},"type":"array"}}},"description":"Returns order status information"},"202":{"description":"Unsuccessfull response"},"204":{"description":"Unsuccessfull response"},"400":{"description":"Unsuccessfull response"},"401":{"description":"Unsuccessfull response"},"403":{"description":"Unsuccessfull response"},"408":{"description":"Unsuccessfull response"}},"summary":"Return specific order info","tags":["Orders"]},"parameters":[{"description":"Account Number","in":"path","name":"account","required":true,"schema":{"type":"string"}},{"description":"Customer Order ID","in":"path","name":"CustomerOrderId","required":true,"schema":{"type":"string"}}],"put":{"description":"Allows the caller to modify the order with the referenced Customer Order ID specified in the URL. A separate Customer Order ID must be provided in the request body for the modification.","requestBody":{"content":{"application/json":{"schema":{"properties":{"Aux Price":{"description":"Required Price to support Stop and Stop Limit orders","type":"number"},"CustomerOrderId":{"description":"The new order ID assigned by the customer for the modification.","type":"string"},"GermanHftAlgo":{"description":"By setting this bool to false the customer attests that the order is not subject to German HFT Act, was not generated using any automated algorithm, and no algorithm determined or changed financial instrument, side, quantity, order type, limit or other price, trading venue or timing of this order. Currently we cannot accept orders where this flag is set to true. Such orders will be rejected.","type":"boolean"},"Mifid2Algo":{"description":"This field permits specification of the user's preregistered (via account management) MiFID II short code for algos that are responsible for investment decisions","type":"string"},"Mifid2DecisionMaker":{"description":"This field permits specification of the user's preregistered (via account management) MiFID II short code for decision makers.","type":"string"},"Mifid2ExecutionAlgo":{"description":"This field permits specification of the user's preregistered (via account management) MiFID II short code for algos that are responsible for handling/routing of the order.","type":"string"},"Mifid2ExecutionTrader":{"description":"This field permits specification of the user's preregistered (via account management) MiFID II person responsible for handling/routing of the order","type":"string"},"Order Type":{"$ref":"#/components/schemas/orderType"},"OrigCustomerOrderId":{"description":"The order ID assigned by the customer","type":"string"},"Outside RTH":{"description":"Indicates if order is active outside regular trading hours, where defined. 0 = no (default), 1 = yes","type":"number"},"Price":{"description":"The order price","type":"number"},"Quantity":{"description":"The number of units in the order; contracts or shares","type":"number"},"Side":{"description":"Buy = '1', Sell = '2'","enum":[1,2],"type":"number"},"Time in Force":{"$ref":"#/components/schemas/timeInForce"}},"type":"object"}}},"description":"Order Parameters","required":true},"responses":{"200":{"content":{"application/json":{"schema":{"items":{"properties":{"CustomerOrderId":{"type":"string"},"OrderQty":{"type":"number"},"OrderType":{"$ref":"#/components/schemas/orderType"},"Price":{"type":"string"},"Side":{"enum":[1,2],"type":"number"},"Status":{"$ref":"#/components/schemas/orderStatus"},"Symbol":{"type":"number"},"Warning":{"type":"string"}},"type":"object"},"type":"array"}}},"description":"Result of order modification attempt"},"202":{"description":"Unsuccessfull response"},"204":{"description":"Unsuccessfull response"},"400":{"description":"Unsuccessfull response"},"401":{"description":"Unsuccessfull response"},"403":{"description":"Unsuccessfull response"},"408":{"description":"Unsuccessfull response"}},"summary":"Modify Order","tags":["Orders"]}},"/accounts/{account}/positions":{"get":{"description":"Returns a list of positions for the indicated account. ","parameters":[{"description":"Account Number","in":"path","name":"account","required":true,"schema":{"type":"string"}}],"responses":{"200":{"content":{"application/json":{"schema":{"items":{"properties":{"AverageCost":{"type":"number"},"ContractId":{"type":"number"},"Position":{"type":"number"}},"type":"object"},"type":"array"}}},"description":"Returns a list of positions for the indicated account"},"202":{"description":"Unsuccessfull response"},"204":{"description":"Unsuccessfull response"},"400":{"description":"Unsuccessfull response"},"401":{"description":"Unsuccessfull response"},"403":{"description":"Unsuccessfull response"},"408":{"description":"Unsuccessfull response"}},"summary":"Account Positions","tags":["Account & Portfolio"]}},"/accounts/{account}/summary":{"get":{"description":"Returns a list of account and margin balances associated with the account passed in the URL","parameters":[{"description":"Account Number","in":"path","name":"account","required":true,"schema":{"type":"string"}}],"responses":{"200":{"content":{"application/json":{"schema":{"properties":{"Info":{"properties":{"AccountCode":{"type":"string"},"AccountReady":{"type":"string"},"AccountType":{"type":"string"},"Cushion":{"type":"string"},"DayTradesRemaining":{"type":"string"},"DayTradesRemainingT":{"type":"string"},"DayTradesRemainingT+2":{"type":"string"},"DayTradesRemainingT+3":{"type":"string"},"DayTradesRemainingT+4":{"type":"string"},"HighestSeverity":{"type":"string"},"Leverage-S":{"type":"string"},"LookAheadNextChange":{"type":"string"},"SegmentTitle-C":{"type":"string"},"SegmentTitle-S":{"type":"string"},"TradingType-S":{"type":"string"},"WhatIfPMEnabled":{"type":"string"}},"type":"object"},"Ledger":{"items":{"properties":{"CashBalance":{"type":"number"},"CashBalanceFXSegment":{"type":"number"},"CashCumQty":{"type":"number"},"ExchangeRate":{"type":"number"},"FutureOptionMarketValue":{"type":"number"},"FuturePNL":{"type":"number"},"NetDividend":{"type":"number"},"NetInterest":{"type":"number"},"NetLiquidation":{"type":"number"},"OptionMarketValue":{"type":"number"},"RealizedPNL":{"type":"number"},"StockMarketValue":{"type":"number"},"TotalCashBalance":{"type":"number"},"UnrealizedPNL":{"type":"number"}},"type":"object"},"type":"array"},"Summary":{"properties":{"AccruedCash":{"type":"number"},"AccruedCash-C":{"type":"number"},"AccruedCash-S":{"type":"number"},"AccruedDividend":{"type":"number"},"AccruedDividend-C":{"type":"number"},"AccruedDividend-S":{"type":"number"},"AvailableFunds":{"type":"number"},"AvailableFunds-C":{"type":"number"},"AvailableFunds-S":{"type":"number"},"Billable":{"type":"number"},"Billable-C":{"type":"number"},"Billable-S":{"type":"number"},"BuyingPower":{"type":"number"},"EquityWithLoanValue":{"type":"number"},"EquityWithLoanValue-C":{"type":"number"},"EquityWithLoanValue-S":{"type":"number"},"ExcessLiquidity":{"type":"number"},"ExcessLiquidity-C":{"type":"number"},"ExcessLiquidity-S":{"type":"number"},"FullAvailableFunds":{"type":"number"},"FullAvailableFunds-C":{"type":"number"},"FullAvailableFunds-S":{"type":"number"},"FullExcessLiquidity":{"type":"number"},"FullExcessLiquidity-C":{"type":"number"},"FullExcessLiquidity-S":{"type":"number"},"FullInitMarginReq":{"type":"number"},"FullInitMarginReq-C":{"type":"number"},"FullInitMarginReq-S":{"type":"number"},"FullMaintMarginReq":{"type":"number"},"FullMaintMarginReq-C":{"type":"number"},"FullMaintMarginReq-S":{"type":"number"},"GrossPositionValue":{"type":"number"},"GrossPositionValue-C":{"type":"number"},"GrossPositionValue-S":{"type":"number"},"IndianStockHaircut":{"type":"number"},"IndianStockHaircut-C":{"type":"number"},"IndianStockHaircut-S":{"type":"number"},"InitMarginReq":{"type":"number"},"InitMarginReq-C":{"type":"number"},"InitMarginReq-S":{"type":"number"},"InsuredDeposit":{"type":"number"},"InsuredDeposit-C":{"type":"number"},"InsuredDeposit-S":{"type":"number"},"LookAheadAvailableFunds":{"type":"number"},"LookAheadAvailableFunds-C":{"type":"number"},"LookAheadAvailableFunds-S":{"type":"number"},"LookAheadExcessLiquidity":{"type":"number"},"LookAheadExcessLiquidity-C":{"type":"number"},"LookAheadExcessLiquidity-S":{"type":"number"},"LookAheadInitMarginReq":{"type":"number"},"LookAheadInitMarginReq-C":{"type":"number"},"LookAheadInitMarginReq-S":{"type":"number"},"LookAheadMaintMarginReq":{"type":"number"},"LookAheadMaintMarginReq-C":{"type":"number"},"LookAheadMaintMarginReq-S":{"type":"number"},"MaintMarginReq":{"type":"number"},"MaintMarginReq-C":{"type":"number"},"MaintMarginReq-S":{"type":"number"},"NetLiquidation":{"type":"number"},"NetLiquidation-C":{"type":"number"},"NetLiquidation-S":{"type":"number"},"NetLiquidationUncertainty":{"type":"number"},"PASharesValue":{"type":"number"},"PASharesValue-C":{"type":"number"},"PASharesValue-S":{"type":"number"},"PostExpirationExcess":{"type":"number"},"PostExpirationExcess-C":{"type":"number"},"PostExpirationExcess-S":{"type":"number"},"PostExpirationMargin":{"type":"number"},"PostExpirationMargin-C":{"type":"number"},"PostExpirationMargin-S":{"type":"number"},"RegTEquity":{"type":"number"},"RegTEquity-S":{"type":"number"},"RegTMargin":{"type":"number"},"RegTMargin-S":{"type":"number"},"SMA":{"type":"number"},"SMA-S":{"type":"number"},"TotalCashValue":{"type":"number"},"TotalCashValue-C":{"type":"number"},"TotalCashValue-S":{"type":"number"}},"type":"object"}},"type":"object"}}},"description":"Returns object for account summary with multiple properties. \nA property is sufficed with -c if it provides commodity value, -s if it provides security value, and -c if its UKL segment value. \n\"These values correspond to the TWS Account Window: https://www.interactivebrokers.com/en/software/tws/usersguidebook/realtimeactivitymonitoring/account_window.htm\"\n"},"202":{"description":"Unsuccessfull response"},"204":{"description":"Unsuccessfull response"},"400":{"description":"Unsuccessfull response"},"401":{"description":"Unsuccessfull response"},"403":{"description":"Unsuccessfull response"},"408":{"description":"Unsuccessfull response"}},"summary":"Account Values Summary","tags":["Account & Portfolio"]}},"/accounts/{account}/trades":{"get":{"description":"Returns a list of trades for the account starting at the given 'since' date to the current time (now()). Timezone is UTC. Any request with a future since date or going further than one week will result in an HTTP 400 bad request response. Calling /trades without since will return all trades for the past 24 hours.\n","requestBody":{"content":{"application/json":{"schema":{"type":"string"}}},"description":"Start time specified in UTC. Allowed formats are \"yyyy-MM-dd\" or \"yyyy-MM-dd'T'HH:mm:ss\". Time is optional and is set to midnight if omitted, e.g. \"00:00:00 hh:mm:ss\".\n"},"responses":{"200":{"content":{"application/json":{"schema":{"items":{"properties":{"AvgPrice":{"type":"number"},"Commission":{"type":"number"},"CommissionCurrency":{"type":"string"},"ContractId":{"type":"number"},"Currency":{"type":"string"},"CustomerOrderId":{"type":"number"},"ExecId":{"type":"string"},"ExecutionTime":{"type":"string"},"FilledQuantity":{"type":"number"},"LastMarket":{"type":"string"},"ListingExchange":{"type":"string"},"OrderId":{"type":"string"},"OrderType":{"$ref":"#/components/schemas/orderType"},"Quantity":{"type":"number"},"RemainingQuantity":{"type":"number"},"Side":{"enum":[1,2],"type":"string"},"Ticker":{"type":"string"},"TradePrice":{"type":"number"},"TradeSize":{"type":"number"}},"type":"object"},"type":"array"}}},"description":"List of Trades"},"202":{"description":"Unsuccessfull response"},"204":{"description":"Unsuccessfull response"},"400":{"description":"Unsuccessfull response"},"401":{"description":"Unsuccessfull response"},"403":{"description":"Unsuccessfull response"},"408":{"description":"Unsuccessfull response"}},"summary":"Returns trades in account","tags":["Trades"]},"parameters":[{"description":"Account Number","in":"path","name":"account","required":true,"schema":{"type":"string"}}]},"/marketdata/exchange_components":{"get":{"description":"This endpoint provides a bit mapping for the bid/ask/last 'market' values in the snapshot response. ","responses":{"200":{"content":{"application/json":{"schema":{"items":{"properties":{"Complete":{"type":"boolean"},"ConId":{"type":"number"},"mapping":{"items":{"properties":{"bit":{"type":"number"},"code":{"type":"string"},"exchange":{"type":"string"}},"type":"object"},"type":"array"}},"type":"object"},"type":"array"}}},"description":"Exchange Components"},"400":{"description":"Unsuccessfull response"},"401":{"description":"Unsuccessfull response"},"403":{"description":"Unsuccessfull response"},"408":{"description":"Unsuccessfull response"}},"summary":"Exchange Components","tags":["Market Data"]}},"/marketdata/snapshot":{"get":{"description":"This endpoint allows the consumer to request a market data snapshot for one or more trading products. \nConsumers need to provide unique identifiers (conids) for the products in the IB product database (retrievable using the /secdef endpoint). The 'market' values are integers whose bits indicate the exchange(s) making up the quote. \n\nThe mapping of bit to exchange is obtained from the marketdata/exchange_component endpoint. For example, if a bid has a 'market' value of 5 and the exchange_component result has the map \n0 => NYSE, 1 => ISLAND, 2 => ARCA then the exchanges contributing to the bid size are NYSE and ARCA. \n\nSimilarly, if market=2, then only ISLAND is contributing.\n","requestBody":{"content":{"application/json":{"schema":{"items":{"properties":{"conid":{"description":"The internal IB identifier for the trading product specified as an integer.","type":"number"},"currency":{"description":"The currency in which the given pair trades.","type":"string"},"exchange":{"description":"The exchange on which the trading product is listed (required for type=STK).","type":"string"},"symbol":{"description":"The symbol that identifies the trading product.","type":"string"},"type":{"description":"The instrument type of the contract (CASH).","type":"string"}},"type":"object"},"type":"array"}}},"description":"Contract. Allowed combinations are [type and symbol and currency], or [type, symbol, exchange, and currency], or [conid].","required":true},"responses":{"200":{"content":{"application/json":{"schema":{"items":{"properties":{"Bid":{"properties":{"market":{"type":"number"},"price":{"type":"number"},"size":{"type":"number"}},"type":"object"},"Closing":{"properties":{"price":{"type":"number"}},"type":"object"},"Complete":{"type":"boolean"},"Conid":{"type":"string"},"Offer":{"properties":{"market":{"type":"number"},"price":{"type":"number"},"size":{"type":"number"}},"type":"object"},"Temporality":{"description":"0 = Real time data\n1 = Delayed data\n","enum":[0,1],"type":"number"},"Trade":{"properties":{"market":{"type":"number"},"price":{"type":"number"},"size":{"type":"number"},"time":{"type":"number"}},"type":"object"}},"type":"object"},"type":"array"}}},"description":"Financial Instrument Definition"},"400":{"description":"Unsuccessfull response"},"401":{"description":"Unsuccessfull response"},"403":{"description":"Unsuccessfull response"},"408":{"description":"Unsuccessfull response"}},"summary":"Market Data Snapshot","tags":["Market Data"]}},"/oauth/access_token":{"post":{"description":"Obtain an access token using the request token and the verification code you received after the user provided authorization. See section 6.3 of the OAuth v1.0a specification for more details. \n","requestBody":{"content":{"application/json":{"schema":{"properties":{"oauth_consumer_key":{"description":"The 25-character hexadecimal string that was obtained from Interactive Brokers during the OAuth consumer registration process.","type":"string"},"oauth_nonce":{"description":"A random string uniquely generated for each request.","type":"string"},"oauth_signature":{"description":"The signature for the request generated using the method specified in the oauth_signature_method parameter. See section 9 of the OAuth v1.0a specification for more details on signing requests.","type":"string"},"oauth_signature_method":{"description":"The signature method used to sign the request. Currently only 'RSA-SHA256' is supported.","type":"string"},"oauth_timestamp":{"description":"Timestamp expressed in seconds since 1/1/1970 00:00:00 GMT. Must be a positive integer and greater than or equal to any timestamp used in previous requests.","type":"string"},"oauth_token":{"description":"The request token obtained from IB via /request_token.","type":"string"},"oauth_verifier":{"description":"The verification code received from IB after the user has granted authorization.","type":"string"}},"type":"object"}}},"description":"OAuth Parameters","required":true},"responses":{"200":{"content":{"application/json":{"schema":{"properties":{"oauth_token":{"type":"string"},"oauth_token_secret":{"type":"string"}},"type":"object"}}},"description":"Access token and token secret"},"400":{"description":"Unsuccessfull response"},"401":{"description":"Unsuccessfull response"},"403":{"description":"Unsuccessfull response"},"408":{"description":"Unsuccessfull response"}},"summary":"Obtain a access token","tags":["OAuth"]}},"/oauth/live_session_token":{"post":{"description":"In order to access protected IB resources, a live session token is required. This endpoint allows consumers to obtain a live session token to access these resources using an OAuth access token and the Diffie-Hellman prime and generator supplied during the registration process.\nNote this is an additional IB-specific step, and not part of the OAuth v1.0a specification. Please refer to the \"OAuth at Interactive Brokers\" document for more details. https://www.interactivebrokers.com/webtradingapi/oauth.pdf\n","requestBody":{"content":{"application/json":{"schema":{"properties":{"diffie_hellman_challenge":{"description":"Challenge value calculated using the Diffie-Hellman prime and generated provided during the registration process. See the \"OAuth at Interactive Brokers\" document for more details. \n","type":"string"},"oauth_consumer_key":{"description":"The 25-character hexadecimal string that was obtained from Interactive Brokers during the OAuth consumer registration process.","type":"string"},"oauth_nonce":{"description":"A random string uniquely generated for each request.","type":"string"},"oauth_signature":{"description":"The signature for the request generated using the method specified in the oauth_signature_method parameter. See section 9 of the OAuth v1.0a specification for more details on signing requests.","type":"string"},"oauth_signature_method":{"description":"The signature method used to sign the request. Currently only 'RSA-SHA256' is supported.","type":"string"},"oauth_timestamp":{"description":"Timestamp expressed in seconds since 1/1/1970 00:00:00 GMT. Must be a positive integer and greater than or equal to any timestamp used in previous requests.","type":"string"},"oauth_token":{"description":"The request token obtained from IB via /request_token.","type":"string"}},"type":"object"}}},"description":"OAuth Parameters","required":true},"responses":{"200":{"content":{"application/json":{"schema":{"properties":{"diffie_hellman_response":{"type":"string"},"live_session_token_signature":{"type":"string"}},"type":"object"}}},"description":"DH response"},"400":{"description":"Unsuccessfull response"},"401":{"description":"Unsuccessfull response"},"403":{"description":"Unsuccessfull response"},"408":{"description":"Unsuccessfull response"}},"summary":"Obtain a live session token","tags":["OAuth"]}},"/oauth/request_token":{"post":{"description":"Obtain a request token. See section 6.1 of the OAuth v1.0a specification for more information. http://oauth.net/core/1.0a/#auth_step1\n\nNote we do not return an oauth_token_secret in the response as we are using RSA signatures rather than PLAINTEXT authentication. \n","requestBody":{"content":{"application/json":{"schema":{"properties":{"oauth_callback":{"description":"An absolute URL to which IB will redirect the user. This URL is provided by the consumer during registration. This parameter must be set to 'oob'. ","type":"string"},"oauth_consumer_key":{"description":"The 25-character hexadecimal string that was obtained from Interactive Brokers during the OAuth consumer registration process.","type":"string"},"oauth_nonce":{"description":"A random string uniquely generated for each request.","type":"string"},"oauth_signature":{"description":"The signature for the request generated using the method specified in the oauth_signature_method parameter. See section 9 of the OAuth v1.0a specification for more details on signing requests.","type":"string"},"oauth_signature_method":{"description":"The signature method used to sign the request. Currently only 'RSA-SHA256' is supported.","type":"string"},"oauth_timestamp":{"description":"Timestamp expressed in seconds since 1/1/1970 00:00:00 GMT. Must be a positive integer and greater than or equal to any timestamp used in previous requests.","type":"string"}},"type":"object"}}},"description":"OAuth Parameters","required":true},"responses":{"200":{"content":{"application/json":{"schema":{"properties":{"oauth_token":{"type":"string"}},"type":"object"}}},"description":"OAuth token"},"400":{"description":"Unsuccessfull response"},"401":{"description":"Unsuccessfull response"},"403":{"description":"Unsuccessfull response"},"408":{"description":"Unsuccessfull response"}},"summary":"Obtain a request token","tags":["OAuth"]}},"/secdef":{"get":{"description":"Fields that compose security definition. Allowed combinations,\n(1) type and symbol and currency, or\n(2) type, symbol, exchange, and currency, or\n(3) conid\n","requestBody":{"content":{"application/json":{"schema":{"properties":{"conid":{"description":"The internal IB identifier for the trading product specified as an integer.","type":"number"},"currency":{"description":"The currency in which the given pair trades.","type":"string"},"exchange":{"description":"The exchange on which the trading product is listed (required for type=STK).","type":"string"},"symbol":{"description":"The symbol that identifies the trading product.","type":"string"},"type":{"description":"The instrument type of the contract (CASH).","type":"string"}},"type":"object"}}},"description":"Order Parameters","required":true},"responses":{"200":{"content":{"application/json":{"schema":{"items":{"properties":{"CompanyName":{"type":"string"},"ContractId":{"type":"number"},"Currency":{"type":"string"},"Exchange":{"type":"string"},"SecurityType":{"type":"string"},"Ticker":{"type":"string"}},"type":"object"},"type":"array"}}},"description":"Financial Instrument Definition"},"202":{"description":"Unsuccessfull response"},"204":{"description":"Unsuccessfull response"},"400":{"description":"Unsuccessfull response"},"401":{"description":"Unsuccessfull response"},"403":{"description":"Unsuccessfull response"},"408":{"description":"Unsuccessfull response"}},"summary":"Get security definition","tags":["Financial Instrument Definitions"]}}},"components":{"schemas":{"orderState":{"description":"An object containing all the properties defining an order","properties":{"ContractId":{"type":"number"},"CustomerOrderId":{"type":"number"},"FilledQuantity":{"type":"number"},"ListingExchange":{"type":"string"},"OrderType":{"$ref":"#/components/schemas/orderType"},"OutsideRTH":{"type":"string"},"Price":{"type":"number"},"RemainingQuantity":{"type":"number"},"Side":{"enum":[1,2],"type":"string"},"Status":{"$ref":"#/components/schemas/orderStatus"},"Ticker":{"type":"string"},"TimeInForce":{"$ref":"#/components/schemas/timeInForce"},"TransactionTime":{"type":"string"},"Warning":{"type":"string"}},"type":"object"},"orderStatus":{"description":"Status of the order\nInvalidOrderStatus = '-1'\nNew = '0'\nPartiallyFilled = '1'\nFilled = '2'\nDoneForTheDay = '3'\nCanceled = '4'\nReplaced = '5'\nPendingCancelReplace = '6'\nStopped = '7'\nRejected = '8'\nSuspended = '9'\nPendingNew = 'A'\nCalculated = 'B'\nExpired = 'C'\nAcceptedForBidding = 'D'\nPendingReplace = 'E'\n","enum":["-1","0","1","2","3","4","5","6","7","8","9","A","B","C","D","E"],"type":"string"},"orderType":{"description":"Market = '1'\nLimit = '2'\nStop = '3'\nStopLimit = '4'\n","enum":[1,2,3,4],"type":"number"},"timeInForce":{"description":"Defines order's active lifetime.\nDay = '0'\nGTC (Good till Cancel) = '1'\nIOC (Immediate or Cancel) = '3'\nOpen = '2'\nClose = '7'\n","enum":[0,1,2,3,7],"type":"number"}},"securitySchemes":{"cookieAuth":{"in":"header","name":"portal","type":"apiKey"}}}}