IB Logo

API Software


The most up-to-date version of Interactive Brokers API source code is hosted on Github as a private repository. We refer to this as our "beta client" although it doesn’t use formal release numbers as do our "Latest" and "Stable" API versions. This code is frequently updated with new features and functionality, and periodically the API source code in this private repository is published as a new version of API Latest. Users can gain access to the Github repository to view the current Beta API source code as well as to contribute suggestions and source code. Our goal in allowing our users to contribute is to improve the reliability and versatility of the API for everyone.

How to Access and Contribute to the API Beta

Each step is explained in the text below.

  1. Sign a license agreement and get added to the project.
  2. Create and download a working copy of the TWS API repository.
  3. Create a local branch and make the desired changes.
  4. Commit the changes and issue a pull request.

Sign license agreement and get added to the project

Create a GitHub username if necessary by going to http://www.github.com and clicking the "Sign up for Github" button.

Once you have a GitHub username, click the button below to request a license agreement. You will receive an email with the agreement; respond by filling out the form with your GitHub username and your full name and address to signify that you accept the license agreement. Use "Reply" to send the completed email form back. We will then add permissions so you can access the project.

Request License Agreement

 

Create and download a working copy of the repository

Go to the TWS API repository http://github.com/InteractiveBrokers/tws-api and click the "Fork" button in the upper right corner. This creates a working copy of the repository that you can download and change.

Download the Git client for your operating system here http://git-scm.com/downloads and run it.

Clone the forked repository you created to your local computer by using the git clone command. It will look something like this:

git clone https://github.com/username/tws-api twsapi1

where username is your GitHub username and twsapi1 is a name you pick for the repository on your computer.

For Java specific instructions click here.

 

Create a branch and make the desired changes

Create a branch where your new features will go:

git checkout -b mybranch

where mybranch is whatever name you choose.

 

Commit the changes and issue a pull request

Stage, commit, and push the changed files back up to your forked repository on GitHub using the git add, commit, and push commands. Refer to the Git manual if necessary: http://git-scm.com/docs

Go to your forked repository on GitHub and submit a Pull Request by clicking the "Pull Request" button. IB, and possibly other developers as well, will evaluate your changes and discuss them on the designated forum, accessible here https://github.com/InteractiveBrokers/tws-api/issues. If the changes are deemed to be beneficial, they will be incorporated into the main branch and into future releases of the API.