{"info":{"_postman_id":"8b12fb00-276a-4896-8b64-73af7a5d75df","name":"uHoo APIs for Business Account","description":"<html><head></head><body><p>This document summarizes the APIs for uHoo Business (\"Business\") solution. Note that our server would reject any request from Postman for security purpose, please implement and test the endpoint logic directly on your server / cloud.</p>\n<p>To use the APIs, create a unique client ID using the web dashboard then use it to generate the access token. If you haven't done so, follow the steps below.</p>\n<ol>\n<li>Login <a href=\"https://web.getuhoo.comTap\">https://web.getuhoo.com</a></li>\n<li>Tap the user icon in the top right corner, and go to the 'My Account' page</li>\n<li>Scroll down to the 'API' section, tap 'Generate Client ID', and enter your account password to get the client ID for your application</li>\n<li>Use the /generatetoken endpoint to generate an access token, and use it to get the device list or data</li>\n</ol>\n</body></html>","schema":"https://schema.getpostman.com/json/collection/v2.0.0/collection.json","toc":[],"owner":"180333","collectionId":"8b12fb00-276a-4896-8b64-73af7a5d75df","publishedId":"TzeRopef","public":true,"customColor":{"top-bar":"FFFFFF","right-sidebar":"303030","highlight":"EF5B25"},"publishDate":"2021-06-10T02:56:54.000Z"},"item":[{"name":"Generate access token","event":[{"listen":"test","script":{"id":"94a2e86a-484e-430a-86b2-24b9db92f537","exec":[""],"type":"text/javascript"}}],"id":"c9bbd006-2258-4ebf-b56b-b4cae632de3d","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"POST","header":[],"body":{"mode":"urlencoded","urlencoded":[{"key":"code","value":"xxxxxxxx","type":"text","description":"<p>Copy-paste the client ID from web dashboard</p>\n"}]},"url":"https://api.uhooinc.com/v1/generatetoken","description":"<h2 id=\"description\"><strong>Description</strong></h2>\n<p>Use this API to generate the access token and pass it as a bearer token in the header when calling the /devicelist and /devicedata endpoints. Each access token expires every 600 seconds (i.e. 10 minutes). When an API returns the HTTP status code 403 (forbidden error), generate a new access token and try to access the target resources again. When a new access token is created, our system would automatically invalidate the old access token, thus API calls that use the old token would return the HTTP status code 401 (unauthorized error).</p>\n<h2 id=\"success-response\"><strong>Success Response</strong></h2>\n<ul>\n<li><strong>access_token</strong>: Access token</li>\n<li><strong>token_type</strong>: Bearer authentication</li>\n<li><strong>expires_in</strong>: Token expiration time in seconds</li>\n</ul>\n","urlObject":{"protocol":"https","path":["v1","generatetoken"],"host":["api","uhooinc","com"],"query":[],"variable":[]}},"response":[{"id":"533b1919-f2c8-415e-97f3-9d9cf2dd006a","name":"Success","originalRequest":{"method":"POST","header":[],"body":{"mode":"urlencoded","urlencoded":[{"key":"code","value":"xxxxxxxx","type":"text"}]},"url":"https://api.uhooinc.com/v1/generatetoken"},"_postman_previewlanguage":"json","header":null,"cookie":[],"responseTime":null,"body":"{\n    \"access_token\": \"6f86116375442bf414fb0d7f\",\n    \"refresh_token\": \"f2a00ce7b11b5a68a371c4ce\",\n    \"token_type\": \"Bearer\",\n    \"expires_in\": 600\n}"}],"_postman_id":"c9bbd006-2258-4ebf-b56b-b4cae632de3d"},{"name":"Get device list","id":"aca0931e-a17e-497c-9ab6-1b72422babe6","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"GET","header":[{"key":"Authorization","value":"Bearer xxxxxxxx","description":"<p>Assign \"access_token\" from /generatetoken endpoint</p>\n"}],"body":{"mode":"urlencoded","urlencoded":[]},"url":"https://api.uhooinc.com/v1/devicelist","description":"<h2 id=\"description\"><strong>Description</strong></h2>\n<p>Use this API to get the device MAC addresses for your account and pass it as an input parameter to the POST /devicedata endpoint. We recommend to call it once per hour to ensure information is up to date, especially when you add new devices to the account. When the API count has reached the daily limit, any subsequent API call would return the HTTP status code 400 until the count is reset at midnight UTC time.</p>\n<h2 id=\"success-response\"><strong>Success Response</strong></h2>\n<p>Array of device objects</p>\n<ul>\n<li><p><strong>deviceName</strong>: Device name</p>\n</li>\n<li><p><strong>macAddress</strong>: Device MAC address or IMEI for the SIM version of uHoo Aura</p>\n</li>\n<li><p><strong>serialNumber</strong>: Device serial number</p>\n</li>\n<li><p><strong>floorNumber</strong>: Device floor number</p>\n</li>\n<li><p><strong>roomName</strong>: Device room name</p>\n</li>\n<li><p><strong>timezone</strong>: Device timezone. Note that it doesn't account for daylight saving time, please refer to the <strong>utcOffset</strong> parameter if you want to convert the data timestamp into the local date and time.</p>\n</li>\n<li><p><strong>utcOffset</strong>: Actual offset from UTC in +HH:mm or -HH:mm. Use this parameter to convert the data timestamp into the local date and time.</p>\n</li>\n<li><p><strong>ssid</strong>: Wi-Fi network name</p>\n</li>\n</ul>\n","urlObject":{"protocol":"https","path":["v1","devicelist"],"host":["api","uhooinc","com"],"query":[],"variable":[]}},"response":[{"id":"e8654fbc-3901-4f16-899a-c075db18894f","name":"Success","originalRequest":{"method":"GET","header":[{"key":"Authorization","value":"Bearer xxxxxxxx","description":"Assign \"access_token\" parameter from POST https://api.uhooinc.com/v1/generatetoken endpoint"}],"body":{"mode":"urlencoded","urlencoded":[]},"url":"https://api.uhooinc.com/v1/devicelist"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Connection","value":"keep-alive","description":""},{"key":"Content-Length","value":"36","description":""},{"key":"Content-Type","value":"application/json; charset=utf-8","description":""},{"key":"Date","value":"Mon, 14 Aug 2017 03:35:13 GMT","description":""},{"key":"ETag","value":"W/\"24-+tl55r72zSmx1OqzVAYniw\"","description":""},{"key":"Server","value":"nginx","description":""},{"key":"set-cookie","value":"uhoo.sid=s%3A1iZ3A86gs2_5a7P01x4tTRK8OOx-_yl0.Zh4yvT9hNjsVvPToAoj8fgURHzRfYlPdktFtuIpIdTo; Path=/; HttpOnly","description":""}],"cookie":[{"expires":"Tue Jan 19 2038 03:14:07 GMT+0000 (Coordinated Universal Time)","httpOnly":true,"domain":"api.uhooinc.com","path":"/","secure":false,"value":"s%3A1iZ3A86gs2_5a7P01x4tTRK8OOx-_yl0.Zh4yvT9hNjsVvPToAoj8fgURHzRfYlPdktFtuIpIdTo","key":"uhoo.sid"}],"responseTime":null,"body":"[\n    {\n        \"deviceName\": \"Device 1\",\n        \"macAddress\": \"xxxxxxxxxxxx\",\n        \"serialNumber\": \"xxxxxxxxxxxxxxxxxxxxxxxx\",\n        \"floorNumber\": 1,\n        \"roomName\": \"Office Space\",\n        \"timezone\": \"(UTC-08:00) Pacific Time (US and Canada)\",\n        \"utcOffset\": \"-07:00\",\n        \"ssid\": \"WiFi1\"\n    },\n    {\n        \"deviceName\": \"Device 2\",\n        \"macAddress\": \"xxxxxxxxxxxx\",\n        \"serialNumber\": \"xxxxxxxxxxxxxxxxxxxxxxxx\",\n        \"floorNumber\": 0,\n        \"roomName\": \"Conference Room\",\n        \"timezone\": \"(UTC) Dublin, Edinburgh, Lisbon, London\"\n        \"utcOffset\": \"+00:00\",\n        \"ssid\": \"WiFi2\"\n    },\n        {\n        \"deviceName\": \"Device 3\",\n        \"macAddress\": \"xxxxxxxxxxxx\",\n        \"serialNumber\": \"xxxxxxxxxxxxxxxxxxxxxxxx\",\n        \"floorNumber\": -1,\n        \"roomName\": \"Open Space\",\n        \"timezone\": \"(UTC+08:00) Kuala Lumpur, Singapore\"\n        \"utcOffset\": \"+08:00\",\n        \"ssid\": \"WiFi3\"\n    }\n]"}],"_postman_id":"aca0931e-a17e-497c-9ab6-1b72422babe6"},{"name":"Get device data","id":"a301989d-8845-43bf-8660-9a6846a4275c","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"POST","header":[{"key":"Authorization","value":"Bearer xxxxxxxx","description":"<p>Assign \"access_token\" from /generatetoken endpoint</p>\n"}],"body":{"mode":"urlencoded","urlencoded":[{"key":"macAddress","value":"xxxxxxxxxxxx","type":"text","description":"<p>Assign the \"macAddress\" parameter from /devicelist endpoint</p>\n"},{"key":"mode","value":"minute","type":"text","description":"<p>See notes on \"mode\" parameter</p>\n"},{"key":"prevDateTime","value":"YYYY-MM-DD hh:mm:ss","type":"text","description":"<p>See notes on the optional \"prevDateTime\" parameter</p>\n","disabled":true},{"key":"limit","value":"","description":"<p>See notes on the optional \"limit\" parameter</p>\n","type":"text","disabled":true},{"key":"timestampStart","value":"","description":"<p>See notes on the optional \"timestampStart\" parameter</p>\n","type":"text","disabled":true},{"key":"timestampEnd","value":"","description":"<p>See notes on the optional \"timestampEnd\" parameter</p>\n","type":"text","disabled":true}]},"url":"https://api.uhooinc.com/v1/devicedata","description":"<h2 id=\"description\"><strong>Description</strong></h2>\n<p>Use this API to get the data of any device. When the API count has reached the daily limit, any subsequent API call would return the HTTP status code 400 until the count is reset at midnight UTC time.</p>\n<h2 id=\"recommendation\"><strong>Recommendation</strong></h2>\n<ol>\n<li><p>Call the API every minute to match the data frequency of the devices.</p>\n</li>\n<li><p>Make use of the optional parameters to get data from any date and time.</p>\n</li>\n<li><p>Read the sensor keys from the <strong>sensorlist</strong> object and use them to get the device data from the <strong>data</strong> object, this allows your system to support all sensor configuration of the uHoo Aura without making modifications in the future.</p>\n</li>\n</ol>\n<h2 id=\"supported-parameters\"><strong>Supported Parameters</strong></h2>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th><strong>Name</strong></th>\n<th><strong>Mandatory?</strong></th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td>macAddress</td>\n<td>Yes</td>\n</tr>\n<tr>\n<td>mode</td>\n<td>Yes</td>\n</tr>\n<tr>\n<td>limit</td>\n<td>No</td>\n</tr>\n<tr>\n<td>prevDateTime</td>\n<td>No</td>\n</tr>\n<tr>\n<td>timestampStart</td>\n<td>No</td>\n</tr>\n<tr>\n<td>timestampEnd</td>\n<td>No</td>\n</tr>\n</tbody>\n</table>\n</div><h2 id=\"mandatory-parameters\"><strong>Mandatory Parameters</strong></h2>\n<p><strong>macAddress</strong></p>\n<ul>\n<li>Assign the unique device ID returned by the /devicelist endpoint.</li>\n</ul>\n<p><strong>mode</strong></p>\n<ul>\n<li><p>Supported values: <strong>minute</strong> / <strong>hour</strong> / <strong>day</strong></p>\n</li>\n<li><p><strong>mode = minute</strong></p>\n<ul>\n<li><p>Return the most recent data of a device, or the HTTP status code 404 if device has no data.</p>\n</li>\n<li><p>To get more than 1 data point in one call, specify the number using the <strong>limit</strong> parameter.</p>\n</li>\n<li><p>There are 2 ways to retrieve data from previous hours. Option 1 is to specify the starting date and time using the <strong>prevDateTime</strong> parameter. Option 2 is to specify the time stamp range using the <strong>timestampStart</strong> and <strong>timestampEnd</strong> parameters.</p>\n</li>\n</ul>\n</li>\n<li><p><strong>mode = hour</strong></p>\n<ul>\n<li>Return the minute-by-minute data of the last 60 minutes, or the HTTP status code 404 if device is offline within the last 60 minutes.</li>\n</ul>\n</li>\n<li><p><strong>mode = day</strong></p>\n<ul>\n<li>Return the hourly averages of the last 24 hours, or the HTTP status code 404 if device is offline within the last 24 hours.</li>\n</ul>\n</li>\n</ul>\n<h2 id=\"optional-parameters\"><strong>Optional Parameters</strong></h2>\n<p><strong>limit</strong></p>\n<ul>\n<li><p>Supported values: <strong>5</strong> / <strong>15</strong> / <strong>30</strong>. Only valid when <strong>mode = minute</strong>.</p>\n</li>\n<li><p>Example: if <strong>limit</strong> is set to 15, the API would return data sent within the last 15 minutes assuming the device is online.</p>\n</li>\n<li><p>When <strong>limit</strong> is specified, the API count would increase by the same number instead of by 1 for every API call.</p>\n</li>\n</ul>\n<p><strong>prevDateTime</strong></p>\n<ul>\n<li><p>Supports the ISO 8601 no T format: <strong>YYYY-MM-DD HH:mm:ss</strong></p>\n</li>\n<li><p>Date and time is based on UTC, which is independent of the device location and time zone.</p>\n</li>\n<li><p>If <strong>mode = hour</strong></p>\n<ul>\n<li><p>Specify date and time in YYYY-MM-DD HH:MM:00 format</p>\n</li>\n<li><p>Example: If <strong>prevDateTime = 2023-01-01 08:30:00</strong>, API returns data between \"2023-01-01 08:30:00\" and \"2023-01-01 09:29:59\" in UTC.</p>\n</li>\n<li><p>If <strong>prevDateTime</strong> is not specified, the API would return any data sent within the last 60 minutes, or return an error if the device is offline.</p>\n</li>\n</ul>\n</li>\n<li><p>If <strong>mode = day</strong></p>\n<ul>\n<li><p>Specify date and time in YYYY-MM-DD 00:00:00 format</p>\n</li>\n<li><p>Example: If <strong>prevDateTime = 2023-01-01 00:00:00</strong>, API returns data between \"2023-01-01 00:00:00\" and \"2023-01-01 23:59:59\" in UTC.</p>\n</li>\n<li><p>If <strong>prevDateTime</strong> is not specified, the API would return any data sent within the last 24 hours, or return an error if the device is offline.</p>\n</li>\n</ul>\n</li>\n</ul>\n<p><strong>timestampStart</strong> and <strong>timestampEnd</strong></p>\n<ul>\n<li><p>Supports the Unix timestamp in number of seconds.</p>\n</li>\n<li><p>Return data between <strong>timestampStart</strong> (inclusive) and <strong>timestampEnd</strong> (exclusive).</p>\n</li>\n</ul>\n<h2 id=\"success-json-response\"><strong>Success JSON Response</strong></h2>\n<p><strong>data</strong> object</p>\n<ul>\n<li><p>Return data in key-value pair format.</p>\n</li>\n<li><p>Some keys are only supported by the uHoo Aura, please refer to the third column in the table below.</p>\n</li>\n</ul>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th><strong>Key</strong></th>\n<th><strong>Value</strong></th>\n<th><strong>uHoo Aura</strong></th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td>virusIndex</td>\n<td>Virus Index</td>\n<td></td>\n</tr>\n<tr>\n<td>temperature</td>\n<td>Temperature</td>\n<td></td>\n</tr>\n<tr>\n<td>humidity</td>\n<td>Humidity</td>\n<td></td>\n</tr>\n<tr>\n<td>pm1</td>\n<td>PM1</td>\n<td>Yes</td>\n</tr>\n<tr>\n<td>pm25</td>\n<td>PM2.5</td>\n<td></td>\n</tr>\n<tr>\n<td>pm4</td>\n<td>PM4</td>\n<td>Yes</td>\n</tr>\n<tr>\n<td>pm10</td>\n<td>PM10</td>\n<td>Yes</td>\n</tr>\n<tr>\n<td>ch2o</td>\n<td>Formaldehyde</td>\n<td>Yes</td>\n</tr>\n<tr>\n<td>tvoc</td>\n<td>TVOC</td>\n<td></td>\n</tr>\n<tr>\n<td>co</td>\n<td>Carbon Monoxide</td>\n<td></td>\n</tr>\n<tr>\n<td>co2</td>\n<td>Carbon Dioxide</td>\n<td></td>\n</tr>\n<tr>\n<td>no2</td>\n<td>Nitrogen Dioxide</td>\n<td></td>\n</tr>\n<tr>\n<td>ozone</td>\n<td>Ozone</td>\n<td></td>\n</tr>\n<tr>\n<td>light</td>\n<td>Light</td>\n<td>Yes</td>\n</tr>\n<tr>\n<td>sound</td>\n<td>Noise Index</td>\n<td>Yes</td>\n</tr>\n<tr>\n<td>airPressure</td>\n<td>Air Pressure</td>\n<td></td>\n</tr>\n<tr>\n<td>h2s</td>\n<td>Hydrogen Sulfide</td>\n<td>Yes</td>\n</tr>\n<tr>\n<td>nh3</td>\n<td>Ammonia</td>\n<td>Yes</td>\n</tr>\n<tr>\n<td>no</td>\n<td>Nitric Oxide</td>\n<td>Yes</td>\n</tr>\n<tr>\n<td>so2</td>\n<td>Sulphur Dioxide</td>\n<td>Yes</td>\n</tr>\n<tr>\n<td>oxygen</td>\n<td>Oxygen</td>\n<td>Yes</td>\n</tr>\n<tr>\n<td>timestamp</td>\n<td>Unix Timestamp</td>\n<td></td>\n</tr>\n</tbody>\n</table>\n</div><p><strong>usersettings</strong> object</p>\n<ul>\n<li>Return the default sensor unit in key-value pair format.</li>\n</ul>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th><strong>Key</strong></th>\n<th><strong>Value</strong></th>\n<th><strong>Unit Description</strong></th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td>temperature</td>\n<td>c</td>\n<td>Degree Celsius</td>\n</tr>\n<tr>\n<td>humidity</td>\n<td>%</td>\n<td>Percentage</td>\n</tr>\n<tr>\n<td>pm1</td>\n<td>µg/m^3</td>\n<td>Microgram per cubic meter</td>\n</tr>\n<tr>\n<td>pm25</td>\n<td>µg/m^3</td>\n<td>Microgram per cubic meter</td>\n</tr>\n<tr>\n<td>pm4</td>\n<td>µg/m^3</td>\n<td>Microgram per cubic meter</td>\n</tr>\n<tr>\n<td>pm10</td>\n<td>µg/m^3</td>\n<td>Microgram per cubic meter</td>\n</tr>\n<tr>\n<td>ch2o</td>\n<td>ppb</td>\n<td>Parts per billion</td>\n</tr>\n<tr>\n<td>tvoc</td>\n<td>ppb</td>\n<td>Parts per billion</td>\n</tr>\n<tr>\n<td>co</td>\n<td>ppm</td>\n<td>Parts per million</td>\n</tr>\n<tr>\n<td>co2</td>\n<td>ppm</td>\n<td>Parts per million</td>\n</tr>\n<tr>\n<td>no2</td>\n<td>ppb</td>\n<td>Parts per billion</td>\n</tr>\n<tr>\n<td>ozone</td>\n<td>ppb</td>\n<td>Parts per billion</td>\n</tr>\n<tr>\n<td>light</td>\n<td>lux</td>\n<td>Luminous flux</td>\n</tr>\n<tr>\n<td>sound</td>\n<td>tier</td>\n<td>Noise Index</td>\n</tr>\n<tr>\n<td>airPressure</td>\n<td>mbar</td>\n<td>Millibar</td>\n</tr>\n<tr>\n<td>h2s</td>\n<td>ppm</td>\n<td>Parts per million</td>\n</tr>\n<tr>\n<td>nh3</td>\n<td>ppm</td>\n<td>Parts per million</td>\n</tr>\n<tr>\n<td>no</td>\n<td>ppm</td>\n<td>Parts per million</td>\n</tr>\n<tr>\n<td>so2</td>\n<td>ppm</td>\n<td>Parts per million</td>\n</tr>\n<tr>\n<td>oxygen</td>\n<td>%</td>\n<td>Percentage</td>\n</tr>\n</tbody>\n</table>\n</div><p><strong>sensorlist</strong> object</p>\n<ul>\n<li><p>Return the sensor list in key-value pair format for the specified time period. See the <strong>data</strong> object above for more details.</p>\n</li>\n<li><p>This list always returns 9 sensors for any uHoo Smart Air Monitor, it returns up to 15 sensors for the uHoo Aura depending on the sensor configuration of the module A.</p>\n</li>\n</ul>\n<p><strong>count</strong></p>\n<ul>\n<li><p>Return the number of API calls made since 12AM UTC today. Use it to monitor the API usage over time and identify redundant calls.</p>\n</li>\n<li><p>The API count is reset at 12AM UTC every day.</p>\n</li>\n</ul>\n","urlObject":{"protocol":"https","path":["v1","devicedata"],"host":["api","uhooinc","com"],"query":[],"variable":[]}},"response":[{"id":"876717f8-a1ea-4a6c-a99b-5d609d09d046","name":"Success (Latest data)","originalRequest":{"method":"POST","header":[{"key":"Authorization","value":"Bearer xxxxxxxx","description":"Assign \"access_token\" parameter from https://auth.uhooinc.com/tokenrequest endpoint"}],"body":{"mode":"urlencoded","urlencoded":[{"key":"macAddress","value":"xxxxxxxxxxxx","type":"text","description":"Assign the \"macAddress\" parameter from /devicelist endpoint"},{"key":"mode","value":"minute","type":"text"},{"key":"prevDateTime","value":"yyyy-mm-dd hh:mm:00","type":"text","disabled":true}]},"url":"https://api.uhooinc.com/v1/devicedata"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Connection","value":"keep-alive","description":""},{"key":"Content-Length","value":"451","description":""},{"key":"Content-Type","value":"application/json; charset=utf-8","description":""},{"key":"Date","value":"Mon, 14 Aug 2017 02:01:27 GMT","description":""},{"key":"ETag","value":"W/\"1c3-r1MXpVq9woQPN+QTNDVPTQ\"","description":""},{"key":"Server","value":"nginx","description":""},{"key":"set-cookie","value":"uhoo.sid=s%3AK2aTrxPMOzKqJrQ21oQiSkkcJezjkYnJ.N%2BX1uWEdUqgyOFHhFexu6Zk38GBz4F30ijp5VPxgIz0; Path=/; HttpOnly","description":""}],"cookie":[{"expires":"Tue Jan 19 2038 03:14:07 GMT+0000 (Coordinated Universal Time)","httpOnly":true,"domain":"api.uhooinc.com","path":"/","secure":false,"value":"s%3AK2aTrxPMOzKqJrQ21oQiSkkcJezjkYnJ.N%2BX1uWEdUqgyOFHhFexu6Zk38GBz4F30ijp5VPxgIz0","key":"uhoo.sid"}],"responseTime":null,"body":"{\n    \"data\": [\n        {\n            \"virusIndex\": 5,\n            \"temperature\": 25,\n            \"humidity\": 85.9,\n            \"pm25\": 1,\n            \"tvoc\": 0,\n            \"co2\": 519,\n            \"co\": 0,\n            \"airPressure\": 1012.6,\n            \"ozone\": 4.2,\n            \"no2\": 0.3,\n            \"timestamp\": 1619964490\n        }\n    ],\n    \"usersettings\": {\n        \"temperature\":\"°C\",\n        \"humidity\":\"%\",\n        \"pm1\":\"µg/m^3\",\n        \"pm25\":\"µg/m^3\",\n        \"pm4\":\"µg/m^3\",\n        \"pm10\":\"µg/m^3\",\n        \"ch2o\":\"ppb\",\n        \"tvoc\":\"ppb\",\n        \"co\":\"ppm\",\n        \"co2\":\"ppm\",\n        \"no2\":\"ppb\",\n        \"ozone\":\"ppb\",\n        \"light\":\"lux\",\n        \"sound\":\"dBA\",\n        \"airPressure\":\"mbar\"\n    },\n    \"count\":1\n}"},{"id":"2b335f48-fc20-49f1-9b71-c4a1373f0bb5","name":"Success (1-hour data)","originalRequest":{"method":"POST","header":[{"key":"Authorization","value":"Bearer xxxxxx","description":"Assign \"access_token\" from POST https://api.uhooinc.com/v1/generatetoken endpoint"}],"body":{"mode":"urlencoded","urlencoded":[{"key":"macAddress","value":"xxxxxxxxxxxx","type":"text","description":"Assign the \"macAddress\" parameter from /devicelist endpoint"},{"key":"mode","value":"hour","type":"text","description":"See notes on \"mode\" parameter"},{"key":"prevDateTime","value":"2021-05-02 10:00:00","type":"text","description":"See notes on \"prevDateTime\" parameter"}]},"url":"https://api.uhooinc.com/v1/devicedata"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Date","value":"Sun, 02 May 2021 14:10:46 GMT"},{"key":"Content-Type","value":"application/json; charset=utf-8"},{"key":"Content-Length","value":"9260"},{"key":"Connection","value":"keep-alive"},{"key":"ETag","value":"W/\"242c-FyWc851BEXn91KJ4BTqjLg\""},{"key":"set-cookie","value":"uhoo.sid=s%3AWkbgg_lEuctSko5wY1a6UDKeBTGC5Fu8.bZSEauwWRAsWL%2FLMrWu5Pb35lsIvGU6ocEVrUD29NDk; Path=/; HttpOnly"},{"key":"Server","value":"uHoo"}],"cookie":[],"responseTime":null,"body":"{\n    \"data\": [\n        {\n            \"virusIndex\": 5,\n            \"temperature\": 24.9,\n            \"humidity\": 85.8,\n            \"pm25\": 1,\n            \"tvoc\": 0,\n            \"co2\": 470,\n            \"co\": 0,\n            \"airPressure\": 1010.1,\n            \"ozone\": 4.2,\n            \"no2\": 0.9,\n            \"timestamp\": 1619949611\n        },\n        {\n            \"virusIndex\": 5,\n            \"temperature\": 24.8,\n            \"humidity\": 86.3,\n            \"pm25\": 1,\n            \"tvoc\": 0,\n            \"co2\": 479,\n            \"co\": 0,\n            \"airPressure\": 1010,\n            \"ozone\": 4.2,\n            \"no2\": 0.2,\n            \"timestamp\": 1619949671\n        },\n        {\n            \"virusIndex\": 5,\n            \"temperature\": 24.8,\n            \"humidity\": 86.4,\n            \"pm25\": 1,\n            \"tvoc\": 0,\n            \"co2\": 468,\n            \"co\": 0,\n            \"airPressure\": 1010,\n            \"ozone\": 4.2,\n            \"no2\": 0.9,\n            \"timestamp\": 1619949731\n        },\n        {\n            \"virusIndex\": 5,\n            \"temperature\": 24.8,\n            \"humidity\": 86.3,\n            \"pm25\": 1,\n            \"tvoc\": 3,\n            \"co2\": 478,\n            \"co\": 0,\n            \"airPressure\": 1010,\n            \"ozone\": 4.2,\n            \"no2\": 0.3,\n            \"timestamp\": 1619949791\n        },\n        {\n            \"virusIndex\": 5,\n            \"temperature\": 24.9,\n            \"humidity\": 86,\n            \"pm25\": 1,\n            \"tvoc\": 0,\n            \"co2\": 470,\n            \"co\": 0,\n            \"airPressure\": 1010.1,\n            \"ozone\": 4.2,\n            \"no2\": 0.3,\n            \"timestamp\": 1619949851\n        },\n        {\n            \"virusIndex\": 5,\n            \"temperature\": 24.9,\n            \"humidity\": 85.7,\n            \"pm25\": 1,\n            \"tvoc\": 0,\n            \"co2\": 482,\n            \"co\": 0,\n            \"airPressure\": 1010,\n            \"ozone\": 4.2,\n            \"no2\": 0.5,\n            \"timestamp\": 1619949911\n        },\n        {\n            \"virusIndex\": 5,\n            \"temperature\": 24.9,\n            \"humidity\": 85.7,\n            \"pm25\": 1,\n            \"tvoc\": 0,\n            \"co2\": 468,\n            \"co\": 0,\n            \"airPressure\": 1010.1,\n            \"ozone\": 4.2,\n            \"no2\": 0.2,\n            \"timestamp\": 1619949971\n        },\n        {\n            \"virusIndex\": 5,\n            \"temperature\": 24.9,\n            \"humidity\": 85.8,\n            \"pm25\": 1,\n            \"tvoc\": 0,\n            \"co2\": 475,\n            \"co\": 0,\n            \"airPressure\": 1010.3,\n            \"ozone\": 4.2,\n            \"no2\": 0,\n            \"timestamp\": 1619950031\n        },\n        {\n            \"virusIndex\": 5,\n            \"temperature\": 24.9,\n            \"humidity\": 85.8,\n            \"pm25\": 1,\n            \"tvoc\": 0,\n            \"co2\": 466,\n            \"co\": 0,\n            \"airPressure\": 1010.2,\n            \"ozone\": 4.2,\n            \"no2\": 0.5,\n            \"timestamp\": 1619950091\n        },\n        {\n            \"virusIndex\": 5,\n            \"temperature\": 24.9,\n            \"humidity\": 85.8,\n            \"pm25\": 1,\n            \"tvoc\": 0,\n            \"co2\": 470,\n            \"co\": 0,\n            \"airPressure\": 1010.3,\n            \"ozone\": 4.2,\n            \"no2\": 0.3,\n            \"timestamp\": 1619950151\n        },\n        {\n            \"virusIndex\": 5,\n            \"temperature\": 24.9,\n            \"humidity\": 85.8,\n            \"pm25\": 1,\n            \"tvoc\": 0,\n            \"co2\": 452,\n            \"co\": 0,\n            \"airPressure\": 1010.3,\n            \"ozone\": 4.2,\n            \"no2\": 0.1,\n            \"timestamp\": 1619950211\n        },\n        {\n            \"virusIndex\": 5,\n            \"temperature\": 24.9,\n            \"humidity\": 86,\n            \"pm25\": 1,\n            \"tvoc\": 0,\n            \"co2\": 442,\n            \"co\": 0,\n            \"airPressure\": 1010.3,\n            \"ozone\": 4.2,\n            \"no2\": 0.7,\n            \"timestamp\": 1619950271\n        },\n        {\n            \"virusIndex\": 5,\n            \"temperature\": 24.9,\n            \"humidity\": 85.8,\n            \"pm25\": 1,\n            \"tvoc\": 0,\n            \"co2\": 454,\n            \"co\": 0,\n            \"airPressure\": 1010.3,\n            \"ozone\": 4.2,\n            \"no2\": 0.8,\n            \"timestamp\": 1619950331\n        },\n        {\n            \"virusIndex\": 5,\n            \"temperature\": 24.9,\n            \"humidity\": 86,\n            \"pm25\": 1,\n            \"tvoc\": 0,\n            \"co2\": 479,\n            \"co\": 0,\n            \"airPressure\": 1010.3,\n            \"ozone\": 4.2,\n            \"no2\": 0.3,\n            \"timestamp\": 1619950391\n        },\n        {\n            \"virusIndex\": 5,\n            \"temperature\": 24.9,\n            \"humidity\": 85.7,\n            \"pm25\": 1,\n            \"tvoc\": 0,\n            \"co2\": 479,\n            \"co\": 0,\n            \"airPressure\": 1010.4,\n            \"ozone\": 4.2,\n            \"no2\": 0,\n            \"timestamp\": 1619950451\n        },\n        {\n            \"virusIndex\": 5,\n            \"temperature\": 25.1,\n            \"humidity\": 85.1,\n            \"pm25\": 1,\n            \"tvoc\": 0,\n            \"co2\": 492,\n            \"co\": 0,\n            \"airPressure\": 1010.4,\n            \"ozone\": 4.2,\n            \"no2\": 0.4,\n            \"timestamp\": 1619950511\n        },\n        {\n            \"virusIndex\": 5,\n            \"temperature\": 25,\n            \"humidity\": 85.5,\n            \"pm25\": 1,\n            \"tvoc\": 0,\n            \"co2\": 493,\n            \"co\": 0,\n            \"airPressure\": 1010.4,\n            \"ozone\": 4.2,\n            \"no2\": 0.5,\n            \"timestamp\": 1619950571\n        },\n        {\n            \"virusIndex\": 5,\n            \"temperature\": 25,\n            \"humidity\": 85.4,\n            \"pm25\": 1,\n            \"tvoc\": 0,\n            \"co2\": 473,\n            \"co\": 0,\n            \"airPressure\": 1010.4,\n            \"ozone\": 4.2,\n            \"no2\": 0.9,\n            \"timestamp\": 1619950631\n        },\n        {\n            \"virusIndex\": 5,\n            \"temperature\": 25,\n            \"humidity\": 85.5,\n            \"pm25\": 1,\n            \"tvoc\": 0,\n            \"co2\": 470,\n            \"co\": 0,\n            \"airPressure\": 1010.4,\n            \"ozone\": 4.2,\n            \"no2\": 1,\n            \"timestamp\": 1619950691\n        },\n        {\n            \"virusIndex\": 5,\n            \"temperature\": 25,\n            \"humidity\": 85.4,\n            \"pm25\": 1,\n            \"tvoc\": 0,\n            \"co2\": 461,\n            \"co\": 0,\n            \"airPressure\": 1010.3,\n            \"ozone\": 4.2,\n            \"no2\": 0.1,\n            \"timestamp\": 1619950751\n        },\n        {\n            \"virusIndex\": 5,\n            \"temperature\": 24.9,\n            \"humidity\": 86,\n            \"pm25\": 2,\n            \"tvoc\": 0,\n            \"co2\": 455,\n            \"co\": 0,\n            \"airPressure\": 1010.4,\n            \"ozone\": 4.2,\n            \"no2\": 0.5,\n            \"timestamp\": 1619950811\n        },\n        {\n            \"virusIndex\": 5,\n            \"temperature\": 24.8,\n            \"humidity\": 86.4,\n            \"pm25\": 1,\n            \"tvoc\": 0,\n            \"co2\": 452,\n            \"co\": 0,\n            \"airPressure\": 1010.4,\n            \"ozone\": 4.2,\n            \"no2\": 0.9,\n            \"timestamp\": 1619950871\n        },\n        {\n            \"virusIndex\": 5,\n            \"temperature\": 25,\n            \"humidity\": 85.8,\n            \"pm25\": 1,\n            \"tvoc\": 0,\n            \"co2\": 460,\n            \"co\": 0,\n            \"airPressure\": 1010.4,\n            \"ozone\": 4.2,\n            \"no2\": 0.4,\n            \"timestamp\": 1619950931\n        },\n        {\n            \"virusIndex\": 5,\n            \"temperature\": 25,\n            \"humidity\": 85.6,\n            \"pm25\": 1,\n            \"tvoc\": 0,\n            \"co2\": 453,\n            \"co\": 0,\n            \"airPressure\": 1010.4,\n            \"ozone\": 4.2,\n            \"no2\": 0.2,\n            \"timestamp\": 1619950991\n        },\n        {\n            \"virusIndex\": 5,\n            \"temperature\": 25,\n            \"humidity\": 85.6,\n            \"pm25\": 1,\n            \"tvoc\": 0,\n            \"co2\": 478,\n            \"co\": 0,\n            \"airPressure\": 1010.4,\n            \"ozone\": 4.2,\n            \"no2\": 0.9,\n            \"timestamp\": 1619951051\n        },\n        {\n            \"virusIndex\": 5,\n            \"temperature\": 24.9,\n            \"humidity\": 85.8,\n            \"pm25\": 1,\n            \"tvoc\": 0,\n            \"co2\": 471,\n            \"co\": 0,\n            \"airPressure\": 1010.4,\n            \"ozone\": 4.2,\n            \"no2\": 0.3,\n            \"timestamp\": 1619951111\n        },\n        {\n            \"virusIndex\": 5,\n            \"temperature\": 24.9,\n            \"humidity\": 85.9,\n            \"pm25\": 1,\n            \"tvoc\": 0,\n            \"co2\": 480,\n            \"co\": 0,\n            \"airPressure\": 1010.4,\n            \"ozone\": 4.2,\n            \"no2\": 0.1,\n            \"timestamp\": 1619951171\n        },\n        {\n            \"virusIndex\": 5,\n            \"temperature\": 24.9,\n            \"humidity\": 85.8,\n            \"pm25\": 1,\n            \"tvoc\": 0,\n            \"co2\": 471,\n            \"co\": 0,\n            \"airPressure\": 1010.4,\n            \"ozone\": 4.2,\n            \"no2\": 0,\n            \"timestamp\": 1619951231\n        },\n        {\n            \"virusIndex\": 5,\n            \"temperature\": 24.9,\n            \"humidity\": 86,\n            \"pm25\": 1,\n            \"tvoc\": 0,\n            \"co2\": 471,\n            \"co\": 0,\n            \"airPressure\": 1010.4,\n            \"ozone\": 4.2,\n            \"no2\": 0.3,\n            \"timestamp\": 1619951291\n        },\n        {\n            \"virusIndex\": 5,\n            \"temperature\": 24.9,\n            \"humidity\": 86,\n            \"pm25\": 1,\n            \"tvoc\": 0,\n            \"co2\": 456,\n            \"co\": 0,\n            \"airPressure\": 1010.4,\n            \"ozone\": 4.2,\n            \"no2\": 0.2,\n            \"timestamp\": 1619951351\n        },\n        {\n            \"virusIndex\": 5,\n            \"temperature\": 24.9,\n            \"humidity\": 85.9,\n            \"pm25\": 1,\n            \"tvoc\": 0,\n            \"co2\": 473,\n            \"co\": 0,\n            \"airPressure\": 1010.5,\n            \"ozone\": 4.2,\n            \"no2\": 0.8,\n            \"timestamp\": 1619951411\n        },\n        {\n            \"virusIndex\": 5,\n            \"temperature\": 25,\n            \"humidity\": 85.8,\n            \"pm25\": 1,\n            \"tvoc\": 0,\n            \"co2\": 467,\n            \"co\": 0,\n            \"airPressure\": 1010.4,\n            \"ozone\": 4.2,\n            \"no2\": 0.1,\n            \"timestamp\": 1619951471\n        },\n        {\n            \"virusIndex\": 5,\n            \"temperature\": 24.9,\n            \"humidity\": 86,\n            \"pm25\": 1,\n            \"tvoc\": 0,\n            \"co2\": 475,\n            \"co\": 0,\n            \"airPressure\": 1010.4,\n            \"ozone\": 4.2,\n            \"no2\": 0.8,\n            \"timestamp\": 1619951531\n        },\n        {\n            \"virusIndex\": 5,\n            \"temperature\": 24.9,\n            \"humidity\": 86.2,\n            \"pm25\": 1,\n            \"tvoc\": 0,\n            \"co2\": 477,\n            \"co\": 0,\n            \"airPressure\": 1010.4,\n            \"ozone\": 4.2,\n            \"no2\": 0.1,\n            \"timestamp\": 1619951591\n        },\n        {\n            \"virusIndex\": 5,\n            \"temperature\": 24.9,\n            \"humidity\": 86.1,\n            \"pm25\": 1,\n            \"tvoc\": 0,\n            \"co2\": 478,\n            \"co\": 0,\n            \"airPressure\": 1010.5,\n            \"ozone\": 4.2,\n            \"no2\": 1,\n            \"timestamp\": 1619951651\n        },\n        {\n            \"virusIndex\": 5,\n            \"temperature\": 24.9,\n            \"humidity\": 85.9,\n            \"pm25\": 1,\n            \"tvoc\": 0,\n            \"co2\": 461,\n            \"co\": 0,\n            \"airPressure\": 1010.4,\n            \"ozone\": 4.2,\n            \"no2\": 0.3,\n            \"timestamp\": 1619951711\n        },\n        {\n            \"virusIndex\": 5,\n            \"temperature\": 24.9,\n            \"humidity\": 85.9,\n            \"pm25\": 1,\n            \"tvoc\": 0,\n            \"co2\": 471,\n            \"co\": 0,\n            \"airPressure\": 1010.4,\n            \"ozone\": 4.2,\n            \"no2\": 0.8,\n            \"timestamp\": 1619951771\n        },\n        {\n            \"virusIndex\": 5,\n            \"temperature\": 24.9,\n            \"humidity\": 86.2,\n            \"pm25\": 1,\n            \"tvoc\": 0,\n            \"co2\": 474,\n            \"co\": 0,\n            \"airPressure\": 1010.4,\n            \"ozone\": 4.2,\n            \"no2\": 0,\n            \"timestamp\": 1619951831\n        },\n        {\n            \"virusIndex\": 5,\n            \"temperature\": 24.9,\n            \"humidity\": 86.2,\n            \"pm25\": 1,\n            \"tvoc\": 0,\n            \"co2\": 462,\n            \"co\": 0,\n            \"airPressure\": 1010.5,\n            \"ozone\": 4.2,\n            \"no2\": 0.4,\n            \"timestamp\": 1619951891\n        },\n        {\n            \"virusIndex\": 5,\n            \"temperature\": 24.9,\n            \"humidity\": 86.4,\n            \"pm25\": 1,\n            \"tvoc\": 0,\n            \"co2\": 463,\n            \"co\": 0,\n            \"airPressure\": 1010.5,\n            \"ozone\": 4.2,\n            \"no2\": 0.3,\n            \"timestamp\": 1619951951\n        },\n        {\n            \"virusIndex\": 5,\n            \"temperature\": 24.9,\n            \"humidity\": 86.4,\n            \"pm25\": 1,\n            \"tvoc\": 0,\n            \"co2\": 474,\n            \"co\": 0,\n            \"airPressure\": 1010.4,\n            \"ozone\": 4.2,\n            \"no2\": 0.9,\n            \"timestamp\": 1619952011\n        },\n        {\n            \"virusIndex\": 5,\n            \"temperature\": 24.9,\n            \"humidity\": 86.3,\n            \"pm25\": 1,\n            \"tvoc\": 0,\n            \"co2\": 461,\n            \"co\": 0,\n            \"airPressure\": 1010.4,\n            \"ozone\": 4.2,\n            \"no2\": 0.9,\n            \"timestamp\": 1619952071\n        },\n        {\n            \"virusIndex\": 5,\n            \"temperature\": 24.9,\n            \"humidity\": 86.2,\n            \"pm25\": 1,\n            \"tvoc\": 0,\n            \"co2\": 466,\n            \"co\": 0,\n            \"airPressure\": 1010.5,\n            \"ozone\": 4.2,\n            \"no2\": 0.9,\n            \"timestamp\": 1619952131\n        },\n        {\n            \"virusIndex\": 5,\n            \"temperature\": 24.9,\n            \"humidity\": 86.2,\n            \"pm25\": 1,\n            \"tvoc\": 0,\n            \"co2\": 469,\n            \"co\": 0,\n            \"airPressure\": 1010.5,\n            \"ozone\": 4.2,\n            \"no2\": 0.7,\n            \"timestamp\": 1619952191\n        },\n        {\n            \"virusIndex\": 5,\n            \"temperature\": 24.9,\n            \"humidity\": 86.1,\n            \"pm25\": 1,\n            \"tvoc\": 0,\n            \"co2\": 483,\n            \"co\": 0,\n            \"airPressure\": 1010.5,\n            \"ozone\": 4.2,\n            \"no2\": 0.7,\n            \"timestamp\": 1619952251\n        },\n        {\n            \"virusIndex\": 5,\n            \"temperature\": 24.9,\n            \"humidity\": 86.1,\n            \"pm25\": 1,\n            \"tvoc\": 0,\n            \"co2\": 478,\n            \"co\": 0,\n            \"airPressure\": 1010.4,\n            \"ozone\": 4.2,\n            \"no2\": 0.3,\n            \"timestamp\": 1619952311\n        },\n        {\n            \"virusIndex\": 5,\n            \"temperature\": 25,\n            \"humidity\": 85.8,\n            \"pm25\": 1,\n            \"tvoc\": 0,\n            \"co2\": 493,\n            \"co\": 0,\n            \"airPressure\": 1010.4,\n            \"ozone\": 4.2,\n            \"no2\": 0.6,\n            \"timestamp\": 1619952371\n        },\n        {\n            \"virusIndex\": 5,\n            \"temperature\": 24.9,\n            \"humidity\": 86.1,\n            \"pm25\": 1,\n            \"tvoc\": 0,\n            \"co2\": 483,\n            \"co\": 0,\n            \"airPressure\": 1010.5,\n            \"ozone\": 4.2,\n            \"no2\": 0.1,\n            \"timestamp\": 1619952431\n        },\n        {\n            \"virusIndex\": 5,\n            \"temperature\": 24.9,\n            \"humidity\": 86.1,\n            \"pm25\": 1,\n            \"tvoc\": 0,\n            \"co2\": 493,\n            \"co\": 0,\n            \"airPressure\": 1010.5,\n            \"ozone\": 4.2,\n            \"no2\": 0.9,\n            \"timestamp\": 1619952491\n        },\n        {\n            \"virusIndex\": 5,\n            \"temperature\": 24.9,\n            \"humidity\": 86.1,\n            \"pm25\": 1,\n            \"tvoc\": 0,\n            \"co2\": 463,\n            \"co\": 0,\n            \"airPressure\": 1010.6,\n            \"ozone\": 4.2,\n            \"no2\": 0.9,\n            \"timestamp\": 1619952551\n        },\n        {\n            \"virusIndex\": 5,\n            \"temperature\": 24.9,\n            \"humidity\": 86.1,\n            \"pm25\": 1,\n            \"tvoc\": 0,\n            \"co2\": 483,\n            \"co\": 0,\n            \"airPressure\": 1010.6,\n            \"ozone\": 4.2,\n            \"no2\": 0.7,\n            \"timestamp\": 1619952611\n        },\n        {\n            \"virusIndex\": 5,\n            \"temperature\": 24.9,\n            \"humidity\": 86.2,\n            \"pm25\": 1,\n            \"tvoc\": 0,\n            \"co2\": 478,\n            \"co\": 0,\n            \"airPressure\": 1010.6,\n            \"ozone\": 4.2,\n            \"no2\": 0.1,\n            \"timestamp\": 1619952671\n        },\n        {\n            \"virusIndex\": 5,\n            \"temperature\": 24.9,\n            \"humidity\": 86.4,\n            \"pm25\": 1,\n            \"tvoc\": 0,\n            \"co2\": 478,\n            \"co\": 0,\n            \"airPressure\": 1010.6,\n            \"ozone\": 4.2,\n            \"no2\": 0.2,\n            \"timestamp\": 1619952731\n        },\n        {\n            \"virusIndex\": 5,\n            \"temperature\": 24.9,\n            \"humidity\": 86.3,\n            \"pm25\": 1,\n            \"tvoc\": 0,\n            \"co2\": 460,\n            \"co\": 0,\n            \"airPressure\": 1010.6,\n            \"ozone\": 4.2,\n            \"no2\": 0.6,\n            \"timestamp\": 1619952791\n        },\n        {\n            \"virusIndex\": 5,\n            \"temperature\": 24.9,\n            \"humidity\": 86.4,\n            \"pm25\": 1,\n            \"tvoc\": 0,\n            \"co2\": 476,\n            \"co\": 0,\n            \"airPressure\": 1010.6,\n            \"ozone\": 4.2,\n            \"no2\": 0.4,\n            \"timestamp\": 1619952851\n        },\n        {\n            \"virusIndex\": 5,\n            \"temperature\": 24.8,\n            \"humidity\": 86.6,\n            \"pm25\": 1,\n            \"tvoc\": 0,\n            \"co2\": 470,\n            \"co\": 0,\n            \"airPressure\": 1010.6,\n            \"ozone\": 4.2,\n            \"no2\": 0.2,\n            \"timestamp\": 1619952911\n        },\n        {\n            \"virusIndex\": 5,\n            \"temperature\": 24.8,\n            \"humidity\": 86.6,\n            \"pm25\": 1,\n            \"tvoc\": 0,\n            \"co2\": 471,\n            \"co\": 0,\n            \"airPressure\": 1010.6,\n            \"ozone\": 4.2,\n            \"no2\": 0.9,\n            \"timestamp\": 1619952971\n        },\n        {\n            \"virusIndex\": 5,\n            \"temperature\": 24.9,\n            \"humidity\": 86.5,\n            \"pm25\": 1,\n            \"tvoc\": 0,\n            \"co2\": 479,\n            \"co\": 0,\n            \"airPressure\": 1010.7,\n            \"ozone\": 4.2,\n            \"no2\": 1,\n            \"timestamp\": 1619953031\n        },\n        {\n            \"virusIndex\": 5,\n            \"temperature\": 24.8,\n            \"humidity\": 86.8,\n            \"pm25\": 1,\n            \"tvoc\": 0,\n            \"co2\": 492,\n            \"co\": 0,\n            \"airPressure\": 1010.7,\n            \"ozone\": 4.2,\n            \"no2\": 0.7,\n            \"timestamp\": 1619953091\n        },\n        {\n            \"virusIndex\": 5,\n            \"temperature\": 24.9,\n            \"humidity\": 86.4,\n            \"pm25\": 1,\n            \"tvoc\": 3,\n            \"co2\": 492,\n            \"co\": 0,\n            \"airPressure\": 1010.8,\n            \"ozone\": 4.2,\n            \"no2\": 0.6,\n            \"timestamp\": 1619953151\n        }\n    ],\n    \"usersettings\": {\n        \"temperature\":\"°C\",\n        \"humidity\":\"%\",\n        \"pm1\":\"µg/m^3\",\n        \"pm25\":\"µg/m^3\",\n        \"pm4\":\"µg/m^3\",\n        \"pm10\":\"µg/m^3\",\n        \"ch2o\":\"ppb\",\n        \"tvoc\":\"ppb\",\n        \"co\":\"ppm\",\n        \"co2\":\"ppm\",\n        \"no2\":\"ppb\",\n        \"ozone\":\"ppb\",\n        \"light\":\"lux\",\n        \"sound\":\"dBA\",\n        \"airPressure\":\"mbar\"\n    },\n    \"count\":1\n}"},{"id":"253643b3-3a1d-4f90-bd05-f02388c976cd","name":"Success (24-hour averages)","originalRequest":{"method":"POST","header":[{"key":"Authorization","value":"Bearer xxxxxx","description":"Assign \"access_token\" from POST https://api.uhooinc.com/v1/generatetoken endpoint"}],"body":{"mode":"urlencoded","urlencoded":[{"key":"macAddress","value":"xxxxxxxxxxxx","type":"text","description":"Assign the \"macAddress\" parameter from /devicelist endpoint"},{"key":"mode","value":"day","type":"text","description":"See notes on \"mode\" parameter"},{"key":"prevDateTime","value":"2021-05-01 00:00:00","type":"text","description":"See notes on \"prevDateTime\" parameter"}]},"url":"https://api.uhooinc.com/v1/devicedata"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Date","value":"Sun, 02 May 2021 14:11:37 GMT"},{"key":"Content-Type","value":"application/json; charset=utf-8"},{"key":"Content-Length","value":"3895"},{"key":"Connection","value":"keep-alive"},{"key":"ETag","value":"W/\"f37-c1MeWDBwa1HQwXr/KILlVA\""},{"key":"set-cookie","value":"uhoo.sid=s%3AhbWP0-9Maa7FPpn3XXSHwhW1NUxVU-pa.GBlAiP3OVxF08aJTs10M7PQalTkQwUwpjhNXjuvJ5Bg; Path=/; HttpOnly"},{"key":"Server","value":"uHoo"}],"cookie":[],"responseTime":null,"body":"{\n    \"data\": [\n        {\n            \"virusIndex\": 5,\n            \"temperature\": 24.3,\n            \"humidity\": 81.9,\n            \"pm25\": 1.1,\n            \"tvoc\": 1.7,\n            \"co2\": 498.3,\n            \"co\": 0,\n            \"airPressure\": 1011.1,\n            \"ozone\": 4.4,\n            \"no2\": 0.5,\n            \"timestamp\": 1619823600\n        },\n        {\n            \"virusIndex\": 5,\n            \"temperature\": 24.3,\n            \"humidity\": 82.2,\n            \"pm25\": 1,\n            \"tvoc\": 1,\n            \"co2\": 504.1,\n            \"co\": 0,\n            \"airPressure\": 1011.6,\n            \"ozone\": 4.4,\n            \"no2\": 0.5,\n            \"timestamp\": 1619827200\n        },\n        {\n            \"virusIndex\": 4,\n            \"temperature\": 23.9,\n            \"humidity\": 80.2,\n            \"pm25\": 1.2,\n            \"tvoc\": 5.8,\n            \"co2\": 485.7,\n            \"co\": 0,\n            \"airPressure\": 1011.6,\n            \"ozone\": 4.6,\n            \"no2\": 0.5,\n            \"timestamp\": 1619830800\n        },\n        {\n            \"virusIndex\": 4,\n            \"temperature\": 23.6,\n            \"humidity\": 79.4,\n            \"pm25\": 1.1,\n            \"tvoc\": 8.9,\n            \"co2\": 500.6,\n            \"co\": 0,\n            \"airPressure\": 1011.7,\n            \"ozone\": 4.8,\n            \"no2\": 0.5,\n            \"timestamp\": 1619834400\n        },\n        {\n            \"virusIndex\": 4,\n            \"temperature\": 23.4,\n            \"humidity\": 78.6,\n            \"pm25\": 1.1,\n            \"tvoc\": 10.3,\n            \"co2\": 501.4,\n            \"co\": 0,\n            \"airPressure\": 1011.4,\n            \"ozone\": 4.9,\n            \"no2\": 0.5,\n            \"timestamp\": 1619838000\n        },\n        {\n            \"virusIndex\": 4,\n            \"temperature\": 23.4,\n            \"humidity\": 78,\n            \"pm25\": 1.2,\n            \"tvoc\": 11,\n            \"co2\": 502.5,\n            \"co\": 0,\n            \"airPressure\": 1010.9,\n            \"ozone\": 5,\n            \"no2\": 0.5,\n            \"timestamp\": 1619841600\n        },\n        {\n            \"virusIndex\": 4,\n            \"temperature\": 23.4,\n            \"humidity\": 78.5,\n            \"pm25\": 1.1,\n            \"tvoc\": 10.4,\n            \"co2\": 497.4,\n            \"co\": 0,\n            \"airPressure\": 1010.2,\n            \"ozone\": 5,\n            \"no2\": 0.6,\n            \"timestamp\": 1619845200\n        },\n        {\n            \"virusIndex\": 4,\n            \"temperature\": 23.3,\n            \"humidity\": 78.5,\n            \"pm25\": 1.1,\n            \"tvoc\": 11.1,\n            \"co2\": 504.3,\n            \"co\": 0,\n            \"airPressure\": 1009.8,\n            \"ozone\": 5,\n            \"no2\": 0.5,\n            \"timestamp\": 1619848800\n        },\n        {\n            \"virusIndex\": 4,\n            \"temperature\": 23.3,\n            \"humidity\": 78.6,\n            \"pm25\": 1.1,\n            \"tvoc\": 11,\n            \"co2\": 504.6,\n            \"co\": 0,\n            \"airPressure\": 1009.4,\n            \"ozone\": 5,\n            \"no2\": 0.5,\n            \"timestamp\": 1619852400\n        },\n        {\n            \"virusIndex\": 4,\n            \"temperature\": 23.3,\n            \"humidity\": 79.6,\n            \"pm25\": 1.1,\n            \"tvoc\": 9.7,\n            \"co2\": 515.4,\n            \"co\": 0,\n            \"airPressure\": 1009,\n            \"ozone\": 5,\n            \"no2\": 0.5,\n            \"timestamp\": 1619856000\n        },\n        {\n            \"virusIndex\": 4,\n            \"temperature\": 23.3,\n            \"humidity\": 79.5,\n            \"pm25\": 1.2,\n            \"tvoc\": 10.6,\n            \"co2\": 527.7,\n            \"co\": 0,\n            \"airPressure\": 1009,\n            \"ozone\": 4.9,\n            \"no2\": 0.4,\n            \"timestamp\": 1619859600\n        },\n        {\n            \"virusIndex\": 4,\n            \"temperature\": 23.4,\n            \"humidity\": 80,\n            \"pm25\": 1.2,\n            \"tvoc\": 9.1,\n            \"co2\": 519.5,\n            \"co\": 0,\n            \"airPressure\": 1009.2,\n            \"ozone\": 4.9,\n            \"no2\": 0.5,\n            \"timestamp\": 1619863200\n        },\n        {\n            \"virusIndex\": 4,\n            \"temperature\": 23.5,\n            \"humidity\": 78.4,\n            \"pm25\": 1.1,\n            \"tvoc\": 10,\n            \"co2\": 512.5,\n            \"co\": 0,\n            \"airPressure\": 1009.3,\n            \"ozone\": 4.8,\n            \"no2\": 0.5,\n            \"timestamp\": 1619866800\n        },\n        {\n            \"virusIndex\": 4,\n            \"temperature\": 23.6,\n            \"humidity\": 79.8,\n            \"pm25\": 1,\n            \"tvoc\": 8.2,\n            \"co2\": 498.1,\n            \"co\": 0,\n            \"airPressure\": 1009.7,\n            \"ozone\": 4.7,\n            \"no2\": 0.5,\n            \"timestamp\": 1619870400\n        },\n        {\n            \"virusIndex\": 4,\n            \"temperature\": 23.8,\n            \"humidity\": 79.9,\n            \"pm25\": 1,\n            \"tvoc\": 7.3,\n            \"co2\": 503.8,\n            \"co\": 0,\n            \"airPressure\": 1010.3,\n            \"ozone\": 4.7,\n            \"no2\": 0.6,\n            \"timestamp\": 1619874000\n        },\n        {\n            \"virusIndex\": 4,\n            \"temperature\": 23.9,\n            \"humidity\": 79.9,\n            \"pm25\": 1.1,\n            \"tvoc\": 5,\n            \"co2\": 500.1,\n            \"co\": 0,\n            \"airPressure\": 1010.7,\n            \"ozone\": 4.6,\n            \"no2\": 0.4,\n            \"timestamp\": 1619877600\n        },\n        {\n            \"virusIndex\": 5,\n            \"temperature\": 24,\n            \"humidity\": 80.3,\n            \"pm25\": 1.1,\n            \"tvoc\": 4.6,\n            \"co2\": 497.1,\n            \"co\": 0,\n            \"airPressure\": 1010.6,\n            \"ozone\": 4.6,\n            \"no2\": 0.5,\n            \"timestamp\": 1619881200\n        },\n        {\n            \"virusIndex\": 5,\n            \"temperature\": 24.1,\n            \"humidity\": 80.7,\n            \"pm25\": 1,\n            \"tvoc\": 4,\n            \"co2\": 504,\n            \"co\": 0,\n            \"airPressure\": 1010.4,\n            \"ozone\": 4.5,\n            \"no2\": 0.5,\n            \"timestamp\": 1619884800\n        },\n        {\n            \"virusIndex\": 5,\n            \"temperature\": 24.1,\n            \"humidity\": 81,\n            \"pm25\": 1.1,\n            \"tvoc\": 4,\n            \"co2\": 492.6,\n            \"co\": 0,\n            \"airPressure\": 1010,\n            \"ozone\": 4.5,\n            \"no2\": 0.5,\n            \"timestamp\": 1619888400\n        },\n        {\n            \"virusIndex\": 5,\n            \"temperature\": 24.2,\n            \"humidity\": 81.6,\n            \"pm25\": 1,\n            \"tvoc\": 3.1,\n            \"co2\": 493.2,\n            \"co\": 0,\n            \"airPressure\": 1009.7,\n            \"ozone\": 4.5,\n            \"no2\": 0.5,\n            \"timestamp\": 1619892000\n        },\n        {\n            \"virusIndex\": 5,\n            \"temperature\": 24.3,\n            \"humidity\": 82,\n            \"pm25\": 1,\n            \"tvoc\": 1.9,\n            \"co2\": 492,\n            \"co\": 0,\n            \"airPressure\": 1009.5,\n            \"ozone\": 4.4,\n            \"no2\": 0.5,\n            \"timestamp\": 1619895600\n        },\n        {\n            \"virusIndex\": 5,\n            \"temperature\": 24.3,\n            \"humidity\": 82.6,\n            \"pm25\": 1,\n            \"tvoc\": 1.2,\n            \"co2\": 494.1,\n            \"co\": 0,\n            \"airPressure\": 1009.6,\n            \"ozone\": 4.4,\n            \"no2\": 0.5,\n            \"timestamp\": 1619899200\n        },\n        {\n            \"virusIndex\": 5,\n            \"temperature\": 24.4,\n            \"humidity\": 82.9,\n            \"pm25\": 1,\n            \"tvoc\": 0.3,\n            \"co2\": 481.1,\n            \"co\": 0,\n            \"airPressure\": 1010,\n            \"ozone\": 4.4,\n            \"no2\": 0.5,\n            \"timestamp\": 1619902800\n        },\n        {\n            \"virusIndex\": 5,\n            \"temperature\": 24.4,\n            \"humidity\": 83.4,\n            \"pm25\": 1.1,\n            \"tvoc\": 0.1,\n            \"co2\": 484.9,\n            \"co\": 0,\n            \"airPressure\": 1010.5,\n            \"ozone\": 4.4,\n            \"no2\": 0.5,\n            \"timestamp\": 1619906400\n        }\n    ],\n    \"usersettings\": {\n        \"temperature\":\"°C\",\n        \"humidity\":\"%\",\n        \"pm1\":\"µg/m^3\",\n        \"pm25\":\"µg/m^3\",\n        \"pm4\":\"µg/m^3\",\n        \"pm10\":\"µg/m^3\",\n        \"ch2o\":\"ppb\",\n        \"tvoc\":\"ppb\",\n        \"co\":\"ppm\",\n        \"co2\":\"ppm\",\n        \"no2\":\"ppb\",\n        \"ozone\":\"ppb\",\n        \"light\":\"lux\",\n        \"sound\":\"dBA\",\n        \"airPressure\":\"mbar\"\n    },\n    \"count\":1\n}"}],"_postman_id":"a301989d-8845-43bf-8660-9a6846a4275c"},{"name":"Get network information","id":"76839eb7-418b-428b-a61a-36936494d2bd","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"POST","header":[{"key":"Authorization","value":"Bearer xxxxxxxx","description":"<p>Assign \"access_token\" from /generatetoken endpoint</p>\n"}],"body":{"mode":"urlencoded","urlencoded":[{"key":"macAddress","value":"xxxxxxxxxxxx","type":"text","description":"<p>Assign the \"macAddress\" parameter from /devicelist endpoint</p>\n"}]},"url":"https://api.uhooinc.com/v1/networkinfo","description":"<h2 id=\"description\"><strong>Description</strong></h2>\n<p>Use this API to get the network information of any device. When the API count has reached the daily limit, any subsequent API call would return the HTTP status code 400 until the count is reset at midnight UTC time.</p>\n<h2 id=\"supported-parameters\"><strong>Supported Parameters</strong></h2>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th><strong>Name</strong></th>\n<th><strong>Mandatory?</strong></th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td>macAddress</td>\n<td>Yes</td>\n</tr>\n</tbody>\n</table>\n</div><h2 id=\"mandatory-parameters\"><strong>Mandatory Parameters</strong></h2>\n<p><strong>macAddress</strong></p>\n<ul>\n<li>Assign the unique device ID returned by the /devicelist endpoint.</li>\n</ul>\n<h2 id=\"success-json-response\"><strong>Success JSON Response</strong></h2>\n<ul>\n<li><p>Return data in key-value pair format.</p>\n</li>\n<li><p>Not all keys are supported by the 3 device types (uHoo Aura Wi-Fi / Aura SIM / Smart Air Monitor), please refer to the third and fourth columns in the table below.</p>\n</li>\n</ul>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th><strong>Key</strong></th>\n<th><strong>Description</strong></th>\n<th><strong>uHoo Aura?</strong></th>\n<th><strong>uHoo Smart Air Monitor?</strong></th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td>ssid</td>\n<td>Wi-Fi network name</td>\n<td>Aura Wi-Fi only</td>\n<td>Yes</td>\n</tr>\n<tr>\n<td>apn</td>\n<td>Access Point Name</td>\n<td>Aura SIM only</td>\n<td>No</td>\n</tr>\n<tr>\n<td>ipAddress</td>\n<td>IP Address</td>\n<td>Yes</td>\n<td>No</td>\n</tr>\n<tr>\n<td>signalStrength</td>\n<td>Network Signal Strength in dBm</td>\n<td>Yes</td>\n<td>No</td>\n</tr>\n<tr>\n<td>iccid</td>\n<td>SIM Card ID</td>\n<td>Aura SIM only</td>\n<td>No</td>\n</tr>\n<tr>\n<td>operator</td>\n<td>Network Operator</td>\n<td>Aura SIM only</td>\n<td>No</td>\n</tr>\n</tbody>\n</table>\n</div>","urlObject":{"protocol":"https","path":["v1","networkinfo"],"host":["api","uhooinc","com"],"query":[],"variable":[]}},"response":[{"id":"64ade3b4-274f-4b93-9d9e-e530a64c7ade","name":"Success (Aura SIM)","originalRequest":{"method":"POST","header":[{"key":"Authorization","value":"Bearer xxxxxxxx","description":"Assign \"access_token\" parameter from https://auth.uhooinc.com/tokenrequest endpoint"}],"body":{"mode":"urlencoded","urlencoded":[{"key":"macAddress","value":"xxxxxxxxxxxx","type":"text","description":"Assign the \"macAddress\" parameter from /devicelist endpoint"}]},"url":"https://api.uhooinc.com/v1/networkinfo"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Connection","value":"keep-alive","description":""},{"key":"Content-Length","value":"451","description":""},{"key":"Content-Type","value":"application/json; charset=utf-8","description":""},{"key":"Date","value":"Mon, 14 Aug 2017 02:01:27 GMT","description":""},{"key":"ETag","value":"W/\"1c3-r1MXpVq9woQPN+QTNDVPTQ\"","description":""},{"key":"Server","value":"nginx","description":""},{"key":"set-cookie","value":"uhoo.sid=s%3AK2aTrxPMOzKqJrQ21oQiSkkcJezjkYnJ.N%2BX1uWEdUqgyOFHhFexu6Zk38GBz4F30ijp5VPxgIz0; Path=/; HttpOnly","description":""}],"cookie":[{"expires":"Tue Jan 19 2038 03:14:07 GMT+0000 (Coordinated Universal Time)","httpOnly":true,"domain":"api.uhooinc.com","path":"/","secure":false,"value":"s%3AK2aTrxPMOzKqJrQ21oQiSkkcJezjkYnJ.N%2BX1uWEdUqgyOFHhFexu6Zk38GBz4F30ijp5VPxgIz0","key":"uhoo.sid"}],"responseTime":null,"body":"{\n    \"ssid\": \"\",\n    \"apn\": \"nbiot\",\n    \"ipAddress\": \"10.41.5.185\",\n    \"signalStrength\": \"-53\",\n    \"iccid\": \"89852122102010380991\",\n    \"operator\": \"China Mobile HK CMHK\"\n}"},{"id":"08752476-13e2-4dbd-988a-d58c6c7ce4e1","name":"Success (Aura Wi-Fi)","originalRequest":{"method":"POST","header":[{"key":"Authorization","value":"Bearer xxxxxx","description":"Assign \"access_token\" from POST https://api.uhooinc.com/v1/generatetoken endpoint"}],"body":{"mode":"urlencoded","urlencoded":[{"key":"macAddress","value":"xxxxxxxxxxxx","type":"text","description":"Assign the \"macAddress\" parameter from /devicelist endpoint"}]},"url":"https://api.uhooinc.com/v1/networkinfo"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Date","value":"Sun, 02 May 2021 14:10:46 GMT"},{"key":"Content-Type","value":"application/json; charset=utf-8"},{"key":"Content-Length","value":"9260"},{"key":"Connection","value":"keep-alive"},{"key":"ETag","value":"W/\"242c-FyWc851BEXn91KJ4BTqjLg\""},{"key":"set-cookie","value":"uhoo.sid=s%3AWkbgg_lEuctSko5wY1a6UDKeBTGC5Fu8.bZSEauwWRAsWL%2FLMrWu5Pb35lsIvGU6ocEVrUD29NDk; Path=/; HttpOnly"},{"key":"Server","value":"uHoo"}],"cookie":[],"responseTime":null,"body":"{\n    \"ssid\": \"uHoo1\",\n    \"apn\": \"\",\n    \"ipAddress\": \"192:168:1:38\",\n    \"signalStrength\": \"-21\",\n    \"iccid\": \"\",\n    \"operator\": \"\"\n}"},{"id":"44a4ace8-470f-4b95-804e-eb8ecb2bacdd","name":"Success (Smart Air Monitor)","originalRequest":{"method":"POST","header":[{"key":"Authorization","value":"Bearer xxxxxx","description":"Assign \"access_token\" from POST https://api.uhooinc.com/v1/generatetoken endpoint"}],"body":{"mode":"urlencoded","urlencoded":[{"key":"macAddress","value":"xxxxxxxxxxxx","type":"text","description":"Assign the \"macAddress\" parameter from /devicelist endpoint"}]},"url":"https://api.uhooinc.com/v1/networkinfo"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Date","value":"Sun, 02 May 2021 14:11:37 GMT"},{"key":"Content-Type","value":"application/json; charset=utf-8"},{"key":"Content-Length","value":"3895"},{"key":"Connection","value":"keep-alive"},{"key":"ETag","value":"W/\"f37-c1MeWDBwa1HQwXr/KILlVA\""},{"key":"set-cookie","value":"uhoo.sid=s%3AhbWP0-9Maa7FPpn3XXSHwhW1NUxVU-pa.GBlAiP3OVxF08aJTs10M7PQalTkQwUwpjhNXjuvJ5Bg; Path=/; HttpOnly"},{"key":"Server","value":"uHoo"}],"cookie":[],"responseTime":null,"body":"{\n    \"ssid\": \"uHoo1\",\n    \"apn\": \"\",\n    \"ipAddress\": \"\",\n    \"signalStrength\": \"\",\n    \"iccid\": \"\",\n    \"operator\": \"\"\n}"}],"_postman_id":"76839eb7-418b-428b-a61a-36936494d2bd"}],"event":[{"listen":"prerequest","script":{"id":"807a9089-f32c-4ae4-8fed-c795678a6c38","type":"text/javascript","exec":[""]}},{"listen":"test","script":{"id":"84f613e5-4b43-427b-b252-f131a8f98be1","type":"text/javascript","exec":[""]}}]}