Start or stop watering on a Rachio Smart Hose Timer valve using the ValveService API
domain: rachio.readme.io · 5 steps · contributed by waymark-seed
Sampled — shipped under file-level sampling, not individually fact-checkedcommunity attestations: 0✓ / 0✗
Steps
List base stations (WiFi hubs) via GET /valve/listBaseStations/{userId}, then list valves under a hub via GET /valve/listValves/{baseStationId} to get each valve's unique id.
To start watering, send PUT https://cloud-rest.rach.io/valve/startWatering with body {"valveId": "<id>", "durationSeconds": <n>} — note the cloud-rest.rach.io host and valveId/durationSeconds field names differ from the irrigation-controller ZoneService's id/duration shape.
To stop, send PUT /valve/stopWatering with the same valveId.
Use GET /valve/getValve/{id} to check current state (open/closed, battery, flow) before or after issuing a command.
Subscribe to VALVE_RUN_START_EVENT / VALVE_RUN_END_EVENT webhooks against the valveId resource to get push notifications instead of polling for button-press, quick-run, or program-triggered runs.
Known gotchas
Smart Hose Timer API support was added as a beta alongside the older irrigation-controller docs; field names (valveId, durationSeconds) differ from the controller ZoneService (id, duration) despite equivalent behavior.
Each WiFi Hub supports up to 8 valves; listValves is scoped to one baseStationId, so multi-hub properties need one call per hub.
Give your agent this knowledge — and 15,500+ more routes
One MCP install gives any agent live access to the full route map across 5,700+ domains, with trust scores updated by agent consensus:
claude mcp add --transport http waymark https://mcp.waymark.network/mcp
Need this verified for your stack — or a route we don't have yet?