MultiGrow Data
The MultiGrow data resource lets you access the data from your MultiGrow device. You can obtain your device UUID from your devices page in https://my.autogrow.com.
Resources
GET /api/v3/multigrow/:uuid/comps/:idGET /api/v3/multigrow/:uuid/:section/:id/features/:feature/:feature_idGET /api/v3/multigrow/:uuid/:section/:id/history/:from/:toGET /api/v3/multigrow/:uuid/:section/:id/features/:feature/:feature_id/history/:from/:to
Get compartment current readings
GET /api/v3/multigrow/:uuid/comps/:id
Get the current readings for the given section.
| uuid | The UUID of your device from https://my.autogrow.com |
| section | The readings section, one of comps, weather, irrigators, fields, monitors, rooms, rootzones |
| id | The section ID, starts at 1 |
Request Headers
Content-Type: application/json
Authorization: Bearer <token>
Example Request
curl https://mydata.autogrow.com/api/v3/multigrow/abc123/comps/1
HTTP/1.1 200 OK
Response Object
{
"metadata": {
"index": "0",
"manager": "comp",
"query_ms": 241,
"uuid": "abc123"
},
"readings": {
"accum_par": 0,
"accum_rad": 0,
"air_temp": 20.95,
"cool_target": 20,
"dew_point": 16.55,
"hd": 3.64,
"heat_target": 18,
"pressure": 993.0600000000001,
"raining": 0,
"rh": 76,
"rh_target": 70,
"solar_par": 0,
"solar_rad": 0,
"vpd": 0.593
}
}
Response Codes
| Code | Description |
|---|---|
| 200 | OK |
| 400 | Bad Request |
| 401 | Unauthorized |
| 402 | Device not subscribed |
| 403 | Forbidden |
| 404 | Not Found |
| 405 | Method Not Allowed |
| 500 | Internal Server Error |
GET /api/v3/multigrow/:uuid/:section/:id/features/:feature/:feature_id
Get the current readings for the given features under the section. For instance you can get the on/off status of a pump in a specific irrgation system.
| uuid | The UUID of your device from https://my.autogrow.com |
| section | The readings section, one of comps, weather, irrigators, fields, monitors, rooms, rootzones |
| id | The section ID, starts at 1 |
| feature | The feature underneath the given section (e.g. pumps) |
| feature_id | The ID of the feature |
Valid combinations are:
irrigatorspumpsstationsec_dosersph_dosers
compsventsside_wallsscreensext_fansstir_fans
Request Headers
Content-Type: application/json
Authorization: Bearer <token>
Example Request
curl https://mydata.autogrow.com/api/v3/multigrow/abc123/comps/1/features/side_walls/2
HTTP/1.1 200 OK
Response Object
These usually return the position of the output on a 0-100 scale. For normal on/off outputs anything > 0 is on with 0 being off. For vents, screens and walls a 0 means that it is closed otherwise it indicates how open as a percentage e.g. 50% open or 100% open.
{
"metadata": {
"index": "0",
"manager": "comp",
"feature": "stir_fan",
"feature_index": "0",
"query_ms": 241,
"uuid": "abc123"
},
"readings": {
"position": 100
}
}
Get readings history
GET /api/v3/multigrow/:uuid/:section/:id/history/:from/:to
Get the readings history for the given section between two timeframes. s
| uuid | The UUID of your device from https://my.autogrow.com |
| section | The readings section, one of comps, weather, irrigators, fields, monitors, rooms, rootzones |
| id | The section ID, starts at 1 |
| from | Unix epoch for the time to start at |
| to | Unix epoch for the time to end at |
Request Headers
Content-Type: application/json
Authorization: Bearer <token>
Example Request
curl https://mydata.autogrow.com/api/v3/multigrow/abc123/comps/1/history/1514764800/1514800800
HTTP/1.1 200 OK
Response Object
{
"metadata": {
"index": "0",
"manager": "comp",
"query_ms": 638,
"uuid": "abc123"
},
"readings": [
{
"accum_par": 0.014554545454545454,
"accum_rad": 0,
"air_temp": 21.218256880733943,
"cool_target": 20,
"dew_point": 15.486761904761906,
"hd": 4.631773195876288,
"heat_target": 18,
"pressure": 1004.5914851485151,
"raining": 0,
"rh": 69.92105263157895,
"rh_target": 70,
"solar_par": 0.32786885245901637,
"solar_rad": 0,
"time": "2018-01-01T00:00:00Z",
"vpd": 0.7557157894736841
},
{
"accum_par": 0.016866666666666665,
"accum_rad": 0,
"air_temp": 21.36087719298245,
"cool_target": 20,
"dew_point": 15.716442307692311,
"hd": 4.586094736842105,
"heat_target": 18,
"pressure": 1004.5307547169815,
"raining": 0,
"rh": 70.46575342465754,
"rh_target": 70,
"solar_par": 0.6060606060606061,
"solar_rad": 0,
"time": "2018-01-01T01:00:00Z",
"vpd": 0.7479247311827957
},
...
]
}
Response Codes
| Code | Description |
|---|---|
| 200 | OK |
| 400 | Bad Request |
| 402 | Device not subscribed |
| 401 | Unauthorized |
| 403 | Forbidden |
| 404 | Not Found |
| 405 | Method Not Allowed |
| 500 | Internal Server Error |
GET /api/v3/multigrow/:uuid/:section/:id/features/:feature/:feature_id/history/:from/:to
Similarly you can get the historic data of features too.
Get the readings history for the given section between two timeframes. s
| uuid | The UUID of your device from https://my.autogrow.com |
| section | The readings section, one of comps, weather, irrigators, fields, monitors, rooms, rootzones |
| id | The section ID, starts at 1 |
| feature | The feature underneath the given section (e.g. pumps) |
| feature_id | The ID of the feature |
| from | Unix epoch for the time to start at |
| to | Unix epoch for the time to end at |
Request Headers
Content-Type: application/json
Authorization: Bearer <token>
Example Request
curl https://mydata.autogrow.com/api/v3/multigrow/abc123/comps/1/features/vents/4/history/1514764800/1514800800
HTTP/1.1 200 OK
Response Object
{
"metadata": {
"index": 1,
"manager": "comp",
"feature": "vent",
"feature_index": 4,
"query_ms": 638,
"uuid": "abc123"
},
"readings": [
{
"time": "2018-01-01T01:00:00Z",
"paired_position": 0
},
{
"time": "2018-01-01T01:05:00Z",
"paired_position": 34
},
{
"time": "2018-01-01T01:10:00Z",
"paired_position": 56
}
]
}
Section Data Type
This shows what the readings response will look like for each different section type.
Weather
{
"air_temp": 0,
"rh": 0,
"vpd": 0,
"hd": 0,
"dew_point": 0,
"raining": 0,
"solar_rad": 0,
"solar_par": 0,
"pressure": 0,
"accum_par": 0,
"accum_rad": 0,
"rain_freq": 0,
"tip_mm": 0,
"wind_gust_5min": 0,
"wind_gust_5min_dir": 0
}
Comps
{
"air_temp": 0,
"cool_target": 0,
"heat_target": 0,
"rh": 0,
"rh_target": 0,
"vpd": 0,
"hd": 0,
"dew_point": 0,
"co2": 0,
"raining": 0,
"solar_rad": 0,
"solar_par": 0,
"pressure": 0,
"accum_par": 0,
"accum_rad": 0,
}
Fields
{
"air_temp": 0,
"cool_target": 0,
"heat_target": 0,
"rh": 0,
"rh_target": 0,
"vpd": 0,
"hd": 0,
"dew_point": 0,
"raining": 0,
"cravo_mode": 0,
"roof_pos": 0,
"wall_pos_windward": 0,
"wall_pos_leeward": 0,
"wind_speed": 0,
"solar_rad": 0,
"solar_par": 0,
"inside_temp": 0,
"plate_temp": 0,
"plate_temp_inside": 0,
"screen_pos": 0,
"soil_temp": 0,
"soil_temp_inside"
}
Rooms
{
"air_temp": 0,
"cool_target": 0,
"heat_target": 0,
"rh": 0,
"rh_target": 0,
"vpd": 0,
"hd": 0,
"dew_point": 0,
"co2": 0,
"solar_rad": 0,
"solar_par": 0,
"pressure": 0,
"accum_par": 0,
"accum_rad": 0
}
Irrigators
{
"ec": 0,
"ph": 0,
"accum_water_vol": 0,
"calc_flow_rate": 0,
"flow_rate": 0,
"est_water_vol": 0,
"ec_temp": 0,
"moisture": 0,
"ph_target": 0,
"ec_target": 0,
"batch_state": 0,
"batch_tank_fill_flow_rate": 0,
"batch_tank_curr_level": 0,
"batch_tank_curr_percent": 0,
}
Monitors
{
"ec": 0,
"ph": 0
}
Rootzones
{
"day_comparison": 0,
"desired_volume": 0,
"irrig_achieved": 0,
"irrig_active": 0,
"irrig_ec": 0,
"irrig_flow": 0,
"irrig_media_moisture": 0,
"irrig_media_nutrient": 0,
"irrig_media_temp": 0,
"irrig_ph": 0,
"irrig_temp": 0,
"irrigs_last_week": 0,
"irrigs_today": 0,
"irrigs_week": 0,
"irrigs_yesterday": 0,
"last_irrig_ratio": 0,
"last_irrig_volume": 0,
"last_runoff_volume": 0,
"last_week_vol": 0,
"ratio_today": 0,
"runoff_ec": 0,
"runoff_flow": 0,
"runoff_media_moisture": 0,
"runoff_media_nutrient": 0,
"runoff_media_temp": 0,
"runoff_ph": 0,
"runoff_temp": 0,
"today_vol": 0,
"week_comparison": 0,
"week_vol": 0,
"yesterday_vol": 0
}
Pumps, Stations, Stir/Extraction Fans, EC/pH Dosers
A 0 = off and > 0 is on.
{
"position": 100
}
Vents, Side Walls
How open it is as a percentage, so 0% would mean it is closed.
{
"paired_position": 100
}
Screens
Indicates how open a screen/shade is 0% to 100% covered, as open/closed can be ambiguous when it comes to refering to a screen/shade.
{
"covered_pos": 100
}
