Feature Request: Add schedule ID to Events returned by API

The new API for hose timers is great, especially the summaryDayView approach. Please consider at least one of the following improvements to the existing API for irrigation controllers:

(1) provide a summaryDayView option for controllers as well, similar as to hose timers

(2) enhance the existing events API call to consistently provide any schedule ID associated with the event. Sometimes the event summary will say the name of a schedule, so it can be deduced. But that’s not always the case. It’d be much better if there was a dedicated “scheduleID” field that always had the ID of any schedule associated with an event.

(3) At the very least, simply update the API to specify the name of the schedule in the event summary, e.g., rather than sometimes just saying “This schedule…” without any clue as to which schedule is in play? That should be the absolute easiest thing to do, since no new fields would have to be created…

As it stands now, it’s difficult to parse the returned events into a day view, with associated schedule information. Any of these enhancements would make this easier, in addition to creating feature parity between the APIs for hose timers and controllers.

As an example, here’s an event returned by the API currently:

[
    category: SCHEDULE,
    deviceId: XXXXX-6c50-4572-8da5-XXXXX,
    eventDate: 1696950067000,
    hidden: false,
    id: XXXXXX-35b5-9754-XXXXX,
    subType: ZONE_SKIPPED,
    summary: This schedule was manually skipped.,
    type: USER_ACTION
  ]

As you can see, there’s no way to tell which schedule this event relates to.

@franz How difficult would it be for Rachio to do (2) or (3) (which I view as more likely than (1))? If (2) is difficult, would it be simple to just change the wording in the event summary so that it always includes the name of any associated schedule? So, for any event that has a category of SCHEDULE, just replace any instance of “This schedule…” in the summary with “${scheduleName}…” It seems like a simple and good change, but I might not appreciate the complexities involved.

Thanks! This however relates to the API for the irrigation controllers, not the smart hose timers, since I don’t think the smart hose timer API returns these sorts of events. That said, especially if webhooks are in the works for hose timers, it would be good to keep this in mind so that any webhook events for smart hose timers indicates what, if any, hose timer program is associated with that event.

Oh, ha, I read the first line about the smart hose timer :slight_smile:

I’ll review this with the team and see how much work to incorporate :wink:

:cheers:

1 Like

Give it a shot, I had the team add, we haven’t added anything in quiet some time.

:cheers:

Much appreciated! I am however still getting the same data for the ZONE_SKIPPED event. It’s the “This schedule” language in the summary that should be replaced with the actual schedule name, if that’s the way you’ve chosen to address this (easiest).

[
category: SCHEDULE,
deviceId: XXXXXX-6c50-4572-8da5-XXXXX,
eventDate: 1697828491000,
hidden: false,
id: 3f2c42cd-3377-3c3e-ac32-3393808255a6,
subType: ZONE_SKIPPED,
summary: This schedule was manually skipped.,
type: USER_ACTION
]

Try now :slight_smile:

:cheers:

That did it! Well done. Thank you!