action netatmo_getthermostatsdata { label: "getthermostatsdata" description: "The method getthermostatsdata returns information about user's thermostats such as their last measurements." provider: netatmo method: GET path: "/getthermostatsdata" encoding: json input: { type: "object" properties: { device_id: { type: "string" } } additionalProperties: false } output: { properties: { body: { properties: { devices: { type: "array" items: { properties: { _id: { type: "string" } firmware: { type: "integer" format: "int32" } last_bilan: { properties: { m: { type: "integer" format: "int32" } y: { type: "integer" format: "int32" } } } last_plug_seen: { type: "integer" format: "int32" } last_status_store: { type: "integer" format: "int32" } modules: { type: "array" items: { properties: { _id: { type: "string" } battery_percent: { type: "integer" format: "int32" description: "It contains the current battery level in percentage." } battery_vp: { type: "integer" format: "int32" description: "It contains the current battery status. The threshold depends on the kind of module, below is the list of the different threshold to take into account according the module type.\n\"Indoor module Battery range: 6000 ... 4200\" |\nINDOOR_BATTERY_LEVEL_FULL = 5640\nINDOOR_BATTERY_LEVEL_HIGH = 5280\nINDOOR_BATTERY_LEVEL_MEDIUM = 4920\nINDOOR_BATTERY_LEVEL_LOW = 4560\n\"Below 4560: very low\" |\n \n\"Raingauge and outdoor module Battery range: 6000 ... 3600\" |\nBATTERY_LEVEL_FULL = 5500\nBATTERY_LEVEL_HIGH = 5000\nBATTERY_LEVEL_MEDIUM = 4500\nBATTERY_LEVEL_LOW = 4000\n\"Below 4000: very low\" |\n \n\"Thermostat Battery range: 4500 ... 3000\" |\nTHERMOSTAT_BATTERY_LEVEL_FULL = 4100\nTHERMOSTAT_BATTERY_LEVEL_HIGH = 3600\nTHERMOSTAT_BATTERY_LEVEL_MEDIUM = 3300\nTHERMOSTAT_BATTERY_LEVEL_LOW = 3000\n\"Below 3000: very low\"\n" } firmware: { type: "integer" format: "int32" } last_message: { type: "integer" format: "int32" } last_therm_seen: { type: "integer" format: "int32" } measured: { properties: { setpoint_temp: { type: "number" format: "float" } temperature: { type: "number" format: "float" } time: { type: "integer" format: "int32" } } } module_name: { type: "string" } rf_status: { type: "integer" format: "int32" description: "\"It contains the current radio status. The different thresholds to take into account are :\" |\nRADIO_THRESHOLD_SIGNAL_LOW = 90 \nRADIO_THRESHOLD_SIGNAL_MEDIUM = 80\nRADIO_THRESHOLD_SIGNAL_HIGH = 70\nRADIO_THRESHOLD_SIGNAL_FULL = 60\n" } setpoint: { properties: { setpoint_endtime: { type: "integer" format: "int32" } setpoint_mode: { type: "string" } setpoint_temp: { type: "number" format: "float" } } } setpoint_history: { type: "array" description: "The last 20 setpoints (mode, endtime, and timestamp) the thermostats has entered." items: { properties: { setpoint: { type: "object" additionalProperties: true } timestamp: { type: "object" additionalProperties: true } } } } setpoint_order: { type: "object" additionalProperties: true } therm_orientation: { type: "integer" format: "int32" } therm_program_list: { type: "array" description: "List of the weekly heating planning used by the thermostat" items: { properties: { name: { type: "object" additionalProperties: true } program_id: { type: "object" additionalProperties: true } selected: { type: "object" additionalProperties: true } timetable: { type: "object" additionalProperties: true } zones: { type: "object" additionalProperties: true } } } } therm_relay_cmd: { type: "integer" format: "int32" } type: { type: "string" description: "Included in every device or module. It defines the type of the device/module. Its values are among :\nNAMain : for the base station\nNAModule1 : for the outdoor module\nNAModule4 : for the additionnal indoor module\nNAModule3 : for the rain gauge module\nNAPlug : for the thermostat relay/plug\nNATherm1 : for the thermostat module\n" } } } } place: { properties: { altitude: { type: "number" format: "float" } city: { type: "string" } country: { type: "string" } from_ip: { type: "boolean" } improveLocProposed: { type: "boolean" } location: { type: "array" items: { type: "number" format: "double" } } timezone: { type: "string" } trust_location: { type: "boolean" } } } plug_connected_boiler: { type: "integer" format: "int32" } station_name: { type: "string" } syncing: { type: "boolean" } type: { type: "string" description: "Included in every device or module. It defines the type of the device/module. Its values are among :\nNAMain : for the base station\nNAModule1 : for the outdoor module\nNAModule4 : for the additionnal indoor module\nNAModule3 : for the rain gauge module\nNAPlug : for the thermostat relay/plug\nNATherm1 : for the thermostat module\n" } udp_conn: { type: "boolean" } wifi_status: { type: "integer" format: "int32" description: "It contains the current wifi status. The different thresholds to take into account are\nRSSI_THRESHOLD_0 = 86 bad signal\nRSSI_THRESHOLD_1 = 71 middle quality signal\nRSSI_THRESHOLD_2 = 56 good signal\n" } } } } user: { properties: { _id: { type: "string" } administrative: { properties: { country: { type: "string" description: "user country" } feel_like_algo: { type: "string" description: "algorithm used to compute feel like temperature, 0 -> humidex, 1 -> heat-index" } lang: { type: "string" description: "user locale" } pressureunit: { type: "string" description: "0 -> mbar, 1 -> inHg, 2 -> mmHg" } reg_locale: { type: "string" description: "user regional preferences (used for displaying date)" } unit: { type: "string" description: "0 -> metric system, 1 -> imperial system" } windunit: { type: "string" description: "0 -> kph, 1 -> mph, 2 -> ms, 3 -> beaufort, 4 -> knot" } } } date_creation: { properties: { sec: { type: "integer" format: "int32" } usec: { type: "integer" format: "int32" } } } devices: { type: "array" description: "An array of string containing the ids of the devices owned by the user" items: { type: "string" } } friend_devices: { type: "array" description: "An array of string containing the ids of the devices on which the user has a \"guest\" access\n" items: { type: "string" } } mail: { type: "string" } timeline_not_read: { type: "integer" format: "int32" } timeline_size: { type: "integer" format: "int32" } } } } } status: { type: "string" } time_exec: { type: "number" format: "double" } time_server: { type: "integer" format: "int32" } } } }