Query about three json fields


i’m playing around with the API. I have a specific use case in mind, i’d like to make sure i can set my water meter to notify me if the water is running and its not the amount i would expect from the rachio and that zone. A bit of an watchdog for water leaks if you please. In particular i like the idea of adjusting warning tresholds for notification of leaks to be different for when rachio is running a zone vs. when it is not. I think it would be nice to have, assuming i can hack it up. I wrote my first line of javascript two days ago (but i have a good 30+ years of C and C++ behind me and after getting used to the tooling it wasn’t too bad).

Fundamentally im trying to make sure i fully understand what the json data structures for the zone is describing.

Can anyone confirm if zone.runtime the same thing i see as when i go to the UI and click a schedule->duration? This number reported in the json as “runtime” for each zone seems to be the runtime for that zone as reported in schedules (in seconds). Correct?

zone.depthOfWater + zone.saturatedDepthOfWater
Secondly, What is “depthOfWater” and “saturatedDepthOfWater”? I tried to see if they are things i can find under “soil moisture -> advanced” for a zone in the GUI but it doesn’t perfectly align? It would be nice to know if i could use these for something, perhaps predict runs during the day (my schedule is setup so nothing ever runs during the day). Is this what is used to populate the calendar in the GUI for the next few days?

thanks for any insight.

I believe you are correct about runtime.

From what I can tell depthOfWater is what the zone shows as 100% moisture balance if you look at the moisture chart. If you do a zone fill you should see that number on the moisture table.

saturatedDepthOfWater is the same thing but at 110%, which is the highest the moisture level will ever go. Also the highest number you can set using the setMoistureLevel call in the API.

Edit: I think I was a little off on runtime. It looks like it’s not necessarily the current runtime in a schedule, but the recommended runtime that would be used when creating a new flex schedule with that zone for the first time. So it might match your current runtime if you haven’t made any adjustments to the recommendation.

1 Like

Thanks! Very useful