Skip to main content

Pretty Good Hat

Using the Ecobee API

A little over a year ago, in a fit of pique over the thought of re-learning how to program my obtuse thermostat when its batteries died (again), I replaced my thermostat with an Ecobee 3. It’s great, for all the reasons people say.1

That’s not what this post is about, though. The Ecobee web site offers a timeline that shows furnace activity, which I like to check out. But I don’t love logging in to Ecobee site and clicking through three screens to get, so I spent several hours learning how to use the Ecobee API to download the same data and plot it for myself.

In the above plot, the red/orange line is the inside temperature, and red is where the furnace is burning. The horizontal grey lines indicate the temperature set by the thermostat, and the blue line is the outdoor temperature. This is basically equivalent to the way ecobee presents this data in their control panel, with the exception that they just show a horizontal bar above the entire plot to show when the furnace is burning or fan is on. I prefer to have that integrated so I don’t have to scan up and down to track furnace time against temperature. And of course, I don’t have to log in and click through to get to my picture, because it’s sitting on my web server and refreshed every fifteen minutes (which is the data refresh interval from ecobee).

Usually you can see a normal cycle of warming up in the morning, then fluctuating around the set range as the outside temperature increases during the day, until cooling to a low temp threshold all night long. Here you can see where I inadvertently set the “away for now” setting and forgot to disable it, so the temp hovered right at 62ºF for a day, repeatedly warming and cooling around that range until I realized what was happening and switched it back to normal mode.

I think it’s all pretty cool.

You can do a ton more with the ecobee API, including set the temperature. I may play with that in the future: I’d like to have a quick command to, say, boost the temp by just two degrees for half an hour. Having quick access to a shortcut that would do that for me would be pretty cool.


  1. I know people love the Nest, but for me the Ecobee is superior: For one, it can be wired more flexibly than the Nest, allowing for full operation without “power siphoning,” even with a three-wire thermostat line (disclaimer: this requires jumping the fan and burner wires – which was quite fine at my place until I got around to running more wire). And it comes with a remote temperature/motion sensor for more comprehensive temperature monitoring, which, thanks to a recent firmware release, can also be hooked into HomeKit for motion sensing events. ↩︎