Example 4: Obtaining the current furnace status
Note on token authentication:
If you have completed the authentication process from Example 1, your access token will be pre-populated in all requests throughout every example.
To specify a different access token, please paste it in the form below and press 'Update'. Alternatively, you can go back to the first example here to re-authenticate. Doing either will save your access token for all future examples.
To determine whether the furnace is running or not, we will need to make use of the GET Thermostat Summary request. This request also uses the Selection object, with the includeEquipmentStatus set to true.
curl -s -H 'Content-Type: text/json' -H 'Authorization: Bearer ACCESS_TOKEN' 'https://api.ecobee.com/1/thermostatSummary?json=\{"selection":\{"selectionType":"registered","selectionMatch":"","includeEquipmentStatus":true\}\}'
The response will contain a list of thermostats and its revision and status lists. The status list is keyed by the thermostat identifier, followed by a comma separated values list. This list indicates which equipment is currently on. If the list is empty, then this means no equipment is currently operating.
{ "thermostatCount": 1, "revisionList": [ "318324666666:Main Floor:true:150212154942:150202090801:150212155501:150212154000" ], "statusList": [ "318324666666:auxHeat1,fan" ], "status": { "code": 0, "message": "" } }
The above status list indicates that equipments, auxHeat1 and fan are currently in operation. If no equipment is operating, then you will see:
{ "thermostatCount": 1, "revisionList": [ "318324666666:Main Floor:true:150212154942:150202090801:150212155501:150212154000" ], "statusList": [ "318324666666:" ], "status": { "code": 0, "message": "" } }
For more information about the statusList, please refer to the GET Thermostat Summary .
Now that we've been able to get some thermostat properties, let us see how we can change the thermostat settings with our next example.