I'd say go Ecobee unless you can't.
Ecobee has a published API that works reasonably well. The biggest issue users have with it is that it really is a "smart" thermostat and trying to control it like a dumb thermostat is going to be an exercise in frustration. So monitoring works fine, as do short-term overrides. But total control of the schedule from Indigo is going to take diligence in initial setup and command discipline.
Trane (Nexia, really) is a much more straightforward traditional schedule-based system. But it's a reverse-engineered API that depends on screen-scraping to obtain the authentication credentials. The ONLY reason I have the system (and wrote the plugin) is that the high-efficiency variable speed compressor and air handler we installs requires their thermostat. It uses a data bus communication with the air handler, not the standard multi-wire 24V system that Ecobee and Nest and everyone else supports.
The website and mobile app work fine, and it does Z-wave on it's own so you can use it as a smart home hub. But that doesn't help with Indigo.
I still use Ecobee for the two 1.5 ton units. It's Florida - for 4000 sqft we have (1) 5 ton and (2) 1.5 ton units.
Ecobee has been quite reliable, ever since I rewrote the original plugin to handle the authentication tokens properly. I get an error in the middle of the night fairly regularly, because I never figured out how to detect when the servers are down for daily maintenance. But the plugin connects when they come back up, so no big deal. The wall unit is one of the most attractive out there, IMO, and the remotes are quite small and very easy to add to the system.
Adding a remote sensor to the Trane system is a pain in the rear. Typical obscure service menus and so on.
So, unless you absolutely need a manufacturer specific thermostat (like the variable speed units do), I wouldn't hesitate to use Ecobee. I had four units in the house before we did the big unit changeout.