No write permission(s) for field(s): eco_temperature_low_f, eco_temperature_high_f


#1

I am trying to set eco temperature range using REST API and I have granted read/write permissions for Thermostat to the product, but I get response:

{
    "error": "No write permission(s) for field(s): eco_temperature_low_f",
    "type": "https://developer.nest.com/documentation/cloud/error-messages#no-write-permission",
    "message": "No write permission(s) for field(s): eco_temperature_low_f",
    "instance": "xxxxxxxxx",
    "details": {
        "fields": "eco_temperature_low_f"
    }
}

when i send request:

curl -L -X PUT \
    -H "Content-Type: application/json" \
    -H "Authorization: Bearer c.XXXXXX" \
    -d '{"eco_temperature_low_f": 68}' \
    "https://developer-api.nest.com/devices/thermostats/xxxxxx"

Originally, the product only had read permissions for the Thermostat part of API, but I updated the permission and got a new bearer token via OAUTH.

I even created a new product with the read/write Thermostat permissions and authenticated the app using that client id/product secret and I get the same permissions error.


#2

Eco temperatures cannot be written through the API, they are always read-only.

https://developers.nest.com/documentation/cloud/api-thermostat#eco_temperature_high_f


#3

How does the Nest iphone app set eco temperatures?


#4

The Nest apps do not use the Works with Nest API.


#5

Then what methods does Nest apps use to set eco temps?

Also, if setting eco temps is something we are allowed to do with Nest apps, why are we not allowed to do it through the API?