- Solve real problems with our hands-on interface
- Progress from basic puts and calls to advanced strategies

Posted October 27, 2025 at 2:08 pm
Following a recent survey produced by the Interactive Brokers API Development team, we found widespread interest amongst our users in a synchronous variant of the TWS API / IBAPI package. In an effort to resolve customer concerns on the matter, we have provided the newly produced “sync-wrapper” package through the Python content within the TWSAPI download from https://interactivebrokers.github.io/. This will be available in the Latest release, 10.40, and beyond. We will also be including the “sync-tester.py” file in our Samples directory which showcases an implementation for all available features. Users looking for more information on the difference between Synchronous and Asynchronous should check out our article at https://www.interactivebrokers.com/campus/ibkr-quant-news/understanding-asynchronous-libraries-with-the-tws-api/.
The Sync Wrapper offers a new implementation structure adhering to a synchronized user experience. As an example, users may create a request like ‘x = app.reqHistoricalData(contract, end_date_time=””, duration_str=”1 W”, bar_size_setting=”1 day”, what_to_show=”TRADES”, use_rth=True)’. And in this scenario, ‘x’ will return a list of the bar objects for the duration.
On that note, much of the functionality is carried over from the original ibapi. Objects, such as Contract, Order, Bar and so on are still utilized within the Sync Wrapper implementation, with the primary shift in functionality focusing on the long-time asynchronous approach. The new wrapper structure currently maintains a limited scope of functionality, focusing on alternatives for our reqMktData, reqHistoricalData, along with execution and portfolio monitoring. Importing the Sync Wrapper will import the structures from ibapi.client and ibapi.wrapper, so users may still reference all asynchronous functions not otherwise included to reference as needed.
The Sync Wrapper is currently in a Beta state that we welcome clients test with using Paper Trading Accounts. We welcome feedback from users in our Github either as Pull Requests or by raising Issues. Users may sign up for the private Github repository by visiting https://interactivebrokers.github.io/api_software_contribute.html. The Synchronous API is fully documented within our IBKR Campus space at https://www.interactivebrokers.com/campus/ibkr-api-page/twsapi-doc/#sync-api. For any further questions on the implementation, please do not hesitate to reach out to our Customer Service team, detailed at https://www.ibkrguides.com/complianceportal/creatingaticket.htm.
The analysis in this material is provided for information only and is not and should not be construed as an offer to sell or the solicitation of an offer to buy any security. To the extent that this material discusses general market activity, industry or sector trends or other broad-based economic or political conditions, it should not be construed as research or investment advice. To the extent that it includes references to specific securities, commodities, currencies, or other instruments, those references do not constitute a recommendation by IBKR to buy, sell or hold such investments. This material does not and is not intended to take into account the particular financial conditions, investment objectives or requirements of individual customers. Before acting on this material, you should consider whether it is suitable for your particular circumstances and, as necessary, seek professional advice.
The views and opinions expressed herein are those of the author and do not necessarily reflect the views of Interactive Brokers, its affiliates, or its employees.
Throughout the lesson, please keep in mind that the examples discussed are purely for technical demonstration purposes, and do not constitute trading advice. Also, it is important to remember that placing trades in a paper account is recommended before any live trading.
The order types available through Interactive Brokers LLC's Trader Workstation are designed to help you limit your loss and/or lock in a profit. Market conditions and other factors may affect execution. In general, orders guarantee a fill or guarantee a price, but not both. In extreme market conditions, an order may either be executed at a different price than anticipated or may not be filled in the marketplace.
Join The Conversation
For specific platform feedback and suggestions, please submit it directly to our team using these instructions.
If you have an account-specific question or concern, please reach out to Client Services.
We encourage you to look through our FAQs before posting. Your question may already be covered!