I have tried TWS and IB gateway , but they all are base on the GUI to configure and restart. I wonder how to set a headless service using IB API without GUI ?
My two cents are don't use IBC as it adds a level of complexity that is unwarranted. Instead, use IB in a docker environment, configure IB to restart automatically every evening and use VNC to log in once a week: https://github.com/mvberg/ib-gateway-docker
How does this package handle the two factor authentication? For example the challenge-response sequence?
Does this mean that you don't need access to your computer to complete the login? You receive a message on your phone and reply on your phone to complete the login procedure? Or do you still need to have access to your computer? By the way: you mentioned in a previous post that you don't like to use IBC, as it "adds a layer of complexity". However, your Docker solution is using IBC. So implicitly you are using it.
I need access to the computer to enter the username/password. For me, it's not a big deal, I do it over the phone if I am not at the computer. I just don't feel secure leaving the username/password unencrypted at rest even with 2FA. Regarding the link to the project, you're right. I used that as a base and made my own dockerfile so I removed IBC.
By the way, this could be a good approach eventually: I could possibly also use it to parameterize algorithms.